Creazione e modifica di file di testo ===================================== In tutti i corsi di Unix si mostra l'uso di un applicativo storico piuttosto spartano, per la creazione e la modifica di file di testo: VI. Questo poi si concretizza in pratica nell'eseguibile 'vi'. La necessita' di imparare a usare questo programma, almeno in modo elementare, sta nel fatto che utilizza poche risorse di memoria e spesso fa parte dell'insieme di programmi di servizio che compongono i dischetti di emergenza. Modalita' di comando e di inserimento ------------------------------------- L'uso di VI e' difficile perche' si distinguono diverse modalita' di funzionamento. In pratica si separa la fase di inserimento del testo da quella in cui si inseriscono i comandi. Per poter inserire un comando occorre sospendere l'inserimento con la pressione di [ Esc ]. Per poter ritornare alla modalita' di inserimento occorre dare un comando apposito. Il tasto [ Esc ] puo' essere usato anche per annullare un comando che non sia stato completato. Se premuto piu' del necessario non produce alcun effetto collaterale. Creazione, inserimento e modifica --------------------------------- Si crea un nuovo file semplicemente avviando il programma senza argomenti. $ vi[ Invio ] Appena avviato, VI impegna tutto lo schermo. _ ~ ~ ~ ~ ~ Empty buffer I simboli tilde ('~') rappresentano righe nulle (inesistenti). In questo momento il programma si trova in modalita' di comando e accetta comandi espressi attraverso lettere o simboli della tastiera. Inserimento di testo -------------------- Con il tasto [ i ], che rappresenta il comando di inserimento (insert), si passa alla modalita' di inserimento attraverso la quale si puo' digitare del testo normalmente. [ i ] GNU/Linux e' un sistema operativo completo[ Invio ] il cui kernel e' stato scritto da[ Invio ] Linus Torvalds e altri collaboratori. Quello che si vede sullo schermo dovrebbe apparire come l'esempio che segue, con il cursore alla fine dell'ultima frase digitata. GNU/Linux è un sistema operativo completo il cui kernel è stato scritto da Linus Torvalds e altri collaboratori._ ~ ~ ~ -- INSERT -- Si termina la modalita' di inserimento e si torna a quella di comando attraverso la pressione del tasto [ Esc ]. [ Esc ] Spostamento del cursore ----------------------- Lo spostamento del cursore attraverso il testo avviene in modalita' di comando, con i tasti [ h ], [ j ], [ k ] e [ l ] che corrispondono rispettivamente allo spostamento a sinistra, in basso, in alto e a destra. Nella maggior parte delle situazioni possono essere utilizzati i tasti freccia, anche durante la fase di inserimento. Si decide di spostare il cursore davanti alla parola <> della prima i riga. [ h ][ h ][ h ][ h ][ h ] [ k ][ k ] In pratica si sposta il cursore a sinistra di cinque posizioni e in alto di due.i GNU/Linux e' un sistema operativo_completo il cui kernel e' stato scritto da Linus Torvalds e altri collaboratori. ~ ~ ~ Cancellazione ------------- La cancellazione di testo in modalità di comando avviene attraverso l'uso del tasto [ x ]. Si ottiene la cancellazione del carattere che si trova in corrispondenza del cursore, avvicinando il testo rimanente dalla destra. Nella maggior parte dei casi puo' essere usato anche il tasto [ Canc ] con tale scopo, che in particolare, dovrebbe funzionare sia in modalita' di comando che di inserimento. Si decide di cancellare la parola <>. [ x ][ x ][ x ][ x ][ x ][ x ][ x ][ x ][ x ] GNU/Linux e' un sistema operativo_ La cancellazione di una riga intera si ottiene con il comando 'dd' ovvero con la pressione del tasto [ d ] per due volte di seguito. Si decide di cancellare l'ultima riga. Per prima cosa si sposta il cursore sopra con il tasto [ j ], premuto per due volte, quindi si procede con la cancellazione. [ j ][ j ] [ d ][ d ] GNU/Linux e' un sistema operativo il cui kernel e' stato scritto da ~ ~ ~ ~ Salvataggio e conclusione ------------------------- Il salvataggio del testo in un file si ottiene attraverso un comando piu' complesso di quelli visti finora. Dalla modalita' di comando si preme il tasto [ : ] che inizia un comando speciale, detto colon o ultima riga , perche' appare sull'ultima riga dello schermo. [ : ] GNU/Linux e' un sistema operativo il cui kernel e' stato scritto da ~ ~ ~ ~ :_ Il comando per salvare e' :w nome_file e si decide di salvare con il nome 'miotesto'. :w miotesto Sullo schermo dovrebbe apparire come si vede di seguito. GNU/Linux e' un sistema operativo il cui kernel e' stato scritto da ~ ~ ~ ~ :w miotesto_ Si conclude con la pressione del tasto [ Invio ]. [ Invio ] La conclusione del funzionamento di VI si ottiene con il comando ':q'. Se si pretende di terminare senza salvare occorre imporre il comando con l'aggiunta di un punto esclamativo (':q!'). :q[ Invio ] Apertura di un file esistente ----------------------------- Per avviare l'eseguibile 'vi' in modo che questo apra immediatamente un file gia' esistente per permetterne la modifica, basta indicare il nome di questo file nella riga di comando. $ vi miotesto[ Invio ] GNU/Linux e' un sistema operativo il cui kernel e' stato scritto da ~ ~ ~ ~ ''miotesto'' 1 line, 66 characters In alternativa si puo' utilizzare il comando ':e' con la sintassi seguente: :e nome_file Il risultato e'lo stesso. Conclusione ----------- VI e' un applicativo per la creazione e la modifica di file di testo, molto poco elaborato esteticamente e piuttosto complicato da utilizzare. Tuttavia e' necessario saperlo usare nelle occasioni in cui non e' disponibile un programma migliore, o non e' possibile usare altro a causa delle ristrettezze del sistema. Questo esercizio sull'uso di VI e' solo un minimo assaggio del funzionamento di questo programma, che, al contrario di quanto possa sembrare, offre molti accorgimenti e potenzialita' che alla lunga possono rivelarsi veramente utili.