(2003.10.05/2004.10.01upd)
ただし、この[半]モードでは「全角スペースが入力できない」というかなり重度の副作用が出る。しかし、WX3のキーアサインを変更して、スペースを強制的に全角スペースに割り当てればよい。
もう一つ、[半]モードでは記号も半角になるが、未確定の状態で全角に変換できるので大きな支障はない。だが、一つ困ったことに[半]モードでは「/」が「・」にならない。これはけっこう深刻。仕方ないので、これは辞書登録で対応する。読みとして全角の「/」を登録しておけば、半角「/」→「・」という変換が可能になる。
でも、WX3のキーアサインにはちゃんと「起動トグル」という項目がある。これはいったい何じゃろう? というと、実は「直接入力トグル」のこと。つまり、本当にWX3をオン/オフしているんではなくて、素通しではあるが一応WX3を通してアプリケーション側にキーを渡している。それだけなら問題ないのだが、実はこれにもかなり深刻な問題が出て来る。直接入力モードでは「半角スペースが入力できない」のである。しかも、これには対処法がない。
@FEP起動中もアプリケーションのショートカット・キーを有効にする
A「Ctrl+Space」を起動トグルとする
Bスペースは、FEPオン時は全角、FEPオフ時は半角とする
の三点。ささやかなものじゃないか。Windowsなら何の障害もなく実現可能だろう。でも、OS/2ではたいへんなのだ。
まず、@の問題は[半]モードにすることで基本的に解決。しかし、前述のようにBの問題に引っ掛かる(FEPオンで半角になってしまう)。そこで、WX3のキーアサインを変更して、スペースキーに強制的に「*全角空白」を割り当ててしまう。これはこれでよし。
次にAの問題だが、結論から言うとこれは諦めた。確かに、WX3で「起動トグル」を割り当てれば、疑似的にCtrl+Spaceでのオン/オフは可能になる(ただし、いったんCtrl+`で起動したあと:WX3の起動トグルは本当の起動トグルではないので)。ところが、半角時にスペースが全角化するのは対処法がない。
原因は、FEPをオフにした状態(実は直接入力状態)では[あ]モードになってしまっているため。[英]モードにすればきちんと半角スペースが入力できるが、FEPのオフと同時に[英]モードにするのが難しい。また、仮にそれができても、[英]モードにすると本当にFEPがオフになってしまうため、今度はCtrl+Spaceでの再起動ができなくなる。Ctrl +`が必要になる。それでは意味がない。
結局、ここが最大のネックとなり、起動トグルの変更は断念。ただし、Future Wave Editorのようなアプリケーションでは、独自のキーアサイン機能を持っているので、Ctrl+Spaceに「本当の」起動トグルを割り当てることも可能。OS/2ネイティブでの長文入力はほとんどFuture Wave Editorを使っているので、Future Wave Editorで可能ならばよしとする。ただ、他のPMアプリケーションやコマンドラインではどうにもならない。
また、次のキー・コンビネーションも注意。
Shift+CapsLock | 英数 | |
Ctrl+CapsLock | ひらがな | |
Alt+CapsLock | カタカナ |
CapsLockに関しては、WX3のキー・アサインでの変更は不可能なようなので、どうしても気になるようなら、mykbdのようなフリーのドライバを使って、スキャンコードを他のキーと交換してしまうとよい。ちなみに、キーのエミュレーションやスキャンコードの一覧は、オンラインヘルプの「日本語版ご使用の手引き」に書いてある。う〜ん、これは褒めてつかわす。
なお、[Ctrl+P]や[Ctrl+O]を削除しておくことを推奨。このあたりも入力モードが勝手に切り替わる原因になる。
で、個別にWH2だけ葬り去れないかと思っていろいろ調べたところ、D:\OS2\OS2IM.INIというファイルに[かな漢字変換]の設定が書き込まれていることがわかった(バイナリファイル)。FEPのリストはたぶん、末尾部分にあるデータで、各FEPのデータはA4 03から始まっているようだ。A4 03つまり、03A4は932という日本語のcode pageを表している。また、項目の終わりは00 00でなくてはならないだろう(こっちはあんまり確信がない)。
と、まあ見当を付けたんだが、ところが、それだけではどうも上手くないようで、単純に書き換えるとけっこうシステムハングする。基本的に、A4 03から始まる「かな漢字変換なし」の項目をブロックコピーして、WH2の上にペーストしてみたんだが…。で、ごちゃごちゃやっていたら、偶然WH2が消えてくれた。全然参考にならん(^_^; 削除・再起動・再インストールなどのタイミングの問題かなあ…。少なくとも、現在の私のデスクトップでは、「なし」とWX3だけになっている。
c+h c-backspaceはCtrl+HをBackSpaceに変更する。c+hがCtrl+Hを意味するのはすぐ判るが、backspaceの前の「c-」は何? ここが律義なところで、Ctrlを押したままHを押しているわけで、そのキーが即座にBackSpaceに変換されると、BackSpaceのキーコードが発生したときもCtrlキーは押されていて、つまり、Ctrl+BackSpaceになっちゃう。この余分なCtrlを取るために、わざわざ「c-」を付けているのである。ああ、自分でも何を書いているのかわからなくなってきた。
ただ、我が家にはマシンが複数あるし、ノートPCもある。特定のキーボードに依存した環境作りも問題だとは思う。それに、2ストロークキーの問題もあるしねえ……たとえば、前述のような割り当てをすると、Ctrl+K-Hは強制的にCtrl(Fn)+K-BackSpaceに変換されてしまうわけで、Sibylのエディタでは厳しいなあ。