75 votes

Comment puis-je me déplacer dans la ligne de commande de Vim?

Si vous tapez une commande dans Vim (je veux dire que vous avez commencé avec : et que vous travaillez dans la barre en bas de l'écran), existe-t-il un moyen de déplacer le curseur autrement que en tapant sur les touches fléchées? En particulier, pouvez-vous le déplacer au début, à la fin, à n caractères ou à un mot?

109voto

Maxim Kim Points 2801

Appuyez sur Ctrl + F en mode ligne de commande (juste après : ). Vous y obtiendrez une fenêtre en ligne de commande qui pourrait être modifiée et naviguée comme une fenêtre vim normale (hjkl, etc.).

Voir :h cmdline-window pour plus de détails.

70voto

Alok Singhal Points 33073

Type

:h cmdline-editing

pour plus de détails. Je suis à la liste quelques-uns des intéressantes non-flèche commandes que faire quelque chose de similaire à ce que vous voulez.

  • ctrl-B: le curseur au début de la ligne de commande
  • ctrl-E: le curseur à la fin de la ligne de commande
  • ctrl-W: supprimer le mot avant le curseur
  • ctrl-U: supprimer tous les caractères entre la position du curseur et le début de la ligne

28voto

Jeffrey Jose Points 840

Pour ajouter à la réponse de Maxim Kim,

Dans les Normal Mode ..

q: -> Fenêtre de commande pour les commandes

q/ -> Fenêtre de commande pour la recherche en avant

q? -> fenêtre de commande pour une recherche en arrière

Ctrl-C ou <CR> mènera hors de cmdline-window

19voto

kernix Points 535
  • ctrl+flèche gauche: reculer d'un mot
  • ctrl+flèche droite - déplacer vers l'avant un mot
  • ctrl+b - au début de la ligne
  • ctrl+e - aller à la fin de la ligne
  • ctrl+w - supprimer un mot avant le curseur
  • ctrl+u - supprimer la ligne
  • ctrl+f - si vous avez besoin de plus de puissance de montage utiliser ctrl+f et vous permettra de modifier votre commande en mode normal. Par exemple, si vous voulez aller de 5 caractères vers la gauche, utilisez ctrl+f et ensuite, 5h.

2voto

Dalker Points 336

Vous pouvez également ajouter vos propres touches de déplacement. Par exemple, j'utilise la suite dans mon .vimrc pour faire bouger le mode de commande en un claquement de doigts dans une hjkl façon (d'abuser de la touche ctrl):

 " moving aroung in command mode
 cnoremap <c-h> <left>
 cnoremap <c-j> <down>
 cnoremap <c-k> <up>
 cnoremap <c-l> <right>
 cnoremap ^     <home>
 cnoremap $     <end>

^ et $ sont vraiment < ctrl-^ > et < ctrl-$ > respectivelly, typé en tant que < c-v >< c-^ > et < c-v >< c$ > dans le .vimrc (pour certaines raisons) < c-^ > et < c$ > ne fonctionne pas, au moins dans mon milieu, mais les anciens ne)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X