The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
Adam Dawidziuk
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.
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.
Dzia�anie TeX-a mo�na sprowadzi� do przetwarzania
plik�w. TeX czyta dokument �r�d�owy, zwykle z pliku o nazwie
z przyrostkiem .tex
, i tworzy obraz kolejnych stron
dokumentu w pliku o nazwie ko�cz�cej si� napisem
.dvi
. 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.
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.
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 vim
. 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 emacs
(tak twierdz� u�ytkownicy
Emacsa). Niestety, zar�wno vim
jak i Emacs
u niekt�rych wywo�uj� reakcje alergiczne, a na to rady nie ma.
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.
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 make
.
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.
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.
AUC TeX to dost�pne w edytorze emacs
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.
Edytor emacs
ma d�ug� histori� w systemie UNIX.
W du�ej cz�ci zosta� napisany w j�zyku Lisp
(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...).
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
Meta
na klawiaturze. Wci�ni�cie tego klawisza ze
znakiem x
(oznaczane jako Meta-x
lub M-x
) rozpoczyna wprowadzanie polece�.
W klawiaturze komputera PC zwykle klawiszem Meta
jest
Alt
. Je�li jednak Alt
zosta�
przedefiniowany (np. w celu wprowadzania polskich znak�w) to
M-x
mo�na wprowadzi� sekwencyjnie wciskaj�c
najpierw klawisz Esc
, a potem
x
. Tego typu problemy nie istniej� z klawiszem
Ctrl
. Podstawowymi chwytami s�
Ctrl-x
i Ctrl-c
, opisywane
cz�sto jako C-x
i C-c
.
Mocn� stron� Emacsa jest dokumentacja (C-h
). Funkcje przypisane
klawiszom zmieniaj� si� w zale�no�ci od trybu pracy (mode), co
zawsze mo�na sprawdzi� wpisuj�c C-h m
. Wiedz�c, �e Emacs mo�e
otwiera� wiele plik�w jednocze�nie, ale ka�dy w innym buforze
(buffer), �e w �rodowisku okienkowym mo�e otwiera� wiele okien
zwanych ramkami (frames) i �e ka�da ramka mo�e by� podzielona na
wiele ,,okien'' (window) mo�na
bez problemu zrozumie� j�zyk dokumentacji.
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 Options Customize Emacs Wp
Tex AUC Tex
, a potem ju� wed�ug uznania. W to samo miejsce
mo�na trafi� wciskaj�c M-x customize
, tyle �e po drodze jest
wi�cej obja�nie� i �atwiej si� zagubi�.
Je�li kto� nie dysponuje XEmacsem lub nie lubi myszy, to b�dzie musia� wpisywa�
odpowiednie zakl�cia do pliku .emacs
, kt�ry znajduje si�
w katalogu domowym u�ytkownika. Pomocne mo�e by� odszukanie pliku
tex.el
i tex-site.el
, kt�re le�� gdzie�
z innymi plikami Emacsa (ale w r�nych katalogach -- przyda si�
program find
). 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 tex.el
(ani jego skompilowanej wersji
tex.elc
) lecz kopiowa� co trzeba do pliku .emacs
.
Je�li zmiana ma dotyczy� wszystkich u�ytkownik�w nale�y odpowiedni fragment
pliku tex.el
skopiowa� do pliku tex-site.el
i tam pozamienia� wszystko to, co wymaga zmiany.
I jeszcze jedna uwaga dla pocz�tkuj�cych: w Emacsie mo�na zapisa� plik
z bufora na dysk wciskaj�c C-x C-s
, a prac�
z Emacsem zako�czy� sekwencj� C-x C-c
. 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.
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 xmodmap
)
oraz polski s�ownik do programu ispell
. Zagadnienia te s�
dok�adnie om�wione w tekstach po�wi�conych polskim ,,ogonkom''.
Po uruchomieniu edytora Emacs utworzenie nowego pliku jest mo�liwe po
wci�ni�ciu C-x C-f
i podaniu nazwy. Podaj�c nazw� pliku
z przyrostkiem .tex
zmusimy edytor do wej�cia w tryb
LaTeX-mode
. Informacja o tym powinna pojawi� si�
w wierszu trybu pracy (Mode Line) w dolnej cz�ci okna
jako napis LaTeX
. Mo�na te� wymusi� wej�cie w tryb
LaTeX
wywo�uj�c polecenie LaTeX-mode
(M-x
LaTeX-mode
). Do rozwijania nazw mo�na u�y� znaku klawisza tabulacji
(Tab
).
Je�li powy�sze dzia�ania nie prowadz� do uruchomienia
AUC TeX-a, to albo nie jest on zainstalowany, albo w pliku
.emacs
brakuje wiersza
(require 'tex-site)
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).
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.
Najwa�niejsz� konstrukcj� LaTeX-a s� �rodowiska, czyli pary
\begin{*}
\end{*}
. Do wprowadzania �rodowisk s�u�y
polecenie LaTeX-enviroment
domy�lnie przypisane do sekwencji
C-c C-e
. Po wydaniu tego polecenia AUC TeX pyta
o nazw� �rodowiska i ewentualne dodatkowe dane. Przy pomocy
klawisza Tab
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.
Otwarte �rodowisko mo�na zamkn�� poleceniem
LaTeX-close-enviroment
(C-c ]
).
Zdecydowanie jednak najbezpieczniejsze jest wprowadzanie
kompletnych �rodowisk przy u�yciu C-c C-e
.
Poza �rodowiskami w pliku LaTeX-owym cz�sto pojawiaj� si�
tradycyjne polecenia TeX-a, czyli s�owa rozpoczynaj�ce si� znakiem
\
. Zapami�tanie wszystkich polece� jest trudne,
a przy ich wprowadzaniu �atwo o b��d. Dlatego nale�y korzysta�
z polecenia LaTeX-complete-symbol
. Je�li pisane s�owo
rozpoczyna si� znakiem \
to wystarczy wcisn��
M-Tab
aby je zako�czy�, lub uzyska� list� mo�liwych
zako�cze�.
Inny spos�b wpisywania makr TeX-owych polega na wykorzystaniu
polecenia TeX-insert-macro
(C-c C-m
).
Aby u�y� jeszcze innej metody nale�y np. w pliku
.emacs
ustawi� r�n� od nil
warto�� zmiennej TeX-electric-escape
(setq TeX-electric-escape t)
Wi��e to znak
\
z funkcj�
TeX-electric-macro
, co umo�liwia uruchamianie
mechanizmu rozwijania makr przez wpisanie tego znaku. Jest to metoda
najszybsza.
AUC TeX domy�lnie wstawia par� pustych nawias�w {}
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
TeX-insert-braces
przypisa� warto�� nil
.
Inaczej oznacza si� elementy listy \item
. S�u�y do tego polecenie
LaTeX-insert-item
(M-Return
), kt�rego dzia�anie
zale�y od kontekstu.
Kolejnym cz�sto wyst�puj�cym elementem tekstu s� �r�dtytu�y, oznaczane s�owami
kluczowymi \chapter
, \section
itd. Mo�na u�atwi�
sobie �ycie korzystaj�c z polecenia LaTeX-section
(C-c
C-s
). 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
\label
). 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
(C-u
) przed wywo�aniem polecenia LaTeX-section
. Je�li
argument jest ujemny, to poziom zostanie zmieniony w d� o jeden.
I tak, je�li ostatnio wstawiony by� �r�dtytu� na poziomie
\subsection
to b�dzie to aktualny poziom domy�lny. Sekwencja
C-c C-s
oznacza polecenie wpisania �r�dtytu�u na tym w�a�nie
poziomie. Podanie C-u C-c C-s
to wpisanie
\subsubsection
, a C-u -1 C-c C-s
spowoduje
wstawienie \section
. Przedrostki nazw w etykietach
\label
s� kontrolowane zmienn� LaTeX-section-label
.
Je�li warto�ci� tej zmiennej jest nil
, to odno�niki nie b�d�
wstawiane.
AUC TeX udost�pnia r�wnie� silny mechanizm zmiany kroju pisma. Jego
podstaw� jest polecenie TeX-font
(skr�t C-c C-f
), po
kt�rym podaje si� argument okre�laj�cy po��dan� zmian� kroju pisma. I tak
C-e
powoduje wpisanie \emph{}
, C-i
--
\textit{}
, C-t
-- \texttt{}
itd,
w��cznie z usuwaniem ustawienia kroju pisma C-d
. Lista mo�liwo�ci
jest wypisywana po podaniu spacji jako argumentu:
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
Je�li polecenie TeX-font
jest poprzedzone argumentem
(C-u
), 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 \textit{}
, to sekwencja
C-u C-c C-f C-e
zmieni polecenie \textit
na
\emph
.
W tre�ci dokumentu pojawiaj� si� nie tylko s�owa kluczowe, ale tak�e znaki
specjalne: cudzys��w, znak dolara $
, nawiasy klamrowe
{}
oraz znak komentarza %
.
W TeX-u nie u�ywamy znak�w "
na oznaczenie cudzys�owu.
W tekstach pisanych po angielsku u�ywamy znaku ``
jako
cudzys�owu otwieraj�cego i znaku ''
jako cudzys�owu
zamykaj�cego. Je�li u�ytkownik wpisuje "
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 ,,
. Aby polecenie
TeX-insert-quote
wywo�ywane klawiszem "
zadzia�a�o
prawid�owo nale�y zmiennej TeX-open-quote
przypisa� warto��
,,
(czyli dwa przecinki).
Znaki dolara $
w pliku TeX-owym obejmuj�
tekst wzoru matematycznego, a w podw�jne dolary $$
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 TeX-insert-dollar
. Polecenie to, opr�cz
wprowadzenie do pliku znaku $
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.
Polecenie TeX-insert-braces
pozwala
wprowadza� nawiasy klamrowe parami. Skr�t klawiaturowy jest
intuicyjny: C-c {
.
Przy wprowadzaniu i usuwaniu znaku komentarza na pocz�tku wierszy
przydaje si� polecenie TeX-comment-regin
(C-c ;
).
Umo�liwia ono wstawienie znaku komentarza na pocz�tku ka�dego wiersza
zaznaczonego fragmentu tekstu (region) czyli obszaru od punktu
oznaczonego przez C-
spacja do bie��cej pozycji kursora (lub
zaznaczonego mysz�). Podobnie dzia�a polecenie
TeX-comment-paragraph
(C-c %
) dla akapitu. Aby
usun�� znak komentarza wpisujemy C-u - C-c ;
lub C-u -
C-c %
.
W przypadku wprowadzania du�ej liczby wzor�w matematycznych warto mie� pod r�k�
mechanizm przyspieszaj�cy wpisywanie s��w takich jak \upsilon
czy
\rightarrow
. Mechanizm taki uruchamia si� (i wy��cza)
w AUC TeX-u poleceniem LaTeX-math-mode
(C-c ~
).
W trybie matematycznym po wprowadzeniu znaku
,,`
'' klawiatura zmienia znaczenie i zamiast zwyk�ych znak�w
pojedynczym klawiszem mo�na wprowadza� symbole matematyczne. I tak
(w trybie matematycznym) sekwencja klawiszy `d
spowoduje
wpisanie \delta
, `G
-- \Gamma
,
a `cN
-- {\cal N}
.
Po�yteczne bywa podanie argumentu (C-u
) przed
symbolem matematycznym. Sekwencja klawiszy C-u `e
spowoduje wpisanie do bufora $\epsilon$
-- co
znacznie przy�piesza wstawianie pojedynczych symboli w bloku
tekstu.
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� LaTeX-math-list
. Nie sprawi te� problemu zamiana klawisza
`
na jaki� por�czniejszy (je�li kto� musi) -- nale�y zmieni�
warto�� zmiennej LaTeX-math-abberv-prefix
.
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� (\renewcommand
) 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
\def
.
AUC TeX rozpoznaje makrodefinicje zapisane w pliku podczas
parsowania dokumentu po wydaniu polecenia
TeX-normal-mode
(C-c C-n
).
Je�li wi�c wpiszemy w pliku now� definicj�, nale�y wcisn�� C-c C-n
i nie musimy jej dok�adnie pami�ta�. Informacje
o makrodefinicjach zapisywane s� w pliku
./auto/nazwa.el
.
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 .emacs
nast�puj�cych
wierszy:
; parsowanie przy wczytywaniu: (setq TeX-parse-self t) ; parsowanie przy zapisie: (setq TeX-auto-save t)
Zmian� pliku ./auto/nazwa.el
powoduje r�wnie�
wstawienie do tekstu dokumentu nazwy etykiety
\label
. Wstawiaj�c odno�nik do tej etykiety
(\ref
, \pageref
) mo�na etykiet�
wybra� z listy etykiet pokazywanej przez mechanizm rozwijania
(Tab
). I to jest naprawd� cenna w�a�ciwo��.
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 .emacs
):
(setq-default TeX-auto-regexp-list 'LaTeX-auto-label-regexp-list)
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 C-c C-c
, czyli TeX-command-master
. 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 C-c C-c
b�dzie chcia� uruchomi� przegl�dark� .dvi
. Je�eli nie wyst�pi�
�adne b��dy w przetwarzaniu, to w okienku obok obejrzymy wynik
sk�adu.
Standardowe polecenia przetwarzania pliku �r�d�owego mo�na �atwo rozszerzy�
o nasze ulubione: mex
, platex
czy
pdftex
. Naj�atwiej przez menu XEmacsa. W razie potrzeby
mo�na skopiowa� odpowiedni fragment z pliku tex.el
(czy
wr�cz tex.elc
). Prawdopodobnie warto zmienion� list�
TeX-command-list
wstawi� do pliku tex-site.el
--
niech si� ciesz� wszyscy u�ytkownicy.
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 TeX-command-region
przypisane do sekwencji C-c
C-r
. Wszystko dzia�a tak samo jak w przypadku
TeX-command-master
, z jednym wyj�tkiem -- AUC TeX
buduje z nag��wka i zaznaczonego fragmentu tekstu nowy plik, kt�ry
przetwarza TeX-em. Kolejne C-c C-r
umo�liwia obejrzenie w�a�ciwego
pliku .dvi
. 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 \begin{document}
. W plikach
TeX-owych jest to natomiast %**end of header
. Znacznik ko�ca
nag��wka mo�na zdefiniowa� jako wyra�enie regularne okre�laj�c warto�� zmiennej
TeX-header-end
.
W przypadku wyst�pienia b��d�w w czasie przetwarzania mo�na ogl�da� je
kolejno przy pomocy polecenia TeX-next-error
(|C-c `|).
AUC TeX opatruje b��dy TeX-a dodatkowym komentarzem, co mo�e pom�c
pocz�tkuj�cym u�ytkownikom.
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 faces -- dlatego
warto u�ywa� XEmacsa). Je�li kolorowanie nie w��czy�o si� z w�asnej
woli mo�na je wymusi� poleceniem font-lock-mode
.
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:
LaTeX-fill-paragraph
(C-c C-q C-p
lub M-q
),
LaTeX-fill-enviroment
(C-c C-q C-e
),
LaTeX-fill-section
(C-c C-q C-s
) oraz
LaTeX-fill-region
(C-c C-q C-r
lub M-g
).
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
outline-minor-mode
. 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.
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:
~$ for i in *.tex; do latex $i; done
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 make
(lub gnumake
). Wszystkie polecenia wystarczy
wpisa� raz
ale do pliku
Makefile
w bie��cym katalogu. W najprostszym
przypadku plik ten b�dzie wygl�da� tak:
all: referat.ps %.dvi: %.tex latex $< %.ps: %.dvi dvips $< %.pdf: %.tex pdflatex $<
Z zawarto�ci pliku wynika, �e pracujemy nad referatem (tworzymy
plik referat.tex
) i �e u�ywamy przegl�darki
plik�w PS.
Teraz ca�e TeX-owanie sprowadza si� do uruchomienia
w terminalu programu make
. Program ten domy�lnie
wykona pierwsz� regu�� z pliku Makefile
(all: referat.ps
-- zamiast nazwy
all
mo�na wstawi� dowolne s�owo,
np. PsiaBuda
) i dowie si�, �e jeste�my
zainteresowani plikiem .ps
. Z trzeciej regu�y
program wywnioskuje, �e pliki .ps
robi si� z plik�w
.dvi
poleceniem dvips
. Nie ma
jednak pliku .dvi
, ale o tym jak go zrobi� m�wi
druga regu�a. A plik referat.tex jest na
dysku.
Ostatnia regu�a zostanie wykorzystana gdy
wykonamy polecenia make pdf
-- wtedy
zostanie utworzony plik referat.pdf
.
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:
~$ while [ TRUE ]; do make; sleep 5; done
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.
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. x
. Je�eli jednak ustawimy zmienn�
�rodowiska:
TEXEDIT='emacsclient +%d %s'
lub w przypadku XEmacsa:
TEXEDIT='enu +%d %s'
i je�eli u�ywamy Emacsa w kt�rym powiemy
M-x server-start
(gnuserv-start
), to mo�emy odpowiedzie� TeX-owi
e
(od edit). 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
(C-x C-s
) i powiedzie� klientowi, �e ju� po
wszystkim (C-x #
). Dla jasno�ci: serwer to Emacs, a
klient to TeX...
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
\ala
omy�kowo wpisali�my \ola
,
z tym �e czasem \ola
jest dobrze i ma zosta�, to
zanosi si� na d�u�sze poprawianie. A mo�na z poziomu interpretatora
polece� shell napisa�:
~$ gnuclient `grep -l \\ola *.tex`
Potem wystarczy wciskanie klawisza C-s
i czasem C-x e
(pierwszy raz oczywi�cie r�wnie�
C-x (
i C-x )
). Je�eli jednak
kto� ma tendencje do zapominania o takich szczeg�ach jak
-l
, to niech lepiej pr�buje si� uczy� krok po
kroku... Na razie. Po jakim� czasie mo�e okaza� si� potrzebny
dodatkowy wiersz w pliku .emacs
:
(gnuserv-start)
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� dvips
-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.
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.
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.
Adam Dawidziuk
Tekst jest przedrukiem z Biuletynu GUST, nr 11/1998,
s. 58--64.
(c) Polska Grupa U�ytkownik�w Systemu TeX
Ostatnia modyfikacja 15.01.2000
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.