11/16
_ [文字入力] ATOK2008のローマ字設定を姫踊子草から取り込むスクリプトとJLODサンプル
ATOK2008 .styファイル覚え書き エントリから引き続き。
ATOK2008のローマ字設定を姫踊子草から取り込むrubyスクリプトとJLODサンプル(.lzh) が成果物です。
きっかけ
ローマ字入力のカスタマイズというと 姫踊子草 が有名所です。簡単なフォーマットで入力配置を切り替えられる事や、かな入力と英字入力時でそれぞれ異なるファイルで設定できるところがポイント。しかし、困ったことがいくつかありました。というのは、
- 64bitアプリケーションでは入力が全くできない
- AZIK/ACT系では、ローマ字入力中の状態が見えなくて、最後の一押しでまとめて何文字分か入るのに違和感
- また、入力が差し替えられてしまうために、[Ctrl]+[P] でのアルファベット変換が効かない
- 親指シフト対応の為か、ワンテンポ入力遅延がある気がする
なので、姫踊子草を使わずに普段使っているローマ字入力の延長上でできないかな、と思っていました。しかしそれを行うにはまたいくつかの壁が。
- UIでのATOKのローマ字カスタマイズはとても行いづらい。外部の可読性のあるファイル取り込みが(多分)できなく、一つ一つ進める
- 「。」や「、」が絡むカスタマイズができない
- 550個までしかカスタマイズできない。しかも現在何個設定されているかが分かりにくい
...これ、詰んでいません? と思っていたときにふと。暗号のような .sty ファイルは読み込むことができるわけで、これを解析すればもしかすると簡単にローマ字カスタマイズができるようになるのではと。
やってみた
11/05 に解析を終え... たつもりが、以下のコードの対応漏れが見つかったとか。
文字 | コード |
---|---|
ゐ | 0010 |
ゑ | 0011 |
ヵ | 0012 |
ヶ | 0013 |
ゎ | 0014 |
ま、でも一応できました。おそらくローマ字系だとうまく動くと思います。親指シフトなどの制御キーを使ったものはまったく変換できません。そのあたりの辞書設定は適当ですが、気にしないでください(汗)。
サンプルに、JLOD配列 (Japanese Layout on Dvorak) で公開されている JLOD.hmo_kana の、★★★ と、★★:頻出拗音の省略打ち まで入れた簡易版 ATOK2008 .sty ファイルを入れました。これで、ATOKが入っている環境ならどこでもお手軽に差し替えができます。
変換方法が非公式なことと、テストが不十分なことから、そのまま変換結果が使えるかどうかは分かりません。このファイルを使って何かあっても責任は取れません。と念のため。
それでも...
これなら今までよりは良い感じかな、と思っていても、それでも困ったことが3つほど。
一つ目は、姫踊子草と違い、キーカスタマイズの変更が面倒なこと。こう日記に長文を書くときに、慣れないJLODでは書けないからと普通の配列に戻そうとしても。ま、普通は切り替えることがないのと、きっと慣れればずっとJLODにできるからこれはあまり関係なく。
二つ目は、英字配列は相変わらずQWERTYなこと。日本語だけDvorakなことも問題ですし、途中状態が表示されているとは言っても、その途中状態が余計に混乱を招きかねないことも問題。"izkz" が「かんたん」にあたるという表示にはあまり意味が。これはATOKだけ使い続ける限りはどうしようもなくて、猫まねき などの配列入れ替えソフトを併用しましょうと。辞書のカスタマイズは、QWERTY→Dvorak を一回かければ大丈夫。
そして最後には、ATOKのカスタマイズ550個制限の壁。JLOD.hmo_kana の全ルールを入れようとしたら800個以上あって、覚えておくことが望ましいと言われている ★★ルールの項目3つのうち1つしか組み込めないと。これが地味に痛い... テキストファイルから持ってくれば550の壁を超えられるかなと思っていたのですが、そんな無理矢理データを読み込ませてみるとローマ字設定画面に「???」の文字。これ、絶対良くないことが起こっています(-・;
ATOKの苦手なところ
ついでに話を発散させて。ずっと変換精度と[Tab]補完が便利だからとATOKを使い続けているのですが、最近困ったことが2点。うち一つは550制限。
もう一つは、ATOK2008段階ではTSF非対応で、前後の文字列を使っての変換精度向上がされないアプリケーションがいくつかあること。私が普段文字書きに使っている秀丸エディタでは大丈夫ですが... この点では MS-IME2007 に負けていて、早く追いついて欲しいところです。変換ベンチマークと違って細かく変換するときにはわりと効いてくる、目に見えにくい困った話。このあたりの詳しい話は [TSF を使う (1) - Windows Input Method の歴史 - NyaRuRuの日記] を。
まとめ
これであと1ヶ月 Dvorak 系タイプの練習をしてみて、それで無理なら移行を諦めます(汗)。
(いや、そういうならこのエントリを JLOD で書こう...)