Dans VIM, puis-je savoir quelles touches je viens de taper?
11
Parfois, j'utiliserai VIM et quelque chose se passera, et je ne sais pas ce que c'était ou ce que j'ai tapé qui l'a causé. Existe-t-il un moyen de répertorier certaines des touches récentes qui ont été saisies et, mieux encore, de savoir quelles actions elles ont déclenchées?
Vima une option dont -Wvous pourriez abuser, mais elle ne fonctionnera pas tant qu'elle Vimest en cours d'exécution.
-w {scriptout}
Tous les caractères que vous saisissez sont enregistrés dans le fichier {scriptout}, jusqu'à ce que vous quittiez Vim. Ceci est utile si vous souhaitez créer un fichier de script à utiliser avec "vim -s" ou ": source!". Si le fichier {scriptout} existe, des caractères sont ajoutés.
-W {scriptout}
Comme -w, mais un fichier existant est écrasé.
Appel Vimavec par exemple un alias
vim -W /tmp/vimlog-$(id -un)
vous permettra d'inspecter avec less /tmp/vimlog-$(id -un)ou cat -v /tmp/vimlog-$(id -un)ce que vous avez littéralement tapé après avoir quitté Vim.
Ceci est une idée intéressante. Je vais essayer ceci et voir si j'apprends quelque chose.
Owen
3
Assurez-vous d'abord que vim se souvient de toutes les lignes de l'histoire. Cela définit l'historique à 1000 commandes et recherches:
:set history=1000
Si vous tapez le début de ce que vous recherchez, vous pouvez utiliser les ↑↓touches pour faire défiler l'historique - cela s'applique aux commandes et aux recherches.
Par exemple, si vous avez recherché la Chine puis Cuba puis le Tchad puis Chypre :
Vous pouvez taper /cet appuyer ↑plusieurs fois. Vous trouverez qu'il affiche /cyprusalors /cubaalors /china( /Chadest sautée car il ne démarre pas avec un c ).
Je ne pense pas que cela s'applique aux commandes en mode normal uniquement aux commandes en mode ex (c'est-à-dire les commandes commençant par ':', exemple: e: w: q)
kmkkmk
1
Pour voir l'historique des commandes ex, vous pouvez également taper simplement q:en mode normal. il en va de même pour l'historique des recherches avecq/
Yab
2
Vous pouvez ajouter ceci à votre .vimrc:
set showcmd
Il affichera dans la barre d'état la commande que vous effectuez en les tapant. Bien que cela ne vous donne pas d'histoire, c'est la solution la plus proche que je connaisse.
Si toutefois vous parlez de excommandes, l'avertisseur de Gareth est la voie à suivre
Assurez-vous d'abord que vim se souvient de toutes les lignes de l'histoire. Cela définit l'historique à 1000 commandes et recherches:
Si vous tapez le début de ce que vous recherchez, vous pouvez utiliser les ↑ ↓touches pour faire défiler l'historique - cela s'applique aux commandes et aux recherches.
Par exemple, si vous avez recherché la Chine puis Cuba puis le Tchad puis Chypre :
Vous pouvez taper
/c
et appuyer ↑plusieurs fois. Vous trouverez qu'il affiche/cyprus
alors/cuba
alors/china
(/Chad
est sautée car il ne démarre pas avec un c ).Autres commandes:
:history
répertorie toute l'histoire.:his
répertorie l'historique des commandes.:his /
répertorie l'historique des recherches.la source
q:
en mode normal. il en va de même pour l'historique des recherches avecq/
Vous pouvez ajouter ceci à votre .vimrc:
Il affichera dans la barre d'état la commande que vous effectuez en les tapant. Bien que cela ne vous donne pas d'histoire, c'est la solution la plus proche que je connaisse.
Si toutefois vous parlez de
ex
commandes, l'avertisseur de Gareth est la voie à suivrela source