Linux Tutorial – 6. Vi Text Editor

Introduzione

Padroneggia l’editor di testo Vi e impara a fare modifiche complesse ai tuoi file con meno tempo e fatica.

Nell’ultima sezione abbiamo creato alcuni file ma erano vuoti. Un po’ noioso, ma dobbiamo iniziare da qualche parte. In questa sezione vedremo uno strumento per mettere contenuti nei file e modificare anche quei contenuti. Vi è un editor di testo che molto probabilmente è molto diverso da qualsiasi editor che hai usato prima. Ci vorrà un po’ per capirlo, ma una volta che lo avrete fatto vi renderete conto che è davvero molto potente. E’ un po’ come la digitazione tattile, all’inizio l’apprendimento è scomodo e ti chiedi perché ti stai preoccupando, ma una volta che hai preso la mano non vorrai più tornare indietro.

Anche se non usi Vi tutto il tempo, troverai sicuramente che i modelli di lavoro che sviluppi nell’imparare l’editor possono essere trasferiti facilmente ad altri programmi e con grande effetto.

Questa sezione e le prossime sezioni sono in realtà le fondamenta per le ultime sezioni in cui le metteremo tutte insieme e inizieremo a fare delle cose davvero strane. Ho scelto di guardare prima Vi in modo che la vostra mente abbia un po’ di tempo per elaborarlo e dargli un senso in preparazione per dopo, quando ne avremo bisogno.

Vi è uno strumento molto potente. In questa sezione il mio scopo non è quello di coprire tutto ciò che Vi può fare, ma di farvi iniziare a lavorare con le basi. Alla fine della sezione fornirò alcuni link a risorse dove potrete imparare ulteriormente Vi. Ti consiglio vivamente di dare un’occhiata ad alcuni di essi.

Un editor a riga di comando

Vi è un editor di testo a riga di comando. Come ormai saprete, la linea di comando è un ambiente abbastanza diverso dalla vostra GUI. È una singola finestra con solo input e output di testo. Vi è stato progettato per lavorare all’interno di queste limitazioni e molti sostengono che il risultato è piuttosto potente. Vi è inteso come un semplice editor di testo (simile a Notepad su Windows, o Textedit su Mac) al contrario di una suite di elaborazione testi come Word o Pages. Tuttavia, ha molta più potenza rispetto a Notepad o Textedit.

Come risultato dovrai abbandonare il mouse. Tutto in Vi è fatto tramite la tastiera.

Ci sono due modalità in Vi. La modalità di inserimento (o input) e la modalità di modifica. In modalità di inserimento puoi inserire o inserire contenuti nel file. In modalità modifica puoi muoverti nel file, eseguire azioni come cancellare, copiare, cercare e sostituire, salvare ecc. Un errore comune è quello di iniziare a inserire comandi senza prima tornare in modalità di modifica o di iniziare a digitare l’input senza prima andare in modalità di inserimento. Se fai una di queste due cose è generalmente facile da recuperare, quindi non preoccuparti troppo.

Quando lanciamo vi normalmente lo facciamo con un singolo argomento della linea di comando che è il file che vorresti modificare.

vi <file>

Se dimentichi di specificare un file, c’è un modo per aprire un file all’interno di vi ma è più facile uscire da vi e fare un altro tentativo. Ricorda anche che quando specifichiamo il file può essere sia con un percorso assoluto che relativo.

Tuffiamoci e cominciamo. Sarà difficile per me dimostrare molto di questo, quindi invece elencherò ciò che voglio che tu digiti e tu dovrai provare e vedere cosa succede.

Prima di tutto spostiamoci nella tua directory che hai creato nella sezione sulla manipolazione dei file. Creeremo alcuni file e questo li terrà lontani dalle tue cose normali.

Ora modificheremo il nostro primo file.

  1. vi firstfile

