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
|
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
<meta http-equiv="Content-language" content="pl">
<meta name="Author" content="W³odzimierz Macewicz">
<meta name="Keywords" content="tex, Wirtualna Akademia">
<title>U¿ywanie TeX-a w systemie UNIX</title>
</head>
<body>
<h1>U¿ywanie TeX-a w systemie UNIX (AUCTeX)</h1>
<p>
<em>Adam Dawidziuk</em>
</p>
<p>
TeX, jak wiadomo, nie jest zaopatrzony w standardowy interfejs
u¿ytkownika, co daje du¿± swobodê wyboru metod przygotowywania
dokumentów ¼ród³owych. O ile format plików wej¶ciowych i sposób ich
przetwarzania przez TeX-a pozostaje z za³o¿enia niezmienny, to
narzêdzia wspomagaj±ce wprowadzanie tre¶ci dokumentów we w³a¶ciwym
formacie s± nieustannie rozwijane. W artykule jest opisany jeden
z mo¿liwych sposobów u¿ywania TeX-a w systemie UNIX, ze szczególnym
uwzglêdnieniem pakietu AUC TeX.
</p>
<h2>Przetwarzanie danych</h2>
<p>
Brak narzuconego i okienkowego interfejsu u¿ytkownika powoduje, ¿e TeX
bywa postrzegany jako program przestarza³y i trudny. Przeciêtny
u¿ytkownik komputera zwykle nie jest w stanie zrozumieæ sposobu dzia³ania
TeX-a, a jeszcze trudniej dostrzec mu korzy¶ci, jakie mo¿na osi±gn±æ
przygotowuj±c dokumenty w ten w³a¶nie sposób. Pierwsz±
i najpowa¿niejsz± barier± pojêciow± jest fakt, ¿e TeX nie jest systemem
kompletnym, ale wymaga korzystania z wielu dodatkowych narzêdzi
wspomagaj±cych pracê. Wprawdzie ma³o kto wprowadza tre¶æ dokumentu
z klawiatury w chwili, gdy TeX poka¿e na ekranie dwie gwiazdki, ale
na pomys³ stworzenia sobie wygodnego i efektywnego ¶rodowiska pracy te¿
niestety wpada nieliczne grono u¿ytkowników.
</p>
<p>
Dzia³anie TeX-a mo¿na sprowadziæ do przetwarzania
plików. TeX czyta dokument ¼ród³owy, zwykle z pliku o nazwie
z przyrostkiem <code>.tex</code>, i tworzy obraz kolejnych stron
dokumentu w pliku o nazwie koñcz±cej siê napisem
<code>.dvi</code>. Zadaniem u¿ytkownika jest przygotowanie
plików wej¶ciowych i uruchomienie ci±gu przetworzeñ, które doprowadz±
do po¿±danego wyniku. Zarówno przygotowanie danych, jak i ich
przetwarzanie mo¿na zorganizowaæ w zasadzie w dowolny sposób. Istniej±
dwie istotnie ró¿ne metody tworzenia plików z danymi wej¶ciowymi:
generowanie i wpisywanie.
</p>
<p>
Generowanie danych wej¶ciowych do TeX-a to zagadnienie bardzo rozleg³e
i maj±ce wiele praktycznych zastosowañ. Sam proces przygotowania danych,
ich obróbka i metody generowania mog± byæ bardzo ró¿ne. Wszystko zale¿y
od celu przetwarzania i postawionych wymagañ. TeX jest doskona³ym
narzêdziem do formatowania wydruków z baz danych (np. s³owniki,
sprawozdania) pozwalaj±cym na uzyskanie wysokiej jako¶ci typograficznej przy
ca³kowitej automatyzacji procesu sk³adania tekstu. Czêsto u¿ytkownik (autor
tekstu) nie ma bezpo¶redniego kontaktu z TeX-em i nie musi znaæ
specyficznego dla TeX-a systemu oznaczeñ tekstu. Jednak jest to temat znacznie
wykraczaj±cy poza ramy tego artyku³u.
</p>
<p>
Wiêkszo¶æ u¿ytkowników zadowala siê zwyczajnym wpisywaniem tekstu.
W takim wypadku najwa¿niejszy jest ergonomiczny i dobrze opanowany
edytor tekstów. Zwykle ka¿dy ma swój ulubiony edytor, w którym wszystko
mu wychodzi naj³atwiej. I prawdopodobnie to bêdzie ten edytor, którego
nale¿y u¿yæ tworz±c pliki ¼ród³owe do przetwarzania TeX-em. Je¶li jednak
zamierzamy pisaæ du¿o, to nie powinni¶my eksperymentowaæ z edytorami zbyt
prostymi. Czas po¶wiêcony na poznanie inteligentnego, konfigurowalnego edytora
zwróci siê ju¿ po kilku dniach pisania. Z edytorów dostêpnych
w systemie UNIX doskona³y jest <code>vim</code>. Mo¿na go ,,nauczyæ''
wielu po¿ytecznych skrótów, a jego ostatnie wersje potrafi± rozpoznawaæ
sk³adniê i zwiêkszaæ czytelno¶æ plików ¼ród³owych przez stosowanie
kolorów. Lepszy jest tylko <code>emacs</code> (tak twierdz± u¿ytkownicy
Emacsa). Niestety, zarówno <code>vim</code> jak i Emacs
u niektórych wywo³uj± reakcje alergiczne, a na to rady nie ma.
</p>
<p>
Zwolennicy okienek MS nie powinni czuæ siê pokrzywdzeni
(a przynajmniej nie z powodu braku edytora). Z rzeczy dobrych godny
polecenia jest WinEdit, który mo¿e bardzo du¿o i sk³adniê pliku
TeX-owego zna na tyle dobrze, ¿e wyró¿nia kolorami odpowiednie
fragmenty. Jest ³atwo konfigurowalny w zakresie wystarczaj±cym do
efektywnej pracy.
Miêdzy innymi umo¿liwia powi±zanie z polami menu
dowolnych skryptów np. przetwarzaj±cych pliki ¼ród³owe. Daje siê
u¿ywaæ bez zbyt czêstego siêgania do myszy.
Jedn± z jego g³ównych
zalet jest sprawdzanie na bie¿±co sk³adni wprowadzanych s³ów -- te
których brak w s³owniku s± wyró¿niane.
Do podstawowych wad nale¿y
konieczno¶æ konfigurowania w³a¶ciwie wszystkiego od pocz±tku oraz to,
¿e, w przeciwieñstwie do vima i Emacsa nie jest to program
bezp³atny. Cena jest jednak umiarkowana.
</p>
<p>
Przewiduj±c trwa³y zwi±zek z TeX-em warto
usprawniæ przetwarzanie
pliku ¼ród³owego do postaci
wynikowej. Nie ma wielkiego problemu, je¶li przetwarzaniu podlega
jeden plik, a formatem wyj¶ciowym jest dvi. Ju¿
jednak konwersja pliku dvi do PostScriptu oznacza
konieczno¶æ uruchomienia dodatkowego programu.
Je¶li jeszcze do³o¿ymy do tego
tworzone podczas pisania rysunki (w szczególno¶ci rysunki
generowane, np. MetaPost-em) to liczba programów, które trzeba
uruchomiæ w ¶ci¶le okre¶lonym porz±dku, zniechêca do robienia tego
rêcznie. £atwo siê pomyliæ.
Dobrym pomys³em jest napisanie skryptu,
który wykonuje wszystkie operacje.
Przetwarzanie za ka¿dym
razem wszystkich plików ¼ród³owych nie zawsze jest konieczne,
a znacznie wyd³u¿a czas oczekiwania na wynik. W takiej sytuacji
najwygodniej u¿yæ programu <code>make</code>.
</p>
<p>
Do¶wiadczony u¿ytkownik TeX-a zwykle ma w³asny zestaw programów, które czyni±
¿ycie ³atwiejszym. Czêsto w sk³ad tego zestawu wchodzi dodatkowo jaki¶
edytor strumieniowy np. sed, czy czê¶ciej awk lub perl (najbardziej
wszechstronny). W przypadku umieszczania w dokumentach ilustracji
lub zdjêæ nale¿y uwzglêdniæ specjalizowane programy do przetwarzania obrazków
itd. Podstawow± zalet± TeX jest ³atwo¶æ zintegrowania go z dowolnym
u¿ywanym systemem.
</p>
<p>
Ka¿dy mo¿e wiêc u¿ywaæ TeX dok³adnie tak, jak lubi i tak jak mu
wygodnie. Trudno jest w jednym krótkim tek¶cie omówiæ wszystkie typowe
przypadki. Ograniczê siê do przyk³adu szczególnego -- systemu
UNIX. Przyczyn tego wyboru móg³bym wymieniæ wiele. Przede wszystkim
ca³y UNIX zbudowany jest z programów wykonuj±cych dobrze okre¶lone
funkcje, takich ,,klocków'', z których mo¿na zbudowaæ dowolnie
skomplikowane systemy przetwarzania informacji. Nie posiadaj±cy interfejsu
u¿ytkownika, przetwarzaj±cy pliki w inne pliki i konfigurowalny TeX
³atwo daje siê dopasowaæ do potrzeb u¿ytkownika UNIXa. Oczywi¶cie
istnieje mnóstwo ró¿nych i dobrych sposobów pracy z TeX-em. Zarówno
podany przyk³ad edytora (Emacs z AUC TeX-em), jak i techniki
przetwarzania dokumentów nosz± wyra¼ne piêtno moich osobistych
preferencji.
</p>
<h2>AUC TeX</h2>
<p>
AUC TeX to dostêpne w edytorze <code>emacs</code>
zintegrowane ¶rodowisko do tworzenia i przetwarzania dokumentów
TeX-owych i LaTeX-owych. Mo¿liwo¶ci AUC TeX-a s± ogromne, na
szczê¶cie nie trzeba wiedzieæ wszystkiego, aby z niego
korzystaæ. AUC TeX-a mo¿na oswajaæ ,,krok po kroku'', podobnie jak
i samego Emacsa.
</p>
<h3>Emacs</h3>
<p>
Edytor <code>emacs</code> ma d³ug± historiê w systemie UNIX.
W du¿ej czê¶ci zosta³ napisany w jêzyku <code>Lisp</code>
(dok³adniej w dialekcie Emacs Lisp). Jest to jêzyk funkcyjny s³u¿±cy
przede wszystkim do porozumiewania siê z Emacsem. Lisp bywa³ chêtnie
stosowany w tworzeniu tzw. ,,systemów sztucznej inteligencji''. Nie dziwi
wiêc naprawdê nieprzeciêtna inteligencja edytora Emacs je¶li u¶wiadomimy sobie,
¿e jest to najwiêkszy z popularnych programów napisanych w Lispie.
A mo¿liwo¶ci i umiejêtno¶ci Emacsa s± chyba niezg³êbione (strzy¿e,
¶piewa, tañczy, gotuje, krawaty wi±¿e...).
</p>
<p>
Edytor ten bywa niezbyt lubiany przez pocz±tkuj±cych
u¿ytkowników ze wzglêdu na sposób wydawania poleceñ i niezbyt
zrozumia³± terminologiê stosowan± w dokumentacji
i komunikatach.
Koncepcja porozumiewania siê z edytorem jest
rzeczywi¶cie mocno egzotyczna, ale wbrew pozorom ma g³êboki
sens.
Kluczem do sukcesu jest znalezienie klawisza
<code>Meta</code> na klawiaturze. Wci¶niêcie tego klawisza ze
znakiem <code>x</code> (oznaczane jako <code>Meta-x</code>
lub <code>M-x</code>) rozpoczyna wprowadzanie poleceñ.
W klawiaturze komputera PC zwykle klawiszem <code>Meta</code> jest
<code>Alt</code>. Je¶li jednak <code>Alt</code> zosta³
przedefiniowany (np. w celu wprowadzania polskich znaków) to
<code>M-x</code> mo¿na wprowadziæ sekwencyjnie wciskaj±c
najpierw klawisz <code>Esc</code>, a potem
<code>x</code>. Tego typu problemy nie istniej± z klawiszem
<code>Ctrl</code>. Podstawowymi chwytami s±
<code>Ctrl-x</code> i <code>Ctrl-c</code>, opisywane
czêsto jako <code>C-x</code> i <code>C-c</code>.
</p>
<p>
Mocn± stron± Emacsa jest dokumentacja (<code>C-h</code>). Funkcje przypisane
klawiszom zmieniaj± siê w zale¿no¶ci od trybu pracy (<em>mode</em>), co
zawsze mo¿na sprawdziæ wpisuj±c <code>C-h m</code>. Wiedz±c, ¿e Emacs mo¿e
otwieraæ wiele plików jednocze¶nie, ale ka¿dy w innym buforze
(<em>buffer</em>), ¿e w ¶rodowisku okienkowym mo¿e otwieraæ wiele okien
zwanych ramkami (<em>frames</em>) i ¿e ka¿da ramka mo¿e byæ podzielona na
wiele ,,okien'' (<em>window</em>) mo¿na
bez problemu zrozumieæ jêzyk dokumentacji.
</p>
<p>
Istnieje wiele odmian Emacsa. Na potrzeby tego artyku³u za³o¿ymy sobie, ¿e
dysponujemy zainstalowan±, wspó³czesn± wersj± XEmacsa. Za³o¿enie to jest
uzasadnione, poniewa¿ norm± s± ju¿ komputery, na których dzia³aj±ce okienka
graficzne nie powoduj± zatrzymania systemu. A XEmacs dobrze wygl±da
w okienkach. Poza tym w XEmacsie AUC TeX jest domy¶lnie
zainstalowany, co pozwala skróciæ ten tekst o rozdzia³ po¶wiêcony
instalacji. Dodatkowo nie bêdê rozwijaæ problemu konfiguracji, któr±
w XEmacsie mo¿na wykonaæ za pomoc± myszy. Wszystkie ustawienia AUC TeX-a
wykonuje siê wybieraj±c mysz± z menu <code>Options Customize Emacs Wp
Tex AUC Tex</code>, a potem ju¿ wed³ug uznania. W to samo miejsce
mo¿na trafiæ wciskaj±c <code>M-x customize</code>, tyle ¿e po drodze jest
wiêcej obja¶nieñ i ³atwiej siê zagubiæ.
</p>
<p>
Je¶li kto¶ nie dysponuje XEmacsem lub nie lubi myszy, to bêdzie musia³ wpisywaæ
odpowiednie zaklêcia do pliku <code>.emacs</code>, który znajduje siê
w katalogu domowym u¿ytkownika. Pomocne mo¿e byæ odszukanie pliku
<code>tex.el</code> i <code>tex-site.el</code>, które le¿± gdzie¶
z innymi plikami Emacsa (ale w ró¿nych katalogach -- przyda siê
program <code>find</code>). Mo¿na w nich podejrzeæ, jak s± zadawane
warto¶ci pocz±tkowe list i zmiennych i je zmodyfikowaæ. Nie nale¿y
przy tym zmieniaæ pliku <code>tex.el</code> (ani jego skompilowanej wersji
<code>tex.elc</code>) lecz kopiowaæ co trzeba do pliku <code>.emacs</code>.
Je¶li zmiana ma dotyczyæ wszystkich u¿ytkowników nale¿y odpowiedni fragment
pliku <code>tex.el</code> skopiowaæ do pliku <code>tex-site.el</code>
i tam pozamieniaæ wszystko to, co wymaga zmiany.
</p>
<p>
I jeszcze jedna uwaga dla pocz±tkuj±cych: w Emacsie mo¿na zapisaæ plik
z bufora na dysk wciskaj±c <code>C-x C-s</code>, a pracê
z Emacsem zakoñczyæ sekwencj± <code>C-x C-c</code>. Emacs nie jest
jednak ma³ym programem, wiêc szanuj±c swój czas lepiej nie otwieraæ go
i nie zamykaæ bez wyra¼nej potrzeby, zw³aszcza, ¿e raz otwarty mocno nie
przeszkadza.
</p>
<p>
Do efektywnego wykorzystania Emacsa na potrzeby jêzyka polskiego jest potrzebna
polska klawiatura (ka¿dy robi to jak lubi, jedna z klasycznych metod
w systemie XWindow sprowadza siê do wykorzystania <code>xmodmap</code>)
oraz polski s³ownik do programu <code>ispell</code>. Zagadnienia te s±
dok³adnie omówione w tekstach po¶wiêconych polskim ,,ogonkom''.
</p>
<h3>Uruchomienie AUC TeX-a</h3>
<p>
Po uruchomieniu edytora Emacs utworzenie nowego pliku jest mo¿liwe po
wci¶niêciu <code>C-x C-f</code> i podaniu nazwy. Podaj±c nazwê pliku
z przyrostkiem <code>.tex</code> zmusimy edytor do wej¶cia w tryb
<code>LaTeX-mode</code>. Informacja o tym powinna pojawiæ siê
w wierszu trybu pracy (<em>Mode Line</em>) w dolnej czê¶ci okna
jako napis <code>LaTeX</code>. Mo¿na te¿ wymusiæ wej¶cie w tryb
<code>LaTeX</code> wywo³uj±c polecenie <code>LaTeX-mode</code> (<code>M-x
LaTeX-mode</code>). Do rozwijania nazw mo¿na u¿yæ znaku klawisza tabulacji
(<code>Tab</code>).
</p>
<p>
Je¶li powy¿sze dzia³ania nie prowadz± do uruchomienia
AUC TeX-a, to albo nie jest on zainstalowany, albo w pliku
<code>.emacs</code> brakuje wiersza
</p>
<pre>
(require 'tex-site)
</pre>
<p>
Brak zainstalowanego
AUC TeX-a mo¿e prowadziæ do pomy³ek poniewa¿ Emacs wchodzi w takiej
sytuacji w du¿o prostszy tryb wspomagania LaTeX-a, a wszystko dzia³a
inaczej (w szczególno¶ci ,,klawiszologia'' jest inna).
</p>
<h3>S³owa kluczowe LaTeX-a</h3>
<p>
Przy tworzeniu pliku LaTeX-owego pewne oznaczenia tekstu pojawiaj± siê czê¶ciej
ni¿ inne. Na szczególn± uwagê zas³uguj± mechanizmy AUC TeX-a u³atwiaj±ce
wpisywanie tych w³a¶nie czêsto wystêpuj±cych s³ów kluczowych. Najczê¶ciej
wprowadza siê do tekstu oznaczenia ¶rodowisk i ich nazwy, ,,zwyk³e'' polecenia
TeX-owe, ¶ródtytu³y oraz polecenia zmiany kroju pisma.
</p>
<p>
Najwa¿niejsz± konstrukcj± LaTeX-a s± ¶rodowiska, czyli pary
<code>\begin{*}</code> <code>\end{*}</code>. Do wprowadzania ¶rodowisk s³u¿y
polecenie <code>LaTeX-enviroment</code> domy¶lnie przypisane do sekwencji
<code>C-c C-e</code>. Po wydaniu tego polecenia AUC TeX pyta
o nazwê ¶rodowiska i ewentualne dodatkowe dane. Przy pomocy
klawisza <code>Tab</code> lub spacji mo¿na rozwijaæ czê¶ciowo wpisane nazwy.
AUC TeX zna mnóstwo standardowych ¶rodowisk, poza tym potrafi uczyæ siê
nowych analizuj±c w³±czane pakiety i nag³ówek pliku.
</p>
<p>
Otwarte ¶rodowisko mo¿na zamkn±æ poleceniem
<code>LaTeX-close-enviroment</code> (<code>C-c ]</code>).
Zdecydowanie jednak najbezpieczniejsze jest wprowadzanie
kompletnych ¶rodowisk przy u¿yciu <code>C-c C-e</code>.
</p>
<p>
Poza ¶rodowiskami w pliku LaTeX-owym czêsto pojawiaj± siê
tradycyjne polecenia TeX-a, czyli s³owa rozpoczynaj±ce siê znakiem
<code>\</code>. Zapamiêtanie wszystkich poleceñ jest trudne,
a przy ich wprowadzaniu ³atwo o b³±d. Dlatego nale¿y korzystaæ
z polecenia <code>LaTeX-complete-symbol</code>. Je¶li pisane s³owo
rozpoczyna siê znakiem <code>\</code> to wystarczy wcisn±æ
<code>M-Tab</code> aby je zakoñczyæ, lub uzyskaæ listê mo¿liwych
zakoñczeñ.
</p>
<p>
Inny sposób wpisywania makr TeX-owych polega na wykorzystaniu
polecenia <code>TeX-insert-macro</code> (<code>C-c C-m</code>).
Aby u¿yæ jeszcze innej metody nale¿y np. w pliku
<code>.emacs</code> ustawiæ ró¿n± od <code>nil</code>
warto¶æ zmiennej <code>TeX-electric-escape</code>
</p>
<pre>
(setq TeX-electric-escape t)
</pre>
<p>
Wi±¿e to znak
<code>\</code> z funkcj±
<code>TeX-electric-macro</code>, co umo¿liwia uruchamianie
mechanizmu rozwijania makr przez wpisanie tego znaku. Jest to metoda
najszybsza.
</p>
<p>
AUC TeX domy¶lnie wstawia parê pustych nawiasów <code>{}</code> po
wpisaniu makra, co zabezpiecza przed ,,znikniêciem'' spacjê znajduj±c± siê za
tym makrem. Je¶li nawiasy nie s± mile widziane nale¿y zmiennej
<code>TeX-insert-braces</code> przypisaæ warto¶æ <code>nil</code>.
</p>
<p>
Inaczej oznacza siê elementy listy <code>\item</code>. S³u¿y do tego polecenie
<code>LaTeX-insert-item</code> (<code>M-Return</code>), którego dzia³anie
zale¿y od kontekstu.
</p>
<p>
Kolejnym czêsto wystêpuj±cym elementem tekstu s± ¶ródtytu³y, oznaczane s³owami
kluczowymi <code>\chapter</code>, <code>\section</code> itd. Mo¿na u³atwiæ
sobie ¿ycie korzystaj±c z polecenia <code>LaTeX-section</code> (<code>C-c
C-s</code>). Wywo³anie tego polecenia spowoduje wstawienie oznaczenia
¶ródtytu³u, przy czym domy¶lnie AUC TeX zapyta o tytu³
i etykietê zwi±zan± z tym ¶ródtytu³em (argument polecenia
<code>\label</code>). Domy¶lny poziom ¶ródtytu³u mo¿na zmieniæ wpisuj±c
rêcznie w³a¶ciwe s³owo kluczowe (z rozwijaniem) lub podaj±c argument
(<code>C-u</code>) przed wywo³aniem polecenia <code>LaTeX-section</code>. Je¶li
argument jest ujemny, to poziom zostanie zmieniony w dó³ o jeden.
</p>
<p>
I tak, je¶li ostatnio wstawiony by³ ¶ródtytu³ na poziomie
<code>\subsection</code> to bêdzie to aktualny poziom domy¶lny. Sekwencja
<code>C-c C-s</code> oznacza polecenie wpisania ¶ródtytu³u na tym w³a¶nie
poziomie. Podanie <code>C-u C-c C-s</code> to wpisanie
<code>\subsubsection</code>, a <code>C-u -1 C-c C-s</code> spowoduje
wstawienie <code>\section</code>. Przedrostki nazw w etykietach
<code>\label</code> s± kontrolowane zmienn± <code>LaTeX-section-label</code>.
Je¶li warto¶ci± tej zmiennej jest <code>nil</code>, to odno¶niki nie bêd±
wstawiane.
</p>
<p>
AUC TeX udostêpnia równie¿ silny mechanizm zmiany kroju pisma. Jego
podstaw± jest polecenie <code>TeX-font</code> (skrót <code>C-c C-f</code>), po
którym podaje siê argument okre¶laj±cy po¿±dan± zmianê kroju pisma. I tak
<code>C-e</code> powoduje wpisanie <code>\emph{}</code>, <code>C-i</code> --
<code>\textit{}</code>, <code>C-t</code> -- <code>\texttt{}</code> itd,
w³±cznie z usuwaniem ustawienia kroju pisma <code>C-d</code>. Lista mo¿liwo¶ci
jest wypisywana po podaniu spacji jako argumentu:
</p>
<pre>
Font list:
C-b \textbf{ }
C-c \textsc{ }
C-e \emph{ }
C-f \textsf{ }
tab \textit{ }
return \textmd{ }
C-n \textnormal{ }
C-r \textrm{ }
C-s \textsl{ }
C-t \texttt{ }
C-u \textup{ }
C-d -- delete font
</pre>
<p>
Je¶li polecenie <code>TeX-font</code> jest poprzedzone argumentem
(<code>C-u</code>), to zostanie zmieniony krój pisma w miejscu,
w którym znajduje siê kursor. Przyk³adowo je¿eli kursor jest umieszczony
na tek¶cie bêd±cym argumentem polecenia <code>\textit{}</code>, to sekwencja
<code>C-u C-c C-f C-e</code> zmieni polecenie <code>\textit</code> na
<code>\emph</code>.
</p>
<h3>Inne elementy tekstu</h3>
<p>
W tre¶ci dokumentu pojawiaj± siê nie tylko s³owa kluczowe, ale tak¿e znaki
specjalne: cudzys³ów, znak dolara <code>$</code>, nawiasy klamrowe
<code>{}</code> oraz znak komentarza <code>%</code>.
</p>
<p>
W TeX-u nie u¿ywamy znaków <code>"</code> na oznaczenie cudzys³owu.
W tekstach pisanych po angielsku u¿ywamy znaku <code>``</code> jako
cudzys³owu otwieraj±cego i znaku <code>''</code> jako cudzys³owu
zamykaj±cego. Je¶li u¿ytkownik wpisuje <code>"</code> to AUC TeX zadba,
aby w tek¶cie pojawi³o siê to co trzeba. W przypadku jêzyka
polskiego (i spolszczonego LaTeX-a) cudzys³ów otwieraj±cy oznacza siê
w tek¶cie dwoma przecinkami <code>,,</code>. Aby polecenie
<code>TeX-insert-quote</code> wywo³ywane klawiszem <code>"</code> zadzia³a³o
prawid³owo nale¿y zmiennej <code>TeX-open-quote</code> przypisaæ warto¶æ
<code>,,</code> (czyli dwa przecinki).
</p>
<p>
Znaki dolara <code>$</code> w pliku TeX-owym obejmuj±
tekst wzoru matematycznego, a w podwójne dolary <code>$$</code>
jest ujêty wzór wyeksponowany w osi strony. W celu lepszej kontroli
otwierania i zamykania wzorów wprowadzenie znaku dolara powoduje
wywo³anie polecenia <code>TeX-insert-dollar</code>. Polecenie to, oprócz
wprowadzenie do pliku znaku <code>$</code> sprawdza stan
sparowania tych znaków. Dziêki temu dok³adnie wiadomo, gdzie siê
zaczyna i gdzie koñczy ¶rodowisko matematyczne, a przy okazji nie da
siê wzoru rozpoczêtego dwoma dolarami zamkn±æ tylko jednym.
</p>
<p>
Polecenie <code>TeX-insert-braces</code> pozwala
wprowadzaæ nawiasy klamrowe parami. Skrót klawiaturowy jest
intuicyjny: <code>C-c {</code>.
</p>
<p>
Przy wprowadzaniu i usuwaniu znaku komentarza na pocz±tku wierszy
przydaje siê polecenie <code>TeX-comment-regin</code> (<code>C-c ;</code>).
Umo¿liwia ono wstawienie znaku komentarza na pocz±tku ka¿dego wiersza
zaznaczonego fragmentu tekstu (<em>region</em>) czyli obszaru od punktu
oznaczonego przez <code>C-</code>spacja do bie¿±cej pozycji kursora (lub
zaznaczonego mysz±). Podobnie dzia³a polecenie
<code>TeX-comment-paragraph</code> (<code>C-c %</code>) dla akapitu. Aby
usun±æ znak komentarza wpisujemy <code>C-u - C-c ;</code> lub <code>C-u -
C-c %</code>.
</p>
<p>
<h3>Matematyka</h3>
<p>
W przypadku wprowadzania du¿ej liczby wzorów matematycznych warto mieæ pod rêk±
mechanizm przyspieszaj±cy wpisywanie s³ów takich jak <code>\upsilon</code> czy
<code>\rightarrow</code>. Mechanizm taki uruchamia siê (i wy³±cza)
w AUC TeX-u poleceniem <code>LaTeX-math-mode</code> (<code>C-c ~</code>).
W trybie matematycznym po wprowadzeniu znaku
,,<code>`</code>'' klawiatura zmienia znaczenie i zamiast zwyk³ych znaków
pojedynczym klawiszem mo¿na wprowadzaæ symbole matematyczne. I tak
(w trybie matematycznym) sekwencja klawiszy <code>`d</code> spowoduje
wpisanie <code>\delta</code>, <code>`G</code> -- <code>\Gamma</code>,
a <code>`cN</code> -- <code>{\cal N}</code>.
</p>
<p>
Po¿yteczne bywa podanie argumentu (<code>C-u</code>) przed
symbolem matematycznym. Sekwencja klawiszy <code>C-u `e</code>
spowoduje wpisanie do bufora <code>$\epsilon$</code> -- co
znacznie przy¶piesza wstawianie pojedynczych symboli w bloku
tekstu.
</p>
<p>
Bez mo¿liwo¶ci definiowania w³asnych skrótów przydatno¶æ trybu matematycznego
by³aby znacznie ograniczona. Mo¿na to robiæ modyfikuj±c na prywatne potrzeby
listê <code>LaTeX-math-list</code>. Nie sprawi te¿ problemu zamiana klawisza
<code>`</code> na jaki¶ porêczniejszy (je¶li kto¶ musi) -- nale¿y zmieniæ
warto¶æ zmiennej <code>LaTeX-math-abberv-prefix</code>.
</p>
<h3>W³asne definicje</h3>
<p>
Powróæmy do rozwijania s³ów kluczowych. Czêsto siê zdarza, ¿e definiujemy
w³asne makra. AUC TeX doskonale nas rozumie. Je¶li wpiszemy definicjê
LaTeX-ow± (<code>\renewcommand</code>) to AUC TeX j± rozpozna i siê
jej ,,nauczy'' -- bêdzie ona dostêpna poprzez mechanizm rozwijania pocz±tków
wyrazów. Mo¿liwe jest równie¿ rozpoznawanie definicji TeX-a wprowadzanych jako
<code>\def</code>.
</p>
<p>
AUC TeX rozpoznaje makrodefinicje zapisane w pliku podczas
parsowania dokumentu po wydaniu polecenia
<code>TeX-normal-mode</code> (<code>C-c C-n</code>).
Je¶li wiêc wpiszemy w pliku now± definicjê, nale¿y wcisn±æ <code>C-c C-n</code>
i nie musimy jej dok³adnie pamiêtaæ. Informacje
o makrodefinicjach zapisywane s± w pliku
<code>./auto/nazwa.el</code>.
</p>
<p>
Mo¿na wymusiæ parsowanie dokumentu natychmiast po jego wczytaniu
oraz umieszczanie informacji o nim w katalogu
auto przy ka¿dym zapisie na dysk np. przez
wpisanie do pliku <code>.emacs</code> nastêpuj±cych
wierszy:
</p>
<pre>
; parsowanie przy wczytywaniu:
(setq TeX-parse-self t)
; parsowanie przy zapisie:
(setq TeX-auto-save t)
</pre>
<p>
Zmianê pliku <code>./auto/nazwa.el</code> powoduje równie¿
wstawienie do tekstu dokumentu nazwy etykiety
<code>\label</code>. Wstawiaj±c odno¶nik do tej etykiety
(<code>\ref</code>, <code>\pageref</code>) mo¿na etykietê
wybraæ z listy etykiet pokazywanej przez mechanizm rozwijania
(<code>Tab</code>). I to jest naprawdê cenna w³a¶ciwo¶æ.
</p>
<p>
Sposób parsowania dokumentu mo¿na
konfigurowaæ (po
szczegó³y odsy³am do dokumentacji). Na przyk³ad je¿eli mamy s³aby
komputer i chcemy, aby rozpoznawane by³y tylko etykiety musimy zadbaæ
o nastêpuj±ce ustawienia (znów plik <code>.emacs</code>):
</p>
<pre>
(setq-default
TeX-auto-regexp-list
'LaTeX-auto-label-regexp-list)
</pre>
<h3>Przetwarzanie z wnêtrza AUC TeX-a</h3>
<p>
Na uwagê zas³uguje mo¿liwo¶æ uruchamiania TeX-a i ogl±dania plików .dvi
bez konieczno¶ci opuszczania Emacsa. S³u¿y do tego polecenie przypisane do
sekwencji <code>C-c C-c</code>, czyli <code>TeX-command-master</code>. Po
wydaniu tego polecenia AUC TeX zapyta jakie dzia³ania ma podj±æ. Je¶li
w pliku by³y dokonywane jakie¶ zmiany, to zaproponuje jego przetworzenie
TeX-em. Po przetworzeniu i kolejnym wci¶niêciu <code>C-c C-c</code>
bêdzie chcia³ uruchomiæ przegl±darkê <code>.dvi</code>. Je¿eli nie wyst±pi±
¿adne b³êdy w przetwarzaniu, to w okienku obok obejrzymy wynik
sk³adu.
</p>
<p>
Standardowe polecenia przetwarzania pliku ¼ród³owego mo¿na ³atwo rozszerzyæ
o nasze ulubione: <code>mex</code>, <code>platex</code> czy
<code>pdftex</code>. Naj³atwiej przez menu XEmacsa. W razie potrzeby
mo¿na skopiowaæ odpowiedni fragment z pliku <code>tex.el</code> (czy
wrêcz <code>tex.elc</code>). Prawdopodobnie warto zmienion± listê
<code>TeX-command-list</code> wstawiæ do pliku <code>tex-site.el</code> --
niech siê ciesz± wszyscy u¿ytkownicy.
</p>
<p>
Naprawdê niezwykle u¿yteczna (i trudna do zaimplementowania poza
edytorem) jest mo¿liwo¶æ przetworzenia tylko fragmentu pliku ¼ród³owego.
W przypadku sk³adania skomplikowanego dokumentu mo¿na TeX-owaæ tylko
fragment nad którym pracujemy, co zaoszczêdza mnóstwo czasu. S³u¿y do tego
polecenie <code>TeX-command-region</code> przypisane do sekwencji <code>C-c
C-r</code>. Wszystko dzia³a tak samo jak w przypadku
<code>TeX-command-master</code>, z jednym wyj±tkiem -- AUC TeX
buduje z nag³ówka i zaznaczonego fragmentu tekstu nowy plik, który
przetwarza TeX-em. Kolejne <code>C-c C-r</code> umo¿liwia obejrzenie w³a¶ciwego
pliku <code>.dvi</code>. Trzeba siê tylko pilnowaæ, ¿eby nie definiowaæ
¿adnych makr globalnych poza nag³ówkiem. W plikach LaTeX-owych koñcem
nag³ówka jest wiersz zawieraj±cy napis <code>\begin{document}</code>. W plikach
TeX-owych jest to natomiast <code>%**end of header</code>. Znacznik koñca
nag³ówka mo¿na zdefiniowaæ jako wyra¿enie regularne okre¶laj±c warto¶æ zmiennej
<code>TeX-header-end</code>.
</p>
<p>
W przypadku wyst±pienia b³êdów w czasie przetwarzania mo¿na ogl±daæ je
kolejno przy pomocy polecenia <code>TeX-next-error</code> (|C-c `|).
AUC TeX opatruje b³êdy TeX-a dodatkowym komentarzem, co mo¿e pomóc
pocz±tkuj±cym u¿ytkownikom.
</p>
<h3>I wiêcej...</h3>
<p>
Zatrzymajmy siê jeszcze nad tym, co widzimy na ekranie. Emacs
(w szczególno¶ci XEmacs) potrafi inteligentnie zaznaczaæ odpowiednie
fragmenty tekstu kolorami. Konfigurowanie kolorów w XEmacsie jest
proste (mysz± w sekcji <em>faces</em> -- dlatego
warto u¿ywaæ XEmacsa). Je¶li kolorowanie nie w³±czy³o siê z w³asnej
woli mo¿na je wymusiæ poleceniem <code>font-lock-mode</code>.
</p>
<p>
Nawet bez kolorowania tre¶æ dokumentu mo¿na wprowadziæ
w niezwykle czytelnej formie dziêki zaawansowanym poleceniom
formatowania tekstu.
W wolnej chwili warto wypróbowaæ polecenia:
</p>
<p>
<code>LaTeX-fill-paragraph</code> (<code>C-c C-q C-p</code> lub <code>M-q</code>),
<code>LaTeX-fill-enviroment</code> (<code>C-c C-q C-e</code>),
<code>LaTeX-fill-section</code> (<code>C-c C-q C-s</code>) oraz
<code>LaTeX-fill-region</code> (<code>C-c C-q C-r</code> lub <code>M-g</code>).
</p>
<p>
Ograniczona objêto¶æ artyku³u nie pozwala omówiæ wszystkich mo¿liwo¶ci
AUC TeX-a. Nie zmie¶ci³y siê tematy obszerne, takie jak konfigurowanie
dzia³ania AUC TeX-a i liczne szczegó³owe, np. praca
z dokumentami hierarchicznymi. Wszystko mo¿na doczytaæ
w dokumentacji. Czytaj±c trzeba pamiêtaæ, ¿e AUC TeX jest czê¶ci±
edytora Emacs i przez ca³y czas mo¿na korzystaæ ze wszystkiego, co Emacs
oferuje. Przyk³adem jest niezale¿ny (ale wspierany przez AUC TeX-a) tryb
,,ukrywania'' fragmentów tekstu, w³±czany/wy³±czany poleceniem
<code>outline-minor-mode</code>. Pojawiaj±ce siê dodatkowe pozycje menu
(i polecenia) pozwalaj± wy¶wietliæ zamiast rozdzia³u, podrozdzia³u itd.
tylko fragment pierwszego wiersza z tytu³em (bez zmiany tekstu). Mo¿liwe
jest np. pisanie czwartego rozdzia³u trzy wiersze od koñca nag³ówka, albo
poruszanie siê po tek¶cie tak, jakby sk³ada³ siê on tylko ze ¶ródtytu³ów.
</p>
<h2>Przetwarzanie zewnêtrzne</h2>
<p>
W ca³ej zabawie z Emacsem najmilsze jest to, ¿e wcale nie trzeba
go u¿ywaæ. Tekst mo¿na przygotowaæ korzystaj±c z jakiegokolwiek
edytora (np. ...Emacsa), a pliki ¼ród³owe przetwarzaæ
zewnêtrznie. Przypu¶æmy, ¿e kolega podes³a³ nam 46 felietonów, które
napisa³ w ostatnim roku. Wszystkie, to kompletne pliki LaTeX-owe.
W takiej sytuacji TeX-owanie z wnêtrza edytora zajmie zbyt du¿o
czasu. Najszybsz± metod± bêdzie umieszczenie wszystkich plików
w jednym katalogu i napisanie w terminalu mniej wiêcej czego¶
takiego:
</p>
<pre>
~$ for i in *.tex; do latex $i; done
</pre>
<p>
Nie zawsze jednak jest tak prosto. Czêsto
otrzymanie wyniku koñcowego wymaga
wielu przetworzeñ. Wpisywanie ci±gu tych samych poleceñ po ka¿dej
modyfikacji pliku bywa mêcz±ce. Dlatego m±drzy
ludzie
stworzyli program <code>make</code>
(lub <code>gnumake</code>). Wszystkie polecenia wystarczy
wpisaæ raz
ale do pliku
<code>Makefile</code> w bie¿±cym katalogu. W najprostszym
przypadku plik ten bêdzie wygl±da³ tak:
</p>
<pre>
all: referat.ps
%.dvi: %.tex
latex $<
%.ps: %.dvi
dvips $<
%.pdf: %.tex
pdflatex $<
</pre>
<p>
Z zawarto¶ci pliku wynika, ¿e pracujemy nad referatem (tworzymy
plik <code>referat.tex</code>) i ¿e u¿ywamy przegl±darki
plików PS.
Teraz ca³e TeX-owanie sprowadza siê do uruchomienia
w terminalu programu <code>make</code>. Program ten domy¶lnie
wykona pierwsz± regu³ê z pliku Makefile
(<code>all: referat.ps</code> -- zamiast nazwy
<code>all</code> mo¿na wstawiæ dowolne s³owo,
np. <code>PsiaBuda</code>) i dowie siê, ¿e jeste¶my
zainteresowani plikiem <code>.ps</code>. Z trzeciej regu³y
program wywnioskuje, ¿e pliki <code>.ps</code> robi siê z plików
<code>.dvi</code> poleceniem <code>dvips</code>. Nie ma
jednak pliku <code>.dvi</code>, ale o tym jak go zrobiæ mówi
druga regu³a. A plik referat.tex jest na
dysku.
</p>
<p>
Ostatnia regu³a zostanie wykorzystana gdy
wykonamy polecenia <code>make pdf</code> -- wtedy
zostanie utworzony plik <code>referat.pdf</code>.
</p>
<p>
Najwa¿niejsz± cech± programu make jest to, ¿e do przetwarzania
dochodzi tylko wtedy, gdy program ¼ród³owy by³ modyfikowany po
ostatnim przetworzeniu (plik wynikowy jest starszy od pliku
¼ród³owego). Dziêki temu mo¿na w terminalu napisaæ takie (lub
podobne) zaklêcie:
</p>
<pre>
~$ while [ TRUE ]; do make;
sleep 5; done
</pre>
<p>
Tak potraktowany interpretator poleceñ co 5 sekund bêdzie
uruchamia³ program make, który przetworzy plik ¼ród³owy tylko wtedy,
gdy ten ostatni zosta³ zapisany na dysk po ostatnim przetworzeniu.
Teraz wystarczy tylko mysz± wskazaæ przegl±darkê, ¿eby zobaczyæ, co
,,nask³adali¶my'' do tej pory (przegl±darka powinna reagowaæ na
modyfikacjê przegl±danego pliku). Ta technika jest wra¿liwa na
zapisywanie pliku z b³êdem. Oczywi¶cie, je¶li mamy
dobry edytor, to wpisanie z³ego s³owa kluczowego,
czy nie domkniêcie ¶rodowiska lub nawiasu nie jest proste.
</p>
<p>
Co siê jednak stanie, gdy pope³nimy b³±d, na którym TeX
siê zatrzyma? Po pierwsze mo¿emy przeczytaæ uwa¿nie o co chodzi i w
edytorze przeskoczyæ do w³a¶ciwego wiersza, a TeX-owi powiedzieæ
np. <code>x</code>. Je¿eli jednak ustawimy zmienn±
¶rodowiska:
</p>
<pre>
TEXEDIT='emacsclient +%d %s'
</pre>
<p>
lub w przypadku XEmacsa:
</p>
<pre>
TEXEDIT='enu +%d %s'
</pre>
<p>
i je¿eli u¿ywamy Emacsa w którym powiemy
<code>M-x server-start</code>
(<code>gnuserv-start</code>), to mo¿emy odpowiedzieæ TeX-owi
<code>e</code> (od <em>edit</em>). Wtedy
Emacs wczyta plik z b³êdem i kursorem wska¿e wiersz, co do którego
TeX ma w±tpliwo¶ci. Po zakoñczeniu poprawek nale¿y zapisaæ plik
(<code>C-x C-s</code>) i powiedzieæ klientowi, ¿e ju¿ po
wszystkim (<code>C-x #</code>). Dla jasno¶ci: serwer to Emacs, a
klient to TeX...
</p>
<p>
Korzystanie z emacsowego klienta i serwera pomaga w wielu
trudnych sytuacjach. Wyobra¼my sobie ksi±¿kê maj±c± 42 rozdzia³y,
ka¿dy zapisany w oddzielnym pliku. Je¶li w kilkunastu plikach zamiast
<code>\ala</code> omy³kowo wpisali¶my <code>\ola</code>,
z tym ¿e czasem <code>\ola</code> jest dobrze i ma zostaæ, to
zanosi siê na d³u¿sze poprawianie. A mo¿na z poziomu interpretatora
poleceñ shell napisaæ:
</p>
<pre>
~$ gnuclient `grep -l \\ola *.tex`
</pre>
<p>
Potem wystarczy wciskanie klawisza <code>C-s</code>
i czasem <code>C-x e</code> (pierwszy raz oczywi¶cie równie¿
<code>C-x (</code> i <code>C-x )</code>). Je¿eli jednak
kto¶ ma tendencje do zapominania o takich szczegó³ach jak
<code>-l</code>, to niech lepiej próbuje siê uczyæ krok po
kroku... Na razie. Po jakim¶ czasie mo¿e okazaæ siê potrzebny
dodatkowy wiersz w pliku <code>.emacs</code>:
</p>
<pre>
(gnuserv-start)
</pre>
<p>
Bardzo niechêtnie u¿ywam mo¿liwo¶ci przetwarzania pliku
TeX-owego z wnêtrza edytora.
Nawet pisz±c niewielki dokument warto (moim zdaniem) korzystaæ
z programu make. Ju¿ kilka razy zapomnia³em
uruchomiæ <code>dvips</code>-a (mam drukarkê PS), w efekcie drukuj±c nieaktualn±
wersjê dokumentu. Dlatego mi wystarcza, gdy wewn±trz edytora mo¿na
wykonaæ tylko jedno polecenie -- make.
</p>
<h2>Podsumowanie</h2>
<p>
Wspó³czesne narzêdzia umo¿liwiaj± wygodne i bezbolesne
korzystanie z dobrodziejstw oferowanych przez TeX-a.
We wspó³czesnym sprzêcie karta graficzna i monitor pozwalaj± na pracê
w systemie okienkowym (np. XWindow);
mo¿na tak¿e na bie¿±co ogl±daæ
w s±siednim oknie gotowy dokument. W przypadku korzystania z XEmacsa
(lub podobnego edytora) pracowaæ z LaTeX-em mog± nawet ci
u¿ytkownicy, którzy nie zdejmuj± rêki z myszy.
</p>
<p>
Mam nadziejê, ¿e uda³o mi siê pokazaæ, jak du¿e mo¿liwo¶ci stoj±
przed kim¶, kto chce wygodnie i efektywnie u¿ywaæ TeX-a. Opisa³em
tylko najprostsze warianty konfiguracji ¶rodowiska pracy. Istnieje
wiele sposobów i sposobików, o których nie wspomnia³em i jak s±dzê,
jeszcze wiêcej takich, o których nigdy nie s³ysza³em. Wszystkim ¿yczê
mi³ego TeX-owania.
</p>
<hr>
<p>
<em>Adam Dawidziuk</em>
<P><i> Tekst jest przedrukiem z Biuletynu GUST, nr 11/1998,
s. 58--64.</i><BR>(c) Polska Grupa U¿ytkowników Systemu TeX
<BR><i>Ostatnia modyfikacja 15.01.2000</i>
</P>
</body>
</html>
|