comment copier / coller en mode vim ex

10

Je suis de plus en plus frustré en tapant ceci

:% s / some_really_long_string / some_other_really_really_long_string_that_may_or_may_not_related_to_the_first_one / gc

Existe-t-il un moyen de copier / coller ces chaînes en mode ex?

Iakie
la source

Réponses:

10

Vous pouvez utiliser Ctrl-Rpour insérer la valeur d'un registre sur la ligne de commande Ex. Si vous avez inséré du texte dans le registre par défaut, par exemple, vous pouvez le rappeler avec Ctrl-R".

Il existe également des raccourcis pour certains cas courants. Vous pouvez insérer le mot actuel sous le curseur avec Ctrl-RCtrl-Wou le nom de fichier actuel avec Ctrl-RCtrl-F.

Consultez ces rubriques pour plus d'informations, y compris plusieurs autres exemples:

:help c_CTRL-R
:help cmdline.txt

Les registres méritent également d'être lus:

:help registers
Bill Odom
la source
Je pensais Ctrl-Rque vous deviez changer de poste pour obtenir le capital R. mais quand je l'ai essayé, vous avez juste besoin ctrl-rsans changement.
Trevor Boyd Smith
10

J'évite presque toujours de taper la chaîne de recherche dans la commande de substitution en exécutant d'abord une recherche (avec /) ou un "mot sous recherche de curseur" (avec *) puis en exécutant:

:%s//other_string/gc

Lorsque le modèle de recherche est manquant, la commande de substitution utilisera le dernier modèle de recherche.

En plus de vous faire taper moins de caractères, le premier cas, la recherche avec /, permet d'abord de tester un modèle de recherche complexe avant d'exécuter la substitution. Le deuxième cas, en recherchant avec *, permet d'éviter d'insérer les atomes de début / fin, ie \<et \>.

-

Au fait, vous pouvez éviter le gdrapeau en ajoutant la ligne

set gdefault

dans votre vimrcdossier.

mrucci
la source