Basierend auf der Antwort von @Michał Górny. Hier sind die Befehle, um die Num-Sperre zu deaktivieren, Zahlen trotzdem zu verwenden und Num-Sperre F13 zuzuordnen (kann praktisch sein, um sie an eine spezielle Funktion in Ihrem Fenstermanager zu binden).
# NumLock is F13
xmodmap -e "remove mod2 = Num_Lock" \
-e "keycode 77 = F13"
# Use numbers even when numlock is off
xmodmap -e "keysym KP_End = KP_1" \
-e "keysym KP_Down = KP_2" \
-e "keysym KP_Next = KP_3" \
-e "keysym KP_Left = KP_4" \
-e "keysym KP_Begin = KP_5" \
-e "keysym KP_Right = KP_6" \
-e "keysym KP_Home = KP_7" \
-e "keysym KP_Up = KP_8" \
-e "keysym KP_Prior = KP_9" \
-e "keysym KP_Insert = KP_0" \
-e "keysym KP_Delete = KP_Decimal"
Es ist schön, das Numlock-Licht nicht die ganze Zeit an zu haben :)
Beginnen wir mit einer Erklärung, was passiert und warum Ihre Idee nicht funktioniert. Werfen Sie zunächst einen Blick auf die Modifikatorkarte:
$ xmodmap
xmodmap: up to 3 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
Wie Sie sehen können, Num_Lock
ist mod2
hier. Wenn es eingeschaltet ist, kommen alle Keypress-Events mit mod2
bisschen an.
Wenn Sie es wie folgt deaktivieren:
$ xmodmap -e "keycode 77 = NoSymbol"
$ xmodmap
xmodmap: up to 3 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Meta_L (0xcd)
mod2 BadKey (0x4d)
mod3
mod4 Super_L (0x85), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
Beachten Sie, dass mod2
ist jetzt mit BadKey
verknüpft , und das scheint Xorg sehr zu verwirren. Tatsächlich scheinen die meisten Modifier-Map-Änderungen X11 für mich kaputt zu machen.
Im Moment kann ich keine gute Lösung finden, die das Spielen mit der Modifikatorkarte beinhaltet. Aber ich habe eine andere Idee:Sie können alle Tastaturtasten so zuordnen, dass sie sowohl mit ein- als auch mit ausgeschalteter Num-Taste gleich funktionieren. Das heißt:
xmodmap -e "keysym KP_Up = KP_8"
xmodmap -e "keysym KP_Left = KP_4"
# ...
usw. Sobald Sie dies getan haben, spielt der Status der Num-Taste keine Rolle mehr.
Sie können den Modifikator sogar nachträglich entfernen, um die LED-Abschaltung auszuschalten:
xmodmap -e "remove mod2 = Num_Lock"