Copia da un registro all'altro


92

Come copiare il contenuto di un registro in un altro senza incollarlo negli appunti? Ho strappato un messaggio e questo è stato inserito nel "registro predefinito . Ora voglio copiare un altro testo senza cancellare / sovrascrivere il "registro. Quindi voglio spostare il contenuto del "registro per dire un po ' ao bregistro in modo da poter copiare il nuovo testo all'interno ". Come fare questo?

Risposte:


116

Per copiare o scambiare valori tra registri è possibile utilizzare il comando : let , ad esempio per copiare il contenuto del bregistro in a:

:let @a=@b

Oppure copia il contenuto del "registro in a:

:let @a=@"

Controlla questo suggerimento di Vim per alcuni buoni suggerimenti di mappatura dei tasti:


1
In qualche modo non riesco a farlo funzionare. Ho un vim piuttosto minimale su questo mcahine. Ecco alcune delle mie impostazioni. VIM - Vi IMproved 7.0 (7 maggio 2006, compilato il 5 marzo 2011 21:36:07) Patch incluse: 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 Compilato da <bugzilla@redhat.com> Piccola versione senza GUI.
Paul

1
@ Paul, per quanto ricordo i set di funzionalità piccole e minuscole di Vim non supportano il :letcomando.
Christian C. Salvadó

Puoi spiegare cosa @fa?
Gqqnbig

@è il modo di lavorare con i registri come variabili. Vedere :help let-registerper i dettagli. Fondamentalmente puoi semplicemente pensarla come @ala variabile in cui aè memorizzato il registro .
cincodenada

7

Puoi fare qualcosa del genere:

let @a = getreg('"')

Questo copierà il "registro nel aregistro.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.