Risposte:
Faccio quanto segue per aggiungere testo a più righe:
<c-V>
- Entra in modalità Visual Block.j
/ k
per selezionare le linee.$
- Sposta il cursore sull'ultimo carattere.A
- Entra in modalità inserimento dopo l'ultimo carattere.<Esc>
- Uscire dalla modalità di inserimento e terminare l'appendice blocco.Rispetto alla scrittura :norm
dopo la selezione ci sono ancora meno pressioni dei tasti, ma il vero motivo per cui lo uso è perché è più istintivo per me lavorare sulla modalità Visual Block per questo tipo di modifiche.
Alla prima riga basta digitare:
4:norm A.
4
e :
crea un intervallo per te, quindi norm A.
aggiunge il punto a ciascuna riga
Un'altra soluzione per paragrafi più lunghi potrebbe essere:
Vip<C-v>$A.<Esc>
Il primo passo è selezionare il paragrafo con cui Vip
si passa alla modalità blocco visivo e si sposta il cursore alla fine di ogni riga con $
quindi si aggiunge il .
a ciascuna riga con A.
e si passa alla modalità normale con <Esc>
per vedere la modifica da applicare a ciascuna riga .
:A
comando? Non l'ho trovato tramite:h :A
4:norm A.
sarebbe4:s/$/.
Per prima cosa puoi selezionarli visivamente usando V
e poi usare i tasti di spostamento per selezionare l'intero testo (o se il testo fosse strettamente un paragrafo che potresti fare [iniziando dalla prima riga] V}
). E quindi digitare :
. Questo dovrebbe far apparire qualcosa come :'<,'>
nella riga di comando.
:'<'>normal A.
Questo viene eseguito normal A.
sulle linee selezionate. normal A.
viene eseguito A.
come sequenze di tasti in modalità normale. Questo A
pende .
a alla fine di ciascuna delle linee selezionate.
Se vuoi aggiungere un punto alla fine di tutte le righe:
:%norm A.
oppure puoi usare la ricerca e sostituire:
:%s/$/./
% è l'intero file, $ è la fine della riga
:1,4s/$/./
che sostituisce l'ultimo carattere con un punto sulle righe da uno a quattro incluso.
Per renderlo un po 'più generale, è possibile registrare una macro su una singola riga, quindi riprodurla su ciascuna riga nell'intervallo selezionato visivamente.
Registrare una macro in un registro (il registro q in questo esempio):
qqA.<Esc>q
È quindi possibile selezionare visivamente le linee su cui si desidera operare:
Vip
E quindi riprodurre la macro su ogni riga (l'intervallo verrà riempito automaticamente):
:'<,'>norm @q