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