
TTY に切り替えて Caps Lock をオンにすると、キーボードの Caps Lock LED が点灯しません。X では正常に動作します。Caps Lock をアクティブにしてから TTY に切り替え、Caps Lock (TTY 上) を押すと、LED は点灯したままになります (TTY が Caps Lock を独自に追跡しているにもかかわらず)。つまり、TTY は LED をまったく気にしていないようです。
TTY の LED を何らかの方法で有効にできますか? Caps Lock が有効になっているかどうかわからないまま、何かを入力しなければならないのは非常に面倒です。
私はDebian jessie(頻繁に更新)を使用しています。arch: amd64
答え1
これは長年のDebianですバグ基礎となるカーネルに関連しているようですバグこれはずっと前に修正されました。問題は、Caps_Lock
非 ASCII 文字では機能しなかったため、回避策として、代わりに Caps Lock キーにShift_Lock
または をマップすることでした。CtrlL_Lock
Debian 側では、XKB キーボード記述からコンソール キーマップを作成するためにckbcomp
が使用する によって問題が生じます。バグ レポートで参照されている を使用した元のコードは、 の代わりに を切り替える別のコードに置き換えられているようです。興味がある場合は、Perl スクリプトで変数の使用法を検索できます。console-setup
Shift_Lock
CtrlL_Lock
broken_caps
ckbcomp
何らかの理由でこのコードがまだ必要かどうかはわかりませんが、バグレポートを再度報告する価値はあるかもしれません。ただし、回避策として次の行を追加する/etc/kbd/remap
と、再起動後に修正されるはずです。
s/CtrlL_Lock/Caps_Lock/
または、次回の再起動までの一時的な修正として、セッションで次のコマンドを実行しますtty
。
dumpkeys | sed s/CtrlL_Lock/Caps_Lock/ | sudo loadkeys
アップデート
/etc/kbd/remap
が利用できない場合にのみ実際に使用されるようですsetupcon
。より良い回避策は、 に次の行を追加することです/etc/rc.local
。
dumpkeys | sed s/CtrlL_Lock/Caps_Lock/ | loadkeys
答え2
Debian 6 および Debian 7 の解決策を見つけました。
デビアン6
ファイルの最後に次の内容を追加します/etc/console-setup/remap.inc
。
keycode 58 = Caps_Lock
そして実行するsetupcon
デビアン7
スクリプトの最後に次のコードを追加します/etc/default/keyboard
。
dumpkeys | sed -e "s/keycode 58 = CtrlL_Lock/keycode 58 = Caps_Lock/" | \
loadkeys 2>&1 >/dev/null
そして実行するsetupcon
keycode と 58 の間には 2 つのスペースがあることに注意してください。リダイレクトは、/dev/null
煩わしいコンソール出力を抑制するだけです。