Dì che sono sulla linea 20 e vorrei strappare la linea 4, come posso farlo?
E allo stesso modo, come posso strappare una linea rispetto alla posizione del mio cursore, per esempio quella a 3 righe?
Dì che sono sulla linea 20 e vorrei strappare la linea 4, come posso farlo?
E allo stesso modo, come posso strappare una linea rispetto alla posizione del mio cursore, per esempio quella a 3 righe?
Risposte:
Da :help :yank
:
:[range]y[ank] [x] Yank `[range]` lines [into register x].
Quindi, per strappare la linea 4, si dovrebbe digitare:
:4yank
Nota che puoi farlo facilmente dalla modalità di inserimento con <C-o>
; questo ti permette di eseguire un comando, dopo di che sei tornato alla modalità di inserimento; per esempio:
<C-o>:4yank
Ovviamente puoi anche usare altri intervalli. Qualche esempio:
:1,3yank
:%yank
:.,$:yank
:.,+3yank
:-3,.yank
:-3yank
Le cose più utili da ricordare sulle gamme:
:line1,line2command
..
è la linea corrente (nella maggior parte dei casi puoi effettivamente omettere il punto; :.,+3yank
e :,+3yank
sono uguali)+n
e -n
.Vedi :help [range]
per maggiori informazioni.
:4yank
con:4y
Oltre ai comandi ex-mode che hai ottenuto, puoi ottenerlo anche in modalità di comando, ad esempio: 4GY''
- che significa: vai alla riga 4 ( 4G
), yank line ( Y
) e torna alla riga precedente ( ''
).
Puoi anche usare i segni di salto; per la tua seconda domanda, ad esempio: mm3kY'm
- che significa: imposta mark m ( mm
), vai tre righe su ( 3k
), yank line ( Y
), ritorna a mark m ( 'm
).
Digita semplicemente
:4y
strappare la linea 4
andrà nel registro senza nome. Quindi, (ad esempio) puoi usarlo p
per metterlo altrove. Puoi anche usare [n]p
, ad esempio, 10p per incollarlo 10 volte.
Puoi inserirlo in un registro denominato come "a" con
:4y a
4G"ayy
.