Ubuntu 20.04 で CapsLock を全角/半角に置換する
はじめに
US配列のキーボードを買いました。 Filco の Majestouch Stingray です。
CapsLock で 日本語入力 <-> 英語入力 で切り替えられるように設定します。
手順
dpkg-reconfigure
JIS 配列として認識されていたので、US 配列に変更。
$ dpkg-reconfigure keyboard-configuration
Keyboard model は Generic 104-key PC を選択。 あとはいい感じに設定(詳しく書くのがめんどくさい)
Xmodmap
Xmodmapでキーバインドを変更します。 CapsLock を Zenkaku_Hankaku に置換。
xev
で CapsLock のキーコードを確認します。
コマンドを打ってから調べたいキーを押しましょう。
$ xev KeyPress event, serial 37, synthetic NO, window 0x3400001, root 0x1e6, subw 0x0, time 1220891, (965,876), root:(2935,954), state 0x10, keycode 66 (keysym 0xff2a, Caps_Lock), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False
キーコードが 66 であることが分かりました。
次に、ホームディレクトリに設定ファイルを置きます。
$ touch ~/.Xmodmap
.Xmodmap に以下を記述していきます。 ! はコメント行。
! CapsLock -> Zenkaku/Hankaku remove Lock = Caps_Lock keycode 66 = Zenkaku_Hankaku
~/.bashrc
の末尾にでも以下を記述しておきましょう。
xmodmap ~/.Xmodmap
再起動するか、
$ xmodmap ~/.Xmodmap
で作業完了。
CapsLock を押して言語入力が切り替われば成功です。