Copie d'un registre à un autre


91

Comment copier le contenu d'un registre dans un autre sans coller dans le presse-papiers? J'avais extrait un texte et il avait été retiré dans le "registre par défaut . Maintenant, je veux copier un autre texte sans supprimer / écraser le "registre. Je veux donc déplacer le contenu du "registre pour en dire un aou pour bm'enregistrer afin que je puisse copier le nouveau texte à l'intérieur ". Comment faire cela?

Réponses:


114

Pour copier ou échanger des valeurs entre les registres, vous pouvez utiliser la commande : let , par exemple pour copier le contenu du bregistre dans a:

:let @a=@b

Ou copiez le contenu du "registre dans a:

:let @a=@"

Consultez cette astuce Vim pour quelques bonnes suggestions de mappage de clés:


1
D'une manière ou d'une autre, je ne peux pas faire fonctionner cela. J'ai un vim assez minime sur cette mcahine. Voici quelques-uns de mes paramètres. VIM - Vi IMproved 7.0 (7 mai 2006, compilé le 5 mars 2011 21:36:07) Correctifs inclus: 1, 3-4, 7-9, 11, 13-17, 19-26, 29-31, 34-44 , 47, 50-56, 58-64, 66-73, 75, 77-92, 94-107, 109, 202, 34-237 Compilé par <bugzilla@redhat.com> Version minuscule sans interface graphique.
Paul

1
@Paul, pour autant que je me souvienne, les petits et minuscules ensembles de fonctionnalités de Vim ne prennent pas en charge la :letcommande.
Christian C. Salvadó

Pouvez-vous expliquer ce que @fait?
Gqqnbig

@est la manière de travailler avec les registres en tant que variables. Voir :help let-registerpour plus de détails. Vous pouvez simplement le considérer comme @ala variable dans laquelle le registre aest stocké.
cincodenada

7

Vous pouvez faire quelque chose comme ceci:

let @a = getreg('"')

Cela copiera le "registre dans le aregistre.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.