Guida avanzata a Solaris

Copia e spostamento di un testo -- yank, delete e put

Molti word-processor offrono comandi per "copiare e incollare" e "tagliare e incollare" parti di testo. Anche l'editor vi dispone di queste funzioni. Nel caso di vi, l'operazione "copia e incolla" viene eseguita con i comandi yank e put, mentre l'equivalente di "taglia e incolla" si ottiene con i comandi delete e put.

Per copiare o spostare piccoli blocchi di testo sono disponibili varie combinazioni dei comandi yank, delete e put.

Copia di righe

Per copiare una riga sono richiesti due comandi: yy o Y ("yank") e p ("put below", inserisci sotto) o P ("put above", inserisci sopra). Si osservi che Y produce lo stesso effetto di yy.

Per copiare una riga, posizionare il cursore in qualsiasi punto della riga e digitare yy. Portare ora il cursore sulla riga sopra il punto in cui si desidera inserire la riga copiata e digitare p. Una copia della riga copiata verrà inserita al di sotto del cursore.

Per inserire la riga copiata al di sopra del cursore, digitare P.

Il comando yy può essere utilizzato anche con un numero: per copiare 11 righe, ad esempio, è possibile digitare 11yy. vi copierà undici righe a partire da quella corrente, e visualizzerà al fondo dello schermo il messaggio: 11 righe memorizzate.

I comandi P o p possono anche essere usati subito dopo uno dei comandi di cancellazione descritti in precedenza. In questo caso, il testo cancellato verrà inserito rispettivamente al di sopra o al di sotto del cursore.


Avvertenza - Avvertenza -

Tra i comandi yank, delete e put usare solo comandi di spostamento del cursore. Se prima di inserire con put un testo tagliato o copiato si cancella o si copia un altro blocco di testo, la porzione tagliata o copiata in precedenza andrà perduta.


Spostamento di righe

Per lo spostamento di una o più righe di testo sono richiesti due comandi: dd ("delete") e p oppure P.

Per spostare una riga, posizionare il cursore in qualsiasi punto della riga e digitare dd. Per spostare più righe, far precedere il comando dal numero di righe su cui si desidera eseguire l'operazione. Per cancellare ad esempio 5 righe, digitare 5dd.

Portare quindi il cursore sulla riga al di sopra del punto in cui si desidera reinserire la riga cancellata e digitare p. Il testo viene inserito in una nuova riga al di sotto del cursore.

Per inserire la riga cancellata al di sopra del cursore, digitare P.

Uso di nomi per i buffer

Per inserire ripetutamente un gruppo di righe in più punti di un documento, può essere comodo copiare le righe di interesse in un buffer e assegnare a questo buffer un nome. Per eseguire questa operazione, far precedere il comando da eseguire da una virgoletta doppia (") e dal nome del buffer. Ad esempio, per copiare quattro righe in un buffer di nome a, digitare "a4yy. È possibile usare diversi buffer per uno stesso documento. Ad esempio, si può cancellare un testo da una data posizione ed aggiungerlo in diversi altri punti. Per cancellare 12 righe e inserirle in un buffer di nome b, digitare "b12dd.

Per inserire nel documento il testo contenuto nel buffer, far precedere il comando p o P da "n, dove n è il nome del buffer. Ad esempio, per inserire nel documento le righe salvate nel buffer b, digitare "bP.

Il contenuto di un buffer può essere sostituito con nuove righe di testo. I buffer creati durante una sessione restano in memoria fino all'uscita da vi.

L'uso dei buffer denominati permette di cancellare e copiare diversi blocchi di testo separatamente, senza sovrascrivere ad ogni operazione il contenuto del buffer principale.