diff options
| author | Glenn Morris | 2007-08-22 07:41:44 +0000 |
|---|---|---|
| committer | Glenn Morris | 2007-08-22 07:41:44 +0000 |
| commit | 9ca6898a721a4fa3cf67497c0202ffc6ec18559e (patch) | |
| tree | 7053ef6102d00a99cb62745de14f0dbeb5b26672 /etc/tutorials/TUTORIAL.it | |
| parent | a523f0c74b25f548ec76877b6a50bffbbd2c3f9c (diff) | |
| download | emacs-9ca6898a721a4fa3cf67497c0202ffc6ec18559e.tar.gz emacs-9ca6898a721a4fa3cf67497c0202ffc6ec18559e.zip | |
Move tutorials from etc/ to etc/tutorials/
Diffstat (limited to 'etc/tutorials/TUTORIAL.it')
| -rw-r--r-- | etc/tutorials/TUTORIAL.it | 1120 |
1 files changed, 1120 insertions, 0 deletions
diff --git a/etc/tutorials/TUTORIAL.it b/etc/tutorials/TUTORIAL.it new file mode 100644 index 00000000000..74beb63f018 --- /dev/null +++ b/etc/tutorials/TUTORIAL.it | |||
| @@ -0,0 +1,1120 @@ | |||
| 1 | Esercitazione di Emacs. Condizioni d'uso alla fine del file. | ||
| 2 | |||
| 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 EDIT | ||
| 5 | o ALT). Piuttosto che indicarli per esteso ogni volta, useremo le | ||
| 6 | seguenti abbreviazioni: | ||
| 7 | |||
| 8 | C-<car> significa che bisogna tenere abbassato il tasto CONTROL mentre si | ||
| 9 | preme il carattere <car>. Quindi C-f significa: tieni premuto | ||
| 10 | CONTROL e batti f. | ||
| 11 | |||
| 12 | M-<car> significa che bisogna tenere abbassato il tasto META o EDIT o ALT | ||
| 13 | mentre si preme il carattere <car>. Se non ci sono tasti META, | ||
| 14 | EDIT o ALT, al loro posto si può premere e poi rilasciare il | ||
| 15 | tasto ESC e quindi premere <car>. Useremo <ESC> per indicare il | ||
| 16 | tasto ESC. | ||
| 17 | |||
| 18 | Nota importante: per chiudere una sessione di lavoro di Emacs usa C-x | ||
| 19 | C-c. (Due caratteri.) I caratteri ">>" posti al margine sinistro | ||
| 20 | indicano le direttive per provare a usare un comando. Per esempio: | ||
| 21 | <<Blank lines inserted here by startup of help-with-tutorial>> | ||
| 22 | >> Adesso premi C-v (Vedi schermata successiva) per spostarti | ||
| 23 | alla prossima schermata. (Vai avanti, tieni premuto il tasto | ||
| 24 | CONTROL mentre premi v). D'ora in poi dovrai fare così ogni volta | ||
| 25 | che finisci di leggere lo schermo. | ||
| 26 | |||
| 27 | Si noti che le ultime due righe di ogni schermata appaiono in cima alla | ||
| 28 | schermata successiva, favorendo così la continuità di lettura. | ||
| 29 | |||
| 30 | La prima cosa che bisogna imparare è come raggiungere un certo punto del | ||
| 31 | testo. Sai già come andare avanti di una schermata, con C-v. Per | ||
| 32 | andare indietro di una schermata, premi M-v (tieni premuto il tasto META | ||
| 33 | e poi premi v, oppure usa <ESC>v se non c'è un tasto META, EDIT o ALT). | ||
| 34 | |||
| 35 | >> Ora prova: premi M-v e quindi C-v alcune volte. | ||
| 36 | |||
| 37 | |||
| 38 | * SOMMARIO | ||
| 39 | ---------- | ||
| 40 | |||
| 41 | I comandi seguenti sono utili per visualizzare le varie parti del testo: | ||
| 42 | |||
| 43 | C-v Vai avanti di una schermata | ||
| 44 | M-v Vai indietro di una schermata | ||
| 45 | C-l Cancella lo schermo e riscrivi tutto il testo, muovendo | ||
| 46 | il testo che si trova vicino al cursore al centro dello | ||
| 47 | schermo. (Il tasto è CONTROL-L, non CONTROL-1.) | ||
| 48 | |||
| 49 | >> Trova il cursore, osserva quale parte di testo gli è vicina. Premi | ||
| 50 | C-l. Trova di nuovo il cursore e osserva che si trova sullo stesso | ||
| 51 | punto del testo. | ||
| 52 | |||
| 53 | |||
| 54 | * CONTROLLO DEL CURSORE | ||
| 55 | ----------------------- | ||
| 56 | |||
| 57 | Spostarsi da una schermata all'altra è utile, ma come ci si può spostare | ||
| 58 | fino ad un certo preciso punto del testo? | ||
| 59 | |||
| 60 | Ci sono diversi modi per farlo. Il più elementare consiste nell'usare i | ||
| 61 | comandi C-p, C-b, C-f, C-n. Ognuno di essi muove il cursore di una riga o | ||
| 62 | di una colonna in una data direzione sullo schermo. La tabella seguente | ||
| 63 | mostra le direzioni in cui operano questi quattro comandi: | ||
| 64 | |||
| 65 | Riga precedente, C-p | ||
| 66 | : | ||
| 67 | : | ||
| 68 | Indietro, C-b .... Posizione attuale cursore .... Avanti, C-f | ||
| 69 | : | ||
| 70 | : | ||
| 71 | Riga successiva, C-n | ||
| 72 | |||
| 73 | >> Sposta il cursore sulla riga centrale del diagramma qui sopra usando | ||
| 74 | C-n o C-p. Poi usa C-l per portare il diagramma al centro dello | ||
| 75 | schermo. | ||
| 76 | |||
| 77 | Le quattro lettere dei comandi sono mnemoniche in inglese: P per | ||
| 78 | precedente (previous), N per successivo (next), B per indietro (backward) | ||
| 79 | e F per avanti (forward). Questi sono tutti i comandi elementari per | ||
| 80 | posizionare il cursore, li userai IN CONTINUAZIONE e conviene perciò | ||
| 81 | impararli subito. | ||
| 82 | |||
| 83 | >> Usa alcuni C-n per portare il cursore su questa riga. | ||
| 84 | >> Muovi il cursore sulla riga con C-f e poi in alto con C-p. Osserva | ||
| 85 | l'effetto di un C-p quando il cursore si trova a metà della riga. | ||
| 86 | |||
| 87 | Ogni riga di testo termina con un carattere Newline, che serve a separarla | ||
| 88 | dalla successiva. È bene che l'ultima riga del tuo file termini con un | ||
| 89 | carattere Newline, benché Emacs non lo richieda. | ||
| 90 | |||
| 91 | >> Prova a usare C-b all'inizio di una riga. Sposterà il cursore | ||
| 92 | alla fine della precedente. Questo avviene perché il cursore ha | ||
| 93 | superato all'indietro il carattere Newline. | ||
| 94 | |||
| 95 | C-f sposta il cursore avanti attravero il carattere Newline proprio come | ||
| 96 | C-b. | ||
| 97 | |||
| 98 | >> Premi alcune volte C-b per vedere dove si trova il cursore. Poi usa | ||
| 99 | C-f per tornare alla fine della riga. Usa quindi C-f per andare alla | ||
| 100 | riga successiva. | ||
| 101 | |||
| 102 | Quando ci si sposta oltre l'inizio o la fine della schermata, il testo che | ||
| 103 | si trova oltre si sposta sullo schermo, ottenendo uno "scorrimento" | ||
| 104 | (scrolling). In questo modo Emacs posiziona il cursore sulla parte di | ||
| 105 | testo desiderata senza doverlo portare fuori dallo schermo visibile. | ||
| 106 | |||
| 107 | >> Prova a muovere il cursore al di là della fine dello schermo con C-n e | ||
| 108 | osserva cosa succede. | ||
| 109 | |||
| 110 | Se lo spostamento di un solo carattere alla volta è troppo lento allora ci | ||
| 111 | si può muovere di un'intera parola alla volta. M-f (META-f) e M-b | ||
| 112 | spostano il cursore rispettivamente in avanti e indietro di una parola. | ||
| 113 | |||
| 114 | >> Prova alcune volte M-f e M-b. | ||
| 115 | |||
| 116 | Quando il cursore è a metà di una parola, M-f lo sposta alla fine della | ||
| 117 | stessa. Quando è sullo spazio bianco tra due parole, M-f lo sposta alla | ||
| 118 | fine della parola successiva. M-b funziona in modo simile ma in direzione | ||
| 119 | opposta. | ||
| 120 | |||
| 121 | >> Ora prova M-f e M-b alcune volte, alternandoli con C-f e C-b così da | ||
| 122 | poter osservare l'azione di M-f e M-b da vari punti tra le parole e | ||
| 123 | sulle stesse. | ||
| 124 | |||
| 125 | Osserva il parallelo tra C-f e C-b da una parte e M-f e M-b dall'altra. | ||
| 126 | Molto spesso i caratteri con Meta sono usati per operazioni relative alle | ||
| 127 | unità definite dal linguaggio (parole, frasi, paragrafi), mentre i | ||
| 128 | caratteri con Control operano su unità base indipendenti da ciò che si | ||
| 129 | scrive (caratteri, righe, ecc.). | ||
| 130 | |||
| 131 | Questo parallelo funziona anche tra righe e frasi: C-a e C-e spostano | ||
| 132 | all'inizio o alla fine di una riga, e M-a e M-e all'inizio o alla fine di | ||
| 133 | una frase. | ||
| 134 | |||
| 135 | >> Prova due C-a e poi due C-e. Prova due M-a e poi due M-e. | ||
| 136 | |||
| 137 | Osserva come un C-a ripetuto non abbia effetto, mentre M-a ripetuti | ||
| 138 | continuano a spostare il cursore all'inizio di frasi precendenti. Sebbene | ||
| 139 | questi due ultimi comandi non siano perfettamente analoghi, riteniamo che | ||
| 140 | il loro comportamento sia ragionevole. | ||
| 141 | |||
| 142 | La posizione del cursore nel testo è anche chiamata "punto". Per meglio | ||
| 143 | dire, il cursore mostra sullo schermo dove si trova, al momento, il punto | ||
| 144 | nel testo. | ||
| 145 | |||
| 146 | Ecco un sommario delle più semplici operazioni di spostamento del cursore, | ||
| 147 | compresi i comandi di spostamento di parola in parola o di frase in frase: | ||
| 148 | |||
| 149 | C-f Sposta avanti di un carattere | ||
| 150 | C-b Sposta indietro di un carattere | ||
| 151 | |||
| 152 | M-f Sposta avanti di una parola | ||
| 153 | M-b Sposta indietro di una parola | ||
| 154 | |||
| 155 | C-n Sposta alla riga successiva | ||
| 156 | C-p Sposta alla riga precedente | ||
| 157 | |||
| 158 | C-a Sposta all'inizio della riga | ||
| 159 | C-e Sposta alla fine della riga | ||
| 160 | |||
| 161 | M-a Sposta all'inizio della frase | ||
| 162 | M-e Sposta alla fine della frase | ||
| 163 | |||
| 164 | >> Prova tutti questi comandi alcune volte per fare pratica. Questi sono | ||
| 165 | i comandi più usati. | ||
| 166 | |||
| 167 | Altri due importanti comandi di spostamento del cursore sono M-< (META | ||
| 168 | Minore-di), che sposta all'inizio dell'intero testo, e M-> (META | ||
| 169 | Maggiore-di), che sposta alla fine dell'intero testo. | ||
| 170 | |||
| 171 | Su molte tastiere il carattere ">" si raggiunge premendo il tasto SHIFT. | ||
| 172 | Su queste tastiere bisogna usare il tasto SHIFT assieme a quello META; | ||
| 173 | senza il tasto SHIFT si otterrebbe un carattere diverso. | ||
| 174 | |||
| 175 | >> Prova M-< adesso per andare all'inizio del tutorial. Poi usa C-v | ||
| 176 | ripetutamente per tornare a questo punto. | ||
| 177 | >> Prova M-> adesso, per andare alla fine del tutorial. Quindi usa M-v | ||
| 178 | ripetutamente per tornare a questo punto. | ||
| 179 | |||
| 180 | Il cursore si può anche spostare con i tasti freccia, se il terminale li | ||
| 181 | ha. Noi raccomandiamo di imparare C-b, C-f, C-n e C-p per tre motivi: | ||
| 182 | primo, funzionano su tutti i terminali; secondo, una volta acquisita | ||
| 183 | pratica nell'uso di Emacs, ci si accorgerà che raggiungere questi | ||
| 184 | caratteri di controllo è più rapido che usare i tasti freccia perché non | ||
| 185 | bisogna spostare le mani dalla posizione di scrittura sulla tastiera; | ||
| 186 | terzo, una volta acquisita l'abitudine ad usare questi comandi con il | ||
| 187 | carattere Control, si può allo stesso modo imparare ad usare altri comandi | ||
| 188 | avanzati di spostamento del cursore. | ||
| 189 | |||
| 190 | Molti comandi di Emacs accettano un argomento numerico che spesso serve a | ||
| 191 | conteggiare per quante volte vanno ripetuti. Il modo in cui si può | ||
| 192 | fornire ad un comando il numero di ripetizioni è il seguente: si usa C-u e | ||
| 193 | quindi si indicano le cifre prima di impartire il comando stesso. Se | ||
| 194 | esiste un tasto META (o EDIT o ALT) c'è un modo alternativo: si battono le | ||
| 195 | cifre tenendo premuto il tasto META. Noi consigliamo di imparare il | ||
| 196 | metodo con C-u perché funziona su tutti i terminali. L'argomento numerico | ||
| 197 | è anche chiamato "argomento prefisso", perché viene indicato prima del | ||
| 198 | comando a cui si riferisce. | ||
| 199 | |||
| 200 | Per esempio, C-u 8 C-f sposta il cursore in avanti di otto caratteri. | ||
| 201 | |||
| 202 | >> Prova ad usare C-n, o C-p, con un argomento numerico per spostare il | ||
| 203 | cursore su una riga vicina a questa con un solo comando. | ||
| 204 | |||
| 205 | La maggior parte dei comandi usa l'argomento numerico come numero delle | ||
| 206 | ripetizioni da effettuare, tuttavia alcuni lo usano in modo diverso. | ||
| 207 | Altri comandi (ma nessuno di quelli imparati fino ad ora) lo usano come | ||
| 208 | indicatore di alternativa: la presenza di un argomento prefisso, | ||
| 209 | indipendentemente dal suo valore, modifica il comportamento del comando. | ||
| 210 | |||
| 211 | C-v e M-v sono un'altra eccezione. Quando gli si fornisce un argomento | ||
| 212 | spostano l'area di testo visualizzato in alto o in basso del numero di | ||
| 213 | righe indicato invece che del numero di schermate. Per esempio, C-u 8 C-v | ||
| 214 | fa scorrere lo schermo di 8 righe. | ||
| 215 | |||
| 216 | >> Ora prova con C-u 8 C-v. | ||
| 217 | |||
| 218 | La schermata si sposta di 8 righe verso l'alto. Se vuoi tornare di nuovo | ||
| 219 | in basso puoi usare un argomento numerico con M-v. | ||
| 220 | |||
| 221 | Quando si usa un sistema a finestre, come X11 o MS-Windows, ci dovrebbe | ||
| 222 | essere un'area rettangolare allungata chiamata barra di scorrimento a | ||
| 223 | un lato della finestra di Emacs. Si può far scorrere il testo con un | ||
| 224 | click del mouse nella barra di scorrimento. | ||
| 225 | |||
| 226 | >> Prova a premere il pulsante centrale del mouse sopra all'area | ||
| 227 | evidenziata nella barra di scorrimento. Verrà visualizzata una parte | ||
| 228 | del testo, più verso l'inizio o la fine, a seconda del punto della | ||
| 229 | barra che il puntatore indicava mentre premevi il pulsante del mouse. | ||
| 230 | >> Prova a spostare il mouse in su e in giù mentre tieni premuto il | ||
| 231 | pulsante centrale. Osserva come il testo scorre in su e in giù mentre | ||
| 232 | muovi il mouse. | ||
| 233 | |||
| 234 | |||
| 235 | * QUANDO EMACS SI BLOCCA | ||
| 236 | ------------------------ | ||
| 237 | |||
| 238 | Se Emacs smette di rispondere ai comandi può essere fermato in modo sicuro | ||
| 239 | premendo C-g. Si può usare C-g per fermare un comando che sta impiegando | ||
| 240 | troppo tempo per l'esecuzione. | ||
| 241 | |||
| 242 | Si può anche usare C-g per annullare un argomento numerico o l'esecuzione | ||
| 243 | di un comando che non si vuole più portare a termine. | ||
| 244 | |||
| 245 | >> Batti C-u 100 per indicare un argomento numerico di 100, quindi premi | ||
| 246 | C-g. Ora premi C-f. Il cursore si sposta in avanti di un solo | ||
| 247 | carattere perché hai annullato l'argomento numerico con C-g. | ||
| 248 | |||
| 249 | Se hai premuto <ESC> per errore puoi annullare con C-g. | ||
| 250 | |||
| 251 | |||
| 252 | * COMANDI DISATTIVATI | ||
| 253 | --------------------- | ||
| 254 | |||
| 255 | Alcuni comandi di Emacs sono "disattivati", così da evitare che utenti | ||
| 256 | principianti possano usarli per errore. | ||
| 257 | |||
| 258 | Se si inserisce uno dei comandi disattivati Emacs mostra un messaggio in | ||
| 259 | cui dice quale sia il comando e chiede se davvero si vuole procedere con | ||
| 260 | l'esecuzione. | ||
| 261 | |||
| 262 | Se effettivamente si vuole provare il comando bisogna premere la barra | ||
| 263 | spaziatrice come risposta a questa domanda. Normalmente, se non si vuole | ||
| 264 | eseguire il comando disattivato, bisogna rispondere alla domanda con "n". | ||
| 265 | |||
| 266 | >> Prova C-x C-l (che è un comando disattivato), poi rispondi con "n" alla | ||
| 267 | domanda. | ||
| 268 | |||
| 269 | |||
| 270 | * FINESTRE | ||
| 271 | ---------- | ||
| 272 | |||
| 273 | Emacs può avere diverse finestre, ognuna contenente il suo testo. | ||
| 274 | Spiegheremo dopo come usare finestre multiple. Adesso ci occupiamo di | ||
| 275 | come eliminare le finestre in più e tornare alla scrittura con una sola | ||
| 276 | finestra. È semplice: | ||
| 277 | |||
| 278 | C-x 1 Una finestra (cioè, elimina tutte le altre finestre). | ||
| 279 | |||
| 280 | È un CONTROL-x seguito dalla cifra 1. C-x 1 espande la finestra che | ||
| 281 | continene il cursore su tutto lo schermo ed elimina tutte le altre | ||
| 282 | finestre. | ||
| 283 | |||
| 284 | >> Sposta il cursore su questa riga e poi batti C-u 0 C-l. | ||
| 285 | >> Batti C-h k C-f. Osserva come questa finestra viene rimpicciolita | ||
| 286 | mentre ne appare un'altra che contiene la spiegazione del comando | ||
| 287 | CONTROL-f. | ||
| 288 | >> Batti C-x 1 e guarda come la finestra contenente la spiegazione | ||
| 289 | scompare. | ||
| 290 | |||
| 291 | Questo comando è diverso da tutti quelli imparati finora perché contiene | ||
| 292 | due caratteri. Inizia con il carattere CONTROL-x. C'è un'ampia serie di | ||
| 293 | comandi che iniziano con CONTROL-x; molti di essi riguardano finestre, | ||
| 294 | file, buffer, e cose simili. Questi comandi possono essere lunghi due, | ||
| 295 | tre o quattro caratteri. | ||
| 296 | |||
| 297 | |||
| 298 | * INSERIMENTO E CANCELLAZIONE | ||
| 299 | ----------------------------- | ||
| 300 | |||
| 301 | Per inserire del testo basta premere i tasti corrispondenti alle varie | ||
| 302 | lettere che lo compongono. I caratteri visibili, come A, 7, *, ecc., sono | ||
| 303 | considerati testo e inseriti immediatamente. Si usa <Return> (il tasto | ||
| 304 | Invio) per inserire un carattere Newline. | ||
| 305 | |||
| 306 | L'ultimo carattere inserito si cancella usando <Delete>. <Delete> è un | ||
| 307 | tasto che si trova sulla tastiera e che potrebbe essere etichettato come | ||
| 308 | "Del" o "Canc". Spesso il tasto "Backspace" (quello con la freccia | ||
| 309 | rivolta verso sinistra sopra il tasto Invio) serve da <Delete>, ma non | ||
| 310 | sempre! | ||
| 311 | |||
| 312 | Più in generale <Delete> cancella il carattere posto immediatamente prima | ||
| 313 | della posizione attuale del cursore. | ||
| 314 | |||
| 315 | >> Prova questo adesso - batti alcuni caratteri e poi cancellali con | ||
| 316 | <Delete> ripetuto alcune volte. Non preoccuparti delle modifiche fatte | ||
| 317 | a questo file: l'esercitazione principale rimarrà intatta, quella che | ||
| 318 | stai usando ne è una tua copia personale. | ||
| 319 | |||
| 320 | Quando una riga di testo diventa troppo lunga per essere visualizzata su | ||
| 321 | una riga di schermo essa viene "continuata" su una seconda riga dello | ||
| 322 | schermo. Un carattere barra retroversa ("\") posto accanto al margine | ||
| 323 | sinistro indica la prosecuzione della riga precedente. Quando si usa un | ||
| 324 | sistema a finestre grafico, invece della barra retroversa comparirà una | ||
| 325 | piccola freccia ricurva. | ||
| 326 | |||
| 327 | >> Inserisci del testo fino a raggiungere il margine destro e poi | ||
| 328 | continua. Vedrai apparire la prosecuzione della riga. | ||
| 329 | >> Usa <Delete> per cancellare il testo fino a quando la riga di testo è | ||
| 330 | di nuovo tutta contenuta in una sola riga dello schermo. La | ||
| 331 | prosecuzione alla riga successiva scompare. | ||
| 332 | |||
| 333 | Si può cancellare un carattere Newline ("a capo", è un carattere che ha un | ||
| 334 | effetto ma non viene visualizzato esplicitamente) proprio come ogni altro. | ||
| 335 | Quando si cancella il carattere Newline che separa due righe queste | ||
| 336 | vengono unite in una riga sola. Se la riga risultante è troppo lunga per | ||
| 337 | essere contenuta dallo schermo allora sarà continuata nella riga | ||
| 338 | successiva. | ||
| 339 | |||
| 340 | >> Muovi il cursore all'inizio di una riga e poi premi <Delete>. Questo | ||
| 341 | unisce la riga alla precedente. | ||
| 342 | >> Premi <Invio> per inserire di nuovo il carattere Newline che hai | ||
| 343 | cancellato. | ||
| 344 | |||
| 345 | Si ricordi che la maggior parte dei comandi di Emacs può ricevere un | ||
| 346 | argomento numerico, compresi i caratteri per inserire il testo. Quando si | ||
| 347 | ripete un carattere di testo questo viene inserito un certo numero di | ||
| 348 | volte. | ||
| 349 | |||
| 350 | >> Prova adesso - inserisci C-u 8 * per ottenere ********. | ||
| 351 | |||
| 352 | Fino ad ora si è visto il modo più semplice di inserire testo in Emacs e | ||
| 353 | di correggere gli errori. In modo analogo è possibile cancellare parola | ||
| 354 | per parola o riga per riga. Ecco un sommario delle operazioni di | ||
| 355 | cancellazione: | ||
| 356 | |||
| 357 | <Delete> cancella il carattere posto subito prima del cursore | ||
| 358 | C-d cancella il carattere posto subito dopo il cursore | ||
| 359 | |||
| 360 | M-<Delete> elimina la parola posta prima del cursore | ||
| 361 | M-d elimina la parola posta subito dopo il cursore | ||
| 362 | |||
| 363 | C-k cancella dalla posizione del cursore fino a fine riga | ||
| 364 | M-k cancella fino alla fine della frase corrente. | ||
| 365 | |||
| 366 | Si osservi che <Delete> e C-d da una parte e M-<Delete> e M-d dall'altra | ||
| 367 | estendono il parallelo tra C-f e M-f (a dire il vero, <Delete> non è un | ||
| 368 | vero e proprio carattere di controllo, ma non preoccupiamoci di questo). | ||
| 369 | C-k è simile a C-e e M-k è simile a M-e, nel senso che i primi operano su | ||
| 370 | righe e i secondi su frasi. | ||
| 371 | |||
| 372 | Si può anche cancellare una qualsiasi parte del buffer in modo uniforme: | ||
| 373 | si sposta il cursore alla fine di quella parte e poi si usa C-@ o C-SPC | ||
| 374 | (uno o l'altro, SPC è la Barra Spaziatrice), poi si muove il cursore | ||
| 375 | all'altro estremo della zona e si preme C-w. Questo cancella tutto il | ||
| 376 | testo posto tra i due estremi. | ||
| 377 | |||
| 378 | >> Sposta il cursore sulla P all'inizio del paragrafo precedente. Premi | ||
| 379 | C-SPC. Emacs dovrebbe mostrarti il messaggio "Mark set" nella parte | ||
| 380 | bassa dello schermo. Muovi il cursore sulla s di "estremi" del | ||
| 381 | paragrafo precedente. Premi C-w. Questo cancellerà il testo a partire | ||
| 382 | dalla `P' e fino alla lettera che precede `s'. | ||
| 383 | |||
| 384 | La differenza tra "killing" (eliminazione) e "deleting" (cancellazione) è | ||
| 385 | che il testo "eliminato" può essere inserito di nuovo, mentre quello che | ||
| 386 | viene cancellato non si può recuperare. L'operazione di reinserimento del | ||
| 387 | testo soppresso si chiama "yanking". In genere i comandi che possono | ||
| 388 | rimuovere molto testo fanno un'operazione di eliminazione (così da poterlo | ||
| 389 | eventualmente reinserire), mentre i comandi che rimuovono un solo | ||
| 390 | carattere o solo righe vuote e spazi effettuano una cancellazione (quindi | ||
| 391 | non è possibile recuperare quel testo). | ||
| 392 | |||
| 393 | >> Muovi il cursore all'inizio di una riga non vuota. Usa C-k per | ||
| 394 | eliminare il testo di quella riga. Premi C-k una seconda volta. Ti | ||
| 395 | accorgerai di come viene cancellato il carattere Newline posto dopo la | ||
| 396 | riga stessa. | ||
| 397 | |||
| 398 | Si noti che un singolo C-k elimina il contenuto di una sola riga, un | ||
| 399 | secondo C-k cancella la riga stessa, e fa spostare in alto tutte le righe | ||
| 400 | successive. C-k usa un eventuale argomento numerico in modo speciale: | ||
| 401 | elimina quel numero di righe ed il loro contenuto. Non è una semplice | ||
| 402 | ripetizione del comando. C-u 2 C-k elimina due righe e i rispettivi | ||
| 403 | caratteri Newline; battere due volte C-k sarebbe diverso. | ||
| 404 | |||
| 405 | Recuperare il testo eliminato è un'operazione chiamata "yanking". | ||
| 406 | (Significa "strappare", si deve pensare di riprendere del testo che era | ||
| 407 | stato portato via). Si può recuperare il testo che è stato eliminato sia | ||
| 408 | nella sua posizione originaria che in un altro punto del buffer o anche in | ||
| 409 | un diverso file. Si può reinserire diverse volte, facendone copie | ||
| 410 | multiple. | ||
| 411 | |||
| 412 | Il comando per fare "yanking" è C-y. Inserisce il testo eliminato per | ||
| 413 | ultimo nel punto in cui si trova attualmente il cursore. | ||
| 414 | |||
| 415 | >> Prova: premi C-y per recuperare il testo di prima. | ||
| 416 | |||
| 417 | Se si eseguono operazioni di eliminazione immediatamente successive il | ||
| 418 | testo eliminato è considerato un tutt'uno e quindi un solo C-y inserirà | ||
| 419 | quelle righe tutte assieme. | ||
| 420 | |||
| 421 | >> Prova adesso, premi C-k alcune volte. | ||
| 422 | |||
| 423 | Adesso, per recuperare il testo eliminato: | ||
| 424 | |||
| 425 | >> Premi C-y. Sposta il cursore alcune righe più in basso e premi di | ||
| 426 | nuovo C-y. Hai appena visto come copiare una parte di testo. | ||
| 427 | |||
| 428 | Cosa succede se c'è del testo da recuperare tra quello eliminato ma è | ||
| 429 | stato eliminato altro testo dopo di esso? C-y restituirebbe il testo | ||
| 430 | dell'ultima eliminazione, tuttavia il testo eliminato in precedenza non è | ||
| 431 | perso. Si recupera con il comando M-y. Dopo aver usato C-y per | ||
| 432 | recuperare il testo più recentemente eliminato, un M-y sostituisce quel | ||
| 433 | testo con quello dell'eliminazione precedente. Premere M-y altre volte | ||
| 434 | recupera il testo delle eliminazioni via via precedenti. Quando è stato | ||
| 435 | trovato il testo cercato non si deve fare altro per tenerlo. Si può | ||
| 436 | andare avanti con la scrittura lasciando il testo recuperato dove si | ||
| 437 | trova. | ||
| 438 | |||
| 439 | Quando si usa M-y un certo numero di volte si arriva di nuovo al testo di | ||
| 440 | partenza (quello eliminato per ultimo). | ||
| 441 | |||
| 442 | >> Elimina una riga, sposta il cursore, elimina un'altra riga. Usa C-y per | ||
| 443 | recuperare la seconda riga eliminata. Premi M-y e verrà sostituita | ||
| 444 | dalla riga eliminata prima. Usa di nuovo M-y e osserva cosa succede. | ||
| 445 | Continua fino a quando non ritrovi la riga che avevi eliminato per | ||
| 446 | seconda. Se vuoi puoi usare un argomento numerico sia positivo che | ||
| 447 | negativo per M-y. | ||
| 448 | |||
| 449 | |||
| 450 | * ANNULLAMENTO | ||
| 451 | -------------- | ||
| 452 | |||
| 453 | Se si modifica il testo e subito dopo ci si accorge di aver fatto un | ||
| 454 | errore si può annullare la modifica con il comando di annullamento C-x u. | ||
| 455 | |||
| 456 | Normalmente C-x u annulla le modifiche fatte da un solo comando; se si usa | ||
| 457 | C-x u alcune volte di seguito ogni ripetizione annulla un comando | ||
| 458 | precedente. | ||
| 459 | |||
| 460 | Ci sono due eccezioni: i comandi che non modificano il testo non contano, | ||
| 461 | tra questi i comandi di spostamento del cursore e quelli di scorrimento | ||
| 462 | del testo; i caratteri inseriti nel testo sono gestiti in gruppi, fino a | ||
| 463 | 20 elementi, ciò per ridurre il numero di C-x u da usare per annullare | ||
| 464 | l'inserimento del testo. | ||
| 465 | |||
| 466 | >> Elimina questa riga con C-k poi usa C-x u e guardala ricomparire. | ||
| 467 | |||
| 468 | C-_ è un comando di annullamento alternativo; funziona come C-x u ma è più | ||
| 469 | semplice da inserire più volte di seguito. Lo svantaggio di C-_ è che su | ||
| 470 | alcune tastiere non è di inserimento immediato. Ecco perché abbiamo | ||
| 471 | previsto anche C-x u. Su alcuni terminali si può ottenere C-_ dal simbolo | ||
| 472 | / mentre si tiene premuto il tasto CONTROL. | ||
| 473 | |||
| 474 | Un argomento numerico per C-x u o C-_ agisce come numero delle ripetizioni | ||
| 475 | da effettuare. | ||
| 476 | |||
| 477 | Si può annullare la cancellazione del testo proprio come se ne annulla | ||
| 478 | l'eliminazione. La distinzione tra l'eliminazione e la cancellazione | ||
| 479 | riguarda solo la possibilità di recuperare il testo con C-y; non c'è | ||
| 480 | differenza rispetto all'operazione di annullamento. | ||
| 481 | |||
| 482 | |||
| 483 | * FILE | ||
| 484 | ------ | ||
| 485 | |||
| 486 | Per conservare in modo permanente il testo inserito biaogna conservarlo in | ||
| 487 | un file, altrimenti sarà perso al termine dell'esecuzione di Emacs. Per | ||
| 488 | inserire il testo in un file bisogna aprire quel file prima di comporre il | ||
| 489 | testo. (Questa operazione si chiama anche "visita" del file.) | ||
| 490 | |||
| 491 | Aprire un file significa osservarne il contenuto all'interno di Emacs. | ||
| 492 | Per molti versi è come se si operasse sul file stesso, tuttavia le | ||
| 493 | modifiche apportate al contenuto non sono definitive fino a quando non si | ||
| 494 | "salva" il file. Tutto questo avviene in modo tale da evitare di lasciare | ||
| 495 | un file su disco quando è modificato solo in parte. Persino quando si | ||
| 496 | salva il file Emacs conserva il contenuto originale dello stesso in un | ||
| 497 | file con un altro nome, nel caso in cui si capisca più tardi che le | ||
| 498 | modifiche sono state un errore. | ||
| 499 | |||
| 500 | Osservando la parte bassa dello schermo si noti che c'è una riga che | ||
| 501 | inizia e finisce con dei trattini e che all'inizio contiene questo testo | ||
| 502 | "--:-- TUTORIAL.it" o qualcosa di simile. Questa parte dello schermo | ||
| 503 | normalmente mostra il nome del file che si sta "visitando". In questo | ||
| 504 | momento si "visita" un file che si chiama "TUTORIAL.it" che è poi una | ||
| 505 | copia dell'esercitazione di Emacs. Quando si apre un file con Emacs il | ||
| 506 | suo nome apparirà sempre in quel punto preciso. | ||
| 507 | |||
| 508 | Una caratteristica particolare del comando per aprire i file è che bisogna | ||
| 509 | fornirgli il nome del file. Diciamo in questo caso che il comando "legge | ||
| 510 | un argomento dal terminale" (l'argomento è proprio il nome del file). | ||
| 511 | Dopo aver scritto il comando | ||
| 512 | |||
| 513 | C-x C-f Trova un file | ||
| 514 | |||
| 515 | Emacs chiede il nome del file. Il nome che si inserisce compare nella | ||
| 516 | riga più in basso sullo schermo. La riga di fondo è chiamata "minibuffer" | ||
| 517 | quando viene usato per questo genere di operazioni di inserimento. Si | ||
| 518 | possono usare i consueti comandi di Emacs per operare sul nome del file. | ||
| 519 | |||
| 520 | Mentre si inserisce il nome del file (oppure ogni altro testo nel | ||
| 521 | minibuffer), si può annullare il comando con un C-g. | ||
| 522 | |||
| 523 | >> Premi C-x C-f, poi premi C-g. Questo vuota il "minibuffer" e | ||
| 524 | interrompe l'esecuzione del comando C-x C-f che stava usando il | ||
| 525 | "minibuffer". Quindi non sarà aperto alcun file. | ||
| 526 | |||
| 527 | Quando si finisce di indicare il nome del file bisogna premere <Invio> per | ||
| 528 | portare a termine il comando. Il comando C-x C-f inizia il suo lavoro e | ||
| 529 | trova il file che è stato scelto. Il "minibuffer" scompare quando il | ||
| 530 | comando C-x C-f ha terminato l'esecuzione. | ||
| 531 | |||
| 532 | Subito dopo, il contenuto del file compare sullo schermo e si può | ||
| 533 | modificare a piacere. Quando si desidera rendere permanenti le modifiche | ||
| 534 | si usa il comando | ||
| 535 | |||
| 536 | C-x C-s Salva il file | ||
| 537 | |||
| 538 | Questo copia il testo contenuto in Emacs nel file su disco. La prima | ||
| 539 | volta che si effetta questa operazione Emacs dà un nuovo nome al file | ||
| 540 | originale in modo da conservarlo. Il nuovo nome è ottenuto aggiungendo un | ||
| 541 | carattere "~" alla fine del nome originale. | ||
| 542 | |||
| 543 | Quando il salvataggio è terminato Emacs mostra il nome del file appena | ||
| 544 | scritto. Si dovrebbero salvare le modifiche piuttosto spesso in modo da | ||
| 545 | non perdere troppo lavoro se per caso il sistema dovesse bloccarsi. | ||
| 546 | |||
| 547 | >> Usa C-x C-f per salvare la tua copia di questa esercitazione. Questo | ||
| 548 | dovrebbe mostrare il messaggio "Wrote ...TUTORIAL.it" nella parte bassa | ||
| 549 | dello schermo. | ||
| 550 | |||
| 551 | NOTA: su alcuni sistemi il comando C-x C-s bloccherà lo schermo e poi non | ||
| 552 | si vedrà più alcun altro messaggio da Emacs. Questo significa che una | ||
| 553 | caratteristica del sistema operativo chiamata "controllo di flusso" sta | ||
| 554 | intercettando il carattere C-s e non gli permette di arrivare fino ad | ||
| 555 | Emacs. Per sbloccare lo schermo si può usare C-q. Poi si legga la | ||
| 556 | sezione "Spontaneous Entry to Incremental Search" nel manuale di Emacs per | ||
| 557 | suggerimenti su come gestire questa caratteristica del proprio sistema. | ||
| 558 | |||
| 559 | Si può aprire un file già esistente per leggerlo o modificarlo. Si può | ||
| 560 | anche "visitare" un file che ancora non esiste. Questo è un modo per | ||
| 561 | creare un nuovo file con Emacs: si apre il file che sarà inizialmente | ||
| 562 | vuoto e quindi si inizia ad inserire il testo. Quando si chiederà di | ||
| 563 | salvare il file Emacs lo creerà ed esso conterrà tutto il testo che è | ||
| 564 | stato inserito. Da quel punto in poi si potrà pensare di operare su un | ||
| 565 | file già esistente. | ||
| 566 | |||
| 567 | |||
| 568 | * BUFFER | ||
| 569 | -------- | ||
| 570 | |||
| 571 | Se si apre un secondo file con C-x C-f il primo rimane aperto all'interno | ||
| 572 | di Emacs. Si può tornare a visualizzarlo "visitandolo" di nuovo con il | ||
| 573 | comando C-x C-f. In questo modo si possono aprire quanti file si vogliono | ||
| 574 | all'interno di Emacs. | ||
| 575 | |||
| 576 | >> Crea un file chiamato "pippo" usando C-x C-f pippo <Invio>. Inserisci | ||
| 577 | del testo e poi salva "pippo" con C-x C-s. Poi usa C-x C-f TUTORIAL.it | ||
| 578 | <Invio> per tornare all'esercitazione. | ||
| 579 | |||
| 580 | Emacs conserva il testo di ogni file all'interno di un oggetto chiamato | ||
| 581 | "buffer". La "visita" di un file produce un nuovo buffer all'interno di | ||
| 582 | Emacs. Per guardare una lista dei buffer che esistono attualmente nella | ||
| 583 | tua sessione di Emacs si usa | ||
| 584 | |||
| 585 | C-x C-b Elenca buffer | ||
| 586 | |||
| 587 | >> Prova C-x C-b adesso. | ||
| 588 | |||
| 589 | Si osservi come ogni buffer abbia un nome e come possa avere anche il nome | ||
| 590 | di un file del quale conserva il contenuto. Alcuni buffer non | ||
| 591 | corrispondono ad alcun file. Per esempio il buffer che ha nome "*Buffer | ||
| 592 | List*" non ha un file corrispondente, è quello che contiene la lista che è | ||
| 593 | stata creata da C-x C-b. OGNI testo che si legge all'interno di Emacs è | ||
| 594 | sempre parte di un buffer. | ||
| 595 | |||
| 596 | >> Usa C-x 1 per eliminare la lista dei buffer. | ||
| 597 | |||
| 598 | Se si modifica in qualche modo il testo di un file e poi si visita un altro | ||
| 599 | file questo non comporta un salvataggio del primo. Le modifiche rimangono | ||
| 600 | solo all'interno di Emacs, nel buffer relativo a quel file. La creazione | ||
| 601 | o la modifica del buffer del secondo file non ha alcun effetto sul buffer | ||
| 602 | del primo. Sarebbe fastidioso dover tornare al primo file con C-x C-f per | ||
| 603 | salvarlo con C-x C-s. Così c'è il comando | ||
| 604 | |||
| 605 | C-x s Salva alcuni buffer | ||
| 606 | |||
| 607 | C-x s chiede conferma del salvataggio per ogni buffer che contiene testo | ||
| 608 | modificato e non ancora salvato. Chiede, per ognuno di quei buffer, se si | ||
| 609 | voglia salvarne il contenuto nel file corrispondente. | ||
| 610 | |||
| 611 | >> Inserisci una riga di testo e poi premi C-x s. Dovrebbe chiederti se | ||
| 612 | vuoi salvare il buffer chiamato TUTORIAL.it. Rispondi di sì battendo | ||
| 613 | "y". | ||
| 614 | |||
| 615 | |||
| 616 | * ESTENDERE L'INSIEME DEI COMANDI | ||
| 617 | --------------------------------- | ||
| 618 | |||
| 619 | Emacs ha molti comandi in più rispetto a quelli che potrebbero trovare | ||
| 620 | posto su tutti i caratteri CONTROL e META. Emacs risolve questo problema | ||
| 621 | usando il comando "estendi" (eXtend). Ce ne sono di due tipi: | ||
| 622 | |||
| 623 | C-x Comando esteso carattere. Seguito da un carattere. | ||
| 624 | M-x Comando esteso con nome. Seguito da un nome di comando. | ||
| 625 | |||
| 626 | Si tratta di comandi utili ma meno utilizzati di quelli che già osservati. | ||
| 627 | Se ne sono visti due: il comando C-x C-f per visitare un file e quello C-x | ||
| 628 | C-s per salvarlo. Un altro esempio è quello che serve per chiudere la | ||
| 629 | sessione Emacs - cioè il comando C-x C-c. Non bisogna temere di perdere | ||
| 630 | le modifiche fatte: C-x C-c propone infatti di salvare ogni file | ||
| 631 | modificato prima di chiudere Emacs. | ||
| 632 | |||
| 633 | C-z è il comando che serve per uscire da Emacs *temporaneamente* - così da | ||
| 634 | poter tornare alla stessa sessione di Emacs in un momento successivo. | ||
| 635 | |||
| 636 | Su sistemi che lo permettono C-z "sospende" Emacs, cioè riporta alla shell | ||
| 637 | che lo aveva invocato senza però porre termine alla sessione attuale. | ||
| 638 | Nelle shell più comuni si può riaprire la sessione in corso con il comando | ||
| 639 | `fg' oppure con `%emacs'. | ||
| 640 | |||
| 641 | Su sistemi che non prevedono la possibilità di "sospensione", C-z crea una | ||
| 642 | subshell che funziona all'interno di Emacs per dare la possibilità di | ||
| 643 | usare altri programmi e poi tornare a Emacs successivamente; in pratica | ||
| 644 | non fa "uscire" veramente da Emacs. In questo caso il comando di shell | ||
| 645 | `exit' è il modo comune per tornare ad Emacs dalla subshell. | ||
| 646 | |||
| 647 | Il momento di usare C-x C-c è quando si sta per effettuare il log-out dal | ||
| 648 | sistema. È anche il comando giusto quando si deve chiudere Emacs che è | ||
| 649 | stato invocato da un programma che gestisce la posta o da altri programmi | ||
| 650 | simili, dal momento che essi potrebbero non riuscire a gestire la | ||
| 651 | sospensione di Emacs. In circostanze normali, invece, se non si è sul | ||
| 652 | punto di fare un log-out è meglio sospendere l'esecuzione di Emacs | ||
| 653 | piuttosto che interromperla. | ||
| 654 | |||
| 655 | Ci sono molti comandi che usano C-x. Ecco una lista di quelli già | ||
| 656 | conosciuti: | ||
| 657 | |||
| 658 | C-x C-f Apri un file. | ||
| 659 | C-x C-s Salva un file. | ||
| 660 | C-x C-b Elenca buffer. | ||
| 661 | C-x C-c Chiudi Emacs. | ||
| 662 | C-x 1 Elimina tutte le finestre tranne una. | ||
| 663 | C-x u Annulla. | ||
| 664 | |||
| 665 | I comandi estesi con nome sono usati ancora meno spesso, oppure sono usati | ||
| 666 | solo in certi "modi" di esecuzione. Un esempio è il comando | ||
| 667 | replace-string per sostituire in tutto il testo una stringa di caratteri | ||
| 668 | con un'altra. Quando si usa M-x Emacs visualizza "M-x" nella parte bassa | ||
| 669 | dello schermo, quindi si deve inserire per esteso il nome del comando; in | ||
| 670 | questo caso "replace-string". Inserisci solo "repl s<TAB>" ed Emacs | ||
| 671 | completerà da solo il nome. (<TAB> è il tasto di tabulazione, che si | ||
| 672 | trova di solito sul lato sinistro della tastiera sopra al tasto Blocca | ||
| 673 | Maiuscole). Concludi l'inserimento del comando con il tasto <Invio>. | ||
| 674 | |||
| 675 | Il comando replace-string richiede due argomenti: la stringa da sostituire | ||
| 676 | e quella con cui sostituirla. Bisogna indicare la fine di ogni argomento | ||
| 677 | con <Invio>. | ||
| 678 | |||
| 679 | >> Muovi il cursore sulla riga bianca qui sotto, quindi batti M-x repl s | ||
| 680 | <Invio> cambiata <Invio> modificata <Invio>. | ||
| 681 | |||
| 682 | Osserva come questa riga è cambiata: hai sostituito la parola cam-bia-ta | ||
| 683 | con "modificata" tutte le volte che quella compariva nel testo, a partire | ||
| 684 | dalla posizione iniziale del cursore. | ||
| 685 | |||
| 686 | |||
| 687 | * SALVATAGGIO AUTOMATICO | ||
| 688 | ------------------------ | ||
| 689 | |||
| 690 | Quando si apportano delle modifiche ad un file ma non sono ancora state | ||
| 691 | salvate potrebbero essere perse se per caso il sistema si bloccasse. Per | ||
| 692 | proteggerti da questa eventualità Emacs scrive periodicamente un file di | ||
| 693 | "salvataggio automatico" per ogni file che si sta scrivendo. Il nome del | ||
| 694 | file di salvataggio automatico ha un carattere # all'inizio e alla fine; | ||
| 695 | per esempio se il file si chiama "ciao.c" il nome del file di salvataggio | ||
| 696 | automatico sarà "#ciao.c#". Quando si salva il file nel modo consueto | ||
| 697 | Emacs cancella il file di salvataggio automatico. | ||
| 698 | |||
| 699 | Se il computer si blocca si può recuperare il file salvato automaticamente | ||
| 700 | aprendo il file in modo normale (il file che si stava scrivendo, non | ||
| 701 | quello di salvataggio automatico) e usando poi M-x recover file<Invio>. | ||
| 702 | Quando viene chiesta la conferma si risponda con yes<Invio> per andare | ||
| 703 | avanti nel recupero dei dati salvati automaticamente. | ||
| 704 | |||
| 705 | |||
| 706 | * AREA DI ECO | ||
| 707 | ------------- | ||
| 708 | |||
| 709 | Se Emacs si accorge che si inseriscono comandi multicarattere in modo | ||
| 710 | troppo lento allora mostra la sequenza nella parte bassa dello schermo in | ||
| 711 | un'area chiamata "area di eco". L'area in questione contiene l'ultima riga | ||
| 712 | dello schermo. | ||
| 713 | |||
| 714 | |||
| 715 | * MODE LINE | ||
| 716 | ----------- | ||
| 717 | |||
| 718 | La riga immediatamente sopra all'area di eco è chiamata "mode line" (riga | ||
| 719 | di modo). La "mode line" si presenta più o meno così: | ||
| 720 | |||
| 721 | --:** TUTORIAL.it (Fundamental)--L720--64%--------------- | ||
| 722 | |||
| 723 | Questa riga fornisce informazioni utili sullo stato di Emacs e sul testo | ||
| 724 | che si inserisce. | ||
| 725 | |||
| 726 | Abbiamo già visto cosa significa il nome del file - è il file che si sta | ||
| 727 | visitando. --NN%-- (due cifre e il segno %) indica la posizione attuale | ||
| 728 | nel testo: significa che NN percento del testo si trova sopra al margine | ||
| 729 | superiore dello schermo. Se si visualizza l'inizio del file ci sarà | ||
| 730 | scritto --Top-- (inizio) invece che --00%--. Se invece ci si trova alla | ||
| 731 | fine del file ci sarà scritto --Bot-- (fine). Se si osserva un file | ||
| 732 | talmente piccolo da essere visualizzato per intero sullo schermo allora la | ||
| 733 | "mode line" indicherà --All-- (tutto). | ||
| 734 | |||
| 735 | La lettera L e le cifre indicano il numero di riga (Line) del punto | ||
| 736 | indicato dal cursore in quel momento. | ||
| 737 | |||
| 738 | I due asterischi vicino all'inizio indicano che sono state fatte delle | ||
| 739 | modifiche al testo. Se il file è stato appena aperto o appena salvato | ||
| 740 | quella parte della "mode line" non mostra alcun asterisco, solo trattini. | ||
| 741 | |||
| 742 | La parte di "mode line" racchiusa tra parentesi serve ad indicare in quale | ||
| 743 | modo di scrittura ci si trovi. Il modo standard è "Fundamental" ed è | ||
| 744 | quello che probabilmente è attivo adesso. È un esempio di "modalità | ||
| 745 | primaria" (major mode). | ||
| 746 | |||
| 747 | Emacs ha tanti diversi tipi di "modalità primarie". Alcuni di questi | ||
| 748 | servono per la scrittura di diversi linguaggi di programmazione e/o tipi | ||
| 749 | di testo, come la modalità Lisp, la modalità Testo, ecc. In un | ||
| 750 | determinato momento una sola "modalità primaria" alla volta può essere | ||
| 751 | attiva, e il suo nome è visualizzato sulla "mode line", proprio come | ||
| 752 | "Fundamental" lo è adesso. | ||
| 753 | |||
| 754 | Ogni "modalità primaria" condiziona il comportamento di alcuni comandi. | ||
| 755 | Per esempio ci sono comandi per creare commenti in un programma e, dal | ||
| 756 | momento che ogni linguaggio di programmazione ha un diverso tipo di | ||
| 757 | commento, ogni "modalità primaria" deve inserire i commenti in modo | ||
| 758 | diverso. Ogni "modalità primaria" è anche il nome di un comando esteso | ||
| 759 | con nome che serve per attivare quella "modalità primaria". Per esempio | ||
| 760 | M-x fundamental-mode è il comando per attivare la modalità primaria | ||
| 761 | "Fundamental". | ||
| 762 | |||
| 763 | Se si vuole inserire del testo in italiano, come questo file, serve | ||
| 764 | probabilmente la modalità testo ("text-mode"). | ||
| 765 | |||
| 766 | >> Inserisci M-x text mode<Invio>. | ||
| 767 | |||
| 768 | Non preoccuparti, nessuno dei comandi che hai imparato verrà modificato in | ||
| 769 | modo sostanziale. Tuttavia adesso puoi osservare come M-f e M-b | ||
| 770 | considerino gli apostrofi come parti di parole. Al contrario, nella | ||
| 771 | modalità "Fundamental", M-f e M-b consideravano gli apostrofi dei | ||
| 772 | separatori di parole. | ||
| 773 | |||
| 774 | Le "modalità primarie" di solito producono nei comandi piccoli cambiamenti | ||
| 775 | come questo: la maggior parte di essi "fa lo stesso lavoro" ma in maniera | ||
| 776 | appena diversa. | ||
| 777 | |||
| 778 | Per leggere la documentazione sulla "modalità primaria" attuale si usa | ||
| 779 | C-h m. | ||
| 780 | |||
| 781 | >> Usa C-u C-v una o più volte per portare questa riga vicino all'inizio | ||
| 782 | dello schermo. Usa C-h m per leggere come il "text-mode" (modo testo) | ||
| 783 | differisce dalla modalità "Fundamental". Premi C-x 1 per eliminare la | ||
| 784 | finestra contenente la documentazione. | ||
| 785 | |||
| 786 | Le "modalità primarie" sono chiamate così perché ci sono anche delle | ||
| 787 | "modalità secondarie" (minor modes). Le "modalità secondarie" non sono | ||
| 788 | alternative alle "modalità primarie" ma solo piccole varianti di esse. | ||
| 789 | Ogni "modalità secondaria" può essere attivata o disattivata | ||
| 790 | indipendentemente da tutte le altre "modalità secondarie" e | ||
| 791 | indipendentemente dalla "modalità primaria" attiva in quel momento. Si | ||
| 792 | può quindi usare nessuna "modalità secondaria", una soltanto oppure ogni | ||
| 793 | altra combinazione di modalità secondarie. | ||
| 794 | |||
| 795 | Una "modalità secondaria" molto utile, specialmente per il testo italiano, | ||
| 796 | è la modalità "Auto Fill". Quando questa modalità è attiva, Emacs | ||
| 797 | interrompe la riga tra due parole ogni volta che, nel corso | ||
| 798 | dell'inserimento, essa diventa troppo lunga. | ||
| 799 | |||
| 800 | Si può attivare il modo "Auto Fill" con: M-x auto fill mode<Invio>. | ||
| 801 | Quando la modalità suddetta è attiva può essere disattivata con M-x auto | ||
| 802 | fill mode<Invio>. Se la modalità è disattivata questo comando la attiva, | ||
| 803 | viceversa se è già attiva. Un comando che funziona così si comporta come | ||
| 804 | un interruttore, attiva o disattiva qualcosa ogni volta che viene premuto. | ||
| 805 | |||
| 806 | >> Usa M-x auto fill mode<Invio> adesso. Inserisci una riga di "asdf" | ||
| 807 | ripetuti fino a quando non la vedi dividersi in due righe. Devi | ||
| 808 | interporre degli spazi perché la modalità "Auto Fill" spezza le righe | ||
| 809 | solo in corrispondenza di uno spazio. | ||
| 810 | |||
| 811 | Il margine di solito è predisposto a 70 caratteri ma può essere spostato | ||
| 812 | con il comando C-x f. Bisogna fornire al comando l'argomento numerico del | ||
| 813 | margine che si desidera. | ||
| 814 | |||
| 815 | >> Usa C-x f con un argomento di 20 (C-u 2 0 C-x f), poi inserisci del | ||
| 816 | testo e osserva come Emacs interrompe le righe a 20 caratteri. Infine | ||
| 817 | torna di nuovo a un margine di 70 caratteri con C-x f. | ||
| 818 | |||
| 819 | Se si modifica il testo all'interno di un paragrafo la modalità | ||
| 820 | "Auto Fill" non | ||
| 821 | lo risistema. | ||
| 822 | Per risistemare i margini di un paragrafo | ||
| 823 | si usa M-q (META-q) | ||
| 824 | quando il cursore si trova in quel paragrafo. | ||
| 825 | |||
| 826 | >> Muovi il cursore sul paragrafo precedente e premi M-q. | ||
| 827 | |||
| 828 | |||
| 829 | * CERCARE DEL TESTO | ||
| 830 | ------------------- | ||
| 831 | |||
| 832 | Emacs può effettuare la ricerca di stringhe (che sono gruppi di caratteri | ||
| 833 | contigui o parole) in posizione sia successiva che precedente nel testo. | ||
| 834 | Cercare una stringa è un comando che provoca lo spostamento del cursore: | ||
| 835 | lo porta lì dove la stringa compare. | ||
| 836 | |||
| 837 | Il comando di ricerca di Emacs è diverso da quello di molti altri editor | ||
| 838 | perché è "incrementale". Ciò significa che la ricerca avviene proprio | ||
| 839 | mentre si inserisce la stringa da cercare. | ||
| 840 | |||
| 841 | I comandi per iniziare la ricerca sono C-s per quella in avanti e C-r per | ||
| 842 | quella all'indietro nel testo. ASPETTA! Non provarli ora. | ||
| 843 | |||
| 844 | Quando si preme C-s si vede comparire il messaggio "I-search" nell'"area | ||
| 845 | di eco", ciò significa che Emacs aspetta che si indichi ciò che deve | ||
| 846 | cercare. <Invio> serve a concludere la ricerca. | ||
| 847 | |||
| 848 | >> Adesso usa C-s per inziare la ricerca. LENTAMENTE, una lettera alla | ||
| 849 | volta, inserisci la parola `cursore', facendo una pausa dopo ogni | ||
| 850 | carattere scritto per vedere cosa succede al cursore. Hai cercato | ||
| 851 | "cursore" una volta sola. | ||
| 852 | >> Usa C-s un'altra volta per trovare il punto in cui la parola "cursore" | ||
| 853 | compare successivamente. | ||
| 854 | >> Adesso premi <Delete> quattro volte e osserva come si muove il cursore. | ||
| 855 | >> Premi <Invio> per concludere la ricerca. | ||
| 856 | |||
| 857 | Hai visto cos'è successo? Durante una ricerca incrementale Emacs prova ad | ||
| 858 | andare al punto successivo in cui compare la stringa indicata fino a quel | ||
| 859 | momento. Per raggiungere il punto successivo in cui compare di nuovo | ||
| 860 | `cursore' basta solo premere C-s ancora una volta. Se la stringa cercata | ||
| 861 | non compare in alcun punto successivo Emacs emette un "beep" e informa che | ||
| 862 | la ricerca non è andata a buon fine ("failing"). C-g è un modo | ||
| 863 | alternativo per concludere la ricerca. | ||
| 864 | |||
| 865 | NOTA: su alcuni sistemi il comando C-s bloccherà lo schermo e poi non si | ||
| 866 | vedrà alcun altro messaggio da Emacs. Questo significa che una | ||
| 867 | caratteristica del sistema operativo chiamata "controllo di flusso" sta | ||
| 868 | intercettando il carattere C-s e non gli permette di arrivare fino ad | ||
| 869 | Emacs. Per sbloccare lo schermo si può usare C-q. Poi si legga la | ||
| 870 | sezione "Spontaneous Entry to Incremental Search" nel manuale di Emacs per | ||
| 871 | suggerimenti su come gestire questa caratteristica del proprio sistema. | ||
| 872 | |||
| 873 | Se durante una ricerca incrementale si preme il tasto <Delete> ci si | ||
| 874 | accorgerà che l'ultimo carattere della stringa da cercare scompare e la | ||
| 875 | ricerca torna all'ultimo risultato trovato prima che fosse stato scritto. | ||
| 876 | Per esempio, supponiamo di aver battuto una "c" e di aver trovato la prima | ||
| 877 | "c" che compare nel testo. Se poi aggiungiamo una "u" il cursore si | ||
| 878 | sposta alla prima stringa "cu" che trova. Ora se si preme <Delete> la "u" | ||
| 879 | viene cancellata dalla stringa da cercare e il cursore torna sulla "c" che | ||
| 880 | era stata trovata in precedenza. | ||
| 881 | |||
| 882 | Se ci si trova nel mezzo di una operazione di ricerca e si usa un | ||
| 883 | carattere control o meta (con poche eccezioni - i caratteri che hanno | ||
| 884 | significato particolare durante la ricerca sono C-s e C-r) allora la | ||
| 885 | ricerca viene conclusa. | ||
| 886 | |||
| 887 | Il comando C-s inizia la ricerca di ogni presenza della stringa in | ||
| 888 | posizione SUCCESSIVA a quella attuale del cursore. Se si vuole cercare | ||
| 889 | qualcosa che nel testo precede il cursore allora bisogna usare il comando | ||
| 890 | C-r. Tutto quello che abbiamo detto su C-s si applica allo stesso modo | ||
| 891 | per C-r, invertendo ovviamente la direzione di ricerca. | ||
| 892 | |||
| 893 | |||
| 894 | * FINESTRE MULTIPLE | ||
| 895 | ------------------- | ||
| 896 | |||
| 897 | Una delle caratteristiche interessanti di Emacs è che si possono | ||
| 898 | visualizzare più finestre sullo schermo nello stesso momento. | ||
| 899 | |||
| 900 | >> Muovi il cursore su questa riga e inserisci C-u 0 C-l (è CONTROL-L, non | ||
| 901 | CONTROL-1). | ||
| 902 | >> Adesso usa C-x 2 che divide lo schermo in due parti. Entrambe le | ||
| 903 | finestre visualizzano questo tutorial. Il cursore si trova nella | ||
| 904 | finestra superiore. | ||
| 905 | >> Premi C-M-v per far scorrere la finestra inferiore. (Se non hai un | ||
| 906 | tasto META usa <ESC> C-v.) | ||
| 907 | >> Usa C-x o per muovere il cursore nella finestra inferiore. | ||
| 908 | >> Usa C-v e M-v nella finestra inferiore per farvi scorrere il testo. | ||
| 909 | Continua a leggere queste indicazioni nella finestra superiore. | ||
| 910 | >> Premi C-x o di nuovo per muovere il cursore nella finestra superiore. | ||
| 911 | Il cursore si trova sul punto che occupava in precedenza. | ||
| 912 | |||
| 913 | Si può continuare a usare C-x o per andare da una finestra all'altra. Ogni | ||
| 914 | finestra ha la sua posizione per il cursore ma solo una alla volta lo | ||
| 915 | visualizza. Tutti i comandi impartiti funzionano sulla finestra in cui si | ||
| 916 | trova il cursore. Noi la chiamiamo la "finestra selezionata". | ||
| 917 | |||
| 918 | Il comando C-M-v è molto utile quando si inserisce del testo in una | ||
| 919 | finestra mentre si usa l'altra solo come riferimento. Si può tenere il | ||
| 920 | cursore sempre nella finestra in cui si lavora e portare avanti | ||
| 921 | sequenzialmente il testo contenuto nell'altra con C-M-v. | ||
| 922 | |||
| 923 | C-M-v è un esempio di carattere CONTROL-META. Se c'è un vero e proprio | ||
| 924 | tasto META si può ottenere C-M-v tenendo premuti contemporaneamente | ||
| 925 | CONTROL e META mentre si batte v. Non importa quale tra CONTROL e META | ||
| 926 | viene premuto per primo perché essi agiscono assieme modificando i | ||
| 927 | caratteri inseriti dopo. | ||
| 928 | |||
| 929 | Se non c'è un tasto META e si usa il tasto ESC l'ordine diventa | ||
| 930 | importante: bisogna premere prima <ESC> e poi farlo seguire da CONTROL-v | ||
| 931 | perché CONTROL-ESC-v non funziona. Questo perché <ESC> è un carattere a | ||
| 932 | sé stante e non uno che ne modifica altri. | ||
| 933 | |||
| 934 | >> Usa C-x 1 (nella finestra superiore) per eliminare la finestra | ||
| 935 | inferiore. | ||
| 936 | |||
| 937 | (Se usi C-x 1 nella finestra inferiore allora viene eliminata quella | ||
| 938 | superiore. Questo comando conserva una sola finestra, quella in cui si | ||
| 939 | trova il cursore.) | ||
| 940 | |||
| 941 | Due finestre aperte contemporaneamente non devono necessariamente | ||
| 942 | contenere lo stesso buffer. Quando si usa C-x C-f per visitare un file in | ||
| 943 | una finestra il contenuto dell'altra non cambia. Si può "visitare" in | ||
| 944 | modo indipendente un file diverso in ogni finestra. | ||
| 945 | |||
| 946 | Ecco un altro modo per usare due finestre per visualizzare cose diverse: | ||
| 947 | |||
| 948 | >> Inserisci C-x 4 C-f seguito dal nome di uno dei tuoi file. Premi | ||
| 949 | <Invio>. Osserva come il file viene aperto nella finestra inferiore. | ||
| 950 | Il cursore si posiziona in quella. | ||
| 951 | >> Usa C-x o per tornare alla finestra superiore e C-x 1 per eliminare | ||
| 952 | quella inferiore. | ||
| 953 | |||
| 954 | |||
| 955 | * LIVELLI DI EDITING RICORSIVO | ||
| 956 | ------------------------------ | ||
| 957 | |||
| 958 | A volte ci si può trovare in quello che si chiama un "livello di editing | ||
| 959 | ricorsivo", ciò è indicato dalla presenza di parentesi quadre nella "mode | ||
| 960 | line", attorno alle parentesi della "modalità primaria" attualmente in | ||
| 961 | uso. Per esempio si potrebbe leggere [(Fundamental)] invece che | ||
| 962 | (Fundamental). | ||
| 963 | |||
| 964 | Per uscire dal livello di editing ricorsivo si usa <ESC> <ESC> <ESC>. È | ||
| 965 | un comando di uscita di uso piuttosto generale, si può anche usare per | ||
| 966 | eliminare finestre in più e per uscire dal "minibuffer". | ||
| 967 | |||
| 968 | >> Usa M-x per entrare nel "minibuffer": poi usa <ESC> <ESC> <ESC> per | ||
| 969 | uscirne. | ||
| 970 | |||
| 971 | Non è possibile usare C-g per uscire da un livello di editing ricorsivo, | ||
| 972 | ciò avviene perché C-g è usato per annullare i comandi all'INTERNO del | ||
| 973 | livello di editing ricorsivo. | ||
| 974 | |||
| 975 | |||
| 976 | * COME IMPARARE ALTRO | ||
| 977 | --------------------- | ||
| 978 | |||
| 979 | In questo tutorial abbiamo provato a fornire le informazioni sufficienti | ||
| 980 | per iniziare ad usare Emacs. Ci sono così tante opzioni in Emacs che | ||
| 981 | sarebbe impossibile spiegarle tutte qui, ma è possibile imparare tutte le | ||
| 982 | altre caratteristiche di Emacs utili per il proprio lavoro. Ci sono | ||
| 983 | comandi per leggere la documentazione dei comandi disponibili in Emacs. | ||
| 984 | Questi comandi di aiuto iniziano tutti con il carattere C-h, che infatti è | ||
| 985 | chiamato "carattere di aiuto (help)". | ||
| 986 | |||
| 987 | Per raggiungere le voci di Aiuto si usa il carattere C-h e poi un altro | ||
| 988 | carattere che specifica la richiesta. Quando davvero non si sa cosa fare | ||
| 989 | si può provare con C-h ? ed Emacs indicherà tutti i tipi di aiuto che può | ||
| 990 | fornire. Se si è attivato l'aiuto con C-h e si decide che non serve più | ||
| 991 | si può annullare la richiesta con C-g. | ||
| 992 | |||
| 993 | Alcuni sistemi fanno un diverso uso del carattere C-h perché questo viene | ||
| 994 | indebitamente modificato dall'amministratore di sistema. A parte | ||
| 995 | rivolgerti allo stesso perché risolva il problema puoi provare ad accedere | ||
| 996 | alla funzione aiuto di Emacs con il tasto F1 oppure con M-x help<Invio>. | ||
| 997 | |||
| 998 | La forma base di aiuto è data da C-h c. Si inserisce C-h, il carattere c | ||
| 999 | e poi un carattere o una sequenza di caratteri; Emacs mostrerà una breve | ||
| 1000 | descrizione del comando stesso. | ||
| 1001 | |||
| 1002 | >> Prova C-h c C-p. Dovresti leggere un messaggio del tipo | ||
| 1003 | |||
| 1004 | C-p runs the command previous-line (purtroppo in inglese!) | ||
| 1005 | |||
| 1006 | Questo messaggio indica il "nome della funzione". I nomi di funzione sono | ||
| 1007 | usati principalmente per personalizzare ed estendere Emacs e sono scelti | ||
| 1008 | anche in modo da indicare che cosa il comando fa. Servono quindi anche da | ||
| 1009 | breve descrizione, sufficiente per ricordarsi di comandi già imparati. | ||
| 1010 | |||
| 1011 | I comandi con più caratteri come ad esempio C-x C-s e (se non c'è il tasto | ||
| 1012 | META o EDIT o ALT) <ESC>v sono permessi allo stesso modo dopo una | ||
| 1013 | richiesta di aiuto fatta con C-h c. | ||
| 1014 | |||
| 1015 | Per avere ulteriori informazioni su un comando si usa C-h k invece che C-h | ||
| 1016 | c. | ||
| 1017 | |||
| 1018 | >> Prova C-h k C-p. | ||
| 1019 | |||
| 1020 | Questo mostrerà la documentazione della funzione, così come il suo nome, | ||
| 1021 | all'interno di una finestra di Emacs. Quando hai finito di leggere usa | ||
| 1022 | C-x 1 per eliminare la finestra con il testo di aiuto. Non sei obbligato | ||
| 1023 | a farlo subito. Puoi anche lavorare sul tuo testo mentre fai riferimento | ||
| 1024 | al testo di aiuto e poi usare un C-x 1. | ||
| 1025 | |||
| 1026 | Ecco altre utili opzioni di C-h: | ||
| 1027 | |||
| 1028 | C-h f Descrive una funzione. Inserisci il nome della funzione. | ||
| 1029 | |||
| 1030 | >> Prova con C-h f previous-line<Invio>. Avrai tutte le informazioni che | ||
| 1031 | Emacs possiede sulla funzione che implementa il comando C-p. | ||
| 1032 | |||
| 1033 | Un comando simile è C-h v che mostra la documentazione di variabili i cui | ||
| 1034 | valori sono utilizzati per personalizzare il comportamento di Emacs. Devi | ||
| 1035 | inserire il nome della variabile quando Emacs lo richiede. | ||
| 1036 | |||
| 1037 | C-h a "Apropos" comando. Inserisci una parola ed Emacs ti | ||
| 1038 | elencherà tutti i comandi il cui nome contiene quella | ||
| 1039 | parola. Questi comandi possono tutti essere eseguiti con | ||
| 1040 | META-x. Per alcuni comandi ti sarà mostrata anche una | ||
| 1041 | sequenza di uno o due caratteri che serve a far partire il | ||
| 1042 | comando senza doverlo inserire per esteso. | ||
| 1043 | |||
| 1044 | >> Prova C-h a file<Invio> | ||
| 1045 | |||
| 1046 | Questo mostrerà in un'altra finestra una lista di tutti i comandi che | ||
| 1047 | contengono la parola "file" nel nome. Nella lista si vedranno | ||
| 1048 | comandi-carattere, come C-x C-f, assieme ai corrispondenti nomi per esteso | ||
| 1049 | come "find-file". | ||
| 1050 | |||
| 1051 | >> Usa C-M-v per far scorrere il testo nella finestra di aiuto. Ripeti | ||
| 1052 | per alcune volte. | ||
| 1053 | >> Usa C-x 1 per eliminare la finestra di aiuto. | ||
| 1054 | |||
| 1055 | C-h i Leggi la documentazione. Questo comando apre un buffer | ||
| 1056 | speciale chiamato `*info*' in cui puoi leggere i manuali | ||
| 1057 | on-line dei pacchetti installati sul tuo sistema. Batti m | ||
| 1058 | emacs <Invio> per leggere il manuale di Emacs. Se non hai | ||
| 1059 | mai usato il sistema Info prima d'ora premi ? ed Emacs ti | ||
| 1060 | guiderà nell'uso delle opzioni del modo Info. Una volta | ||
| 1061 | terminata questa esercitazione il manuale di Emacs contenuto | ||
| 1062 | nel sistema Info dovrebbe diventare la tua principale fonte | ||
| 1063 | di documentazione. | ||
| 1064 | |||
| 1065 | |||
| 1066 | * CONCLUSIONI | ||
| 1067 | ------------- | ||
| 1068 | |||
| 1069 | Ricorda che per chiudere una sessione di Emacs si usa C-x C-c. Per | ||
| 1070 | tornare temporaneamente alla shell, così da poter rientrare in Emacs | ||
| 1071 | successivamente, si usa C-z. | ||
| 1072 | |||
| 1073 | Questo documento è stato creato per essere utile a tutti i nuovi utenti, | ||
| 1074 | se qualcosa per te è stato poco chiaro non dare la colpa a te stesso - | ||
| 1075 | lamentati! | ||
| 1076 | |||
| 1077 | |||
| 1078 | * COPIA | ||
| 1079 | ------- | ||
| 1080 | |||
| 1081 | La versione inglese di questo testo (disponibile nel file "TUTORIAL") | ||
| 1082 | deriva da una lunga serie di tutorial di Emacs che iniziò con quello | ||
| 1083 | scritto da Stuart Cracraft per il primo Emacs. La versione italiana è a | ||
| 1084 | cura di Alfredo Finelli (alfredofnl@tiscali.it). | ||
| 1085 | |||
| 1086 | Questo documento, come GNU Emacs, è coperto da copyright e viene | ||
| 1087 | distribuito con il permesso di farne copie a determinate condizioni: | ||
| 1088 | |||
| 1089 | NOTA BENE: la licenza che definisce a tutti gli effetti i termini | ||
| 1090 | secondo i quali è possibile la copia e la distribuzione di questo | ||
| 1091 | documento è quella originale in lingua inglese contenuta nel file | ||
| 1092 | "TUTORIAL". Qui di seguito se ne riporta una traduzione a scopo | ||
| 1093 | indicativo, restando comunque inteso il fatto che è quella originale a | ||
| 1094 | fare fede. | ||
| 1095 | |||
| 1096 | Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 1097 | |||
| 1098 | È permesso a chiunque copiare e distribuire attraverso ogni mezzo copie | ||
| 1099 | fedeli di questo documento così come viene ricevuto, a condizione che | ||
| 1100 | le informazioni sul copyright e sui permessi garantiti siano conservate | ||
| 1101 | intatte e che il distributore riconosca a colui che riceve la copia il | ||
| 1102 | diritto ad un'ulteriore distribuzione, che deve avvenire così come | ||
| 1103 | definito in questa clausola. | ||
| 1104 | |||
| 1105 | È permesso distribuire versioni modificate di questo documento, o di | ||
| 1106 | ogni sua parte, alle condizioni indicate precedentemente, purché esse | ||
| 1107 | portino chiaramente indicato il nome di colui che le ha modificate per | ||
| 1108 | ultimo. | ||
| 1109 | |||
| 1110 | Le condizioni per copiare Emacs sono più complesse ma definite con lo | ||
| 1111 | stesso spirito. Per favore, leggete il file COPYING e poi distribuite | ||
| 1112 | copie di GNU Emacs ai vostri amici. Aiutateci a combattere | ||
| 1113 | l'ostruzionismo al software ("la proprietà") usando, scrivendo e | ||
| 1114 | condividendo software libero! | ||
| 1115 | |||
| 1116 | ;;; Local Variables: | ||
| 1117 | ;;; coding: latin-1 | ||
| 1118 | ;;; End: | ||
| 1119 | |||
| 1120 | ;;; arch-tag: c6f7079d-8032-473d-91d4-36754af15719 | ||