C++ ときどき ごはん、わりとてぃーぶれいく☆

USAGI.NETWORKのなかのひとのブログ。主にC++。

electron と node_modules と client-side library と electron-builder と symlink と .asar についての Windows での挙動についてのメモ

状況 Electron アプリを作っています。 yarn/npm で client-side 向けの library X (仮) を追加しています。 X は開発環境では yarn/npm により node_modules/X ディレクトリーに取り込まれています。 Electron アプリの client-side の static なファイル資…

winget へ choco または他の何かから可能な範囲で移行するメモ

https://github.com/microsoft/winget-cli ; winget https://github.com/microsoft/winget-pkgs ; Community repo https://github.com/microsoft/winget-pkgs/tree/master/manifests ; この辺りを眺めると winget を入れなくても対応パッケージが視えます wi…

Electron アプリに electron-store で設定ファイル機能を追加する場合の example & tips 的なメモ

GitHub - sindresorhus/electron-store: Simple data persistence for your Electron app or module - Save and load user preferences, app state, cache, etc を使うメモです。 yarn add electron-store electron-store = 旧 electron-conf public/conf.js…

Electron アプリに electron-localshortcut で非グローバルでMenuのアクセラレーターも使わないキーバインドを追加するメモ

準備: yarn add electron-localshortcut; https://www.npmjs.com/package/electron-localshortcut 実装例(public/electron.js): const electron = require("electron"); const app = electron.app; const browser_window = electron.BrowserWindow; const lo…

Electron アプリに i18next を追加して i18n/l10n 対応するメモ

基本的な使用の流れ yarn add i18next i18next-node-fs-backend public/i18n.js など適当に作り l10n 文字列を取り出したいソースで const i18n = require('./i18n.js') して 必要なら await i18n.changeLanguage('ja-JP') のように l10n 先を実行時に設定す…

Inkscape-1.0: 新規作成されるSVGドキュメントの背景色のデフォルト値を変える方法; ダークモードのテーミング&defaultドキュメント背景の設定方法のメモ

Inkscape-1.0 では Theme 機能が実装されたので、 Edit -> Preferences -> Interface -> Theme を設定するとダークモードに優しいテーミングができるようになりました。嬉しいです。しかし、闇の世界に住む私たちの目にInkscapeの画面で最も眩しくて困る部分…

Blender: 正規表現でがさっと Vertex Group(s) をタゲって統合しつつ元は削除して置き換えられる Scripting: usagi/blender-merge-vertex-groups.py のメモ

前回のメモで使用した p2or/blender-merge-vertex-groups.py を元に: 正規表現 regex 設定で Vertex Group(s) をまとめてタゲれて 統合元になった Vertex Group(s) は削除する replace モードを True/False 設定できて 統合先を明示的な名付け to またはそれ…

Blender: Armature の削除や変更で Vertex Group との整合性が狂ってしまったときの修正方法、のメモ

状況 「Armature を節約しなきゃ→簡単に Merge できるところは Merge!→ Merge が難しいところは Delete / Disolve ! 」 とかした後に、 「 Armature を Delete / Disolve した部分に対応していた Vertex Group と残した Armature との対応が壊れてしまった……

Blender Scripting: head と tail の座標と適当なフィルター条件でボーンの親子関係を自動構築する `connect-bones` の作り方と Add-on 化の方法

こんにちは、Python初心者∧Blender初心者です。フィーリングやマウスぽちぽちよりパキッとコードで処理する方が得意なので、 un-h002; Atropos の cluster 対応で私自身に追加実装された Blener Scripting を入門講座を兼ねて整理します Note: 読者の想定=Py…

3D-Avatar: VRM を作って → detune して → cluster へアップロード成功するメモ; 2020-04-10版

経緯などはさておき、件について少し複雑ですので整理するメモです。時間がないけど結論だけ気になる人は最後のまとめだけどうぞ。 目次 (1) VRoid Studio や セシル変身アプリ でVRM を作って (2) cluster へアップロード -> 「アップロードに失敗しました…

Node.js & native code: NEON vs. node-ffi-napi vs. pure Node.js

