Recherche

Désactiver la touche Caps Lock sous Linux Envoyer
Programmation et tuning - Linux et Ubuntu
Écrit par Neamar   
Samedi, 31 Octobre 2009 13:34

Au risque d'exprimer mon opinion personnelle et de sortir de la masse, je tiens à profiter de ce billet pour exprimer ma haine envers la touche CAPS_LOCK. Combien de fois vous êtes vous fait avoir à taper un texte avec ce modifieur, et à ne pas pouvoir le repasser en lower-case ?
Certes, si l'on utilise un éditeur de texte tel Word, Kate, Notepad++ ou autres, des raccourcis existent (respectivement ctrl+F3 et ctrl-U), mais dans la plupart des cas on est bon pour retaper le texte. Horreur et damnation, la hantise de tout fainéant qui se respecte.

Sérieusement, qui se sert de cette touche, à part les Kikoolol qui aiment hurler leur incompétence sur tous les forums et autres skymerdes ?
Au pire, il faut marquer un mot en majuscule (pour le SQL par exemple), et la touche majuscule suffit amplement. Voyons donc comment désactiver ce reliquat inexpugnable des temps anciens...

Caps Lock : pas forcément tout le temps

Désactiver Caps Lock

Il existe un petit utilitaire fort sympathique sous Linux qui gère tous les modifieurs du clavier. Si vous travaillez sur des serveurs distants, vous le connaissez peut être : il s'agit de xmodmap.
Ouvrez un terminal et marquez xmodmap, vous devriez avoir quelque chose de ce genre qui s'affiche :

 
neamar@neamar-laptop:~$ xmodmap
xmodmap:  up to 2 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 (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)
 

Vous l'aurez compris, le but va être de supprimer la ligne lock Caps_Lock (0x42).
xmodmap permet, comme vous vous en doutez, de modifier ces mappings de touche. Il faut pour cela utiliser l'option -e suivie de la commande à exécuter. Je vous laisse vous reporter à man xmodmap pour plus de détails.

Exécutons donc la commande pour supprimer Caps Lock :

 
neamar@neamar-laptop:~$ xmodmap -e "remove Lock = Caps_Lock"
 

Et voilà ! Appuyez maintenant sur votre touche... miracle ! La petite LED ne s'allume plus, et vous continuez d'écrire comme une personne civilisée !

Désactiver Caps Lock définitivement

Fin de la tyrannie du Caps Lock ? Hélas, non ! Car le modifieur que nous venons de faire ne s'applique que pour cette section. Pour le rendre permanent, il va donc falloir l'exécuter en début de session.

Ici, chacun pourra utiliser la méthode qu'il souhaite. Personnellement, j'ai un faible pour le @REBOOT du crontab, c'est donc la méthode que je détaillerai ici.

Pour ceux qui ne le savent pas, crontab est un utilitaire pour planifier des tâches régulières ; par exemple la sauvegarde d'un dossier tous les jours à 18h, et à 12h les samedis et dimanche. Un outil puissant, qui peut aussi exécuter des scripts au reboot.
Pour commencer, tapez la commande suivante :

 
neamar@neamar-laptop:~$ crontab -e
 

Rajoutez le code suivant à l'intérieur du fichier :

 
#Désactiver cette saleté de caps lock dès le démarrage.
#La touche reste quand même active, elle n'a juste plus l'effet capitalize
@reboot xmodmap -e "remove Lock = Caps_Lock" >>/dev/null/
 

Un petit Ctrl-X, "O" pour enregistrer... et voilà ! Vérifiez que tout a bien été sauvegardé avec crontab -l, et cette fois c'en est fini de la touche maudite ! Supprimé, le Caps Lock, enfin !

Pour aller plus loin...

Comme précisé dans les commentaires, seul l'effet Lock est désactivé : la touche reste donc parfaitement viable. Vous pouvez par exemple vous en servir comme raccourci clavier (ça fait une touche gratuite), comme touche hôte pour une machine virtualisée...
Et si de temps en temps vous avez vraiment besoin d'un caps_lock, vous pouvez affecter une autre touche à l'effet Lock : faite juste attention à choisir une touche que vous n'enclencherez pas par erreur (il suffit de remplacer le remove par add) !

Caps Lock : libérez le démon

Mise à jour le Samedi, 31 Octobre 2009 14:08
 

Ajouter votre commentaire

Votre nom:
Votre site web:
Sujet:
Commentaire (vous pouvez utiliser de balises HTML ici):
  Code de vérification. Lettres minuscules seulement et sans espace.
Code de vérification:
Commentaires (1)
1Mardi, 23 Novembre 2010 19:34
wkr
Bonjour,
Un grand merci d'abord de m'avoir soulagé de capslock
Un petit détail : sous linux Mint 9, j'ai dû mettre une minuscule au premier Lock pour que cela fonctionne (soit "remove lock = Caps_Lock")
Encore merci, j'ai longtemps cherché une solution sur le web, est la c'est la seul qui permet d'éliminer définitivement Capslock