COMANDI VI: GENERALITA’

()

Lo screen editor “vi” viene lanciato con il seguente comando:

vi [-r] [+comando] [file1 [file2 … filen]]

dove:
-r
opzione da utilizzare dopo un crash del sistema (per recuperare le modifiche non memorizzate relative al file);
+comando
apre la sessione dell’editor eseguendo il “comando” (sono significativi solamente i comandi di editor di linea).

Nel caso in cui si specifichino più nomi di file da editare, ‘vi’ entra in editing sul primo file indicato, e su richiesta (comando ‘:n’) passerà in ordine ai successivi.
Questo editor visualizza una schermata di file alla volta, permettendo di indirizzare il cursore con appositi comandi al punto (carattere, parola, frase, paragrafo, riga, …) dove si vuole inserire o aggiornare il testo.
Per un corretto funzionamento è indispensabile conoscere l’esatto tipo del terminale su cui si sta lavorando.

Verrà quindi settata la variabile TERM con la sintassi propria del sistema su cui si lavora; per default, la sintassi standard è:
TERM=type ; export TERM
dove “type” corrisponde ad un nome di terminale (con tutte le funzionalità ad esso legate) descritto nella libreria “terminfo”. In fase di entrata in “vi”, compariranno sullo schermo le prime 24
righe del file richiamato (con “~” come primo carattere sulle righe vuote), e ci si troverà in COMMAND MODE.
Quest’ultimo è uno dei tre possibili stati dell’editor “vi”.

COMMAND MODE
Il cursore è posizionato sul testo, la tastiera è utilizzabile solo per richiedere l’esecuzione di comandi, e non per introdurre testo.
I caratteri digitati non vengono visualizzati.

INPUT MODE
Tutti i caratteri digitati vengono visualizzati ed inseriti nel testo. Si passa in input mode ad ogni richiesta di inserimento di testo.

DIRECTIVE MODE
Ci si trova (tramite “:”) posizionati con il cursore nella linea direttive (l’ultima linea del video) e si possono richiedere a “vi” tutti i comandi per il controllo del file.

I passaggi di stato avvengono con i seguenti caratteri:
DIRECTIVE MODE —–> COMMAND MODE <RET>
COMMAND MODE —–> INPUT MODE oORia
INPUT MODE —–> COMMAND MODE <ESC>
COMMAND MODE —–> DIRECTIVE MODE :/?

All’interno del “vi” si è in grado di lanciare comandi appartenenti alla shell da cui è stato richiamato il “vi” stesso, tramite l’apposito escape alla shell (questo comando verrà trattato meglio
più avanti)::!comando

Per quanto riguarda le cancellazioni, ‘vi’ ha un singolo buffer senza nome, nel quale viene salvata l’ultima porzione di testo cancellata, nove buffer numerati (1 2 … 9) ed un insieme di buffer individuati dalle lettere dell’alfabeto (a b … z) a disposizione dell’utente. I buffer, in caso di editing di più file in successione, non vengono cancellati nel passare da un file all’altro, permettendo così spostamenti di parte di testo tra file diversi. Naturalmente possono anche essere utilizzati per cancellazioni e ripristini o per spostamenti di parti di testoall’interno di uno stesso file. È importante ricordare che per ‘vi’:
una parola è una qualsiasi sequenza di caratteri chiusa dauno spazio;
una frase di testo è una qualsiasi sequenza di caratteri chiusa da ‘.’, ‘!’ oppure ‘?’ seguiti da newline o da due spazi;un paragrafo è invece delimitato da una linea vuota.

/ 5
Grazie per aver votato!

How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote count:

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?