136 votes

Comment supprimer le texte sélectionné dans l'éditeur vi

J'utilise PuTTY et l'éditeur vi. Si je sélectionne cinq lignes à l'aide de la souris et que je veux supprimer ces lignes, comment puis-je faire ?

De plus, comment puis-je sélectionner les lignes en utilisant mon clavier comme je peux le faire dans Windows où j'appuie sur Shift et déplacer les flèches pour sélectionner le texte ? Comment puis-je faire cela dans vi ?

238voto

Pascal Thivent Points 295221

J'utilise PuTTY et l'éditeur vi. Si je sélectionne cinq lignes à l'aide de la souris et que je veux supprimer ces lignes, comment puis-je faire ?

Oubliez la souris. Pour supprimer 5 lignes, soit :

  • Allez à la première ligne et tapez d5d ( dd supprime une ligne, d5d supprime 5 lignes) ~ou~
  • Type Shift-v pour entrer mode de sélection par ligne puis déplacez le curseur vers le bas en utilisant j (oui, utilisez h , j , k y l de se déplacer gauche , en bas , en haut , droite respectivement, c'est beaucoup plus efficace que d'utiliser les flèches) et tapez d pour supprimer la sélection.

De plus, comment puis-je sélectionner les lignes en utilisant mon clavier comme je peux le faire dans Windows où j'appuie sur Shift et déplacer les flèches pour sélectionner le texte ? Comment puis-je faire cela dans vi ?

Comme je l'ai dit, utilisez soit Shift-v pour passer en mode de sélection par ligne ou v pour passer en mode de sélection par caractère ou Ctrl-v pour passer en mode de sélection par bloc. Ensuite, déplacez-vous avec h , j , k y l .

Je suggère de passer un peu de temps avec le Tuteur Vim (exécuter vimtutor ) pour se familiariser avec Vim de manière très didactique.

Voir aussi

63voto

OscarRyz Points 82553

Faites-le à la manière des vi.

Pour supprimer 5 lignes, appuyez sur : 5dd ( 5 supprimer )

Pour sélectionner (en fait, les copier dans le presse-papiers), vous tapez : 10yy

C'est un peu difficile à comprendre, mais très pratique à apprendre pour utiliser ces terminaux à distance.

Soyez conscient de la courbe d'apprentissage de certains éditeurs :


(source : <a href="http://unix.rulez.org/~calver/pictures/curves.jpg" rel="noreferrer">calver at unix.rulez.org </a>)

38voto

Peter verleg Points 1320

Si vous voulez supprimer en utilisant les numéros de ligne, vous pouvez utiliser :

:startingline, last line d

Ejemplo:

:7,20 d

Cet exemple va supprimer les lignes 7 à 20.

24voto

Matthew B. Gray Points 1601

La mise en évidence avec la souris ne met en évidence que les caractères sur le terminal. VI n'obtient pas vraiment cette information, vous devez donc mettre en évidence différemment.

Appuyez sur 'v' pour entrer dans un mode de sélection, et utilisez les touches fléchées pour le déplacer. Pour supprimer, appuyez sur x. Pour sélectionner des lignes à la fois, appuyez sur shift+v. Pour sélectionner des blocs, essayez ctrl+v. C'est bien pour, disons, insérer beaucoup de lignes de commentaires devant votre code :).

Je suis OK avec VI, mais il m'a fallu du temps pour m'améliorer. Mes collègues de travail m'ont recommandé cette antisèche . Je garde une copie imprimée sur le mur pour les moments bizarres où j'oublie quelque chose.

Bon piratage !

6voto

Greg Hewgill Points 356191

Lorsque vous utilisez un terminal comme PuTTY En général, les clics de souris et les sélections sont pas transmis au système distant. Ainsi, vi n'a aucune idée que vous venez de sélectionner du texte. (Il existe des exceptions à cette règle, mais en général, les actions de la souris ne sont pas transmises).

Pour supprimer plusieurs lignes dans vi, utilisez quelque chose comme 5dd pour supprimer 5 lignes.

Si vous n'utilisez pas Vim Je le ferais. fortement recommande de le faire. Vous pouvez utiliser la sélection visuelle, en appuyant sur V pour commencer un bloc visuel, déplacez le curseur à l'autre extrémité, et appuyez sur d pour supprimer (ou toute autre commande d'édition, telle que y à copier).

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