俗・RDPでリモート接続したUbuntuのマシンにJIS配列のHHKBを認識させる

bye-ron.hatenablog.com

いろいろ試しているとミスが見つかったので修正点をまとめる

はじめに

開発環境でWin -> Ubuntu20.04にrdpして作業する際にスペースキーの両サイドのかな/英数キーが反応していなかった。ので反応するようにしたかった。

問題点

  • setxkbmapのrulesをいじっていたけど、ここをいじった影響で_|に対応するキーが反応しない(キー割り当てがない)状態になった
  • キー割り当てがないなら、キーコードを調べてマッピングすれば解決するが、特に|に対応するキーが特殊な機能(alt + tabの機能)に割り当てられていた
    • この機能はxevに到達する前にキーコードが吸い込まれるので変更するのがめんどくさそう

このあたりを解決した

直したところ

  • bashrcに追記したsetxkbmaprulesをリモート接続時デフォルトのbaseに変更した
  • bashrcに追記したsetxkbmapmodelapplealu_jisに変更した
    • 事前に直接接続して、sudo dpkg-reconfigure keyboard-configurationを実行し、Apple aluminium jis的なキーボードマップに変更しておく
# .bashrcに追記したもの
if [ $XDG_SESSION_TYPE != tty ]; then
    # setxkbmap -rules evdev  # これにすると、アンダーバーやバックスラッシュが壊れることが分かった
    setxkbmap -rules base
    # setxkbmap -model hhk  # そもそもUS配列だとキー数が足りていないのでやめた
    setxkbmap -model applealu_jis
    xmodmap ~/.Xmodmap
fi

tips

  • キーボード設定をいじっているとなぜか全角が全角カタカナになることがあるが、おとなしくクリックでポチポチして直している

おわりに

これで終わってほしい