aboutsummaryrefslogtreecommitdiffstats
path: root/etc/tutorials/TUTORIAL.pl
diff options
context:
space:
mode:
authorGlenn Morris2007-08-22 07:41:44 +0000
committerGlenn Morris2007-08-22 07:41:44 +0000
commit9ca6898a721a4fa3cf67497c0202ffc6ec18559e (patch)
tree7053ef6102d00a99cb62745de14f0dbeb5b26672 /etc/tutorials/TUTORIAL.pl
parenta523f0c74b25f548ec76877b6a50bffbbd2c3f9c (diff)
downloademacs-9ca6898a721a4fa3cf67497c0202ffc6ec18559e.tar.gz
emacs-9ca6898a721a4fa3cf67497c0202ffc6ec18559e.zip
Move tutorials from etc/ to etc/tutorials/
Diffstat (limited to 'etc/tutorials/TUTORIAL.pl')
-rw-r--r--etc/tutorials/TUTORIAL.pl1248
1 files changed, 1248 insertions, 0 deletions
diff --git a/etc/tutorials/TUTORIAL.pl b/etc/tutorials/TUTORIAL.pl
new file mode 100644
index 00000000000..352d92b46b4
--- /dev/null
+++ b/etc/tutorials/TUTORIAL.pl
@@ -0,0 +1,1248 @@
1Krótki samouczek Emacsa. Warunki kopiowania znajdują sie na końcu pliku.
2
3Polecenia Emacsa wymagają na ogół wciśnięcia klawisza CONTROL (oznaczanego
4czasami Ctrl lub CTL) lub klawisza META (oznaczanego czasami EDIT
5albo ALT). Dalej będziemy stosować następujące skróty:
6
7C-<znak> oznacza przytrzymanie klawisza CONTROL przy naciskaniu
8 klawisza <znak>. Na przykład C-f będzie odpowiadało
9 naciśnięciu f przy wciśniętym klawiszu CONTROL.
10M-<znak> oznacza przytrzymanie klawisza META lub ALT przy naciskaniu
11 klawisza <znak>. Zamiast tego można nacisnąć i puścić klawisz
12 ESC, a potem nacisnąć klawisz <znak>.
13
14Uwaga: aby zakończyć sesję Emacsa, naciśnij C-x C-c (kolejno dwa znaki).
15Znaki ">>" na lewym marginesie oznaczają w dalszej części tego samouczka
16ćwiczenia dla Ciebie. Na przykład:
17<<Blank lines inserted around following line by help-with-tutorial>>
18[Dodatkowe odstępy zostały zrobione w celach dydaktycznych.]
19>> Teraz naciśnij C-v (następny ekran), aby przejść na następny ekran
20 samouczka (zrób to naciskając jednocześnie klawisze CONTROL i v).
21 Od tego momentu powinieneś robić to zawsze, gdy dojdziesz
22 do końca ekranu.
23
24Zwróć uwagę na to, że kilka linii się powtarza, gdy przechodzisz z
25ekranu na następny; ma to zapewnić wrażenie ciągłości podczas przesuwania
26się w obrębie pliku.
27
28Pierwszą umiejętnością, która powinieneś opanować, jest sposób
29przesuwania się z miejsca na miejsce. Wiesz już, jak przesuwać się
30o jeden ekran do przodu. Aby przesunąć się o jeden ekran do tyłu,
31wciśnij kombinację klawiszy M-v (to znaczy wciśnij i przytrzymaj
32klawisz META lub Alt i jednocześnie naciśnij v albo naciśnij kolejno
33klawisze <ESC> v, jeśli nie masz klawisza META lub Alt).
34
35>> Spróbuj nacisnąć M-v, a potem C-v, by przesunąć się w przód i w tył
36 kilka razy.
37
38
39PODSUMOWANIE
40------------
41
42Następujące polecenia służą do przeglądania tekstu po jednym ekranie:
43
44 C-v Przesuń się o jeden ekran do przodu
45 M-v Przesuń się o jeden ekran do tyłu
46 C-l Wyczyść ekran i wyświetl go na nowo, umieszczając
47 tekst z okolic kursora w środku ekranu.
48 (Ta kombinacja to CONTROL-L, a nie CONTROL-1.)
49
50>> Znajdź kursor i zapamiętaj, jaki tekst jest w jego pobliżu.
51 Naciśnij następnie C-l.
52 Znajdź kursor jeszcze raz i zwróć uwagę, że znajduje się on
53 w pobliżu tego samego tekstu.
54
55Możesz także użyć klawiszy PageUp i PageDn, jeśli są dostępne na
56Twojej klawiaturze, do przemieszczania się między stronami, ale użycie
57C-v i M-v jest bardziej efektywne.
58
59PODSTAWY KIEROWANIA KURSOREM
60----------------------------
61
62Przesuwanie się z ekranu na ekran jest użyteczne, ale jak przejść do
63określonego miejsca w obrębie jednego ekranu?
64
65Można to zrobić na kilka sposobów. Najprostszym jest użycie poleceń
66C-p, C-b, C-f oraz C-n. Każde z nich przesuwa kursor o jeden wiersz
67albo kolumnę w określonym kierunku. Oto schemat, który to obrazuje:
68
69 Poprzednia linia, C-p
70 (ang. previous line)
71 :
72 :
73 Do tyłu, C-b .... Kursor .... Do przodu, C-f
74 (ang. back) : (ang. forward)
75 :
76 :
77 Następna linia, C-n
78 (ang. next line)
79
80>> Przesuń kursor na środek tego schematu za pomocą C-n lub C-p.
81 Potem naciśnij C-l, by zobaczyć cały diagram na środku ekranu.
82
83To są podstawowe polecenia kierujące położeniem kursora, których
84będziesz używał bardzo często, warto więc je zapamiętać.
85
86>> Naciśnij kilka razy C-n, by przesunąć kursor do tej linii.
87
88>> Przesuń się w głąb linii za pomocą C-f, a potem do góry za pomocą
89 C-p. Zwróć uwagę na zachowanie się C-p, gdy kursor jest w środku
90 linii.
91
92Każda linia tekstu kończy się znakiem nowej linii, który oddziela ją
93od następnej. Każdy Twój plik powinien się kończyć znakiem nowej
94linii (ale Emacs tego nie wymaga).
95
96>> Spróbuj nacisnąć C-b na początku linii. Powinno Cię to przenieść
97 na koniec poprzedniej linii. Dzieje się tak dlatego, że kursor
98 przechodzi wówczas nad znakiem nowej linii.
99
100C-f przechodzi nad znakiem nowej linii tak samo jak C-b.
101
102>> Naciśnij kilka razy C-b i obserwuj położenie kursora.
103 Naciskaj potem C-f, by wrócić na koniec linii. W końcu naciśnij
104 jeszcze raz C-f, by przejść do następnej linii.
105
106Gdy przesuwasz kursor poza dolną krawędź ekranu, tekst położony
107za krawędzią przesuwa się na ekran (ang. scrolling). Dzięki temu
108Emacs może przesunąć kursor do określonego miejsca bez umieszczania
109go poza ekranem.
110
111>> Spróbuj przesunąć kursor poza dolną granicę ekranu za pomocą C-n
112 i zobacz, co się stanie.
113
114Jeśli przesuwanie się o jeden znak na raz jest dla Ciebie zbyt wolne,
115to spróbuj przesuwać się o słowa. M-f (Meta-f) przesuwa kursor o słowo
116do przodu, a M-b przesuwa go o słowo do tyłu.
117
118>> Naciśnij kilka razy M-f i M-b.
119
120Gdy jesteś w środku słowa, to M-f przesuwa kursor na jego koniec.
121Jeśli natomiast jesteś w przerwie miedzy słowami, to M-f przesuwa
122kursor na koniec następnego słowa. M-b zachowuje się podobnie
123dla ruchu do tyłu.
124
125>> Naciśnij M-f i M-b kilka razy na przemian z C-f i C-b, tak byś
126 mógł zauważyć działanie M-f i M-b naciśniętych w różnych miejscach
127 wewnątrz i między słowami.
128
129Zauważ podobieństwo między C-f i C-b oraz M-f i M-b. Bardzo często
130kombinacje zawierające Meta (Alt) oznaczają operacje związane
131z jednostkami językowymi (słowa, zdania, akapity), podczas gdy
132kombinacje z klawiszem Control działają na jednostkach podstawowych,
133niezależnych od tego, co edytujesz (znaki, linie, itd.).
134
135Oto zależność, która stosuje się do linii i zdań: C-a i C-e przesuwają
136kursor na początek i koniec linii, a M-a i M-e przesuwają go na początek
137i koniec zdania.
138
139>> Naciśnij kilka razy C-a, a potem kilka razy C-e.
140 Powtórz to z M-a, a potem z M-e.
141
142Czy zauważyłeś, że powtarzanie C-a nic nie zmienia, natomiast powtórne
143M-a przesuwa Cię o jedno zdanie? Chociaż nie ma tu pełnej analogii,
144wydaje się to jednak naturalne.
145
146Położenie kursora w tekście jest określane mianem "punktu".
147
148Oto podsumowanie prostych poleceń służących do przesuwania kursora,
149włącznie z operacjami dotyczącymi słów i zdań:
150
151 C-f Do przodu o jeden znak
152 C-b Do tyłu o jeden znak
153
154 M-f Do przodu o słowo
155 M-b Do tyłu o słowo
156
157 C-n Następna linia
158 C-p Poprzednia linia
159
160 C-a Początek linii
161 C-e Koniec linii
162
163 M-a Do tyłu na początek zdania
164 M-e Do przodu na koniec zdania
165
166>> Przećwicz kilka razy dla wprawy wszystkie powyższe polecenia.
167 Należą one do najczęściej używanych.
168
169Dwa inne ważne polecenia przesuwające kursor to M-< (Meta lub Alt
170i znak mniejszości), które przesuwa kursor na początek całego tekstu
171i M-> (Meta lub Alt i znak większości), które przesuwa kursor na koniec
172całego tekstu.
173
174Na większości klawiatur "<" jest nad przecinkiem, musisz więc użyć
175klawisza Shift, by nacisnąć "<", i podobnie musisz użyć klawisza Shift,
176by nacisnąć M-<. Bez Shift uzyskałbyś M-przecinek.
177
178>> Naciśnij M-<, by przejść na początek samouczka, a potem kilka razy
179 użyj C-v, by powrócić do tego miejsca.
180
181>> Teraz naciśnij M->, by przejść na koniec samouczka, i wróć do tego
182 miejsca za pomocą kilkakrotnego M-v.
183
184Jeśli Twoja klawiatura ma klawisze strzałek, to możesz ich użyć do
185przesuwania kursora. Radzimy Ci nauczyć się się kombinacji C-b, C-f,
186C-n i C-p z trzech powodów. Po pierwsze, działają one na wszystkich
187typach terminali. Po drugie, gdy już zdobędziesz pewną praktykę w
188posługiwaniu się Emacsem, to będzie Ci szybciej nacisnąć te kombinacje
189niż klawisze strzałek (ponieważ nie wymaga to przenoszenia dłoni z
190miejsca, które zajmują podczas szybkiego pisania za pomocą 10 palców).
191Po trzecie wreszcie, gdy już wyrobisz sobie zwyczaj posługiwania się
192tymi poleceniami z klawiszem Control, to łatwo przyjdzie Ci nauczyć się
193bardziej zaawansowanych poleceń przesuwających kursor.
194
195Większość poleceń Emacsa akceptuje argument liczbowy; dla większości
196poleceń oznacza on liczbę powtórzeń. Aby określić liczbę powtórzeń
197polecenia, powinieneś je poprzedzić naciśnięciem C-u a potem cyfr.
198Jeśli masz na klawiaturze klawisz META (lub EDIT albo ALT), to
199alternatywnym sposobem wprowadzenia argumentu liczbowego jest użycie
200tego klawisza i wciskanie cyfr argumentu. Radzimy jednak przyswoić
201sobie metodę z klawiszem C-u, ponieważ działa ona na wszystkich
202terminalach.
203
204Na przykład C-u 8 C-f przesuwa kursor do przodu o osiem znaków.
205
206>> Spróbuj użyć C-n i C-p z argumentem liczbowym, by przesunąć kursor
207 do jednej z linii w pobliżu tego zdania za pomocą tylko jednego
208 polecenia.
209
210Większość poleceń używa argumentu liczbowego jako liczby powtórzeń.
211Jest kilka poleceń, które używają go w inny sposób. Do takich wyjątków
212należą C-v i M-v. Jeśli poda się im argument, to przesuwają zawartość
213ekranu w górę lub w dół o podaną liczbę linii zamiast o tyleż ekranów.
214Na przykład C-u 4 C-v przewija ekran o 4 linie.
215
216>> Spróbuj nacisnąć C-u 8 C-v.
217
218To powinno było przewinąć ekran do góry o 8 linii. Jeśli chciałbyś
219przewinąć ekran w dół, to powinieneś podać argument przed poleceniem M-v.
220
221Jeśli pracujesz w systemie z okienkowym trybem graficznym, jak X11
222lub MS-Windows, to prawdopodobnie po lewej stronie okna Emacsa znajduje
223się prostokątny obszar nazywany po angielsku "scrollbar", a po polsku
224suwakiem. Za jego pomocą możesz przewijać tekst, używając do tego myszy.
225
226>> Spróbuj nacisnąć środkowy klawisz myszy u góry podświetlonego
227 obszaru na suwaku. To powinno przewinąć tekst do miejsca
228 określonego przez wysokość, na której nacisnąłeś klawisz myszy.
229
230>> Przesuń mysz do miejsca oddalonego od górnego końca suwaka o mniej
231 więcej trzy linie i naciśnij lewy klawisz myszy kilka razy.
232
233
234* GDY EMACS JEST ZABLOKOWANY
235----------------------------
236
237Jeśli Emacs przestaje odpowiadać na Twoje polecenia, to możesz go
238bezpiecznie zatrzymać, przyciskając C-g. Klawisza C-g możesz też użyć do
239przerwania polecenia, które zabiera zbyt wiele czasu.
240
241Możesz także użyć C-g do anulowania argumentu liczbowego albo początku
242polecenia, którego nie zamierzasz dokończyć.
243
244>> Napisz C-u 100 jako argument liczbowy, po czym naciśnij C-g.
245 Teraz naciśnij C-f. Powinno to przesunąć kursor zaledwie o
246 jeden znak, ponieważ argument liczbowy anulowałeś za pomocą C-g.
247
248Za pomocą klawisza C-g możesz też anulować skutki omyłkowego
249wciśnięcia klawisza <ESC>.
250
251
252* ZABLOKOWANE POLECENIA
253-----------------------
254
255Pewne polecenia Emacsa są ,,zablokowane'' -- po to, by początkujący
256użytkownicy nie mogli ich wywołać przez przypadek.
257
258Jeśli wywołasz jedno z zablokowanych poleceń, to Emacs wypisze komunikat
259informujący o tym, co to za polecenie, i zapyta Cię, czy istotnie chcesz
260je wywołać.
261
262Jeśli naprawdę chcesz wywołać to polecenie, to odpowiedz na pytanie,
263naciskając spację. Jeśli nie chcesz wywołać zablokowanego polecenia,
264to na pytanie odpowiedz, naciskając n.
265
266>> Napisz `C-x C-l' (co jest zablokowanym poleceniem) i odpowiedz n
267 na zadane pytanie.
268
269
270* OKNA
271------
272
273Emacs może mieć otwartych kilka okien, z których każde wyświetla
274własny tekst. Pojęcie ,,okna'', jeśli chodzi o Emacsa, nie odnosi
275się do osobnego okienka systemu okienkowego, lecz do pojedynczego
276panelu wewnątrz okienka systemowego. (Emacs może też pracować
277na kilku oknach systemowych (X-oknach); w terminologii Emacsa
278nazywają się one ramkami. Opisane jest to poniżej.)
279
280Na tym etapie lepiej jest się nie zagłębiać w techniki wykorzystujące
281kilka okien. Powinieneś jedynie wiedzieć, w jaki sposób pozbyć się
282nadmiaru okien, które mogą się pojawić w wyniku wywołania Emacsowego
283systemu pomocy albo niektórych poleceń. Robi się to w prosty sposób:
284
285 C-x 1 Jedno okno (tzn. zlikwiduj wszystkie pozostałe okna).
286
287Kombinacja ta to klawisz Control-x, po którym występuje cyfra 1.
288Powiększa ona okno, w którym jest kursor tak, by wypełniło ono ekran,
289kasując zarazem pozostałe okna Emacsa.
290
291>> Przesuń kursor do tej linii i naciśnij C-u 0 C-l.
292
293(C-l, jak pamiętasz odświeża zawartość ekranu. Jeśli temu poleceniu
294poda się argument liczbowy, to będzie to oznaczało ,,odśwież zawartość
295ekranu i umieść bieżąca linię o tyle linii od góry ekranu''. Tak więc,
296C-u 0 C-1 oznacza ,,odśwież ekran, umieszczając bieżąca linię na samej
297górze''.)
298
299>> Naciśnij Control-x 2
300 Zauważ, że okno się kurczy, a jednocześnie pojawia się nowe,
301 wyświetlające ten sam tekst.
302
303>> Naciśnij C-x 1, a nowe okno zniknie.
304
305
306* WSTAWIANIE I USUWANIE
307-----------------------
308
309Jeśli chcesz wstawić nowy tekst, to po prostu go napisz. Znaki, które da
310się wyświetlić, takie jak A, 7, *, itd., Emacs traktuje jako tekst i
311natychmiast wstawia do dotychczasowego tekstu. Aby wstawić znak nowej
312linii, trzeba nacisnąć klawisz <Return> (na maszynach do pisania tak
313oznaczało się znak powrotu karetki).
314
315Ostatnio napisany znak możesz skasować, naciskając klawisz <Delback>.
316Chodzi tu o klawisz, którego normalnie używasz do skasowania ostatnio
317napisanego znaku. Na większości klawiatur wyróżnia się on wielkością,
318leży nad klawiszem <Return> i jest oznaczony napisem "Delete", "Del"
319albo "Backspace".
320
321Jeśli masz na klawiaturze klawisz oznaczony "Backspace", to właśnie on
322jest wspomnianym <Delback>. Oprócz niego może jeszcze występować
323klawisz oznaczony słowem "Delete", ale to nie on pełni rolę <Delback>.
324
325Mówiąc bardziej ogólnie, <Delback> usuwa znak bezpośrednio
326poprzedzający bieżącą pozycję kursora.
327
328>> Sprawdź to teraz: wstaw kilka znaków, po czym usuń je, kilka razy
329 naciskając <Delback>. Nie martw się, że zmieniasz w ten sposób
330 niniejszy plik, w istocie nie zmieniasz głównego pliku samouczka.
331 Pracujesz teraz na jego kopii.
332
333Gdy linia tekstu staje się zbyt długa, by zmieścić się w jednym
334wierszu ekranu, to jest ona ,,kontynuowana'' w wierszu następnym.
335Znak ,,backslash'' (`\') (albo - jeśli pracujesz w okienkowym
336trybie graficznym - zagięta strzałka) umieszczony na prawym marginesie
337wskazuje, że dana linia jest kontynuowana w następnym wierszu ekranu.
338
339>> Wpisuj jakiś tekst tak długo, aż dojdziesz do prawego marginesu, i
340 potem nie przestawaj. Zauważysz, że pojawi się linia kontynuacji.
341
342>> Użyj klawisza <Delback>, by usunąć znaki tekstu, tak by linia znowu
343 mieściła się na ekranie; linia kontynuacji zniknie.
344
345Znak nowej linii można skasować tak jak każdy inny znak. Usunięcie znaku
346nowej linii między dwiema liniami spowoduje ich połączenie. Jeśli powstała
347w wyniku tego linia tekstu jest zbyt długa, by zmieścić się na szerokość
348ekranu, to zostanie wyświetlona z linią kontynuacji.
349
350>> Przesuń kursor na początek linii i naciśnij <Delback>. Bieżąca
351 linia zostanie połączona z poprzednią.
352
353>> Naciśnij <Return>, by z powrotem wstawić znak nowej linii, który
354 skasowałeś.
355
356Jak już wiesz, większość poleceń Emacsa można wywołać z parametrem
357liczby powtórzeń; dotyczy to także znaków tekstu. Argument liczbowy
358powoduje wstawienie znaku odpowiadającą mu liczbę razy.
359
360>> Wypróbuj to teraz -- naciśnij C-u 8 *, a uzyskasz ********.
361
362Nauczyłeś się już większej części podstawowych sposobów pisania oraz
363poprawiania błędów. W Emacsie możesz usuwać również całe słowa lub
364linie. Oto podsumowanie operacji usuwania znaków:
365
366 <Delback> usuń znak bezpośrednio przed kursorem
367 C-d usuń znak bezpośrednio za kursorem
368
369 M-<Delback> wytnij słowo bezpośrednio przed kursorem
370 M-d wytnij słowo bezpośrednio za kursorem
371
372 C-k wytnij zawartość linii od kursora do jej końca
373 M-k wytnij wszystkie znaki od kursora do końca zdania
374
375Warto zauważyć, że stosunek <Delete> i C-d do M-<Delete> i M-d
376rozszerza analogię występującą w zestawieniu C-f i M-f (<Delete> tak
377naprawdę nie jest znakiem sterującym, ale nie jest to tutaj
378istotne). C-k i M-k są podobne do C-e i M-e w tym sensie, że linie są
379odpowiednikami zdań.
380
381
382Oto metoda wycinania części tekstu. Umieść kursor na początku fragmentu,
383który chcesz wyciąć, i naciśnij C-@ lub C-SPC (SPC-spacja). Teraz przejdź
384na drugi koniec wybranego fragmentu i naciśnij C-w. To wytnie cały tekst
385zawarty między punktami początkowym i końcowym.
386
387>> Przesuń kursor na literę O na początku poprzedniego paragrafu.
388
389>> Naciśnij C-SPC. Emacs wyświetli "Mark set" (znacznik ustawiony)
390 na dole ekranu.
391
392>> Przesuń kursor do litery o w słowie ,,kursor'' w drugim zdaniu.
393
394>> Naciśnij C-w. Ta komenda wytnie cały fragment zaczynający się od O,
395 a kończący tuż przed o.
396
397Gdy usuwasz więcej niż jeden znak naraz, Emacs zachowuje usunięty
398tekst po to, by mógł go z powrotem gdzieś wstawić. Wstawianie
399usuniętego tekstu nazywa się ,,wklejaniem''. Usunięty tekst
400możesz wkleić zarówno w to samo miejsce, z którego został usunięty,
401bądź też w inne miejsca. Ten sam tekst możesz wkleić wielokrotnie,
402w celu uzyskania wielu kopii. Poleceniem wklejenia tekstu jest C-y.
403
404Zauważ różnicę między ,,wycinaniem'' i ,,usuwaniem'', polegającą na tym,
405że rzeczy wycięte można na nowo wklejać, usuniętych natomiast wklejać nie
406można. Na ogół polecenia Emacsa, które kasują dużo tekstu, zachowują go,
407podczas gdy polecenia, które po prostu kasują jeden znak albo puste
408linie lub odstępy, skasowanego tekstu nie zachowują.
409
410>> Przesuń kursor na początek linii, która nie jest pusta. Naciśnij
411 C-k, by wyciąć tekst z tej linii.
412
413>> Naciśnij C-k jeszcze raz. Zauważ, że wycina to znak nowej linii,
414 który znajduje się za ta linią.
415
416Zwróć uwagę, że pojedyncze C-k wycina zawartość linii, a powtórne C-k
417wycina samą linię, tak że pozostałe linie przesuwają się do góry. C-k
418traktuje argument liczbowy w sposób specjalny: wycina ono tyle linii,
419ile wynosi wartość argumentu, ORAZ ich zawartość. To nie jest jedynie
420powtórzenie kilka razy C-k. C-u 2 C-k wycina dwie linie wraz z ich
421znakami nowej linii; dwukrotne naciśniecie C-k nie zrobiłoby tego.
422
423By odzyskać ostatnio wycięty tekst i wstawić go w miejsce kursora,
424naciśnij C-y.
425
426>> Twoja kolej. Naciśnij C-y, by z powrotem wstawić tekst.
427
428Zwróć uwagę, że jeśli naciśniesz C-k kilka razy z rzędu, to cały wycięty
429tekst zostanie zachowywany w jednym kawałku, tak że pojedyncze C-y wklei
430wszystkie linie.
431
432>> Naciśnij C-k kilka razy.
433
434A by odzyskać ten wycięty tekst...
435
436>> ...naciśnij C-y. Przesuń potem kursor o kilka linii w dół i
437 naciśnij C-y jeszcze raz. Widzisz, że wstawia to ten sam tekst.
438
439Co zrobić, jeśli chcesz wstawić tekst, który wcześniej wyciąłeś,
440a potem wycinasz coś innego? C-y wstawia tekst ostatnio wycięty.
441Poprzedni fragment nie jest jednak stracony. Możesz do niego wrócić,
442używając polecenia M-y. Naciskając C-y, wstawiasz tekst ostatnio
443wycięty, a naciskając M-y, zastępujesz ten tekst wyciętym uprzednio.
444Dalsze naciskanie M-y przywołuje coraz wcześniejsze fragmenty tekstu.
445Gdy dojdziesz do tekstu, którego szukałeś, po prostu kontynuuj edycję
446tekstu, pozostawiając wklejony tekst tam, gdzie się znajduje.
447
448Naciskając M-y wystarczająco wiele razy, dojdziesz do punktu,
449z którego wystartowałeś (czyli tekstu wyciętego ostatnio).
450
451>> Wytnij jakąś linię, zmień pozycję kursora i wytnij inną. Naciśnij
452 potem C-y, by wstawić drugą z wyciętych linii. Potem naciśnij M-y
453 i linia ta zostanie zastąpiona przez tą pierwszą. Naciśnij M-y
454 jeszcze kilka razy, by zobaczyć, co się dzieje. Powtarzaj to aż
455 do ponownego pojawienia się drugiej z linii. Możesz też wypróbować,
456 co się stanie, gdy polecenie M-y poprzedzisz argumentem dodatnim
457 albo ujemnym.
458
459
460* COFNIJ
461--------
462
463Jeśli wprowadzisz zmiany do tekstu, a potem dojdziesz do wniosku, że
464to była pomyłka, to możesz cofnąć zmiany, wydając polecenie ,,cofnij''
465(ang. undo), C-x u.
466
467C-x u cofa zmiany wprowadzone przez jedno polecenie; jeśli powtórzysz
468C-x u kilka razy z rzędu, to każde powtórzenie cofa kolejne polecenie.
469
470Od tej reguły są dwa wyjątki: polecenia, które nie zmieniają tekstu nie
471liczą się jako polecenia, które można wycofać (dotyczy to zarówno
472przesunięć kursora, jak i przewijania tekstu), oraz znaki wstawiane do
473tekstu (np. litery) łączone są w grupy do 20. (Redukuje to liczbę
474naciśnięć C-x u, które musiałbyś wykonać, by wycofać się z niechcianych
475zmian.)
476
477>> Wytnij tę linię za pomocą C-k, a potem naciśnij C-x u; linia
478 powinna się pojawić ponownie.
479
480C-_ jest innym sposobem wywołania polecenia "cofnij"; działa to
481dokładnie tak samo jak C-x u, jest jednak łatwiejsze do naciśnięcia
482kilka razy z rzędu. Wadą kombinacji C-_ jest to, że nie jest oczywiste
483w jaki sposób ją uzyskać na niektórych klawiaturach. To właśnie dlatego
484dostępna jest też kombinacja C-x u. Na niektórych terminalach możesz
485nacisnąć C-_ poprzez przytrzymanie Ctrl i naciśnięcie /.
486
487Argument liczbowy podany przed C-_ lub C-x u określa liczbę powtórzeń
488tego polecenia.
489
490
491* PLIKI
492-------
493
494Aby edytowany przez Ciebie tekst został na trwałe zachowany, musisz
495umieścić go w pliku. Jeśli tego nie zrobisz, to tekst zniknie, gdy
496zamknięty zostanie Emacs, za pomocą którego go edytowałeś. Aby zachować
497tekst w pliku, najpierw musisz ten plik ,,znaleźć'', i to zanim
498zaczniesz wprowadzać tekst. Czynność znajdowania pliku (ang. "file
499finding") bywa też nazywana ,,odwiedzaniem pliku'' (ang. "file
500visiting").
501
502Odwiedzanie pliku w Emacsie powoduje wyświetlenie jego zawartości.
503Bardzo często jest to początek edycji pliku. Jednakże zmiany, które
504wprowadzasz do pliku, nie są w nim utrwalone, zanim go nie ,,zachowasz''
505(ang. save). Ma to zapobiec pozostawieniu w systemie pliku, który został
506zmieniony tylko w połowie, a tego chcesz uniknąć. Gdy zachowujesz
507zmieniony plik, Emacs zostawia oryginał (pod inna nazwą) na wypadek,
508gdybyś doszedł do wniosku, że wprowadzone zmiany były błędne.
509
510Jeśli popatrzysz na dół ekranu, to zauważysz linię, która zaczyna się
511i kończy myślnikami, a zawiera tekst ,,TUTORIAL''. W tej
512części ekranu zawsze możesz znaleźć nazwę pliku, który właśnie
513odwiedzasz. W tej chwili odwiedzasz plik o nazwie TUTORIAL, który
514jest Twoją własną kopią samouczka Emacsa. Obojętnie, który plik
515odwiedzisz, właśnie w tym miejscu pojawi się jego nazwa.
516
517Polecenia służące do odwiedzania i zachowywania plików różnią się
518od innych poleceń, które już poznałeś, tym, że składają się z dwóch
519znaków. Obydwa zaczynają się od znaku Control-x. Jest mnóstwo
520poleceń, które zaczynają się od tego właśnie znaku; wiele z nich
521dotyczy plików, buforów oraz rzeczy z nimi związanych. Polecenia
522te mają długość dwóch, trzech lub czterech znaków.
523
524Kolejną nowością odnośnie polecenia odwiedzania pliku jest to, że
525musisz mu podać nazwę pliku, który chcesz znaleźć. Mówimy o tym, że
526polecenie ,,czyta argument z terminala'' (w tym wypadku argument jest
527nazwą pliku). Po wpisaniu polecenia
528
529 C-x C-f znajdź plik (ang. find a file)
530
531Emacs poprosi Cię o wpisanie nazwy pliku. Pojawia się ona w dolnej linii
532ekranu. Gdy ta linia jest używana do wprowadzania tego typu danych,
533nazywa się ją ,,minibuforem'' (ang. "minibuffer"). Do edycji nazwy pliku
534w minibuforze możesz używać zwykłych poleceń Emacsa.
535
536Wprowadzanie nazwy pliku (lub jakichkolwiek innych danych w
537minibuforze) można anulować klawiszem C-g.
538
539>> Naciśnij C-x C-f, po czym naciśnij C-g. Na skutek tego zniknie
540 minibufor oraz przerwane zostanie wykonanie polecenia C-x C-f, które
541 tego minibufora używało. W rezultacie nie odwiedzisz żadnego pliku.
542
543Gdy skończysz wpisywać nazwę pliku, naciśnij <Return>. Wówczas
544polecenie C-x C-f zabierze się do roboty i znajdzie plik, który
545wybrałeś. Z chwilą zakończenia wykonywania polecenia C-x C-f
546zniknie też minibufor.
547
548Zawartość znalezionego pliku po chwili pojawia się na ekranie
549i możesz ją edytować. Gdy chcesz zachować zmiany, by je utrwalić,
550wydaj polecenie
551
552 C-x C-s zachowaj plik (ang. save).
553
554Kopiuje to tekst z Emacsa do pliku. Za pierwszym razem, gdy to
555robisz, Emacs zmienia nazwę oryginalnego pliku, dodając na
556końcu jego nazwy znak ~. W ten sposób powstaje zapasowa kopia
557oryginalnego pliku.
558
559Gdy zachowywanie pliku się kończy, Emacs wypisuje jego nazwę u dołu
560ekranu. Pliki powinieneś zachowywać stosunkowo często, aby nie stracić
561za dużo w wypadku załamania systemu.
562
563>> Naciśnij C-x C-s, by zachować dla siebie kopię samouczka. Emacs
564 powinien wypisać "Wrote ...TUTORIAL" na dole ekranu.
565
566UWAGA: W niektórych systemach naciśnięcie C-x C-s zamraża ekran i w
567rezultacie Emacs nie może pokazywać tekstu. Oznacza to, że składowa
568systemu operacyjnego, zwana kontrolą przepływu (ang. flow control),
569przechwyciła znak C-s i nie pozwoliła mu dotrzeć do Emacsa. By odzyskać
570kontrolę nad ekranem, naciśnij C-q. Dodatkowej pomocy poszukaj w
571rozdziale "Spontaneous Entry to Incremental Search" w podręczniku
572Emacsa.
573
574Odwiedzić w celu edycji lub odczytu możesz plik istniejący już w
575systemie. Możesz też odwiedzić plik, którego jeszcze nie ma w systemie i
576właśnie w taki sposób tworzy się w Emacsie nowe pliki. Gdy poleceniem
577C-x C-f odwiedzisz plik o nazwie nieistniejącej w systemie, wówczas
578Emacs wyświetli puste miejsce, do którego będziesz mógł zacząć wpisywać
579tekst. Gdy zażądasz zachowania wpisanego tekstu, Emacs utworzy w
580systemie plik z tym tekstem. Od tego momentu możesz uważać, że edytujesz
581plik już istniejący.
582
583
584* BUFORY
585--------
586
587Jeśli za pomocą C-x C-f odwiedzisz inny plik, to plik odwiedzony
588poprzednio pozostanie w Emacsie. Możesz się na niego przełączyć,
589odwiedzając go jeszcze raz za pomocą C-x C-f. W ten sposób możesz
590mieć w Emacsie odwiedzonych jednocześnie wiele plików.
591
592>> Utwórz plik o nazwie "foo" za pomocą C-x C-f foo <Return>.
593 Wpisz w niego jakiś tekst i zachowaj "foo" za pomocą C-x C-s.
594 W końcu napisz C-x C-f TUTORIAL <Return>, by wrócić do samouczka.
595
596Emacs przechowuje tekst każdego pliku w obiekcie, zwanym ,,buforem''.
597Odwiedzenie pliku powoduje utworzenie nowego bufora wewnątrz Emacsa. By
598zobaczyć listę buforów, które istnieją w Twoim Emacsie, naciśnij
599
600 C-x C-b lista buforów (ang. list buffers).
601
602>> Naciśnij C-x C-b.
603
604Zwróć uwagę, że każdy bufor ma własną nazwę, może też mieć skojarzoną z
605nim nazwę pliku, który odwiedza. KAŻDY tekst, który oglądasz w Emacsie,
606jest zawsze częścią jednego z buforów.
607
608>> Naciśnij C-x 1 by pozbyć się listy buforów.
609
610Jeśli masz kilka buforów to tylko jeden z nich jest aktualny, ten
611który właśnie edytujesz. Jeśli chcesz edytować inny bufer musisz się
612do niego "przełączyć" (ang. switch). Jeśli chcesz przełączyć się do
613bufora, który odwiedza jakiś plik, możesz to zrobić poprzez ponowne
614odwiedzenie pliku za pomocą C-x C-f. Ale istnieje także łatwiejszy
615sposób: użyj C-x b. Używając tej komendy musisz podać nazwę bufora, do
616którego zamierzasz się przełączyć.
617
618>> Naciśnij C-x b foo <Return> by wrócić do bufora "foo", który
619 przechowuje tekst pliku "foo". Następnie naciśnij C-x b TUTORIAL
620 <Return> by wrócić do samouczka.
621
622Zwykle nazwa bufora odpowiada nazwie pliku (bez ścieżki), choć czasami
623zdarza się inaczej. Lista buforów, którą tworzysz za pomocą C-x C-b
624pokazuje nazwy wszystkich buforów.
625
626KAŻDY tekst, który pojawia się w oknie Emacsa jest częścią jakiegoś
627bufora. Niektóre bufory nie odpowiadają żadnemu odwiedzanemu
628plikowi. Na przykład bufor "*Buffer List*" nie odwiedza żadnego pliku;
629zawiera on listę buforów, utworzoną w reakcji na naciśnięcie przez
630Ciebie C-x C-b. Bufor "*Messages*" także nie odwiedza żadnego pliku;
631zawiera komunikaty, które pojawiały się podczas Twojej sesji z
632Emacsem.
633
634>> Naciśnij C-x b *Messages* <Return> by obejrzeć bufor zawierający
635 komunikaty. Następnie naciśnij C-x b TUTORIAL <Return> by wrócić do
636 samouczka.
637
638Jeśli zmieniasz tekst w jakimś pliku, a potem odwiedzisz inny plik, to
639zawartość tego pierwszego NIE jest automatycznie zachowywana. Zmiany,
640które wprowadziłeś, pozostają w Emacsie, w buforze tegoż pliku.
641Tworzenie czy edytowanie innego bufora nie ma żadnego wpływu na
642pozostałe. Jest to bardzo przydatne, ale też oznacza, że potrzebny jest
643Ci wygodny sposób zachowywania zawartości buforów. Niewygodne na
644przykład byłoby, aby zawsze w celu zachowania bufora trzeba było do
645niego przechodzić za pomocą C-x C-f i dopiero potem wywoływać C-x C-s.
646Dlatego istnieje polecenie:
647
648 C-x s Zachowaj bufory (ang. save some buffers)
649
650W reakcji na polecenie C-x s Emacs dla każdego z buforów, w którym
651występują nie zachowane do tej pory zmiany, zadaje pytanie, czy go
652w tej chwili zachować.
653
654>> Wstaw jakąś linię tekstu, a potem naciśnij C-x s.
655 Powinieneś zostać zapytany o to, czy chcesz zachować bufor
656 TUTORIAL. Odpowiedz na to pytanie twierdząco, naciskając y.
657
658
659* ROZSZERZANIE ZESTAWU POLECEŃ
660------------------------------
661
662Poleceń Emacsa jest znacznie, znacznie więcej, niż można by skojarzyć
663z klawiszami klawiatury, uwzględniając nawet kombinacje z META lub Ctrl.
664Emacs radzi sobie z tym problemem, udostępniając polecenia X (ang.
665eXtend). Istnieją dwa rodzaje tych poleceń:
666
667 C-x Rozszerzenie o znak. Następuje po nim jeden znak.
668 M-x Rozszerzenie o nazwane polecenie. Następuje po nim
669 pełna, niekiedy długa nazwa polecenia.
670
671Polecenia te są użyteczne, ale używa się ich nie tak często, jak tych,
672których już się nauczyłeś. Miałeś już okazję poznać dwa z nich: C-x C-f,
673służące do odwiedzania plików, oraz C-x C-s do ich zachowywania. Innym
674przykładem może być polecenie C-x C-c, które kończy sesję Emacsa. (Nie
675martw się, że w ten sposób stracisz zmiany, które wprowadziłeś do
676tekstów; przed zamknięciem sesji Emacs proponuje Ci zachowania
677każdego ze zmodyfikowanych plików.)
678
679C-z jest poleceniem, które wychodzi z Emacsa *na chwilę*, tak byś mógł
680wrócić do niej wrócić po jakimś czasie.
681
682W systemach, w których jest to możliwe, C-z zawiesza proces Emacsa;
683powoduje to powrót do powłoki (ang. shell), ale nie niszczy Emacsa.
684W najpopularniejszych powłokach możesz wrócić do Emacsa za pomocą
685polecenia `fg' lub `%emacs'.
686
687W systemach, w których nie ma zawieszania procesów, C-z tworzy proces
688podpowłoki (ang. "subshell"), który działa pod Emacsem i daje Ci szansę
689uruchamiania innych programów oraz powrotu do Emacsa po ich skończeniu; w
690systemach tych C-z w istocie nie powoduje wyjścia z Emacsa i wówczas
691normalnym poleceniem powrotu do Emacsa jest wyjście z podpowłoki za
692pomocą polecenia "exit".
693
694Polecenia C-x C-c powinieneś używać, gdy masz zamiar się wylogować.
695Zalecane jest także wychodzenie z Emacsa wystartowanego na przykład przez
696programy obsługujące pocztę elektroniczną lub innego rodzaju narzędzia,
697ponieważ mogą one nie wiedzieć, jak sobie poradzić z zawieszeniem
698Emacsa. Jednakże w zwykłych okolicznościach, jeśli nie musisz
699wylogowywać się z systemu, korzystniej jest zawiesić Emacsa za pomocą
700C-z, niż z niego wyjść.
701
702Istnieje wiele poleceń zaczynających się od C-x. Oto lista tych,
703których już się nauczyłeś:
704
705 C-x C-f odwiedź plik
706 C-x C-s zachowaj plik
707 C-x C-b wyświetl listę buforów
708 C-x C-c wyjdź z Emacsa
709 C-x u cofnij
710
711Poleceń podawanych za pomocą nazwy używa się jeszcze rzadziej lub używa
712się tylko w niektórych trybach. Przykładem może być polecenie
713replace-string, które zastępuje jeden łańcuch innym w całym tekście. Gdy
714naciskasz M-x, Emacs czeka na dalszy ciąg polecenia, wyświetlając na
715dole ekranu (w minibuforze) napis "M-x". Powinieneś tam wpisać nazwę
716polecenia, w tym wypadku replace-string. Wystarczy przy tym, że napisz
717jedynie repl s<Tab>; Emacs dokończy nazwę automatycznie. Wprowadzanie
718nazwy zakończ naciśnięciem klawisza <Return>.
719
720Polecenie replace-string wymaga dwóch argumentów: łańcucha, który ma
721zostać zastąpiony, i łańcucha, który ma zostać wstawiony w miejsce tegoż.
722Wpisywanie każdego z tych łańcuchów trzeba zakończyć przyciśnięciem
723klawisza <Return>.
724
725>> Przesuń kursor do czystej linii, dwie linie poniżej tej.
726 Naciśnij M-x repl s<Return>zmieni<Return>zmodyfikuje<Return>.
727
728 Zwróć uwagę, jak ta linia się zmieniła: zastąpiłeś słowem
729 ,,zmodyfikuje'' każde wystąpienie słowa z-m-i-e-n-i poniżej początkowej
730 pozycji kursora.
731
732
733* AUTOMATYCZNE ZACHOWYWANIE
734---------------------------
735
736Jeśli zmian wprowadzonych do pliku nie zachowasz, to możesz je stracić w
737wypadku, gdy Twój komputer przestanie działać. By Cię przed tym
738uchronić, Emacs okresowo zachowuje wprowadzone zmiany w specjalnym
739pliku, który ma znak # na początku i na końcu swojej nazwy. Przyjmijmy
740na przykład, że Twój plik nazywa się "hello.c". Odpowiadający mu plik
741zachowywany automatycznie będzie nosił nazwę "#hello.c#". Gdy
742zachowasz plik w zwykły sposób, Emacs skasuje plik
743zachowany automatycznie.
744
745Jeśli Twój komputer przestanie działać, możesz odzyskać Twoje dane z
746pliku automatycznie zachowanego przez zwykłe odwiedzenie tego pliku,
747który edytowałeś (a nie pliku automatycznie zachowanego!) i napisanie
748M-x recover file<Return>. Gdy Emacs zapyta o potwierdzenie, to
749dane zachowane automatycznie odzyskasz, jeśli odpowiesz yes<Return>.
750
751
752* OBSZAR ECHA
753-------------
754
755Jeśli polecenia dla Emacsa wpisujesz dostatecznie wolno, będą one
756pokazywane w specjalnym obszarze na dole ekranu, zwanym obszarem echa
757(ang. echo area). Obszar echa zawiera ostatnią dolną linię ekranu.
758
759
760* LINIA STANU
761-------------
762
763Linia, która znajduje się bezpośrednio nad obszarem echa, zwana jest
764linią trybu (ang. modeline). Pokazuje ona tekst podobny do
765następującego:
766
767--:** TUTORIAL (Fundamental)--L670--58%----------------
768
769Linia ta podaje użyteczne informacje o stanie Emacsa i tekstu, który
770edytujesz.
771
772Wiesz już, jakie jest znaczenie nazwy: oznacza ona plik,
773który odwiedziłeś. --NN%-- informuje o bieżącej pozycji wewnątrz
774tekstu; oznacza to, że NN procent tekstu znajduje się ponad górnym
775brzegiem ekranu. Jeśli początek pliku znajduje się na początku
776ekranu, to zamiast liczby --00%-- zobaczysz w tym miejscu --Top--.
777Podobnie dla końca tekstu pojawi się tam napis --Bot-- (ang. bottom).
778Jeśli wyświetlasz tekst na tyle krótki, że mieści się w
779całości na ekranie, to linia trybu będzie zawierała napis --All--.
780
781Litera L, po której występują cyfry, także opisuje Twoją bieżącą
782pozycję: cyfry oznaczają numer linii, na której obecnie ustawiony jest
783kursor.
784
785Gwiazdki blisko początku linii trybu oznaczają, że wprowadziłeś do
786tekstu jakieś zmiany. Tuż po odwiedzeniu, a także po zachowaniu pliku
787nie będzie w tym miejscu gwiazdek, lecz myślniki.
788
789Wewnątrz nawiasów znajdziesz informacje na temat trybu edycji, w
790którym właśnie jest Emacs. Domyślnym trybem edycji nazywa się
791podstawowym (ang. fundamental); jest to tryb używanym właśnie w
792tej chwili. Jest to przykład ,,trybu głównego'' (ang. major mode).
793
794Emacs może działać w wielu trybach głównych. Zostały one zaprojektowane,
795aby ułatwić edycję napisów w rozmaitych językach programowania, takich
796jak tryb Lisp czy C, oraz rodzajach tekstów, jak tryb tekstowy. W danej
797chwili może być aktywny tylko jeden główny tryb pracy i to jego nazwa
798jest wyświetlana w linii trybu w miejscu, w którym teraz jest
799"Fundamental".
800
801Każdy z głównych trybów edycyjnych może zmienić zachowanie niektórych
802poleceń. Na przykład w Emacsie istnieją polecenia służące do tworzenia
803komentarzy w programach. Skoro każdy język programowania sam określa,
804jak powinien wyglądać komentarz, to każdy z głównych trybów edycyjnych
805musi wstawiać komentarze w odpowiedni sposób. Trybowi edycyjnemu
806odpowiada nazwa polecenia, które możesz wykonać, by przełączyć się w ten
807tryb lub go wyłączyć. Przykładem może być M-x fundamental-mode, które
808jest poleceniem przełączającym tryb podstawowy.
809
810Jeśli zamierzasz edytować tekst w języku angielskim, taki jak na
811przykład oryginalna wersja tego samouczka, to prawdopodobnie
812powinieneś użyć trybu tekstowego (ang. text mode).
813
814>> Napisz M-x text-mode<Return>.
815
816Nie musisz się martwić, bo żadne z poleceń, które do tej pory poznałeś,
817nie zmienia Emacsa w poważny sposób. Możesz jednak zauważyć, że teraz
818M-f i M-b traktują apostrofy jako części słów. Poprzednio, w trybie
819podstawowym, polecenia te traktowały apostrofy jako separatory słów.
820
821Główne tryby edycji wprowadzają zwykle subtelne zmiany, takie jak
822opisana powyżej; większość poleceń nadal robi ,,to samo'', chociaż
823być może w troszeczkę inny sposób.
824
825By zobaczyć dokumentację na temat bieżącego głównego trybu edycji,
826naciśnij C-h m.
827
828>> Naciśnij C-u C-v raz lub więcej razy, tak by ta linia znalazła się
829 blisko góry ekranu.
830
831>> Naciśnij C-h m, by odczytać dokumentację na temat tego, czym tryb
832 tekstowy różni się od trybu podstawowego.
833
834>> Naciśnij q, by usunąć dokumentację trybu z ekranu.
835
836Główne tryby edycji nazywają się właśnie ,,głównymi'', gdyż występują
837także ,,podrzędne'' tryby edycji (ang. minor modes). Podrzędne tryby
838edycji nie są alternatywą dla trybów głównych, lecz jedynie ich
839niewielką modyfikacją. Każdy podrzędny tryb edycji można włączyć lub
840wyłączyć niezależnie od pozostałych trybów podrzędnych, a także
841niezależnie od trybu głównego. Możesz wiec używać jednego,
842kombinacji dowolnych, albo nie używać żadnego trybu podrzędnego.
843
844Jednym z podrzędnych trybów edycji, który jest bardzo użyteczny,
845szczególnie do edycji tekstu angielskiego lub polskiego, jest tryb
846automatycznego wypełniania (ang. auto fill mode). Jeśli jest on
847włączony, to Emacs łamie linie pomiędzy słowami automatycznie, gdy
848podczas wstawiania tekstu linia robi się za szeroka.
849
850Tryb automatycznego wstawiania włącza się na przykład poleceniem M-x
851auto-fill-mode<Return>. Powtórzenie tego polecenie powoduje wyłączenie
852trybu, ponowne powtórzenie --- jego włączenie, i tak dalej. Mówimy, że
853polecenie ,,przełącza tryb''.
854
855>> Napisz M-x auto-fill-mode<Return>. Wstaw potem wiele napisów
856 ,,asdf '' tak długo, aż zobaczysz, że linia podzieli na dwie.
857 Między literami musisz wstawiać spacje, ponieważ tryb
858 automatycznego wypełniania łamie linie tylko tam, gdzie są spacje.
859
860Margines jest zazwyczaj ustawiony na 70 znaków, ale możesz to zmienić
861poleceniem C-x f. Powinieneś poleceniu podać argument liczbowy
862mówiący, w której kolumnie ma zostać ustawiony margines.
863
864>> Wywołaj C-x f z argumentem równym 20. (C-u 2 0 C-x f).
865 Napisz potem jakiś tekst i zauważ, że Emacs wypełnia linie do
866 długości co najwyżej 20 znaków. Ustaw margines z powrotem na
867 70 znaków, wywołując jeszcze raz C-x f z odpowiednim argumentem.
868
869Jeśli zmieniasz tekst wewnątrz akapitu, to tryb automatycznego
870wypełniania sam z siebie nie wyrówna marginesu. Możesz go wyrównać
871samodzielnie, wydając polecenie M-q (Meta-q) (kursor powinien się
872wówczas znajdować wewnątrz akapitu).
873
874>> Przesuń kursor do poprzedniego akapitu i naciśnij M-q.
875
876
877* SZUKANIE
878----------
879
880Emacs potrafi szukać łańcuchów (zwartych ciągów znaków lub słów)
881zarówno wstecz jak i do przodu. Szukanie łańcucha jest poleceniem,
882które przesuwa kursor --- do następnego miejsca, w którym dany
883łańcuch występuje.
884
885Polecenie Emacsa "search" różni się od podobnych poleceń w innych
886edytorach tym, że jest przyrostowe. Znaczy to, że szukanie odbywa
887się w trakcie, gdy wpisujesz kolejne znaki łańcucha, który ma zostać
888znaleziony.
889
890Poleceniami rozpoczynającymi szukanie są: C-s dla szukania w przód
891oraz C-r dla szukania wstecz. POCZEKAJ PROSZĘ! Nie próbuj ich w tej
892chwili.
893
894Gdy naciśniesz C-s, zauważysz, że w obszarze echa pojawi się
895tekst "I-search". Jest to informacja, że Emacs znajduje się w trybie
896"incremental search" i czeka, byś napisał tekst, który ma znaleźć.
897Naciśnięcie <Return> kończy proces szukania.
898
899>> Rozpocznij teraz szukanie, naciskając C-s. POWOLI, litera po
900 literze, napisz słowo kursor, zatrzymując się po każdym znaku
901 i obserwując, gdzie zatrzymuje się kursor. Gdy naciśniesz drugie
902 r, będzie można powiedzieć, że szukałeś słowa kursor
903 jednokrotnie. Naciśnij jeszcze raz C-s, by znaleźć następne
904 wystąpienie słowa kursor. Naciśnij teraz cztery razy <Delback>
905 i zobacz, co się dzieje z kursorem. Naciśnij <Return>, by skończyć
906 szukanie.
907
908Widziałeś, co się działo? Podczas szukania przyrostowego Emacs próbuje
909przejść do miejsca wystąpienia łańcucha, który wpisałeś do tej pory,
910i podświetla go dla Twojej wygody. By znaleźć następne wystąpienie
911słowa kursor, po prostu jeszcze raz naciśnij C-s. Jeśli takiego
912wystąpienia nie ma, to Emacs zapiszczy i napisze, że szukanie
913,,skończyło się porażką''.
914
915Kombinacja C-g przerywa proces szukania, podobnie jak to czyni
916z innymi poleceniami.
917
918UWAGA: W niektórych systemach naciśniecie C-s zamraża ekran i w
919rezultacie Emacs nie może pokazywać tekstu. Oznacza to, że składowa
920systemu operacyjnego, zwana kontrolą przepływu (ang. "flow control"),
921przechwyciła znak C-s i nie pozwoliła mu dotrzeć do Emacsa. By odzyskać
922kontrolę nad ekranem, naciśnij C-q. Dodatkowej pomocy poszukaj w
923rozdziale "Spontaneous Entry to Incremental Search" w podręczniku
924Emacsa.
925
926Jeśli podczas szukania przyrostowego naciśniesz <Delback>, to zauważysz,
927że w minibuforze znika ostatni znak wpisanego przez ciebie łańcucha, a
928kursor wraca do poprzedniego miejsca. Przypuśćmy na przykład, że
929nacisnąłeś k i znalazłeś pierwsze wystąpienie tej litery. Jeśli teraz
930naciśniesz u, to kursor przesunie się tuż za najbliższe litery
931ku. Naciśnij teraz <Delback>. Spowoduje to skasowanie z wyszukiwanego
932łańcucha litery u, a kursor wróci do pierwszego wystąpienia litery k.
933
934Jeśli podczas szukania naciśniesz jakiś klawisz w kombinacji z META lub
935Ctrl (z nielicznymi wyjątkami --- znakami, które mają specjalne
936znaczenie podczas szukania, takimi jak C-s i C-r), to szukanie zostanie
937przerwane.
938
939C-s rozpoczyna proces szukania do przodu, czyli ZA bieżącą pozycją
940kursora. Jeśli chcesz szukać czegoś położonego w tekście wcześniej,
941to naciśnij C-r. Wszystko, co powiedzieliśmy o poleceniu C-s, stosuje
942się też do C-r, oczywiście w odniesieniu do szukania wstecz.
943
944
945* WIELE OKIEN
946-------------
947
948Jedną z użytecznych cech Emacsa jest możliwość wyświetlania więcej niż
949jednego okna na raz.
950
951>> Przesuń kursor do tej linii i naciśnij C-u 0 C-l.
952
953>> Naciśnij teraz C-x 2, co podzieli ekran na dwa okna. Obydwa okna
954 wyświetlają ten samouczek. Kursor pozostaje w górnym oknie.
955
956>> Naciśnij C-M-v by przewinąć dolne okno. (Jeśli nie masz
957 klawisza Meta lub Alt, to naciśnij ESC C-v.)
958
959>> Naciśnij C-x o ("o" jak angielskie "other") by przesunąć kursor do
960 dolnego okna. Użyj C-v i M-v w dolnym oknie, by przewinąć jego
961 zawartość. Polecenia, które masz wykonać, odczytuj z górnego okna.
962
963>> Naciśnij C-x o jeszcze raz tak, by kursor wrócił do górnego okna.
964 Kursor w górnym oknie nie zmienił położenia.
965
966Każde okno pamięta położenie swojego kursora, lecz w danej chwili
967tylko jedno z okien wyświetla kursor. Wszystkie polecenia edycyjne
968stosują się do okna, w którym jest kursor. To okno nazywane jest
969,,oknem wybranym''.
970
971Polecenie C-M-v przyda Ci się, gdy będziesz chciał edytować tekst w
972jednym oknie, a drugiego używał jako punktu odniesienia. Dzięki niemu
973kursor może zawsze znajdować się w oknie, którego zawartość edytujesz, a
974Ty możesz przesuwać drugie okno.
975
976C-M-v to przykład kombinacji, który uzyskuje się, wciskając jednocześnie
977klawisze Ctrl i Meta (Alt). Jeśli masz prawdziwy klawisz META (Alt), to
978C-M-v możesz uzyskać przytrzymując jednocześnie Ctrl oraz META (Alt) i
979naciskając v. Nie jest ważne, co zostało naciśnięte wcześniej, Ctrl czy
980META, ponieważ obydwa te klawisze działają jako modyfikatory znaczenia
981znaków.
982
983Jeśli nie masz klawisza META (Alt) i w jego zastępstwie używasz ESC, to
984kolejność naciskania klawiszy ma znaczenie: musisz najpierw nacisnąć i
985puścić ESC, po czym nacisnąć Ctrl-v; kombinacja Ctrl-ESC v nie zadziała.
986Wynika to z tego, że ESC jest znakiem, a nie modyfikatorem.
987
988>> Naciśnij C-x 1 (w górnym oknie), by pozbyć się okna dolnego.
989
990(Jeśli nacisnąłbyś C-x 1 w dolnym oknie, to górne by znikło. Możesz
991sobie to polecenie tłumaczyć jako ,,pozostaw tylko jedno okno --- to w
992którym właśnie jestem''.)
993
994Nie musi być tak, że obydwa okna pokazują ten sam bufor. Jeśli użyjesz
995C-x C-f, by odwiedzić jakiś plik w jednym z nich, to zawartość drugiego
996się nie zmieni. Z zasady w różnych oknach możesz niezależnie wyświetlać
997różne pliki.
998
999Oto inny sposób używania dwóch okien do wyświetlania dwóch różnych
1000rzeczy:
1001
1002>> Naciśnij C-x 4 C-f i nazwę jednego z Twoich plików. Zakończ
1003 wprowadzanie klawiszem <Return>. Podany plik pojawi się w dolnym
1004 oknie razem z kursorem, który tam przeskakuje.
1005
1006>> Naciśnij C-x o, by wrócić do górnego okna, oraz C-x 1 by usunąć
1007 dolne okno.
1008
1009
1010* REKURSYWNE POZIOMY EDYCJI
1011---------------------------
1012
1013Czasami możesz znaleźć się w czymś, co nazywa się "rekursywnym
1014poziomem edycji". Możesz to rozpoznać po nawiasach kwadratowych w
1015linii trybu, obejmujących nawiasy okrągłe zawierające nazwę głównego
1016trybu edycji. Mógłbyś na przykład zobaczyć [(Fundamental)] zamiast
1017(Fundamental).
1018
1019By wyjść z rekursywnego poziomu edycji, naciśnij ESC ESC ESC. Jest to
1020ogólnego przeznaczenia polecenie ,,wychodzimy''. Możesz go użyć także,
1021by pozbyć się nadmiaru okien albo wyjść z minibufora.
1022
1023>> Naciśnij M-x by wejść do minibufora, potem naciśnij ESC ESC ESC, by
1024 z niego wyjść.
1025
1026Aby wyjść z rekursywnego poziomu edycji, nie wystarczy użyć C-g. Dzieje
1027się tak dlatego, że klawisz C-g jest używany do anulowania poleceń i
1028argumentów WEWNĄTRZ pojedynczego rekursywnego poziomu edycji.
1029
1030
1031SZUKANIE POMOCY
1032---------------
1033
1034W tym samouczku dostarczyliśmy tylko tyle informacji, ile jest
1035niezbędne, byś mógł zacząć używać Emacsa. Emacs jest istną kopalnią
1036najróżniejszych rzeczy, których nie sposób tutaj opisać. Będziesz
1037zapewne chciał dowiedzieć się o Emacsie więcej, ponieważ posiada on
1038wiele pożytecznych cech, o których na razie nic nie wiesz. Między innymi
1039jest w nim zaszyte mnóstwo wewnętrznej dokumentacji. Dotrzeć do tej
1040dokumentacji możesz po naciśnięciu kombinacji C-h.
1041
1042By uzyskać pomoc, naciśnij C-h, a potem znak, który określa jakiego
1043rodzaju pomocy oczekujesz. Jeśli poczujesz się NAPRAWDĘ zagubiony, to
1044napisz C-h?, a Emacs podpowie, jakiego rodzaju pomocy może Ci
1045dostarczyć. Jeśli naciśniesz C-h, a potem zadecydujesz, że pomoc nie
1046jest Ci jednak potrzebna, to aby anulować zapoczątkowane polecenie C-h,
1047po prostu wciśnij C-g.
1048
1049Najprostszą pomoc możesz uzyskać naciskając C-h c. Naciśnij C-h a potem
1050c, po czym kombinację klawiszy, której znaczenie chcesz poznać; Emacs
1051wyświetli krótki opis polecenia odpowiadającego tej kombinacji.
1052
1053>> Naciśnij C-h c C-p.
1054
1055Powinno to przywołać komunikat, o treści podobnej do
1056
1057 C-p runs the command previous-line
1058
1059W ten sposób możesz uzyskać ,,nazwę funkcji'' przypisanej kombinacji
1060klawiszy. Przydaje się to podczas pisania kodu w Lispie, w którym
1061zapisane są rozszerzenia Emacsa; wystarcza to także do przypomnienia
1062Ci, co dane polecenie robi, jeśli widziałeś je już wcześniej, lecz
1063go nie zapamiętałeś.
1064
1065Jako dopełnienie polecenia C-h c Emacs dopuszcza też wieloznakowe
1066kombinacje klawiszy, na przykład C-x C-s albo (jeśli nie masz klawisza
1067META lub Alt) <ESC>v.
1068
1069By uzyskać więcej informacji na temat polecenia, naciśnij C-h k
1070zamiast C-h c.
1071
1072>> Naciśnij C-h k C-p.
1073
1074To polecenie wyświetla dokumentację na temat danej funkcji oraz jej
1075nazwę w oknie Emacsa. Gdy skończysz śledzić wynik tego polecenia
1076naciśnij C-x 1, by pozbyć się tekstu pomocy. Nie musisz tego robić od
1077razu. Możesz wykonać pewne operacje w oparciu o tekst pomocy zanim
1078naciśniesz C-x 1.
1079
1080Oto kilka innych użytecznych wariantów C-h:
1081
1082 C-h f Opisz funkcje o podanej nazwie.
1083
1084>> Napisz C-h f previous-line<Return>. Wypisze to na ekranie całą
1085 informacje, jaką Emacs ma na temat funkcji, która implementuje
1086 polecenie C-p.
1087
1088Podobnie komenda C-h v pokazuje na ekranie dokumentację zmiennych,
1089których wartości możesz zmienić, aby dostosować Emacsa do swoich
1090preferencji. Wpisz nazwę zmiennej, gdy Emacs o nią poprosi.
1091
1092
1093 C-h a Apropos. Wpisz słowo, a Emacs wypisze listę
1094 wszystkich poleceń, których nazwa zawiera to słowo.
1095 Polecenia te można wywoływać za pomocą Meta-x.
1096 Dla niektórych poleceń Apropos wypisze jedno- lub
1097 dwuznakowe sekwencje, które wywołują te polecenia.
1098
1099>> Napisz C-h a file<Return>.
1100
1101Zobaczysz listę wszystkich poleceń,
1102dostępnych za pomocą M-x, które maja słowo "file" w swojej nazwie.
1103Zauważysz tam także polecenia takie, jak C-x C-f oraz C-x C-w,
1104umieszczone obok nazw poleceń "find-file" i "write-file".
1105
1106>> Napisz C-M-v, aby przewinąć okno pomocy. Zrób to kilka razy.
1107>> Napisz C-x 1, aby usunąć okno pomocy.
1108
1109 C-h i Czytanie elektronicznych podręczników (w formacie Info). To
1110 polecenie przełączy Cię do specjalnego bufora o nazwie
1111 *info*, gdzie będziesz mógł przeczytać podręczniki
1112 dotyczące pakietów zainstalowanych w Twoim
1113 systemie. Napisz m emacs <Return>, aby zapoznać się z
1114 podręcznikiem Emacsa. Jeżeli nigdy wcześniej nie używałeś
1115 trybu Info, to napisz ?, a Emacs przedstawi Ci możliwości
1116 tego trybu. Po tym, jak zapoznasz się z niniejszym krótkim
1117 samouczkiem, w dalszej pracy dostęp do dokumentacji
1118 będziesz uzyskiwał właśnie za pomocą Emacs Info.
1119
1120
1121DODATKOWE FUNKCJE
1122-----------------
1123
1124Więcej o Emacsie możesz się nauczyć czytając jego podręcznik, w formie
1125książkowej lub on-line w postaci Info (użyj menu Help lub naciśnij F10
1126h r). Dwie dodatkowe właściwości, które szczególnie mogą się przydać
1127to dopełnianie wprowadzanych danych i dired ułatwiające zarządzanie
1128plikami.
1129
1130Dopełnianie pozwala uniknąć niepotrzebnego wpisywania. Na przykład
1131jeśli chcesz się przełączyć do bufora *Messages*, możesz nacisnąć C-x
1132b *M<Tab> a Emacs dopełni dalszą część nazwy za Ciebie na tyle, na ile
1133będzie w stanie ustalić na podstawie tego, co do tej pory wpisałeś. Dopełnianie
1134jest opisane w Info w podręczniku Emacsa w części zatytułowanej
1135"Dopłnianie" (ang. Completion).
1136
1137Dired umożliwia Ci zrobienie wykazu plików w danym katalogu (dodatkowo
1138w podkatalogach), przemieszczanie się wewnątrz tej listy, odwiedzanie
1139plików, zmienianie nazw, usuwanie i inne operacje na plikach. Dired
1140jest opisane w Info w podręczniku Emacsa w części zatytułowanej
1141"Dired".
1142
1143Podręcznik dodatkowo opisuje wiele innych właściwości Emacsa.
1144
1145
1146* KIEROWANIE KURSOREM Z X TERMINALA (akapit dodany przez autorów wersji polskiej)
1147-----------------------------------
1148
1149Jeśli pracujesz na terminalu graficznym, to do kierowania kursorem
1150prawdopodobnie łatwiej Ci będzie używać klawiszy strzałek po prawej
1151stronie klawiatury. Klawisze strzałek: w lewo, w prawo, w górę i w dół
1152działają zgodnie z oczekiwaniem; odpowiadają one dokładnie C-b, C-f, C-p
1153i C-n, ale są łatwiejsze do zapamiętania. Możesz także używać C-lewo i
1154C-prawo, by przesuwać się o słowa, oraz C-góra i C-dół, by przesuwać się
1155o bloki (np. akapity, jeśli edytujesz tekst). Jeśli masz klawisze
1156oznaczone Home (lub Begin) oraz End, to przeniosą Cię one na początek i,
1157odpowiednio, na koniec linii, a C-Home i C-End na początek i koniec
1158pliku. Jeśli na Twojej klawiaturze są klawisze PgUp i PgDn, to możesz
1159ich użyć do przesuwania się o jeden ekran, tak jak M-v i C-v.
1160
1161Wszystkie te polecenia akceptują argument liczbowy, tak jak to
1162opisano powyżej. Wpisanie argumentu możesz sobie uprościć:
1163naciśnij i trzymaj CONTROL lub META i wpisz liczbę. Na
1164przykład, aby przesunąć kursor o 12 słów w prawo, naciśnij C-1 C-2
1165C-prawo. Zwróć uwagę, że jest to łatwe do wpisania, ponieważ nie
1166musisz puszczać klawisza CONTROL podczas wpisywania cyfr.
1167
1168
1169* UŻYWANIE MENU (akapit dodany przez autorów wersji polskiej)
1170---------------
1171
1172Jeśli pracujesz na X-terminalu, to u góry okna Emacsa powinieneś zauważyć
1173pasek z menu. Tego menu możesz używać, by wywoływać najczęściej
1174potrzebne polecenia Emacsa, takie jak "find file". Na początku będziesz
1175sądził, że jest to łatwiejsze niż używanie klawiatury, ponieważ nie
1176musisz się na pamięć uczyć kombinacji klawiszy, które uruchamiają
1177poszczególne polecenia. Gdy już jednak poznasz Emacsa, to zaczniesz
1178sobie te kombinacje przyswajać --- dla wygody przy pozycjach menu
1179pokazywane są odpowiadające im kombinacje klawiszy.
1180
1181Zwróć uwagę, że niektóre pozycje występujące w menu nie mają
1182odpowiedników klawiszowych. Na przykład pozycja "Buffers" powoduje
1183wyświetlenie listy wszystkich dostępnych buforów. Do każdego z nich
1184możesz się przełączyć, wybierając jego nazwę, wyświetloną pod pozycją
1185Buffers.
1186
1187
1188PODSUMOWANIE
1189------------
1190
1191Pamiętaj, że by wyjść z Emacsa na stałe, trzeba wydać polecenie C-x C-c.
1192By wyjść do powłoki na chwilę tak, by jeszcze Do Emacsa wrócić, trzeba
1193użyć C-z. (To nie działa pod X-Windows, ponieważ tam nie ma prawdziwego
1194konceptu przejścia na chwilę do powłoki. Zamiast tego C-z ,,ikonizuje''
1195okno Emacsa.)
1196
1197Ten samouczek był pisany tak, by wszyscy nowi użytkownicy mogli go
1198zrozumieć. Jeśli coś pozostawił niejasnym, nie siedź cicho i nie
1199obwiniaj siebie, tylko daj nam znać!
1200
1201
1202KOPIOWANIE
1203----------
1204
1205Niniejszy samouczek jest potomkiem w długiej linii samouczków
1206Emacsa, która rozpoczyna się od tego, który został napisany przez
1207Stuarta Cracrafta dla oryginalnego Emacsa. Został on zmodyfikowany we
1208wrześniu 1994 przez Bena Winga, który zaktualizował go w celu uwzględnienia
1209pracy pod X-Windows.
1210
1211Autorem pierwszego tłumaczenia na język polski był Remek Trzaska
1212<remek@npac.syr.edu>, a pomagał mu Ryszard Kubiak
1213<rysiek@ipipan.gda.pl>. Tamto tłumaczenie zostało uaktualnione dla
1214wersji GNU Emacs 21 przez Beatę Wierzchołowską <beataw@orient.uw.edu.pl>
1215z pomocą Ryszarda Kubiaka i Janusza S. Bienia <jsbien@mail.uw.edu.pl>.
1216
1217Ta wersja samouczka, podobnie jak GNU Emacs, jest chroniona prawem
1218autorskim, ale wolno ją kopiować pod następującymi warunkami:
1219
1220Copyright (C) 1985, 1994, 2001, 2002, 2003, 2004,
1221 2005, 2006, 2007 Free Software Foundation, Inc.
1222
1223Zezwala się na wykonywanie lub rozpowszechnianie
1224wiernych kopii tego dokumentu w otrzymanej formie, na dowolnym
1225nośniku, pod warunkiem zachowania informacji o
1226prawach autorskich i niniejszym zezwoleniu oraz pod
1227warunkiem, że dystrybutor udzieli odbiorcy pozwolenia na
1228dalsze rozpowszechnianie zgodnie z niniejszym zezwoleniem.
1229
1230
1231Zezwala się również na rozpowszechnianie na warunkach podanych
1232powyżej zmodyfikowanych wersji tego dokumentu lub jego części,
1233pod warunkiem, że zostaną wyraźnie uwidocznione
1234informacje o tym, kto dokonał modyfikacji jako ostatni.
1235
1236
1237Warunki kopiowania samego Emacsa są bardziej skomplikowane, ale zgodne
1238z tą ideą. Proszę, przeczytaj plik COPYING, po czym rozdaj swoim
1239znajomym kopie Emacsa. Pomóż tępić obstrukcjonizm w informatyce,
1240używając, tworząc i dzieląc się oprogramowaniem swobodnym.
1241
1242;;; Local Variables:
1243;;; mode: fundamental
1244;;; coding: latin-2
1245;;; sentence-end-double-space: nil
1246;;; End:
1247
1248;;; arch-tag: 6c6b7445-4cd5-44ca-a101-7f4697b92f60