LateX
Wstęp
Dla wielu posługiwanie się systemem TeX wydaje się dziwactwem w sytuacji gdy standardem są aplikacje typu WYSIWYG (programy potrafiące wyświetlić na ekranie komputera dokument w postaci możliwie zbliżonej do postaci drukowanej oraz pozwalające na manipulowanie/modyfikowanie tak wyświetlonego dokumentu). TeX nie jest WYSIWYG, a przypomina „ręczne” tworzenie dokumentu HTML. Zatem pierwsze pytanie, na które trzeba odpowiedzieć brzmi:
Dlaczego TeX i dlaczego taki trybu pracy nie tylko nie jest umartwianiem się, ale wprost przeciwnie – w wielu wypadkach jest sposobem lepszym od tego,
który takim się wydaje na pierwszy rzut oka?
Dla tych, którzy pozytywnie odpowiedzą na powyższe pytanie przeznaczona jest pozostała część tekstu, zawierająca minimum informacji potrzebnej do rozpoczęcia pracy z systemem.
Pomijając nieistotne szczegóły sposób redagowania dokumentu w każdym programie edycyjnym jest identyczny: autor dopisuje treść i określa jednocześnie – za pomocą specyficznych dla danego systemu poleceń – jak ma być on sformatowany (w systemach
„nowoczesnych”, te polecenia to najczęściej operacje myszą lub wybór z menu). Jeżeli polecenia opisują wygląd dokumentu – mówimy o formatowaniu wizualnym, a jeżeli dotyczą jego logicznej struktury – mówimy o formatowaniu logicznym. Formatowanie logiczne operuje takimi pojęciami jak: tytuł rozdziału, tytuł punktu, tabela, tytuł tabeli, odsyłacz itp.
Formatowanie wizualne to odstępy, stopień i krój pisma, kolory itp. W przypadku tworzenia większych dokumentów, zwłaszcza dokumentów naukowo technicznych odznaczających się skomplikowaną strukturą i typowo zawierających wiele różnych elementów, takich jak:
śródtytuły, tabele, rysunki, wzory matematyczne, przypisy, odsyłacze, itp., itd. znakowanie logiczne ma zdecydowaną przewagę nad wizualnym, zwiększa wygodę pracy i jej wydajność.
Potwierdzeniem tezy o supremacji jednego sposobu pracy nad drugim niech będzie fakt, że współcześnie wszystkie edytory WYSIWYG umożliwiają formatowanie strukturalne za pomocą stylów. Jednakże funkcjonalność stylów typowego programu edycyjnego to niewielki ułamek możliwości TeXa.
Asynchroniczna praca w systemie TeX zniechęca do formatowania wizualnego, a zachęca do posługiwania się formatowaniem strukturalnym. W połączeniu z programowalnością
znakomicie zwiększa wydajność pracy, a przecież o to przede wszystkim chodzi.
Wielu porównuje TeXa z edytorem biurowym MS Word. O tyle jest to porównanie nietrafne, że TeX to program do składu drukarskiego, przewyższający edytory biurowe tak
możliwościami jak i jakością wyniku. Z kolei programy DTP typu Framemaker czy InDesign, których funkcjonalność jest bardziej porównywalna z TeXem są skomplikowane i wcale nie tak łatwe do opanowania.
TeX: język programowania
Powstał w Stanach Zjednoczonych na Uniwersytecie Stanforda a jego autorem jest wybitny informatyk profesor Donald E. Knuth. Został ukończony w 1986 roku, w 10 lat po
rozpoczęciu pracy. TeX to system składu drukarskiego, dostępny w każdym używanym współcześnie systemie operacyjnym. Cechuje go m.in.: wysoka jakość składu, możliwość dopasowywania do specjalizowanych zadań, łatwa współpraca z innymi aplikacjami,
przenośność (na każdej platformie systemowej działa identycznie). Rozpowszechniany jest na licencji typu Open Source.
TeX to wyspecjalizowany język programowania pozwalający na złożenie w sposób
automatyczny dokumentu o dowolnej skali trudności. Co za tym idzie TeX to skomplikowany język, o specyficznej składni i dużej liczbie poleceń. Poleceń pierwotnych (wbudowanych) jest około 300 (zmienne, instrukcje podstawienia/warunkowe, definiowanie nowych funkcji).
Ponieważ są one zorientowane na graficzny opis strony nie są wykorzystanie w codziennej pracy. Użytkownik „końcowy” używa instrukcji zdefiniowanych za pomocą instrukcji podstawowych, podobnie jak użytkownik dowolnego języka wysokiego poziomu
wykorzystuje biblioteki. Przeciętny użytkownik TeXa nie zna praktycznie tego języka, a umie posługiwać się wyłącznie owymi poleceniami wysokiego poziomu, przygotowanymi i
udostępnionymi przez innych. Zbiór takich instrukcji nosi nazwę formatu. Cztery
powszechnie używane formaty to: Plain, LaTeX, AMSTeX oraz ConTeXt. Istnieje więcej formatów zaprojektowanych do specyficznych zadań. Zdecydowana większość
użytkowników TeXa zna i używa wyłącznie LaTeXa.
Podstawowym podręcznikiem do LaTeXa jest [5], ostatnio przetłumaczony na język polski.
Do nauczenia się LaTeXa wystarczy wszakże jeden z wielu dostępnych podręczników w wersji elektronicznej [6, 2, 3] Język TeX jest opisany szczegółowo w książce [4]. Dostępny online jest także doskonały podręcznik dla zaawansowanych [1].
TeX: system składu
Za pomocą dowolnego edytora (w tym względzie podstawowym kryterium są oczywiście własne przyzwyczajenia, ale wiele edytorów, np. vi/vim, Emacs, Kile, udostępnia całkiem wygodne IDE do pracy w systemie TeX) lub w inny sposób tworzony jest plik tekstowy, zawierający treść wymieszaną z poleceniami języka TeX. Plik ten jest interpretowany przez program tex i tworzony jest plik pośredni opisujący dokument wynikowy strona po stronie (plik .dvi) Plik .dvi zawiera tylko opis, nie zawiera wielu zasobów niezbędnych do
reprodukcji na urządzeniu wyjściowym, takich jak fonty (kształty znaków) i pliki graficzne.
Sterownik zamienia plik .dvi, korzystając z niezbędnych zasobów na dokument docelowy możliwy do reprodukcji na określonym urządzeniu.
Kompletny system składa się minimum z: edytora, sterowników, programu tex oraz zbioru fontów. Współczesny system TeX zawiera dodatkowo wiele innych zasobów i programów.
Najważniejsze z nich to:
pdftex
wariant programu TeX potrafiący bezpośrednio tworzyć dokumenty w formacie PDF;
METAFONT
program do tworzenia fontów bitmapowych i METAPOST do tworzenia grafiki wektorowej;
makeindex/plindex
programy do przygotowania skorowidzów;
bibtex
program do zarządzania spisami bibliograficznymi.
System może korzystać ponadto z dodatkowych zasobów systemowych, np. programów do sprawdzania poprawności ortograficznej, takich jak ispell czy interpretatora języka Postscript, takiego jak ghostscript.
System składu oparty na programie tex, przygotowana na określoną platformę systemową, nazywamy dystrybucją. W chwili obecnej popularnymi dystrybucjami są: miktex i fptex na systemy MS Windows oraz tetex na wszystkie Uniksy. Dystrybucja texlive udostępnienia
„wszystko w jednym”, tj. zawiera fptex + tetex oraz rozliczne oprogramowanie towarzyszące.
System TeX dla MS Windows jest dostępny w www.miktex.org/. W przypadku Linuksa TeX jest dostępny we wszystkich ważniejszych dystrybucjach. Pod adresem www.ctan.org
znajduje się centralne archiwum TeXowe (CTAN) zawierające praktycznie wszystkie zasoby związane z TeXem. Godnym polecenia punktem startu jest strona Polskiej Grupy
Użytkowników Systemu TeX, http://www.gust.org.pl/.
Fonty
W sposób oczywisty fonty są bardzo istotną częścią systemu składu. Font to program komputerowy zawierający opisy znaków plus dodatkowe informacje określające sposób ich pozycjonowania w składzie (ligatury, kerning, itp.). Większość fontów jest komercyjna i nie może być swobodnie rozpowszechniana. Z tego powodu system TeX wyposażony jest we
„własne” kroje pisma o statusie Oprogramowania Otwartego.
Knuth opracował własny system tworzenia fontów o nazwie METAFONT i z jego pomocą zaprojektował ponad 70 krojów pism. Ten standardowy zestaw fontów nazywa się Computer Modern (CM) i jest wzorowany na kroju Modern 8A firmy Monotype. Fonty CM są 128 znakowe i nie zawierają kompletu polskich znaków. Znaki diakrytyczne, niezbędne do składu po polsku i w innych językach europejskich dostępne są w 256 znakowych fontach European Computer Modern (EC), Latin Modern (LM) czy Polish Computer Modern (PL).
Z punktu widzenia sposobu definiowania znaków fonty dzielimy na bitmapowe
i obwiedniowe, przy czym te pierwsze mają raczej znaczenie historyczne (z wyjątkiem systemu TeX!). Istnieje kilka standardów definiowania fontów obwiedniowych: fonty
postscriptowe (inaczej fonty typu pierwszego, zaprojektowane przez firmę Adobe Inc.), fonty TrueType (ich pozycję określa fakt, że są częścią każdego systemu Windows firmy
Microsoft.) oraz najmłodsze OpenType (wspólna inicjatywa firm Adobe i Microsoft). Kiedy powstawał TeX, żaden z ww. formatów jeszcze nie istniał, dlatego też system METAFONT nie jest z nimi „kompatybilny”.
W systemie METAFONT kształtów znaków są określonych w programach napisanych w języku METAFONT, a program mf potrafi „na żądanie” wygenerować fonty bitmapowe o odpowiedniej rozdzielczości, które następnie są wykorzystywane do drukowania na określonym urządzeniu wyjściowym.
Ponieważ fonty bitmapowe są technologią przestarzałą, zaleca się wykorzystywanie w pracy fontów obwiedniowych (zwłaszcza gdy tworzymy pliki PDF). TeX umożliwia wykorzystanie zarówno fontów Postscriptowych jak i Truetype (z fontami OpenType jest gorzej).
Oryginalnie dostępne jako bitmapowe fonty CM czy PL w chwili obecnej są dostępne także w wersjach obwiedniowych. Jeżeli korzystamy z języka Postscript, wtedy niezbędnym elementem systemu TeX jest ghostscript; alternatywa to tworzenie plików PDF
i posługiwanie się np. programem Adobe Acrobat.
Literatura
Wszystkie pozycje wymienione na liście za wyjątkiem książki Lamporta są dostępne online, np. w archiwum CTAN.
1. Eijkhout, Victor: TeX by topic, Addison-Wesley 1991.
2. Flynn, Peter: A beginner’s introduction to typesetting with LaTeX.
3. Greenberg Harvey J.: A Simplified Introduction to LaTeX, 2000.
4. Knuth, Donald E.: The TeXbook, Addison-Wesley 1989.
5. Lamport, Leslie: LaTeX: a document preparation system, Addison-Wesley 1994. Polskie tłumaczenie: LaTeX System opracowywania dokumentów. Podręcznik i przewodnik użytkownika, WNT 2004 (tł. M. Wolińska, M. Woliński).
6. [6] Oetiker, Tobias i inni: Not so short introduction to LaTeX2e. Polskie tłumaczenie: Nie za krótkie wprowadzenie do systemu LaTeX2ε.
LaTeX dla matematyków
Ziemkiewicz Bartosz, Karłowska-Pik Joanna o autorach
ISBN: 978-83-231-3142-7 Rok wydania: 2013 Nr wydania: pierwsze Liczba stron: 312 Okładka: miękka Format: 148 x 156 mm
Wydawnictwo Naukowe Uniwersytetu Mikołaja Kopernika
http://www.gust.org.pl/doc/tex_install
Pierwszy dokument w LaTeXu
Przykład zaczerpnięto z książki ,,Nie za krótkie wprowadzenie do systemu LaTeX2e''.
LaTeX oczekuje, że plik źródłowy posiada określoną strukturę. W szczególności, każdy plik źródłowy składa się z dwóch części: preambuły oraz części głównej. Preambuła powinna się rozpoczynać od instrukcji:
\documentclass{...}
Polecenie to okresla typ tworzonego dokumentu. Po nim można umieścić instrukcje
dotyczące stylu całego dokumentu oraz dołączyć pakiety poszerzające możliwości LaTeXa.
Pakiety dołącza się za pomocą polecenia:
\usepackage{...}
Część główna dokumentu zaczyna się od instrukcji
\begin{document},
a kończy poleceniem \end{document}. Tekst znajdujący się za tym poleceniem jest przez LaTeX-a ignorowany.
Poniższy listing pokazuje zawartość minimalnego dokumentu LaTeXowego (użyte tu instrukcje \usepackage{...}, niezbędne do składania w języku polskim, omówione są w punkcie 2.4 książki Nie za krótkie wprowadzenie do systemu LaTeX2e).
\documentclass{article}
\usepackage[MeX]{polski}
\usepackage[latin2]{inputenc}
\begin{document}
Małe jest piękne.
\end{document}
Przejście do bardziej skomplikowanych przypadków to już tylko kwestia czasu!
Jeżeli zainteresowałeś się LaTeXem, to na początek polecamy łatwą książkę: Nie za krótkie wprowadzenie do systemu LaTeX2e - T. Oetiker, H. Partl, I. Hyna, E. Schlegl (tłum. J.
Gołdasz, R. Kubiak, T. Przechlewski) do ściągnięcia tutaj.
Jeżeli nie spodobał Ci się LaTeX, to serdecznie zapraszamy do zapoznania się z plain TeXem :-) Pierszy dokument plain TeXowy znajdziesz tutaj.