160 votes

Vim: Remplacement d'une ligne avec un autre tiré d'un coup sec avant de

Au moins une fois par jour, j'ai de la situation suivante:

A: This line should also replace line X
...
X: This is line should be replaced

Je crois que je ne suis pas d'effectuer cette tâche de manière efficace.

Ce que je fais:

  • Aller à la ligne A: AG
  • Tirez la ligne A: aa
  • Aller à la ligne X: XG
  • Collez la ligne A: P
  • Déplacer vers la vieille ligne: j
  • Supprimer les anciens ligne: dd

Ceci a l'inconvénient supplémentaire que la ligne X est maintenant par défaut dans le registre, ce qui est gênant si je trouve une autre ligne qui devrait être remplacé par A. Extraire et de coller à partir d'un autre registre ("ayy, "aP) rend cette simple tâche même de moins en moins efficace.

Mes Questions:

  • Ai-je raté un construit-dans les commandes de Vim pour remplacer une ligne arracha avant?
  • Si non, comment puis-je lier mon propre commande de feuilles (ou de restaurer) la question de la ligne par défaut dans le registre?

172voto

Dorian Points 2384

Vp: sélectionnez la ligne de la pâte, de ce qui a été tiré d'un coup sec

110voto

icecrime Points 23650

Ce que je voudrais faire :

  1. aG
  2. Y
  3. xG
  4. Vp

Vous ne devez pas le laisser en mode normal, mais il ne tirer la ligne. Toutefois, vous pouvez utiliser V"0p qui sera toujours de mettre la ligne en question dans l'étape 2.

47voto

eugene y Points 37378

Cela a le désavantage supplémentaire cette ligne X est maintenant par défaut dans le inscrire, ce qui est gênant si je trouve une autre ligne qui doit être remplacé avec A.

Pour supprimer du texte, sans affecter la normale registres, vous pouvez utiliser le trou Noir du registre "_:

"_dd

14voto

Mariano Anaya Points 141

En fait, 1. aa 2. j (se déplacer vers la ligne que vous souhaitez remplacer),et puis 3. Vp (majuscules v et p, remplacera avec la question du contenu)

9voto

ericgamliel Points 61

Je voudrais l'utiliser en ligne de commande (Ex) mode et de faire les deux commandes suivantes

:XmA
:Ad

Ce déplace simplement la ligne X à un peu moins d'Un, puis de la suppression d'Un des coups de line-up

Par exemple

:7m3
:3d

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