X11
禁用 num lock 指示燈 LED 或反向鍵盤,因此當 num lock 開啟時,指示燈熄滅
我正在使用帶有 Xfce 的 Debian 測試/拉伸。我剛買了這個有線鍵盤。我希望預設打開數字鎖,但我不想讓 LED 指示燈亮起。這可以通過完全禁用 num lock 指示器、反轉狀態(當 num lock 關閉時顯示指示燈)來完成,或者可以將所有 num-lock-off 鍵重新映射為鍵入數字(這樣我可以指示燈亮或滅時輸入數字)。
setleds -L -num
有效,但僅在 tty 會話中有效。謝謝
如果“預設打開數字鎖定”表示“預設打開數字鍵盤上的鍵”並且您不想/不關心鍵盤上的導航:
setxkbmap -option numpad:mac <layout>
所以對於
us
佈局:setxkbmap -option numpad:mac us
現在小鍵盤總是輸入數字,無論數字鎖定狀態如何。
您可以反轉 Num Lock 的含義。使用 Xmodmap,將其放入您的
.Xmodmap
.keycode 79 = KP_Home KP_7 KP_Home KP_7 KP_Home KP_7 KP_Home KP_7 keycode 80 = KP_Up KP_8 KP_Up KP_8 KP_Up KP_8 KP_Up KP_8 keycode 81 = KP_Prior KP_9 KP_Prior KP_9 KP_Prior KP_9 KP_Prior KP_9 keycode 83 = KP_Left KP_4 KP_Left KP_4 KP_Left KP_4 KP_Left KP_4 keycode 84 = KP_Begin KP_5 KP_Begin KP_5 KP_Begin KP_5 KP_Begin KP_5 keycode 85 = KP_Right KP_6 KP_Right KP_6 KP_Right KP_6 KP_Right KP_6 keycode 87 = KP_End KP_1 KP_End KP_1 KP_End KP_1 KP_End KP_1 keycode 88 = KP_Down KP_2 KP_Down KP_2 KP_Down KP_2 KP_Down KP_2 keycode 89 = KP_Next KP_3 KP_Next KP_3 KP_Next KP_3 KP_Next KP_3 keycode 90 = KP_Insert KP_0 KP_Insert KP_0 KP_Insert KP_0 KP_Insert KP_0 keycode 91 = KP_Delete KP_Decimal KP_Delete KP_Decimal KP_Delete KP_Decimal KP_Delete KP_Decimal
您可能需要添加
xmodmap ~/.Xmodmap
到您的啟動應用程序中,我不確定 Xfce 是否預設執行此操作。這樣做的好處是在大多數情況下,您不會啟用 NumLock。一些程序在使用 NumLock 時遇到問題,因為他們認為它是一個修飾符,這會導致他們的鍵盤快捷鍵在它打開時不起作用。
如果您從不關閉 NumLock,您可以在使用 NumLock 鍵時禁用它。
keycode 77 = NoSymbol
如果你喜歡痛苦,你可以用 XKB 代替。這是我的配置,它有效地使 NumLock 始終打開。創建一個
~/.xkb/types/mytypes
包含// Digits without NumLock, cursor with NumLock. Shift swaps the meaning. // Do it this way because I almost always want digits, but the NumLock state // breaks key bindings in some applications. partial xkb_types "invert_numlock" { type "KEYPAD" { modifiers = Shift+NumLock; map[None] = Level2; map[Shift] = Level1; map[NumLock] = Level1; map[Shift+NumLock] = Level2; level_name[Level1] = "Base"; level_name[Level2] = "Number"; }; include "extra(keypad)" };
創建一個包含以下內容的文件
~/.xkb/symbols/mysymbols
:partial xkb_symbols "mykeypad" { key <KP7> { [ KP_7, KP_Home ] }; key <KP8> { [ KP_8, KP_Up ] }; key <KP9> { [ KP_9, KP_Prior ] }; key <KP4> { [ KP_4, KP_Left ] }; key <KP5> { [ KP_5, KP_Begin ] }; key <KP6> { [ KP_6, KP_Right ] }; key <KP1> { [ KP_1, KP_End ] }; key <KP2> { [ KP_2, KP_Down ] }; key <KP3> { [ KP_3, KP_Next ] }; key <KP0> { [ KP_0, KP_Insert ] }; key <KPDL> { [ KP_Decimal, KP_Delete ] }; };
作為 X 初始化啟動的一部分執行以下 shell 命令(
setxkbmap
根據需要向呼叫添加其他選項):setxkbmap -types "complete+mytypes(invert_numlock)" \ -symbols "us+compose(menu)+mysymbols(mykeypad)" \ -print | xkbcomp -I ~/.xkb - "$DISPLAY"