これは Emacs の話ではないけれど, Editor を使う際にキー配列は重要なのでついでに書いておく。
ある時 Linux や Mac で 101 系のキー配列を使うようになった。それ以来デスクトップにつながれているキーボードは US キーボードだし, 現在使っている MacBook も US キーボードのものである。今さら 106系のキーボードに戻るのも大変なので 101 の配列で通している。さて, Let's note にインストールした Ubuntu では, 設定ファイルで比較的自由にキーマップを変更できる。具体的には Ubuntu 20.04 では
/usr/share/X11/xkb/symbols/jp
と
/usr/share/X11/xkb/symbols/inet
をそれぞれ
jp
と
inet
で置き換えることでキーマップを101系に近くなるよう変更している。
元に戻すには sudo apt --reinstall install xkb-data
を実行すればよい。
一方 Windows では, これまで Ubuntu のように簡単に変更する方法を知らなかったので, CapsLock を Ctrl に変更するだけにしていたのだが, やってみると Windows の設定と PowerToys だけで意外に手軽に変更できた。以下はその説明。
もともとの Let's note のキーボードは次のようになっている。
一方, 104系のノートのキーボードは多少の違いを除いておおよそ次のような感じになっている。これに近づけたい。
ちなみに Ubuntu において, 冒頭のファイルで
/usr/share/X11/xkb/symbols/jp
と
/usr/share/X11/xkb/symbols/inet
を置き換えたものは
となるようになっている。青のキーが変更した部分。こうして見ると無駄に Space と Alt が多いかも。
まず CapsLock を Ctrl に変更する。これも PowerToys を 使えばできそうなのだが, 何故かうまくいかなかったので Ctrl2Cap v2.0 を使った。
次に Windows の「設定」の言語のところでハードウェアキーボードレイアウトのレイアウトを変更する。101/102 を選択して再起動すると, キーマップが次のように変わる。
VK193 などの記号については, PowerToys で表示されるものに準じている。 undef と書いているのは PowerToys では undefined と表示されるもの。 この状態でも必要なキーは揃っているが, 赤色の部分が使えなかったり使い勝手が悪かったりする。個人的に右の Alt キーを多用するので、右下の Menu キーと Ctrl キーは Altで置き換えたい。 そこで PowerToys で変更する。具体的には PowerToys を起動して左の Keyboad Manager をクリックし, キーの再マップで変更する。変更するキーを, 「種類」をクリックしてからそのキーをタイプするか, その下の選択肢から選ぶ。そしてマップ先を右から同様に選べばよい。
undefined は3つを別々には変更できなさそうなので, VK235を無変換, undefinedを変換キーにする。変換キーは
IME Convert
, 無変換キーは IME Non-Convert
を指定することになる。この場合の PowerToys の設定画面を載せておく。
この設定でキーマップは次のようになる。
これは右上の変換キーを除けばかなり理想に近い。できれば右上を backslash と bar のキーに変更したいが, これはスペースの右を変換キーにすることとのバーターになる。 私は普段は IME のトグルを Shift+Space でやっていて Ubuntu や Mac では変換キーは使わない (特に Mac の US キーボードでは(無)変換キーのところはスペースキーである) ので、変換の部分をまとめて backslash+bar にしてもよいかもしれない。