web-dev-qa-db-fra.com

Essayer de mapper <Ctrl> + <hjkl> sur <Gauche Bas Haut Droite> globalement (touches fléchées du type Vim) avec xmodmap

J'essaie de cartographier Ctrl+H,J,K,L aux touches fléchées Left,Down,Up,Right, respectivement, sur le système d’exploitation Ubuntu (globalement, pas dans Vim).

J'ai essayé la solution publiée ici , mais les commandes de modification ne fonctionnent pas. Voici ce que j'essaye:

xmodmap -e "keycode 45 Control_L = k Up"
xmodmap -e "keycode 45 control = k Up"

(Le code clé 45 correspond à "k")

Aucune des commandes ne fonctionne. (Ils ne donnent pas d'erreur, mais ctrl + k n'est pas remappé sur up arrow)

Existe-t-il un moyen de faire xmodmap, et si ce n’est pas le cas, existe-t-il une solution plus propre?

Merci!

Edit: J'ai trouvé ma réponse ici - grâce à Swift

7

C'est sûrement une idée très étrange de transformer Ubuntu en nom de code "VimOS". Je pense qu'il est beaucoup plus approprié de mapper les touches de Vim sur un groupe de claviers plus libre et plus équitable. Ou certainement PAS à cause de cela pourrait aussi être utile.

Cependant, je ne supprime pas ma première suggestion concernant les cartographies Vim et je devrais dire que la réponse à votre question existe ici:
Système de navigation vim-style (hjkl)

En partie, je partage ce point de vue (grâce à Shell hell ):

NOTE 3: Mise en place Ctrl / Meta + H,J,K,L Les raccourcis clavier semblent être le moyen le plus simple d’avoir une navigation de style vim, mais ce n’est pas le cas. Premièrement: vous devez le faire application par application, ce qui est un processus fastidieux. Deuxièmement, vous finirez probablement par casser les mappages par défaut pour une application donnée. Dernier point mais non le moindre: certaines applications, par exemple torrent ou htop ne vous permettent pas de changer leurs valeurs par défaut, sauvegardez-les en corrigeant leur code source. Pour des raisons similaires, vous ne pourrez pas faire le travail avec Super / Hyper, Soit.

Et aussi j'ai trouvé près de réponse ici:
Super-utilisateur: mappage de Super + hjkl sur les touches fléchées sous X

Vim utilise un mode de commutation pour mapper les clés. Donc, xmodmap pour Vim, ce sont des globaux enfichables qui rompent l’expérience classique de Vim. Malgré tout, prétendre que ça sonne pathétique ;)

Vim prend en charge plusieurs modes d'édition: normal, insérer, remplacer, visuel, sélectionner, en ligne de commande et en attente de l'opérateur. Vous pouvez mapper une clé pour fonctionner dans tout ou partie de ces modes.

Touches de mappage dans Vim - Didacticiel (partie 1)
Touches de mappage dans Vim - Didacticiel (2e partie)
Touches de mappage dans Vim - Didacticiel (partie 3)

6
swift

Tux-J et Tux-K sont mappés vers le haut et le bas dans KDE, il est pertinent pour toutes les applications. Il est en fait assez facile à configurer.

  1. Allez ici: System Settings -> Custom Shorcuts -> Preset Actions
  2. Maintenant, faites un clic droit sur Preset Actions et choisissez New -> Global Shortcut -> Send Keyboard Input
  3. Appelez le nouveau raccourci VIM-J
  4. Dans l'onglet Déclencheur, cliquez sur le bouton Raccourci et appuyez dessus. Tux-J.
  5. Dans l'onglet Action, entrez Down
  6. Au bas de la fenêtre, cliquez sur Apply.
  7. Vérifiez que le raccourci fonctionne. Si tel est le cas, configurez les touches HK et L restantes.

Enjoy!

1
dotancohen