J'ai un programme X11 qui saisit le verrouillage des majuscules et l'utilise. Le problème est que je souhaite désactiver le basculement du verrouillage des majuscules, mais cela semble désactiver la clé.
Donc, quel que soit le X11 obtenu pour une touche de verrouillage des majuscules, il doit toujours l'obtenir (pas de désactivation de la clé, ni de remappage sur une autre clé), mais sans rien traduire la pression de touche en bascule (ce qui pourrait être au niveau du noyau? ).
J'ai essayé de changer le scancode, mais cela a juste remappé la clé. J'ai également supprimé l'entrée capslock xmodmap
, mais cela a également désactivé les majuscules.
Comment puis-je dire au noyau d'ignorer la touche majuscule (par rapport à sa fonctionnalité habituelle), tout en transmettant le message à X?
Juste pour ajouter un peu plus de détails:
Le «programme» que j'essaie de lancer est «enso» humanisé. Quand il n'y a pas de clé, j'obtiens l'erreur "CRITICAL: root: Impossible de trouver la clé quasimode". Lorsqu'il n'y a pas d'erreur, je peux utiliser enso avec des majuscules, mais sofar n'a pas compris comment désactiver la fonctionnalité des majuscules alors qu'enso est toujours en mesure d'y accéder.
setxkbmap -option ctrl:nocaps
remappeControl_L
, par exemple.Réponses:
Je pense que j'ai une technique pour désactiver le basculement de la Capslocktouche, mais pas complètement pour désactiver la clé ensemble, ou pour la remapper sur une autre touche du clavier.
Si vous utilisez la commande:
Le clavier ne basculera plus. J'ai confirmé cela sur mon ordinateur portable exécutant Fedora 14, la LED ne s'allume plus et la Capslockfonctionnalité normale a disparu.
Cependant, l'utilisation de xev montre toujours que la touche est enfoncée:
Ainsi, les événements sur lesquels vous appuyez sur la touche restent intacts pour que d'autres applications puissent les récupérer.
setxkbmap
Le fichier
/usr/share/X11/xkb/rules/xorg.lst
contient la liste complète des options que vous pouvez donnersetxkbmap
.En parcourant ce fichier pour "cap", j'ai remarqué cette ligne:
Il y a d'autres valeurs dans ce fichier, donc si ce n'est pas ce que vous recherchez, peut-être qu'une de ces valeurs alternatives conviendrait.
Les références
la source
setxkbmap -option ""
.Si vous ne voulez pas que la Caps Locktouche ait son effet habituel, vous pouvez désactiver le
Lock
modificateur, tout en conservant leCaps_Lock
symbole de touche.la source
Ceci est très similaire à la réponse que j'ai donnée pour une autre question . Cet extrait de code xkb devrait faire l'affaire.
la source