hogeとはワイルドカードのようなものです。日々起こった、さまざまなこと −すなわちワイルドカード− を取り上げて日記を書く、という意味で名付けたのかというとそうでもありません。適当に決めたらこんな理由が浮かんできました。
02/09/2025 むう [長年日記]
tDiary 8144日目
■ [日記] HHKB Pro (us) の右メタ (変換) キーを「全角/半角」キーにする
Xorg 上でだけではなく,もっと下の方から.
udev で scancode 7008a を zenkakuhankaku に割り当てる.scancode は evtest で調べる.
/etc/udev/hwdb.d/10-zenkakuhankaku.hwdb: # name: # $ cat /sys/class/input/$(basename $(readlink /dev/input/by-path/*usb-*kbd))/device/name # scancode, keycode: # $ sudo evtest $(readlink -f /dev/input/by-path/*usb-*kbd) # key name: # $ less /usr/include/linux/input-event-codes.h evdev:name:Topre Corporation HHKB Professional:dmi:bvn*:bvr*:bd*:svn*:pn* KEYBOARD_KEY_7008a=zenkakuhankaku
反映.
# systemd-hwdb update # udevadm trigger
しかしキーの解釈はキーボードレイアウトによって変化するため,これだけだとレイアウトが us の場合は Xorg 上で右メタを押下しても「全角/半角」キーだとは認識されない.レイアウトを jp に変えれば認識されるが,それでは何も嬉しくないので us のまま割り当てを行う.keycode は xev で調べる.
${HOME}/.xkb/keycodes/local: xkb_keycodes { <HZTG> = 93; }; ${HOME}/.xkb/symbols/local: xkb_symbols "kanji" { replace key <HZTG> { [ Zenkaku_Hankaku ] }; }; ${HOME}/.xkb/keymap/local: xkb_keymap { xkb_keycodes { include "evdev+aliases(qwerty)+local" }; xkb_types { include "complete" }; xkb_compat { include "complete" }; xkb_symbols { include "pc+us+inet(evdev)+local(kanji)" }; xkb_geometry { include "pc(pc101)" }; };
反映.
$ xkbcomp -w0 "-I${HOME}/.xkb" "${HOME}/.xkb/keymap/local" "${DISPLAY}"
[ツッコミを入れる]