1 Esercitazione di Emacs. Condizioni d'uso alla fine del file.
3 I comandi di Emacs comportano generalmente l'uso del tasto CONTROL (a
4 volte indicato con CTRL o CTL) o del tasto META (a volte indicato con
5 EDIT o ALT). Piuttosto che indicarli per esteso ogni volta, useremo
6 le seguenti abbreviazioni:
8 C-<car> significa che bisogna tenere abbassato il tasto CONTROL
9 mentre si preme il carattere <car>. Quindi C-f significa:
10 tieni premuto CONTROL e batti f.
11 M-<car> significa che bisogna tenere abbassato il tasto META o EDIT
12 o ALT mentre si preme il carattere <car>. Se non ci sono
13 tasti META, EDIT o ALT, al loro posto si può premere e poi
14 rilasciare il tasto ESC e quindi premere <car>. Useremo
15 <ESC> per indicare il tasto ESC.
17 Nota importante: per chiudere una sessione di lavoro di Emacs usa C-x
19 Per annullare un comando inserito parzialmente usa C-g.
20 Per terminare l'esercitazione, usa C-x k quindi <Invio> al prompt.
21 I caratteri “>>” posti al margine sinistro indicano le direttive per
22 provare a usare un comando. Per esempio:
23 <<Blank lines inserted here by startup of help-with-tutorial>>
24 [Spaziatura inserita a scopo didattico. Il testo continua sotto]
25 >> Adesso premi C-v (vedi schermata successiva) per spostarti alla
26 prossima schermata (vai avanti, tieni premuto il tasto
27 CONTROL mentre premi v). D'ora in poi dovrai fare così ogni
28 volta che finisci di leggere la schermata.
30 Si noti che le ultime due righe di ogni schermata appaiono in cima
31 alla schermata successiva, favorendo così la continuità di lettura.
33 La prima cosa che bisogna imparare è come raggiungere un certo punto
34 del testo. Sai già come andare avanti di una schermata, con C-v. Per
35 andare indietro di una schermata, premi M-v (tieni premuto il tasto
36 META e poi premi v, oppure usa <ESC>v se non c'è un tasto META, EDIT o
39 >> Ora prova: premi M-v e quindi C-v alcune volte.
45 I comandi seguenti sono utili per visualizzare le schermate:
47 C-v Vai avanti di una schermata
48 M-v Vai indietro di una schermata
49 C-l Cancella lo schermo e riscrivi tutto il testo,
50 muovendo il testo che si trova vicino al cursore al
51 centro dello schermo. (Il tasto è CONTROL-L,
54 >> Trova il cursore, osserva quale parte di testo gli è vicina. Premi
55 C-l. Trova di nuovo il cursore e osserva che si trova sullo stesso
56 punto del testo, ma ora è al centro della schermata. Se premi C-l
57 di nuovo, il testo verrà posizionato in cima allo schermo.
58 Premendo nuovamente C-l verrà posizionato in fondo.
60 Puoi anche usare i tasti PagSu (Pag ↑) o PagGiù (Pag ↓) per passare
61 alle schermate precedenti o successive, se sono presenti sul tuo
62 terminale, ma C-v e M-v consentono una editazione più efficiente.
65 * CONTROLLO DI BASE DEL CURSORE
66 -------------------------------
68 Spostarsi da una schermata all'altra è utile, ma come ci si può
69 spostare fino ad un certo preciso punto del testo?
71 Ci sono diversi modi per farlo. Puoi usare i tasti con le frecce, ma
72 è più efficiente tenere le mani nella posizione standard e utilizzare
73 i comandi C-p, C-b, C-f e C-n. Questi caratteri sono equivalenti ai
74 quattro tasti con le frecce, in questo modo:
79 Indietro, C-b .... Posizione attuale cursore .... Avanti, C-f
84 >> Sposta il cursore sulla riga centrale del diagramma qui sopra
85 usando C-n o C-p. Poi usa C-l per portare il diagramma al centro
88 Le quattro lettere dei comandi sono mnemoniche in inglese: P per
89 precedente (previous), N per successivo (next), B per indietro
90 (backward) e F per avanti (forward). Userai questi comandi elementari
93 >> Usa alcuni C-n per portare il cursore su questa riga.
95 >> Muovi il cursore sulla riga con C-f e poi in alto con C-p. Osserva
96 l'effetto di un C-p quando il cursore si trova a metà della riga.
98 Ogni riga di testo termina con un carattere Newline (“a capo”), che
99 serve a separarla dalla successiva. (Di solito l'ultima riga di un
100 file termina con un carattere Newline, ma Emacs non lo richiede.)
102 >> Prova a usare C-b all'inizio di una riga. Sposterà il cursore alla
103 fine della precedente. Questo avviene perché il cursore ha
104 superato all'indietro il carattere Newline.
106 C-f sposta il cursore avanti attraverso il carattere Newline proprio
109 >> Premi alcune volte C-b per vedere dove si trova il cursore. Poi
110 usa C-f per tornare alla fine della riga. Usa quindi C-f per
111 andare alla riga successiva.
113 Quando ci si sposta oltre l'inizio o la fine della schermata, il testo
114 che si trova oltre si sposta sullo schermo, ottenendo uno
115 “scorrimento” (scrolling). Questo consente a Emacs di spostare il
116 cursore sulla parte di testo desiderata mantenendolo all'interno della
119 >> Prova a muovere il cursore al di là della fine dello schermo con
120 C-n e osserva cosa succede.
122 Se lo spostamento di un solo carattere alla volta è troppo lento
123 allora ci si può muovere di un'intera parola alla volta. M-f (META-f)
124 e M-b spostano il cursore rispettivamente in avanti e indietro di una
127 >> Prova alcune volte M-f e M-b.
129 Quando il cursore è a metà di una parola, M-f lo sposta alla fine
130 della stessa. Quando è sullo spazio bianco tra due parole, M-f lo
131 sposta alla fine della parola successiva. M-b funziona in modo simile
132 ma in direzione opposta.
134 >> Ora prova M-f e M-b alcune volte, alternandoli con C-f e C-b così
135 da poter osservare l'azione di M-f e M-b da vari punti tra le
136 parole e sulle stesse.
138 Osserva il parallelo tra C-f e C-b da una parte e M-f e M-b
139 dall'altra. Molto spesso i caratteri con Meta sono usati per
140 operazioni relative alle unità definite dal linguaggio (parole, frasi,
141 paragrafi), mentre i caratteri con Control operano su unità base
142 indipendenti da ciò che si scrive (caratteri, righe, ecc.).
144 Questo parallelo funziona anche tra righe e frasi: C-a e C-e spostano
145 all'inizio o alla fine di una riga, mentre M-a e M-e all'inizio o alla
148 >> Prova due C-a e poi due C-e. Prova due M-a e poi due M-e.
150 Osserva come un C-a ripetuto non abbia effetto, mentre M-a ripetuti
151 continuano a spostare il cursore all'inizio di frasi precedenti.
152 Sebbene questi due ultimi comandi non siano perfettamente analoghi,
153 riteniamo che il loro comportamento sia ragionevole.
155 La posizione del cursore nel testo è anche chiamata “punto”. Per
156 meglio dire, il cursore mostra sullo schermo dove si trova, al
157 momento, il punto nel testo.
159 Ecco un sommario delle più semplici operazioni di spostamento del
160 cursore, compresi i comandi di spostamento di parola in parola o di
163 C-f Sposta avanti di un carattere
164 C-b Sposta indietro di un carattere
166 M-f Sposta avanti di una parola
167 M-b Sposta indietro di una parola
169 C-n Sposta alla riga successiva
170 C-p Sposta alla riga precedente
172 C-a Sposta all'inizio della riga
173 C-e Sposta alla fine della riga
175 M-a Sposta all'inizio della frase
176 M-e Sposta alla fine della frase
178 >> Prova tutti questi comandi alcune volte per fare pratica.
179 Questi sono i comandi più usati.
181 Altri due importanti comandi di spostamento del cursore sono M-< (META
182 Minore-di), che sposta all'inizio dell'intero testo, e M-> (META
183 Maggiore-di), che sposta alla fine dell'intero testo.
185 Su molte tastiere il carattere “<” trova sopra la virgola, quindi è
186 necessario tenere premuto il tasto shift (⇑) per ottenerlo. Su questi
187 terminali dovrai usare il tasto shift per ottenere M-<, perché
188 altrimenti digiteresti M-virgola.
190 >> Prova M-< adesso per andare all'inizio del tutorial. Poi usa C-v
191 ripetutamente per tornare a questo punto.
193 >> Prova M-> adesso, per andare alla fine del tutorial. Quindi usa
194 M-v ripetutamente per tornare a questo punto.
196 Il cursore si può anche spostare con i tasti freccia, se il terminale
197 li ha. Noi raccomandiamo di imparare C-b, C-f, C-n e C-p per tre
198 motivi: primo, funzionano su tutti i terminali; secondo, una volta
199 acquisita pratica nell'uso di Emacs, ci si accorgerà che raggiungere
200 questi caratteri di controllo è più rapido che usare i tasti freccia
201 (perché non bisogna spostare le mani dalla posizione di scrittura
202 sulla tastiera); terzo, una volta acquisita l'abitudine ad usare
203 questi comandi con il carattere Control, si può allo stesso modo
204 imparare ad usare altri comandi avanzati di spostamento del cursore.
206 Molti comandi di Emacs accettano un argomento numerico che spesso
207 serve a conteggiare per quante volte vanno ripetuti. Il modo in cui
208 si può fornire ad un comando il numero di ripetizioni è il seguente:
209 si usa C-u e quindi si indicano le cifre prima di impartire il comando
210 stesso. Se esiste un tasto META (o EDIT o ALT) c'è un modo
211 alternativo: si battono le cifre tenendo premuto il tasto META. Noi
212 consigliamo di imparare il metodo con C-u perché funziona su tutti i
213 terminali. L'argomento numerico è anche chiamato “argomento
214 prefisso”, perché viene indicato prima del comando a cui si riferisce.
216 Per esempio, C-u 8 C-f sposta il cursore in avanti di otto caratteri.
218 >> Prova ad usare C-n, o C-p, con un argomento numerico per spostare
219 il cursore su una riga vicina a questa con un solo comando.
221 La maggior parte dei comandi usa l'argomento numerico come numero
222 delle ripetizioni da effettuare, tuttavia alcuni lo usano in modo
223 diverso. Altri comandi (ma nessuno di quelli imparati fino ad ora) lo
224 usano come indicatore di alternativa: la presenza di un argomento
225 prefisso, indipendentemente dal suo valore, modifica il comportamento
228 C-v e M-v sono un'altra eccezione. Quando gli si fornisce un
229 argomento spostano l'area di testo visualizzato in alto o in basso del
230 numero di righe indicato invece che del numero di schermate. Per
231 esempio, C-u 8 C-v fa scorrere lo schermo di 8 righe.
233 >> Ora prova con C-u 8 C-v.
235 La schermata si sposta di 8 righe verso l'alto. Se vuoi tornare di
236 nuovo in basso puoi usare un argomento numerico con M-v.
238 Quando si usa un sistema a finestre, come X o MS-Windows, ci dovrebbe
239 essere un'area rettangolare allungata chiamata barra di scorrimento a
240 un lato della finestra di Emacs. Si può far scorrere il testo con un
241 click del mouse nella barra di scorrimento.
243 Se il tuo mouse dispone di una rotellina, puoi usare anche quella per
244 far scorrere il testo.
247 * QUANDO EMACS SI BLOCCA
248 ------------------------
250 Se Emacs smette di rispondere ai comandi può essere fermato in modo
251 sicuro premendo C-g. Si può usare C-g per fermare un comando che sta
252 impiegando troppo tempo per l'esecuzione.
254 Si può anche usare C-g per annullare un argomento numerico o
255 l'esecuzione di un comando che non si vuole più portare a termine.
257 >> Batti C-u 100 per indicare un argomento numerico di 100, quindi
258 premi C-g. Ora premi C-f. Il cursore si sposta in avanti di un
259 solo carattere perché hai annullato l'argomento numerico con C-g.
261 Se hai premuto <ESC> per errore puoi annullare con C-g.
264 * COMANDI DISATTIVATI
265 ---------------------
267 Alcuni comandi di Emacs sono “disattivati”, così da evitare che utenti
268 principianti possano usarli per errore.
270 Se si inserisce uno dei comandi disattivati Emacs mostra un messaggio
271 in cui dice quale sia il comando e chiede se davvero si vuole
272 procedere con l'esecuzione.
274 Se effettivamente si vuole provare il comando bisogna premere la barra
275 spaziatrice come risposta a questa domanda. Normalmente, se non si
276 vuole eseguire il comando disattivato, bisogna rispondere alla domanda
279 >> Prova C-x C-l (che è un comando disattivato), poi rispondi con “n”
286 Emacs può avere diverse “finestre”, ognuna contenente il suo testo.
287 Spiegheremo dopo come usare finestre multiple. Adesso ci occupiamo di
288 come eliminare le finestre in più e tornare alla scrittura con una
289 sola finestra. È semplice:
291 C-x 1 Una finestra (cioè, elimina tutte le altre finestre).
293 È un CONTROL-x seguito dalla cifra 1. C-x 1 espande la finestra che
294 contiene il cursore su tutto lo schermo ed elimina tutte le altre
297 >> Sposta il cursore su questa riga e poi batti C-u 0 C-l.
299 >> Batti C-h k C-f. Osserva come questa finestra viene rimpicciolita
300 mentre ne appare un'altra che contiene la spiegazione del comando
303 >> Batti C-x 1 e guarda come la finestra contenente la spiegazione
306 C'è un'ampia serie di comandi che iniziano con CONTROL-x; molti di
307 essi riguardano finestre, file, buffer e cose simili. Questi comandi
308 possono essere lunghi due, tre o quattro caratteri.
311 * INSERIMENTO E CANCELLAZIONE
312 -----------------------------
314 Per inserire del testo basta premere i tasti corrispondenti alle varie
315 lettere che lo compongono. I caratteri visibili, come A, 7, *, ecc.,
316 sono considerati testo e inseriti immediatamente. Per inserire un
317 Newline usa il tasto <Invio> (a volte contrassegnato col simbolo ↲).
319 Per cancellare il carattere immediatamente prima del cursore, digita
320 <DEL>: solitamente è un tasto più largo del normale etichettato con
321 “Backspace” o con una freccia che punta a sinistra, sopra il tasto
322 <Invio>; generalmente elimina l'ultimo carattere inserito
324 Può esserci un altro tasto etichettato “Canc”, ma non è quello a cui
325 ci riferiamo con <DEL>.
327 >> Prova questo adesso: batti alcuni caratteri e poi cancellali con
328 <DEL> ripetuto alcune volte. Non preoccuparti delle modifiche
329 fatte a questo file: l'esercitazione principale rimarrà intatta,
330 quella che stai usando ne è una tua copia personale.
332 Quando una riga di testo diventa troppo lunga per essere visualizzata
333 su una riga di schermo viene spezzata e “continua” su una seconda riga
334 dello schermo. Se stai usando un sistema a finestre grafico,
335 compaiono delle piccole frecce ricurve ai lati del testo (nelle
336 “frange” sinistra e destra), indicando che la riga continua. Su un
337 terminale testuale, la continuazione viene indicata da una barra
338 rovescia (“\”) nell'ultima colonna a destra.
340 >> Inserisci del testo fino a raggiungere il margine destro e poi
341 continua. Vedrai apparire la prosecuzione della riga.
343 >> Usa <DEL> per cancellare il testo fino a quando la riga di testo è
344 di nuovo tutta contenuta in una sola riga dello schermo. La
345 prosecuzione alla riga successiva scompare.
347 Si può cancellare un carattere Newline proprio come ogni altro.
348 Quando si cancella il carattere Newline che separa due righe queste
349 vengono unite in una riga sola. Se la riga risultante è troppo lunga
350 per essere contenuta dallo schermo allora sarà continuata nella riga
353 >> Muovi il cursore all'inizio di una riga e poi premi <DEL>. Questo
354 unisce la riga alla precedente.
356 >> Premi <Invio> per inserire di nuovo il carattere Newline che hai
359 Il tasto <Invio> è speciale in quanto può implicare più del semplice
360 inserimento di un carattere Newline. A seconda del testo circostante,
361 può inserire degli spazi dopo l'“a capo” in modo tale che inserendo
362 ulteriori caratteri nella nuova riga, il testo rimanga allineato con
363 quello nelle righe precedenti. Questo comportamento (cioè quando
364 premendo un tasto vengono eseguite ulteriori azioni rispetto al
365 semplice inserimento del carattere stesso) viene chiamato “elettrico”.
367 >> Questo è un esempio del comportamento “elettrico” di <Invio>
368 Inserisci un <Invio> alla fine di questa riga.
370 Dovresti vedere che dopo essere andato a capo, Emacs ha inserito degli
371 spazi per allineare il cursore sotto la “I” di “Inserisci”.
373 Ricorda che la maggior parte dei comandi di Emacs può ricevere un
374 argomento numerico, compresi i caratteri per inserire il testo.
375 Quando si ripete un carattere di testo questo viene inserito un certo
378 >> Prova adesso: inserisci C-u 8 * per ottenere ********.
380 Fino ad ora si è visto il modo più semplice di inserire testo in Emacs
381 e di correggere gli errori. In modo analogo è possibile cancellare
382 parole o righe di testo. Ecco un sommario delle operazioni di
385 <DEL> cancella il carattere posto subito prima del cursore
386 C-d cancella il carattere posto subito dopo il cursore
388 M-<DEL> elimina la parola posta prima del cursore
389 M-d elimina la parola posta subito dopo il cursore
391 C-k cancella dalla posizione del cursore fino a fine riga
392 M-k cancella fino alla fine della frase corrente.
394 Si osservi che <DEL> e C-d da una parte e M-<DEL> e M-d dall'altra
395 estendono il parallelo tra C-f e M-f (a dire il vero, <DEL> non è un
396 vero e proprio carattere di controllo, ma non preoccupiamoci di
397 questo). C-k è simile a C-e e M-k è simile a M-e, nel senso che i
398 primi operano su righe e i secondi su frasi.
400 Si può anche cancellare una qualsiasi parte del buffer in modo
401 uniforme: si sposta il cursore alla fine di quella parte e poi si usa
402 C-<SPC> (<SPC> è la barra spaziatrice), poi si muove il cursore
403 all'altro estremo della zona. Una volta fatto, Emacs evidenzia il
404 testo compreso tra il cursore e la posizione dove hai digitato
405 C-<SPC>. A questo punto premendo C-w il testo evidenziato viene
408 >> Sposta il cursore sulla “S” all'inizio del paragrafo precedente.
409 >> Premi C-<SPC>. Emacs dovrebbe mostrarti il messaggio "Mark set"
410 nella parte bassa dello schermo.
411 >> Muovi il cursore sulla “o” di “sposta”, nella seconda riga del
413 >> Premi C-w. Questo eliminerà il testo a partire dalla "S" e fino
414 alla lettera che precede “o”.
416 La differenza tra “eliminazione” (“killing”) e “cancellazione”
417 (“deleting”) è che il testo “eliminato” può essere inserito di nuovo
418 (in qualsiasi posizione), mentre quello che viene cancellato non può
419 essere reinserito nello stesso modo (si può comunque annullare una
420 cancellazione, vedi sotto). L'operazione di reinserimento del testo
421 cancellato si chiama “yanking”. In genere i comandi che possono
422 rimuovere molto testo lo eliminano (così da poterlo eventualmente
423 reinserire), mentre i comandi che rimuovono un solo carattere o solo
424 righe vuote e spazi effettuano una cancellazione (quindi non è
425 possibile recuperare quel testo). <DEL> e C-d eseguono una
426 cancellazione nel caso più semplice, senza un argomento. Con un
427 argomento invece eliminano il testo.
429 >> Muovi il cursore all'inizio di una riga non vuota, poi usa C-k per
430 eliminare il testo di quella riga.
431 >> Premi C-k una seconda volta. Ti accorgerai di come viene
432 eliminato il carattere Newline posto dopo la riga stessa.
434 Si noti che un singolo C-k elimina il contenuto di una sola riga, un
435 secondo C-k elimina la riga stessa, facendo spostare in alto tutte le
436 righe successive. C-k usa un eventuale argomento numerico in modo
437 speciale: elimina quel numero di righe ED il loro contenuto. Non è
438 una semplice ripetizione del comando. C-u 2 C-k elimina due righe e i
439 rispettivi caratteri Newline; battere due volte C-k sarebbe diverso.
441 Puoi reinserire il testo eliminato sia nella stessa posizione dove è
442 stato rimosso, in un altro punto del testo che stai modificando,
443 oppure in un file diverso. Puoi reinserire lo stesso testo diverse
444 volte, facendone copie multiple. Altri editor usano termini diversi
445 per queste operazioni, tipicamente “taglia” e “incolla” (consulta il
446 Glossario nel manuale di Emacs).
448 Il comando per fare "yanking" è C-y. Inserisce il testo eliminato per
449 ultimo nel punto in cui si trova attualmente il cursore.
451 >> Prova: premi C-y per recuperare il testo di prima.
453 Se si eseguono operazioni di eliminazione consecutive il testo
454 eliminato è considerato un tutt'uno e quindi un solo C-y inserirà
455 quelle righe tutte assieme.
457 >> Prova adesso, premi C-k alcune volte.
459 Adesso, per recuperare il testo eliminato:
461 >> Premi C-y. Sposta il cursore alcune righe più in basso e premi di
462 nuovo C-y. Hai appena visto come duplicare una parte di testo.
464 Cosa succede se c'è del testo da recuperare tra quello eliminato ma è
465 stato eliminato altro testo dopo di esso? C-y restituirebbe il testo
466 dell'ultima eliminazione, tuttavia il testo eliminato in precedenza
467 non è perso. Si recupera con il comando M-y. Dopo aver usato C-y per
468 recuperare il testo più recentemente eliminato, un M-y sostituisce
469 quel testo con quello dell'eliminazione precedente. Premendo M-y in
470 successione si recupera il testo delle eliminazioni via via
471 precedenti. Quando è stato trovato il testo cercato non si deve fare
472 altro per tenerlo. Si può andare avanti con la scrittura lasciando il
473 testo recuperato dove si trova.
475 Quando si usa M-y un certo numero di volte si arriva di nuovo al testo
476 di partenza (quello eliminato per ultimo).
478 >> Elimina una riga, sposta il cursore, elimina un'altra riga.
479 Premi C-y per recuperare la seconda riga eliminata.
480 Premi M-y e verrà sostituita dalla riga eliminata prima.
481 Usa di nuovo M-y e osserva cosa succede. Continua fino a quando
482 non ritrovi la riga che avevi eliminato per seconda. Se vuoi puoi
483 usare un argomento numerico sia positivo che negativo per M-y.
489 Se si modifica il testo e subito dopo ci si accorge di aver fatto un
490 errore si può annullare la modifica con il comando di annullamento,
493 Normalmente C-/ annulla le modifiche fatte da un solo comando; se si
494 usa C-/ di seguito ogni ripetizione annulla un ulteriore comando.
496 Ci sono due eccezioni: i comandi che non modificano il testo non
497 contano, tra questi i comandi di spostamento del cursore e quelli di
498 scorrimento del testo; i caratteri inseriti nel testo sono gestiti in
499 gruppi, fino a 20 elementi (al fine di ridurre il numero di C-/ da
500 usare per annullare l'inserimento del testo).
502 >> Elimina questa riga con C-k poi usa C-/ e dovrebbe ricomparire.
504 C-_ è un comando di annullamento alternativo, funziona esattamente
505 come C-/. Su alcuni terminali, la sequenza C-/ invia effettivamente
506 C-_ a Emacs. Alternativamente, anche C-x u ha la stessa funzione di
507 C-/, ma è leggermente più scomoda da inserire.
509 Un argomento numerico per C-/, C-_ o C-x u agisce come numero delle
510 ripetizioni da effettuare.
512 Si può annullare la cancellazione del testo proprio come se ne annulla
513 l'eliminazione. La distinzione tra l'eliminazione e la cancellazione
514 riguarda solo la possibilità di recuperare il testo con C-y; non c'è
515 differenza rispetto all'operazione di annullamento.
521 Per conservare in modo permanente il testo inserito bisogna
522 conservarlo in un file, altrimenti sarà perso al termine
523 dell'esecuzione di Emacs. Per inserire il testo in un file bisogna
524 aprire quel file prima di comporre il testo. (Questa operazione si
525 chiama anche “visita” del file.)
527 Aprire un file implica vederne il contenuto all'interno di Emacs. Per
528 molti versi è come se si operasse sul file stesso, tuttavia le
529 modifiche apportate al contenuto non sono definitive fino a quando non
530 si “salva” il file. Tutto questo avviene in modo tale da evitare di
531 lasciare un file su disco quando è modificato solo in parte. Persino
532 quando si salva il file Emacs conserva il contenuto originale dello
533 stesso in un file con un altro nome, nel caso in cui si capisca più
534 tardi che le modifiche sono state un errore.
536 Osservando la parte bassa dello schermo puoi notare una riga che
537 inizia qualcosa del tipo “--:-- TUTORIAL.it”. Questa parte dello
538 schermo normalmente mostra il nome del file che si sta “visitando”.
539 In questo momento stai osservando la tua copia personale
540 dell'esercitazione di Emacs, chiamata “TUTORIAL.it”. Quando si apre
541 un file con Emacs il suo nome apparirà sempre in quel punto preciso.
543 Una caratteristica particolare del comando per aprire i file è che
544 bisogna fornirgli il nome del file. Diciamo in questo caso che il
545 comando “legge un argomento dal terminale” (l'argomento è proprio il
546 nome del file). Dopo aver scritto il comando
548 C-x C-f Trova un file
550 Emacs chiede il nome del file. Il nome che si inserisce compare nella
551 riga più in basso sullo schermo. La riga di fondo è chiamata
552 “minibuffer” quando viene usato per questo genere di operazioni di
553 inserimento. Si possono usare i consueti comandi di Emacs per operare
556 Mentre si inserisce il nome del file (oppure ogni altro testo nel
557 minibuffer), è possibile annullare l'operazione usando C-g.
559 >> Premi C-x C-f, poi premi C-g. Questo annulla il minibuffer e
560 interrompe l'esecuzione del comando C-x C-f che stava usando il
561 minibuffer. Quindi non sarà aperto alcun file.
563 Quando hai finito di indicare il nome del file, premi <Invio> per
564 portare a termine il comando. Il minibuffer scompare e il comando C-x
565 C-f inizia il suo lavoro e trova il file che è stato scelto.
567 Subito dopo, il contenuto del file compare sullo schermo e si può
568 modificare a piacere. Quando si desidera rendere permanenti le
569 modifiche si usa il comando
571 C-x C-s Salva il file
573 Questo copia il testo contenuto in Emacs nel file su disco. La prima
574 volta che si effettua questa operazione Emacs rinomina il file
575 originale in modo da conservarlo. Il nuovo nome è ottenuto
576 aggiungendo un carattere "~" alla fine del nome originale. Quando il
577 salvataggio termina, Emacs mostra il nome del file scritto.
579 >> Premi C-x C-s TUTORIAL<Invio>.
580 Questo dovrebbe salvare questa esercitazione in un file chiamato
581 “TUTORIAL” e mostrare “Wrote ...TUTORIAL nella parte bassa dello
584 Si può aprire un file già esistente per leggerlo o modificarlo. Si
585 può anche “visitare” un file che ancora non esiste. Questo è un modo
586 per creare un nuovo file con Emacs: si apre il file che sarà
587 inizialmente vuoto e quindi si inizia ad inserire il testo. Quando si
588 chiederà di salvare il file Emacs lo creerà ed esso conterrà tutto il
589 testo che è stato inserito. Da quel punto in poi si potrà pensare di
590 operare su un file già esistente.
596 Se si apre un secondo file con C-x C-f il primo rimane aperto
597 all'interno di Emacs. Si può tornare a visualizzarlo “visitandolo” di
598 nuovo con il comando C-x C-f. In questo modo si possono aprire quanti
599 file si vogliono all'interno di Emacs.
601 Emacs conserva il testo di ogni file all'interno di un oggetto
602 chiamato “buffer”. L'apertura di un file crea un nuovo buffer
603 all'interno di Emacs. Per guardare una lista dei buffer che esistono
604 attualmente nella tua sessione di Emacs si usa
606 C-x C-b Elenca buffer
608 >> Prova C-x C-b adesso.
610 Osserva come ogni buffer abbia un nome e come possa avere anche il
611 nome di un file del quale conserva il contenuto. QUALSIASI testo
612 mostrato in una finestra di Emacs appartiene a qualche buffer.
614 >> Usa C-x 1 per eliminare la lista dei buffer.
616 Quando ci sono svariati buffer, solo uno di essi è quello “corrente”
617 in un certo istante. Questo buffer è quello che è soggetto alle tue
618 modifiche. Se vuoi modificare un altro buffer, devi prima
619 “selezionarlo”. Se vuoi passare a un buffer che corrisponde a un
620 file, puoi farlo visitando di nuovo quel file usando C-x C-f. Ma c'è
621 un modo più semplice: usa il comando C-x b. Questo comando richiede
624 >> Crea un file chiamato “pippo” con C-x C-f pippo<Invio>.
625 Torna poi a questa esercitazione con C-x b TUTORIAL<Invio>.
627 La maggior parte delle volte, il nome del buffer corrisponde al nome
628 del file (senza la parte relativa alla directory). Questo non è
629 sempre vero. La lista dei buffer che ottieni con C-x C-b mostra sia
630 il nome del buffer che il nome del file associato.
632 Alcuni buffer non corrispondono ad alcun file. Per esempio il buffer
633 che ha nome “*Buffer List*” non è associato a nessun file. Questo
634 buffer TUTORIAL inizialmente non era associato a un file, mentre
635 adesso lo è, dal momento che nella sezione precedente hai usato C-x
636 C-s per salvarlo in un file.
638 Anche il buffer chiamato “*Messages* non è associato ad alcun file.
639 Quel buffer contiene tutti i messaggi che sono apparsi nella parte
640 bassa dello schermo durante la sessione di Emacs.
642 >> Passa al buffer con i messaggi con C-x b *Messages*<Invio>.
643 Torna poi a questa esercitazione con C-x b TUTORIAL<Invio>.
645 Se si modifica in qualche modo il testo di un file e poi si visita un
646 altro file questo non comporta il salvataggio del primo. Le modifiche
647 rimangono solo all'interno di Emacs, nel buffer relativo a quel file.
648 La creazione o la modifica del buffer del secondo file non ha alcun
649 effetto sul buffer del primo. Questo è comodo, ma è conveniente avere
650 la possibilità di salvare il buffer del primo file: sarebbe fastidioso
651 dover prima passare a quel buffer per salvarlo con C-x C-s. Così c'è
654 C-x s Salva alcuni buffer
656 C-x s chiede conferma del salvataggio per ogni buffer che contiene
657 testo modificato e non ancora salvato. Chiede, per ognuno di quei
658 buffer, se si voglia salvarne il contenuto nel file corrispondente.
660 >> Inserisci una riga di testo e poi premi C-x s.
661 Dovrebbe chiederti se vuoi salvare il file chiamato “...TUTORIAL”.
662 Rispondi di sì battendo “y”.
665 * ESTENDERE L'INSIEME DEI COMANDI
666 ---------------------------------
668 Emacs ha molti comandi in più rispetto a quelli che potrebbero trovare
669 posto su tutti i caratteri CONTROL e META. Emacs risolve questo
670 problema usando il comando X (eXtend). Ci sono due varianti:
672 C-x Comando esteso carattere. Seguito da un carattere.
673 M-x Comando esteso con nome. Seguito da un nome di comando.
675 Si tratta di comandi utili ma meno utilizzati di quelli che già
676 osservati. Se ne sono visti alcuni: il comando C-x C-f per visitare
677 un file e C-x C-s per salvarlo, ad esempio. Un altro esempio è quello
678 che serve per chiudere la sessione Emacs, cioè il comando C-x C-c.
679 (Non preoccuparti di perdere le modifiche che hai apportato: C-x C-c
680 propone infatti di salvare ogni file modificato prima di chiudere
683 Se stai usando un terminale grafico, non devi fare niente di speciale
684 per passare da Emacs a un'altra applicazione. Puoi farlo con il mouse
685 oppure utilizzare i comandi del “window manager”. Al contrario, se
686 stai usando un terminale a caratteri che può mostrare una sola
687 applicazione alla volta, hai bisogno di un modo per “sospendere” Emacs
688 e poter quindi usare un'altra applicazione.
690 C-z è il comando che serve per uscire da Emacs *temporaneamente*, in
691 modo tale da poter tornare alla stessa sessione di Emacs in un momento
692 successivo. Quando si è su un terminale a caratteri, C-z sospende
693 Emacs, cioè si ritorna alla shell senza distruggere la sessione
694 corrente. Nelle shell più comuni, puoi ritornare in Emacs con il
695 comando “fg” oppure con “%emacs”.
697 Il momento di usare C-x C-c è quando si sta per effettuare il log-out
698 dal sistema. È anche il comando giusto quando si deve chiudere Emacs
699 che è stato invocato da un altro programma, ad esempio da quello che
702 Ci sono molti comandi C-x. Ecco una lista di quelli già conosciuti:
704 C-x C-f Apri un file.
705 C-x C-s Salva un file.
706 C-x s Salva alcuni buffer.
707 C-x C-b Elenca buffer.
708 C-x b Passa a un altro buffer.
709 C-x C-c Chiudi Emacs.
710 C-x 1 Elimina tutte le finestre tranne una.
713 I comandi estesi con nome sono usati ancora meno spesso, oppure sono
714 usati solo in certe modalità. Un esempio è il comando replace-string
715 per sostituire in tutto il testo una stringa di caratteri con
716 un'altra. Quando si usa M-x Emacs visualizza "M-x" nella parte bassa
717 dello schermo, quindi si deve inserire per esteso il nome del comando;
718 in questo caso “replace-string”. Inserisci solo “repl s<TAB>” ed
719 Emacs completerà da solo il nome. (<TAB> è il tasto di tabulazione,
720 che si trova di solito sul lato sinistro della tastiera sopra al tasto
721 Blocca Maiuscole.) Concludi l'inserimento del comando con il tasto
724 Il comando replace-string richiede due argomenti: la stringa da
725 sostituire e quella con cui sostituirla. Bisogna indicare la fine di
726 ogni argomento con <Invio>.
728 >> Muovi il cursore sulla riga vuota due righe sotto questa.
729 Inserisci quindi M-x repl s<Invio>cambiata<Invio>modificata<Invio>.
731 Osserva come questa riga sia cambiata: hai sostituito la parola
732 “cambiata” con “modificata” tutte le volte che quella compariva nel
733 testo, a partire dalla posizione iniziale del cursore.
736 * SALVATAGGIO AUTOMATICO
737 ------------------------
739 Quando si apportano delle modifiche ad un file ma non sono ancora
740 state salvate potrebbero essere perse se per caso il sistema si
741 bloccasse. Per proteggerti da questa eventualità Emacs scrive
742 periodicamente un file di “salvataggio automatico” per ogni file che
743 si sta modificando. Il nome del file di salvataggio automatico ha un
744 carattere # all'inizio e alla fine; per esempio se il file si chiama
745 “ciao.c” il nome del file di salvataggio automatico sarà “#ciao.c#”.
746 Quando si salva il file nel modo consueto Emacs cancella il file di
747 salvataggio automatico.
749 Se il computer si blocca si può recuperare il file salvato
750 automaticamente aprendo il file in modo normale (il file che si stava
751 scrivendo, non quello di salvataggio automatico) e usando poi M-x
752 recover-file<Invio>. Quando viene chiesta la conferma si risponda
753 con yes<Invio> per procedere con il recupero dei dati salvati
760 Se Emacs si accorge che si inseriscono comandi multicarattere in modo
761 troppo lento allora mostra la sequenza nella parte bassa dello schermo
762 in un'area chiamata "area di eco". L'area in questione contiene
763 l'ultima riga dello schermo.
769 La riga immediatamente sopra all'area di eco è chiamata "mode line"
770 (riga di modo). La "mode line" si presenta più o meno così:
772 -:**- TUTORIAL 62% L759 (Fundamental)
774 Questa riga fornisce informazioni utili sullo stato di Emacs e sul
775 testo che si inserisce.
777 Abbiamo già visto cosa significa il nome del file: è il file che si
778 sta visitando. NN% indica la posizione attuale nel testo: significa
779 che NN percento del testo si trova sopra al margine superiore dello
780 schermo. Se si visualizza l'inizio del file ci sarà scritto “Top”
781 (inizio) invece che “ 0%”. Se invece ci si trova alla fine del file
782 ci sarà scritto “Bot” (fine). Se si osserva un file talmente piccolo
783 da essere visualizzato per intero sullo schermo allora la mode line
784 indicherà “All” (tutto).
786 La lettera L e le cifre indicano il numero di riga (Line) del punto
787 indicato dal cursore in quel momento.
789 I due asterischi vicino all'inizio indicano che sono state fatte delle
790 modifiche al testo. Se il file è stato appena aperto o appena salvato
791 quella parte della mode line non mostra alcun asterisco, solo
794 La parte di mode line racchiusa tra parentesi serve ad indicare in
795 quale modo di scrittura ci si trovi. Il modo standard è “Fundamental”
796 ed è quello che probabilmente è attivo adesso. È un esempio di
797 “modalità primaria” (major mode).
799 Emacs ha tanti diversi tipi di modalità primarie. Alcuni di questi
800 servono per la scrittura di diversi linguaggi di programmazione e/o
801 tipi di testo, come la modalità Lisp, la modalità Testo, ecc. In
802 qualsiasi momento c'è una e una sola modalità primaria attiva, e il
803 suo nome è visualizzato sulla mode line, dove adesso c'è
806 Ogni modalità primaria condiziona il comportamento di alcuni comandi.
807 Per esempio ci sono comandi per creare commenti in un programma e, dal
808 momento che ogni linguaggio di programmazione ha un diverso tipo di
809 commento, ogni modalità primaria deve inserire i commenti in modo
810 diverso. Ogni modalità primaria corrisponde al nome di un comando
811 esteso, con cui puoi passare a quella modalità. Per esempio M-x
812 fundamental-mode è il comando per attivare la modalità primaria
815 Se si vuole inserire del testo in italiano, come questo file,
816 probabilmente è più adeguata la modalità testo.
818 >> Inserisci M-x text-mode<Invio>.
820 Non preoccuparti, nessuno dei comandi che hai imparato verrà
821 modificato in modo sostanziale. Tuttavia adesso puoi osservare come
822 M-f e M-b considerino gli apostrofi come parti di parole. In
823 precedenza, nella modalità “Fundamental”, M-f e M-b consideravano gli
824 apostrofi dei separatori di parole.
826 Le modalità primarie di solito producono nei comandi piccoli
827 cambiamenti come quello: la maggior parte di essi “fa lo stesso
828 lavoro” ma in maniera un po' diversa.
830 Per leggere la documentazione sulla modalità primaria attuale, usa
833 >> Sposta il cursore sulla riga successiva a questa.
834 >> Premi C-l C-l per portare questa riga in cima allo schermo.
835 >> Usa C-h m per leggere come la modalità Testo differisca dalla
837 >> Premi C-x 1 per eliminare la finestra contenente la documentazione.
839 Le modalità primarie sono chiamate così perché ci sono anche delle
840 “modalità secondarie” (minor modes). Tali modalità non sono
841 alternative a quelle primarie, introducono solo piccole varianti.
842 Ogni modalità secondaria può essere attivata o disattivata,
843 indipendentemente da tutte le altre modalità secondarie e
844 indipendentemente dalla modalità primaria attiva in quel momento. Si
845 può quindi usare nessuna modalità secondaria, una soltanto oppure
846 qualsiasi combinazione di modalità secondarie.
848 Una modalità secondaria molto utile, specialmente per scrivere del
849 testo, è la modalità “Auto Fill” (riempimento automatico). Quando
850 questa modalità è attiva, Emacs interrompe la riga tra due parole ogni
851 volta che, nel corso dell'inserimento, essa diventa troppo lunga.
853 Si può attivare il modo “Auto Fill” con M-x auto-fill-mode<Invio>.
854 Quando la modalità suddetta è attiva può essere disattivata eseguendo
855 di nuovo M-x auto-fill-mode<Invio>. Se la modalità è disattivata
856 questo comando la attiva, viceversa se è già attiva. Un comando che
857 funziona così si comporta come un interruttore, attiva o disattiva
858 qualcosa ogni volta che viene premuto.
860 >> Usa M-x auto fill mode<Invio> adesso. Inserisci una riga di “asdf ”
861 ripetuti fino a quando non la vedi dividersi in due righe. Devi
862 interporre degli spazi perché la modalità Auto Fill spezza le righe
863 solo in corrispondenza di uno spazio.
865 Il margine di solito è predisposto a 70 caratteri ma può essere
866 spostato con il comando C-x f. Bisogna fornire al comando l'argomento
867 numerico del margine che si desidera.
869 >> Usa C-x f con un argomento di 20 (C-u 2 0 C-x f), poi inserisci del
870 testo e osserva come Emacs interrompe le righe a 20 caratteri.
871 Infine torna di nuovo a un margine di 70 caratteri con C-x f.
873 Se si modifica il testo all'interno di un paragrafo la modalità "Auto
874 Fill" non lo risistema. Per risistemare i margini di un paragrafo si
875 usa M-q (META-q) quando il cursore si trova in quel paragrafo.
877 >> Muovi il cursore sul paragrafo precedente e premi M-q.
883 Emacs può effettuare la ricerca di stringhe (una “stringa” è un gruppo
884 di caratteri contigui) in posizione sia successiva che precedente nel
885 testo. Cercare una stringa è un comando che provoca lo spostamento
886 del cursore: lo porta lì dove la stringa compare.
888 Il comando di ricerca di Emacs è diverso da quello di molti altri
889 editor perché è “incrementale”. Ciò significa che la ricerca avviene
890 proprio mentre si inserisce la stringa da cercare.
892 I comandi per iniziare la ricerca sono C-s per quella in avanti e C-r
893 per quella all'indietro nel testo. ASPETTA! Non provarli ora.
895 Quando si preme C-s si vede comparire il messaggio “I-search”
896 nell'area di eco: ciò significa che Emacs aspetta che si indichi ciò
897 che deve cercare. <Invio> serve a concludere la ricerca.
899 >> Adesso usa C-s per iniziare la ricerca. LENTAMENTE, una lettera
900 alla volta, inserisci la parola “cursore”, facendo una pausa dopo
901 ogni carattere scritto per vedere cosa succede al cursore. Hai
902 cercato “cursore”, una volta sola.
903 >> Usa C-s un'altra volta per trovare la successiva occorrenza della
905 >> Adesso premi <DEL> quattro volte e osserva come si muove il cursore.
906 >> Premi <Invio> per concludere la ricerca.
908 Hai visto cos'è successo? Durante una ricerca incrementale Emacs
909 prova ad andare al punto successivo in cui compare la stringa indicata
910 fino a quel momento. Per raggiungere il punto successivo in cui
911 compare di nuovo “cursore” basta solo premere C-s ancora una volta.
912 Se la stringa cercata non compare in alcun punto successivo Emacs
913 emette un “beep” e informa che la ricerca non è andata a buon fine
914 (“failing”). C-g è un modo alternativo per concludere la ricerca.
916 Se durante una ricerca incrementale si preme il tasto <DEL> ci si
917 accorgerà che l'ultimo carattere della stringa da cercare scompare e
918 la ricerca torna all'ultimo risultato trovato prima che fosse stato
919 scritto. Per esempio, supponiamo di aver battuto una “c” e di aver
920 trovato la prima “c” che compare nel testo. Se poi aggiungiamo una
921 “u” il cursore si sposta alla prima stringa “cu” che trova. Ora se si
922 preme <DEL> la “u” viene rimossa dalla stringa da cercare e il cursore
923 torna sulla “c” trovata in precedenza.
925 Se ci si trova nel mezzo di una operazione di ricerca e si usa un
926 carattere control o meta (con poche eccezioni, caratteri che hanno
927 significato particolare durante la ricerca come C-s e C-r) allora la
928 ricerca viene conclusa.
930 Il comando C-s inizia la ricerca di ogni occorrenza della stringa in
931 posizione SUCCESSIVA a quella attuale del cursore. Se si vuole
932 cercare qualcosa che nel testo precede il cursore allora bisogna usare
933 il comando C-r. Tutto quello che abbiamo detto su C-s si applica allo
934 stesso modo per C-r, invertendo ovviamente la direzione di ricerca.
940 Una delle caratteristiche interessanti di Emacs è che si possono
941 visualizzare più finestre sullo schermo nello stesso momento. (Nota
942 che Emacs utilizza il termine “frame”, descritto nella sezione
943 successiva, per indicare quello che altre applicazioni chiamano
944 “window”. Il manuale di Emacs contiene un Glossario dei termini usati
947 >> Muovi il cursore su questa riga e inserisci C-l C-l.
949 >> Adesso usa C-x 2 che divide lo schermo in due parti. Entrambe le
950 finestre visualizzano questo tutorial. Il cursore si trova nella
953 >> Premi C-M-v per far scorrere la finestra inferiore. (Se non hai un
954 tasto META usa <ESC> C-v.)
956 >> Usa C-x o per muovere il cursore nella finestra inferiore.
957 >> Usa C-v e M-v nella finestra inferiore per farvi scorrere il testo.
958 Continua a leggere queste indicazioni nella finestra superiore.
960 >> Premi C-x o di nuovo per muovere il cursore nella finestra
961 superiore. Il cursore si trova sul punto che occupava in
964 Puoi continuare a usare C-x o per andare da una finestra all'altra.
965 La “finestra selezionata”, dove avvengono le modifiche, è quella con
966 un cursore che lampeggia quando non stai scrivendo. Le altre finestre
967 conservano la loro posizione del cursore; se stai usando un terminale
968 grafico, quei cursori appaiono come dei rettangoli vuoi e non
971 Il comando C-M-v è molto utile quando si inserisce del testo in una
972 finestra mentre si usa l'altra solo come riferimento. Si può tenere
973 il cursore sempre nella finestra in cui si lavora e far scorrere il
974 testo contenuto nell'altra con C-M-v.
976 C-M-v è un esempio di carattere CONTROL-META. Se c'è un vero e
977 proprio tasto META si può ottenere C-M-v tenendo premuti
978 contemporaneamente CONTROL e META mentre si batte v. Non importa
979 quale tra CONTROL e META viene premuto per primo perché essi agiscono
980 assieme modificando i caratteri inseriti dopo.
982 Se non c'è un tasto META e si usa il tasto ESC l'ordine diventa
983 importante: bisogna premere prima <ESC> e poi farlo seguire da
984 CONTROL-v perché CONTROL-ESC-v non funziona. Questo perché <ESC> è un
985 carattere a sé stante e non uno che ne modifica altri.
987 >> Usa C-x 1 (nella finestra superiore) per eliminare la finestra
990 (Se usi C-x 1 nella finestra inferiore allora viene eliminata quella
991 superiore. Pensa a questo comando come “conserva una sola finestra,
992 quella attualmente selezionata.”)
994 Non devi necessariamente visualizzare il medesimo buffer in entrambe
995 le finestre. Se usi C-x C-f per visitare un file in una finestra, il
996 contenuto dell'altra non cambia. Si può visitare in modo indipendente
997 un file diverso in ogni finestra.
999 Ecco un altro modo per usare due finestre per visualizzare cose
1002 >> Inserisci C-x 4 C-f seguito dal nome di uno dei tuoi file e termina
1003 con <Invio>. Osserva come il file viene aperto nella finestra
1004 inferiore e il cursore venga posizionato là.
1006 >> Usa C-x o per tornare alla finestra superiore e C-x 1 per eliminare
1013 Emacs può anche creare dei “frame” multipli. Un frame il nome che
1014 diamo a una collezione di finestre, insieme con il suo menu, le barre
1015 di scorrimento, l'area di eco, ecc. Su un terminale grafico, Emacs
1016 chiama “frame” quello che la maggior parte delle altre applicazioni
1017 chiamano “finestra”, ed è possibile mostrarne più di uno
1018 contemporaneamente. Su un terminale testuale, è possibile mostrare un
1019 solo frame alla volta.
1021 >> Usa M-x make-frame<Invio>.
1022 Un nuovo frame dovrebbe apparire sullo schermo.
1024 In questo nuovo frame puoi svolgere qualsiasi cosa come nel frame
1025 originale. Non c'è nulla di speciale nel primo frame.
1027 >> Usa M-x delete-frame<Invio>.
1028 Questo rimuove il frame selezionato.
1030 Puoi anche eliminare un frame usando i metodi offerti dal sistema
1031 grafico (normalmente cliccando sul pulsante “X” in uno degli angoli
1032 superiori del frame). Se rimuovi in questo modo l'ultimo frame, la
1033 sessione Emacs viene terminata.
1036 * LIVELLI DI EDITING RICORSIVO
1037 ------------------------------
1039 A volte ci si può trovare in quello che si chiama un “livello di
1040 editing ricorsivo”: ciò è indicato dalla presenza di parentesi quadre
1041 nella mode line, attorno alle parentesi che delimitano il nome della
1042 modalità primaria. Per esempio si potrebbe leggere [(Fundamental)]
1043 invece che (Fundamental).
1045 Per uscire dal livello di editing ricorsivo si usa <ESC> <ESC> <ESC>.
1046 È un comando di uscita di uso piuttosto generale, si può anche usare
1047 per eliminare finestre in più e per uscire dal minibuffer.
1049 >> Usa M-x per entrare nel "minibuffer": poi usa <ESC> <ESC> <ESC> per
1052 Non è possibile usare C-g per uscire da un livello di editing
1053 ricorsivo, perché C-g è usato per annullare i comandi all'INTERNO del
1054 livello di editing ricorsivo.
1057 * COME IMPARARE ALTRO
1058 ---------------------
1060 In questo tutorial abbiamo provato a fornire le informazioni
1061 sufficienti per iniziare ad usare Emacs. Ci sono così tante opzioni
1062 in Emacs che sarebbe impossibile spiegarle tutte qui. Tuttavia
1063 potresti voler saperne di più su Emacs, che offre molte altre utili
1064 funzionalità. Ci sono comandi per leggere la documentazione dei
1065 comandi disponibili in Emacs. Questi comandi di “aiuto” iniziano
1066 tutti con il carattere C-h, che infatti è chiamato “carattere di aiuto
1069 Per raggiungere le voci di Aiuto si usa il carattere C-h e poi un
1070 altro carattere che specifica la richiesta. Quando davvero non si sa
1071 cosa fare si può provare con C-h ? ed Emacs indicherà tutti i tipi di
1072 aiuto che può fornire. Se si è attivato l'aiuto con C-h e si decide
1073 che non serve più si può annullare la richiesta con C-g.
1075 (Se C-h non mostra un messaggio relativo all'aiuto nella parte bassa
1076 dello schermo, prova ad usare il tasto F1 oppure con M-x help<Invio>.)
1078 La forma base di aiuto è data da C-h c. Si inserisce C-h, il
1079 carattere c e poi un carattere o una sequenza di caratteri; Emacs
1080 mostrerà una breve descrizione del comando stesso.
1084 Dovresti leggere un messaggio del tipo (purtroppo in inglese!):
1086 C-p runs the command previous-line
1088 Questo messaggio indica il “nome della funzione”. Dal momento che i
1089 nomi di funzione sono scelti per indicare cosa fa il comando, servono
1090 quindi anche come breve descrizione, sufficiente per ricordarsi di
1091 comandi già imparati.
1093 I comandi con più caratteri come ad esempio C-x C-s e (se non c'è il
1094 tasto META o EDIT o ALT) <ESC>v sono permessi allo stesso modo dopo
1095 una richiesta di aiuto fatta con C-h c.
1097 Per avere ulteriori informazioni su un comando si usa C-h k invece che
1102 Questo mostrerà la documentazione della funzione, così come il suo
1103 nome, all'interno di una finestra di Emacs. Quando hai finito di
1104 leggere usa C-x 1 per eliminare la finestra con il testo di aiuto.
1105 Non sei obbligato a farlo subito. Puoi anche lavorare sul tuo testo
1106 mentre fai riferimento al testo di aiuto e poi usare un C-x 1.
1108 Ecco altre utili opzioni di C-h:
1110 C-h f Descrive una funzione. Inserisci il nome della funzione.
1112 >> Prova con C-h f previous-line<Invio>.
1113 Questo mostrerà tutte le informazioni che Emacs possiede sulla
1114 funzione che implementa il comando C-p.
1116 Un comando simile è C-h v che mostra la documentazione delle
1117 variabili, comprese quelle di cui puoi modificare il valore per
1118 personalizzare il comportamento di Emacs. Devi inserire il nome della
1119 variabile quando Emacs lo richiede.
1121 C-h a "Apropos" comando. Inserisci una parola ed Emacs ti
1122 elencherà tutti i comandi il cui nome contiene quella
1123 parola. Questi comandi possono tutti essere eseguiti
1124 con META-x. Per alcuni comandi ti sarà mostrata anche
1125 una sequenza di uno o due caratteri che serve a far
1126 partire il comando senza doverlo inserire per esteso.
1128 >> Prova C-h a file<Invio>
1130 Questo mostrerà in un'altra finestra una lista di tutti i comandi che
1131 contengono la parola “file” nel nome. Nella lista si vedranno
1132 comandi-carattere, come C-x C-f, assieme ai corrispondenti nomi per
1133 esteso come find-file.
1135 >> Usa C-M-v per far scorrere il testo nella finestra di aiuto.
1136 Ripeti per alcune volte.
1138 >> Usa C-x 1 per eliminare la finestra di aiuto.
1140 C-h i Leggi la documentazione. Questo comando apre un
1141 buffer speciale chiamato “*info*” in cui puoi leggere
1142 i manuali on-line dei pacchetti installati sul tuo
1143 sistema. Batti m emacs<Invio> per leggere il manuale
1144 di Emacs. Se non hai mai usato il sistema Info prima
1145 d'ora premi ? ed Emacs ti guiderà nell'uso delle
1146 opzioni del modo Info. Una volta terminata questa
1147 esercitazione il manuale di Emacs contenuto nel
1148 sistema Info dovrebbe diventare la tua principale
1149 fonte di documentazione.
1152 * ALTRE FUNZIONALITÀ
1153 --------------------
1155 Puoi imparare di più su Emacs leggendo il suo manuale, sia nella forma
1156 stampata piuttosto che da dentro Emacs stesso (usa il menu Help oppure
1157 C-h r). Due funzionalità che possono farti comodo sono il
1158 completamento automatico, che consente di ridurre il numero di
1159 caratteri da digitare, e dired, che semplifica la gestione dei file.
1161 Il completamento è un modo per evitare la pressione di tasti quando
1162 non sia necessario. Ad esempio, quando vuoi passare al buffer
1163 *Messages*, puoi inserire C-x b *M<Tab> e Emacs cercherà di completare
1164 il nome del buffer usando la parte che hai già inserito. Questa
1165 funzione può essere usata anche sui nomi dei comandi oppure su quelli
1166 dei file, ed è descritta nel manuale Emacs nel nodo chiamato
1169 Dired ti consente di elencare i file in una directory (e opzionalmente
1170 nelle directory sottostanti), muoverti tra quei file, visitarli,
1171 rinominarli, cancellarli e in generale eseguire qualche operazione su
1172 quei file. Dired è descritta nel manuale Emacs nel nodo chiamato
1175 Il manuale descrive molte altre funzionalità di Emacs.
1181 Per chiudere una sessione di Emacs si usa C-x C-c.
1183 Questo documento è stato creato per essere utile a tutti i nuovi
1184 utenti, se qualcosa per te è stato poco chiaro non dare la colpa a te
1191 La versione inglese di questo testo (disponibile nel file "TUTORIAL")
1192 deriva da una lunga serie di tutorial di Emacs che iniziò con quello
1193 scritto da Stuart Cracraft per il primo Emacs. La versione italiana è
1194 a cura di Alfredo Finelli (alfredofnl@tiscali.it).
1196 Questo documento, come GNU Emacs, è coperto da copyright e viene
1197 distribuito con il permesso di farne copie a determinate condizioni:
1199 NOTA BENE: la licenza che definisce a tutti gli effetti i termini
1200 secondo i quali è possibile la copia e la distribuzione di questo
1201 documento è quella originale in lingua inglese contenuta nel file
1202 "TUTORIAL". Qui di seguito se ne riporta una traduzione a scopo
1203 indicativo, restando comunque inteso il fatto che è quella
1204 originale a fare fede.
1206 Copyright (C) 2003-2018 Free Software Foundation, Inc.
1208 È permesso a chiunque copiare e distribuire attraverso ogni mezzo
1209 copie fedeli di questo documento così come viene ricevuto, a
1210 condizione che le informazioni sul copyright e sui permessi
1211 garantiti siano conservate intatte e che il distributore riconosca
1212 a colui che riceve la copia il diritto ad un'ulteriore
1213 distribuzione, che deve avvenire così come definito in questa
1216 È permesso distribuire versioni modificate di questo documento, o
1217 di ogni sua parte, alle condizioni indicate precedentemente, purché
1218 esse portino chiaramente indicato il nome di colui che le ha
1219 modificate per ultimo.
1221 Le condizioni per copiare Emacs sono più complesse ma definite con lo
1222 stesso spirito. Per favore, leggete il file COPYING e poi distribuite
1223 copie di GNU Emacs ai vostri amici. Aiutateci a combattere
1224 l'ostruzionismo al software ("la proprietà") usando, scrivendo e
1225 condividendo software libero!
1227 ;;; Local Variables: