私は Windows でのキーバインドを Emacs 風にするために XKeymacs を使っ
ています。IME の ON/OFF は Alt-l(エル) という変則的なものにしています。
Firefox で KeySnail を使おうとすると、XKeymacs を OFF にする必要が
ありますが、KeySnail にはデフォルトで IME を ON/OFF するコマンドは
用意されていません。
そういう理由から、Windows 版の Firefox では KeySnail を使っていなかっ
たのですが、Twitter でつぶやいたら作者さんから以下のコードを教えて
もらいました。
key.setEditKey("M-l",
function (ev, arg) {
let elem = ev.originalTarget;
elem.style.imeMode = {
active : "inactive",
inactive : "active"
}[elem.style.imeMode] || "active";
elem.blur();
elem.focus();
}, "Toggle IME", true);
.keysnail.js に記載し、再読み込みしたら Alt-l で IME の ON/OFF が出来
るようになりました!!
その時のつぶやきです。
@masutaka Linux では Firefox の仕様で動かないのですが、 Windows と Mac ならこんな感じでいけるかもしれません。 http://gist.github.com/207539
— mooz (@stillpedant) January 11, 2010
あ、 IME が ON になったらキーイベント拾えないから駄目か。ごめんなさい。
— mooz (@stillpedant) January 11, 2010
このつぶやき見落としていましたが、結果的には出来ました。RT @stillpedant: あ、 IME が ON になったらキーイベント拾えないから駄目か。ごめんなさい。
— マスタカ (@masutaka) January 11, 2010
この技は Linux 版の Firefox では使えないそうですが、UIM の設定から
IME の ON/OFF のキーバインドを変更出来るので問題はないでしょう。
関連 URL
KeySnail :: Add-ons for Firefox
Tips (Japanese) - keysnail - GitHub
XKeymacs