web-dev-qa-db-fra.com

Xmodmap - comment utiliser ctrl comme modificateur?

Disposition de base du clavier:

  • 1 → 1
  • Shift+1 → !

Je voudrais: Ctrl+1 → ¹. (Exposant un caractère). Le code suivant me permet de taper ¹, mais uniquement avec Shift+1:

xmodmap -e "keycode  10 = 1 onesuperior"

En conclusion, je voudrais garder Shift+1 pour ! et Ctrl+1 pour ¹.

2
TuxForLife
  • Cela me semble très lié à:

    Comment attribuer un raccourci clavier qui utilise AltGr comme touche de modification?

    Garder Right Alt ou AltGr comme ISO_Level3_Shift et essayez de l'utiliser également comme modificateur Alt.

    Où dans votre cas est inversé: Gardez Right Ctrl ou Left Ctrl as Control Modifier et étendre pour être utilisé un changement de niveau.

  • Je ne pouvais pas le faire fonctionner dans les deux fonctions, un essai consistait à ajouter actions: (ne fonctionne pas)

    key <RCTL> {
             type= "ONE_LEVEL",
             symbols[Group1]= [ ISO_Level5_Shift ],
             actions[Group1]= [ SetMods(modifiers=Control) ]
    };
    

    from xkb - problèmes d'utilisation des clés virtuelles et de la clé ISO_Level3_Shift mais cela ne fonctionne que dans un sens.

    Il est possible qu'une personne connaissant très bien XKB puisse effectuer une telle configuration.

  • Une configuration qui fonctionne pour moi: (pas de répétition de touche)

    1. Installer et configurer xbindkeys & xautomation comme dans Comment puis-je changer les touches de mon clavier? (Comment créer des commandes/raccourcis clavier personnalisés?)
    2. Ajoutez ces lignes à ~/.xbindkeysrc

      "usleep 150000; xte 'keyup Control_L' 'str ¹' 'keydown Control_L'"
        m:0x4 + c:10
        control + 1
      

      Pour moi, j'ai ¹ avec AlgGr. Je pourrais donc utiliser cela aussi:

      "usleep 150000; xte 'keyup Control_L' 'keydown ISO_Level3_Shift' 'key 1' 'keyup ISO_Level3_Shift' 'keydown Control_L'"
      
    3. Redémarrez le démon xbindkeys

      pkill xbindkeys;xbindkeys
      
2
user.dz

Vous pouvez utiliser la commande xev puis pousser Ctrl clé, puis voir le code clé, par exemple le mien est "code clé 37" pour Ctrl.

Cependant, je ne pensais pas que l'exposant fonctionnerait dans l'éditeur, ni dans le terminal/la console et quoi que ce soit, sauf le traitement de texte. L'exposant et l'indice existent dans l'éditeur Word (LibreOffice, MS Word, etc.) mais, par exemple, dans Latex, nous utilisons le trait de soulignement "_" pour l'indice et ^ pour l'exposant.

0
bagustris