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