今回のお題は BM43a です。
前の記事はこちら 40%キーボードプロジェクト その15 - Re: The history of "M&Y"
この40%キーボードプロジェクトの話も「その16」です。
前回、BM43a を日本語キーボードとして利用できるようになったと報告しましたが・・・・
何かまだ中途半端です。
まず、英字モードから日本語モードに切り替えるのに「変換」キーを定義したのが良くなかったです。
新しく文字を入力するのであれば良いのですが・・・入力済の文字の上で「変換」キーを押すと、勝手にカーソルの近くの文字を(新たに)変換してくれちゃいます。(これを元に戻すのが面倒くさい!)
よく、考えたら、日本語モードに変更するのは「変換」キーではなく「カタカナ/ひらがな」キーでした。
だから「KC_KANA」を設定しました。
さらに「半角/全角」キーのつもりで「KC_LANG2」を設定したのですが・・・ノートPCの「半角/全角」キーと動きが違います。
ノートPCの「半角/全角」キーは、日本語モードと英字モードが押すたびに交互に入れ替わりますが、「KC_LANG」を設定した BM43a のキーでは、日本語モードから英字モードに切り替わって、それ以降は何度叩いても英字モードのままです。(動きは違いますが、私の好みで、この方が良いので、このままにしています。)
それよりも、驚いたのが・・・日本語キーボードでは、CAPS キーが日本語モードと英字モードの切り替えになっていることでした。(CAPS キーに、そんな機能があるとは全く知りませんでした。)
逆に、CAPSキーを普通に押しても、CAPS Lock(英大文字モード)になりません。CAPS Lock をするためには SHIFT+CAPS という操作が必要でした。同様に CAPS Lock から元に戻すにも SHIFT+CAPS の操作になります。
というのを、初めて知りました。
そもそも CAPS Lock を使わないのですが・・・英語キーボードでは、普通に CAPS キーを叩いただけで、CAPS Lock になります。
これも日本語キーボードと英語キーボードの違いなのですね。
さて、ここからが今回の本題です。
日本語キーボードとして使用すると、キーに「定義した記号」と「実際に打たれる記号」がズレます。
だから、記号のキーの定義を逆にズラして定義する必要があります。
私が実験した結果、こんな表ができました。
例えば、@ を打つキーを定義する場合には、そのキーを[ に定義します。
@ を定義したキーを打つと、” が表示されます。
これ、分かりにくいですよね。
世にあるキーマッピングのツールは、英語キーボードしかサポートしてないし、そんな日本でしか使われない日本語キーボードのことなんて知らないよ! ということでしょうか !?
とりあえず、この変換表を元にして、日本語キーボードとして使えるようなキーマッピングをしています。
何か、この自分なりに考えて自分用にキーマッピングしたキーボードは自分専用なので、愛着が沸きますね!