US配列 on JP109キーボードの感想

JP109キーボード上でUS配列にしてしばらく使ってみているが、特に問題はない。一部のショートカットキーがUS配列で押しやすいから割り当てられたんだろうなぁと気づくぐらいだった。

Mozcのローマ字テーブルを一部作り直し

JP109キーボードを前提としていた自作ローマ字テーブル(DvorakY改)を変更が必要になった。

  • 長音のキーが、":"から"'"にする。コレはキーの位置も変わらないので問題ない。
  • 小文字入力時のJIS配列で"@"の場所にあったキーが"["に変わってしまい、"「"が入力されるので使えなくなった。*1

@による小文字入力は殆ど使っていなかったので、少し遠くなるが"\"に割り当てることにした。

JP109キーボード上のUS配列にあわせたキーバインドにする

US配列でEscキーをどうするかを考えることになった。コレまでは、半角/全角をEscとしていたので、Escが遠くなってしまった。((日本語入力切り替えは、無変換/変換キーで行うMac流を使ってます。

で考えた結果、過去にCaps LockをEscとしたこともあるが今回は、"カタカナ/ひらがな"をEscとすることにした。以前と同様に、https://honmushi.com/2019/01/18/ubuntu-xkb/に書かれている方法でキーバインドを変更した。

setxkbmap -print > ~/.xkb/keymap/mykbd とした結果、下記となった。 +myswap(swapkeys) が以前と同様に追記した部分でswapは行為と変更内容が一致しないのだけど、昔の設定が残っているので流用した。

xkb_keymap {
        xkb_keycodes  { include "evdev+aliases(qwerty)"	};
        xkb_types     { include "complete"	};
        xkb_compat    { include "complete+japan"	};
        xkb_symbols   { include "pc+au+inet(evdev)+terminate(ctrl_alt_bksp)+myswap(swapkeys)"	};
        xkb_geometry  { include "pc(pc105)"	};
};

~/.xkb/symbols/myswapは、以下にした。Escは念の為に全角半角、メニューキーはxmonadのためにSuper_R(Winキー)としておいた。

partial modifier_keys
xkb_symbols "swapkeys" {
    replace key <MENU> { [ Super_R ] };
    replace key <HKTG> { [ Escape ] };
    replace key <ESC> {[ Zenkaku_Hankaku, Kanji ] };
};

プログラムを起動させる場所を集約させておきたかったので、xmonadから下記コマンドを実行させるようにした。 $DISPLAY~の環境変数がなぜか引き継がれていないようなので ~:0 と手書きしている。

xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd :0 2> /dev/null

この結果、日本語入力時のテーブルが以下のようになった。日本語入力中はシフト入力で同一キーに複数の機能をもたせることはさせない方針です。

DvorakY改:US配列用、Jp109キーボード対応

*1:例えば、"@a"で"ぁ" が入力されるようにローマ字テーブルを定義していた。普通のローマ字入力で"la"の"L"の代わり。