
私は以前、この中で提案されている方法を使っていました答えUbuntu 16 でマイナスとアンダースコアを交換するには、次のようになります。
xmodmap -e "keycode 20 = underscore minus underscore minus"
これは Debian 11 では機能しません。別の方法がありますか?
$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye
$ echo $XDG_CURRENT_DESKTOP
GNOME
答え1
質問で言及された方法は、Ubuntu 20.04 では機能します。
ただし、keysyms
コマンドで「マイナス」と「アンダースコア」の代わりに指定して、機能するかどうか試してみてください。
xmodmap -e "keycode 20 = 0x5f 0x2d"
0x2d
は「マイナス」のキーシンボルであり、0x5f
「アンダースコア」である必要があります。 コマンドを使用して、これがシステムで当てはまるかどうかを確認できますxev
。
コマンドの最初のキーシムは、キーコード 20 が押されたときにどのキーを実行するかをシステムに指示し、2 番目のキーシムは、キーコード 20 が Shift キーと一緒に押されたときに何を実行するかをシステムに指示します。
答え2
オプション1/usr/share/X11/xkb/symbols/
:レイアウトのファイルを直接編集します。たとえば、次のようになります/usr/share/X11/xkb/symbols/us
。マイナス、検索:
key <AE11> {[ minus, underscore, quotedbl, plusminus ]}; // - _ " ±
これを次のように置き換えます:
key <AE11> {[ underscore, minus, quotedbl, plusminus ]}; // - _ " ±
ログアウト、ログイン。
オプション2: xkbを使用する
(これunix.stackexchange の回答 (Pablo Saratxaga による)
以下を使用してファイルを作成します
~/.xkb/keymap/mykbd
。
setxkbmap -print > ~/.xkb/keymap/mykbd
~/.xkb/symbols/myswap
次の内容を含むファイルを作成します(ここでも AE11 を編集する必要があるものと仮定します)。
hidden partial alphanumeric_keys
xkb_symbols "swap_minus_undersco" {
key <AE11> {[ underscore, minus, quotedbl, plusminus ]};
};
ファイルを編集し
~/.xkb/keymap/mykbd
、次xkb_symbols
の行を追加します。
+myswap(swap_minus_undersco)
ロードします:
xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY