all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
blob ec437968251c652c4fac6a84e5fcb2691636f23a 49502 bytes (raw)
name: calfw-org.el 	 # note: path name is non-authoritative(*)

   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
 167
 168
 169
 170
 171
 172
 173
 174
 175
 176
 177
 178
 179
 180
 181
 182
 183
 184
 185
 186
 187
 188
 189
 190
 191
 192
 193
 194
 195
 196
 197
 198
 199
 200
 201
 202
 203
 204
 205
 206
 207
 208
 209
 210
 211
 212
 213
 214
 215
 216
 217
 218
 219
 220
 221
 222
 223
 224
 225
 226
 227
 228
 229
 230
 231
 232
 233
 234
 235
 236
 237
 238
 239
 240
 241
 242
 243
 244
 245
 246
 247
 248
 249
 250
 251
 252
 253
 254
 255
 256
 257
 258
 259
 260
 261
 262
 263
 264
 265
 266
 267
 268
 269
 270
 271
 272
 273
 274
 275
 276
 277
 278
 279
 280
 281
 282
 283
 284
 285
 286
 287
 288
 289
 290
 291
 292
 293
 294
 295
 296
 297
 298
 299
 300
 301
 302
 303
 304
 305
 306
 307
 308
 309
 310
 311
 312
 313
 314
 315
 316
 317
 318
 319
 320
 321
 322
 323
 324
 325
 326
 327
 328
 329
 330
 331
 332
 333
 334
 335
 336
 337
 338
 339
 340
 341
 342
 343
 344
 345
 346
 347
 348
 349
 350
 351
 352
 353
 354
 355
 356
 357
 358
 359
 360
 361
 362
 363
 364
 365
 366
 367
 368
 369
 370
 371
 372
 373
 374
 375
 376
 377
 378
 379
 380
 381
 382
 383
 384
 385
 386
 387
 388
 389
 390
 391
 392
 393
 394
 395
 396
 397
 398
 399
 400
 401
 402
 403
 404
 405
 406
 407
 408
 409
 410
 411
 412
 413
 414
 415
 416
 417
 418
 419
 420
 421
 422
 423
 424
 425
 426
 427
 428
 429
 430
 431
 432
 433
 434
 435
 436
 437
 438
 439
 440
 441
 442
 443
 444
 445
 446
 447
 448
 449
 450
 451
 452
 453
 454
 455
 456
 457
 458
 459
 460
 461
 462
 463
 464
 465
 466
 467
 468
 469
 470
 471
 472
 473
 474
 475
 476
 477
 478
 479
 480
 481
 482
 483
 484
 485
 486
 487
 488
 489
 490
 491
 492
 493
 494
 495
 496
 497
 498
 499
 500
 501
 502
 503
 504
 505
 506
 507
 508
 509
 510
 511
 512
 513
 514
 515
 516
 517
 518
 519
 520
 521
 522
 523
 524
 525
 526
 527
 528
 529
 530
 531
 532
 533
 534
 535
 536
 537
 538
 539
 540
 541
 542
 543
 544
 545
 546
 547
 548
 549
 550
 551
 552
 553
 554
 555
 556
 557
 558
 559
 560
 561
 562
 563
 564
 565
 566
 567
 568
 569
 570
 571
 572
 573
 574
 575
 576
 577
 578
 579
 580
 581
 582
 583
 584
 585
 586
 587
 588
 589
 590
 591
 592
 593
 594
 595
 596
 597
 598
 599
 600
 601
 602
 603
 604
 605
 606
 607
 608
 609
 610
 611
 612
 613
 614
 615
 616
 617
 618
 619
 620
 621
 622
 623
 624
 625
 626
 627
 628
 629
 630
 631
 632
 633
 634
 635
 636
 637
 638
 639
 640
 641
 642
 643
 644
 645
 646
 647
 648
 649
 650
 651
 652
 653
 654
 655
 656
 657
 658
 659
 660
 661
 662
 663
 664
 665
 666
 667
 668
 669
 670
 671
 672
 673
 674
 675
 676
 677
 678
 679
 680
 681
 682
 683
 684
 685
 686
 687
 688
 689
 690
 691
 692
 693
 694
 695
 696
 697
 698
 699
 700
 701
 702
 703
 704
 705
 706
 707
 708
 709
 710
 711
 712
 713
 714
 715
 716
 717
 718
 719
 720
 721
 722
 723
 724
 725
 726
 727
 728
 729
 730
 731
 732
 733
 734
 735
 736
 737
 738
 739
 740
 741
 742
 743
 744
 745
 746
 747
 748
 749
 750
 751
 752
 753
 754
 755
 756
 757
 758
 759
 760
 761
 762
 763
 764
 765
 766
 767
 768
 769
 770
 771
 772
 773
 774
 775
 776
 777
 778
 779
 780
 781
 782
 783
 784
 785
 786
 787
 788
 789
 790
 791
 792
 793
 794
 795
 796
 797
 798
 799
 800
 801
 802
 803
 804
 805
 806
 807
 808
 809
 810
 811
 812
 813
 814
 815
 816
 817
 818
 819
 820
 821
 822
 823
 824
 825
 826
 827
 828
 829
 830
 831
 832
 833
 834
 835
 836
 837
 838
 839
 840
 841
 842
 843
 844
 845
 846
 847
 848
 849
 850
 851
 852
 853
 854
 855
 856
 857
 858
 859
 860
 861
 862
 863
 864
 865
 866
 867
 868
 869
 870
 871
 872
 873
 874
 875
 876
 877
 878
 879
 880
 881
 882
 883
 884
 885
 886
 887
 888
 889
 890
 891
 892
 893
 894
 895
 896
 897
 898
 899
 900
 901
 902
 903
 904
 905
 906
 907
 908
 909
 910
 911
 912
 913
 914
 915
 916
 917
 918
 919
 920
 921
 922
 923
 924
 925
 926
 927
 928
 929
 930
 931
 932
 933
 934
 935
 936
 937
 938
 939
 940
 941
 942
 943
 944
 945
 946
 947
 948
 949
 950
 951
 952
 953
 954
 955
 956
 957
 958
 959
 960
 961
 962
 963
 964
 965
 966
 967
 968
 969
 970
 971
 972
 973
 974
 975
 976
 977
 978
 979
 980
 981
 982
 983
 984
 985
 986
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
 
Tutorialului de Emacs.  A se citi sfârşitul pentru condiţii.
Traducere din engleză de Tudor Hulubei <tudor@gnu.org>.
Mulţumiri Aidei Hulubei <aida@chang.pub.ro> pentru corecturi şi sugestii.

Această versiune a fost produsă plecând de la versiunea în limba
engleză, care este
Copyright (c) 1985, 2013-2014 Free Software Foundation, Inc.

Citiţi acum versiunea românească a tutorialului de Emacs.

Comenzile Emacs folosesc în general tasta CONTROL (uneori denumită
CTRL sau CTL) sau tasta META (uneori denumita EDIT sau ALT).  În loc
să scriem META sau CONTROL de fiecare dată când vrem să prefixăm un
caracter, vom folosi următoarele prescurtări:

 C-<chr> înseamnă că ţineţi apăsată tasta CONTROL în timp ce tastaţi
	 caracterul <chr>.  Astfel, C-f înseamnă: ţineţi apăsată tasta
	 CONTROL şi tastaţi f.

 M-<chr> înseamnă că ţineţi apăsată tasta META, EDIT sau ALT în timp
	 ce tastaţi <chr>.  Dacă nu există tasta META, EDIT sau ALT,
	 tastaţi <ESC>, ridicaţi şi apoi tastaţi caracterul <chr>.
	 Am notat cu <ESC> tasta ESC.

Observaţie importantă: pentru a termina sesiunea Emacs, tastaţi C-x
C-c.  (Două caractere.)  Caracterele ">>" la marginea din stânga
reprezintă instrucţiuni pentru a încerca o comandă.  De exemplu:
<<Liniile goale introduse aici de iniţializarea comenzii help-with-tutorial>>
>> Acum tastaţi C-v (citirea următorului ecran) pentru a vă muta la
   următorul ecran.  (Executaţi această comandă acum, tinând apăsată
   tasta CONTROL în timp ce tastaţi v).  De acum înainte faceţi acest
   lucru din nou, de fiecare dată când terminaţi de citit ecranul.

De remarcat că există o zonă de suprapunere de două linii când vă
mutaţi de la un ecran la altul; aveţi astfel o oarecare continuitate
în citirea textului.

Primul lucru pe care trebuie să-l stiţi este cum să vă deplasaţi din
loc în loc în text.  Ştiţi deja cum să vă mutaţi la următorul ecran cu
C-v.  Pentru a vă deplasa înapoi un ecran, tastaţi M-v (ţineţi apăsată
tasta META şi tastaţi v, sau <ESC> v dacă nu aveţi o tastă META, EDIT,
sau ALT).

>> Încercaţi să tastaţi M-v şi apoi C-v de câteva ori.


* SUMAR
-------

Următoarele comenzi sunt utile pentru a vedea ecrane:

	C-v	avansează un ecran
	M-v	înapoi un ecran
	C-l	şterge ecranul şi reafişează totul poziţionând textul
		de lângă cursor în centrul ecranului.  (Este C-L, nu
		C-1.)

>> Găsiţi cursorul şi ţineţi minte ce text este în jurul lui.
   Apoi tastaţi C-l.  Găsiţi cursorul din nou şi observaţi că textul
   de lângă cursor este acelaşi.


* COMENZI DE BAZĂ PENTRU CONTROLUL CURSORULUI
---------------------------------------------

Mutatul ecran cu ecran este util, dar cum vă mutaţi la o anumită
poziţie în textul de pe ecran?

Sunt mai multe modalitaţi în care puteţi face acest lucru.  Cel mai
simplu este să folosiţi comenzile C-p, C-b, C-f şi C-n.  Fiecare din
aceste comenzi mută cursorul o linie sau coloană într-o anumită
direcţie pe ecran.  Diagrama următoare prezintă aceste patru comenzi
şi arată direcţiile în care ele mută cursorul.

			 Linia precedentă, C-p
				  :
				  :
    Înapoi, C-b .... Poziţia curentă a cursorului .... Înainte, C-f
				  :
				  :
			 Linia următoare, C-n

>> Mutaţi cursorul la linia din mijlocul diagramei folosind C-n sau
   C-p.  Tastaţi apoi C-l pentru a vedea întreaga diagramă centrată pe
   ecran.

Vi se va părea probabil mai simplu să vă amintiţi aceste comenzi
gândindu-vă la semnificaţia lor în limba engleză: P pentru previous, N
pentru next, B pentru backward şi F pentru forward.  Acestea sunt
comenzile de bază pentru poziţionarea cursorului şi le veţi folosi tot
timpul, deci ar fi foarte util să le învăţaţi acum.

>> Tastaţi câteva C-n-uri pentru a aduce cursorul la această linie.

>> Mutaţi-vă în interiorul liniei cu C-f-uri şi apoi în sus cu
   C-p-uri.  Urmăriţi ce face C-p atunci când cursorul este în
   mijlocul liniei.

Fiecare linie se termină cu un caracter NEWLINE care o separă de linia
următoare.  Ultima linie în fişierele dumneavoastră ar trebui să aibă
un asemenea caracter la sfârşit (deşi Emacs-ul nu-l necesită).

>> Încercaţi să tastaţi C-b la începutul unei linii.  Cursorul ar
   trebui să se mute la sfârşitul liniei precedente, din cauza
   trecerii peste caracterul NEWLINE.

C-f poate să treacă peste un caracter NEWLINE, la fel ca şi C-b.

>> Tastaţi câteva C-b-uri, pentru a vă familiariza cu poziţia
   cursorului.  Tastaţi apoi câteva C-f-uri pentru a vă întoarce la
   sfârşitul liniei.  Încă un C-f şi vă veţi muta la linia următoare.

Când ajungeţi să treceţi peste începutul sau sfârşitul ecranului,
textul aflat dincolo de margine intră în ecran, permiţându-i
Emacs-ului să mute cursorul la poziţia specificată, fără a ieşi din
zona vizibilă (ecran).  Această operaţiune se numeste în limba engleză
"scrolling".

>> Încercaţi să mutaţi cursorul în afara părţii de jos a ecranului cu
   C-n şi observaţi ce se întamplă.

Dacă mutatul caracter cu caracter este lent, puteţi muta cursorul
cuvânt cu cuvânt.  M-f (META-f) avansează cursorul cu un cuvânt, iar
M-b mută cursorul un cuvânt înapoi.

>> Tastaţi câteva M-f-uri şi apoi câteva M-b-uri.

Când cursorul este în mijlocul unui cuvânt, M-f îl mută la sfârşitul
cuvântului.  Când cursorul este în spaţiul dintre cuvinte, M-f îl mută
la sfârşitul cuvântului următor.  M-b acţionează similar, dar în
direcţia opusă.

>> Tastaţi M-f şi M-b de câteva ori, intercalate cu C-f-uri şi
   C-b-uri, pentru a observa efectul comenzilor M-f şi M-b din diverse
   poziţii în interiorul cuvintelor şi între ele.

Observaţi paralela între C-f şi C-b pe de o parte, şi M-f şi M-b pe de
cealaltă parte.  De multe ori, caracterele META sunt folosite pentru
operaţii referitoare la unităţile definite de limbaj (cuvinte, fraze,
paragrafe), în timp ce caracterele CONTROL operează pe unităţi de
bază, care sunt independente de tipul textului editat (caractere,
linii, etc).

Această paralelă se aplică şi între linii şi fraze: C-a şi C-e mută
cursorul la începutul şi, respectiv sfârşitul unei linii, în timp ce
M-a şi M-e îl mută la începutul şi, respectiv sfârşitul unei fraze.

>> Încercaţi câteva C-a-uri, apoi câteva C-e-uri.
   Încercaţi câteva M-a-uri, apoi câteva M-e-uri.

Remarcaţi cum repetarea tastării lui C-a nu schimbă nimic, în timp ce
repetarea tastării lui M-a mută cursorul la fraza următoare.  Deşi
aceste operaţii nu sunt tocmai analoage, fiecare pare naturală.

Poziţia cursorului în text mai este numită şi "punct" ("point" în
limba engleză).  Cursorul arată pe ecran poziţia punctului în text.

Operaţiile ce mută cursorul (inclusiv comenzile ce mută cursorul
cuvânt cu cuvânt sau frază cu frază) sunt prezentate în sumarul
următor:

	C-f	avansează un caracter
	C-b	înapoi un caracter

	M-f	avansează un cuvânt
	M-b	înapoi un cuvânt

	C-n	avansează o linie
	C-p	înapoi o linie

	C-a	înapoi la începutul liniei
	C-e	avansează la sfârşitul liniei

	M-a	înapoi la începutul frazei
	M-e	avansează la sfârşitul frazei

>> Exersaţi toate aceste comenzi acum, sunt comenzile cele mai des
   folosite.

Două alte comenzi importante legate de mutatul cursorului sunt M-<
(META Mai-mic), care mută cursorul la începutul textului, şi M-> (META
Mai-mare), care mută cursorul la sfârşitul textului.

Pe majoritatea terminalelor "<" este deasupra virgulei şi deci este
necesar să apăsaţi tasta SHIFT în acelaşi timp.  Pe aceste terminale
este nevoie să apăsaţi SHIFT şi când tastaţi M-<; fără tasta SHIFT,
aţi apăsa M-virgulă.

>> Încercaţi M-< acum, pentru a vă muta la începutul tutorialului.
   Folosiţi apoi C-v în mod repetat pentru a ajunge înapoi aici.

>> Încercaţi M-> acum, pentru a vă muta la sfârşitul tutorialului.
   Folosiţi apoi M-v repetat pentru a ajunge înapoi aici.

Puteţi de asemenea să mutaţi cursorul cu tastele săgeţi, dacă
terminalul are asemenea taste.  Se recomandă însă acomodarea cu C-b,
C-f, C-n şi C-p din trei motive.  În primul rând, aceste taste
funcţionează pe toate tipurile de terminale.  În al doilea rând, odată
ce vă obişnuiţi cu Emacs-ul, veţi remarca faptul că tastarea lor este
mai rapidă decât cea a tastelor săgeţi (pentru că nu trebuie să vă
schimbaţi poziţia mâinilor pe tastatură).  În al treilea rând, odată
format obiceiul de a folosi aceste comenzi bazate pe CONTROL,
comenzile avansate de mutat cursorul se învaţă foarte uşor.

Majoritatea comenzilor Emacs acceptă un argument numeric; pentru
majoritatea comenzilor, acest argument reprezintă un contor de
repetiţie.  Contorul de repetiţie se introduce tastând C-u, cifrele ce
alcătuiesc contorul şi apoi comanda.  Dacă aveţi tasta META (EDIT sau
ALT), există şi o altă alternativă pentru a introduce un argument
numeric: tastaţi cifrele în timp ce ţineţi tasta META apăsată.  Se
recomandă însă folosirea metodei cu C-u, deoarece funcţionează pe
orice terminal.

De exemplu, C-u 8 C-f avansează cursorul cu opt caractere.

>> Încercaţi să folosiţi C-n sau C-p cu un argument numeric pentru a
   muta cursorul dintr-o singură comandă pe o linie apropiată de
   aceasta.

Majoritatea comenzilor utilizează argumentul numeric ca un contor de
repetitie.  Anumite comenzi speciale îl folosesc însa în mod diferit.
C-v si M-v sunt printre aceste excepţii.  Când li se dă un argument
numeric, ele mută ecranul mai sus sau mai jos cu numarul specificat de
linii, nu de ecrane.  De exemplu, C-u 4 C-v mută ecranul cu 4 linii.

>> Încercaţi să tastaţi C-u 8 C-v acum.

Această comandă trebuie să mute ecranul în sus cu 8 linii.  Dacă
doriti să îl mutaţi înapoi, puteţi să-i daţi lui M-v un argument
numeric.

Dacă folosiţi sistemul X Window, există probabil o zonă rectangulară
numita "scroll bar" la dreapta ferestrei Emacs-ului.  Puteţi deplasa
textul manipulând "scroll bar"-ul cu mouse-ul.

>> Încercaţi să apăsaţi butonul din mijloc al mouse-ului la mijlocul
   butonului din scroll bar.  Aceasta ar trebui să mute textul la o
   poziţie determinată de cât de sus sau de jos aţi apăsat pe scroll
   bar.

>> Încercaţi să mutaţi mouse-ul în sus şi în jos ţinând butonul din
   mijloc apăsat.  Veţi vedea că textul se deplasează în sus şi în jos
   corespunzător cu mişcarea mouse-ului.


* CÂND EMACS-ul ESTE BLOCAT
---------------------------

Dacă Emacs-ul încetează să vă raspundă la comenzi, îl puteţi opri,
fără să pierdeţi modificările făcute până acum, tastând C-g.  Puteţi
folosi C-g pentru a opri o comandă care durează prea mult.

Puteţi de asemenea folosi C-g pentru a opri introducerea unui argument
numeric sau începutul unei comenzi pe care nu doriţi să o continuaţi.

>> Tastaţi C-u 100 pentru a introduce 100 ca un argument numeric, apoi
   tastaţi C-g.  Tastaţi apoi C-f.  Cursorul ar trebui să se mute un
   singur caracter, pentru că aţi oprit introducerea argumentului
   numeric cu C-g.

Dacă aţi tastat un <ESC> din greşeală, puteţi să-l anulaţi cu un C-g.


* COMENZI DEZAFECTATE
---------------------

Anumite comenzi sunt dezafectate în Emacs, în aşa fel încât
utilizatorii să nu le poată folosi din neatenţie.

Dacă tastaţi una din comenzile dezafectate, Emacs-ul va afişa un mesaj
spunând ce comandă aţi tastat şi întrebându-vă dacă doriţi să
continuaţi.

Dacă într-adevăr doriţi să încercaţi comanda respectivă, tastaţi
SPAŢIU.  În mod normal, dacă nu doriţi să executaţi comanda
dezafectată, răspundeţi cu "n".

>> Tastaţi <ESC> : (care este o comandă dezafectată), apoi tastaţi n
   ca răspuns la întrebarea pusă de Emacs.


* FERESTRE
----------

Emacs-ul poate avea mai multe ferestre, fiecare afişând propriul său
text.  Vom explica mai târziu tehnicile de folosire a ferestrelor
multiple.  Acum vrem să explicăm cum să închideţi ferestrele care ar
putea apare ca rezultat al afişării unor documentaţii sau rezultate
specifice anumitor comenzi.  Este simplu:

	C-x 1   o singură fereastră (adică închide toate celelalte
		ferestre).

Asta înseamnă CONTROL-x urmat de cifra 1.  C-x 1 măreşte fereastra
care conţine cursorul până când ocupă întregul ecran.  Toate celelalte
ferestre sunt distruse.

>> Mutaţi cursorul la această linie şi tastaţi C-u 0 C-l.

>> Tastaţi C-h k C-f.  Observaţi cum această fereastră se micşorează,
   în timp ce o nouă fereastră apare, afişând documentaţia comenzii
   C-f.

>> Tastaţi C-x 1 şi observaţi cum noua fereastră dispare.


* INTRODUCEREA ŞI ŞTERGEREA
---------------------------

Dacă vreţi să introduceţi text, pur şi simplu tastaţi textul dorit.
Caracterele pe care le puteţi vedea, cum ar fi A, 7, *, etc. sunt
interpretate de Emacs ca text şi introduse imediat.  Tastaţi <Return>
(tasta mai este etichetată <Enter> uneori) pentru a introduce un
caracter NEWLINE.

Puteţi şterge ultimul caracter pe care l-aţi introdus tastând
<Delete>.  <Delete> este o tastă pe tastatură etichetată "Del" sau
"Delete".  În unele cazuri tasta "Backspace" poate acţiona ca
<Delete>, dar nu întotdeauna!

Mai general, <Delete> şterge caracterul dinaintea poziţiei curente a
cursorului.

>> Executaţi următoarele operaţii acum - tastaţi câteva caractere,
   apoi ştergeţi-le tastând <Delete> de câteva ori.  Nu vă temeţi că
   veţi schimba acest fişier; nu veţi altera versiunea principală a
   tutorialului.  Aceasta este copia dumneavoastră personală.

Când o linie de text devine prea mare pentru a putea fi reprezentată
pe o linie de ecran, linia de text este continuată pe următoarea linie
de pe ecran.  Un caracter backslash („\”) la marginea din dreapta
indică o linie care a fost continuată.

>> Introduceţi text până când depăşiţi cu câteva caractere marginea
   din dreapta a ecranului.  Veţi observa apariţia liniei de
   continuare.

>> Folosiţi <Delete>-uri pentru a şterge textul până când linia încape
   din nou pe o linie de ecran.  Linia de continuare va dispărea.

Puteţi şterge un caracter NEWLINE ca pe orice alt caracter.  Ştergerea
unui NEWLINE dintre două linii concateneaza cele două linii.  Dacă
linia rezultată este prea lungă pentru a fi afişată pe ecran, va fi
afişată cu o linie de continuare.

>> Mutaţi cursorul la începutul unei linii şi tastaţi <Delete>.
   Aceasta concatenează linia curentă cu cea precedentă.

>> Tastaţi <Return> pentru a reintroduce caracterul NEWLINE şters.

Aşa cum vă reamintiţi, majoritatea comenzilor Emacs pot primi un
argument numeric ce acţionează ca un contor de repetiţie; introducerea
caracterelor ascultă aceleaşi reguli.  Un argument numeric dat unui
caracter duce la introducerea caracterului respectiv de numărul
specificat de ori.

>>  Încercaţi asta acum - tastaţi C-u 8 * pentru a introduce ********.

Aţi învăţat acum metodele elementare de tastat şi corectat erori în
Emacs.  Puteţi de asemenea şterge cuvinte sau linii.  Acesta este un
sumar al operaţiilor de ştergere.

	<Delete>     şterge caracterul de dinaintea cursorului
	C-d   	     şterge caracterul de după cursor

	M-<Delete>   şterge cuvântul de dinaintea cursorului
	M-d	     şterge cuvântul de după cursor

	C-k	     şterge de la poziţia curentă până la sfârşitul
		     liniei
	M-k	     şterge de la poziţia curentă până la sfârşitul
		     frazei

De remarcat că <Delete> şi C-d versus M-<Delete> şi M-d extind
paralela începută de C-f şi M-f (<Delete> nu este cu adevărat un
caracter bazat pe CONTROL, dar nu o să ne ocupăm de asta acum).  C-k
şi M-k sunt ca C-e şi M-e, într-un fel, dacă facem o paralelă între
linii şi fraze.

Când ştergeţi mai mult de un caracter la un moment dat, Emacs-ul
păstrează intern textul distrus în aşa fel încât îl puteţi restaura.
Termenul folosit de Emacs pentru operaţiunea de restaurare a textului
distrus este "yanking".  Puteţi restaura textul distrus fie în acelaşi
loc, fie în alt loc în fişier.  Puteţi de asemenea restaura textul de
mai multe ori pentru a face mai multe copii.  Comanda de restaurare
este C-y.

Diferenţa dintre "distrugerea" şi "ştergerea" unei porţiuni din text
este aceea ca porţiunile de text "distruse" pot fi restaurate, în timp
ce porţiunile de text "şterse", nu.  În general, comenzile care
distrug porţiuni semnificative din text, păstrează intern textul
respectiv, în timp ce comenzile care şterg doar un caracter, linii
goale sau spaţii, nu fac acest lucru.

>> Mutaţi cursorul la începutul unei linii care nu este goală.
   Tastaţi apoi C-k pentru a distruge textul de pe linia respectivă.
>> Tastaţi C-k o a doua oară.  Veţi observa distrugerea caracterului
   NEWLINE de la sfârşitul liniei.

După cum vedeţi, un singur C-k distruge conţinutul liniei, iar un al
doilea C-k distruge linia însăşi, facând toate celelalte linii să se
mute în sus.  C-k tratează un argument numeric în mod special:
distruge numărul specificat de linii şi conţinutul lor.  Această
comportare nu este doar o simplă repetiţie.  C-u 2 C-k distruge două
linii şi NEWLINE-urile de după ele; tastând C-k de două ori nu
obţineţi acelaşi rezultat.

Pentru a extrage ultimul text distrus şi a-l plasa la poziţia curentă
a cursorului, tastaţi C-y.

>> Tastaţi C-y pentru a restaura textul distrus anterior.

Gânditi-vă la C-y ca şi cum aţi recupera ceva ce v-a fost luat.
Observaţi că dacă executaţi mai multe C-k-uri la rând, tot textul
distrus este stocat într-o singură bucată, în aşa fel încât un singur
C-y va restaura toate liniile.

>> Tastaţi acum C-k de câteva ori.

Acum încercaţi să restauraţi textul distrus:

>> Tastaţi C-y.  Mutaţi apoi cursorul câteva linii mai jos şi tastaţi
   C-y din nou.  Veţi vedea cum se copiază porţiuni de text.

Ce faceţi dacă aveţi porţiuni de text pe care vreţi să le restauraţi,
dar între timp distrugeţi o altă porţiune de text?  C-y va restaura
porţiunea de text care a fost distrusă cel mai recent.  Cu toate
acestea, textul distrus anterior nu este pierdut.  Puteţi să-l
restauraţi folosind comanda M-y.  După ce aţi executat C-y pentru a
obţine textul cel mai recent distrus, tastând M-y veţi înlocui textul
ce tocmai a fost restaurat cu textul distrus înaintea lui.  Tastând
M-y de mai multe ori puteţi obţine porţiuni de text distrus din ce în
ce mai vechi.  Odată ajunşi la textul care vă interesează, puteţi să
continuaţi editarea fără să mai faceţi nimic special, lasând textul
restaurat în poziţia în care se găseşte.

Dacă tastaţi M-y de suficient de multe ori, veţi ajunge în cele din
urmă la punctul de plecare (textul distrus cel mai de curând).

>> Distrugeţi o linie, mutaţi-vă puţin în jurul ei, distrugeţi o altă
   linie.  Executaţi apoi C-y pentru a obţine înapoi cea de-a doua
   linie distrusă.  Executaţi apoi M-y şi veţi constata că este
   înlocuită de prima linie distrusă.  Executaţi mai multe M-y-uri şi
   observaţi ce obţineţi.  Continuaţi să le executaţi până când a doua
   linie apare din nou, etc.  Dacă doriţi, puteţi încerca să-i daţi
   comenzii M-y argumente numerice pozitive şi negative.


* ANULARE
---------

Dacă faceţi o schimbare în text, şi apoi constataţi că aţi greşit,
puteţi anula schimbarea cu comanda de anulare, C-x u.

În mod normal, C-x u anulează schimbările făcute de o comandă; dacă
repetaţi C-x u de câteva ori la rând, fiecare nouă repetiţie anulează
încă o comandă.

Există însă două excepţii: comenzile care nu schimbă textul nu sunt
luate în considerare (acestea includ comenzile de mutat cursorul şi
cele de "scrolling"), iar caracterele introduse individual sunt
tratate în grupuri de maxim 20.  (Motivaţia din spatele acestei
abordări este aceea de a reduce numărul de C-x u-uri pe care trebuie
să le tastaţi pentru anularea inserărilor de text).

>> Distrugeţi linia aceasta cu C-k, apoi tastaţi C-x u; linia ar
   trebui să reapară.

C-_ este o altă comandă de anulare; funcţionează exact ca şi C-x u,
dar este mai uşor de tastat de mai multe ori la rând.  Dezavantajul
lui C-_ este că pe anumite tastaturi nu este clar cum trebuie tastat.
Din acest motiv există C-x u.  Pe unele terminale se poate să tastaţi
C-_ tastând "/" în timp ce ţineţi apăsată tasta CONTROL.

Un argument numeric la C-_ sau C-x u acţionează ca un contor de
repetiţie.


* FIŞIERE
---------

Pentru a face permanente modificările din textul pe care îl editaţi,
trebuie să-l stocaţi (salvaţi) într-un fişier.  Altminteri,
modificările se vor pierde în momentul părăsirii Emacs-ului.  Puneţi
textul într-un fişier "deschizând" (sau "vizitând") fişierul.

Deschiderea unui fişier înseamnă că puteţi vedea conţinutul fişierului
în Emacs.  Este ca şi cum aţi edita chiar fişierul, singura diferenţă
fiind aceea că schimbările nu devin permanente până când nu îl
"salvaţi" ("save" în limba engleză).  Se evită astfel existenţa în
sistem a unor fişiere incomplet modificate atunci când nu doriţi acest
lucru.  Chiar şi când salvaţi fişierul, Emacs-ul păstrează fişierul
iniţial (cu un nume schimbat) în aşa fel încât să-l puteţi recupera în
cazul în care decideţi că modificările efectuate au fost greşite.

Aproape de marginea de jos a ecranului veţi observa o linie care
începe şi se termină cu minusuri, şi conţine şirul "--:-- TUTORIAL.ro"
sau ceva în genul acesta.  Această parte a ecranului arată întotdeauna
numele fişierului pe care îl vizitaţi.  Acum vizitaţi fişierul
"TUTORIAL.ro" care este copia dumneavoastră de încercări a
tutorialului în limba română.  Orice fişier aţi edita, numele acelui
fişier va apărea în poziţia respectivă.

Comenzile pentru găsirea şi salvarea fişierelor sunt diferite de
celelalte comenzi pe care le-aţi învăţat, în sensul că sunt compuse
din două caractere.  Amândouă încep cu caracterul C-x.  Există o
întreagă serie de comenzi care încep cu C-x; multe dintre ele sunt
legate de fişiere, buffere şi alte lucruri înrudite.  Aceste comenzi
sunt compuse din două, trei sau patru caractere.

Comenzii de deschidere a unui fişier trebuie să îi spuneţi numele
fişierului dorit.  Spunem despre comandă ca "citeşte un argument de la
terminal" (în acest caz, argumentul este numele fişierului).  După ce
tastaţi comanda

	C-x C-f (deschide un fişier)

Emacs-ul vă va cere să introduceţi numele fişierului.  Numele pe care
îl tastaţi apare pe ultima linie a ecranului.  Această linie se
numeste "minibuffer" când este folosită pentru acest tip de
introducere.  Comenzile normale de editare în Emacs pot fi folosite şi
pentru editarea numelui fişierului.

În timp ce introduceţi numele fişierului (sau orice alt tip de
introducere de date în minibuffer), puteţi anula comanda cu C-g.

>> Tastaţi C-x C-f, apoi tastaţi C-g.  Aceasta anulează minibuffer-ul,
   şi, de asemenea, anulează comanda C-x C-f care îl folosea.  În
   concluzie, nu veţi mai deschide nici un fişier.

Când aţi terminat de introdus numele fişierului, tastaţi <Return>
pentru a-l încheia.  După aceasta, comanda C-x C-f începe să lucreze
şi deschide fişierul pe care l-aţi ales.  Minibuffer-ul dispare când
comanda C-x C-f se termină.

După câteva momente, conţinutul fişierului apare pe ecran şi îl puteţi
edita.  Când doriti să faceţi schimbările permanente, tastaţi comanda

	C-x C-s	(salvează fişierul)

Aceasta copiază textul din Emacs într-un fişier.  Prima oară când
faceţi acest lucru, Emacs-ul redenumeşte fişierul iniţial în aşa fel
încât să nu se piardă.  Noul nume este creat prin adăugarea
caracterului "~" la numele iniţial.

Când operaţiunea de salvare este terminată, Emacs-ul afişează numele
fişierului salvat.  Se recomandă salvarea la intervale relativ mici,
pentru a nu pierde prea multă muncă în cazul unei eventuale blocări a
sistemului.

>> Tastaţi C-x C-s, pentru a salva copia tutorialului.
   Aceasta ar trebui să afişeze "Wrote ...TUTORIAL.ro" la marginea de
   jos a ecranului.

Puteţi deschide un fişier existent, pentru a-l vedea sau edita.
Puteţi de asemenea deschide un fişier care nu există.  Aceasta este
modalitatea în care creaţi noi fişiere cu Emacs-ul: deschideţi
fişierul (care va fi gol iniţial), apoi începeţi să introduceţi text
în el.  Când îi veţi cere să "salveze" fişierul, Emacs-ul va crea
fişierul cu textul pe care l-aţi introdus.  De acum înainte puteţi
considera că editaţi un fişier existent.


* BUFFERE
---------

Dacă deschideţi un al doilea fişier cu C-x C-f, primul va continua să
existe în Emacs.  Puteţi să vă mutaţi înapoi la el deschizându-l din
nou cu C-x C-f.  În acest fel puteţi avea un număr destul de mare de
fişiere deschise în Emacs.

>> Creaţi un fişier numit "foo" tastând C-x C-f foo <Return>.
   Introduceţi un text oarecare, editaţi-l, apoi salvaţi "foo" tastând
   C-x C-s.  În cele din urmă, tastaţi C-x C-f TUTORIAL.ro <Return>
   pentru a vă întoarce la tutorial.

Emacs-ul stochează textul fiecărui fişier într-un obiect numit
"buffer".  Deschiderea unui fişier creează un nou buffer în Emacs.
Pentru a vedea o listă a bufferelor existente în Emacs, tastaţi

	C-x C-b	  (lista de buffere)

>> Încercaţi C-x C-b acum.

Observaţi cum fiecare buffer are un nume şi, uneori, un nume de fişier
corespunzător fişierului al cărui conţinut este menţinut în buffer-ul
respectiv.  Unele buffere nu corespund nici unui fişier.  De exemplu,
buffer-ul numit "*Buffer List*" nu are nici un fişier asociat.  Este
buffer-ul care conţine lista de buffere şi a fost creat de comanda C-x
C-b.  Orice text pe care îl vedeţi într-o fereastră a Emacs-ului este
întotdeauna parte dintr-un buffer.

>> Tastaţi C-x 1 pentru a scăpa de lista de buffere.

Dacă faceţi schimbări în textul unui fişier, apoi deschideţi un alt
fişier, primul fişier nu este salvat.  Schimbările efectuate rămân în
Emacs, în buffer-ul asociat acelui fişier.  Crearea sau editarea
buffer-ului celui de-al doilea fişier nu are nici un efect asupra
buffer-ului primului fişier.  Acest lucru este foarte util, dar
înseamnă că aveţi nevoie de o modalitate convenabilă de a salva
buffer-ul primului fişier.  Ar fi obositor să fie necesar să vă mutaţi
înapoi la el cu C-x C-f pentru a-l putea salva cu C-x C-s.  Din acest
motiv există comanda:

	C-x s	salvează nişte buffere

C-x s vă întreabă despre fiecare buffer care conţine modificări (şi
care nu a fost salvat) dacă doriţi să-l salvaţi.

>> Introduceţi o linie de text, apoi tastaţi C-x s.
   Ar trebui să vă întrebe dacă să salveze buffer-ul TUTORIAL.ro.
   Raspundeţi "da" la întrebare tastând "y".


* EXTINDEREA SETULUI DE COMENZI
-------------------------------

Există mult mai multe comenzi Emacs decât combinaţii de taste bazate
pe CONTROL şi META.  Soluţia în Emacs este folosirea comenzilor
eXtinse.  Acestea sunt de două feluri:

	C-x	eXtinde un caracter; urmată de un caracter
	M-x	eXtinde un nume; urmată de un nume lung

Acestea sunt comenzi care sunt utile în general, dar folosite mai rar
decât comenzile despre care aţi învăţat până acum.  Aţi văzut deja
două dintre ele: comanda de deschis fişiere (C-x C-f) şi comanda de
salvat fişiere (C-x C-s).  Un alt exemplu este comanda de părăsit
Emacs-ul: C-x C-c.  (Nu vă temeţi că veţi pierde schimbări făcute în
fişiere; înainte de a termina sesiunea curentă Emacs, C-x C-c vă va
întreba dacă doriţi să salvaţi fişierele modificate.)

C-z este comanda cu care puteţi ieşi din Emacs *temporar* - astfel
încât să puteţi să vă întoarceţi la aceeaşi sesiune Emacs mai târziu.

Pe sistemele unde este posibil, C-z "suspendă" Emacs-ul; asta înseamnă, deşi vă veţi întoarce la prompt-ul shell-ului, Emacs-ul nu a fost
distrus.  În shell-urile (interpretoarele de comenzi Unix) cele mai
uzuale puteţi reactiva Emacs-ul cu comanda "fg" sau "%emacs".

Pe sistemele care nu implementează mecanismele de suspendare, C-z
creează un subshell care rulează sub Emacs pentru a vă oferi
posibilitatea de a rula alte programe şi de a vă întoarce la Emacs mai
târziu; pe aceste sisteme C-z nu iese cu adevărat din Emacs - comanda
"exit" la promptul subshell-ului este modalitatea uzuală de a vă
întoarce în Emacs.

În general C-x C-c se foloseşte înainte de părăsirea sistemului.
Puteţi folosi această comandă şi pentru a ieşi din instanţe de Emacs
lansate de programe de citit mail sau alte utilitare, deoarece acestea
s-ar putea să nu fie capabile să folosească facilitaţile de suspendare
ale Emacs-ului.  În mod normal însă, dacă nu sunteţi pe cale să
părăsiţi sistemul, este mai bine să suspendaţi Emacs-ul cu C-z decât
să ieşiţi complet cu C-x C-c.

Emacs-ul are multe comenzi prefixate cu C-x.  Aceasta este lista celor
pe care le-aţi învăţat până acum:

	C-x C-f		deschide un fişier
	C-x C-s		salvează fişierul
	C-x C-b		listează bufferele
	C-x C-c		părăseşte Emacs-ul
	C-x u		anulează

Comenzile eXtinse cu nume sunt comenzile care sunt folosite şi mai rar
sau comenzile care sunt folosite numai în anumite moduri.  Un exemplu
este comanda replace-string (înlocuieşte-şir) care înlocuieşte global
toate apariţiile unui şir de caractere cu alt şir de caractere.  Când
tastaţi M-x, Emacs-ul afişează pe ultima linie de pe ecran "M-x" şi
puteţi introduce numele comenzii - în cazul nostru "replace-string".
Puteţi să tastaţi doar "repl s<TAB>" şi Emacs-ul va completa numele.
Terminaţi comanda cu <Return>.

Comanda replace-string necesită două argumente - şirul ce va fi
înlocuit şi şirul înlocuitor.  La sfârşitul introducerii fiecărui
argument trebuie să tastaţi <Return>.

>> Mutaţi cursorul pe linia goală care se găseste două linii mai jos.
   Tastaţi apoi M-x repl s<Return>modificat<Return>alterat<Return>.

   Observaţi modul în care această linie s-a modificat: aţi înlocuit
   toate apariţiile cuvântului s-c-h-i-m-b-a-t cu "alterat", după
   poziţia iniţială a cursorului.


* SALVARE AUTOMATĂ
------------------

Dacă aţi facut schimbări într-un fişier, dar nu le-aţi salvat, aceste
schimbări se pot pierde în cazul în care sistemul se blochează.
Pentru a vă proteja munca, Emacs-ul salvează periodic un fişier de
"autosalvare" pentru fiecare fişier pe care îl editaţi.  Acest fişier
are un "#" la început şi unul la sfârşit; de exemplu, dacă fişierul
dumneavoastră se numeste "hello.c", fişierul de autosalvare
corespunzător se va numi "#hello.c#".  Când salvaţi fişierul în mod
normal, Emacs-ul şterge fişierul de autosalvare.

În cazul unei căderi a sistemului, puteţi să vă recuperaţi fişierul de
autosalvare deschizând fişierul în mod normal (fişierul pe care îl
editaţi, nu pe cel de autosalvare) şi tastând după aceea M-x recover
file<Return>.  Când vi se cere confirmarea, tastaţi yes<Return> pentru
a continua şi a recupera fişierul.


* ZONA DE ECOU
--------------

Dacă Emacs-ul observă că tastaţi comenzile încet, vi le va arăta la
marginea de jos a ecranului într-o zona numită "zona de ecou".  Zona
de ecou conţine cea mai de jos linie a ecranului.


* LINIA DE MOD
--------------

Linia de deasupra zonei de ecou se numeşte "linia de mod" ("mode line"
în limba engleză).  Linia de mod conţine ceva de genul:

--**-Emacs: TUTORIAL          (Fundamental)--L670--58%----------------

Această linie prezintă informaţii utile despre starea Emacs-ului şi
despre textul pe care îl editaţi.

Stiţi deja ce înseamnă numele fişierului - este fişierul pe care l-aţi
deschis.  -NN%-- indică poziţia curentă a cursorului în text - NN la
sută din text este deasupra primei linii de pe ecran.  Dacă începutul
fişierului este vizibil pe ecran, veţi vedea --Top-- în loc de
--00%--.  Dacă sfârşitul fişierului este vizibil pe ecran, veţi vedea
--Bot-- (de la "bottom" în limba engleză).  Dacă fişierul este atât de
mic, încât încape în întregime pe ecran, pe linia de mod veţi vedea
--All--.

Stelele de la începutul liniei de mod semnalizează existenţa unor
modificări nesalvate în text.  Imediat după deschiderea fişierului,
porţiunea respectivă din linia de mod nu conţine nici o stea, doar
minusuri.

Porţiunea dinăuntrul parantezelor vă spune modul de editare curent.
Modul implicit este "Fundamental", modul pe care îl folosiţi chiar
acum.  Este un exemplu de "mod major".

Emacs-ul are multe moduri majore.  Unele dintre ele sunt destinate
editării diferitelor limbaje şi/sau tipuri de text, cum ar fi modul
Lisp, modul Text, etc.  Numai un mod major poate fi activ la un moment
dat şi numele său va fi întotdeauna acolo unde este "Fundamental"
acum.

Fiecare mod major schimbă comportamentul unor comenzi.  De exemplu
există comenzi pentru crearea comentariilor într-un program, dar, cum
fiecare limbaj de programare are o idee diferită despre felul cum ar
trebui să arate un comentariu, fiecare mod major trebuie să le
introducă într-un alt fel.  Există câte o comandă asociată fiecărui
mod major - aceasta este modalitatea de a schimba modul major.  De
exemplu, M-x fundamental-mode este comanda cu care poate fi ales modul
"Fundamental".

Dacă editaţi text în limba română, cum ar fi de exemplu acest fişier,
ar trebui probabil să folosiţi modul Text.

>> Tastaţi M-x text-mode<Return>.

Nu vă temeti, nici una din comenzile pe care le-aţi învăţat până acum
nu schimbă Emacs-ul prea mult.  Puteţi observa acum că M-f şi M-b
tratează apostrofurile ca parte din cuvinte.  Înainte, în modul
Fundamental, M-f şi M-b tratau apostrofurile ca separatoare de
cuvinte.

Modurile majore operează schimbări subtile, ca cea descrisă mai sus.
Majoritatea comenzilor execută aceeaşi operaţie în fiecare mod major,
dar funcţionează puţin diferit.

Pentru a vedea documentaţia referitoare la modul major curent, tastaţi
C-h m.

>> Folosiţi C-u C-v o dată sau de mai multe ori pentru a aduce această
   linie aproape de începutul ecranului.  Tastaţi C-h m ca să aflaţi
   diferenţele dintre modul Text şi modul Fundamental.  Tastaţi C-x 1
   pentru a şterge documentaţia de pe ecran.

Modurile majore se numesc "majore" pentru că există şi moduri minore.
Modurile minore sunt ajustări minore ale modurilor majore.  Fiecare
mod minor poate fi activat sau dezactivat separat, independent de
celelalte moduri minore şi independent de modul major curent.  Puteţi
să nu folosiţi nici un mod minor, un mod minor sau orice combinaţie de
moduri minore.

Un mod minor care este foarte util, în mod special când editaţi text,
este modul "Auto Fill".  Când acest mod este activat, Emacs-ul sparge
automat liniile la spaţiul dintre cuvinte de fiecare dată când
introducând text creaţi o linie care este prea lungă.

Puteţi activa modul "Auto Fill" executând M-x auto-fill-mode<Return>.
Când acest mod este activat, îl puteţi dezactiva executând aceeaşi
comandă.  Dacă modul este dezactivat, această comandă îl activează,
când este activat, comanda îl dezactivează.  Se spune că această
comandă inversează modul.

>> Tastaţi M-x auto-fill-mode<Return> acum.  Introduceţi apoi o linie
   conţinând "asdf " de mai multe ori, până când linia se sparge în
   două.  Trebuie să puneţi spaţii între cuvinte pentru că Auto Fill
   sparge linia numai la spaţii.

Marginea este stabilită în mod normal la 70 de caractere, dar puteţi
schimba această valoare cu comanda C-x f.  Introduceţi valoarea dorită
ca argument numeric pentru C-x f.

>> Tastaţi C-x f cu 20 ca argument numeric.  (C-u 2 0 C-x f).
   Introduceţi apoi un text oarecare şi observaţi cum Emacs-ul umple
   linii de maximum 20 de caractere.  Restauraţi marginea la 70 de
   caractere folosind din nou C-x f.

Dacă faceţi schimbări în mijlocul unui paragraf, modul Auto Fill nu
rearanjează paragraful.  Pentru a face acest lucru, trebuie să tastaţi
M-q (META-q) cu cursorul poziţionat înăuntrul paragrafului.

>> Mutaţi cursorul în paragraful precedent şi tastaţi M-q.


* CĂUTARE
---------

Emacs-ul poate caută şiruri (grupuri continue de caractere sau
cuvinte) fie înainte, fie înapoi (faţă de poziţia curentă a cursorului
în text).  Căutarea unui şir este o operaţie ce mută cursorul;
cursorul este mutat în poziţia corespunzătoare următoarei apariţii a
şirului în text.

Căutarea este diferită în Emacs faţă de majoritatea editoarelor,
deoarece este "incrementală".  Asta înseamnă că execuţia operaţiunii
de căutare se face în timp ce tastaţi şirul de căutat.

Comanda ce iniţiază căutarea este C-s pentru căutare înainte şi C-r
pentru căutare înapoi.  AŞTEPTAŢI!  Nu le încercaţi acum.

Când tastaţi C-s veţi remarca faptul că şirul "I-search" apare ca
prompt în zona de ecou.  Aceasta vă spune că Emacs-ul este în modul de
căutare incrementală, aşteptând ca dumneavoastră să introduceţi şirul
pe care doriţi să-l căutaţi.  Căutarea poate fi terminată cu <Return>.

>> Tastaţi acum C-s pentru a porni o căutare.  ÎNCET, câte o singură
   literă la un moment dat, tastaţi cuvântul "cursor", făcând o pauză
   după fiecare caracter tastat ca să observaţi ce se întamplă cu
   cursorul.  Acum aţi terminat de căutat prima apariţie a cuvântului
   "cursor".
>> Tastaţi C-s din nou, pentru a căuta următoarea apariţie a
   cuvântului "cursor".
>> Tastaţi acum <Delete> de patru ori şi observaţi mişcarea
   cursorului.
>> Tastaţi <Return> pentru a termina căutarea.

Aţi observat ce s-a întamplat?  În timpul unei căutări incrementale
Emacs-ul încearcă să se poziţioneze pe prima apariţie a şirului pe
care l-aţi introdus până în momentul respectiv.  Dacă vreţi să vă
poziţionaţi pe următoarea apariţie a cuvântului "cursor", nu trebuie
decât să tastaţi C-s încă o dată.  Dacă nu mai există o altă apariţie,
Emacs-ul va emite un sunet şi vă va anunţa că operaţiunea de căutare a
eşuat ("failed" în limba engleză).  C-g este o altă metodă de a
termina căutarea.

OBSERVAŢIE: Pe unele sisteme, C-s va bloca ecranul şi nu veţi mai
primi nici un răspuns de la Emacs.  Aceasta indică faptul că o
"facilitate" a sistemului de operare numită "controlul fluxului"
("flow control" în limba engleză) interceptează caracterul C-s şi
acesta nu mai ajunge la Emacs.  Pentru deblocarea ecranului, apăsaţi
C-q.  Puteţi găsi detalii referitoare la această aşa-numită
"facilitate" în secţiunea "Spontaneous Entry to Incremental Search"
din manualul Emacs-ului.

Dacă sunteţi în mijlocul unei căutări incrementale şi tastaţi
<Delete>, veţi observa că ultimul caracter în căutarea incrementală
este şters şi căutarea se întoarce la poziţia anterioară.  De exemplu,
să presupunem că aţi tastat "c", pentru a căuta prima apariţie a lui
"c".  Dacă tastaţi "u", cursorul se va muta la prima apariţie a lui
"cu".  Tastaţi acum <Delete>.  Aceasta va şterge "u"-ul din şirul de
căutare şi cursorul se va muta înapoi la prima apariţie a lui "c".

Căutarea incrementală poate fi terminată prin tastarea unui caracter
bazat pe CONTROL sau META (cu câteva excepţii - caracterele care sunt
specifice căutării, cum ar fi C-s şi C-r).

C-s începe o căutare care inspectează textul de DUPĂ poziţia curentă a
cursorului.  Dacă doriţi să căutaţi în textul dinaintea poziţiei
curente a cursorului, folosiţi C-r.  Toată discuţia referitoare la C-s
se aplică şi comenzii C-r, cu menţiunea că direcţia de căutare este
inversă.


* FERESTRE MULTIPLE
-------------------

Una dintre facilităţile importante ale Emacs-ului este aceea de a
afişa pe ecran mai multe ferestre simultan.

>> Mutaţi cursorul pe această linie şi tastaţi C-u 0 C-l.

>> Tastaţi acum C-x 2 pentru a împărţi ecranul în două ferestre.
   Amândouă ferestrele vor afişa acest tutorial.  Cursorul va rămane
   în fereastra din partea de sus a ecranului.

>> Tastaţi C-M-v pentru a mişca textul din fereastra de jos.
   (Dacă nu aveţi o tastă META, tastaţi ESC C-v.)

>> Tastaţi C-x o ("o" de la "other" - "cealaltă" în limba
   engleză) pentru a muta cursorul în fereastra de jos.

>> Tastaţi C-v şi M-v în fereastra de jos pentru a muta textul.
   Continuaţi să citiţi aceste instrucţiuni în fereastra de sus.

>> Tastaţi C-x o din nou pentru a muta cursorul înapoi în fereastra de
   sus.  Cursorul va fi plasat în locul unde a fost anterior.

Puteţi continua să folosiţi C-x o pentru a vă muta între ferestre.
Fiecare fereastră are propria ei poziţie a cursorului, dar numai o
fereastră arată cursorul la un moment dat.  Toate operaţiile normale
de editare au efect în fereastra în care se găseşte cursorul -
fereastra respectivă se numeşte "fereastra selectată".

Comanda C-M-v este foarte utilă când editaţi text într-o fereastră şi
folosiţi cealaltă fereastră pentru a citi documentaţii.  Puteţi ţine
întotdeauna cursorul în fereastra în care editaţi, în timp ce avansaţi
textul din cealaltă fereastră cu C-M-v.

C-M-v este un exemplu de caracter CONTROL-META.  Dacă aveţi o tastă
META, puteţi tasta C-M-v ţinând apăsate şi CONTROL şi META când tastaţi
v.  Nu contează care dintre CONTROL sau META este apăsată mai întâi,
pentru că amândouă acţionează prin modificarea caracterului pe care îl
tastaţi.

Dacă nu aveţi o tastă META şi folosiţi ESC în loc, ordinea este
importantă: trebuie să tastaţi ESC urmat de CONTROL-v; CONTROL-ESC v
nu va funcţiona, din cauza faptului că ESC este un caracter de sine
stătător, nu un modificator.

>> Tastaţi C-x 1 (în fereastra de sus) ca să renunţaţi la fereastra
   de jos.

