IME の呼び出し操作・・・ Alt+半角/全角 を、
Windows の MS-IME と同じ呼び出し操作・・・ 半角/全角 または ひらがな キーの
単独押し下げでも行えるようにします。
IME 制御ボタンを、用が無い時に非表示にできます。
(画面右下に常に表示されている、あの「英半J」のダサい3つ1組の灰色のボタンの事です^^;)
とある方から「こんなの作れませんか?」とのリクエストがあり、
とりあえず腕試しに作ってみたのですが、作者自身は OS/2 でも Windows でも ATOK 一筋で、
実装がコレで正しいのか、よく解っていません。(^^;ゞ
そんなワケで、当面は Vector のライブラリに正式公開はせず、
ココで暫く放牧して様子を見る事にしました。
なお、本プログラムは VIO フルスクリーン、及び VDM アプリケーション(PC-DOS 及び WIN-OS2)に対しては無効です。
コマンドライン・オプションとして、以下のような物が用意されています。
/E
英語モードで動作します。
なお、日本語(コードページ932,942,943)以外の環境で実行させた場合は、強制的に英語モードで動作します。
/H
ウィンドウ・リストに表示されなくなります。
なお、このオプションを指定して実行した NSIME を最小化した場合、
復元する際には「最小化ウィンドウ・ビューアー」を用います。
/N
最小化状態で実行します。
前述の /H オプションと併用可能です。
メイン・ウィンドウを閉じる操作を行うと、プログラムを終了します。
プログラム終了時に、メイン・ウィンドウの位置を NSIME.INI ファイルに保存します。
(次回の実行時に復元される)
その1:「MS-IME互換のIMEオン/オフ操作」
手持ちのテキストエディタやコマンド・プロンプトを開いて、 半角/全角 または ひらがな キーを押し下げてみて下さい。その2:「IME制御ボタン表示」
半角/全角 キーは、押す度に IME のオン/オフ状態を切り替えます。
ひらがな キーは、押すと IME をオンにします(オン状態で押しても何も起こらない)。
文字の入力(正確には、IME のオン/オフ操作)を受け付けるウィンドウと、そうでないウィンドウを、交互にアクティブ化してみて下さい。以上が、NSIME が持つ2つの機能の概要です。
(前者はテキストエディタやコマンド・プロンプト、後者はフォルダが代表例)
後者のウィンドウがアクティブになった時だけ、IME 制御ボタンが消えるのが確認できるでしょう。
更に、フォルダがアクティブな状態で、その中のオブジェクトの改名操作 (Shift+F9 または Alt+マウスの第1ボタンシングルクリック) を行ってみて下さい。入力受け付け状態のオン/オフに同期して、IME 制御ボタンも表示/非表示になるのが確認できるでしょう。
「MS-IME互換のIMEオン/オフ操作」
本機能を無効にしたい場合は、このチェックボックスのチェックを消去します。「オン/オフ操作後、IMEを監視」
半角/全角 または ひらがな キーの単独押し下げを行っても、 IME がオンにならなかったり、IME 制御ボタンの表示および状態が正しく更新されない場合に、有効にしてみて下さい。「IME制御ボタンの設定」
この機能は、「Microsoft Virtual PC」上にて NSIME を使用する際に発生する不具合を回避するために実装しています。 詳細は後述の「Microsoft Virtual PC」上の OS/2 で使用する場合の注意」を参照して下さい。
半角/全角 または ひらがな キーの単独押し下げによる IME のオン/オフ操作の際に、IME 制御ボタンをココでの設定通りの入力モードにしようと試みます。「IME制御ボタンの表示」
(入力モードは、3種類に大別され、IME 制御ボタンに常に表示されている)
具体的には、下記の選択肢が存在します。
デフォルトでは、オン時/オフ時共に 「英」「半」「J」 に設定されています。
- 文字の種類
- 「英」 = 英数字入力
- 「あ」 = ひらがな
- 「ア」 = カタカナ
- 文字のサイズ
- 「半」 = 半角
- 「全」 = 全角
- ローマ字モード
- 「J」 = ローマ字入力のオフ
- 「R」 = ローマ字入力のオン
ただし、ここでの設定が、必ずしも IME に適用されるとは限りません。
(IME 自身も、キー操作が行われた際にこれらの設定を行おうとするので、最終的に NSIME とどちらの設定が有効になるかは不明)
よってこの設定は、IME の挙動と同じになるように設定するのが望ましいです。 具体的には、試しに正規の IME オン/オフ操作(Alt+半角/全角)を数回行ってみて、 実際に IME 制御ボタンがどう変化したのかを確認し、その通りの設定を行う事を推奨します。
(必須ではありません。機能がうまく動作しない時に試してみて下さい)
IME 制御ボタンの表示/非表示を切り替える条件を、下記の3種類から選択します。これらの設定を変更し、最後に「了解」ボタンを押してダイアログ・ウィンドウを閉じると、 その後の IME のオン/オフ動作に反映されます。
常に表示
IME 制御ボタンを非表示にする機能を無効にします。
IME使用可能時および使用時
IME オン/オフ操作を受け付けるウィンドウがアクティブになった時だけ、IME 制御ボタンを表示します。
(デフォルトはこの設定)
IME使用時だけ
IME 制御ボタンを常に非表示にしておき、IME オン操作が行われた時だけ表示し、オフ操作でまた非表示にします。
(勿論、そのウィンドウが IME オン/オフ操作を受け付ける場合のみ)
NSIME は、この事態に陥っても何とか IME を所望通りにオン/オフしようと試みるようにコーディングされています。
具体的には、「NSIMEの設定」ダイアログ・ウィンドウを開き、「オン/オフ操作後、IMEを監視」を有効にすると、
そのためのコードが有効になります。
(効果は確実とは言えませんが、IME をオンにすら出来ない、という事態は避けられる筈)
副作用で、NSIME が想定していない IME の制御方法(例えば、IME 制御ボタンをマウスでクリックするなど)
が、全く利かなくなる事がありますが、仕様という事で諦めて下さい。(^^;)
以下余談。
作者の Windows には、標準の「MS-IME2002」以外に、「ATOK13」もインストールしてあります。
実務では「ATOK13」しか使っていないのですが、これと「Microsoft Virtual PC」を併用すると、
正常に IME を使用できなくなる事があるようです。
(上記の症状も、全部 ATOK が悪いのかも知れない^^;)
仕方が無いので、「Microsoft Virtual PC」を使う時だけ「MS-IME2002」に切り替えています。
具体的には、バーチャルマシン(OS/2 実行中)のウィンドウがアクティブである状態で、
Windows のタスクバーの右端付近にある IME の絵柄(例えば ATOK)のボタンを、マウスの第1ボタン(デフォルトでは左ボタン)でクリックし、
表示されたポップアップメニューから「MS-IME2002」を選択します。
(「Microsoft Virtual PC」を立ち上げ直す度に、この手順を踏む必要がある)
蛇足ですが、同じく IME の絵柄のボタンを、マウスの第2ボタン(デフォルトでは右ボタン)でクリックし、
表示されたポップアップメニューから「設定」→「テキスト サービスと入力言語」→「キーの設定」を選択し、
必要の無い「入力言語のホットキー」を全て無効にする(あるいは、絶対押し間違えないようなキー操作にする)と、無用なトラブルを回避できます。
(作者のように用も無いのに複数の IME をインストールしている人は、使用アプリに関係無く、是非やっておくべし)
これらを心掛けるようになってから、作者の手元では IME のオン/オフ操作に関してトラブルが発生した事はありません。
根本的な解決策とは言えませんが、一応の処方箋事例という事でご紹介をば。(^^;)
なお、「Microsoft Virtual PC」以外の仮想PCソフトにインストールした OS/2 での NSIME の動作確認は、行っていません。
(VT-x 対応 CPU を前提にしている、最近の仮想PCソフトが動かせる実機が無い^^;)
あと、例によってアーカイブにはマニュアルは付属していません。
(このページがマニュアル代わりです^^;)