blechmusikの日記

いろいろなことを書いています。

無変換キーと変換キー、スペースキーについては、押し下げたまま異なる文字キーを打鍵できるようにした

従来の DvorakJ の動作について、NICOLA 配列を例として説明しよう。[無変換]を押しながら [H][J][K]を連続で打鍵すると、「は」「と」「き」か「ば」「と」「き」を出力していた。よくて一打鍵目のみに[無変換]の情報が反映されていたのである。
無変換キーと変換キー、スペースキーというキー三つについては、当該キーを押し下げたまま文字キーを打鍵できるようにした*1。こうして、[無変換]と[H][J][K]をきちんと同時に押し下げているならば、「ば」「ど」「ぎ」を出力するようにした。
設定方法は非常に簡単だ。キーボード配列の設定ファイルのうち、当該キー名の直前の記号を変更するだけである。具体的には、"-" を "+"に変更する。たとえば、"-muhenkan" という設定を "+muhenkan" と書き換える。これだけでよい。
ただ、このように設定すると副作用が生じる。DvorakJ の開発環境たる AutoHotkey_L では、このように設定すると、[無変換] や [変換]といった組み合わせるキーの処理が大きく変更されてしまう。そのキーを単独で押し下げた時点では、処理が何らできなくなる。単独で押し上げたときになってやっと処理できるようになるのだ。このため、当該キーを単独で打鍵した結果は、以前よりも遅く表示されるだろう。この点に留意してほしい。

*1:これは doppan さんや omine3 さんから要望をうけていた機能である。doppan 2010/05/06 18:28; omine3の備忘録集 DvorakJでの同時、順、時間制限つき順に打鍵の同居を考える参照。