(Dacă aţi tastat C-x 1 în fereastra de jos, această comandă va închide
fereastra de sus.  Gândiţi-vă la ea aşa "Păstrează doar o fereastră -
cea în care sunt acum.")

Nu este nevoie să afisaţi acelaşi buffer în ambele ferestre.  Dacă
folosiţi C-x C-f pentru a deschide un fişier într-o fereastră,
cealaltă fereastră nu se schimbă.  Puteţi deschide un fişier diferit
în fiecare fereastră.

O altă modalitate de a folosi două ferestre ca să afişaţi lucruri
diferite:

>> Tastaţi C-x 4 C-f apoi numele unui fişier.  Terminaţi comanda
   cu <Return>  Observaţi că fişierul specificat apare în fereastra de
   jos.  Cursorul la fel.

>> Tastaţi C-x o pentru a vă muta în fereastra de sus, apoi tastaţi
   C-x 1 pentru a şterge fereastra de jos.


* NIVELURI DE EDITARE RECURSIVĂ
-------------------------------

Uneori veţi intra în ceea ce se numeste un "nivel de editare
recursivă".  Acesta este indicat de prezenţa unor paranteze drepte în
linia de mod în jurul numelui modului major.  De exemplu, s-ar putea
să vedeţi [(Fundamental)] în loc de (Fundamental).

Pentru a ieşi din nivelul de editare recursivă, tastaţi ESC ESC ESC.
Aceasta este o comandă de ieşire de uz general.  O puteţi folosi şi ca
să ieşiţi din minibuffer sau ca să eliminaţi ferestrele în plus.

>> Tastaţi M-x pentru a intra în minibuffer; tastaţi apoi ESC ESC ESC
   ca să ieşiţi.

Nu puteţi folosi C-g pentru a ieşi dintr-un nivel de editare recursivă
deoarece comanda C-g este folosită pentru a anula comenzi şi argumente
înăuntrul unui nivel de editare recursivă.


* CUM PUTEŢI OBŢINE MAI MULTE INFORMAŢII
----------------------------------------

În acest tutorial am încercat să furnizăm suficiente informaţii pentru
a face primii paşi în Emacs.  Există atât de multe comenzi în Emacs
încât ar fi imposibil să le explicăm pe toate aici.  S-ar putea însă
să doriţi să învaţaţi mai multe despre Emacs, deoarece oferă foarte
multe facilitaţi interesante.  Există comenzi pentru a citi
documentaţia despre comenzile Emacs-ului.  Aceste comenzi ajutătoare
sunt prefixate cu caracterul C-h, denumit şi "caracterul de ajutor".

Pentru a folosi aceste facilităţi de ajutor, tastaţi caracterul C-h,
apoi un caracter ce specifică tipul de ajutor de care aveţi nevoie.
În cazul în care sunteţi nelămurit, tastaţi C-h ? şi Emacs-ul vă va
spune ce fel de ajutor vă poate oferi.  Dacă aţi tastat C-h şi vă
răzgândiţi (nu mai doriţi ajutor) puteţi tasta C-g pentru a anula
comanda.

(Anumite site-uri remapează caracterul C-h.  Nu ar trebui să facă asta
orbeşte pentru toţi utilizatorii - aveţi motiv să vă plângeţi
administratorului de sistem.  Între timp, dacă C-h nu afişează un
mesaj despre ajutor la marginea de jos a ecranului, încercaţi M-x
help<Return> în loc.)

Comanda elementară de ajutor este C-h c.  Tastaţi C-h, apoi caracterul
c şi o comandă alcătuită dintr-un caracter sau secvenţă de caractere
şi Emacs-ul va afişa o scurtă descriere a comenzii.

>> Tastaţi C-h c C-p.

Mesajul ar trebui să fie ceva de genul

	C-p runs the command previous-line

Aceasta vă spune "numele funcţiei".  Numele de funcţii sunt folosite
în principal pentru a adapta şi extinde Emacs-ul, dar, cum numele
funcţiilor sunt alese în aşa fel încât să indice actiunea comenzii
respective, ele pot servi ca o documentaţie foarte scurtă, suficientă
ca să vă amintească de comenzi pe care le-aţi învăţat deja.

Comenzile formate din mai multe caractere (cum ar fi C-x C-s) şi (dacă
nu aveţi o tasta META, EDIT sau ALT) <ESC> v sunt de asemenea permise
după C-h c.

Pentru a obţine mai multe informaţii despre o comandă, folosiţi C-h k
în loc de C-h c.

>> Tastaţi C-h k C-p.

Această comandă afişează documentaţia şi numele funcţiei într-o
fereastră separată.  Când terminaţi de citit, tastaţi q pentru a
o elimina.  Nu trebuie să faceţi acest lucru imediat.  Puteţi edita
o vreme, citind textul din fereastra de ajutor.

Câteva comenzi C-h utile:

   C-h f	descrie o funcţie al cărei nume trebuie să-l
		introduceţi

>> Încercaţi să tastaţi C-h f previous-line<Return>.
   Aceasta afişează toată informaţia pe care o are Emacs-ul despre
   funcţia ce implementează comanda C-p.

   C-h a 	Command Apropos.  Tastaţi un cuvânt cheie şi Emacs-ul va
		lista toate funcţiile şi variabilele ale căror nume
		conţin acel cuvânt cheie.  La stânga comenzilor care
		pot fi invocate cu M-x va fi afişată o steluţă.
		Pentru unele comenzi, Command Apropos va lista o
		secvenţă de unul sau două caractere ce execută aceeaşi
		comandă.

>> Tastaţi C-h a fişier<Return>.

Aceasta afişează într-o altă ferastră o listă a tuturor comenzilor M-x
al căror nume conţine "fişier".  Veţi vedea caractere-comandă de genul
C-x C-f listate lângă comanda nume corespunzătoare (find-file).

>> Tastaţi C-M-v ca să deplasaţi conţinutul ferestrei de ajutor.
   Faceţi acest lucru de câteva ori.

>> Tastaţi C-x 1 pentu a şterge fereastra de ajutor.


* CONCLUZII
-----------

Ţineţi minte, pentru a ieşi permanent din Emacs, folosiţi C-x C-c.
Pentru a ieşi temporar într-un shell (în aşa fel încât să vă puteţi
întoarce la Emacs mai târziu) folosiţi C-z.

Acest tutorial a fost organizat în aşa fel încât să fie pe înţelesul
noilor utilizatori - nu vă sfiiţi să vă plângeţi autorilor dacă gasiţi
ceva neclar!


COPIERE
-------

Acest tutorial este rezultatul prelucrării unei serii lungi de
tutoriale pentru Emacs derivate din cel scris de Stuart Cracraft
pentru versiunea iniţială de Emacs.

Cu scopul evitării oricăror confuzii datorate traducerii, las în
continuare noţita de copyright originală în limba engleză.

This version of the tutorial, like GNU Emacs, is copyrighted, and
comes with permission to distribute copies on certain conditions:

Copyright (C) 1998, 2001-2014 Free Software Foundation, Inc.

   Permission is granted to anyone to make or distribute verbatim copies
   of this document as received, in any medium, provided that the
   copyright notice and permission notice are preserved,
   and that the distributor grants the recipient permission
   for further redistribution as permitted by this notice.

   Permission is granted to distribute modified versions
   of this document, or of portions of it,
   under the above conditions, provided also that they
   carry prominent notices stating who last altered them.

Condiţiile de copiere a Emacs-ului sunt mai complexe, dar în acelaşi
spirit.  Citiţi fişierul COPYING şi apoi distribuiţi prietenilor copii
ale Emacs-ului.  Contribuiţi la eliminarea obstrucţionismului software
folosind, scriind şi distribuind free software!

;;; Local Variables:
;;; coding: utf-8
;;; End:

debug log:

solving ec43796 ...
found ec43796 in https://git.savannah.gnu.org/cgit/emacs.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.