Je sais que l'exécution de :map
commandes sans arguments devrait me donner une liste de mappages définis par l'utilisateur, mais, par exemple, lorsque j'appuie sur Ctrl-W Ctrl-I, quelque chose se produit, mais je n'ai aucune idée de la fonction qui vient de se produire en tant que mappages intégrés n'apparaissent pas dans les :map
commandes.
Comment savoir ce que fait une clé?
key-bindings
Mad Wombat
la source
la source
:help CTRL-W_CTRL-I
ou:help CTRL-W_i
Réponses:
Tu ne peux pas.
Voici le code source C pour ce qui
<C-w><C-i>
fait:normal.c
:window.c
:Je ne sais pas exactement où la
type
variable est récupérée, je n'avais pas envie de chercher ça, mais le fait est qu'il n'y a pas vraiment de facilité pour dire "cette clé est mappée à cette fonctionnalité". C'est fondamentalement juste unstruct
qui mappe unchar
à une fonction, et l'implémentation de la deuxième frappe (<C-i>
) est simplement une laideur ad hoc!C'est différent d'Emacs, où (je présume) tout est en Lisp, et vos mappages personnalisés ne sont pas différents des mappages par défaut d'Emacs. Mais dans Vim, vous avez des mappages "magiques" fournis par le code C qui correspondent aux fonctions C qui ne sont jamais exposées dans Vim. Je dis toujours que Vim a la meilleure idée, mais Emacs a la meilleure implémentation ;-)
La seule façon est donc de le rechercher dans les fichiers d'aide. C'est pourquoi j'ai fermé ceci en double de Comment naviguer vers les rubriques de la documentation de Vim, car c'est la seule réponse pratique que l' on puisse donner. On pourrait en effet affirmer qu'une explication plus approfondie de la question pourrait être donnée (comme je viens de le faire), et si vous aviez soutenu qu'au lieu de donner la réponse (maintenant supprimée), j'aurais probablement dit "vous" re right, désolé pour l'erreur "et l'a rouvert ;-)
En tout cas, pour illustrer brièvement les conventions avec quelques exemples:
:help w
- mappage en mode normal pourw
(sensible à la casse);:help g8
- mappage en mode normal pourg8
;:help v_o
- cartographie du mode visuel pouro
; les autres modes sontc
pour la ligne de commande eti
pour l'insertion;:help CTRL-W
- mappage en mode normal pour<C-w>
;:help i_CTRL-W
- insérer le mappage de mode pour<C-w>
;:help CTRL-W_CTRL-I
- mappage en mode normal pour<C-w><C-i>
;:help i_CTRL-G_<Down>
- insérer le mappage de mode pour<C-g><Down>
.la source
commandline completion
dans l'aide de vim en utilisant CTRL-D (je l'appelle "rechercher dans l'aide"). Tapez:h CTRL-W
puis appuyez sur <CTRL-D>, et vous obtiendrez une liste de toutes les commandes contenant la chaîne « CTRL-W », par exempleCTRL-W, CTRL-W_^, CTRL-W-<Down>, ...
. Tapez:h g8<CTRL-D>
et vous verrezg8
et8g8
comme sujets d'aide disponibles. Sans cela, vous devez taper le sujet d'aide exactement et trouver la chaîne exacte qui fonctionne est difficile.Il se trouve dans les fichiers d'aide de vim à l'adresse
:help index
Si vous souhaitez savoir quelles clés ne sont pas mappées par défaut, consultez
:help map-which-keys
Remarque: les liens ci-dessus sont cliquables vers le dernier manuel de référence vim
la source
Je pense que vous pouvez obtenir les mappages via les commandes suivantes
J'espère que cela aide!
la source