Comment copier-coller un bout de ligne ou de bloc avec Vim? [Résolu/Fermé]

Signaler
Messages postés
21
Date d'inscription
lundi 5 mai 2008
Statut
Membre
Dernière intervention
20 avril 2013
-
Messages postés
18238
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
21 novembre 2020
-
Bonjour,

je me pose toujours la question face à quantité impressionnante de personnes ne jurant et ne développant que par l'outil vim sous linux: comment copie-t-on (ou coupe-t-on) un bout de chaîne pour le mettre dans un autre?

Je m'explique. Dans la phrase suivante:

Malbrough s'en va-t-en guerre, et ron, et ron petit patapon...

je voudrais enlever "Et ron et ron petit patapon" pour le mettre au début de la phrase. N'y a-t-il pas d'autres moyens que de compter les mots (sans compter que la virgule est peut être un mot complet) et de faire une manip genre (n)dw pour le coller en début avec un P?

Dans l'interface du vieux Turbo Pascal des années 80 à l'époque héroïque des PC IBM sans souris, on pouvait marquer le début du bloc par F7, la fin par F8 et ça mettait le bloc en surbrillance. Après on pouvait utiliser Ctrl-K C ou Ctrl-K V suivant qu'on veuille copier ou déplacer ledit bloc. En 2012 on devrait pouvoir faire mieux, et ça ne semble pas le cas. Il existe bien une commande m dans Vim mais elle marque TOUTES les lignes du bloc. Par exemple, si je fais ceci (les commandes avec les positions du curseur associées sont entre parenthèses):

Malbrough s'en va-t-en guerre, (ma)et ron, et ron petit patapon...(d'a)

eh bien on supprime toute la ligne, et pas seulement la fin. D'où ma question...

Merci d'avance de vos réponses éclairées,

PC

3 réponses

Messages postés
18238
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
21 novembre 2020
5 106
hello
sans souris, vim c'est fun .. se placer sur le e de et et taper : dt.0Pa<espace><Esc>
dt.  détruire jusqu'au . non compris en stockant dans le buffer
0   aller en début de ligne
P  insérer le buffer à gauche
a<espace><Esc > ajouter un espace
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

Messages postés
21
Date d'inscription
lundi 5 mai 2008
Statut
Membre
Dernière intervention
20 avril 2013
7
Et vous trouvez ça pratique vous? Enfin merci de votre réponse

PC
Messages postés
18238
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
21 novembre 2020
5 106
oui surtout avec un terminal 25 lignes x 80 colonnes.
mais maintenant, il y a plein d'éditeurs conviviaux autres que vim

salut,

alors utilise nano :

ctrl-^ Marquer le texte à la position du curseur
ctrl-K Couper
ctrl-U Coller
ctrl-G Afficher l'aide
ctrl-X Quitter
etc.