Quando esegui questo comando apre il file. Se il file non esiste, allora lo creerà per voi e poi lo aprirà. (non c’è bisogno di toccare i file prima di modificarli) Una volta entrati in vi apparirà qualcosa di simile a questo (anche se a seconda del sistema su cui siete potrebbe apparire leggermente diverso).

  1. ~
  2. ~
  3. ~
  4. ~
  5. ~
  6. “firstfile”

Si inizia sempre in modalità modifica quindi la prima cosa che faremo è passare alla modalità inserimento premendo i. Puoi dire quando sei in modalità inserimento perché l’angolo in basso a sinistra te lo dirà.

  1. ~
  2. ~
  3. ~
  4. ~
  5. — INSERT —

Ora scrivi qualche riga di testo e premi Esc che ti riporterà in modalità modifica.

Salvare ed uscire

Ci sono alcuni modi per farlo. Fanno tutti essenzialmente la stessa cosa, quindi scegliete il modo che preferite. Per tutti questi, assicurati prima di tutto di essere in modalità modifica.

Se non sei sicuro di essere in modalità modifica o meno puoi guardare nell’angolo in basso a sinistra. Finché non dice INSERT sei a posto. In alternativa puoi semplicemente premere Esc per essere sicuro. Se sei già in modalità di modifica, premere Esc non fa nulla quindi non farai alcun danno.

La maggior parte dei comandi all’interno di vi vengono eseguiti non appena premi una sequenza di tasti. Qualsiasi comando che inizia con i due punti ( : ) richiede di premere <enter> per completare il comando.

Salvare e uscire dal file attualmente aperto

Altri modi di visualizzare i file

vi ci permette di modificare i file. Se volessimo, potremmo usarlo anche per visualizzare i file, ma ci sono altri due comandi che sono un po’ più convenienti per questo scopo. Il primo è cat che in realtà sta per concatenare. Il suo scopo principale è quello di unire i file, ma nella sua forma più elementare è utile solo per visualizzare i file.

cat <file>

Se si esegue il comando cat, dandogli un singolo argomento della linea di comando che è il file che abbiamo appena creato, si vedrà il suo contenuto visualizzato sullo schermo, seguito dal prompt.

Se accidentalmente eseguite cat senza dargli un argomento sulla linea di comando, noterete che il cursore si sposta sulla linea successiva e poi non succede nulla. Dato che non abbiamo specificato un file, cat legge invece da qualcosa chiamato STDIN (che impareremo nella sezione ‘Piping e reindirizzamento’) che di default è la tastiera. Se digitate qualcosa e poi premete <enter> vedrete cat riflettere il vostro input sullo schermo. Per uscire da qui puoi premere <Ctrl> + c che è il segnale universale per Cancel in Linux.

In effetti, ogni volta che sei nei guai puoi generalmente premere <Ctrl> + c per tirarti fuori dai guai.

  1. cat firstfile
  2. qui vedrete
  3. qualunque contenuto abbiate
  4. inserito nel vostro file

Questo comando è utile quando abbiamo un piccolo file da visualizzare ma se il file è grande allora la maggior parte del contenuto volerà sullo schermo e vedremo solo l’ultima pagina del contenuto. Per i file più grandi c’è un comando più adatto che è meno.

meno <file>

meno ti permette di muoverti su e giù all’interno di un file usando i tasti freccia. Puoi andare avanti di un’intera pagina usando la barra spaziatrice o indietro di una pagina premendo b. Quando hai finito puoi premere q per uscire.

Dai un’occhiata al file che hai appena creato usando entrambi questi comandi.

Navigare un file in Vi

Ora torniamo nel file che abbiamo appena creato e inseriamo qualche altro contenuto. In modalità di inserimento puoi usare i tasti freccia per spostare il cursore. Inserisci altri due paragrafi di contenuto e poi premi Esc per tornare alla modalità modifica.

