88155
|
1 Tutorialului de Emacs. A se citi sfârșitul pentru condiții.
|
|
2 Traducere din engleză de Tudor Hulubei <tudor@gnu.org>.
|
25853
|
3 Mulțumiri Aidei Hulubei <aida@chang.pub.ro> pentru corecturi și sugestii.
|
|
4
|
|
5 Această versiune a fost produsă plecând de la versiunea în limba
|
|
6 engleză, care este
|
|
7 Copyright (c) 1985 Free Software Foundation, Inc.
|
|
8
|
|
9 Citiți acum versiunea românească a tutorialului de Emacs.
|
|
10
|
|
11 Comenzile Emacs folosesc în general tasta CONTROL (uneori denumită
|
|
12 CTRL sau CTL) sau tasta META (uneori denumita EDIT sau ALT). În loc
|
|
13 să scriem META sau CONTROL de fiecare dată când vrem să prefixăm un
|
|
14 caracter, vom folosi următoarele prescurtări:
|
|
15
|
|
16 C-<chr> înseamnă că țineți apăsată tasta CONTROL în timp ce tastați
|
|
17 caracterul <chr>. Astfel, C-f înseamnă: țineți apăsată tasta
|
|
18 CONTROL și tastați f.
|
|
19
|
|
20 M-<chr> înseamnă că țineți apăsată tasta META, EDIT sau ALT în timp
|
|
21 ce tastați <chr>. Dacă nu există tasta META, EDIT sau ALT,
|
|
22 tastați <ESC>, ridicați și apoi tastați caracterul <chr>.
|
|
23 Am notat cu <ESC> tasta ESC.
|
|
24
|
|
25 Observație importantă: pentru a termina sesiunea Emacs, tastați C-x
|
|
26 C-c. (Două caractere.) Caracterele ">>" la marginea din stânga
|
|
27 reprezintă instrucțiuni pentru a încerca o comandă. De exemplu:
|
|
28 <<Liniile goale introduse aici de inițializarea comenzii help-with-tutorial>>
|
|
29 >> Acum tastați C-v (citirea următorului ecran) pentru a vă muta la
|
|
30 următorul ecran. (Executați această comandă acum, tinând apăsată
|
|
31 tasta CONTROL în timp ce tastați v). De acum înainte faceți acest
|
|
32 lucru din nou, de fiecare dată când terminați de citit ecranul.
|
|
33
|
|
34 De remarcat că există o zonă de suprapunere de două linii când vă
|
|
35 mutați de la un ecran la altul; aveți astfel o oarecare continuitate
|
|
36 în citirea textului.
|
|
37
|
|
38 Primul lucru pe care trebuie să-l stiți este cum să vă deplasați din
|
|
39 loc în loc în text. Știți deja cum să vă mutați la următorul ecran cu
|
|
40 C-v. Pentru a vă deplasa înapoi un ecran, tastați M-v (țineți apăsată
|
|
41 tasta META și tastați v, sau <ESC> v dacă nu aveți o tastă META, EDIT,
|
|
42 sau ALT).
|
|
43
|
|
44 >> Încercați să tastați M-v și apoi C-v de câteva ori.
|
|
45
|
|
46
|
|
47 * SUMAR
|
|
48 -------
|
|
49
|
|
50 Următoarele comenzi sunt utile pentru a vedea ecrane:
|
|
51
|
|
52 C-v avansează un ecran
|
|
53 M-v înapoi un ecran
|
|
54 C-l șterge ecranul și reafișează totul poziționând textul
|
|
55 de lângă cursor în centrul ecranului. (Este C-L, nu
|
|
56 C-1.)
|
|
57
|
|
58 >> Găsiți cursorul și țineți minte ce text este în jurul lui.
|
|
59 Apoi tastați C-l. Găsiți cursorul din nou și observați că textul
|
|
60 de lângă cursor este același.
|
|
61
|
|
62
|
|
63 * COMENZI DE BAZĂ PENTRU CONTROLUL CURSORULUI
|
|
64 ---------------------------------------------
|
|
65
|
|
66 Mutatul ecran cu ecran este util, dar cum vă mutați la o anumită
|
|
67 poziție în textul de pe ecran?
|
|
68
|
|
69 Sunt mai multe modalitați în care puteți face acest lucru. Cel mai
|
|
70 simplu este să folosiți comenzile C-p, C-b, C-f și C-n. Fiecare din
|
|
71 aceste comenzi mută cursorul o linie sau coloană într-o anumită
|
|
72 direcție pe ecran. Diagrama următoare prezintă aceste patru comenzi
|
|
73 și arată direcțiile în care ele mută cursorul.
|
|
74
|
|
75 Linia precedentă, C-p
|
|
76 :
|
|
77 :
|
|
78 Înapoi, C-b .... Poziția curentă a cursorului .... Înainte, C-f
|
|
79 :
|
|
80 :
|
|
81 Linia următoare, C-n
|
|
82
|
|
83 >> Mutați cursorul la linia din mijlocul diagramei folosind C-n sau
|
|
84 C-p. Tastați apoi C-l pentru a vedea întreaga diagramă centrată pe
|
|
85 ecran.
|
|
86
|
|
87 Vi se va părea probabil mai simplu să vă amintiți aceste comenzi
|
|
88 gândindu-vă la semnificația lor în limba engleză: P pentru previous, N
|
|
89 pentru next, B pentru backward și F pentru forward. Acestea sunt
|
|
90 comenzile de bază pentru poziționarea cursorului și le veți folosi tot
|
|
91 timpul, deci ar fi foarte util să le învățați acum.
|
|
92
|
|
93 >> Tastați câteva C-n-uri pentru a aduce cursorul la această linie.
|
|
94
|
|
95 >> Mutați-vă în interiorul liniei cu C-f-uri și apoi în sus cu
|
|
96 C-p-uri. Urmăriți ce face C-p atunci când cursorul este în
|
|
97 mijlocul liniei.
|
|
98
|
|
99 Fiecare linie se termină cu un caracter NEWLINE care o separă de linia
|
|
100 următoare. Ultima linie în fișierele dumneavoastră ar trebui să aibă
|
|
101 un asemenea caracter la sfârșit (deși Emacs-ul nu-l necesită).
|
|
102
|
|
103 >> Încercați să tastați C-b la începutul unei linii. Cursorul ar
|
|
104 trebui să se mute la sfârșitul liniei precedente, din cauza
|
|
105 trecerii peste caracterul NEWLINE.
|
|
106
|
|
107 C-f poate să treacă peste un caracter NEWLINE, la fel ca și C-b.
|
|
108
|
|
109 >> Tastați câteva C-b-uri, pentru a vă familiariza cu poziția
|
|
110 cursorului. Tastați apoi câteva C-f-uri pentru a vă întoarce la
|
|
111 sfârșitul liniei. Încă un C-f și vă veți muta la linia următoare.
|
|
112
|
|
113 Când ajungeți să treceți peste începutul sau sfârșitul ecranului,
|
|
114 textul aflat dincolo de margine intră în ecran, permițându-i
|
|
115 Emacs-ului să mute cursorul la poziția specificată, fără a ieși din
|
|
116 zona vizibilă (ecran). Această operațiune se numeste în limba engleză
|
|
117 "scrolling".
|
|
118
|
|
119 >> Încercați să mutați cursorul în afara părții de jos a ecranului cu
|
|
120 C-n și observați ce se întamplă.
|
|
121
|
|
122 Dacă mutatul caracter cu caracter este lent, puteți muta cursorul
|
|
123 cuvânt cu cuvânt. M-f (META-f) avansează cursorul cu un cuvânt, iar
|
|
124 M-b mută cursorul un cuvânt înapoi.
|
|
125
|
|
126 >> Tastați câteva M-f-uri și apoi câteva M-b-uri.
|
|
127
|
|
128 Când cursorul este în mijlocul unui cuvânt, M-f îl mută la sfârșitul
|
|
129 cuvântului. Când cursorul este în spațiul dintre cuvinte, M-f îl mută
|
|
130 la sfârșitul cuvântului următor. M-b acționează similar, dar în
|
|
131 direcția opusă.
|
|
132
|
|
133 >> Tastați M-f și M-b de câteva ori, intercalate cu C-f-uri și
|
|
134 C-b-uri, pentru a observa efectul comenzilor M-f și M-b din diverse
|
|
135 poziții în interiorul cuvintelor și între ele.
|
|
136
|
|
137 Observați paralela între C-f și C-b pe de o parte, și M-f și M-b pe de
|
|
138 cealaltă parte. De multe ori, caracterele META sunt folosite pentru
|
|
139 operații referitoare la unitățile definite de limbaj (cuvinte, fraze,
|
|
140 paragrafe), în timp ce caracterele CONTROL operează pe unități de
|
|
141 bază, care sunt independente de tipul textului editat (caractere,
|
|
142 linii, etc).
|
|
143
|
|
144 Această paralelă se aplică și între linii și fraze: C-a și C-e mută
|
|
145 cursorul la începutul și, respectiv sfârșitul unei linii, în timp ce
|
|
146 M-a și M-e îl mută la începutul și, respectiv sfârșitul unei fraze.
|
|
147
|
|
148 >> Încercați câteva C-a-uri, apoi câteva C-e-uri.
|
|
149 Încercați câteva M-a-uri, apoi câteva M-e-uri.
|
|
150
|
|
151 Remarcați cum repetarea tastării lui C-a nu schimbă nimic, în timp ce
|
|
152 repetarea tastării lui M-a mută cursorul la fraza următoare. Deși
|
|
153 aceste operații nu sunt tocmai analoage, fiecare pare naturală.
|
|
154
|
|
155 Poziția cursorului în text mai este numită și "punct" ("point" în
|
|
156 limba engleză). Cursorul arată pe ecran poziția punctului în text.
|
|
157
|
|
158 Operațiile ce mută cursorul (inclusiv comenzile ce mută cursorul
|
|
159 cuvânt cu cuvânt sau frază cu frază) sunt prezentate în sumarul
|
|
160 următor:
|
|
161
|
|
162 C-f avansează un caracter
|
|
163 C-b înapoi un caracter
|
|
164
|
|
165 M-f avansează un cuvânt
|
|
166 M-b înapoi un cuvânt
|
|
167
|
|
168 C-n avansează o linie
|
|
169 C-p înapoi o linie
|
|
170
|
|
171 C-a înapoi la începutul liniei
|
|
172 C-e avansează la sfârșitul liniei
|
|
173
|
|
174 M-a înapoi la începutul frazei
|
|
175 M-e avansează la sfârșitul frazei
|
|
176
|
|
177 >> Exersați toate aceste comenzi acum, sunt comenzile cele mai des
|
|
178 folosite.
|
|
179
|
|
180 Două alte comenzi importante legate de mutatul cursorului sunt M-<
|
|
181 (META Mai-mic), care mută cursorul la începutul textului, și M-> (META
|
|
182 Mai-mare), care mută cursorul la sfârșitul textului.
|
|
183
|
|
184 Pe majoritatea terminalelor "<" este deasupra virgulei și deci este
|
|
185 necesar să apăsați tasta SHIFT în același timp. Pe aceste terminale
|
|
186 este nevoie să apăsați SHIFT și când tastați M-<; fără tasta SHIFT,
|
|
187 ați apăsa M-virgulă.
|
|
188
|
|
189 >> Încercați M-< acum, pentru a vă muta la începutul tutorialului.
|
|
190 Folosiți apoi C-v în mod repetat pentru a ajunge înapoi aici.
|
|
191
|
|
192 >> Încercați M-> acum, pentru a vă muta la sfârșitul tutorialului.
|
|
193 Folosiți apoi M-v repetat pentru a ajunge înapoi aici.
|
|
194
|
|
195 Puteți de asemenea să mutați cursorul cu tastele săgeți, dacă
|
|
196 terminalul are asemenea taste. Se recomandă însă acomodarea cu C-b,
|
|
197 C-f, C-n și C-p din trei motive. În primul rând, aceste taste
|
|
198 funcționează pe toate tipurile de terminale. În al doilea rând, odată
|
|
199 ce vă obișnuiți cu Emacs-ul, veți remarca faptul că tastarea lor este
|
|
200 mai rapidă decât cea a tastelor săgeți (pentru că nu trebuie să vă
|
|
201 schimbați poziția mâinilor pe tastatură). În al treilea rând, odată
|
|
202 format obiceiul de a folosi aceste comenzi bazate pe CONTROL,
|
|
203 comenzile avansate de mutat cursorul se învață foarte ușor.
|
|
204
|
|
205 Majoritatea comenzilor Emacs acceptă un argument numeric; pentru
|
|
206 majoritatea comenzilor, acest argument reprezintă un contor de
|
|
207 repetiție. Contorul de repetiție se introduce tastând C-u, cifrele ce
|
|
208 alcătuiesc contorul și apoi comanda. Dacă aveți tasta META (EDIT sau
|
|
209 ALT), există și o altă alternativă pentru a introduce un argument
|
|
210 numeric: tastați cifrele în timp ce țineți tasta META apăsată. Se
|
|
211 recomandă însă folosirea metodei cu C-u, deoarece funcționează pe
|
|
212 orice terminal.
|
|
213
|
|
214 De exemplu, C-u 8 C-f avansează cursorul cu opt caractere.
|
|
215
|
|
216 >> Încercați să folosiți C-n sau C-p cu un argument numeric pentru a
|
|
217 muta cursorul dintr-o singură comandă pe o linie apropiată de
|
|
218 aceasta.
|
|
219
|
|
220 Majoritatea comenzilor utilizează argumentul numeric ca un contor de
|
|
221 repetitie. Anumite comenzi speciale îl folosesc însa în mod diferit.
|
|
222 C-v si M-v sunt printre aceste excepții. Când li se dă un argument
|
|
223 numeric, ele mută ecranul mai sus sau mai jos cu numarul specificat de
|
|
224 linii, nu de ecrane. De exemplu, C-u 4 C-v mută ecranul cu 4 linii.
|
|
225
|
|
226 >> Încercați să tastați C-u 8 C-v acum.
|
|
227
|
|
228 Această comandă trebuie să mute ecranul în sus cu 8 linii. Dacă
|
|
229 doriti să îl mutați înapoi, puteți să-i dați lui M-v un argument
|
|
230 numeric.
|
|
231
|
|
232 Dacă folosiți sistemul X Window, există probabil o zonă rectangulară
|
|
233 numita "scroll bar" la dreapta ferestrei Emacs-ului. Puteți deplasa
|
|
234 textul manipulând "scroll bar"-ul cu mouse-ul.
|
|
235
|
|
236 >> Încercați să apăsați butonul din mijloc al mouse-ului la mijlocul
|
|
237 butonului din scroll bar. Aceasta ar trebui să mute textul la o
|
|
238 poziție determinată de cât de sus sau de jos ați apăsat pe scroll
|
|
239 bar.
|
|
240
|
|
241 >> Încercați să mutați mouse-ul în sus și în jos ținând butonul din
|
|
242 mijloc apăsat. Veți vedea că textul se deplasează în sus și în jos
|
|
243 corespunzător cu mișcarea mouse-ului.
|
|
244
|
|
245
|
|
246 * CÂND EMACS-ul ESTE BLOCAT
|
|
247 ---------------------------
|
|
248
|
|
249 Dacă Emacs-ul încetează să vă raspundă la comenzi, îl puteți opri,
|
|
250 fără să pierdeți modificările făcute până acum, tastând C-g. Puteți
|
|
251 folosi C-g pentru a opri o comandă care durează prea mult.
|
|
252
|
|
253 Puteți de asemenea folosi C-g pentru a opri introducerea unui argument
|
|
254 numeric sau începutul unei comenzi pe care nu doriți să o continuați.
|
|
255
|
|
256 >> Tastați C-u 100 pentru a introduce 100 ca un argument numeric, apoi
|
|
257 tastați C-g. Tastați apoi C-f. Cursorul ar trebui să se mute un
|
|
258 singur caracter, pentru că ați oprit introducerea argumentului
|
|
259 numeric cu C-g.
|
|
260
|
|
261 Dacă ați tastat un <ESC> din greșeală, puteți să-l anulați cu un C-g.
|
|
262
|
|
263
|
|
264 * COMENZI DEZAFECTATE
|
|
265 ---------------------
|
|
266
|
|
267 Anumite comenzi sunt dezafectate în Emacs, în așa fel încât
|
|
268 utilizatorii să nu le poată folosi din neatenție.
|
|
269
|
|
270 Dacă tastați una din comenzile dezafectate, Emacs-ul va afișa un mesaj
|
|
271 spunând ce comandă ați tastat și întrebându-vă dacă doriți să
|
|
272 continuați.
|
|
273
|
|
274 Dacă într-adevăr doriți să încercați comanda respectivă, tastați
|
|
275 SPAȚIU. În mod normal, dacă nu doriți să executați comanda
|
|
276 dezafectată, răspundeți cu "n".
|
|
277
|
|
278 >> Tastați <ESC> : (care este o comandă dezafectată), apoi tastați n
|
|
279 ca răspuns la întrebarea pusă de Emacs.
|
|
280
|
|
281
|
|
282 * FERESTRE
|
|
283 ----------
|
|
284
|
|
285 Emacs-ul poate avea mai multe ferestre, fiecare afișând propriul său
|
|
286 text. Vom explica mai târziu tehnicile de folosire a ferestrelor
|
|
287 multiple. Acum vrem să explicăm cum să închideți ferestrele care ar
|
|
288 putea apare ca rezultat al afișării unor documentații sau rezultate
|
|
289 specifice anumitor comenzi. Este simplu:
|
|
290
|
|
291 C-x 1 o singură fereastră (adică închide toate celelalte
|
|
292 ferestre).
|
|
293
|
|
294 Asta înseamnă CONTROL-x urmat de cifra 1. C-x 1 mărește fereastra
|
|
295 care conține cursorul până când ocupă întregul ecran. Toate celelalte
|
|
296 ferestre sunt distruse.
|
|
297
|
|
298 >> Mutați cursorul la această linie și tastați C-u 0 C-l.
|
|
299
|
|
300 >> Tastați C-h k C-f. Observați cum această fereastră se micșorează,
|
|
301 în timp ce o nouă fereastră apare, afișând documentația comenzii
|
|
302 C-f.
|
|
303
|
|
304 >> Tastați C-x 1 și observați cum noua fereastră dispare.
|
|
305
|
|
306
|
|
307 * INTRODUCEREA ȘI ȘTERGEREA
|
|
308 ---------------------------
|
|
309
|
|
310 Dacă vreți să introduceți text, pur și simplu tastați textul dorit.
|
|
311 Caracterele pe care le puteți vedea, cum ar fi A, 7, *, etc. sunt
|
|
312 interpretate de Emacs ca text și introduse imediat. Tastați <Return>
|
|
313 (tasta mai este etichetată <Enter> uneori) pentru a introduce un
|
|
314 caracter NEWLINE.
|
|
315
|
|
316 Puteți șterge ultimul caracter pe care l-ați introdus tastând
|
|
317 <Delete>. <Delete> este o tastă pe tastatură etichetată "Del" sau
|
|
318 "Delete". În unele cazuri tasta "Backspace" poate acționa ca
|
|
319 <Delete>, dar nu întotdeauna!
|
|
320
|
|
321 Mai general, <Delete> șterge caracterul dinaintea poziției curente a
|
|
322 cursorului.
|
|
323
|
|
324 >> Executați următoarele operații acum - tastați câteva caractere,
|
|
325 apoi ștergeți-le tastând <Delete> de câteva ori. Nu vă temeți că
|
|
326 veți schimba acest fișier; nu veți altera versiunea principală a
|
|
327 tutorialului. Aceasta este copia dumneavoastră personală.
|
|
328
|
|
329 Când o linie de text devine prea mare pentru a putea fi reprezentată
|
|
330 pe o linie de ecran, linia de text este continuată pe următoarea linie
|
|
331 de pe ecran. Un caracter backslash ("\") la marginea din dreapta
|
|
332 indică o linie care a fost continuată.
|
|
333
|
|
334 >> Introduceți text până când depășiți cu câteva caractere marginea
|
|
335 din dreapta a ecranului. Veți observa apariția liniei de
|
|
336 continuare.
|
|
337
|
|
338 >> Folosiți <Delete>-uri pentru a șterge textul până când linia încape
|
|
339 din nou pe o linie de ecran. Linia de continuare va dispărea.
|
|
340
|
|
341 Puteți șterge un caracter NEWLINE ca pe orice alt caracter. Ștergerea
|
|
342 unui NEWLINE dintre două linii concateneaza cele două linii. Dacă
|
|
343 linia rezultată este prea lungă pentru a fi afișată pe ecran, va fi
|
|
344 afișată cu o linie de continuare.
|
|
345
|
|
346 >> Mutați cursorul la începutul unei linii și tastați <Delete>.
|
|
347 Aceasta concatenează linia curentă cu cea precedentă.
|
|
348
|
|
349 >> Tastați <Return> pentru a reintroduce caracterul NEWLINE șters.
|
|
350
|
|
351 Așa cum vă reamintiți, majoritatea comenzilor Emacs pot primi un
|
|
352 argument numeric ce acționează ca un contor de repetiție; introducerea
|
|
353 caracterelor ascultă aceleași reguli. Un argument numeric dat unui
|
|
354 caracter duce la introducerea caracterului respectiv de numărul
|
|
355 specificat de ori.
|
|
356
|
|
357 >> Încercați asta acum - tastați C-u 8 * pentru a introduce ********.
|
|
358
|
|
359 Ați învățat acum metodele elementare de tastat și corectat erori în
|
|
360 Emacs. Puteți de asemenea șterge cuvinte sau linii. Acesta este un
|
|
361 sumar al operațiilor de ștergere.
|
|
362
|
|
363 <Delete> șterge caracterul de dinaintea cursorului
|
|
364 C-d șterge caracterul de după cursor
|
|
365
|
|
366 M-<Delete> șterge cuvântul de dinaintea cursorului
|
|
367 M-d șterge cuvântul de după cursor
|
|
368
|
|
369 C-k șterge de la poziția curentă până la sfârșitul
|
|
370 liniei
|
|
371 M-k șterge de la poziția curentă până la sfârșitul
|
|
372 frazei
|
|
373
|
|
374 De remarcat că <Delete> și C-d versus M-<Delete> și M-d extind
|
|
375 paralela începută de C-f și M-f (<Delete> nu este cu adevărat un
|
|
376 caracter bazat pe CONTROL, dar nu o să ne ocupăm de asta acum). C-k
|
|
377 și M-k sunt ca C-e și M-e, într-un fel, dacă facem o paralelă între
|
|
378 linii și fraze.
|
|
379
|
|
380 Când ștergeți mai mult de un caracter la un moment dat, Emacs-ul
|
|
381 păstrează intern textul distrus în așa fel încât îl puteți restaura.
|
|
382 Termenul folosit de Emacs pentru operațiunea de restaurare a textului
|
|
383 distrus este "yanking". Puteți restaura textul distrus fie în același
|
|
384 loc, fie în alt loc în fișier. Puteți de asemenea restaura textul de
|
|
385 mai multe ori pentru a face mai multe copii. Comanda de restaurare
|
|
386 este C-y.
|
|
387
|
|
388 Diferența dintre "distrugerea" și "ștergerea" unei porțiuni din text
|
|
389 este aceea ca porțiunile de text "distruse" pot fi restaurate, în timp
|
|
390 ce porțiunile de text "șterse", nu. În general, comenzile care
|
|
391 distrug porțiuni semnificative din text, păstrează intern textul
|
|
392 respectiv, în timp ce comenzile care șterg doar un caracter, linii
|
|
393 goale sau spații, nu fac acest lucru.
|
|
394
|
|
395 >> Mutați cursorul la începutul unei linii care nu este goală.
|
|
396 Tastați apoi C-k pentru a distruge textul de pe linia respectivă.
|
|
397 >> Tastați C-k o a doua oară. Veți observa distrugerea caracterului
|
|
398 NEWLINE de la sfârșitul liniei.
|
|
399
|
|
400 După cum vedeți, un singur C-k distruge conținutul liniei, iar un al
|
|
401 doilea C-k distruge linia însăși, facând toate celelalte linii să se
|
|
402 mute în sus. C-k tratează un argument numeric în mod special:
|
|
403 distruge numărul specificat de linii și conținutul lor. Această
|
|
404 comportare nu este doar o simplă repetiție. C-u 2 C-k distruge două
|
|
405 linii și NEWLINE-urile de după ele; tastând C-k de două ori nu
|
|
406 obțineți același rezultat.
|
|
407
|
|
408 Pentru a extrage ultimul text distrus și a-l plasa la poziția curentă
|
|
409 a cursorului, tastați C-y.
|
|
410
|
|
411 >> Tastați C-y pentru a restaura textul distrus anterior.
|
|
412
|
|
413 Gânditi-vă la C-y ca și cum ați recupera ceva ce v-a fost luat.
|
|
414 Observați că dacă executați mai multe C-k-uri la rând, tot textul
|
|
415 distrus este stocat într-o singură bucată, în așa fel încât un singur
|
|
416 C-y va restaura toate liniile.
|
|
417
|
|
418 >> Tastați acum C-k de câteva ori.
|
|
419
|
|
420 Acum încercați să restaurați textul distrus:
|
|
421
|
|
422 >> Tastați C-y. Mutați apoi cursorul câteva linii mai jos și tastați
|
|
423 C-y din nou. Veți vedea cum se copiază porțiuni de text.
|
|
424
|
|
425 Ce faceți dacă aveți porțiuni de text pe care vreți să le restaurați,
|
|
426 dar între timp distrugeți o altă porțiune de text? C-y va restaura
|
|
427 porțiunea de text care a fost distrusă cel mai recent. Cu toate
|
|
428 acestea, textul distrus anterior nu este pierdut. Puteți să-l
|
|
429 restaurați folosind comanda M-y. După ce ați executat C-y pentru a
|
|
430 obține textul cel mai recent distrus, tastând M-y veți înlocui textul
|
|
431 ce tocmai a fost restaurat cu textul distrus înaintea lui. Tastând
|
|
432 M-y de mai multe ori puteți obține porțiuni de text distrus din ce în
|
|
433 ce mai vechi. Odată ajunși la textul care vă interesează, puteți să
|
|
434 continuați editarea fără să mai faceți nimic special, lasând textul
|
|
435 restaurat în poziția în care se găsește.
|
|
436
|
|
437 Dacă tastați M-y de suficient de multe ori, veți ajunge în cele din
|
|
438 urmă la punctul de plecare (textul distrus cel mai de curând).
|
|
439
|
|
440 >> Distrugeți o linie, mutați-vă puțin în jurul ei, distrugeți o altă
|
|
441 linie. Executați apoi C-y pentru a obține înapoi cea de-a doua
|
|
442 linie distrusă. Executați apoi M-y și veți constata că este
|
|
443 înlocuită de prima linie distrusă. Executați mai multe M-y-uri și
|
|
444 observați ce obțineți. Continuați să le executați până când a doua
|
|
445 linie apare din nou, etc. Dacă doriți, puteți încerca să-i dați
|
|
446 comenzii M-y argumente numerice pozitive și negative.
|
|
447
|
|
448
|
|
449 * ANULARE
|
|
450 ---------
|
|
451
|
|
452 Dacă faceți o schimbare în text, și apoi constatați că ați greșit,
|
|
453 puteți anula schimbarea cu comanda de anulare, C-x u.
|
|
454
|
|
455 În mod normal, C-x u anulează schimbările făcute de o comandă; dacă
|
|
456 repetați C-x u de câteva ori la rând, fiecare nouă repetiție anulează
|
|
457 încă o comandă.
|
|
458
|
|
459 Există însă două excepții: comenzile care nu schimbă textul nu sunt
|
|
460 luate în considerare (acestea includ comenzile de mutat cursorul și
|
|
461 cele de "scrolling"), iar caracterele introduse individual sunt
|
|
462 tratate în grupuri de maxim 20. (Motivația din spatele acestei
|
|
463 abordări este aceea de a reduce numărul de C-x u-uri pe care trebuie
|
|
464 să le tastați pentru anularea inserărilor de text).
|
|
465
|
|
466 >> Distrugeți linia aceasta cu C-k, apoi tastați C-x u; linia ar
|
|
467 trebui să reapară.
|
|
468
|
|
469 C-_ este o altă comandă de anulare; funcționează exact ca și C-x u,
|
|
470 dar este mai ușor de tastat de mai multe ori la rând. Dezavantajul
|
|
471 lui C-_ este că pe anumite tastaturi nu este clar cum trebuie tastat.
|
|
472 Din acest motiv există C-x u. Pe unele terminale se poate să tastați
|
|
473 C-_ tastând "/" în timp ce țineți apăsată tasta CONTROL.
|
|
474
|
|
475 Un argument numeric la C-_ sau C-x u acționează ca un contor de
|
|
476 repetiție.
|
|
477
|
|
478
|
|
479 * FIȘIERE
|
|
480 ---------
|
|
481
|
|
482 Pentru a face permanente modificările din textul pe care îl editați,
|
|
483 trebuie să-l stocați (salvați) într-un fișier. Altminteri,
|
|
484 modificările se vor pierde în momentul părăsirii Emacs-ului. Puneți
|
|
485 textul într-un fișier "deschizând" (sau "vizitând") fișierul.
|
|
486
|
|
487 Deschiderea unui fișier înseamnă că puteți vedea conținutul fișierului
|
|
488 în Emacs. Este ca și cum ați edita chiar fișierul, singura diferență
|
|
489 fiind aceea că schimbările nu devin permanente până când nu îl
|
|
490 "salvați" ("save" în limba engleză). Se evită astfel existența în
|
|
491 sistem a unor fișiere incomplet modificate atunci când nu doriți acest
|
|
492 lucru. Chiar și când salvați fișierul, Emacs-ul păstrează fișierul
|
|
493 inițial (cu un nume schimbat) în așa fel încât să-l puteți recupera în
|
|
494 cazul în care decideți că modificările efectuate au fost greșite.
|
|
495
|
|
496 Aproape de marginea de jos a ecranului veți observa o linie care
|
|
497 începe și se termină cu minusuri, și conține șirul "--:-- TUTORIAL.ro"
|
|
498 sau ceva în genul acesta. Această parte a ecranului arată întotdeauna
|
|
499 numele fișierului pe care îl vizitați. Acum vizitați fișierul
|
|
500 "TUTORIAL.ro" care este copia dumneavoastră de încercări a
|
|
501 tutorialului în limba română. Orice fișier ați edita, numele acelui
|
|
502 fișier va apărea în poziția respectivă.
|
|
503
|
|
504 Comenzile pentru găsirea și salvarea fișierelor sunt diferite de
|
|
505 celelalte comenzi pe care le-ați învățat, în sensul că sunt compuse
|
|
506 din două caractere. Amândouă încep cu caracterul C-x. Există o
|
|
507 întreagă serie de comenzi care încep cu C-x; multe dintre ele sunt
|
|
508 legate de fișiere, buffere și alte lucruri înrudite. Aceste comenzi
|
|
509 sunt compuse din două, trei sau patru caractere.
|
|
510
|
|
511 Comenzii de deschidere a unui fișier trebuie să îi spuneți numele
|
|
512 fișierului dorit. Spunem despre comandă ca "citește un argument de la
|
|
513 terminal" (în acest caz, argumentul este numele fișierului). După ce
|
|
514 tastați comanda
|
|
515
|
|
516 C-x C-f (deschide un fișier)
|
|
517
|
|
518 Emacs-ul vă va cere să introduceți numele fișierului. Numele pe care
|
|
519 îl tastați apare pe ultima linie a ecranului. Această linie se
|
|
520 numeste "minibuffer" când este folosită pentru acest tip de
|
|
521 introducere. Comenzile normale de editare în Emacs pot fi folosite și
|
|
522 pentru editarea numelui fișierului.
|
|
523
|
|
524 În timp ce introduceți numele fișierului (sau orice alt tip de
|
|
525 introducere de date în minibuffer), puteți anula comanda cu C-g.
|
|
526
|
|
527 >> Tastați C-x C-f, apoi tastați C-g. Aceasta anulează minibuffer-ul,
|
|
528 și, de asemenea, anulează comanda C-x C-f care îl folosea. În
|
|
529 concluzie, nu veți mai deschide nici un fișier.
|
|
530
|
|
531 Când ați terminat de introdus numele fișierului, tastați <Return>
|
|
532 pentru a-l încheia. După aceasta, comanda C-x C-f începe să lucreze
|
|
533 și deschide fișierul pe care l-ați ales. Minibuffer-ul dispare când
|
|
534 comanda C-x C-f se termină.
|
|
535
|
|
536 După câteva momente, conținutul fișierului apare pe ecran și îl puteți
|
|
537 edita. Când doriti să faceți schimbările permanente, tastați comanda
|
|
538
|
|
539 C-x C-s (salvează fișierul)
|
|
540
|
|
541 Aceasta copiază textul din Emacs într-un fișier. Prima oară când
|
|
542 faceți acest lucru, Emacs-ul redenumește fișierul inițial în așa fel
|
|
543 încât să nu se piardă. Noul nume este creat prin adăugarea
|
|
544 caracterului "~" la numele inițial.
|
|
545
|
|
546 Când operațiunea de salvare este terminată, Emacs-ul afișează numele
|
|
547 fișierului salvat. Se recomandă salvarea la intervale relativ mici,
|
|
548 pentru a nu pierde prea multă muncă în cazul unei eventuale blocări a
|
|
549 sistemului.
|
|
550
|
|
551 >> Tastați C-x C-s, pentru a salva copia tutorialului.
|
|
552 Aceasta ar trebui să afișeze "Wrote ...TUTORIAL.ro" la marginea de
|
|
553 jos a ecranului.
|
|
554
|
|
555 OBSERVAȚIE: În unele sisteme, tastarea comenzii C-x C-s va bloca
|
|
556 ecranul și nu veți mai primi nici un de răspuns din partea Emacs-ului.
|
|
557 Aceasta indică faptul că o facilitate a sistemului de operare numită
|
|
558 "controlul fluxului" ("flow control" în limba engleză) interceptează
|
|
559 C-s, nelasându-l să ajungă la Emacs. Pentru deblocarea ecranului,
|
|
560 tastați C-q. Puteți găsi detalii referitoare la această așa-numită
|
|
561 "facilitate" în secțiunea "Spontaneous Entry to Incremental Search"
|
|
562 din manualul Emacs-ului.
|
|
563
|
|
564 Puteți deschide un fișier existent, pentru a-l vedea sau edita.
|
|
565 Puteți de asemenea deschide un fișier care nu există. Aceasta este
|
|
566 modalitatea în care creați noi fișiere cu Emacs-ul: deschideți
|
|
567 fișierul (care va fi gol inițial), apoi începeți să introduceți text
|
|
568 în el. Când îi veți cere să "salveze" fișierul, Emacs-ul va crea
|
|
569 fișierul cu textul pe care l-ați introdus. De acum înainte puteți
|
|
570 considera că editați un fișier existent.
|
|
571
|
|
572
|
|
573 * BUFFERE
|
|
574 ---------
|
|
575
|
|
576 Dacă deschideți un al doilea fișier cu C-x C-f, primul va continua să
|
|
577 existe în Emacs. Puteți să vă mutați înapoi la el deschizându-l din
|
|
578 nou cu C-x C-f. În acest fel puteți avea un număr destul de mare de
|
|
579 fișiere deschise în Emacs.
|
|
580
|
|
581 >> Creați un fișier numit "foo" tastând C-x C-f foo <Return>.
|
|
582 Introduceți un text oarecare, editați-l, apoi salvați "foo" tastând
|
|
583 C-x C-s. În cele din urmă, tastați C-x C-f TUTORIAL.ro <Return>
|
|
584 pentru a vă întoarce la tutorial.
|
|
585
|
|
586 Emacs-ul stochează textul fiecărui fișier într-un obiect numit
|
|
587 "buffer". Deschiderea unui fișier creează un nou buffer în Emacs.
|
|
588 Pentru a vedea o listă a bufferelor existente în Emacs, tastați
|
|
589
|
|
590 C-x C-b (lista de buffere)
|
|
591
|
|
592 >> Încercați C-x C-b acum.
|
|
593
|
|
594 Observați cum fiecare buffer are un nume și, uneori, un nume de fișier
|
|
595 corespunzător fișierului al cărui conținut este menținut în buffer-ul
|
|
596 respectiv. Unele buffere nu corespund nici unui fișier. De exemplu,
|
|
597 buffer-ul numit "*Buffer List*" nu are nici un fișier asociat. Este
|
|
598 buffer-ul care conține lista de buffere și a fost creat de comanda C-x
|
|
599 C-b. Orice text pe care îl vedeți într-o fereastră a Emacs-ului este
|
|
600 întotdeauna parte dintr-un buffer.
|
|
601
|
|
602 >> Tastați C-x 1 pentru a scăpa de lista de buffere.
|
|
603
|
|
604 Dacă faceți schimbări în textul unui fișier, apoi deschideți un alt
|
|
605 fișier, primul fișier nu este salvat. Schimbările efectuate rămân în
|
|
606 Emacs, în buffer-ul asociat acelui fișier. Crearea sau editarea
|
|
607 buffer-ului celui de-al doilea fișier nu are nici un efect asupra
|
|
608 buffer-ului primului fișier. Acest lucru este foarte util, dar
|
|
609 înseamnă că aveți nevoie de o modalitate convenabilă de a salva
|
|
610 buffer-ul primului fișier. Ar fi obositor să fie necesar să vă mutați
|
|
611 înapoi la el cu C-x C-f pentru a-l putea salva cu C-x C-s. Din acest
|
|
612 motiv există comanda:
|
|
613
|
|
614 C-x s salvează niște buffere
|
|
615
|
|
616 C-x s vă întreabă despre fiecare buffer care conține modificări (și
|
|
617 care nu a fost salvat) dacă doriți să-l salvați.
|
|
618
|
|
619 >> Introduceți o linie de text, apoi tastați C-x s.
|
|
620 Ar trebui să vă întrebe dacă să salveze buffer-ul TUTORIAL.ro.
|
|
621 Raspundeți "da" la întrebare tastând "y".
|
|
622
|
|
623
|
|
624 * EXTINDEREA SETULUI DE COMENZI
|
|
625 -------------------------------
|
|
626
|
|
627 Există mult mai multe comenzi Emacs decât combinații de taste bazate
|
|
628 pe CONTROL și META. Soluția în Emacs este folosirea comenzilor
|
|
629 eXtinse. Acestea sunt de două feluri:
|
|
630
|
|
631 C-x eXtinde un caracter; urmată de un caracter
|
|
632 M-x eXtinde un nume; urmată de un nume lung
|
|
633
|
|
634 Acestea sunt comenzi care sunt utile în general, dar folosite mai rar
|
|
635 decât comenzile despre care ați învățat până acum. Ați văzut deja
|
|
636 două dintre ele: comanda de deschis fișiere (C-x C-f) și comanda de
|
|
637 salvat fișiere (C-x C-s). Un alt exemplu este comanda de părăsit
|
|
638 Emacs-ul: C-x C-c. (Nu vă temeți că veți pierde schimbări făcute în
|
|
639 fișiere; înainte de a termina sesiunea curentă Emacs, C-x C-c vă va
|
|
640 întreba dacă doriți să salvați fișierele modificate.)
|
|
641
|
|
642 C-z este comanda cu care puteți ieși din Emacs *temporar* - astfel
|
|
643 încât să puteți să vă întoarceți la aceeași sesiune Emacs mai târziu.
|
|
644
|
|
645 Pe sistemele unde este posibil, C-z "suspendă" Emacs-ul; asta înseamnă
|
|
646 că, deși vă veți întoarce la prompt-ul shell-ului, Emacs-ul nu a fost
|
|
647 distrus. În shell-urile (interpretoarele de comenzi Unix) cele mai
|
|
648 uzuale puteți reactiva Emacs-ul cu comanda `fg' sau `%emacs'.
|
|
649
|
|
650 Pe sistemele care nu implementează mecanismele de suspendare, C-z
|
|
651 creează un subshell care rulează sub Emacs pentru a vă oferi
|
|
652 posibilitatea de a rula alte programe și de a vă întoarce la Emacs mai
|
|
653 târziu; pe aceste sisteme C-z nu iese cu adevărat din Emacs - comanda
|
|
654 `exit' la promptul subshell-ului este modalitatea uzuală de a vă
|
|
655 întoarce în Emacs.
|
|
656
|
|
657 În general C-x C-c se folosește înainte de părăsirea sistemului.
|
|
658 Puteți folosi această comandă și pentru a ieși din instanțe de Emacs
|
|
659 lansate de programe de citit mail sau alte utilitare, deoarece acestea
|
|
660 s-ar putea să nu fie capabile să folosească facilitațile de suspendare
|
|
661 ale Emacs-ului. În mod normal însă, dacă nu sunteți pe cale să
|
|
662 părăsiți sistemul, este mai bine să suspendați Emacs-ul cu C-z decât
|
|
663 să ieșiți complet cu C-x C-c.
|
|
664
|
|
665 Emacs-ul are multe comenzi prefixate cu C-x. Aceasta este lista celor
|
|
666 pe care le-ați învățat până acum:
|
|
667
|
|
668 C-x C-f deschide un fișier
|
|
669 C-x C-s salvează fișierul
|
|
670 C-x C-b listează bufferele
|
|
671 C-x C-c părăsește Emacs-ul
|
|
672 C-x u anulează
|
|
673
|
|
674 Comenzile eXtinse cu nume sunt comenzile care sunt folosite și mai rar
|
|
675 sau comenzile care sunt folosite numai în anumite moduri. Un exemplu
|
|
676 este comanda replace-string (înlocuiește-șir) care înlocuiește global
|
|
677 toate aparițiile unui șir de caractere cu alt șir de caractere. Când
|
|
678 tastați M-x, Emacs-ul afișează pe ultima linie de pe ecran "M-x" și
|
|
679 puteți introduce numele comenzii - în cazul nostru "replace-string".
|
|
680 Puteți să tastați doar "repl s<TAB>" și Emacs-ul va completa numele.
|
|
681 Terminați comanda cu <Return>.
|
|
682
|
|
683 Comanda replace-string necesită două argumente - șirul ce va fi
|
|
684 înlocuit și șirul înlocuitor. La sfârșitul introducerii fiecărui
|
|
685 argument trebuie să tastați <Return>.
|
|
686
|
|
687 >> Mutați cursorul pe linia goală care se găseste două linii mai jos.
|
|
688 Tastați apoi M-x repl s<Return>modificat<Return>alterat<Return>.
|
|
689
|
|
690 Observați modul în care această linie s-a modificat: ați înlocuit
|
|
691 toate aparițiile cuvântului s-c-h-i-m-b-a-t cu "alterat", după
|
|
692 poziția inițială a cursorului.
|
|
693
|
|
694
|
|
695 * SALVARE AUTOMATĂ
|
|
696 ------------------
|
|
697
|
|
698 Dacă ați facut schimbări într-un fișier, dar nu le-ați salvat, aceste
|
|
699 schimbări se pot pierde în cazul în care sistemul se blochează.
|
|
700 Pentru a vă proteja munca, Emacs-ul salvează periodic un fișier de
|
|
701 "autosalvare" pentru fiecare fișier pe care îl editați. Acest fișier
|
|
702 are un "#" la început și unul la sfârșit; de exemplu, dacă fișierul
|
|
703 dumneavoastră se numeste "hello.c", fișierul de autosalvare
|
|
704 corespunzător se va numi "#hello.c#". Când salvați fișierul în mod
|
|
705 normal, Emacs-ul șterge fișierul de autosalvare.
|
|
706
|
|
707 În cazul unei căderi a sistemului, puteți să vă recuperați fișierul de
|
|
708 autosalvare deschizând fișierul în mod normal (fișierul pe care îl
|
|
709 editați, nu pe cel de autosalvare) și tastând după aceea M-x recover
|
|
710 file<Return>. Când vi se cere confirmarea, tastați yes<Return> pentru
|
|
711 a continua și a recupera fișierul.
|
|
712
|
|
713
|
|
714 * ZONA DE ECOU
|
|
715 --------------
|
|
716
|
|
717 Dacă Emacs-ul observă că tastați comenzile încet, vi le va arăta la
|
|
718 marginea de jos a ecranului într-o zona numită "zona de ecou". Zona
|
|
719 de ecou conține cea mai de jos linie a ecranului.
|
|
720
|
|
721
|
|
722 * LINIA DE MOD
|
|
723 --------------
|
|
724
|
|
725 Linia de deasupra zonei de ecou se numește "linia de mod" ("mode line"
|
|
726 în limba engleză). Linia de mod conține ceva de genul:
|
|
727
|
|
728 --**-Emacs: TUTORIAL (Fundamental)--L670--58%----------------
|
|
729
|
|
730 Această linie prezintă informații utile despre starea Emacs-ului și
|
|
731 despre textul pe care îl editați.
|
|
732
|
|
733 Stiți deja ce înseamnă numele fișierului - este fișierul pe care l-ați
|
|
734 deschis. -NN%-- indică poziția curentă a cursorului în text - NN la
|
|
735 sută din text este deasupra primei linii de pe ecran. Dacă începutul
|
|
736 fișierului este vizibil pe ecran, veți vedea --Top-- în loc de
|
|
737 --00%--. Dacă sfârșitul fișierului este vizibil pe ecran, veți vedea
|
|
738 --Bot-- (de la "bottom" în limba engleză). Dacă fișierul este atât de
|
|
739 mic, încât încape în întregime pe ecran, pe linia de mod veți vedea
|
|
740 --All--.
|
|
741
|
|
742 Stelele de la începutul liniei de mod semnalizează existența unor
|
|
743 modificări nesalvate în text. Imediat după deschiderea fișierului,
|
|
744 porțiunea respectivă din linia de mod nu conține nici o stea, doar
|
|
745 minusuri.
|
|
746
|
|
747 Porțiunea dinăuntrul parantezelor vă spune modul de editare curent.
|
|
748 Modul implicit este "Fundamental", modul pe care îl folosiți chiar
|
|
749 acum. Este un exemplu de "mod major".
|
|
750
|
|
751 Emacs-ul are multe moduri majore. Unele dintre ele sunt destinate
|
|
752 editării diferitelor limbaje și/sau tipuri de text, cum ar fi modul
|
|
753 Lisp, modul Text, etc. Numai un mod major poate fi activ la un moment
|
|
754 dat și numele său va fi întotdeauna acolo unde este "Fundamental"
|
|
755 acum.
|
|
756
|
|
757 Fiecare mod major schimbă comportamentul unor comenzi. De exemplu
|
|
758 există comenzi pentru crearea comentariilor într-un program, dar, cum
|
|
759 fiecare limbaj de programare are o idee diferită despre felul cum ar
|
|
760 trebui să arate un comentariu, fiecare mod major trebuie să le
|
|
761 introducă într-un alt fel. Există câte o comandă asociată fiecărui
|
|
762 mod major - aceasta este modalitatea de a schimba modul major. De
|
|
763 exemplu, M-x fundamental-mode este comanda cu care poate fi ales modul
|
|
764 "Fundamental".
|
|
765
|
|
766 Dacă editați text în limba română, cum ar fi de exemplu acest fișier,
|
|
767 ar trebui probabil să folosiți modul Text.
|
|
768
|
|
769 >> Tastați M-x text-mode<Return>.
|
|
770
|
|
771 Nu vă temeti, nici una din comenzile pe care le-ați învățat până acum
|
|
772 nu schimbă Emacs-ul prea mult. Puteți observa acum că M-f și M-b
|
|
773 tratează apostrofurile ca parte din cuvinte. Înainte, în modul
|
|
774 Fundamental, M-f și M-b tratau apostrofurile ca separatoare de
|
|
775 cuvinte.
|
|
776
|
|
777 Modurile majore operează schimbări subtile, ca cea descrisă mai sus.
|
|
778 Majoritatea comenzilor execută aceeași operație în fiecare mod major,
|
|
779 dar funcționează puțin diferit.
|
|
780
|
|
781 Pentru a vedea documentația referitoare la modul major curent, tastați
|
|
782 C-h m.
|
|
783
|
|
784 >> Folosiți C-u C-v o dată sau de mai multe ori pentru a aduce această
|
|
785 linie aproape de începutul ecranului. Tastați C-h m ca să aflați
|
|
786 diferențele dintre modul Text și modul Fundamental. Tastați C-x 1
|
|
787 pentru a șterge documentația de pe ecran.
|
|
788
|
|
789 Modurile majore se numesc "majore" pentru că există și moduri minore.
|
|
790 Modurile minore sunt ajustări minore ale modurilor majore. Fiecare
|
|
791 mod minor poate fi activat sau dezactivat separat, independent de
|
|
792 celelalte moduri minore și independent de modul major curent. Puteți
|
|
793 să nu folosiți nici un mod minor, un mod minor sau orice combinație de
|
|
794 moduri minore.
|
|
795
|
|
796 Un mod minor care este foarte util, în mod special când editați text,
|
|
797 este modul "Auto Fill". Când acest mod este activat, Emacs-ul sparge
|
|
798 automat liniile la spațiul dintre cuvinte de fiecare dată când
|
|
799 introducând text creați o linie care este prea lungă.
|
|
800
|
|
801 Puteți activa modul "Auto Fill" executând M-x auto-fill-mode<Return>.
|
|
802 Când acest mod este activat, îl puteți dezactiva executând aceeași
|
|
803 comandă. Dacă modul este dezactivat, această comandă îl activează,
|
|
804 când este activat, comanda îl dezactivează. Se spune că această
|
|
805 comandă inversează modul.
|
|
806
|
|
807 >> Tastați M-x auto-fill-mode<Return> acum. Introduceți apoi o linie
|
|
808 conținând "asdf " de mai multe ori, până când linia se sparge în
|
|
809 două. Trebuie să puneți spații între cuvinte pentru că Auto Fill
|
|
810 sparge linia numai la spații.
|
|
811
|
|
812 Marginea este stabilită în mod normal la 70 de caractere, dar puteți
|
|
813 schimba această valoare cu comanda C-x f. Introduceți valoarea dorită
|
|
814 ca argument numeric pentru C-x f.
|
|
815
|
|
816 >> Tastați C-x f cu 20 ca argument numeric. (C-u 2 0 C-x f).
|
|
817 Introduceți apoi un text oarecare și observați cum Emacs-ul umple
|
|
818 linii de maximum 20 de caractere. Restaurați marginea la 70 de
|
|
819 caractere folosind din nou C-x f.
|
|
820
|
|
821 Dacă faceți schimbări în mijlocul unui paragraf, modul Auto Fill nu
|
|
822 rearanjează paragraful. Pentru a face acest lucru, trebuie să tastați
|
|
823 M-q (META-q) cu cursorul poziționat înăuntrul paragrafului.
|
|
824
|
|
825 >> Mutați cursorul în paragraful precedent și tastați M-q.
|
|
826
|
|
827
|
|
828 * CĂUTARE
|
|
829 ---------
|
|
830
|
|
831 Emacs-ul poate caută șiruri (grupuri continue de caractere sau
|
|
832 cuvinte) fie înainte, fie înapoi (față de poziția curentă a cursorului
|
|
833 în text). Căutarea unui șir este o operație ce mută cursorul;
|
|
834 cursorul este mutat în poziția corespunzătoare următoarei apariții a
|
|
835 șirului în text.
|
|
836
|
|
837 Căutarea este diferită în Emacs față de majoritatea editoarelor,
|
|
838 deoarece este "incrementală". Asta înseamnă că execuția operațiunii
|
|
839 de căutare se face în timp ce tastați șirul de căutat.
|
|
840
|
|
841 Comanda ce inițiază căutarea este C-s pentru căutare înainte și C-r
|
|
842 pentru căutare înapoi. AȘTEPTAȚI! Nu le încercați acum.
|
|
843
|
|
844 Când tastați C-s veți remarca faptul că șirul "I-search" apare ca
|
|
845 prompt în zona de ecou. Aceasta vă spune că Emacs-ul este în modul de
|
|
846 căutare incrementală, așteptând ca dumneavoastră să introduceți șirul
|
|
847 pe care doriți să-l căutați. Căutarea poate fi terminată cu <Return>.
|
|
848
|
|
849 >> Tastați acum C-s pentru a porni o căutare. ÎNCET, câte o singură
|
|
850 literă la un moment dat, tastați cuvântul "cursor", făcând o pauză
|
|
851 după fiecare caracter tastat ca să observați ce se întamplă cu
|
|
852 cursorul. Acum ați terminat de căutat prima apariție a cuvântului
|
|
853 "cursor".
|
|
854 >> Tastați C-s din nou, pentru a căuta următoarea apariție a
|
|
855 cuvântului "cursor".
|
|
856 >> Tastați acum <Delete> de patru ori și observați mișcarea
|
|
857 cursorului.
|
|
858 >> Tastați <Return> pentru a termina căutarea.
|
|
859
|
|
860 Ați observat ce s-a întamplat? În timpul unei căutări incrementale
|
|
861 Emacs-ul încearcă să se poziționeze pe prima apariție a șirului pe
|
|
862 care l-ați introdus până în momentul respectiv. Dacă vreți să vă
|
|
863 poziționați pe următoarea apariție a cuvântului "cursor", nu trebuie
|
|
864 decât să tastați C-s încă o dată. Dacă nu mai există o altă apariție,
|
|
865 Emacs-ul va emite un sunet și vă va anunța că operațiunea de căutare a
|
|
866 eșuat ("failed" în limba engleză). C-g este o altă metodă de a
|
|
867 termina căutarea.
|
|
868
|
|
869 OBSERVAȚIE: Pe unele sisteme, C-s va bloca ecranul și nu veți mai
|
|
870 primi nici un răspuns de la Emacs. Aceasta indică faptul că o
|
|
871 "facilitate" a sistemului de operare numită "controlul fluxului"
|
|
872 ("flow control" în limba engleză) interceptează caracterul C-s și
|
|
873 acesta nu mai ajunge la Emacs. Pentru deblocarea ecranului, apăsați
|
|
874 C-q. Puteți găsi detalii referitoare la această așa-numită
|
|
875 "facilitate" în secțiunea "Spontaneous Entry to Incremental Search"
|
|
876 din manualul Emacs-ului.
|
|
877
|
|
878 Dacă sunteți în mijlocul unei căutări incrementale și tastați
|
|
879 <Delete>, veți observa că ultimul caracter în căutarea incrementală
|
|
880 este șters și căutarea se întoarce la poziția anterioară. De exemplu,
|
|
881 să presupunem că ați tastat "c", pentru a căuta prima apariție a lui
|
|
882 "c". Dacă tastați "u", cursorul se va muta la prima apariție a lui
|
|
883 "cu". Tastați acum <Delete>. Aceasta va șterge "u"-ul din șirul de
|
|
884 căutare și cursorul se va muta înapoi la prima apariție a lui "c".
|
|
885
|
|
886 Căutarea incrementală poate fi terminată prin tastarea unui caracter
|
|
887 bazat pe CONTROL sau META (cu câteva excepții - caracterele care sunt
|
|
888 specifice căutării, cum ar fi C-s și C-r).
|
|
889
|
|
890 C-s începe o căutare care inspectează textul de DUPĂ poziția curentă a
|
|
891 cursorului. Dacă doriți să căutați în textul dinaintea poziției
|
|
892 curente a cursorului, folosiți C-r. Toată discuția referitoare la C-s
|
|
893 se aplică și comenzii C-r, cu mențiunea că direcția de căutare este
|
|
894 inversă.
|
|
895
|
|
896
|
|
897 * FERESTRE MULTIPLE
|
|
898 -------------------
|
|
899
|
|
900 Una dintre facilitățile importante ale Emacs-ului este aceea de a
|
|
901 afișa pe ecran mai multe ferestre simultan.
|
|
902
|
|
903 >> Mutați cursorul pe această linie și tastați C-u 0 C-l.
|
|
904
|
|
905 >> Tastați acum C-x 2 pentru a împărți ecranul în două ferestre.
|
|
906 Amândouă ferestrele vor afișa acest tutorial. Cursorul va rămane
|
|
907 în fereastra din partea de sus a ecranului.
|
|
908
|
|
909 >> Tastați C-M-v pentru a mișca textul din fereastra de jos.
|
|
910 (Dacă nu aveți o tastă META, tastați ESC C-v.)
|
|
911
|
|
912 >> Tastați C-x o ("o" de la "other" - "cealaltă" în limba
|
|
913 engleză) pentru a muta cursorul în fereastra de jos.
|
|
914
|
|
915 >> Tastați C-v și M-v în fereastra de jos pentru a muta textul.
|
|
916 Continuați să citiți aceste instrucțiuni în fereastra de sus.
|
|
917
|
|
918 >> Tastați C-x o din nou pentru a muta cursorul înapoi în fereastra de
|
|
919 sus. Cursorul va fi plasat în locul unde a fost anterior.
|
|
920
|
|
921 Puteți continua să folosiți C-x o pentru a vă muta între ferestre.
|
|
922 Fiecare fereastră are propria ei poziție a cursorului, dar numai o
|
|
923 fereastră arată cursorul la un moment dat. Toate operațiile normale
|
|
924 de editare au efect în fereastra în care se găsește cursorul -
|
|
925 fereastra respectivă se numește "fereastra selectată".
|
|
926
|
|
927 Comanda C-M-v este foarte utilă când editați text într-o fereastră și
|
|
928 folosiți cealaltă fereastră pentru a citi documentații. Puteți ține
|
|
929 întotdeauna cursorul în fereastra în care editați, în timp ce avansați
|
|
930 textul din cealaltă fereastră cu C-M-v.
|
|
931
|
|
932 C-M-v este un exemplu de caracter CONTROL-META. Dacă aveți o tastă
|
|
933 META, puteți tasta C-M-v ținând apăsate și CONTROL și META când tastați
|
|
934 v. Nu contează care dintre CONTROL sau META este apăsată mai întâi,
|
|
935 pentru că amândouă acționează prin modificarea caracterului pe care îl
|
|
936 tastați.
|
|
937
|
|
938 Dacă nu aveți o tastă META și folosiți ESC în loc, ordinea este
|
|
939 importantă: trebuie să tastați ESC urmat de CONTROL-v; CONTROL-ESC v
|
|
940 nu va funcționa, din cauza faptului că ESC este un caracter de sine
|
|
941 stătător, nu un modificator.
|
|
942
|
|
943 >> Tastați C-x 1 (în fereastra de sus) ca să renunțați la fereastra
|
|
944 de jos.
|
|
945
|
|
946 (Dacă ați tastat C-x 1 în fereastra de jos, această comandă va închide
|
|
947 fereastra de sus. Gândiți-vă la ea așa "Păstrează doar o fereastră -
|
|
948 cea în care sunt acum.")
|
|
949
|
|
950 Nu este nevoie să afisați același buffer în ambele ferestre. Dacă
|
|
951 folosiți C-x C-f pentru a deschide un fișier într-o fereastră,
|
|
952 cealaltă fereastră nu se schimbă. Puteți deschide un fișier diferit
|
|
953 în fiecare fereastră.
|
|
954
|
|
955 O altă modalitate de a folosi două ferestre ca să afișați lucruri
|
|
956 diferite:
|
|
957
|
|
958 >> Tastați C-x 4 C-f apoi numele unui fișier. Terminați comanda
|
|
959 cu <Return> Observați că fișierul specificat apare în fereastra de
|
|
960 jos. Cursorul la fel.
|
|
961
|
|
962 >> Tastați C-x o pentru a vă muta în fereastra de sus, apoi tastați
|
|
963 C-x 1 pentru a șterge fereastra de jos.
|
|
964
|
|
965
|
|
966 * NIVELURI DE EDITARE RECURSIVĂ
|
|
967 -------------------------------
|
|
968
|
|
969 Uneori veți intra în ceea ce se numeste un "nivel de editare
|
|
970 recursivă". Acesta este indicat de prezența unor paranteze drepte în
|
|
971 linia de mod în jurul numelui modului major. De exemplu, s-ar putea
|
|
972 să vedeți [(Fundamental)] în loc de (Fundamental).
|
|
973
|
|
974 Pentru a ieși din nivelul de editare recursivă, tastați ESC ESC ESC.
|
|
975 Aceasta este o comandă de ieșire de uz general. O puteți folosi și ca
|
|
976 să ieșiți din minibuffer sau ca să eliminați ferestrele în plus.
|
|
977
|
|
978 >> Tastați M-x pentru a intra în minibuffer; tastați apoi ESC ESC ESC
|
|
979 ca să ieșiți.
|
|
980
|
|
981 Nu puteți folosi C-g pentru a ieși dintr-un nivel de editare recursivă
|
|
982 deoarece comanda C-g este folosită pentru a anula comenzi și argumente
|
|
983 înăuntrul unui nivel de editare recursivă.
|
|
984
|
|
985
|
|
986 * CUM PUTEȚI OBȚINE MAI MULTE INFORMAȚII
|
|
987 ----------------------------------------
|
|
988
|
|
989 În acest tutorial am încercat să furnizăm suficiente informații pentru
|
|
990 a face primii pași în Emacs. Există atât de multe comenzi în Emacs
|
|
991 încât ar fi imposibil să le explicăm pe toate aici. S-ar putea însă
|
|
992 să doriți să învațați mai multe despre Emacs, deoarece oferă foarte
|
|
993 multe facilitați interesante. Există comenzi pentru a citi
|
|
994 documentația despre comenzile Emacs-ului. Aceste comenzi ajutătoare
|
|
995 sunt prefixate cu caracterul C-h, denumit și "caracterul de ajutor".
|
|
996
|
|
997 Pentru a folosi aceste facilități de ajutor, tastați caracterul C-h,
|
|
998 apoi un caracter ce specifică tipul de ajutor de care aveți nevoie.
|
|
999 În cazul în care sunteți nelămurit, tastați C-h ? și Emacs-ul vă va
|
|
1000 spune ce fel de ajutor vă poate oferi. Dacă ați tastat C-h și vă
|
|
1001 răzgândiți (nu mai doriți ajutor) puteți tasta C-g pentru a anula
|
|
1002 comanda.
|
|
1003
|
|
1004 (Anumite site-uri remapează caracterul C-h. Nu ar trebui să facă asta
|
|
1005 orbește pentru toți utilizatorii - aveți motiv să vă plângeți
|
|
1006 administratorului de sistem. Între timp, dacă C-h nu afișează un
|
|
1007 mesaj despre ajutor la marginea de jos a ecranului, încercați M-x
|
|
1008 help<Return> în loc.)
|
|
1009
|
|
1010 Comanda elementară de ajutor este C-h c. Tastați C-h, apoi caracterul
|
|
1011 c și o comandă alcătuită dintr-un caracter sau secvență de caractere
|
|
1012 și Emacs-ul va afișa o scurtă descriere a comenzii.
|
|
1013
|
|
1014 >> Tastați C-h c C-p.
|
|
1015
|
|
1016 Mesajul ar trebui să fie ceva de genul
|
|
1017
|
|
1018 C-p runs the command previous-line
|
|
1019
|
|
1020 Aceasta vă spune "numele funcției". Numele de funcții sunt folosite
|
|
1021 în principal pentru a adapta și extinde Emacs-ul, dar, cum numele
|
|
1022 funcțiilor sunt alese în așa fel încât să indice actiunea comenzii
|
|
1023 respective, ele pot servi ca o documentație foarte scurtă, suficientă
|
|
1024 ca să vă amintească de comenzi pe care le-ați învățat deja.
|
|
1025
|
|
1026 Comenzile formate din mai multe caractere (cum ar fi C-x C-s) și (dacă
|
|
1027 nu aveți o tasta META, EDIT sau ALT) <ESC> v sunt de asemenea permise
|
|
1028 după C-h c.
|
|
1029
|
|
1030 Pentru a obține mai multe informații despre o comandă, folosiți C-h k
|
|
1031 în loc de C-h c.
|
|
1032
|
|
1033 >> Tastați C-h k C-p.
|
|
1034
|
|
1035 Această comandă afișează documentația și numele funcției într-o
|
|
1036 fereastră separată. Când terminați de citit, tastați q pentru a
|
|
1037 o elimina. Nu trebuie să faceți acest lucru imediat. Puteți edita
|
|
1038 o vreme, citind textul din fereastra de ajutor.
|
|
1039
|
|
1040 Câteva comenzi C-h utile:
|
|
1041
|
|
1042 C-h f descrie o funcție al cărei nume trebuie să-l
|
|
1043 introduceți
|
|
1044
|
|
1045 >> Încercați să tastați C-h f previous-line<Return>.
|
|
1046 Aceasta afișează toată informația pe care o are Emacs-ul despre
|
|
1047 funcția ce implementează comanda C-p.
|
|
1048
|
|
1049 C-h a Command Apropos. Tastați un cuvânt cheie și Emacs-ul va
|
|
1050 lista toate funcțiile și variabilele ale căror nume
|
|
1051 conțin acel cuvânt cheie. La stânga comenzilor care
|
|
1052 pot fi invocate cu M-x va fi afișată o steluță.
|
|
1053 Pentru unele comenzi, Command Apropos va lista o
|
|
1054 secvență de unul sau două caractere ce execută aceeași
|
|
1055 comandă.
|
|
1056
|
|
1057 >> Tastați C-h a fișier<Return>.
|
|
1058
|
|
1059 Aceasta afișează într-o altă ferastră o listă a tuturor comenzilor M-x
|
|
1060 al căror nume conține "fișier". Veți vedea caractere-comandă de genul
|
|
1061 C-x C-f listate lângă comanda nume corespunzătoare (find-file).
|
|
1062
|
|
1063 >> Tastați C-M-v ca să deplasați conținutul ferestrei de ajutor.
|
|
1064 Faceți acest lucru de câteva ori.
|
|
1065
|
|
1066 >> Tastați C-x 1 pentu a șterge fereastra de ajutor.
|
|
1067
|
|
1068
|
|
1069 * CONCLUZII
|
|
1070 -----------
|
|
1071
|
|
1072 Țineți minte, pentru a ieși permanent din Emacs, folosiți C-x C-c.
|
|
1073 Pentru a ieși temporar într-un shell (în așa fel încât să vă puteți
|
|
1074 întoarce la Emacs mai târziu) folosiți C-z.
|
|
1075
|
|
1076 Acest tutorial a fost organizat în așa fel încât să fie pe înțelesul
|
|
1077 noilor utilizatori - nu vă sfiiți să vă plângeți autorilor dacă gasiți
|
|
1078 ceva neclar!
|
|
1079
|
|
1080
|
|
1081 COPIERE
|
|
1082 -------
|
|
1083
|
|
1084 Acest tutorial este rezultatul prelucrării unei serii lungi de
|
|
1085 tutoriale pentru Emacs derivate din cel scris de Stuart Cracraft
|
|
1086 pentru versiunea inițială de Emacs.
|
|
1087
|
|
1088 Cu scopul evitării oricăror confuzii datorate traducerii, las în
|
|
1089 continuare noțita de copyright originală în limba engleză.
|
|
1090
|
|
1091 This version of the tutorial, like GNU Emacs, is copyrighted, and
|
|
1092 comes with permission to distribute copies on certain conditions:
|
|
1093
|
88155
|
1094 Copyright (C) 1998, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
|
25853
|
1095
|
|
1096 Permission is granted to anyone to make or distribute verbatim copies
|
|
1097 of this document as received, in any medium, provided that the
|
|
1098 copyright notice and permission notice are preserved,
|
|
1099 and that the distributor grants the recipient permission
|
|
1100 for further redistribution as permitted by this notice.
|
|
1101
|
|
1102 Permission is granted to distribute modified versions
|
|
1103 of this document, or of portions of it,
|
|
1104 under the above conditions, provided also that they
|
|
1105 carry prominent notices stating who last altered them.
|
|
1106
|
|
1107 Condițiile de copiere a Emacs-ului sunt mai complexe, dar în același
|
|
1108 spirit. Citiți fișierul COPYING și apoi distribuiți prietenilor copii
|
|
1109 ale Emacs-ului. Contribuiți la eliminarea obstrucționismului software
|
|
1110 folosind, scriind și distribuind free software!
|
88155
|
1111
|
|
1112 ;;; Local Variables:
|
|
1113 ;;; coding: iso-latin-2
|
|
1114 ;;; End:
|
|
1115
|
|
1116 ;;; arch-tag: dcf252cf-bd67-4f8d-a440-1ec4b8dbfd70
|