Vista用にAutoHotkeyでSKY#配列を使うスクリプトを作った.

Vistaでは長年愛用していた菱がうまく動かなかったので,いい加減潮時かなということでAutohotKeyで動くプログラムを作った.個人的には現在のスクリプトがあまりにも汚いので別の配列変換ソフトで実装できるならそうしたいなあと思う.

参考にしたのは2008-04-18 - Libraria 配列一壺天.月配列は中指シフト配列だから基本的な設計はほとんど変えずに作れた.ただ,SKYの状態遷移は思いのほか複雑でローマ字定義として書くとそこまで複雑ではないけど,上のスクリプトの基本設計を維持してオートマトンとして書こうとすると一度紙の上に状態遷移を整理してみないと難しかった.

書いてみて意外とアクロバティックだなと思ったのは「でぃ」と「じゃ」の打ち分け.SKY#のページには自分の文章力のなさかそんなこと一切書いていないのだけど,置いてある菱ファイルや自分の手に染み付いた仕様としては,"xgl"と打って「でぃ」が出力されて,"cgj"と打つと「じゃ」が出力される.つまり,gが前者ではhの役割,後者ではyの役割を果たしているということで,整理しないとはまる.

個人的にはローマ字定義をパターンマッチングで文字列に変換していくほうがプログラムとしても,設定するにしても便利だと思うのでそこらへんをAutoHotkeyで書くか,別の普通のスクリプト言語が使えるソフト(たとえば,keyhacとか,ZeniSynthとか,普通にmayu後継ののどかとか)で書き直したいのだけど,IMEの状態の取得からすでに微妙.仮想キーコードがF3かF4かを取得すれば大丈夫そうなんだけど.よくわからない.