Node.js と Rust による native code のマーシャリング手法は NEON と node-ffi-napi の2種類が現時点で有力です。マーシャリング部分のコストの特徴を大雑把に掴むため雑なベンチマーキングをしました。 Note: 理論的にはもう1つ N-API を直接リンクして cd…

vs. COVID-19: Folding@home の FAHControl でご家庭内で参加中の複数のクライアントをまとめて監視・制御する方法のメモ

ご家庭内から複数のPC端末等をクライアントとして Folding@home に参加する場合に、1箇所の FAHControl (管理画面ツール) でそれ自体はもちろん、他のクライアントも全て管理したい場合もあります。 例えば↑な具合で管理できるようにしたい、と。こうしてお…

Cargo.toml の [dependencies] の特殊化のメモ

例 1. crates.io に公開されている crate を使っている状態: [dependencies] neon = "0.4.0" 例 2. ローカルファイルシステムで改変中の独自版へ依存先を特殊化したい場合: [dependencies] neon = [ path = "../path-to-my-customized-neon" ] 例 3. feature…

WSL の内側の世界から、外側の Windows の世界の PATH が "何もしていないのに" 通っている件、をどうにかしたい場合のメモ

WSLの内側の世界では、外側の世界の Windows で実行可能なバイナリー「も」実行できます。 実際この機能はしばしば便利な事もあります。例えば、 諸事情によりWSLの内側の世界で作業中に PE32+ (†1) なバイナリーファイルを nm (†2) したいけど ELF (†3) じ…

reddit で話題になった Tauri と NEON についてのメモ、ついでに template-rust-backend-with-electron-frontend の開発理由についてのメモ