Di seguito ci sono alcuni dei molti comandi che puoi inserire per muoverti nel file. Gioca con loro e vedi come funzionano.

  • Tasti freccia – sposta il cursore
  • j, k, h, l – sposta il cursore in basso, in alto, sinistra e destra (simile ai tasti freccia)
  • ^ (cursore) – sposta il cursore all’inizio della riga corrente
  • $ – sposta il cursore alla fine della riga corrente
  • nG – sposta all’ennesima riga (es. 5G sposta alla 5a riga)
  • G – sposta all’ultima riga
  • w – si sposta all’inizio della prossima parola
  • nw – avanza di n parole (es. 2w sposta due parole in avanti)
  • b – si sposta all’inizio della parola precedente
  • nb – torna indietro di n parole
  • { – torna indietro di un paragrafo
  • } – sposta avanti di un paragrafo

Se digiti :set nu in modalità modifica all’interno di vi abiliterà i numeri di linea. Trovo che attivare i numeri di linea rende il lavoro con i file molto più facile.

Eliminare il contenuto

Abbiamo appena visto che se vogliamo muoverci in vi ci sono parecchie opzioni disponibili. Molte di esse ci permettono anche di farle precedere da un numero per spostarci un certo numero di volte. La cancellazione funziona in modo simile al movimento, infatti molti comandi di cancellazione ci permettono di incorporare un comando di movimento per definire cosa sta per essere cancellato.

Di seguito ci sono alcuni dei molti modi in cui possiamo cancellare contenuti in vi. Giocate con loro ora. (controlla anche la sezione sottostante sull’annullamento in modo da poter annullare le tue cancellazioni.)

  • x – cancella un singolo carattere
  • nx – cancella n caratteri (es. 5x cancella cinque caratteri)
  • dd – cancella la linea corrente
  • dn – d seguita da un comando di movimento. Elimina fino al punto in cui il comando di movimento ti avrebbe portato. (es. d5w significa cancellare 5 parole)

Annullamento

Annullare le modifiche in vi è abbastanza facile. È il carattere u.

  • u – Annulla l’ultima azione (puoi continuare a premere u per continuare ad annullare)
  • U (Nota: maiuscola) – Annulla tutte le modifiche alla linea corrente

Passando oltre

Ora possiamo inserire contenuti in un file, spostarci nel file, cancellare contenuti e annullarli, poi salvare e uscire. Ora si può fare editing di base in vi. Questo è solo toccare la superficie di ciò che vi può fare. Non entrerò in tutti i dettagli qui (penso di avervi già detto abbastanza) ma vi darò alcune cose che potreste voler esaminare per approfondire la vostra esperienza in vi. Una ricerca di base nel vostro motore di ricerca preferito per vi <inserire il concetto qui> vi troverà molte pagine con informazioni utili. Ci sono anche molti fogli vi cheat là fuori che elencano tutti i comandi disponibili per te.

  • copia e incolla
  • cerca e sostituisci
  • buffers
  • markers
  • ranges
  • settings

Divertiti e ricorda di continuare. vi sarà doloroso all’inizio ma con la pratica diventerà presto tuo amico.

Sommario

vi Modifica un file. cat Visualizza un file. less Comodo per visualizzare file di grandi dimensioni.
Niente mouse vi è un editor di testo dove tutto viene fatto con la tastiera. Se sai digitare al tatto allora questo è fantastico. Se no, allora forse dovreste pensare di imparare. Comandi di modifica Ce ne sono molti. La pratica è la chiave per ricordare quelli più comunemente usati e utili.

Attività

Giochiamo con qualche contenuto.

  • Iniziamo creando un file e mettendoci dentro qualche contenuto.
  • Salviamo il file e lo visualizziamo sia in cat che in less
  • Torniamo nel file in vi e inseriamo qualche altro contenuto.
  • Spostare intorno al contenuto usando almeno 6 diversi comandi di movimento.
  • Giocare con diversi comandi di cancellazione, specialmente quelli che incorporano un comando di movimento. Ricorda che puoi annullare le tue modifiche in modo da non dover continuare a inserire nuovi contenuti.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.