Caps Lockキーを再度有効にするには?

Caps Lockキーを再度有効にするには?

現在、デフォルトのキーボードレイアウトを次のように設定しています。

setxkbmap -layout us -variant dvorak -option ctrl:nocaps,[...]

Caps Lock キーを無効にし、他の多数のオプションと一緒に追加の Ctrl キーを作成します。

キーボードレイアウトを切り替えるには:

setxkbmap -layout us -variant dvorak-l -option ctrl:swapcaps

しかし、私が知っている限り、Caps Lockキーは再び有効になりません。左側のコントロールキーと Caps Lock キーは両方ともコントロールキーのままです。

完全なオプションのリストを消去できることはわかっていますが、メンテナンスのためにオプションをコピーして貼り付けないことをお勧めします。 Caps Lockを再度有効にするにはどうすればよいですか?

修正する: xev(1)を使用したキーストロークを見ると、ctrl:nocapsは両方のキーにControl_Laを提供しますが、ctrl:swapcapsはCaps Lockキー(キーを押して提供されますCaps_Lock)を「復元」するようです。ただし、Caps Lock LEDは点灯せず、実際には動作しません。

X.orgソースのドキュメントを見ると、xkeyboard-config/symbols/ctrl問題に関するヒントがあります。

xkb_symbols "nocaps" {
    replace key <CAPS>  {  [ Control_L, Control_L ] };
    modifier_map  Control { <CAPS>, <LCTL> };
};
xkb_symbols "swapcaps" {
    replace key <CAPS>  {  [ Control_L ] };
    replace key <LCTL>  {  [ Caps_Lock ] };
};

後者のオプションには何をしても modifier_map 行はありません。

ベストアンサー1

次のコマンドが機能するはずです。

xmodmap -e 'keycode 0x42 = Caps_Lock'

または

setxkbmap -option

上記のコマンドはデフォルトの動作を復元するのにうまく機能し、幸いにもほとんど必要ありません。

私は通常、次のコマンドを使用してCaps LockをControlに再マップします(幸い、VI / VIMはESCの代わりにCTRL-Cをサポートしています)。

setxkbmap -option ctrl:nocaps -layout gb

おすすめ記事