reddit の Rust コミュニティーに template-rust-backend-with-electron-frontend のリリースについてポストしたところ、主に2つ、 Tauri と NEON について話題になりました。( up-vote たくさんとちょうど使いたかったんだありがとう的なポストも頂きました…

RustのcdylibをバックエンドにElectronをフロントエンドにするcargo-generateプロジェクトテンプレートを公開したメモ

「RustのcdylibをバックエンドにElectronをフロントエンドにする」プロジェクトを3秒くらいでお手軽作れるcargo-generateできるプロジェクトテンプレートを公開しました。 template-rust-backend-with-electron-frontend https://github.com/usagi/template-…

react-electron-ffi-(native dll/so/dylib) プロジェクトを作るメモ (2020-03-19版)

(1/2) react-electron ここは今回のメモの本編ではないものの、"やり方"がころころ変わるようなので一応現時点での方法をついで程度に整理します。 (1) プロジェクトのディレクトリー(=リポジトリー)を create-react-app で生成: npx create-react-app myapp…

Node.js と FFI の 2020-03-18 時点でのメモ; node-ffi 系 → node-ffi-napi 系

今回のメモの Node.js は: node -v v13.5.0 です。先ずは Node.js 初心者らしく npm i ffi して死にました: npm i ffi ほか多数のエラーを観測し、死んでしまいました。☠ https://www.npmjs.com/package/ffi どんどん使われなくなっているので何か代替に置き…

さいきん試した Rust の GUI Toolkit 的な crate たちと日本語アプリでの実用性のメモ

現時点ではほぼダメです。試した中では唯一 conrod だけ日本語アプリを作る実用に耐えられそうです。 crate 日本語表示 日本語入力 コピペ UI部品の見栄え その他 conrod ○TTF可 ◎自然にできる ◎自然にできる ∞ 作り込み次第 vulkan対応で軽快, GL版だともっ…

ある日とつぜんWSL2が起動しなくなったメモ

きょうもいちにち。Windows Terminalを起動…しない。正確にはメインウィンドウを出そうとする辺りまでは起動はしているようだけど、一瞬で消えてしまうので実質起動しない。 とりあえず cmd で wsl る: WSL 2 requires an update to its kernel component. F…

VSCode の extension にコマンドを追加する時に使わない方がよい文字のメモ

"category" に _ (アンダースコア文字) を入れてしまうと、実際に使う時にコマンドの絞り込みが期待動作しなくなって悲しい。 例: category を hoge_fuga として description を puyopuyo にすると…: CTRL+SHIFT+P して >hgp とか >gapu とか入れてもコマン…

屋内撮影の照明のON/OFFに手スイッチ操作するよりOK,Googleできたら便利かなーって、スマート電球…ではなくてスマートプラグのやすいの買ってみたのです。のメモ

音声を出すのエネルギー使うにめんどくさいって思っていたのですが、すんごい便利でした…。 もの 買ってみたもの → VStarcam WIFIスマートプラグ スマートコンセント お値段 = 1,499 円 (執筆時点; keepa価格推移↓) 届いたもの↓ 専用アプリ tuya smart life …

WSL2 から X410 ( または vcxsrv など ) へ画面を投げる方法のメモ

WSL1 だと 127.0.0.1:0 で Windows ホスト側の X Server へ画面ぽーんできて楽でした。WSL2ではすこし手間がかかるようになりました。 X Client ( on WSL2 ) -> X Server ( X410 ) cat /etc/resolv.conf で WSL2 (内側)から Windows ホスト(外側) へつながる…

vscode: Terminal と Editor のアクティブを行ったり来たりトグルするキーの作り方のメモ

要求 キーは何でもよいのだけど、例えば F7 を押すと ターミナルではない何か(エディターやエクスプローラーなど)がアクティブな状態なら → ターミナルをアクティブに ターミナルがアクティブな状態なら → エディターをアクティブに キーボードのフォーカ…

Olympus OM-D E-M1 Mark Ⅲ が Mark Ⅱ からの更新ユーザーとしては悲しすぎたので書き留めておくメモ。 Mark Ⅳ があってももう事前情報を好意的には見てはあげません。

OLYMPUS OM-D E-M1 Mark Ⅲ が初めてのフラッグシップモデル級のカメラ購入で、 OLYMPUS のサンプルを他社と比較して SPEC を確認した上で購入するなら…悪い製品ではありません。ただ、MarkⅡの時と違い、2020年現在では基本性能を上げてきた他社に対してセン…

OpenSCAD でアニメーションを作成 -> 連番PNG -> ffmpeg で apng/mp4(h.264) にする方法のメモ

1. OpenSCAD でアニメーションを作る https://github.com/usagi/usagi.scad/blob/master/example/utility/color/HSL.scad use <../../../utility/color/HSL.scad> $fn = 6; for ( L = [ 0 : 1 / 6: 1 ] ) for ( S = [ 0 : 1 / 5: 1 ] ) for ( H = [ 0 : 30 :…

Azure DevOps ちほーの git サーバーへ git@ssh しようとしたら Unable to negotiate で diffie-hellman-group1-sha1,diffie-hellman-group14-sha1 を提案されたら思い出すメモ

状況 git clone git@ssh.dev.azure.com:v3/my_team/my_project/my_repos Cloning into 'my_repos'... Unable to negotiate with 40.81.25.218 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1,diffie-hellman-gro…

WSL 環境で git commit したら gpg が failed してしまった時に思い出すメモ

状況 git with GPG on zsh on Arch Linux on WSL: > git commit -m "neko nyan ko" error: gpg failed to sign the data fatal: failed to write commit object git が gpg で死んでいる。 gpg で死んでいるので gpg --list-keys をとりあえず確認するが、鍵…

Azure DevOps の SSH public key に ecdsa-sha2-nistp521 な鍵を追加しようとしたら invalid key される問題(未解決問題)

Azure DevOps に ECDSA-521 な公開鍵を登録しようとしたらイヤイヤされた つらい。 Visual Studio Developer Community にも「なんでや…」な感じのスレッドがありました: Support non-RSA keys for SSH authentication - Developer Community 「なんでや…」…

事前情報で確認する OLYMPUS OM-D E-M1 Mark Ⅲ vs. Ⅱ 購入可否を検討するための資料メモ

OM-D E-M1 Mark Ⅲ が今月末に発売予定で公式やキタムラほか購入予約も始まりました。既存の、特に OM-D E-M1 Mark Ⅱ からの更新を検討したいユーザー向けに diff 的な表示があると嬉しいです。公式にはないので検討のため作りました ちなみに、新規に Ⅲ を検…