ぺんちゃん日記

食と歴史と IT と。 Web の旅人ぺんじろうが好奇心赴くままに彷徨います 。

ホットキーを送信できないか調べてみる。

これまでの蓄積でAutoHotkeyで作業を簡易化することができるようになってきました。
するとホットキーの数が増えてきて、自分でも慎重に考えてからでないとショートカットキーを起動できなくなってきました。
間違ったホットキーを起動すると途中でキャンセルできませんから不本位な操作を行わないかドキドキしながら眺めることになります。
まぁそこで自分でこしらえたエレクトロンアプリボタンを配置して、グラフィカルに操作できればええやんかと思いました。
常に最前面に表示するようにしているので、ワンクリックで様々な定型の動作できるようになります。
そこでエレクトロンから Windows キーを組み合わせたキーメッセージを送信できないか調べます。

qiita.com

意外と苦戦しまして、それもそのはず JavaScript からのキー送信はセキュリティ上の理由でできない模様?

node-key-senderというパッケージを組み込めばできるようですが?

github.com

ちなみにエレクトロンで ALT キーを表現するにはAlt、 Windows キーを表現するにはSuperで指定するようです。

electronjs.org

別の方法を考えます 。
必ずしもキー送信で実現しなければならないわけではないです。
幸いにもAutoHotkeyはahk2exe.exeを使うことで実行ファイルに変換できます。

ahkwiki.net

実行ファイルをCHILD process から起動すればどうでしょう。

qiita.com

ただしこの方法は electron アプリをパッケージ化する際に Auto HOT key のスクリプトをバンドルしておく必要があります。
つまりAutoHotkeyスクリプトを更新するごとに electron アプリもコンパイルしなければならなくなります。
うへーこれはめんどくさい。

結構苦戦したので今日はここまで 。