[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ 17 ] [ 18 ] [ 19 ] [ A ] [ B ] [ C ] [ D ] [ successivo ]
Un file di testo è semplicemente un file normale che contiene testo in forma leggibile. Non c'è nient'altro che lo renda speciale. L'altro tipo di file, un file binario, è pensato per essere interpretato dal computer.
È possibile vedere entrambi i tipi di file con il paginatore di file
less
, se è installato (se non lo è, lo si installi,
è piuttosto utile). Digitare less /etc/profile per vedere
un esempio di file di testo: si noti che si possono leggere i caratteri anche
se non se ne capisce il significato. Digitare less /bin/ls per
vedere un file binario; come si vede, il programma ls non è
fatto per essere letto dall'uomo.
La differenza tra i due tipi di file è esclusivamente una questione di ciò che essi contengono, a differenza di altri sistemi (come DOS o MacOS) che trattano realmente i file in modo differente.
I file di testo possono contenere script di shell, documentazione, note sui diritti d'autore o qualsiasi altro testo leggibile.
Ciò, per inciso, illustra la differenza tra codice sorgente e eseguibili binari; /bin/ls è un eseguibile binario che si può scaricare da Debian, ma si può anche scaricare un file di testo che dice al computer come creare /bin/ls. Tale file di testo è il codice sorgente. Confrontare /bin/ls e /etc/profile spiega come sia importante il codice sorgente se si vuole capire e modificare un software. Il software libero fornisce all'utente e ai suoi consulenti tecnici questi importantissimi codici sorgenti.
Un editor di testo è un programma usato per creare file di
testo e modificarne il contenuto. La maggior parte dei sistemi operativi ha un
editor di testo; DOS ha edit
, Windows ha Notepad
,
MacOS ha SimpleText
.
Debian fornisce una sorprendente varietà di editor di testo. I due
classici sono vi
ed emacs
; probabilmente sono sia i
più potenti che i più usati. Sia vi
sia
emacs
sono piuttosto complessi e necessitano di un po' di pratica,
ma possono rendere estremamente efficace la modifica di testi.
emacs
può essere eseguito sia in terminale che sotto il
sistema X Window; vi
viene normalmente eseguito in un terminale,
ma la variante vim
ha un'opzione -g che gli permette
di funzionare in X.
Editor più semplici includono nedit
, ae
,
jed
e xcoral
. nedit
e
xcoral
forniscono interfacce grafiche per il sistema X Window
facili da usare. Vi sono anche diverse varianti di vi
e una
variante di Emacs chiamata XEmacs
.
Questo tutorial non si occupa nei dettagli dell'uso di alcun editor
particolare, anche se è brevemente introdotto vi
dato che
è piccolo, veloce e quasi sempre disponibile e potrebbe essere
necessario a volte usarlo indipendentemente dal proprio editor preferito.
Emacs fornisce un proprio eccellente tutorial interattivo; per leggerlo,
avviare Emacs con il comando emacs e digitare F1 t.
Emacs è una scelta eccellente per i nuovi utenti interessati a un editor
di uso universale o ad un editor per la programmazione.
vi
vi
(pronunciato "vi ai") è di fatto l'unico
editor che viene fornito con quasi tutti i sistemi operativi stile Unix e
Debian non fa eccezione. vi
è stato scritto in origine
nella Università della California a Berkeley. Il nome dell'editor
è l'abbreviazione di "visual" (visivo), e si riferisce al
fatto che vi
fornisce una rappresentazione visiva del testo del
file; questa era un tempo considerata una caratteristica unica, e dà
un'idea di quanto sia vecchio il programma.
È in un certo senso difficile abituarsi a vi
, ma esso ha
molte funzionalità potenti. In generale, è consigliabile che un
nuovo utente usi Emacs per compiti quotidiani, quali la programmazione. A
volte vi
è comunque più comodo o è l'unico
editor disponibile; è inoltre un file molto più piccolo da
scaricare.
La seguente analisi di vi
dovrebbe valere anche per le varianti di
vi
quali elvis
e vim
.
vi filetest
Nella propria directory home, invocare vi digitando vi seguito dal
nome del file che si desidera creare. Si ottiene una schermata con una colonna
di tilde (~) lungo il margine sinistro. vi
è
ora in modalità di comando. Tutto ciò che si digita viene
interpretato come un comando, non come contenuti da aggiungere al file. Per
poter inserire del testo è necessario digitare un comando.
i
I due comandi di base per l'inserimento sono i, che significa "inserire il testo che sta per essere digitato alla sinistra del cursore" e a, che significa "inserire il testo che sta per essere digitato alla destra del cursore". Dato che si è all'inizio di un file vuoto, entrambi funzionano. Si è scelto per l'esempio arbitrariamente di digitare i.
Digitare un po' di testo; se non si riesce a pensare a qualcosa di proprio qui c'è una citazione profonda del filosofo Charles Sanders Peirce:
E che cos'è, allora, una credenza? È la semicadenza che chiude una frase musicale nella sinfonia della nostra vita intellettuale. Abbiamo visto che essa ha solo tre proprietà: primo, è qualcosa di cui siamo consci; secondo, essa placa l'irritazione del dubbio; e, terzo, essa comporta lo stabilirsi nella nostra natura di una regola di azione o, detto brevemente, di un abito.
Premere INVIO dopo ogni riga, dato che vi non si sposta automaticamente alla riga successiva; quando si è finito di scrivere, premere il tasto ESC per lasciare la modalità di inserimento prima o dopo il cursore e ritornare alla modalità di comando.
:wq
Se si è fatto tutto in maniera corretta, questo comando dovrebbe
apparire alla base dello schermo mentre lo si inserisce, sotto a tutti i
caratteri ~. Il carattere : comunica a
vi
che si sta per fornire una serie di comandi; w
significa scrivere il file che si è appena digitato: nella maggioranza
dei nuovi programmi ciò è chiamato "salvare", e
q (quit) significa uscire da vi
. Perciò si
dovrebbe ritornare al prompt della shell.
cat filetest
cat mostra a schermo il file che è stato scritto.
Non cancellare filetest, perché verrà usato nella prossima sezione del tutorial.
Quando si usa vi
, ricordare sempre che premendo ESC
si ritorna alla modalità di comando. Perciò se si è
confusi, premere ESC un paio di volte e riniziare da capo.
vi
ha la noiosa abitudine di emettere un avviso sonoro ogni volta
che si fa qualcosa che non si dovrebbe, come inserire un comando sconosciuto;
non allarmarsi per questo.
Per usare vi, è necessario leggere solamente Muoversi all'interno di un file, Sezione 8.3.2.1 e Cancellare del testo, Sezione 8.3.2.2. Le sezioni successive spiegano funzionalità avanzate, ma non sono strettamente necessarie anche se spesso più efficaci e meno noiose.
vi
di Debian permette di usare i tasti freccia per muoversi in un
file. Comunque funzionano anche i tasti tradizionali; essi sono h
per sinistra, j per basso, k per alto e
l per destra. Sono stati scelti questi tasti perché sono
uno vicino agli altri nella riga base della tastiera e perciò facili da
premere. Molte persone li usano al posto dei tasti freccia perché si
raggiungono più velocemente con le dita.
vi filetest
Apre il file che si è creato in precedenza con vi
. Si
dovrebbe vedere il testo scritto prima.
Muoversi in giro per il file con i tasti freccia o con i tasti
hjkl. Se si cerca di muoversi troppo in qualsiasi direzione,
vi
emette un avviso sonoro e si rifiuta di muoversi oltre; se si
vuole inserire lì del testo, si deve usare un comando di inserimento
come i o a.
:q
Esce da vi
.
vi filetest
Riapre il file su cui esercitarsi.
dd
Il comando dd cancella una riga; la prima riga del file dovrebbe adesso essere scomparsa.
x
x cancella un singolo carattere; la prima lettera della seconda
riga viene cancellata. I tasti Canc e Backspace non funzionano in
vi
, per ragioni storiche[13]. Alcune varianti di vi
, come vim
permettono di usare Canc e Backspace.
10x
Se si inserisce un numero prima di un comando, il comando viene ripetuto quel numero di volte. Perciò questo comando cancella 10 caratteri.
2dd
Si può usare un numero anche con il comando dd, cancellando due righe.
:q
Questo comando ora causa un errore perché il file è stato modificato ma non è ancora stato salvato. Ci sono due modi per evitare ciò. Si può usare :wq, scrivendo quindi il file al momento di uscire, o si può uscire senza salvare:
:q!
Con il punto esclamativo si dice a vi
che si è veramente
decisi e che deve uscire anche se il file non è stato salvato. Se si
usa :q! le cancellature fatte non sono salvate in
filetest; se si usa :wq, lo sono.
cat filetest
Essendo tornati al prompt di shell, visualizza filetest. Se si è usato :wq, dovrebbe ora essere più corto oppure essere inalterato, se si è usato :q!.
:q! è un comando perfetto da ricordare, perché lo si
può usare per trarsi d'impaccio se si è confusi oltre ogni
speranza e se si pensa di aver rovinato il file che si sta modificando.
Premere ESC un paio di volte per assicurarsi di essere in
modalità di comando e poi digitare :q!. È garantito
che ciò causerà l'uscita da vi
senza danni.
Adesso si conosce tutto ciò di cui si ha bisogno per fare modifiche di base: inserire, cancellare, salvare e uscire. Le sezioni seguenti descrivono comandi utili per fare le cose più velocemente; se si vuole si può saltarle.
Ci sono molti comandi per i movimenti, questo è un breve riassunto:
Sposta all'inizio della parola successiva
Sposta alla fine della parola successiva
Sposta alla fine della parola successiva prima di uno spazio
Sposta all'inizio della parola precedente
Sposta all'inizio della riga
Sposta alla prima parola della riga attuale
Sposta alla fine della riga
Sposta all'inizio della riga successiva
Sposta all'inizio della riga precedente
Sposta alla fine del file
Sposta all'inizio del file
Sposta alla riga numero n
Mostra il numero della riga attuale
Prima riga dello schermo
Riga a metà schermo
Fine schermo
Sposta il cursore alla colonna n
La schermata scorre automaticamente quando il cursore raggiunge l'estremità superiore o inferiore dello schermo. Ci sono comandi alternativi che possono controllare lo scorrimento del testo.
Scorre una schermata avanti
Scorre una schermata indietro
Scorre mezza schermata in basso
Scorre mezza schermata in alto
Come già detto si può far precedere un comando da un numero per ripetere il comando più volte. Il tasto l, per esempio sposta verso sinistra; 10l sposta di 10 posizioni a sinistra.
Per inserire un certo numero di spazi prima di un testo si può usare un numero con il comando di inserimento. Digitare il numero n poi i seguito da SPAZIO e ESC. Si dovrebbero ottenere n spazi.
I comandi che si riferiscono a righe usano un numero per indicare i numeri di riga. G è un buon esempio: se lo si fa precedere da un numero si sposta a quella riga.
Questa sezione fornisce una lista più completa dei comandi che è possibile usare. È solo un testo di riferimento; si possono provare i comandi, se si vuole, per vedere ciò che fanno.
Comandi di inserimento:
Aggiunge testo alla destra del cursore
Aggiunge testo alla fine della riga
Inserisce testo alla sinistra del cursore
Inserisce testo alla sinistra del primo carattere non vuoto nella riga attuale
Apre una nuova riga sotto a quella attuale e vi inserisce testo
Apre una nuova riga sopra a quella attuale e vi inserisce testo
Comandi per cancellare:
Cancella il carattere sotto al cursore
Cancella dalla posizione attuale fino alla fine della parola
Cancella la riga attuale
Cancella dalla posizione attuale alla fine della riga
I comandi, se combinati tra loro, possono essere più potenti. d, in particolare, se seguito da un comando di movimento cancella dal cursore fino a dovunque il comando provochi lo spostamento. Alcuni esempi:
Cancella n parole (anche ndw funziona)
Cancella dalla posizione attuale fino alla fine del file
Cancella dalla posizione attuale fino all'inizio del file
Cancella dalla posizione attuale fino alla fine della riga (come D)
Cancella dalla riga attuale fino alla fine della riga numero n
Comandi di annullamento:
Annulla l'ultimo comando
Annulla tutte le modifiche alla riga attuale
"Rimodifica". Equivalente a uscire con :q! e riavviare; fa ritornare all'ultima volta che è stato usato :w per salvare.
Si può annullare un'operazione di annullamento, perciò uu ha come risultato un annullamento annullato cioè nessun cambiamento.
Comandi di sostituzione:
Sostituisce il carattere sotto il cursore con c
Sovrascrive il testo
Cambia la parola attuale
Cambia il testo tra la posizione attuale e la fine di riga
Cambia le prossime n parole (come ncw)
Cambia fino alla fine della riga numero n
Cambia fino alla fine di riga (come c$)
Cambia la riga attuale
Sostituisce il testo inserito al carattere attuale
Sostituisce il testo inserito ai prossimi n caratteri
Dai comandi nella lista soprastante che permettono di inserire più di un singolo carattere di testo si deve uscire usando il tasto ESC, ritornando cosė alla modalità di comando.
Il taglia e incolla implica prima l'afferrare (tagliare o copiare) del testo e il posizionarlo in un buffer (o "appunti"), quindi il muoversi nella nuova posizione voluta e poi incollare il testo.
Per tagliare del testo usare il comando y e le sue varianti:
Prende una copia della riga attuale
Prende le prossime n righe
Prende una parola
Prende n parole
Prende il testo tra il cursore e la fine di riga
Comandi per incollare:
Incolla alla destra del cursore
Incolla alla sinistra del cursore
Incolla n copie alla sinistra del cursore
Quando si usa vi
all'interno di un xterm o si usa una variante di
vi
con il supporto per X, si può anche usare il mouse per
copiare del testo. Per copiare e incollare testo in X vedere Il sistema X Window, Capitolo 10; assicurarsi di essere in
modalità di inserimento quando si incolla, altrimenti il testo incollato
sarà interpretato come un comando.
Quando si cancella, il testo cancellato viene copiato nel buffer (appunti); si possono poi usare i comandi per incollare. Questo permette di fare il taglia-e-incolla, mentre i comandi y hanno come risultato un copia-e-incolla.
vi
ha comandi per cercare del testo. Possono anche essere usati
come comandi per muoversi se ci si vuole spostare ad una parola o un carattere
particolari.
I comandi di ricerca più semplici cercano caratteri.
Trova il prossimo carattere c alla destra o sotto alla posizione attuale
Trova il prossimo carattere c alla sinistra o sopra alla posizione attuale
Sposta a destra fino al carattere che precede il prossimo carattere c
Sposta a sinistra fino al carattere che segue il primo carattere c trovato
Ripete l'ultimo comando di ricerca carattere
Come ; ma in direzione inversa rispetto al comando originale
Se il carattere cercato non viene trovato, vi
emette un avviso
sonoro o dà un qualche segnale. vi
permette di cercare
qualsiasi testo, non solamente un carattere.
Cerca a destra e in basso la prossima occorrenza di testo
Cerca a sinistra e in alto la prossima occorrenza di testo
Ripete l'ultimo comando / o ?
Ripete in direzione opposta l'ultimo comando / o ?
Quando si usano i comandi / o ? viene liberata una riga alla fine dello schermo. Inserire il testo da cercare seguito da INVIO.
Il testo nel comando / o ? è in realtà una espressione regolare, si veda Espressioni regolari, Sezione 11.1.
[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ 14 ] [ 15 ] [ 16 ] [ 17 ] [ 18 ] [ 19 ] [ A ] [ B ] [ C ] [ D ] [ successivo ]
Debian Tutorial
30 settembre 2007hp@debian.org