GNU/Linux >> Tutoriels Linux >  >> Linux

Désactiver le verrouillage numérique, en préservant les raccourcis clavier de la souris

Basé sur la réponse de @Michał Górny. Voici les commandes pour désactiver le verrouillage numérique, utiliser quand même des chiffres et mapper le verrouillage numérique sur F13 (peut être pratique pour lier une fonction spéciale dans votre gestionnaire de fenêtres).

# 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"

C'est bien de ne pas avoir le voyant numlock allumé tout le temps :)


Commençons par quelques explications sur ce qui se passe et pourquoi votre idée ne fonctionne pas. Tout d'abord, jetez un œil à la carte des modificateurs :

$ 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)

Comme vous pouvez le voir, Num_Lock est mod2 ici. Lorsqu'il est activé, tous les événements de pression de touche sont accompagnés de mod2 un peu.

Si vous le désactivez comme ceci :

$ 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)

Notez que mod2 est maintenant associé à BadKey , et cela semble confondre beaucoup Xorg. En fait, la plupart des changements de carte de modificateur semblent casser X11 pour moi.

Pour le moment, je ne trouve pas de bonne solution qui consiste à jouer avec la carte de modification. Mais j'ai une autre idée:vous pouvez mapper toutes les touches du clavier pour qu'elles fonctionnent de la même manière avec le verrouillage numérique activé et désactivé. C'est-à-dire :

xmodmap -e "keysym KP_Up = KP_8"
xmodmap -e "keysym KP_Left = KP_4"
# ...

etc. Une fois que vous avez fait cela, l'état du verrouillage numérique n'aura plus d'importance.

Vous pouvez même supprimer le modificateur par la suite pour désactiver l'extinction de la LED :

xmodmap -e "remove mod2 = Num_Lock"

Linux
  1. Désactiver l'algorithme d'échange de clé faible, mode CBC dans SSH

  2. Faire défiler les mouvements de la souris lorsque le bouton du milieu est maintenu enfoncé ?

  3. Linux – Désactiver/modifier Middle-click-to-paste In X11/xorg ?

  4. désactiver temporairement le pavé tactile et le clavier, c'est-à-dire protéger mon ordinateur portable Linux

  5. Les raccourcis clavier Tmux ne fonctionnent pas

Comment désactiver le clic sur le bouton central de la souris pour coller sur Ubuntu 20.04 Focal Fossa Linux

Désactivation automatique du pavé tactile lorsque la souris est connectée à GNOME

Comment désactiver la vérification de la clé d'hôte SSH sous Linux

Comment désactiver une touche du clavier sous Linux (Ubuntu) ?

Désactiver complètement la clé PrntScr

Comment puis-je désactiver le bouton de mon lecteur de CD/DVD ?