キーボードがおかしい

PC に久し振りに Emacs を入れたら、キーボード配列がおかしい。 どうすれば直るんだろう。

ここ最近はエディタに VSCode ばかり使ってたけど、 C のソースを追っかけるのにどうも便利じゃないもんで wsl2 のうえに久し振りに Emacs を入れた。

最近の wsl2 は便利になったもんで、 Windows 側に X サーバ入れなくても X のアプリが動く。 Emacs を "-nw" オプションなしで開くなんて何年ぶりか。

ただ、どういうわけかこの Emacs、Shift-2 で "@" が出る。 いわゆる英語キーボードだ。 ぐぐってみると、WSL2 の X アプリで割とあることみたい。

割とあるし割とみんなさくっと直せてるみたいなんだけど、 なんでか直らないんだよなあ。どうすりゃ直るんだろう。

まずは WSLのキーボードが英語配列になってしまふ - Qiitaemacsやgnome-terminal上でキーボードが英語配列になってしまうとき を参考にしてみた。

環境変数

ターミナルで動かすアプリは日本語化できているので、 以下はそもそも完了していた。

sudo apt instal language-pack-ja
sudo update-locale LANG=ja_JP.UTF-8

dpkg の設定

sudo dpkg-configure keyboard-configuration すればよいという。 これをやるとインストーラみたいなテキスト GUI が出てきて、 キーボード設定ができるという。

そこでこのコマンドを唱えてみた。しかし何も起きなかった。

wsl2$ sudo dpkg-reconfigure keyboard-configuration
Your console font configuration will be updated the next time your system
boots. If you want to update it now, run 'setupcon' from a virtual console.
wsl2$

なんでフォントがどうとか言われてるのか知らないけど、 本来ならこの "Your console font configuration will be ..." は設定を完了させたあとに出てくるものらしい。 コマンド実行したら即これが出てきて終わるのは、なんでだろう。

そして、これで解決したっぽい記事の、なんと多いことか。(うらやましい)

X の設定 1

/etc/default/keyboard にキーボードを指定する必要があるらしいので、 sudo vi /etc/default/keyboard する。

XKBMODEL="pc105"
XKBLAYOUT="us"

と記載されていたので、ここに jp106 キーボードを書く。

XKBMODEL="jp106"
XKBLAYOUT="jp"

そして Emacs を起動。だめだから wsl2 を再起動して Emacs を起動、Windows を再起動して Emacs を起動。だめ。

この方法もだめか。

X の設定 2

fcitx-configtool というツールで設定できるらしい。 fcitx は Linux 用の多言語文字入力ツールだったような。

このコマンドはインストールされていなかったが、fcitx-tools というパッケージに入っていたので、 sudo apt install fcitx-tools でインストールして実行してみた。

fcitx-tools

日本語も英語もなんも選択できんし、検索もできんから追加もできん。

現在の対策

いっしょーけんめい思い出しながら使っています、us 配列。

学生の頃 us 配列と jp 配列が混在してる環境でよかった。