Read lshort2e.dvi text version

Nie za krótkie wprowadzenie A do systemu L TEX 2

A Albo LTEX 2 w 88 minut

Tobias Oetiker Hubert Partl, Irene Hyna i Elisabeth Schlegl

wersja 3.2, 21 wrzenia 1998

tlumaczenie i opracowanie wersji polskiej: Janusz Goldasz, Ryszard Kubiak, Tomasz Przechlewski wspólpraca redakcyjna: Stanislaw Wawrykiewicz

ii

Copyright c 1998 Tobias Oetiker and all the Contributors to LShort. Copyright c 1999 for the Polish translation and extension JG, RK and TP All rights reserved. This document is free; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This document is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

Copyright c 1998 Tobias Oetiker i wszyscy wspólautorzy LShort. Copyright c 1999 polskiego tlumaczenia i poszerzenia JG, RK i TP. Ten dokument moe by rozpowszechniany i/lub zmieniany w zgodzie z postanowieniami Ogólnej Licencji Publicznej GNU takiej, jak zostala opublikowana przez fundacj Free Software Foundation; albo w wersji 2 teje Licencji, albo (Wasz wybór) w dowolnej póniejszej. Ten dokument jest rozpowszechniany w nadziei, e bdzie uyteczny, ale BEZ ADNEJ GWARANCJI; nawet bez adnej domylnej gwarancji WYNIKAJCEJ Z NABYCIA lub ODPOWIADANIA KONKRETNEMU CELOWI. Wicej szczególów znajdziecie w Ogólnej Licencji Publicznej GNU. Do dokumentu powinna by dolczona kopia Ogólnej Licencji Publicznej GNU; jeli nie, to napiszcie do the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

Podzikowania

Wikszo materialu w tym dokumencie pochodzi z austriackiego WprowaA dzenia do L TEX-a 2.09 w jzyku niemieckim, którego autorami s: Hubert Partl <[email protected]>

Zentraler Informatikdienst der Universit¨t f¨r Bodenkultur Wien a u

Irene Hyna <[email protected]>

Bundesministerium f¨r Wissenschaft und Forschung Wien u

Elisabeth Schlegl

Graz

<no email>

Osoby zainteresowane wersj niemieck, dostosowan przez J¨rga Knappena o A do L TEX 2 , mog j znale w CTAN://tex-archive/info/lkurz. Piszc Wprowadzenie korzystalem z pomocy wielu uczestników grupy dyskusyjnej comp.text.tex. Niej wymienione osoby pomogly mi swoimi poprawkami, sugestiami i propozycjami ulepsze. Chcialbym niniejszym serdecznie im za to podzikowa. Oczywicie za wszystkie bldy, które nieuchronnie pozostaly w tekcie, wylcznie ja ponosz odpowiedzialno. Wszystkie zdania bezbldne w ksice s wylczn zaslug osób z poniszej listy: Rosemary Bailey, David Carlisle, Christopher Chin, Chris McCormack, Wim van Dam, David Dureisseix, Elliot, David Frey, Robin Fairbairns, Alexandre Guimond, Cyril Goutte, Greg Gamble, Neil Hammond, Rasmus Borup Hansen, Martien Hulsen, Eric Jacoboni, Alan Jeffrey, Byron Jones, David Jones, Johannes-Maria Kaltenbach, Andrzej Kawalec, Alain Kessi, Christian Kern, J¨rg Knappen, Maik Lehradt, o Martin Maechler, Claus Malten, Hubert Partl, John Refling, Mike Ressler, Brian Ripley, Young U. Ryu, Chris Rowley, Craig Schlenter, Josef Tkadlec, Didier Verna, Fritz Zaucker, i Rick Zaccone.

Przedmowa

A L TEX [4] jest systemem skladu umoliwiajcym midzy innymi tworzenie dokumentów naukowych i technicznych o wysokiej jakoci typograficznej. A Oczywicie, oprócz tego L TEX umoliwia przygotowywanie dowolnego rodzaju dokumentów, poczynajc od listów, a koczc na grubych ksikach. A Do formatowania dokumentów L TEX wykorzystuje program TEX [3]. A Niniejsze krótkie Wprowadzenie opisuje L TEX-a w zakresie wystarczaA X-a mona znale w [4, 2]. jcym do wikszoci zastosowa. Pelny opis L TE A L TEX jest dostpny na wikszoci platform sprztowych, poczwszy od PC i Macintosh, a skoczywszy na duych systemach wyposaonych w UNIX-a czy VMS. W wielu sieciach uniwersyteckich mona spotka A gotowe do uytku instalacje L TEX-a. Informacje, jak rozpocz prac w loA kalnej instalacji L TEX-a mona znale w Local Guide [5]. Jeeli nie wiesz A jak zacz prac z L TEX-em to zapytaj si osoby, od której otrzymale to Wprowadzenie. W tym dokumencie nie poruszamy spraw zwizanych z inA stalowaniem i konfiguracj systemu L TEX. Mówimy wylcznie o tym, jak A pisa dokumenty, aby mogly zosta przetwarzane przez L TEX-a. Wprowadzenie zawiera pi nastpujcych rozdzialów: A Rozdzial 1 przedstawia ogóln struktur dokumentów L TEX-owych i omaA wia krótko histori systemu L TEX. Po przeczytaniu tego rozdzialu A powiniene mie ju wyobraenie, czym jest L TEX. Chocia bdzie to tylko obraz ogólny, pozwoli ci na polczenie informacji, jakie znajdziesz w pozostalych rozdzialach, w calociowy obraz. Rozdzial 2 podaje szczególy dotyczce skladanie dokumentów. Omawia najwaniejsze instrukcje i rodowiska. Po przeczytaniu tego rozdzialu A bdziesz umial tworzy proste dokumenty L TEX-owe. Rozdzial 3 powicono skladaniu wzorów matematycznych. Wiele zamieszczonych tu przykladów pozwoli ci nauczy si wykorzystywa jedn A z najwaniejszych moliwoci L TEX-a, jak jest elegancki sklad matematyki. Na kocu rozdzialu zamieszczono zestawienie dostpnych A w L TEX-u symboli matematycznych. Rozdzial 4 wyjania, jak tworzy skorowidze i spisy bibliograficzne, jak dolcza rysunki w formacie EPS i jeszcze par innych poytecznych rzeczy.

v

Rozdzial 5 zawiera informacje, których wykorzystanie jest potencjalnie niebezpieczne, bo mówi, jak mona zmieni standardowy uklad graA ficzny dokumentów L TEX-owych. Niewlaciwe ich uycie moe spowoA dowa pogorszenie ladnego na ogól skladu L TEX-owego. Sdzimy, e naley przeczyta wszystkie rozdzialy i w powyszej kolejnoci. Ostatecznie, ksika nie jest zbyt gruba. Szczególnie starannie naley czyta przyklady, gdy wlanie w nich zawarto sporo informacji.

A Gdyby potrzebowal innych materialów dotyczcych L TEX-a, zajrzyj do jednego z archiwów sieci CTAN. Wzel CTAN w Stanach Zjednoczonych ma adres ftp://ctan.tug.org, w Niemczech ftp://ftp.dante.de a w Wielkiej Brytanii ftp://ftp.tex.ac.uk. Wybierz najbliszy lub jedno z wielu archiwów lustrzanych. W katalogu CTAN://tex-archive/systems znajdziesz rzeczy niezbdne A do uruchomienia L TEX-a na twoim komputerze.

Od tlumaczy

Poniewa uznalimy, e pewne tematy autorzy Wprowadzenia przedstawili zbyt lakonicznie, pozwolilimy sobie na ich poszerzenie. Fragmenty takie oznaczamy krojem bezszeryfowym. W szczególnoci, poszerzenia dotycz problemu przygotowywania dokumentów w jzyku polskim, czego z oczywistych wzgldów nie omówiono w oryginale. Jeeli masz pomysl, co nalealoby doda, usun lub zmieni w tym dokumencie ­ napisz. Jestemy szczególnie zainteresowani opiniami pocztA kujcych uytkowników L TEX-a, które fragmenty s trudno zrozumiale i wymagaj lepszego przedstawienia. Janusz Goldasz Ryszard Kubiak <[email protected]>

Polska Grupa Uytkowników Systemu TEX

Tomasz Przechlewski

<[email protected]>

Polska Grupa Uytkowników Systemu TEX

Z autorem oryginalnej wersji angielskiej moesz si skontaktowa, piszc na adres: Tobias Oetiker ([email protected]). Najnowsz wersj przekladu na jzyk polski mona znale w: CTAN://tex-archive/info/lshort/polish/ Najnowsza anglojzyczna wersja Wprowadzenia znajduje si w: CTAN://tex-archive/info/lshort

Spis treci

Podzikowania Przedmowa 1 Podstawy, które warto zna 1.1 Nazwa programu . . . . . . . 1.1.1 TEX . . . . . . . . . . A 1.1.2 L TEX . . . . . . . . . 1.2 Podstawy . . . . . . . . . . . 1.2.1 Autor, redaktor i zecer 1.2.2 Uklad graficzny . . . 1.2.3 Zalety i wady . . . . . 1.3 Plik ródlowy . . . . . . . . . 1.3.1 Odstpy . . . . . . . . 1.3.2 Znaki specjalne . . . . A 1.3.3 Polecenia L TEX-a . . 1.3.4 Komentarze . . . . . . 1.4 Struktura pliku ródlowego . 1.5 Uklad graficzny dokumentu . 1.5.1 Klasy dokumentów . . 1.5.2 Pakiety . . . . . . . . 1.5.3 Style strony . . . . . . 1.6 Due dokumenty . . . . . . . iii iv 1 1 1 1 3 3 3 4 5 5 5 6 7 7 8 8 9 10 11 13 13 15 15 17 18 18 19 20

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

2 Skladanie tekstu 2.1 Struktura tekstu i jzyka . . . . . . 2.2 Skladanie akapitów i lamanie stron 2.2.1 Skladanie akapitów . . . . 2.2.2 Przenoszenie wyrazów . . . 2.3 Znaki specjalne i symbole . . . . . 2.3.1 Cudzyslowy . . . . . . . . . 2.3.2 Pauzy i mylniki . . . . . . 2.3.3 Wielokropek ( . . . ) . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

SPIS TRECI

vii

2.3.4 Ligatury . . . . . . . . . . . . . . . . . . . . . . 2.3.5 Akcenty i znaki specjalne . . . . . . . . . . . . . 2.3.6 Nielamliwe odstpy . . . . . . . . . . . . . . . . . A 2.4 L TEX wielojzyczny . . . . . . . . . . . . . . . . . . . . 2.4.1 Wsparcie dla jzyka polskiego . . . . . . . . . . . 2.5 Odstpy midzy wyrazami . . . . . . . . . . . . . . . . 2.6 Tytuly, ródtytuly i punkty . . . . . . . . . . . . . . . . 2.7 Odsylacze . . . . . . . . . . . . . . . . . . . . . . . . . 2.8 Przypisy . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9 Wyrónienia . . . . . . . . . . . . . . . . . . . . . . . . 2.10 rodowiska . . . . . . . . . . . . . . . . . . . . . . . . . 2.10.1 rodowiska itemize, enumerate i description . 2.10.2 rodowiska flushleft, flushright i center . . 2.10.3 rodowiska quote, quotation i verse . . . . . . 2.10.4 Symulacja maszynopisu . . . . . . . . . . . . . . 2.10.5 rodowisko tabular . . . . . . . . . . . . . . . . 2.11 Wstawki . . . . . . . . . . . . . . . . . . . . . . . . . . 2.12 Listy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Wyraenia matematyczne 3.1 Wstp . . . . . . . . . . . . . . . . . . . . 3.2 Grupowanie . . . . . . . . . . . . . . . . . 3.3 Czci skladowe wyrae matematycznych 3.4 Odstpy w trybie matematycznym . . . . 3.5 Wyrównywanie w pionie . . . . . . . . . 3.6 Stopie pisma . . . . . . . . . . . . . . . . 3.7 Twierdzenia, definicje, itp. . . . . . . . . 3.8 Symbole pólgrube . . . . . . . . . . . . . 3.9 Zestawienie symboli matematycznych . . 4 Rysunki, skorowidze . . . 4.1 Dolczanie grafiki w formacie EPS 4.2 Spis literatury . . . . . . . . . . . . 4.3 Skorowidze . . . . . . . . . . . . . 4.4 Paginy górne i dolne . . . . . . . . 4.5 Pakiet verbatim . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . .

20 20 21 21 23 27 27 29 30 30 31 31 32 32 33 34 35 38 40 40 42 42 45 46 48 49 50 51 58 58 60 61 62 63 65 65 66 67 67 68 68

. . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

A 5 Adaptowanie L TEX-a 5.1 Definiowane instrukcji i rodowisk . . . . . . . . 5.1.1 Instrukcje definiowane przez uytkownika 5.1.2 rodowiska definiowane przez uytkownika 5.1.3 Wlasne pakiety . . . . . . . . . . . . . . 5.2 Fonty . . . . . . . . . . . . . . . . . . . . . . . . 5.2.1 Instrukcje przelczajce stopie pisma .

. . . . . . . . . . . . . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

viii

SPIS TRECI

5.3

5.4 5.5 5.6 5.7

5.2.2 Uwaga niebezpieczestwo! Odstpy . . . . . . . . . . . . . . . 5.3.1 Zmiana wielkoci interlinii 5.3.2 Wcicia i odstpy pomidzy 5.3.3 Odstpy poziome . . . . . 5.3.4 Odstpy pionowe . . . . . . Uklad graficzny strony . . . . . . . Wicej o odleglociach . . . . . . . Pudelka . . . . . . . . . . . . . . . Kreski i podpory . . . . . . . . . .

. . . . . . . . . . . . . . . . . . akapitami . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

. . . . . . . . . .

70 71 71 72 72 74 74 76 77 79 81

Spis literatury

Spis rysunków

1.1 1.2 1.3 4.1 5.1 5.2 Skladniki systemu TEX . . . . . . . . . . Zawarto minimalnego pliku ródlowego Przyklad artykulu . . . . . . . . . . . . . Przyklad wykorzystania pakietu fancyhdr Przykladowy pakiet . . . . . . . . . . . . Parametry ukladu graficznego strony . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 7 8 63 68 75

Spis tabel

1.1 1.2 1.3 1.4 2.1 2.2 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 3.16 3.17 3.18 3.19 4.1 4.2 5.1 5.2 5.3 5.4 5.5 Klasy dokumentów . . . . . . . . . . . . . . . . . . . Waniejsze opcje klas dokumentów . . . . . . . . . . A Wybrane pakiety z podstawowej dystrybucji L TEX-a A Standardowe style strony w L TEX-u . . . . . . . . . Akcenty i znaki specjalne . . . . . . . . . . . . . . . Opcjonalny argument rodowisk table i figure . . Akcenty matematyczne . . . . . . . . . . . . . . . . Male litery alfabetu greckiego . . . . . . . . . . . . Due litery alfabetu greckiego . . . . . . . . . . . . Symbole relacji . . . . . . . . . . . . . . . . . . . . . Symbole operacji dwuargumentowych . . . . . . . . Symbole zmiennej wielkoci . . . . . . . . . . . . . . Strzalki . . . . . . . . . . . . . . . . . . . . . . . . . Ograniczniki . . . . . . . . . . . . . . . . . . . . . . Due ograniczniki . . . . . . . . . . . . . . . . . . . Symbole róne . . . . . . . . . . . . . . . . . . . . . Symbole niematematyczne . . . . . . . . . . . . . . . Ograniczniki (pakiet AMS) . . . . . . . . . . . . . . Symbole Greckie i Hebrajskie (pakiet AMS) . . . . . Symbole relacji (pakiet AMS) . . . . . . . . . . . . . Strzalki (pakiet AMS) . . . . . . . . . . . . . . . . . Negacje symbolów relacji i strzalek (pakiet AMS) . Relacje dwuargumentowe (pakiet AMS) . . . . . . . Róne symbole (pakiet AMS) . . . . . . . . . . . . . Kroje pisma dostpne w trybie matematycznym . . . Nazwy kluczy w pakiecie graphicx . . . . . . . . . . . Przyklady skladni polecenia \index . . . . . . . . . Polecenia wyboru krojów i odmian . . . . . . . . . . Polecenia wyboru stopnia pisma i interlinii . . . . . Wielko stopnia pisma w klasach standardowych . Polecenia wyboru fontów w trybie matematycznym A L TEX-owe jednostki miary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 9 10 11 21 36 51 51 51 52 53 53 53 54 54 54 54 54 54 55 55 56 56 57 57 59 62 69 69 70 71 73

Rozdzial 1

Podstawy, które warto zna

W pierwszej czci tego rozdzialu przedstawimy krótko filozofi i histori sysA temu L TEX 2 . W czci drugiej przedstawimy podstawowe struktury dokumentu A X-owego. Po przeczytaniu tego rozdzialu czytelnik powinien z grubsza wieL TE A dzie, jak dziala L TEX, a wiedza ta pozwoli na latwiejsze przyswojenie materialu przedstawionego w nastpnych rozdzialach.

1.1

1.1.1

Nazwa programu

TEX

TEX jest programem komputerowym stworzonym przez Donalda E. Knutha [3]. Jest przeznaczony do skladu tekstów oraz wzorów matematycznych. Knuth rozpoczl prac nad TEX-em w 1977 roku rozczarowany tym, jak wygldaly jego wlasne prace naukowe publikowane przez American Mathematical Society. Pewnego dnia 1974 roku zaprzestal on nawet wysylania swoich prac do publikacji, poniewa stwierdzil: ,,zbyt przykre bylo dla mnie ogldanie ostatecznego wyniku". W postaci uywanej obecnie T X zostal E udostpniony w roku 1982, i od tego czasu zmienil si tylko w niewielkim stopniu. TEX jest programem bardzo stabilnym. Dzi ­ jak utrzymuje Knuth ­ jest w zasadzie programem nie zawierajcym bldów. Numery wersji TEX-a zbiegaj do liczby , a obecny numer wynosi 3,14159. Slowo TEX naley wymawia ,,tech". W sytuacjach, w których nie mona zapisywa nazwy TEX z charakterystycznym obnieniem litery E, naley zamiennie uywa wersji TeX.

1.1.2

A L TEX

A L TEX jest zestawem instrukcji (polece, makrodefinicji, makr) umoliwiajcych autorom zloenie i wydrukowanie ich prac na najwyszym poziomie A typograficznym. Pierwsz wersj L TEX-a opracowal Leslie Lamport [4]. Do A formatowania dokumentu L TEX wykorzystuje TEX-a.

2

Podstawy, które warto zna

papier

c

...

ispell emacs

edytor

T

c

.mf

.tex

...

E .log

c METAFONT c

c E .tfm E T X E

pakiet AMS A E L T X 2 Plain

c

.pk

.dvi

. .

c E sterownik

PostScript

.

xdvi dvips

E drukarka ekran E

'

Fonty

E'

T

Sklad

Prostokty na rysunku oznaczaj programy, a owale ­ pliki. W szczególnoci, z papierowego dokumentu za pomoc edytora (np. emacs) tworzymy dokument ródlowy (plik z rozszerzeniem A .tex). Z dokumentu rólowego po przetworzeniu L TEX-em otrzymujemy plik .dvi, który jest z kolei plikiem wejciowym dla sterowników potraficych go wydrukowa bd zamieni na A inny format, np. PostScript. L TEX zapisuje do pliku .log komunikaty podczas przetwarzania A dokumentu. Pliki z rozszerzeniem .tfm, które czyta L TEX zawieraj informacje o fontach wykorzystywanych do skladu.

Rysunek 1.1: Skladniki systemu TEX

A Kilka lat temu pakiet L TEX zostal rozszerzony przez tak zwan druyn A X3 team), kierowan przez Franka Mittelbacha. Celem tego EX3 (L TE rozszerzenia bylo wprowadzenie kilku od dawna postulowanych ulepsze A oraz unifikacja rozmaitych odmian L TEX-a, jakie rozpowszechnily si od A chwili powstania kilkanacie lat temu L TEX-a w wersji 2.09. Nowa wersja A pakietu nazywa si L TEX 2 w celu odrónienia jej od wersji poprzednich. A Niniejszy dokument opisuje wlanie L TEX 2 . A Slowo L TEX naley wymawia ,,lej-tech" albo ,,la-tech". Jeeli nie mona A A zapisa symbolu L TEX, mona zamiennie uywa wersji LaTeX. L TEX 2 wymawiamy ,,lej-tech tu i" a zamienn wersj nazwy jest LaTeX2e. Rysunek 1.1 pokazuje zwizek pomidzy programem TEX i pakietem A L TEX 2 . Rysunek zaczerpnito z pliku wots.tex (autor Kees van der Laan). A LT

1.2 Podstawy

3

1.2

1.2.1

Podstawy

Autor, redaktor i zecer

Aby wyda ksik, autor dostarcza maszynopis do wydawnictwa. W wydawnictwie redaktor decyduje o ukladzie graficznym dokumentu (szeroko szpalty, krój pisma, odstpy przed i po tytulach rozdzialów itd.). Redaktor zapisuje swoje decyzje w maszynopisie, w formie odpowiednich instrukcji, i przekazuje go zecerowi. Na podstawie maszynopisu oraz instrukcji zecer wykonuje sklad. Redaktor-czlowiek odgaduje intencje autora. Wykorzystujc swoje dowiadczenie zawodowe, na podstawie zawartoci maszynopisu, ustala, które fragmenty tekstu s tytulami rozdzialów, podrozdzialów, cytatami, przykladami, wzorami matematycznymi itd. A A L TEX jest redaktorem, a TEX ­ zecerem. Z tym, e L TEX jest ,,tylko" programem komputerowym i dlatego potrzebuje dodatkowej pomocy autora, który powinien dostarczy niezbdnych do skladu informacji o logicznej strukturze dokumentu. Informacje te zapisuje si w tekcie jako ,,polecenia A dla L TEX-a". A Praca z L TEX-em zdecydowanie róni si od podejcia stosowanego w procesorach tekstu typu WYSIWYG1 , takich jak MS Word albo Corel WordPerfect. Pierwszy sposób mona okreli ,,formatowaniem logicznym" drugi ,,formatowaniem wizualnym". Uywajc programów typu WYSIWYG autor interakcyjnie decyduje o wygldzie graficznym dokumentu, w miar dopisywania tekstu. Przez caly czas widzi na ekranie, jak tekst bdzie wygldal po wydrukowaniu. A Uywajc L TEX-a, zwykle nie mona oglda dokumentu w jego ostatecznej postaci i zarazem dopisywa tekstu. Mona natomiast obejrze dokuA ment na ekranie po przetworzeniu go L TEX-em2 . Po naniesieniu niezbdnych poprawek dokument mona wysla na drukark.

1.2.2

Uklad graficzny

Projektowanie ksiek jest sztuk. Amatorzy czsto popelniaj powany bld zakladajc, e projektowanie ukladu graficznego ksiki jest tylko kwesti estetyki (jeeli dokument wyglda ladnie, to jest dobrze zloony). Poniewa jednak dokumenty s przeznaczone do czytania, a nie do powieszenia jak obraz na cianie w galerii, to o wiele wiksze znaczenie ni pikny wygld ma latwo czytania i przyswajania tekstu. Przyklady:

Ang. What you see is what you get (dostaniesz to, co widzisz). Na szybkim komputerze przetworzenie trwa czsto zaledwie kilka sekund. Dysponujc duym ekranem, mona jednoczenie wywietli okno z plikiem ródlowym oraz okno podgldu, otrzymujc w ten sposób system (prawie) WYSIWYG.

2 1

4

Podstawy, które warto zna

· stopie pisma oraz numeracj rozdzialów, podrozdzialów i punktów naley ustali tak, aby czytelnik mógl si szybko zorientowa w strukturze dokumentu; · szeroko szpalty nie powinna by zbyt mala, aby nie zmusza czytelnika do wytania wzroku, ale zarazem wystarczajco dua, aby tekst elegancko wypelnial stron. W systemach wizualnych czsto powstaj dokumenty przyjemne dla oka, ale pozbawione struktury, albo wykazujce brak konsekwencji w struktuA rze. L TEX zapobiega powstawaniu takich bldów, zmuszajc autora do A okrelenia logicznej struktury dokumentu. Nastpnie L TEX wybiera najodpowiedniejszy uklad graficzny.

1.2.3

Zalety i wady

Tematem czsto dyskutowanym, gdy uytkownicy programów typu WYSIA A WYG spotykaj uytkowników L TEX-a, s ,,zalety L TEX-a w porównaniu ze zwyklym procesorem tekstu" albo odwrotnie. Najlepiej podczas takich dyskusji siedzie cicho. Czasami jednak nie uda si unikn zabrania glosu. Poniej zamieszczamy list argumentów, które moglyby by wykorzyA stane w takiej dyskusji. Oto najwiksze zalety L TEX-a w porównaniu ze zwyklymi procesorami tekstu. · Dostpne s gotowe, przygotowane przez zawodowców uklady graficzne, dziki zastosowaniu których dokumenty wygldaj ,, jak z drukarni". · Wygodnie sklada si wzory matematyczne. · Do rozpoczcia pracy wystarczy pozna zaledwie kilkanacie latwych do zrozumienia instrukcji, okrelajcych struktur logiczn dokumentu. Nie trzeba zaprzta sobie glowy formatowaniem dokumentu. · Nawet takie elementy jak przypisy, odnoniki, spisy treci, spisy tabel, skorowidze, oraz spisy bibliograficzne przygotowuje si bardzo latwo. · Istnieje wiele bezplatnych pakietów poszerzajcych typograficzne moA liwoci L TEX-a. Przykladowo, dostpne s pakiety umoliwiajce wstawianie do dokumentów grafiki w formacie PostScript, tworzenie hipertekstowej wersji dokumentów w formacie PDF czy te przygotowanie spisów bibliograficznych wedlug cile okrelonych regul, obowizujcych w rónych wydawnictwach. Opis wielu z tych pakietów mona A znale w podrczniku The L TEX Companion [2]. A · L TEX zachca autorów do tworzenia dokumentów o dobrze okrelonej strukturze. A · TEX ­ program formatujcy uywany przez L TEX 2 ­ jest bezplatny i w najwyszym stopniu przenony. Dziki temu mona dziala na praktycznie kadej platformie systemowo-sprztowej.

A L TEX ma take pewne braki, z tym e ciko mi znale chocia jeden istotny. Jestem jednak pewien, e inne osoby wska ci ich setki;-)

1.3 Plik ródlowy

A · L TEX nie dziala u tych, którzy zaprzedali swoje dusze . . . · Aczkolwiek mona dostosowywa predefiniowane uklady graficzne do wlasnych potrzeb przez zmian wybranych parametrów, to jednak zaprojektowanie calkowicie nowego ukladu jest czasochlonne3 . · Trudno stworzy dokument o nieokrelonej, balaganiarskiej strukturze.

5

1.3

Plik ródlowy

A Plikiem ródlowym L TEX-a jest zwykly plik tekstowy (plik ASCII). Taki plik mona utworzy za pomoc dowolnego edytora tekstowego. Zawiera on A tekst dokumentu oraz instrukcje, dziki którym L TEX wie, jak zloy tekst.

1.3.1

Odstpy

Znaki niewidoczne, takie jak znaki odstpu (spacji) lub tabulacji s przez A L TEX-a traktowane jednakowo ­ jako odstp. Kolejno po sobie wystpujce A znaki odstpu L TEX traktuje tak, jak jeden taki znak. Znaki odstpu znajdujce si na pocztku wiersza s prawie zawsze ignorowane. Pojedynczy koniec linii jest traktowany jak odstp. A Pusty wiersz koczy akapit. Kolejno wystpujce puste wiersze L TEX traktuje tak, jak jeden pusty wiersz. Poniszy tekst jest przykladem. Po prawej stronie (w ramce) przedstawiono wynik skladu, a po lewej zawarto pliku ródlowego.

Nie ma znaczenia, czy midzy slowami jest jedna czy wicej spacji. Pusty wiersz rozpoczyna nowy akapit. Nie ma znaczenia, czy midzy slowami jest jedna czy wicej spacji. Pusty wiersz rozpoczyna nowy akapit.

1.3.2

Znaki specjalne

Nastpujce znaki s zarezerwowane: albo maj specjalne znaczenie dla A L TEX-a, albo nie s dostpne we wszystkich standardowych krojach pisma. Uyte doslownie w pliku ródlowym nie pojawi si na wydruku, tylko (najczciej) spowoduj bld podczas przetwarzania tekstu. $ & % # _ { } ~ ^ \ Znaki te mona jednak wstawi do dokumentu, o ile poprzedzi si je znakiem w-tyl-ciacha (ang. backslash):

\$ \& \% \# \_ \{ \} $&%# {}

3 Plotki mówi, e jest to jeden z waniejszych problemów, nad jakim pracuj twórcy A systemu L TEX3.

6

Podstawy, które warto zna

Znaku w-tyl-ciach nie mona wstawi do tekstu metod podwojenia. KombiA nacja \\ jest poleceniem L TEX-a, opisanym w punkcie 2.2.1. Znak w-tyl-ciach moemy wstawi za pomoc polecenia $\backslash$. Uwaga: znaki dolara s niezbdne, a ich opuszczenie spowoduje bld podczas przetwarzania.

1.3.3

A Polecenia L TEX-a

A Polecenia L TEX-a wystpuj w dwóch nastpujcych odmianach:

1. Instrukcje rozpoczynajce si znakiem w-tyl-ciach ,,\", po którym wystpuje cig liter. Kocem instrukcji jest odstp lub inny znak nie A bdcy liter. W nazwach instrukcji L TEX rozrónia litery male i due. Uywanie polskich liter diakrytycznych w nazwach instrukcji nie jest moliwe. 2. Instrukcje skladajce si ze znaku w-tyl-ciach oraz dokladnie jednego znaku nie bdcego liter.

A Znaki odstpu po instrukcjach typu 1 s przez L TEX-a ignorowane. Jeeli po instrukcji ma w dokumencie wystpowa odstp, to naley bezporednio po niej umieci kolejno: par nawiasów klamrowych {} i odstp. Para znaków A {} zapobiega zignorowaniu przez L TEX-a odstpu po nazwie instrukcji. Innym sposobem jest wstawienie specjalnej instrukcji \ (tj. w-tyl-ciach i spacja). Niektórzy uywaj jeszcze innego sposobu zapobiegania polykaniu spacji po nazwach instrukcji, a mianowicie wstawiaj instrukcj pomidzy par nawiasów { i }.

Czytalem, e Knuth dzieli uytkowników systemu {\TeX} na \TeX{}ników oraz \TeX pertów.\\ Dzisiaj jest \today.

Czytalem, e Knuth dzieli uytkowników systemu TEX na TEXników oraz TEXpertów. Dzisiaj jest 8 marca 1999 roku.

A Niektóre instrukcje L TEX-owe maj argumenty. Argumenty podaje si w nawiasach klamrowych { }, kady argument w osobnej parze nawiasów. Liczba i kolejno argumentów jest dla kadego polecenia z góry ustalona. Instrukcje mog mie take argumenty opcjonalne (nieobowizkowe), podawane w nawiasach kwadratowych [ ]. W przypadku wikszej liczby argumentów opcjonalnych oddziela si je przecinkami. Kolejno argumentów opcjonalnych nie odgrywa roli. A Ponisze przyklady ilustruj posta instrukcji L TEX-owych. Znaczenie tych instrukcji jest na razie nieistotne; zostanie podane póniej.

Moesz na mnie \textsl{polega}! Tu wstaw zmian wiersza.\newline Dzikuj.

Moesz na mnie polega! Tu wstaw zmian wiersza. Dzikuj.

1.4 Struktura pliku ródlowego

7

1.3.4

Komentarze

A Po napotkaniu znaku % L TEX ignoruje reszt biecego wiersza (lcznie ze znakiem koca wiersza) oraz znaki odstpu na pocztku nastpnego. Znak % jest wykorzystywany do umieszczania komentarzy i dodatkowych informacji w pliku ródlowym.

Mao zmarl % sprawdzi! w~1975 roku.

Mao zmarl w 1975 roku.

Zdarza si, e znak % uywany jest do rozdzielenia dlugich linii w pliku wejciowym, gdy niedozwolone jest uycie spacji lub zlamanie wiersza.

1.4

Struktura pliku ródlowego

A L TEX oczekuje, e plik ródlowy posiada okrelon struktur. W szczególnoci, kady plik ródlowy sklada si z dwóch czci: preambuly oraz czci glównej. Preambula powinna si rozpoczyna od instrukcji:

\documentclass{...} Polecenie to okrela typ tworzonego dokumentu. Po nim mona umieci instrukcje dotyczce stylu calego dokumentu oraz dolczy pakiety poszeA rzajce moliwoci L TEX-a. Pakiety dolcza si za pomoc polecenia: \usepackage{...} Cz glówna dokumentu zaczyna si od instrukcji \begin{document}, a koczy poleceniem \end{document}. Tekst znajdujcy si za tym poleA ceniem jest przez L TEX-a ignorowany. A Rysunek 1.2 pokazuje zawarto minimalnego dokumentu L TEX-owego (uyte tu instrukcje \usepackage{...}, niezbdne do skladania w jzyku polskim, omawiamy w punkcie 2.4). \documentclass{article} \usepackage[MeX]{polski} \usepackage[latin2]{inputenc} \begin{document} Male jest pikne. \end{document}

Rysunek 1.2: Zawarto minimalnego pliku ródlowego Rysunek 1.3 przedstawia zawarto nieco bardziej skomplikowanego pliku ródlowego.

8

Podstawy, które warto zna

\documentclass[a4paper,11pt]{article} \usepackage{latexsym} \author{H.~Partl} \title{Minimalism} \frenchspacing \begin{document} \maketitle \tableofcontents \section{Start} Well and here begins my lovely article. \section{End} \ldots{} and here it ends. \end{document}

Rysunek 1.3: Przyklad artykulu

1.5

1.5.1

Uklad graficzny dokumentu

Klasy dokumentów

A L TEX musi wiedzie do jakiej klasy (typu) naley przetwarzany dokument. Jest to okrelone w instrukcji \documentclass:

\documentclass[opcje]{klasa}

gdzie klasa oznacza typ dokumentu. W tabeli 1.1 zestawiono klasy dokumenA tów opisane w niniejszym wprowadzeniu. W dystrybucji L TEX 2 znajduj si take inne klasy. Opcje umoliwiaj modyfikowanie klas. Poszczególne opcje rodziela si przecinkami. W tablicy 1.2 zestawiono najczciej wykorzystywane opcje dla standardowych klas. Tabela 1.1: Klasy dokumentów article artykuly, krótkie opracowania . . . report dlusze opracowania, dysertacje magisterskie i doktorskie . . . book ksiki. slides przeroczaa . letter listy.

Przerocza skladane s bezszeryfowym krojem pisma. Zamiast klasy standardowej mona do tworzenia slajdów wykorzysta pakiet FoilT X CTAN://tex-archive/ E macros/latex/packages/supported/foiltex.

a

1.5 Uklad graficzny dokumentu

9

Tabela 1.2: Waniejsze opcje klas dokumentów 10pt, 11pt, 12pt Ustalenie stopnia pisma dla tekstu zasadniczego dokumentu. Domyln wartoci jest 10 punktów. a4paper, letterpaper, . . . Ustalenie wymiarów papieru. Wartoci domyln jest letterpaper. Dopuszczalne wartoci to: a5paper, b5paper, executivepaper, i legalpaper. fleqn Skladanie wyeksponowanych wzorów matematycznych od lewego marginesu zamiast domylnego centrowania. leqno Umieszczanie numerów wzorów matematycznych na lewym marginesie zamiast domylnie na prawym. A titlepage, notitlepage Pierwsza powoduje, e L TEX sklada tytul (instrukcja maketitle) oraz streszczenie (instrukcja abstract) na odzielnej stronie, druga rozpoczyna sklad tekstu na stronie tytulowej. W klasie article domylnie nie s skladane na oddzielnych stronach; w stylu report i book s. twocolumn Skladu dwulamowy (dwukolumnowy). oneside, twoside Druk na jednej lub na dwóch stronach kartki papieru. W klasach article i report domyln opcj jest oneside, natomiast w klasie book ­ twoside. Wlczenie opcji oneside poA woduje przy okazji, e L TEX nie wyrównuje wysokoci kolejnych stron, dopuszczajc pewn ich zmienno. openright, openany Wybranie pierwszej opcji powoduje, e tytuly rozdzialów bd umieszczane na stronach nieparzystych. W klasie article opcja nie ma znaczenia poniewa w tej klasie nie jest zdefiniowane pojcie rozdzialu. W klasie report domyln wartoci jest openany, w klasie book ­ openright.

Przyklad. Plik ródlowy moe rozpoczyna si od nastpujcej instrukcji: \documentclass[11pt,twoside,a4paper]{article} W tym wypadku dokument bdzie skladany w klasie article, pismem w stopniu 11 punktów, bdzie przygotowany do wydruku po dwóch stronach kartki papieru formatu A4.

1.5.2

Pakiety

A A Pakiety rozszerzaj moliwoci L TEX-a. Przykladowo, L TEX nie umoliwia dolczania grafiki, kolorowania tekstu, automatycznego lamania duych tabel itp. Do wykonywania tych zada slu wlanie pakiety. Dolcza si je za pomoc instrukcji:

\usepackage[opcje]{pakiet }

10

Podstawy, które warto zna

A Tabela 1.3: Wybrane pakiety z podstawowej dystrybucji L TEX-a

doc Sluy do drukowania dokumentacji pakietów oraz innych czA ci skladowych L TEX-a. Opis znajduje si w pliku doc.dtxa. exscale Umoliwia skalowanie fontów matematycznych, tak aby byly optycznie zgodne z otaczajcym tekstem, np. w tytulach rozdzialów. Opis w ltexscale.dtx. fontenc Definiuje uklad znaków w biecym zestawie znaków (foncie). Opis w ltoutenc.dtx. ifthen Umoliwia korzystanie z polece typu if... then do... otherwise do. Opis w ifthen.dtx i [2]. latexsym Udostpnia specjalny font symboliczny (fonty lasy). Opis w latexsym.dtx i [2]. makeidx Udostpnia polecenia do przygotowywania skorowidzów. Opis w punkcie 4.3 i [2]. syntonly Przetwarza dokument bez skladania czegokolwiek. Przydatny do szybkiego sprawdzenia czy dokument nie zawiera bldów. Opis w syntonly.dtx i [2]. inputenc Definiuje uklad znaków w pliku ródlowym, jak: ASCII, ISO Latin-1, ISO Latin-2, 437/850 IBM, Apple Macintosh, Next, ANSI-Windows albo uklad zdefiniowany przez uytkownika. Opis w inputenc.dtx.

Plik ten powinien by zainstalowany w twoim systemie. Aby otrzyma plik dvi wystarczy napisa latex doc.dtx w katalogu z prawem do zapisu. To samo stosuje si do innych pakietów z tej tabeli.

a

gdzie pakiet oznacza nazw pakietu, a opcje ­ list oddzielonych przecinkami A opcji. Cz pakietów znajduje si w podstawowej dystrybucji L TEX 2 (zobacz tabela 1.3). Pozostale s rozpowszechniane oddzielnie. Gdy uywamy A L TEX-a w systemie, którym zarzdza (dobry) administrator, to informacja o dostpnych pakietach powinna si znajdowa w Local Guide [5]. PodstawoA A wym ródlem informacji o L TEX-u jest The L TEX Companion [2]. Zawiera A on opis setek pakietów a take opisuje, jak rozszerza moliwoci L TEX-a.

1.5.3

Style strony

Typowa strona sklada si z trzech podstawowych czci. Powyej kolumny tekstu glównego znajduje si pagina górna (glówka), która moe zawiera numer strony, tytul rozdzialu czy punktu. Poniej kolumny tekstu znajduje si pagina dolna (stopka). W niniejszym wprowadzeniu pagina dolna jest pu-

1.6 Due dokumenty

11

A Tabela 1.4: Standardowe style strony w L TEX-u

plain pagina górna jest pusta, a pagina dolna zawiera wycentrowany numer strony. Ten styl jest domylny; headings pagina górna zawiera numer strony oraz tytul, pagina dolna jest pusta; empty pagina górna i dolna s puste.

sta, a pagina górna zawiera numer strony oraz tytul rozdzialu na stronicach parzystych, a tytul punktu na nieparzystych4 . A L TEX umoliwia wybranie jednego sporód trzech sposobów skladania pagin za pomoc instrukcji:

\pagestyle{styl }

Dopuszczalne wartoci argumentu styl zestawiono w tabeli 1.4. Moliwa jest take zmiana stylu biecej strony. Do tego celu sluy instrukcja:

\thispagestyle{styl }

Podrozdzial 4.4 na stronie 54 podrcznika [2] zawiera opis, jak mona przygotowywa wlasne sposoby skladania pagin.

1.6

Due dokumenty

Pracujc nad duym dokumentem, wygodnie jest podzieli plik ródlowy na A mniejsze czci. W L TEX-u mamy dwie instrukcje ulatwiajce prac z tak podzielonymi dokumentami. Pierwsz z nich jest

\include{plik }

Dolcza on do dokumentu zawarto pliku. Przed przystpieniem do przeA twarzania zawartoci dolczonego pliku L TEX rozpocznie now stron. Po A X take rozpoczyna now stron. zloeniu zawartoci pliku L TE Drugiej instrukcji uywa si w preambule. Pozwala ona dolczy do dokumentu tylko wybrane pliki.

\includeonly{lista-plików }

4 Pagin zawierajc oprócz kolejnego numeru kolumny (strony), take informacj dotyczc treci tej kolumny drukarze nazywaj yw pagin.

12

Podstawy, które warto zna

Sporod instrukcji \include zostan wykonane tylko te, dla których nazwy plików s na licie plików polecenia \includeonly. Uwaga: w licie plików nie mona uywa odstpów! Polecenie \include rozpoczyna sklad dolczanego tekstu od nowej strony. W polczeniu z poleceniem \includeonly w preambule instrukcja \inculde umoliwia przetwarzanie wybranych plików bez zmiany miejsc lamania poszczególnych stron i z zachowaniem prawidlowej numeracji stron, rodzialów, tabel itp. Czasami jednak rozpoczynanie skladu od nowej strony nie jest podane. W takiej sytuacji zamiast \include naley dolczy plik za pomoc instrukcji:

\input{plik }

która po prostu wstawia zawarto podanego pliku bez adnych dodatkowych efektów.

Rozdzial 2

Skladanie tekstu

Po lekturze poprzedniego rozdzialu znamy ju podstawowe pojcia zwizane z sysA temem L TEX 2 . W tym rozdziale poznamy polecenia niezbdne do tworzenia prawdziwych dokumentów.

2.1

Struktura tekstu i jzyka

Glównym zadaniem slowa pisanego jest przekaz myli, informacji lub wiedzy. Nadanie zapisowi odpowiedniej struktury pomaga czytelnikowi lepiej rozumie przekazywane treci. Sklad typograficzny moe t struktur logiczn i semantyczn tekstu przybliy czytelnikowi. A L TEX tym si róni od innych systemów skladu, e do zloenia tekstu wystarczaj mu informacje dotyczce logicznej i semantycznej struktury tekstu. Informacje te okrelone s przez ,,reguly" zawarte w plikach definiujcych klasy dokumentów i innych plikach zawierajcych instrukcje. A Najwaniejsz jednostk podzialu tekstu w systemie L TEX (a take w typografii) jest akapit. Jest to ,, jednostka podzialu" glównie dlatego, e tre akapitu powinna by powicona jednej spójnej myli lub pojciu. W nastpnym podrozdziale omówimy instrukcje nakazujce zlamanie linii na przyklad przy uyciu polecenia \\, a take sposób rozpoczcia nowego akapitu poprzez pozostawienie pustej linii w kodzie ródlowym. Tak wic, rozpoczcie nowej myli jest równoznaczne z rozpoczciem nowego akapitu. W pozostalych przypadkach powinno si jedynie przechodzi do nowej linii. W razie wtpliwoci naley pamita, e tekst jest zawsze nonikiem pewnych myli oraz idei. Kontynuacja dotychczasowej myli w nowym akapicie jest bldem. Niezgodna z regulami sztuki jest take sytuacja, gdy w tym samym akapicie pojawia si nowa myl. Wikszo ludzi calkowicie lekceway znaczenie wlaciwej organizacji akapitów. Co wicej, wiele osób nawet nie zdaje sobie sprawy, czym akapit naprawd jest i przechodzi do nowego akapitu nawet o tym nie wiedzc A (dotyczy to zwlaszcza L TEX-a). Ten bld latwiej popelni zwlaszcza, gdy

14

Skladanie tekstu

w tekcie pojawiaj si równania. Zobaczmy dlaczego w poniszych przykladach w jednej z takich sytuacji naley przej do nowego akapitu, a w innej ­ nie. (Czytelnik, który nie zna jeszcze wszystkich polece uytych w tych przykladach, powinien dokladnie przeczyta ten i nastpny rozdzial, a nastpnie wróci do tego podrozdzialu i przeczyta go jeszcze raz). % Przyklad 1 \ldots Slynne równanie Einsteina \begin{equation} e = m \cdot c^2 \; , \end{equation} jest zarówno najbardziej znanym, ale take najmniej rozumianym równaniem w~fizyce. % Przyklad 2 \ldots którego wynikiem jest prdowe prawo Kirchhoffa: \begin{equation} \sum_{k=1}{n} I_k = 0 \; . \end{equation} Natomiast, napiciowe prawo Kirchhoffa ma swój pocztek w~\ldots % Przyklad 3 \ldots co ma okrelone zalety. \begin{equation} I_D = I_F - I_R \end{equation} jest rdzeniem innego modelu tranzystora. \ldots Mniejsz od akapitu jednostk podzialu tekstu jest zdanie. W tekstach angielskojzycznych odstp, który pojawia si po kropce koczcej zdanie, jest wikszy ni ten, który pojawia si po kropce oznaczajcej skrót. Zalenie A od kontekstu L TEX stara si uy krótszego lub dluszego odstpu. W razie pomylek z jego strony, powinnimy mu wskaza nasze intencje ­ jak to zrobi, wyjaniamy w dalszej czci tego rozdzialu. Wlaciwa organizacja tekstu dotyczy take czci zda. Wiele jzyków ma bardzo skomplikowan interpunkcj, ale w wikszoci przypadków (wliczajc angielski i niemiecki), stawiajc przecinek w okrelonym miejscu w zdaniu, na ogól nie popelnimy bldu, jeli bdziemy pamita o zasadzie, e przecinek oznacza przerw/przystanek w zdaniu. Dlatego ­ jeli nie jestemy pewni, gdzie w zdaniu naley go postawi ­ przeczytajmy zdanie na glos i postawmy przecinki wszdzie tam, gdzie zrobilimy krótk przerw na wdech. Ale nie sugerujmy si tylko tym! Jeli w danym miejscu przeci-

2.2 Skladanie akapitów i lamanie stron

15

nek nie wyglda najlepiej, to usumy go; jeli w innym miejscu odczuwamy potrzeb wzicia powietrza do pluc (lub zrobienia krótkiej przerwy), to postawmy tam przecinek. I na koniec: akapit nie jest najwiksz logiczn jednostk podzialu tekstu. Mona jeszcze wspomnie o rozdzialach, podrozdzialach, punktach itd. Jednake od strony typograficznej ju same nazwy polece w rodzaju \section{Struktura tekstu i~jzyka} s na tyle oczywiste, e sposób ich uycia jest samo przez si zrozumialy (dla znajcych jzyk angielski).

2.2

2.2.1

Skladanie akapitów i lamanie stron

Skladanie akapitów

Ksiki najczciej sklada si tak, e wszystkie wiersze w akapitach s tej samej dlugoci. Podczas skladania akapitu, dc do optymalnej prezenA tacji, L TEX ustala miejsca zlamania linii oraz odstpy midzy slowami. A W razie potrzeby L TEX przenosi wyrazy, których nie jest w stanie zmieci w wierszu. Konkretny sposób skladania akapitów zaley od uytej klasy dokumentu. Najczciej pierwszy wiersz akapitu jest wcity, a pomidzy akapitami nie ma dodatkowych odstpów. Wicej informacji na ten temat mona znale w punkcie 5.3.2.

A Zgodnie z anglo-amerykaskimi zwyczajami typograficznymi L TEX nie wstawia wcicia akapitowego bezporednio po tytulach rozdzialów, podrozdzialów itd. Polskie zwyczaje nakazuj rozpoczynanie take pocztkowych akapitów od wcicia. Efekt ten mona osign przez dolczenie w preambule pakietu indentfirst. W niniejszym tlumaczeniu nie stosujemy wci akapitowych, poniewa akurat pod tym wzgldem bardziej nam si podobaj zwyczaje amerykaskie.

A Czasami przydaje si instrukcja nakazujca L TEX-owi zlamanie linii. Polecenie

\\ lub \newline

rozpoczyna now lini bez rozpoczynania nowego akapitu. Natomiast instrukcja:

\\*

dodatkowo zakazuje zlamania strony (w miejscu zlamania linii). Instrukcja:

\newpage

rozpoczyna now stron.

16

Skladanie tekstu

Instrukcje:

\linebreak[n], \nolinebreak[n], \pagebreak[n] oraz \nopagebreak[n]

oznaczaj ­ odpowiednio ­ zacht do zlamania wiersza, niezgod na zlamanie wiersza, zacht do zlamania strony, niezgod na zlamanie strony, w miejscu ich wystpienia w dokumencie. Opcjonalny argument n, o dopuszczalnej wartoci od 0 do 4, okrela stopie tej zachty (niezgody). Domylna warto 4, to bezwarunkowy zakaz lub nakaz zlamania linii/strony. WartoA ci mniejsze od 4 pozostawiaj L TEX-owi swobod zignorowania instrukcji, jeeli sklad otrzymany w rezultacie bylby niskiej jakoci. Polece z grupy break nie naley myli z poleceniami z grupy new. Mimo A wydania polecenia typu break L TEX stara si wypelni wiersz do prawego skraju czy te wypelni stron do calej jej wysokoci. Nietrudno zgadn, jakiej instrukcji naley uy, gdy naprawd zaley nam na rozpoczciu nowego wiersza (ta zagadka jest latwa pod warunkiem, e znamy jzyk angielski ­ jest to polecenie \newline).

A Jeeli w wierszu zakoczonym instrukcj \newline jest zbyt malo tekstu, to L TEX nie wyrówna tego wiersza do prawego marginesu, tylko po tekcie wstawi odpowiedni A odstp. Jeeli zamiast \newline uyjemy \linebreak, to L TEX postara si wyrówna zawarto koczonej linijki do prawego marginesu. Zbyt male wypelnienie wiersza tekA stem zmusi L TEX-a do wstawienia zbyt duych odstpów pomidzy wyrazy w wierszu, co zostanie zasygnalizowane podczas przetwarzania wywietleniem komunikatu:

Underfull \hbox (badness 10000) in paragraph at lines 4--5

A W komunikacie tym liczba po slowie badness wskazuje, jak bardzo L TEX-owi ,,nie podoba" si zloony wiersz. W tym przypadku jest to maksymalna warto, 10000. Liczby na kocu komunikatu to numery pierwszej i ostatniej linii akapitu, w którym A L TEX musial zloy wiersz z nadmiernymi odstpami midzy wyrazami. Chocia wielu A uytkowników L TEX-a nie zwraca uwagi na podobne ostrzeenia, warto zdawa sobie spraw, co one oznaczaj. A Oprócz wyej wymienionych istniej w L TEX-u jeszcze instrukcje:

\clearpage, \cleardoublepage Obydwie rozpoczynaj sklad nowej strony. Instrukcja \cleardoublepage dziala tak, jak \clearpage, z tym e rozpoczynana nowa strona jest zawsze nieparzysta. W razie potrzeby tworzona jest strona pusta. W skladzie dwuszpaltowym (opcja twocolumn) instrukcja \newpage koczy szpalt natomiast \clearpage oraz \cleardoublepage kocz stron, w miar potrzeby pozostawiajc pust praw szpalt. Jeeli na stronie zakoczonej instrukcj \newline (albo \clearpage) jest zbyt A malo tekstu, L TEX wstawia odpowiedni odstp u dolu strony, a nie pomidzy akapity czy te inne elementy na stronie, tak jak ma to miejsce w przypadku instrukcji \pagebreak. Jeeli te odstpy okazuj si za due (a zdarza si to do czsto), to sytuacja taka jest sygnalizowana podczas przetwarzania dokumentu odpowiednim ostrzeeniem, np.: Underfull \vbox (badness 10000) has occurred while \output is active [7]

2.2 Skladanie akapitów i lamanie stron

17

W powyszym komunikacie (przelamanym, z uwagi na wsk szpalt na dwie linijki) A liczba po slowie badness wskazuje, jak bardzo L TEX-owi nie podoba si zloona strona. Tutaj jest to 10000 ­ maksymalna w TEX-u ujemna ocena jakoci skladu. Liczba w nawiasach prostoktnych na kocu komunikatu oznacza numer strony, podczas skladania której wystpil problem.

A L TEX zawsze próbuje podzieli akapit na wiersze w sposób optymalny. Kiedy nie potrafi znale podzialu, który spelnia jego wymagania jakociowe, wtedy niektóre wyrazy wystaj na prawym marginesie, a sytuacja taka jest sygnalizowana podczas przetwarzania pliku, np.:

Overfull \hbox (5.5452pt too wide) in paragraph at lines 79--83 W powyszym komunikacie liczba w nawiasie okrglym oznacza, e pewien fragment tekstu wystaje o 5,5452 punktów drukarskich na prawy margines. Problem wystpil w akapicie, który w pliku ródlowym jest w wierszach od 79 do 83. Podobne ostrzeenia pojawiaj si najczciej wówczas, gdy A L TEX nie potrafi przenie wyrazu zgodnie z zadanymi wzorcami tak, aby nie popsu jakoci skladu. Ostrzeenie powyszej postaci na ogól nie wystarcza do dokladnego ustalenia przyczyny jego wystpienia. Mona wtedy uy opcji draft jako argumentu polecenia \documentclass, na skutek czego A L TEX oznaczy wystajce wiersze mal czarn sztabk umieszczon na prawym marginesie szpalty. A Deklaracja \sloppy nakazuje L TEX-owi obniy nieco jego domylnie wysokie standardy. Zapobiega to ­ w wikszoci wypadków ­ wystpowaniu zbyt dlugich linijek, ale kosztem zwikszenia odstpów midzywyrazowych, A nawet wtedy, gdy otrzymany sklad nie jest optymalny. Takie linijki L TEX sygnalizuje ostrzeeniem (underfull hbox). W wikszoci przypadków otrzymany wynik jest zupelnie niezly. Instrukcja \fussy dziala w odwrotnym A kierunku, to znaczy przywraca domylne, wysokie standardy L TEX-a.

2.2.2

Przenoszenie wyrazów

A W razie potrzeby L TEX przenosi (dzieli) wyrazy. Jeeli algorytm podzialu wyrazów przenosi jaki wyraz nieprawidlowo, to prawidlowe miejsca przenoszenia mona zada instrukcj:

\hyphenation{lista slów }

Slowa z listy argumentów mona dzieli tylko w miejscach oznaczonych znakiem -. Instrukcji tej powinno si uywa wylcznie w preambule dokumentu, a wyrazy-argumenty mog zawiera (oprócz znaku -) wylcznie litery. Nie ma natomiast znaczenia, czy w tych wyrazach uywa si liter wielkich, czy malych. Wykonanie instrukcji \hyphenation z przykladu poniej spowoduje, e slowo ,,wier-li-trówka" mona podzieli tylko w dwóch zaznaczonych miejscach, podczas gdy slowa ,,szczypce" nie mona przenie

18

Skladanie tekstu

w ogóle. Wyrazy z listy nie mog zawiera adnych znaków specjalnych ani symboli. Przyklad: \hyphenation{wier-li-trówka szczypce}

W jzykach fleksyjnych, do jakich naley polski, instrukcja \hyphenation jest duo mniej przydatna ni w angielskim. Aby dany wyraz zawsze byl dobrze przenoszony, nalealoby wypisa wszystkie jego formy. Co wicej, próba wykorzystania polecenia \hyphenation w przypadku plików ródlowych zapisanych w notacji prefixowej albo te plików w notacji naturalnej i korzystania z pakietu inputenc zakoczy si bldem w czasie przetwarzania dokumentu. Ten fenomen jest spowodowany sposobem w jakim dziala TEX, a jego wyjanienie daleko wykracza poza ramy niniejszego wprowadzenia.

A Instrukcja ,,\-" wskazuje, w których miejscach L TEX-owi wolno przeA nie wyraz w danym miejscu w dokumencie. L TEX nie podzieli slowa w innym miejscu. Instrukcja ta przydaje si szczególnie w przypadku wyraA zów zawierajcych znaki specjalne (np. znaki akcentowane), poniewa L TEX dzieli automatycznie tylko wyrazy zloone z samych liter.

Nie\-bie\-sko\-bia\-lo\-zie\-lo\-% no\-nie\-bie\-ski

Niebieskobialozielononiebieski

Tekst bdcy argumentem polecenia:

\mbox{tekst }

nigdy nie zostanie przeniesiony.

Numer mojego telefonu wkrótce si zmieni na \mbox{0116 291 2319}. Parametr \mbox{\emph{nazwa}} to nazwa pliku. Numer mojego telefonu wkrótce si zmieni na 0116 291 2319. Parametr nazwa to nazwa pliku.

2.3

2.3.1

Znaki specjalne i symbole

Cudzyslowy

Znaku cudzyslowu " uywa si inaczej ni na maszynie do pisania, bo w publikacjach drukowanych inaczej oznacza si pocztek i inaczej koniec cudzyslowu. Wystpuj take rónice w sposobach oznaczania cudzyslowów w rónych jzykach. Dwa apostrofy ` otwieraj, a dwa apostrofy ' zamykaj A L TEX-owy cudzyslów wedlug regul jzyka angielskiego:

``Please press the `x' key.'' "Please press the `x' key."

2.3 Znaki specjalne i symbole

19

W jzyku polskim cudzyslów otwierajcy oznacza si za pomoc dwóch przecinków ,,,,", a zamykajcy za pomoc dwóch apostrofów ,,''"1. Gdy zachodzi konieczno uycia cudzyslowu w tekcie ju objtym cudzyslowem, to stosuje si ,,cudzyslowy «francuskie»", oznaczane w pliku ródlowym znakami mniejszoci ,,<<" i ­ odpowiednio ­ wikszoci ,,>>". ,,Przechod tylko po <<zebrach>>''. ,,Przechod tylko po «zebrach»".

2.3.2

Pauzy i mylniki

Proste maszyny do pisania posiadaj tylko jeden znak w ksztalcie poziomej kreski ,,-". W skladzie drukarskim wystpuj a cztery rodzaje kresek poziomych. S to: lcznik, mylnik, pólpauza i minus uywany we wzorach matematycznych.

Lcznik (dywiz) jest najkrótsz z kresek; stosuje si go przy dzieleniu i przenoszeniu wyrazów oraz przy lczeniu wyrazów wieloczlonowych (np. ,,niebiesko-czarny"). Zgodnie z polskimi regulami wyraz wieloczlonowy moe zosta podzielony i przeniesiony albo w obrbie wyrazów skladowych, albo na lczniku. W tym ostatnim przypadku lcznik powinien zosta powielony, to znaczy znale si zarówno na kocu pierwszego wiersza, jak te na pocztku drugiego. Oto moliwe miejsca podzialu wyrazu niebiesko-czarny: niebiesko-czarny niebiesko-czarny niebiesko-czarny niebiesko-czarny

A Standardowy L TEX nie zna polskich norm i dlatego dzieli wyrazy wieloczlonowe w miejscu polczenia, bez powielania lcznika. Jeeli do skladu w jzyku polskim korzystamy z pakietu platex to w pliku ródlowym w miejsce lcznika w wyrazach wieloczlonowych powinnimy zastosowa instrukcj \dywiz (np. niebiesko{\dywiz}czarny). W pewnych sytuacjach lepiej nie dzieli wyrazów polczonych lcznikiem. Jeeli na przyklad mówimy o wydziale K-2, kodzie pocztowym czy numerze telefonu, to w takich przypadkach lcznik zapisujemy w pliku ródlowym jako pojedyncz kresk ,,-". A Znaku lcznika uywa si równie do przenoszenia wyrazów. Jednak w L TEX-u odbywa si to automatycznie i nie wymaga rcznych ingerencji uytkownika. Mylnik ,,--" to dlusza kreska uywana jako znak przestankowy. Zapisujemy go za pomoc trzech nastpujcych po sobie znaków ,,-", czyli ,,---". Przed oraz po mylniku w jzyku polskim dodajemy odstp. Pólpauza to kreska o polow krótsza od mylnika. Stosuje si j przede wszystkim przy pisaniu zakresów liczbowych, np. ,,str. 11­13", czy ,,w latach 1960­1963". Przed i po pólpauzie nie dodaje si odstpów. Odstpy takie musz si pojawi w sytuacjach takich jak: ,,11 padziernika ­ 13 listopada". Czasami pólpauzy uywa si take w roli mylnika (tak jest w niniejszym tlumaczeniu). Pólpauz zapisuje si za pomoc dwóch nastpujcych po sobie minusów ,,--". Znaku minusa uywa si we wzorach matematycznych; aby go otrzyma piszemy ,,-" wewntrz trybu matematycznego. Przykladowo zapis $-2$ daje w skladzie -2, podczas gdy -2 daje -2.

1 Porównaj uwagi dotyczce tego sposobu oznaczania cudzyslowów z punktu 2.4 w czci dotyczcej fontów i ich kodowania (s. 22). Uwaga ta dotyczy równie cudzyslowów francuskich.

20

Skladanie tekstu

2.3.3

Wielokropek ( . . . )

W typowym pimie maszynowym przecinek albo kropka zajmuj tyle samo miejsca, co kady inny znak. W pimie drukarskim szeroko tych znaków jest z reguly bardzo mala i dlatego jeeli umiecimy je obok siebie, to odstpy miedzy nimi bd zbyt male. Wielokropek (trzy kropki) uzyskujemy za pomoc instrukcji \ldots. Przyklad:

\ldots

Nie tak ..., tylko raczej tak:\\ Nowy Jork, Tokio, Budapeszt, \ldots

Nie tak ..., tylko raczej tak: Nowy Jork, Tokio, Budapeszt, . . .

2.3.4

Ligatury

Ligatury (spójki) to znaki graficzne, w których polczono dwie lub trzy litery. W niektórych jzykach ligatury wystpuj jako wlaciwe danej ortografii znaki pisma, np. oe w jzyku francuskim. Wikszo ligatur tworzy si A ze wzgldów estetycznych lub zwyczajowych. L TEX zna pi nastpujcych ligatur:

ff fi fl ffi ffl zamiast

A LT

ff fi fl ffi ffl

EX automatycznie wstawia ligatury zamiast odpowiednich sekwencji znaków. Mona temu zapobiec wstawiajc instrukcj \mbox{} pomidzy znaki tworzce ligatur.

Jak lepiej: geografii czy geografii?

Jak lepiej: geografii czy geograf\mbox{}ii?

2.3.5

Akcenty i znaki specjalne

A L TEX umoliwia wstawienie znaków akcentowanych i specjalnych uywanych w wielu jzykach. W tabeli 2.1 zestawiono wszystkie moliwe akcenty dla litery ,,o". Instrukcje te mona stosowa równie do dowolnej innej litery. W przypadku umieszczenia akcentu nad literami ,,i" oraz ,, j", naley usun kropk znad tych liter. Do tego celu slu instrukcje \i i \j, wstawiajce do skladu specjalne wersje liter ,,i" oraz ,,".

H\^otel, na\"\i ve, \'el\`eve,\\ sm\o rrebr\o d, !`Se\~norita!,\\ Sch\"onbrunner Schlo\ss{} Stra\ss e

H^tel, na¨ ´l`ve, o ive, e e smørrebrød, ¡Se~ orita!, n Sch¨nbrunner Schloß Straße o

A 2.4 L TEX wielojzyczny

21

2.3.6

Nielamliwe odstpy

Polskie zasady typograficzne nie pozwalaj przy lamaniu akapitu pozostawia na kocu wierszy jednoliterowych spójników lub przyimków. Przykladowo w zdaniu ,,Jan Kochanowski urodzil si w Czernolesie" nieladnie wygldalby przyimek ,,w" wystpujcy na kocu wiersza. Odstpy, na których nie wolno zlama wiersza, zaznacza si w pliku ródlowym przez umieszczenie znaku tyldy ,,~" zamiast odstpu. Na przyklad, w powyszej sytuacji powinnimy zapisa w pliku ródlowym: ,,w~Czarnolesie". Jest wiele sytuacji, w których zwizek fragmentów zdania jest tak silny, e nie naley wewntrz nich lama na wiersze. Nie zawsze decyzja jest tak prosta, jak w przypadku wspomnianych spójników. Oto gar przykladów: godz.~17.00; od~15 do 40~osób; na str.~2 napisano; rozdz.~2; 2~rozdzialy; p.~Jan Nowak; p.~J.~Nowak; I~cz IX~Symfonii.

2.4

A L TEX wielojzyczny

A Jeeli L TEX ma sklada tekst w jzykach innych ni angielski, to zasadniczo s dwa obszary, w których naley go odpowiednio skonfigurowa: A 1. Wszystkie teksty generowane automatycznie przez L TEX-a trzeba przystosowa do danego jzyka. Dotyczy to tytulów rozdzialów, spisu treci, spisu rysunków, tabel, dat itp. Zmiany te umoliwia pakiet babel Johannesa Braamsa. A 2. L TEX musi pozna reguly dzielenia wyrazów dla danego jzyka. ,,Powiedzenie" mu o nich jest swego rodzaju sztuczk, gdy jest równoA znaczne ze stworzeniem nowego formatu L TEX-a z nowymi, wbudowanymi we regulami. Wicej informacji na ten temat mona znale w Local Guide [5].

Tabela 2.1: Akcenty i znaki specjalne o ` o ¯ o o . oe ° a ø i \`o \=o \u o \d o \oe \aa \o \i ó o o o ¯ OE ° A Ø \'o \.o \v o \b o \OE \AA \O \j o ^ o ¨ o oo æ l ¡ \^o \"o \H o \t oo \ae \k{a} \l !` o ~ o ¸ Æ L ¿ \~o \c o \AE \L ?`

22

Skladanie tekstu

Po odpowiednim skonfigurowaniu naszego systemu mona wykorzysta pakiet babel. Wystarczy w tym celu uy w preambule instrukcj:

\usepackage[lista-jzyków ]{babel}

Argument lista-jzyków, to oddzielone przecinkami nazwy jzyków, które A obsluguje lokalna wersja L TEX-a. Ostatni na licie jest jzykiem domylnym. Podrcznik Local Guide [5] zawiera informacje, o tym jakie nazwy mog si pojawi na licie-jzyków. Dla niektórych jzyków babel udostpnia specjalne instrukcje, ulatwiajce wprowadzanie znaków diakrytycznych i specjalnych. Przykladowo teksty w jzyku niemieckim zawieraj duo liter z umlautami: (¨¨u). Wykorzyao¨ stujc pakiet babel mona wprowadzi liter ¨ wpisujc "o zamiast \"o. o W wikszoci systemów komputerowych znaki akcentowane i specjalne (czyli znaki o kodach ASCII wikszych od 127) mona wprowadza bezporednio z klawiatury. Przykladowo polskie znaki diakrytyczne mona wprowadza naciskajc klawisz prawy-Alt i jednoczenie klawisz z odpowiedni A liter. L TEX radzi sobie z takimi znakami. Poczwszy od grudnia 1994 r. A dystrybucja L TEX-a zawiera pakiet inputenc, umoliwiajcy kodowanie znaków diakrytycznych zgodnie z wieloma wariantami, np. ISO-8859-2 (Linux) lub CP 1250 (MS Windows). Wicej informacji na ten temat mona znale w dokumentacji pakietu. Wykorzystujc pakiet musimy sobie zdawa spraw, e cz uytkowników nie bdzie w stanie prawidlowo wywietli tak przygotowanych plików ródlowych. Przykladowo znak ma numer 161 w standardzie ISO-8859-2, podczas gdy w kodowaniu zgodnym z CP 1250 ta sama litera ma kod 169 (a znak o kodzie 161 oznacza jaki inny ,,krzaczek"). Drug stron medalu jest uklad znaków (kodowanie) fontu. Kodowanie fontu okrela, w jakich miejscach fontu znajduj si poszczególne znaki. Oryginalne fonty Computer Modern (CM) s 128-znakowe i nie zawieraj na przyklad kompletu polskich znaków. Znaki diakrytyczne mona tworzy za pomoc polczenia dwóch znaków: litery i odpowiedniego akcentu. Taki sposób powoduje, e TEX nie moe prawidlowo przenosi wyrazów zawierajcych znaki diakrytyczne, a take, e typograficzna jako w ten sposób skonstruowanych diakrytyków jest kiepska. Na szczcie prawie wszystkie wspólczesne dystrybucje TEX-a zawieraj komplet fontów European Computer Modern (EC). S to fonty omiobitowe zawierajce 256 znaków. Pierwszych 128 znaków fontu EC s (prawie) identyczne ze znakami z fontów CM. Pozostale 128 znaków to znaki diakrytyczne wykorzystywane w wielu jzykach europejskich, w tym komplet znaków niezbdnych do skladania polskich tekstów. Fonty EC umoliwiaj wykorzystanie pelnych moliwoci TEX-owego mechanizmu przenoszenia wyrazów; znacznie lepsza jest te jako typograficzna znaków diakrytycznych.

Ponadto istniej jeszcze fonty PL (autorzy B. Jackowski i M. Ryko). S to fonty zgodne z CM zawierajce dodatkowo wszystkie polskie znaki diakrytyczne. Byly to

A 2.4 L TEX wielojzyczny

23

pierwsze dobrej jakoci fonty typu CM dostpne publicznie. Polskie diakrytyki z fontów EC s kopi odpowiednich znaków z fontów PL. Du zalet fontów PL jest to, e s dostpne take postaci fontów PostScriptowych. W szczególnoci znaki cudzyslowów francuskich i polskiego otwierajcego s dostpne w fontach EC i PL, ale nie ma ich w fontach CM. Opisany w punkcie 2.3.1 sposób wprowadzania tych znaków za pomoc par ,,,,", ,,<<" i ,,>>", dziala tylko wówczas gdy uywamy fontów EC lub PL.

Przelczenie na fonty EC nastpuje przez dolczenie pakietu fontenc w preambule dokumentu:

\usepackage[T1]{fontenc}

Argument T1, okrelajcy kodowanie, jest ,,odpowiedzialny" za przelczenie si na fonty EC.

2.4.1

Wsparcie dla jzyka polskiego

Poprawny sklad w jzyku polskim wymaga trzech rzeczy: dodatkowego pakietu polece, A fontów zawierajcych polskie znaki diakrytyczne oraz L TEX-a, który zna polskie reguly przenoszenia wyrazów. A W kadej nowej, kompletnej dystrybucji L TEX-a znajduje si wspomniany wyej pakiet babel. Mimo pewnych niedocigni mona go poleci szczególnie pocztkujcym. Bardziej wymagajcy uytkownicy powinni skorzysta z opisanego dalej zestawu polonizacyjnego platex. W pakiecie babel nazwy jzyków wykorzystywanych w dokumencie naley poda w preambule na licie opcji pakietu: \usepackage[jzyk1,jzyk2 ]{babel} Ostatni z wymienionych na licie jzyków jest jzykiem domylnym dokumentu. Do wlczenia jzyka sluy polecenie \selectlanguage. Skladnia tego polecenia jest nastpujca: \selectlanguage{jzyk} Pakiet babel dla kadego jzyka definiuje odpowiednio elementy wpisywane automatycznie przez program (np. dla jzyka polskiego ,,Spis treci", a nie ,,Table of contents") oraz udostpnia polecenia ulatwiajce przygotowanie dokumentów w tym jzyku. Ta druga sprawa w przypadku jzyka polskiego sprowadza si w zasadzie do kodowania polskich znaków diakrytycznych. Mona wyróni trzy sposoby kodowania: standardowe polecenia (opisane w punkcie 2.3.5), notacj prefiksow (wyjanion poniej) i notacj ,,bezporedni" (poslugujc si znakami o kodach wikszych od 127). A Standardowe polecenia akcentowe L TEX-a umoliwiaj zapis wszystkich polskich znaków diakrytycznych w nastpujcej postaci: \k{a} \'c \k{e} \l{} \'n \'o \'s \'z \.z \k{A} \'C \k{E} \L{} \'N \'O \'S \'Z \.Z lóLÓ

24

Skladanie tekstu

A Ponadto zapis np. \'o nie oznacza ­ jak w L TEX-u 2.09 ­ ,,wstaw akcent acute nad liter o", tylko ,,uyj najlepszej metody uzyskania znaku oacute dostpnej w biecym ukladzie fontu". Jeeli w biecym foncie jest dostpny znak oacute, zostanie on uyty bezporednio. Jeeli go nie ma, to TEX zloy taki znak z litery o oraz odpowiedniego akcentu2 . Poslugiwanie si powyszymi poleceniami do pisania tekstów po polsku jest uciliwe. Std pomysl notacji prefiksowej; polega ona na zapisywaniu polskich znaków diakrytycznych w postaci dwóch znaków: ustalonego znaku specjalnego (prefiksu) i litery laciskiej podobnej graficznie do odpowiedniej polskiej. Notacja prefiksowa ma wiele wersji: stosowano róne znaki jako prefiks (co najmniej ", @ i /) oraz róne konwencje zapisywania oraz (przynajmniej jeden z nich musi by zapisywany przy pomocy znaku rónego od z). Pakiet babel umoliwia zapis prefiksowy z wykorzystaniem znaku cudzyslowu, oto przyklad zapisu minuskul polskich znaków diakrytycznych w tej notacji ("r oznacza ): "a "c "e "l "n "o "s "z "r Ponadto ,,"`" oznacza polski cudzyslów otwierajcy, ,,"<" francuski cudzyslów otwierajcy a ,,">" francuski cudzyslów zamykajcy. Bezporednie wprowadzanie polskich znaków umoliwia pakiet inputenc opisany w poprzednim punkcie. W zalenoci od platformy, na której pracujemy, mamy do wyboru ISO-8859-2 (Unix, Linux), CP1250 (Windows) lub inne, rzadziej spotykane strony kodowe. Przykladowo, jeeli dokument jest kodowany w standardzie ISO-8859-2 (Latin-2) pakiet inputenc naley dolczy do dokumentu nastpujco: \usepackage[latin2]{inputenc} W przypadku, gdy dokument jest kodowany w standardzie CP 1250, zamiast opcji latin2 powinnimy wpisa cp1250. Dodatkowo, w preambule dokumentu naley umieci polecenie dolczenia pakietu A fontenc z opcj T1, co spowoduje, e L TEX bdzie korzystal z 256 znakowych fontów EC. Fonty te zawieraj dobrej jakoci polskie znaki diakrytyczne. A Pozostal jeszcze do rozwizania problem zapoznania L TEX-a z polskimi regulami A dzielenia wyrazów. Jeeli poslugujemy si L TEX-em w rodowisku wielodostpnym, na przyklad na uczelni, to przypuszczalnie jest to ju zrobione przez administratora, ale jeeli rozpoczynamy prac na wlasnym komputerze, to musimy niezbdn adaptacj wykona sami. W tym celu naley odszuka plik o nazwie language.dat. W pliku tym znajduj si informacje o dostpnych w pakiecie wzorcach dzielenia wyrazów. Interesujcy nas fragment pliku wyglda mniej wicej tak: %norsk nohyph.tex %polish plhyph.tex %portuges pthyph.tex A Pierwszy wyraz to nazwa jzyka (któr potem posluguje si L TEX, np. jako argumentem polecenia \selectlanguage), drugi to nazwa pliku, w którym znajduj si reguly podzialu wyrazów dla tego jzyka. A Jeli chcemy dolczy do L TEX-a polskie wzorce przenoszenia, to powinnimy A usun znak procentu z linii zawierajcej slowo polish. Na ogól L TEX zna wzorce

Z notacj t wie si jednak dobrze znany problem: rodowisko tabbing zmienia lokalnie definicj kilku makr, w tym \'. Dlatego w jego obrbie do uzyskiwania znaków z akcentem acute trzeba uywa notacji typu \a'o. W konsekwencji zarówno w implementacji notacji prefiksowej, jak i ,,stron kodowych" pakietu inputenc do akcentu acute trzeba dostawa si nieco naokolo.

2

A 2.4 L TEX wielojzyczny

25

dzielenia dla maksimum 2­3 jzyków (przy wikszej liczbie jzyków spada szybko kompilacji a take mog wystpi problemy z brakiem pamici). Po wprowadzeniu zmian do pliku \language.dat powinnimy wbudowa wzorce A dla zaznaczonych w nim jzyków do L TEX-a, co w praktyce oznacza, e trzeba wygeneA X. Niestety niezbdne do tego czynnoci zale od konkretnej rowa nowy format L TE implementacji TEX-a. Omówimy tu, jak to wyglda w przypadku trzech popularnych dystrybucji: teTEX(Unix/Linux), web2c (Unix/Linux i Windows 9x/NT) oraz MikTEX (Windows 9x/NT). Naley wykona polecenie ,,initex latex.ltx". Jeeli wszystko pójdzie dobrze, to w katalogu biecym pojawi si plik z formatem o nazwie latex.fmt. Nastpnie musimy odnale w strukturze katalogów instalacji TEX-owej plik o tej samej nazwie i oryginalny zastpi wygenerowanym przez nas. Otwarcie naley przyzna, e z wielu powodów utworzenie nowego pliku latex.fmt moe si nie powie. Jeli zatem nie jestemy w stanie wybrn z klopotów sami, powinnimy poszuka pomocy u znajomego eksperta TEX-owego. A Podsumowujc: majc prawidlowo skonfigurowany pakiet babel, lcznie z L TEX-em znajcym polskie reguly dzielenia wyrazów, wystarczy umieci w preambule polecenia dolczajce pakiety babel, fontenc oraz inputenc i ten sposób otrzyma calkiem dobrze A spolonizowan wersj L TEX-a. Zamiast pakietu babel mona wykorzysta pakiet polski (wchodzcy w sklad zestawu polonizacyjnego platex). Zostal on opracowany w Polsce przez Mariusza Olko i Marcina Woliskiego. Jego niewtpliw zalet jest staranniejsza polonizacja. Problemem ­ z punktu widzenia pocztkujcego uytkownika ­ nieco trudniejsza instalacja. Dokumenty zapisane w notacji bezporedniej nie wymagaj modyfikacji, jeeli zamiast pakietu babel w preambule dolczymy polski-a. W porównaniu z pakietem babel pakiet platex jest bogatszy o kilka szczególów polonizacyjnych: · instrukcja \dywiz, opisana w punkcie 2.3.2, zapewnia poprawne przenoszenie wyrazów zloonych; · instrukcje \tg, \ctg, \tgh, \ctgh oraz \arc wstawiaj polskie symbole funkcji trygonometrycznych; · opcjonalna zmiana znaczenia standardowych polece \tan, \ctan w taki sposób, e wstawiaj one do skladu poprawne nazwy funkcji trygonometrycznych (nazwy te s róne od nazw angielskich); · polskie znaki wiksze-równe i mniejsze-równe3 . Ponadto pakiet polski pozwala na wykorzystanie fontów PL oraz umoliwia poslugiwanie si znakiem ,,/" (lub opcjonalnie innym znakiem) przy kodowaniu dokumentu za pomoc notacji prefiksowej, zwanej te ­ gdy uywa si znaku ,,/" ­ notacj ciachow. Pakiet polski dolczamy w preambule dokumentu poleceniem: \usepackage[opcje]{polski} Lista dostpnych opcji obejmuje: OT4 ­ wybranie kodowania OT4 fontów, co w praktyce oznacza sklad fontami PL; T1 ­ wybranie kodowania T1 fontów, co oznacza sklad fontami EC;

3 Wicej informacji na temat polece pakietu platex zwizanych ze skladem matematyki podajemy w rodziale 3.

26

Skladanie tekstu

OT1 ­ wybranie kodowania OT1 fontów, co oznacza sklad fontami CM (nie polecane); plmath ­ zmienia definicje znaków mniejszy-równy i wikszy-równy4; nomathsymbols ­ blokuje zmian znaczenia standardowych polece trygonometrycznych oraz relacji mniejszy-równy i wikszy-równy; MeX ­ tryb pelnej polonizacji, w praktyce skrót dla opcji OT4 + plmath. Jeeli nie wybrano adnej z opcji ukladu kodowania, to platex usiluje wlczy fonty PL, jeeli s one zainstalowane. Dotyczy to zarówno fontów tekstowych jak i tych zawierajcych znaki matematyczne. W instalacji zawierajcej fonty PL dolczenie pakietu bez opcji jest równowane: \usepackage[OT4,plmath]{polski} Polecenie \selecthyphenation pozwala przelczy si na dany zestaw wzorców dzielenia wyrazów. Jest to odpowiednik polecenia \selectlanguage w pakiecie babel. Argumentem jest nazwa jzyka, taka jak w pliku language.dat. Notacj ciachow, która domylnie jest wylczona, mona uaktywni poleceniem \prefixing. Polecenie to powinno wystpowa w preambule dokumentu dopiero po poleceniach dolczajcych pakiety. Wprowadzanie polskich znaków w sposób bezporedni wymaga dolczenia opisanego powyej pakietu inputenc. Instalowanie pakietu platex trzeba z reguly rozpocz od jego skopiowania w odA powiednie miejsce do naszej instalacji L TEX-owej poniewa w przeciwiestwie do paA kietu babel nie jest on dolczany do standardowej dystrybucji L TEX-a (by moe to si zmieni w przyszloci). Pakiet znajduje si w CTAN://tex-archive/language/ polish/platex-1.01.zip lub ftp://ftp.gust.org.pl/TeX/language/polish/ platex-1.01.zip. Miejsce, w które naley skopiowa pakiet, zaley od instalacji. Dla systemów teTEX, web2c i MikTEX bdzie to .../texmf/tex/latex/. Trzy kropki z przodu wskazuj, e katalog texmf/ nie musi si znajdowa w katalogu glównym, tylko raczej w jakim miejscu poloonym ,,niej" w strukturze katalogów. Po znalezieniu wlaciwego katalogu texmf/tex/latex/ tworzymy tam podkatalog, platex, i rozpakowujemy w nim zawarto pakietu. Nastpnie wydajemy polecenie: latex platex.ins Do uzyskania poprawnego przenoszenia polskich slów konieczne jest wygenerowanie A nowego formatu L TEX-a. W tym celu naley usun (lub zmieni nazwy, tak aby A zostaly pominite przez L TEX-a) oryginalne pliki hyphen.cfg, language.dat. Ponadto w wielu starszych instalacjach plik hyphen.tex jest podmieniony ,,pod" potrzeby babel-a i nie zawiera angielskich wzorców podzialu. W tym przypadku trzeba zastpi plik hyphen.tex ,,prawdziwym" plikiem z angielskimi regulami dzielenia. Nastpnie z linii polece piszemy: initex latex.ltx Z tak powstalym plikiem latex.fmt postpujemy tak samo, jak przy tworzeniu nowego A L TEX-a dla pakietu babel.

W systemie musz by zainstalowane fonty PL. S one dostpne w CTAN://tex-archive/ language/polish/pl-mf.zip. Opcjonalnie mona take skopiowa pliki metryczne tych fontów. S one dostpne w CTAN://tex-archive/language/polish/pl-tfm.zip. Pliki metryczne fontów, w przypadku wykorzystywania nowych instalacji TEX-a typu teTEX, web2c czy MikTEX nie s konieczne, gdy jeeli ich nie ma, s tworzone automatycznie. Nie bdziemy omawia szczególowo instalacji fontów PL, gdy sposób jej przeprowadzenia zaley mocno od konkretnej dystrybucji.

4

2.5 Odstpy midzy wyrazami

27

2.5

Odstpy midzy wyrazami

A Aby wyrówna prawy margines, L TEX wstawia pomidzy slowa odstpy rónej wielkoci. Odstp wstawiany na kocu zdania jest troch wikszy, A poniewa tak sklada si ksiki w krajach anglosaskich. L TEX zaklada, e zdania mog si koczy kropk, znakiem zapytania lub wykrzyknikiem. A Jeeli bezporednio przed kropk znajduje si dua litera, to L TEX nie traktuje tego miejsca jako koca zdania, lecz jako kropk po skrócie. Wyjtki od wymienionych wyej zasad musz by jasno zaznaczone w tekcie. W-tyl-ciach ,,\" poprzedzajcy spacj oznacza odstp normalnej A wielkoci. Tylda ~ wstawia normalny odstp, na którym L TEX nie moe zlama wiersza. Instrukcja \@ wstawia wikszy odstp, taki jakim koczy si zdania.

Mr.~Smith was happy to see her\\ cf.~Fig.~5\\ I like BASIC\@. What about you?

Mr. Smith was happy to see her cf. Fig. 5 I like BASIC. What about you?

Jak wspomniano, wstawianie wikszych odstpów na kocu zda to zwyczaj anglosaski. W kontynentalnej Europie tradycyjnie si tego nie robi. Wstawianie wikszych odstpów na kocu zda mona (naley) wylczy, wykonujc instrukcj:

\frenchspacing

Pakiet polski domylnie wykonuje instrukcj \frenchspacing za nas ­ wystarczy go dolczy.

2.6

Tytuly, ródtytuly i punkty

Podzielenie dokumentu na rozdzialy, podrozdzialy, punkty itd. pomaga czytelnikom lepiej orientowa si w tekcie. Do dzielenia dokumentu na hieA rarchiczne czci slu odpowiednie polecenia L TEX-owe. Do autora naley wykorzystanie tych polece w odpowiednim porzdku. W klasie article mamy do dyspozycji nastpujce instrukcje podzialu hierarchicznego: \section{...} \subsection{...} \subsubsection{...} \part{...} \paragraph{...} \subparagraph{...} \appendix \chapter{...}

W klasie report i book mona uy dwóch dodatkowych instrukcji:

28

Skladanie tekstu

Poniewa w klasie article najwysz jednostk w hierarchii podzialu jest \section (czyli punkt), latwo tworzy si ksiki (klasa book), w których A rozdzialami s poszczególne artykuly. L TEX dobierze za nas odpowiednie odstpy midzy rozdzialami oraz wielko i krój pisma w ródtytulach. Dwie z wymienionych instrukcji dzialaj nieco inaczej ni pozostale: · Instrukcja \part nie ma wplywu na numeracj rozdzialów. · Instrukcja \appendix nie posiada argumentów. Jest to deklaracja zmieniajca z cyfr na litery sposób numerowania rozdzialów (w klasach book i report) lub punktów (w klasie article). A Argumentu instrukcji podzialu dokumentu L TEX uywa do przygotowania spisu treci. Instrukcja:

\tableofcontents

wstawia spis treci w miejscu, w którym jej uyjemy. Aby w spisie treci otrzyma prawidlowe numery stron, dokument trzeba przetworzy (,,zlatechowa") dwukrotnie. Czasami niezbdna jest nawet trzecia kompilacja. A Kiedy pod koniec przetwarzania dokumentu L TEX wywietli komunikat: LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right. oznacza to, e niezbdna jest kolejna kompilacja.

A L TEX przetwarza dokument strona po stronie i w pojedynczym przebiegu nie moe wstawi spisu treci na pocztku dokumentu, poniewa nie jest jeszcze znana jego tre ani numeracja stron. Podobnie ma si sprawa ze spisami tabel czy rysunków. Rozwizanie tego problemu jest tyle proste, co skuteczne. Podczas przetwarzania dokumentu A L TEX zapisuje odpowiednie informacje do plików pomocniczych. Przeznaczenie danego pliku pomocniczego jest zasygnalizowane w rozszerzeniu nazwy. I tak: plik o rozszerzeniu .toc zawiera spis treci, plik .lot ­ spis tabel, plik .lof ­ spis rysunków, plik .aux ­ informacje o odsylaczach wewntrz dokumentu (odsylacze omawiamy w podA rozdziale 2.7). Informacje wprowadzone do plików pomocniczych L TEX wykorzystuje podczas kolejnych przebiegów.

Wymienione wyej instrukcje podzialu hierarchicznego posiadaj take wersje ,,z gwiazdk". Nazwa instrukcji w wersji ,,z gwiazdk" sklada si z ,,normalnej" nazwy, po której wystpuje znak ,,*". W wyniku dzialania takiej instrukcji, tytul rozdzialu lub podrozdzialu zostanie umieszczony w dokumencie, ale nie w spisie treci; tytul nie jest te objty numeracj. Przykladowo wersj ,,z gwiazdk" instrukcji \section{Help} jest \section*{Help}. Najczciej hasla w spisie treci s identyczne z odpowiadajcymi im tytulami rozdzialów czy punktów. Czasami jednak nie jest to podane, poniewa na przyklad tekst hasla jest zbyt dlugi. W takich wypadkach haslo do spisu treci mona poda jako opcjonalny argument instrukcji podzialu hierarchicznego, np:

2.7 Odsylacze

29

\chapter[Krótki i~ekscytujcy rozdzial]{To jest bardzo dlugi i~wyjtkowo nudny rozdzial} W wyniku wykonania tej instrukcji w spisie treci pojawi si ,,Krótki i ekscytujcy rozdzial", natomiast w tytule rozdzialu ,,To jest bardzo dlugi i wyjtkowo nudny rozdzial". A L TEX sklada stron tytulow w wyniku wykonania instrukcji:

\maketitle

która, powinna by umieszczona po \begin{document}. Zawarto strony tytulowej ustalaj polecenia:

\title{...}, \author{...} oraz opcjonalnie \date{...}

Naley je umieci w preambule. Jeeli dokument ma kilku autorów, to ich nazwiska i imiona rozdzielamy instrukcj \and. Rysunek 1.3 (s. 8) ilustruje sposób wykorzystania powyszych instrukcji. A W L TEX 2 istniej ponadto trzy instrukcje okrelajce struktur dokumentu, dostpne wylcznie w klasie book, a mianowicie:

\frontmatter, \mainmatter oraz \backmatter S one uyteczne do podzialu ksiki na cz wstpn (obejmujc tytulatur, spisy treci, tabel itp., wstpy itd.), glówn i zakoczenie (zalczniki, skorowidze, kolofon itd). W czci wstpnej tytuly rozdzialów s skladane mniejszym stopniem pisma (czego naley oczekiwa), a numery stron w notacji rzymskiej (co raczej odbiega od polskich zwyczajów typograficznych).

2.7

Odsylacze

Ksiki, raporty i artykuly zawieraj czsto odniesienia do rysunków, tabel A i innych fragmentów tekstu. Do wstawiania odsylaczy L TEX udostpnia nastpujce trzy instrukcje:

\label{etykieta}, \ref{etykieta} i \pageref{etykieta}

Argument etykieta jest cigiem liter, cyfr lub znaków interpunkcyjnych. A Nazwy etykiet ustala sam uytkownik. L TEX zamienia \ref{etykieta} na numer tego rozdzialu, punktu, rysunku, tabeli czy te równania matematycznego, bezporednio za którym umieszczona zostala instrukcja \label zawierajca identyczn etykiet. Instrukcja \pageref{etykieta} dziala identycznie jak \ref, z tym e wstawia numer strony, na której znajduje si element oznaczony etykiet5 .

5 Zwrómy uwag, e te instrukcje ,,nie wiedz", do czego tak naprawd si odnosz. Zadaniem instrukcji \label jest przechowanie wygenerowanej automatycznie liczby.

30

Skladanie tekstu

Podobnie jak w przypadku spisów treci, tabel czy rysunków potrzebne s co najmniej dwie, a z reguly trzy, kompilacje dokumentu do prawidloA wego wstawienia numerów odsylaczy. Podczas pierwszej L TEX wysyla do pliku pomocniczego (z rozszerzeniem .aux) informacje o odsylaczach, które wykorzystuje podczas kolejnych kompilacji.

Odsylacz do tego punktu \label{sec:this} wyglda tak: ,,patrz punkt~\ref{sec:this} na stronie~\pageref{sec:this}.'' Odsylacz do tego punktu wyglda tak: ,,patrz punkt 2.7 na stronie 30."

2.8

Przypisy

Do skladania przypisów u dolu strony sluy instrukcja:

\footnote{tekst przypisu}

Instrukcj naley wstawi bezporednio po slowie lub zdaniu, do którego si odnosi6 .

A L TEX numeruje przypisy automatycznie. Sposób ich numerowania zaley od wykorzystywanej klasy. W klasie article numeracja jest cigla, a w klasach report i book przypisy s numerowane w ramach rozdzialów.

Przypisy\footnote{To jest wlanie przypis.} s czsto wykorzystywane przez uytkowników \LaTeX-a

Przypisya s czsto wykorzystywane przez A uytkowników L TEX-a

a

To jest wlanie przypis.

2.9

Wyrónienia

W tekstach pisanych na maszynie fragmenty tekstu, które maj zosta wyrónione, podkrela si. W dokumentach drukowanych wyrónianie fragmentów odbywa si przez skladanie ich kursyw. Sluy do tego instrukcja:

\emph{text }

Argumentem tej instrukcji jest tekst, który ma zosta wyróniony.

\emph{\emph{Wyrónienia} w~tekcie ju wyrónionym s skladane \emph{zwyklym} krojem pisma.}

6

Wyrónienia w tekcie ju wyrónionym s skladane zwyklym krojem pisma.

W krajach anglosaskich przypisy odnoszce si do calego zdania lub jego czci umieszcza si natychmiast po kropce lub przecinku. W Polsce najczciej umieszcza si je przed znakiem przestankowym (zasad t stosujemy w niniejszym wprowadzeniu).

2.10 rodowiska

31

Zwrómy uwag, e istnieje rónica midzy wyrónieniem czci tekstu a zloeniem go inn czcionk:

\textit{Mona \emph{wyróni} tekst, skladajc go kursyw,} \textsf{czcionk \emph{szeryfow},} \texttt{a nawet \emph{maszynowo}.} Mona wyróni tekst, skladajc go kursyw, czcionk szeryfow, a nawet maszynowo.

2.10

rodowiska

Wiele instrukcji to rodowiska, majce posta:

\begin{nazwa} tekst \end{nazwa}

gdzie nazwa jest nazw rodowiska. rodowiska mona zagnieda jedne w drugich: \begin{aaa}...\begin{bbb}...\end{bbb}...\end{aaa} Niedopuszczalnie jest natomiast ,,przeplatanie" rodowisk: \begin{aaa}...\begin{bbb}...\end{aaa}...\end{bbb}

Wiele polece mona zapisa w formie ,,rodowiskowej". W takich wypadkach nazwa polecenia (bez w tyl-ciacha) jest nazw rodowiska. Przykladowo zamiast polecenia \em, które sluy do wlczenia wyrónionego kroju pisma, moemy wykorzysta rodowisko \begin{em}...\end{em}.

W kolejnych punktach przedstawiamy czciej wykorzystywane rodowiska.

2.10.1

rodowiska itemize, enumerate i description

rodowiska itemize oraz description slu do tworzenia wyszczególnie, za enumerate do tworzenia wylicze. W kadym z nich element wyliczenia zaczyna si instrukcj \item.

\begin{enumerate} \item Taka lista: \begin{itemize} \item wyglda \item[--] miesznie. \end{itemize} \item Pamitaj: \begin{description} \item[Glupoty] nie staj si mdrociami, gdy si je wyliczy. \item[Mdroci] mona elegancko zestawia w~wyliczeniach. \end{description} \end{enumerate} 1. Taka lista: · wyglda ­ miesznie. 2. Pamitaj: Glupoty nie staj si mdrociami, gdy si je wyliczy. Mdroci mona elegancko zestawia w wyliczeniach.

32

Skladanie tekstu

2.10.2

rodowiska flushleft, flushright i center

rodowiska flushleft i flushright skladaj akapity wyrównane, odpowiednio, do lewego lub prawego marginesu. Wewntrz rodowiska center A kady wiersz akapitu jest wyrodkowany w osi szpalty. Tak jak zawsze, LTEX dzieli akapity na wiersze automatycznie, w obrbie powyszych rodowisk mona jednak poleceniem \\ wymusi zmian wiersza.

\begin{flushleft} To jest tekst\\ wyrównany do lewej. {\LaTeX} nie sklada tu wierszy o~jednakowej dlugoci. \end{flushleft} \begin{flushright} To jest tekst\\ wyrównany do prawej. {\LaTeX} nie sklada tu wierszy\\ z~zachowaniem jednakowej dlugoci. \end{flushright} \begin{center} To jest tekst\\wyrodkowany. \end{center} To jest tekst A wyrównany do lewej. L TEX nie sklada tu wierszy o jednakowej dlugoci.

To jest tekst A wyrównany do prawej. L TEX nie sklada tu wierszy z zachowaniem jednakowej dlugoci.

To jest tekst wyrodkowany.

2.10.3

rodowiska quote, quotation i verse

rodowisko quote nadaje si do skladania cytatów oraz przykladów.

Jeeli chodzi o~dlugoci wiersza, regul kciuka jest, e: \begin{quote} Przecitnie wiersz nie powinien zawiera wicej ni 66 znaków. Dlatego w~\LaTeX-u standardowe strony maj szerokie marginesy. \end{quote} Dlatego te w~gazetach stosuje si druk wieloszpaltowy. Jeeli chodzi o dlugoci wiersza, regul kciuka jest, e: Przecitnie wiersz nie powinien zawiera wicej ni 66 znaków. A Dlatego w L TEX-u standardowe strony maj szerokie marginesy. Dlatego te w gazetach stosuje si druk wieloszpaltowy.

Istniej ponadto dwa rodowiska o podobnym zastosowaniu: quotation oraz verse. rodowisko quotation jest przydatne do formatowania cytatów dluszych ni jeden akapit. W przeciwiestwie do rodowiska quote, wewntrz A rodowiska quotation L TEX rozpoczyna poszczególne akapity od wcicia akapitowego. rodowisko verse sluy do skladania wierszy. Poszczególne linijki w zwrotkach naley koczy instrukcj \\ za poszczególne zwrotki oddziela pust lini.

2.10 rodowiska

33

Na pami znam tylko jeden angielski wiersz. Ten o~Humptym Dumptym. \begin{flushleft} \begin{verse} Humpty Dumpty sat on a wall:\\ Humpty Dumpty had a great fall.\\ All the King's horses and all the King's men\\ Couldn't put Humpty together again. \end{verse} \end{flushleft}

Na pami znam tylko jeden angielski wiersz. Ten o Humptym Dumptym. Humpty Dumpty sat on a wall: Humpty Dumpty had a great fall. All the King's horses and all the King's men Couldn't put Humpty together again.

2.10.4

Symulacja maszynopisu

A Tekst pomidzy \begin{verbatim} oraz \end{verbatim} L TEX sklada doslownie, tak aby wygldal jak napisany na maszynie, z zachowaniem zmian wiersza i odstpów.

Aby uzyska ten efekt krój pisma zmienia si na imitujcy pismo maszynowe (grotesk). Kady znak w tym kroju, wlczajc w to spacj, jest jednakowej szerokoci. Koniec linii wewntrz rodowiska verbatim powoduje rozpoczcie nowego wiersza na wydruku a kada spacja zamienia si na odstp. Wewntrz rodowiska verbatim instrukcje nie s wykonywane.

Wewntrz akapitów imitacj maszynopisu uzyskuje si za pomoc instrukcji:

\verb+tekst +

Znak + ogranicza tu tekst, który ma zosta wydrukowany doslownie. Zamiast + mona uy innego znaku, byle to nie byla litera, gwiazdka ani spacja. Instrukcj \verb wykorzystujemy czsto w tej ksice do skladania A przykladów L TEX-owych.

Rozwamy przyklad\ldots \begin{verbatim} { for (i=1;i<=NF;i++) {l[$i]++; } END {for (i in l) {print l[i]} \end{verbatim} Rozwamy przyklad . . . { for (i=1;i<=NF;i++) {l[$i]++; } END {for (i in l) {print l[i]}

rodowiska verbatim oraz instrukcja \verb maj take wersje ,,z gwiazdk", w których spacja w pliku ródlowym jest zamieniana na znak . Jest to jedyna rónica w dzialaniu w porównaniu do wersji bezgwiazdkowych:

34

Skladanie tekstu

\begin{verbatim*} gwiazdkowa wersja rodowiska verbatim wyrónia spacje w tekcie \end{verbatim*}

gwiazdkowa wersja rodowiska verbatim wyrónia spacje w tekcie

rodowiska verbatim oraz instrukcji \verb nie wolno uywa wewntrz argumentów innych instrukcji.

2.10.5

rodowisko tabular

A Do skladania tabel sluy rodowisko tabular. L TEX automatycznie ustala w nich szeroko poszczególnych rubryk. rodowisko ma jeden parametr obowizkowy, okrelajcy liczb kolumn tabeli i sposób ich justowania:

\begin{tabular}{spec-kolumn}

Dla kadej kolumny naley w argumencie wstawi jedn z liter: l, r lub c, okrelajc w ten sposób justowanie zawartoci kolumny. Dosunicie zawartoci kolumny do lewej oznaczamy liter l, do prawej ­ znakiem r, a wyrodkowanie ­ znakiem c. Zapisu p{szer-kolumn} mona uy do zaznaczenia, e kolumna ma mie szeroko szer-kolumn. Wewntrz takiej kolumny tekst jest skladany w prostokt o zadanej szerokoci, z wyrównywaniem obu marginesów. Znak | oznacza, e kolumny maj zosta rozdzielone pionow kresk. Wewntrz rodowiska tabular poszczególne wiersze oddzielamy instrukcj \\, a rubryki w wierszu znakiem &. Instrukcja \hline wstawia poziom lini na cal szeroko tabeli.

\begin{tabular}{|r|l|} \hline 7C0 & heksadecymalnie \\ 3700 & oktalnie \\ 11111000000 & binarnie \\ \hline \hline 1984 & dziesitnie \\ \hline \end{tabular} \begin{tabular}{|p{4.7cm}|} \hline Ten akapit jest wewntrz pudelka. Mamy nadziej, e uzyskany efekt si podoba.\\ \hline \end{tabular} 7C0 3700 11111000000 1984 heksadecymalnie oktalnie binarnie dziesitnie

Ten akapit jest wewntrz pudelka. Mamy nadziej, e uzyskany efekt si podoba.

Instrukcj @{...} okrelamy odstp midzy kolumnami. Instrukcja ta usuwa domylny odstp midzykolumnowy, zastpujc go tym, jaki wyspecyfikowano wewntrz {...}. Stosuje si j czsto do wyrównywania zestawie

2.11 Wstawki

35

liczbowych wedlug cyfr znaczcych. Mona j take wykorzysta do usunicia odstpów w pierwszej i ostatniej kolumnie tabeli, co ilustruje poniszy przyklad.

\begin{tabular}{@{} l @{}} \hline bez odstpów na brzegach\\ \hline \end{tabular} \begin{tabular}{l} \hline odstpy na brzegach tabeli\\ \hline \end{tabular} bez odstpów na brzegach

odstpy na brzegach tabeli

A W L TEX-u nie ma mechanizmu pozwalajcego wyrównywa zestawienia liczbowe wedlug cyfr znaczcych7 , ale efekt ten mona osign, skladajc liczb w dwóch kolumnach: cz calkowit w kolumnie wyrównywanej do prawego brzegu oraz cz dziesitn w kolumnie wyrównanej do lewego. Za pomoc instrukcji @{,} zastpujemy przecinkiem odstp normalnie wstawiany midzy kolumnami. Trzeba jednak pamita o koniecznoci wpisywania znaku & zamiast przecinków w liczbach. Rubryki rozcigajce si na kilka kolumn ­ jak naglówek w poniszym przykladzie ­ tworzymy poslugujc si poleceniem \multicolumn.

\begin{tabular}{c r @{,} l} Wyraenie & \multicolumn{2}{c}{Warto}\\\hline $\pi$ & 3&1416 \\ $\pi^{\pi}$ & 36&46 \\ $(\pi^{\pi})^{\pi}$ & 80662&7 \\ \end{tabular}

Wyraenie ( )

Warto 3,1416 36,46 80662,7

2.11

Wstawki

Wspólczesne publikacje zawieraj duo rysunków i tabel. Elementów tych nie naley dzieli midzy strony i dlatego wymagaj specjalnego potraktowania. W sytuacjach, gdy nie mieszcz si one na biecej stronie, na ogól przenosi si je i wstawia na pocztku strony nastpnej. W przypadku przeniesienia rysunku lub tablicy, pozostale miejsce na stronie wypelnia si tekstem. Tego typu elementy bdziemy nazywa wstawkami . A Aby w pelni skorzysta z L TEX-owego mechanizmu wstawek, trzeba choA ciaby powierzchownie zrozumie, jak L TEX manipuluje takimi obiektami. W przeciwnym wypadku wstawki mog si sta ródlem irytacji, poniewa A L TEX bdzie je umieszczal wszdzie, tylko nie w miejscach, w którym bymy sobie tego yczyli.

7 Do wyrównywania cyfr mona skorzysta z moliwoci pakietu dcolumn z zestawu pakietów ,,tools".

36

Skladanie tekstu

Tabela 2.2: Opcjonalny argument rodowisk table i figure Znak h t b p ! Dopuszczalne miejsce umieszczenia wstawki bez przemieszczenia, dokladnie w miejscu uycia (uyteczne w odniesieniu do niewielkich wstawek); na górze strony; na dole strony; na stronie zawierajcej wylcznie wstawki; ignorujc wikszo parametrów kontrolujcych umieszczanie wstaweka , przekroczenie wartoci, których moe nie pozwoli na umieszczanie nastpnych wstawek na stronie.

a S to takie parametry, jak na przyklad maksymalna dopuszczalna liczba wstawek na stronie.

A Do tworzenia wstawek mamy w L TEX-u dwa rodowiska. rodowisko figure sluy do tworzenia rysunków, a rodowisko table ­ do tablic. Oba maj jeden parametr opcjonalny:

\begin{figure}[miejsce] albo \begin{table}[miejsce]

Argument miejsce okrela, gdzie na stronie mona umieci wstawk. Jest to sekwencja od jednego do piciu znaków: h, t, b, p oraz !. Kady znak okrela dopuszczalny sposób umieszczenia wstawki; szczególowe informacje zestawiono w tabeli 2.2. Przykladowa tabela moe zaczyna si tak: \begin{table}[!hbp] Argument [!hbp] oznacza, e tabel mona umieci w miejscu, w którym pojawia si w pliku ródlowym (h) albo na dole strony (b), albo wreszcie na osobnej stronie zawierajcej wylcznie wstawki (p). Ponadto wstawienie A ,,!" oznacza, e L TEX ma pomin wikszo parametrów kontrolujcych umieszczanie wstawek. Jeeli instrukcji \table uyto bez opcjonalnego argumentu, to jego domylnymi wartociami s [tbp]. A L TEX umieszcza kad wstawk zgodnie ze specyfikacj autora. Jeeli wstawki nie mona umieci na biecej stronie, to dolcza si j albo do kolejki rysunków, albo do kolejki tabel 8 . Po rozpoczciu skladania nowej A strony L TEX sprawdza, czy mona zapelni cal stron wstawkami czekajcymi w kolejce; gdy nie jest to moliwe, pierwsz wstawk z kadej kolejki A traktuje w taki sposób, jak gdyby wlanie pojawila si w tekcie: L TEX stara si j umieci zgodnie z wartociami parametru miejsce (za wyjtkiem h, gdy nie jest to ju oczywicie moliwe). Nowe wstawki s odpowiednio doA lczane do kolejek. L TEX dba o wlaciwy porzdek wstawek kadego typu.

8

S to kolejki typu FIFO (pierwsze weszlo ­ pierwsze wyszlo).

2.11 Wstawki

37

W konsekwencji pojedynczy rysunek, którego z jaki wzgldów nie mona poprawnie wstawi ,,cignie" za sob wszystkie inne rysunki a na koniec dokumentu. Dlatego:

A Jeeli L TEX nie umieszcza wstawek zgodnie z oczekiwaniami, z reguly jest to spowodowane jedn wstawk blokujc kolejk, a by moe nawet wszystkie kolejki wstawek.

Wyjaniwszy troch zloony problem umieszczania wstawek, przejdmy do omówienia kilku pozostalych rzeczy z nimi zwizanych. Za pomoc instrukcji:

\caption{tekst }

wstawiamy tytul rysunku lub tabeli. Kolejny numer rysunku/tabeli oraz slowo ,,Rysunek" i ,,Tabela" (lub ,,Tablica" ­ w zalenoci od tego, z jakiego pakietu polonizacyjnego korzystamy) zostan wstawione automatycznie. Nastpujce instrukcje:

\listoffigures oraz \listoftables

dzialaj w sposób analogiczny do instrukcji \tableofcontents, wstawiajc do dokumentu odpowiednio spis rysunków oraz spis tabel. Poszczególnymi pozycjami w tych spisach bd tytuly rysunków bd tabel, podane jako argumenty instrukcji \caption. Jeeli tytuly s dlugie, to do spisu mona przesla ich wersje skrócone, umieszczajc je jako opcjonalny argument instrukcji \caption: \caption[Short]{LLLLLoooooonnnnnggggg} Odsylacze do tabel i rysunków naley tworzy za pomoc instrukcji \label oraz \ref.

Polecenie \label naley umieszcza bezporednio za instrukcj \caption. Dobrym pomyslem jest te umieszczenie jej wewntrz argumentu instrukcji \caption (na przyklad na kocu tytulu rysunku czy tabeli). Niektórzy uytkownicy bldnie sdz, e wystarczy umieci instrukcj label wewntrz rodowiska figure czy table, gdy tymczasem umieszczenie jej przed poleceniem \caption spowoduje bldy w numerach odsylaczy.

W kolejnym przykladzie wstawka zawiera prostokt o wymiarach 5 cm × 5 cm. Ten sposób postpowania mona wykorzysta w celu zarezerwowania miejsca na rysunki, które zostan wklejone póniej ­ do gotowego, wydrukowanego dokumentu. Rysunek~\ref{white} jest przykladem Pop-Artu. \begin{figure}[!hbp] \makebox[\textwidth]{\framebox[5cm]{\rule{0pt}{5cm}}} \caption{Pi na pi centymetrów\label{white} } \end{figure}

38

Skladanie tekstu

A W powyszym przykladzie9 L TEX najpierw spróbuje umieci rysunek bez przesuwania go dokdkolwiek (h). Jeeli okae si to niemoliwe, spróbuje umieci go na dole strony (b). Jeeli i to okae si niewykonalne, bdzie si staral umieci rysunek na stronie zawierajcej wylcznie wstawki (p). Jeeli w kolejkach rysunków i tabel nie ma wstawek pozwalajcych wypelni stron A L TEX rozpocznie now stron i spróbuje umieci na niej rysunek traktujc go znowu tak, jakby wlanie pojawil si w tekcie. Czasami moe okaza si niezbdne wykonanie instrukcji:

\clearpage albo nawet \cleardoublepage

A W wyniku jej zadzialania L TEX umieszcza w dokumencie wszystkie oczekujce w kolejkach wstawki, a nastpnie rozpoczyna sklad od nowej strony. A W przypadku uycia instrukcji \cleardoublepage L TEX rozpoczyna od stronie nieparzystej. W dalszej czci tego wprowadzenia przedstawimy, jak mona dolcza A do L TEX-owego dokumentu rysunki w formacie PostScript (por. 4.1).

2.12

Listy

Do pisania listów mona wykorzysta klas letter. Struktura pliku ródlowego w przypadku listów oczywicie róni si od dokumentów z klasy article czy book. Klas letter zaprojektowano tak, e bezproblemowo moemy napisa pojedynczy list do przyslowiowej ,,cioci", jak i setki listów do rónych osób (korespondencja seryjna). Jeli imi, nazwisko i adres nadawcy maj by identyczne we wszystkich listach, to deklarujemy je za pomoc polecenia (instrukcja \\ oznacza zlamanie wiersza): \address{imi\\nazwisko\\ adres . . . } Polecenie \signature sluy do zadeklarowania podpisu pod listem. Wewntrz argumentu polecenia \signature instrukcja \\ sluy do rozpoczcia nowego wiersza, przykladowo: Dyr. E.~K.~Tor,\\ Przewodniczcy Zastpcy Dyr. E. K. Tor, Przewodniczcy Zastpcy

Data jest wstawiana automatycznie. Jeeli chcemy wstawi inn, naley zastosowa deklaracj \date: \date{16 Czerwca 1963~r.} Deklaracje \address, \signature oraz \date zwykle umieszcza si w preambule, ale mog take wystpi w czci zasadniczej pliku ródlowego. Tre listu powinnimy wpisa wewntrz rodowiska letter. rodowisko to ma jeden argument, którym jest adres osoby, do której piszemy. Wewntrz rodowiska letter mona skorzysta z kilku prostych polece slucych do umieszczania w odpowiednim

9

Zakladajc, e kolejka rysunków jest pusta.

2.12 Listy miejscu elementów typowego listu10 . Do zloenia naglówka listu wykorzystujemy polecenie \opening, a do zakoczenia listu ­ polecenie \closing. Ponadto s jeszcze polecenia \ps, do wstawienia post scriptum, oraz \cc, które sluy do zdefiniowania wykazu osób, które dostan kopi listu. Oto pelny przyklad listu: \documentclass{letter} \usepackage{polski} \usepackage[latin2]{inputenc} \address{Dyr. E.~K.~Tor,\\ Przewodniczcy Zastpcy\\ Firma z~o.o.\\ w/m} \signature{E.~.K.~Thor} \begin{document} % pierwszy list \begin{letter}{Henryk Potrykus\\ul.~Krótka\\Puck} \opening{Szanowny Panie} Z~przykroci zawiadamiam, e paskie podanie zostalo... \closing{Z~powaaniem} \cc{cc: Józef Wujke} \end{letter} % drugi list \begin{letter}{Zofia Potrykus\\ul.~Szkolna\\Reda} \opening{Szanowa Pani} W~odpowiedzi na pani pismo... ... \end{letter} \end{document}

39

10 Elementy nietypowe zawsze mona umieci, korzystajc z innych polece poznanych w tym rozdziale.

Rozdzial 3

Wyraenia matematyczne

Nareszcie! W tym rozdziale poznasz najlepsz stron TEX-a, czyli sklad wzorów matematycznych. Ostrzegamy jednak, e przedstawimy tu tylko absolutne podstawy. Chocia wikszoci uytkowników one wystarczaj, nie zalamuj rk, jeeli nie poradzisz sobie z jakim skomplikowanym wzorem, tylko raczej zapoznaj si A z moliwociami pakietu AMS-L TEX1 lub innego specjalizowanego pakietu.

3.1

Wstp

A Do skladu wyrae matematycznych mamy w L TEX-u specjalny tryb matematyczny. Oznacza to wpisywanie wzorów pomidzy \( i \) albo $ i $, albo pomidzy \begin{math} oraz \end{math}.

$a$ do kwadratu plus~$b$ do kwadratu równa si~$c$ do kwadratu. Albo, stosujc bardziej matematyczne podejcie, $c^{2}=a^{2}+b^{2}$. {\TeX} naley wymawia jako $\tau\epsilon\chi$.\\[6pt] 100~m$^{3}$ wody \\[6pt] To plynie z~mojego~$\heartsuit$

a do kwadratu plus b do kwadratu równa si c do kwadratu. Albo, stosujc bardziej matematyczne podejcie, c2 = a2 + b2 .

TEX naley wymawia jako . 100 m3 wody To plynie z mojego

Skladajc wiksze wzory, powinnimy je eksponowa, to znaczy wstawia midzy akapitami w osobnym wierszu. Takie wzory umieszcza si albo pomidzy \[ i \], albo wewntrz rodowiska displaymath. Ta ostatnia konstrukcja dotyczy tworzenia wzorów bez adnej numeracji. Do automatycznego numerowania wzorów stosujemy natomiast rodowisko equation.

1

CTAN://tex-archive/macros/latex/packages/amslatex.

3.1 Wstp

41

$a$ do kwadratu plus~$b$ do kwadratu równa si~$c$ do kwadratu. Albo, bardziej matematycznie, \begin{displaymath} c^{2}=a^{2}+b^{2} \end{displaymath} Pierwszy wiersz w~drugim akapicie.

a do kwadratu plus b do kwadratu równa si c do kwadratu. Albo, bardziej matematycznie, c2 = a 2 + b 2 Pierwszy wiersz w drugim akapicie.

Instrukcje \label oraz \ref slu do tworzenia odsylaczy do równa.

\begin{equation} \epsilon > 0 \label{eq:eps} \end{equation} Ze wzoru (\ref{eq:eps}) otrzymujemy \ldots

>0 Ze wzoru (3.1) otrzymujemy . . .

(3.1)

Zwrómy uwag, e inaczej sklada si wzory wewntrz akapitu, a inaczej eksponowane:

$\lim_{n \to \infty} \sum_{k=1}^n \frac{1}{k^2} = \frac{\pi^2}{6}$ \begin{displaymath} \lim_{n \to \infty} \sum_{k=1}^n \frac{1}{k^2} = \frac{\pi^2}{6} \end{displaymath} limn

n 1 k=1 k2

=

2 6

n n

lim

k=1

2 1 = k2 6

A Midzy trybem matematycznym L TEX-a a trybem tekstowym istniej due rónice. Na przyklad w trybie matematycznym: A 1. L TEX ignoruje prawie wszystkie odstpy oraz znaki koca linii; wszystkie odstpy we wzorach wynikaj albo z kontekstu albo z uycia specjalnych polece, takich jak \,, \quad lub \qquad. 2. Puste linie s niedozwolone. Obowizuje zasada: jeden wzór ­ jeden akapit. 3. Litery we wzorach slu do oznaczania nazw zmiennych; zmienne skladamy inaczej ni zwykly tekst. Jeeli czci wzoru jest zwykly tekst, to naley posluy si instrukcj \textrm{...}.

\begin{equation} \forall x \in \mathbf{R}\colon \qquad x^{2} \geq 0 \end{equation} \begin{equation} x^{2} \geq 0\qquad \textrm{dla kadego }x\in\mathbf{R} \end{equation} x2

x R :

x2

0

(3.2)

0

dla kadego x R

(3.3)

42

Wyraenia matematyczne

Matematycy potrafi by niezwykle staranni w doborze odpowiednich symboli. Na przyklad we wzorach, w których wystpuj oznaczenia zbiorów (jak powyszy), czsto stosuje si krój, w którym te oznaczenia przypominaj odmian ,,grub", pisan kred na tablicy (A, B, C . . . ). Symbole takie wstawiamy do wzoru poleceniem \mathbb z pakietu amsfonts lub amssymb. Ostatni przyklad wyglda wtedy nastpujco:

\begin{displaymath} x^{2} \geq 0\qquad \textrm{dla kadego }x\in\mathbb{R} \end{displaymath} dla kadego x R

x2

0

3.2

Grupowanie

Wikszo instrukcji skladu matematyki dotyczy tylko jednego, nastpujcego po instrukcji znaku. Jeeli polecenie ma dotyczy grupy znaków, to naley je umieci wewntrz pary nawiasów klamrowych {...}.

\begin{equation} a^x+y \neq a^{x+y} \end{equation} ax + y = ax+y

(3.4)

3.3

Czci skladowe wyrae matematycznych

W tym podrozdziale opiszemy waniejsze instrukcje do skladu wyrae. Zestawienie wszystkich dostpnych symboli i znaków podajemy w punkcie 3.9 na stronie 51. Male litery alfabetu greckiego wprowadzamy, uywajc instrukcji typu: \alpha, \beta, \gamma itd., a due2 : \Delta, \Gamma, itd.

$\lambda,\xi,\pi,\mu,\Phi,\Omega$ , , , µ, ,

Indeksy górne i wykladniki otrzymujemy za pomoc znaku ^, a dolne stosujc _.

$a_{1} x^{2} e^{-\alpha t} a^{3}_{ij} e^{x^2} \neq {e^x}^2$ a1 x2 e-t a3 ex = ex2 ij

2

Pierwiastek kwadratowy skladamy poleceniem \sqrt. Wielko znaku A pierwiastka L TEX ustala automatycznie. Zapis samego znaku pierwiastka

Obecnie brak duej litery Alpha, poniewa wyglda ona identycznie jak pierwsza litera A alfabetu laciskiego. Sytuacja ta ma si zmieni po wprowadzeniu nowego sposobu kodowania symboli matematycznych.

2

3.3 Czci skladowe wyrae matematycznych

43

umoliwia nam instrukcja \surd3 . Natomiast pierwiastek stopnia n skladamy konstrukcj \sqrt[n].

$\sqrt{x} \sqrt{ x^{2}+\sqrt{y}} \sqrt[3]{2} \surd[x^2 + y^2]$ x x2 + y 3 2 [x2 + y 2 ]

Polecenia \overline oraz \underline umieszczaj poziome kreski nad i pod wyraeniami.

$\overline{m+n} \underline{x+y}$ m + nx + y

Instrukcje \overbrace oraz \underbrace umieszczaj poziome klamry nad i pod wyraeniami.

$\underbrace{ a+b+\cdots+z }_{26}$ a+ b + ···+ z

26

Akcenty matematyczne, takie jak daszki czy tyldy nad zmiennymi, umieszczamy we wzorze za pomoc instrukcji zestawionych w tabeli 3.1. Szerokie daszki i tyldy, obejmujce wiele symboli, wstawiamy uywajc instrukcji \widetilde oraz \widehat. Uycie znaku ,,'" powoduje wstawienie symbolu ,,prim".

\begin{displaymath} \hat y=x^{2}\quad y'=2x''' \end{displaymath} y = x2 ^

y = 2x

Niekiedy wektory wyróniamy, wstawiajc akcent w postaci strzalki nad nazw zmiennej. Sluy do tego polecenie \vec. Natomiast do oznaczenia wektora od punktu A do punktu B korzystamy z polece \overrightarrow oraz \overleftarrow.

\begin{displaymath} \vec a\quad\overrightarrow{AB} \end{displaymath} - a AB

Nazwy funkcji typu ,,logarytm" naley sklada odmian prost, nie za A kursyw, zarezerwowan dla nazw zmiennych. Oto lista polece L TEX-a slucych do skladu rozmaitych funkcji matematycznych: \arccos \cos \csc \exp \ker \limsup \min \sinh \arcsin \cosh \deg \gcd \lg \ln \Pr \sup \arctan \cot \det \hom \lim \log \sec \tan \arg \coth \dim \inf \liminf \max \sin \tanh

3

Taki zapis jest wykorzystywany raczej w literaturze anglosaskiej.

44

Wyraenia matematyczne

\[\lim_{x \rightarrow 0} \frac{\sin x}{x}=1\]

x0

lim

sin x =1 x

W Polsce nazwy niektórych funkcji trygonometrycznych róni si od anglosaskich. Pakiet platex ­ po dolczeniu do dokumentu ­ na yczenie zmienia standardowe funkcje A L TEX-a tak, e s one zgodne z polskimi zwyczajami. Oto angielskie oryginaly: tan, coth, tanh, arccos, arcsin i ich polskie odpowiedniki: tg, ctgh, tgh, arc cos, arc sin.

Dla funkcji typu modulo istniej dwie instrukcje: \bmod dla binarnego operatora "a mod b" oraz \pmod do skladu takich wyrae jak "x a (mod b)." Ulamki pitrowe sklada si poleceniem \frac{...}{...}. Jednak stosujc ulamki zwykle typu 1/2, lepiej zapisywa je z ukon kresk:

$1\frac{1}{2}$~godziny \begin{displaymath} \frac{ x^{2} }{ k+1 }\quad x^{ \frac{2}{k+1} }\quad x^{ 1/2 } \end{displaymath}

1 1 2 godziny

x2 k+1

x k+1

2

x1/2

Do skladu dwumianów lub podobnych konstrukcji moemy wykorzysta polecenie {... \choose ...} albo {... \atop ...}. Instrukcja \atop daje w rezultacie to samo co \choose, tyle tylko e bez nawiasów.

\begin{displaymath} {n \choose k}\qquad {x \atop y+2} \end{displaymath} n k x y+2

Znak calki skladamy poleceniem \int, natomiast znak sumowania za pomoc instrukcji \sum. Górne granice calkowania/sumowania okrelamy za pomoc ^ a dolne _, podobnie jak w przypadku indeksów górnych i dolnych.

\begin{displaymath} \sum_{i=1}^{n} \quad \int_{0}^{\frac{\pi}{2}} \end{displaymath}

n 0

2

i=1

Do skladu nawiasów i innych ograniczników (takich, jak: [ ) uywa si wielu rónych symboli. Nawiasy okrgle i kwadratowe wstawiamy bezporednio z klawiatury. Nawiasy klamrowe wstawiamy za pomoc polece \{ oraz \}. Wszystkie inne ograniczniki wstawiamy z uyciem specjalnych polece (np. \updownarrow). Zestawienie wszystkich dostpnych ograniczników znajduje si w tabeli 3.8 na stronie 54.

\begin{displaymath} {a,b,c}\neq\{a,b,c\} \end{displaymath} a, b, c = {a, b, c}

3.4 Odstpy w trybie matematycznym

45

Poprzedzenie otwierajcego ogranicznika poleceniem \left, a zamykajcego poleceniem \right, powoduje automatyczne ustalenie jego rozmiaru w zalenoci od wielkoci zawartego midzy nimi wyraenia. Uwaga: kade uycie \left oraz ogranicznika wymaga nawiasu zamykajcego poprzedzonego poleceniem \right. Gdy ogranicznik ma si pojawi tylko po jednej stronie, wówczas po drugiej naley uy konstrukcji \left. (po lewej) lub \right. (po prawej).

\begin{displaymath} 1 + \left( \frac{1}{ 1-x^{2} } \right) ^3 \end{displaymath}

3

1+

1 1 - x2

W pewnych sytuacjach naley samemu okreli wlaciw wielko ogranicznika. Do tego celu slu instrukcje \big, \Big, \bigg oraz \Bigg, poprzedzajce odpowiedni ogranicznik4 .

$\Big( (x+1) (x-1) \Big) ^{2}$\\ $\big(\Big(\bigg(\Bigg($\quad $\big\}\Big\}\bigg\}\Bigg\}$\quad $\big\|\Big\|\bigg\|\Bigg\|$

2

(x + 1)(x - 1)

Wielokropek w wyraeniach matematycznych wprowadzamy poleceniem \ldots. Kropki pojawiaj si wtedy na linii podstawowej, to znaczy na jednakowej wysokoci z przecinkiem czy kropk. Instrukcja \cdots wstawia natomiast inny rodzaj wielokropka, w którym kropki znajduj si w osi znaków +, -, =. Ponadto s jeszcze instrukcje \vdots oraz \ddots. Pierwsz z nich skladamy wielokropki pionowe, a drug skone (zobacz przyklad w punkcie 3.5).

\begin{displaymath} x_{1},\ldots,x_{n} \qquad x_{1}+\cdots+x_{n} \end{displaymath} x1 + · · · + xn

x1 , . . . , xn

3.4

Odstpy w trybie matematycznym

Zdarzaj si sytuacje, kiedy wielko odstpów wewntrz wyrae matematycznych jest nieodpowiednia. Mona jednak skorygowa je samemu za pomoc odpowiednich instrukcji. Do wprowadzenia niewielkich odstpów sluy 3 kilka polece: \, wstawia odstp równy 18 kwadratu ( ), \: pozwala uzyska

Polecenia te nie dzialaj zgodnie z oczekiwaniami, jeeli uprzednio wykorzystano instrukcje zmieniajce stopie pisma albo opcje 11pt lub 12pt. W takiej sytuacji naley skorzysta z pakietu exscale albo pakietu amsmath.

4

46

Wyraenia matematyczne

4 5 odstp równy 18 kwadratu ( ) a \; odstp równy 18 kwadratu ( ). Uycie instrukcji \ (tj. spacja po znaku ,,\") jest równoznaczne z utworzeniem zwyklego odstpu midzywyrazowego; \quad z odstpem równym kwadratowi ( ), a \qquad dwóm kwadratom ( ). Odstp uzyskany poleceniem \quad odpowiada szerokoci litery ,,M" w biecym kroju pisma. Instrukcja \! wstawia odstp ,,ujemny", to znaczy zamiast zwiksza, zmniejsza odstp 3 midzy znakami. Wielko tego odstpu wynosi - 18 kwadratu ( ).

\newcommand{\ud}{\mathrm{d}} \begin{displaymath} \int\!\!\!\int_{D} g(x,y) \, \ud x\, \ud y \end{displaymath} % zamiast \begin{displaymath} \int\int_{D} g(x,y)\ud x \ud y \end{displaymath}

g(x, y) dx dy

D

zamiast g(x, y)dxdy

D

Zwrómy uwag, e litera ,,d" w symbolu róniczki jest zloona odmian prost pisma5 . A Dziki zdefiniowanym w pakiecie AMS-L TEX6 takim instrukcjom jak \iint, \iiint, \iiiint oraz \idotsint powyszy przyklad mona zloy duo prociej:

\newcommand{\ud}{\mathrm{d}} \begin{displaymath} \iint_{D} \, \ud x \, \ud y \end{displaymath} dx dy

D

Wicej wiadomoci na ten temat znajdziemy w pliku testmath.tex, który A jest czci pakietu AMS-L TEX lub w rozdziale ósmym podrcznika The 7. A L TEX Companion

3.5

Wyrównywanie w pionie

Do skladania macierzy wykorzystuje si rodowisko array. Jest ono podobne do omawianego uprzednio rodowiska tabular. Uywane tu polecenie \\ oznacza przejcie do nowego wiersza macierzy.

5 6

W Polsce do skladu litery ,,d" w róniczkach stosuje si kursyw matematyczn. cilej mówic, w pakiecie amsmath. 7 CTAN://tex-archive/info/ch8.

3.5 Wyrównywanie w pionie

47

\begin{displaymath} \mathbf{X} = \left( \begin{array}{ccc} x_{11} & x_{12} & \ldots \\ x_{21} & x_{22} & \ldots \\ \vdots & \vdots & \ddots \end{array} \right) \end{displaymath}

x11 x21 X= . . .

x12 x22 . . .

... ... .. .

rodowiskiem array moemy si posluy take do skladania wyrae zawierajcych tylko jeden ogranicznik, po prawej lub lewej stronie, stosujc konstrukcj \right. (lub \left.).

\begin{displaymath} y = \left\{ \begin{array}{ll} a & \textrm{jeeli $d>c$}\\ b+x & \textrm{rano}\\ l & \textrm{w~cigu dnia} \end{array} \right. \end{displaymath} a b+x y= l jeeli d > c rano w cigu dnia

Do skladu wyrae wielowierszowych mona zamiast rodowiska equation uy rodowisk eqnarray lub eqnarray*. W rodowisku eqnarray kady wiersz zawartego w nim wyraenia posiada osobny numer; w rodowisku eqnarray* wiersze nie s numerowane. Dzialanie rodowisk eqnarray oraz eqnarray* jest zblione do trzykolumnowej tabeli typu {rcl}. W takiej tabeli w rodkowej kolumnie wstawiamy zwykle znaki równoci lub nierównoci. Poleceniem \\ lamiemy poszczególne wiersze tej tabeli (rodowiska).

\begin{eqnarray} f(x) & = & \cos x \\ f'(x) & = & -\sin x \\ \int_{0}^{x} f(y)dy & = & \sin x \end{eqnarray}

f (x) = f (x) =

x

cos x - sin x sin x

(3.5) (3.6) (3.7)

f (y)dy

0

=

Zwrómy uwag, e po obu stronach znaku równoci odstp, który wstawil A tam L TEX, jest zbyt duy. Moemy go zmniejszy za pomoc polecenia \setlength\arraycolsep{2pt}. A L TEX nie dzieli automatycznie wyrae nie mieszczcych sie w jednym wierszu. Musimy to zrobi sami. Najczciej w taki oto sposób:

{\setlength\arraycolsep{2pt} \begin{eqnarray} \sin x & = & x -\frac{x^{3}}{3!} +\frac{x^{5}}{5!}-{} \nonumber\\ & & {}-\frac{x^{7}}{7!}+{}\cdots \end{eqnarray}} x5 x3 + - 3! 5! 7 x + ··· - 7!

sin x = x -

(3.8)

48

Wyraenia matematyczne

\begin{eqnarray} \lefteqn{ \cos x = 1 -\frac{x^{2}}{2!} +{} } \nonumber\\ & & {}+\frac{x^{4}}{4!} -\frac{x^{6}}{6!}+{}\cdots \end{eqnarray}

cos x = 1 -

x2 + 2! x6 x4 - + ··· + 4! 6!

(3.9)

A L TEX nie wstawia numeru w tym wierszu wyraenia, w którym pojawia si polecenie \nonumber. Zloenie w ten sposób duych i skomplikowanych wyrae moe si jednak okaza zbyt trudne; lepiej wtedy uy pakietu amsmath.

3.6

Stopie pisma

W trybie matematycznym stopie pisma dobierany jest automatycznie, A w zalenoci od kontekstu. Przykladowo, indeksy górne L TEX sklada mniejsz czcionk. Gdy zachodzi potrzeba zloenia fragmentu normalnego tekstu wewntrz wyraenia matematycznego, a wykorzystamy polecenie \textrm, to nie zadziala mechanizm przelczania stopni pisma. Dzieje si tak dlatego, e polecenie \textrm powoduje tymczasowe przejcie do trybu tekstowego. Zamiast \textrm mona uy polecenia \mathrm, które zachowuje mechanizm zmiany stopni pisma. Pamitajmy jednak, e dziala on dobrze w zasadzie tylko dla pojedynczych liter. W dalszym cigu ignorowane s bowiem odstpy midzy wyrazami, a mechanizm akcentowania nie dziala zgodnie z naszymi oczekiwaniami8 .

\begin{equation} 2^{\textrm{nd}} \quad 2^{\mathrm{nd}} \end{equation}

2nd

2nd

(3.10)

Czasami musimy wyranie okreli stopie pisma, jakim chcemy si posluy. W trybie matematycznym moemy do tego wykorzysta cztery nastpujce polecenia: \displaystyle (123), \textstyle (123), \scriptstyle (123) oraz \scriptscriptstyle (123). Zmiana stylu dotyczy take sposobu skladania indeksów górnych i dolnych takich, jak midzy innymi granice sumowania czy calkowania.

8 A W pakiecie AMS-L TEX automatyczn zmian stopnia pisma w zalenoci od kontekstu umoliwia polecenie \textrm.

3.7 Twierdzenia, definicje, itp.

49

\begin{displaymath} \mathop{\mathrm{cov}}(X,Y)= \frac{\displaystyle \sum_{i=1}^n(x_i-\overline x) (y_i-\overline y)} {\displaystyle\biggl[ \sum_{i=1}^n(x_i-\overline x)^2 \sum_{i=1}^n(y_i-\overline y)^2 \biggr]^{1/2}} \end{displaymath}

n

(xi - x)(yi - y) cov(X, Y ) =

i=1 n n 1/2

(xi - x)2

i=1 i=1

(yi - y)2

Powyszy przyklad ilustruje sytuacj, w której naley wykorzysta polecenie \bigg, poniewa nawiasy utworzone za pomoc konstrukcji \left[ i \right] s zbyt male.

3.7

Twierdzenia, definicje, itp.

W pracach matematycznych wystpuje potrzeba wyróniania w skladzie zapisu lematów, definicji, aksjomatów i tym podobnych elementów. Do tego A celu mamy w L TEX-u polecenia:

\newtheorem{nazwa}[nazwa' ]{tekst }[punkt ]

Argument nazwa oznacza nazw rodowiska. Argument tekst to nazwa elementu, która pojawi si na wydruku. Moe to by ,,Twierdzenie", ,,Definicja" itp. Argumenty w nawiasach kwadratowych s nieobowizkowe. Za ich pomoc okrelamy sposób numerowania twierdze. Argument nazwa' to nazwa elementu, który zdefiniowano uprzednio poleceniem \newtheorem. Jeli ten argument podano, to rodowisko nazwa bdzie numerowane w taki sam sposób co rodowisko nazwa'. Ponadto oba rodowiska maj wspóln a nie osobn numeracj. Argument punkt dotyczy natomiast numerowania twierdze wewntrz okrelonej jednostki podzialu9 . Po umieszczeniu instrukcji \newtheorem{nazwa}... w preambule, rodowisko nazwa mona wykorzystywa w dokumencie w nastpujcy sposób: \begin{nazwa}[tekst] Oto moje interesujce twierdzenie \end{nazwa} Tyle teoria. Nastpujce przyklady, miejmy nadziej, usun wszelkie wtpliwoci i jednoczenie uwiadomi nam, e polecenie \newtheorem moe by cokolwiek trudne do zrozumienia.

9 Gdy umiecimy tam na przyklad chapter, to elementy bd numerowane w obrbie rozdzialów.

50

Wyraenia matematyczne

% definicje w~preambule \newtheorem{twr}{Twierdzenie} \newtheorem{lem}[twr]{Lemat} % po \begin{document} \begin{lem} Pierszy lemat\dots\label{lem:1} \end{lem} \begin{twr}[Dyzma] Przyjmujc w~lemacie~\ref{lem:1}, e $\epsilon=0$\dots \end{twr} \begin{lem}Trzeci lemat\end{lem}

Lemat 1 Pierszy lemat . . . Twierdzenie 2 (Dyzma) Przyjmujc w lemacie 1, e = 0 . . . Lemat 3 Trzeci lemat

Elementy Twierdzenie i Lemat wykorzystuj ten sam licznik. Argument nieobowizkowy (wewntrz nawiasów kwadratowych) sluy do umieszczenia nazwiska twórcy, komentarza itp.

\newtheorem{mur}{Murphy}[section] \begin{mur} Jeeli istniej dwa sposoby lub wicej wykonania czego, przy czym jeden z~nich prowadzi do katastrofy, to sposób ten zostanie przez kogo wybrany.\end{mur} Murphy 3.7.1 Jeeli istniej dwa sposoby lub wicej wykonania czego, przy czym jeden z nich prowadzi do katastrofy, to sposób ten zostanie przez kogo wybrany.

Numeracja twierdzenia ,,Murphy'ego" jest tu powizana z numeracj kolejnych punktów. Moliwe jest take wykorzystanie do numeracji twierdze innych jednostek podzialu dokumentu, jak rozdzialy czy podpunkty.

3.8

Symbole pólgrube

A Wstawianie symboli pólgrubych jest w L TEX-u zadaniem do trudnym. By moe jest tak celowo, poniewa amatorzy-skladacze maj sklonnoci do ich naduywania. Poleceniem \mathbf uzyskamy odmian pólgrub. Niestety, nie bdzie to pólgruba kursywa, jak zwykle skladane s symbole matematyczne. Istnieje, co prawda, polecenie \boldmath, ale mona go uy jedynie poza trybem matematycznym. Jego dzialanie obejmuje te symbole.

\begin{displaymath} \mu, M \qquad \mathbf{M} \qquad \mbox{\boldmath $\mu, M$} \end{displaymath}

µ, M

M

µ, M

Zwrómy uwag, e przecinek te jest pólgruby; efekt to raczej niepodany. Pakiet amsbsy (dolczany przez amsmath) czyni nasze zadanie duo latwiejszym. W pakiecie tym wystpuj polecenia \boldsymbol oraz \pmb. Instrukcja pmb imituje znak pólgruby przez wydrukowanie dwóch nakladajcych si na siebie znaków, zloonych w odmianie normalnej. Umoliwia to stosowanie symboli pólgrubych, nawet wtedy, gdy w systemie brak odpowiednich fontów.

3.9 Zestawienie symboli matematycznych

51

\begin{displaymath} \mu, M \quad \boldsymbol{\mu},\boldsymbol{M}\quad \pmb{\mu}, \pmb{M} \end{displaymath}

µ, M

µ, M

µ, M

3.9

Zestawienie symboli matematycznych

W poniszych tabelach zestawiono wszystkie symbole standardowo dostpne w trybie matematycznym. Symbole w tabelach 3.12­3.1610 s dostpne, jeeli mamy zainstalowane dodatkowe fonty matematyczne (AMS math fonts) i do dokumentu dolczymy pakiet amssymb. Jeeli brak jest fontów/pakietu to jest on dostpny w: CTAN://tex-archive/macros/latex/packages/ amslatex. Tabela 3.1: Akcenty matematyczne a ^ a ` a ¯ \hat{a} \grave{a} \bar{a} a a a \check{a} \dot{a} \vec{a} a ~ a ¨ A \tilde{a} \ddot{a} \widehat{A} a ´ a A \acute{a} \breve{a} \widetilde{A}

Tabela 3.2: Male litery alfabetu greckiego \alpha \beta \gamma \delta \epsilon \varepsilon \zeta \eta µ \theta \vartheta \iota \kappa \lambda \mu \nu \xi o o \pi \varpi \rho \varrho \sigma \varsigma \tau \upsilon \phi \varphi \chi \psi \omega

Tabela 3.3: Due litery alfabetu greckiego \Gamma \Delta \Theta \Lambda \Xi \Pi \Sigma \Upsilon \Phi \Psi \Omega

10 Tabele przygotowano na podstawie pliku symbols.tex (David Carlisle), gruntownie zmodyfikowanego zgodnie z sugestiami Josefa Tkadleca.

52

Wyraenia matematyczne

Tabela 3.4: Symbole relacji Odpowiednie symbole negacji mona utworzy poprzedzajc kade z poniszych polece instrukcj \not. < < \leq albo \le \ll \prec \preceq \subset \subseteq \sqsubset a \sqsubseteq \in \vdash \mid \smile :

a

>

` | :

a

/

> \geq albo \ge \gg \succ \succeq \supset \supseteq \sqsupset a \sqsupseteq \ni , \owns \dashv \parallel \frown \notin

= . = = I |= =

= \equiv \doteq \sim \simeq \approx \cong \Join a \bowtie \propto \models \perp \asymp \neq albo \ne

Dostpne po dolczeniu pakietu latexsym

A W trybie matematycznym L TEX wstawia dodatkowy maly odstp po przecinku i redniku. Natomiast po dwukropku wstawia odstp przed i za znakiem, bo traktuje go jako znak relacji. Rónic przedstawiono w poniszym przykladzie:

Nie $f:A\to B$ ale $f\colon A\to B$

Nie f : A B ale f : A B

Jeeli przecinek oddziela cz calkowit liczby od czci dziesitnej, to wskazane A jest zakaza L TEX-owi wstawiania dodatkowego odstpu, jak to zwykle robi w trybie matematycznym. Do tego celu wystarczy otoczy przecinek par nawiasów klamrowych; porównajmy: Nie $22,115$ ale $22{,}115$ Nie 22, 115 ale 22,115

Ksztalty znaków mniejszy-równy i wikszy-równy s róne od tych stosowanych w kraA jach anglosaskich. Po dolczeniu pakietu platex standardowe L TEX-owe polecenia \leq oraz \geq daj w rezultacie polskie wersje tych relacji, tj. , , a nie , .

3.9 Zestawienie symboli matematycznych

53

Tabela 3.5: Symbole operacji dwuargumentowych + ± · × ¡ ¢ + \pm \cdot \times \cup \sqcup \vee , \lor \oplus \odot \otimes \bigtriangleup \lhd a \unlhd a - ÷ \ \mp \div \setminus \cap \sqcap \wedge , \land \ominus \oslash \bigcirc \bigtriangledown \rhd a \unrhd a

·

£ ¤

\triangleleft \triangleright \star \ast \circ \bullet \diamond \uplus \amalg \dagger \ddagger \wr

Tabela 3.6: Symbole zmiennej wielkoci \sum \prod \coprod \int \bigcup \bigcap \bigsqcup \oint \bigvee \bigwedge \bigoplus \bigotimes \bigodot \biguplus

Tabela 3.7: Strzalki \leftarrow albo \gets \rightarrow albo \to \leftrightarrow \Leftarrow \Rightarrow \Leftrightarrow \mapsto \hookleftarrow \leftharpoonup \leftharpoondown \rightleftharpoons

a

- - = = -

\longleftarrow \longrightarrow \longleftrightarrow \Longleftarrow \Longrightarrow \Longleftrightarrow \longmapsto \hookrightarrow \rightharpoonup \rightharpoondown \iff

Y

\uparrow \downarrow \updownarrow \Uparrow \Downarrow \Updownarrow \nearrow \searrow \swarrow \nwarrow \leadsto a

Dostpne po dolczeniu pakietu latexsym

54

Wyraenia matematyczne

Tabela 3.8: Ograniczniki ( [ { ( [ albo \lbrack \{ or \lbrace \langle \lfloor / ) ] } ) ] albo \rbrack \} albo \rbrace \rangle \rfloor \backslash | \uparrow \downarrow \updownarrow | or \vert \lceil \Uparrow \Downarrow \Updownarrow \| or \Vert \rceil

/

\

Tabela 3.9: Due ograniczniki

\lgroup \arrowvert

\rgroup \Arrowvert

\lmoustache \bracevert

\rmoustache

Tabela 3.10: Symbole róne ... \dots \hbar \Re \forall ' \nabla \bot \diamondsuit \neg albo \lnot

a

··· i

¬

\cdots \imath \Im \exists \prime \triangle \top \heartsuit \flat

. . . H P

\vdots \jmath \aleph \mho a \emptyset \Box a \angle \clubsuit \natural

..

.

Q

\ddots \ell \wp \partial \infty \Diamond a \surd \spadesuit \sharp

Dostpne po dolczeniu pakietu latexsym

Tabela 3.11: Symbole niematematyczne \dag § \S c \copyright \ddag ¶ \P £ \pounds

Wszystkie polecenia s take dostpne w trybie tekstowym

Tabela 3.12: Ograniczniki (pakiet AMS) \ulcorner \urcorner \llcorner \lrcorner

Tabela 3.13: Symbole Greckie i Hebrajskie (pakiet AMS) \digamma \varkappa \beth \daleth \gimel

3.9 Zestawienie symboli matematycznych

55

Tabela 3.14: Symbole relacji (pakiet AMS) \lessdot \leqslant \eqslantless \leqq \lll albo \llless \lesssim \lessapprox \lessgtr \lesseqgtr \lesseqqgtr \preccurlyeq \curlyeqprec \precsim \precapprox \subseteqq \Subset \sqsubset \therefore \shortmid \smallsmile \vartriangleleft \trianglelefteq \gtrdot \geqslant \eqslantgtr \geqq \ggg albo \gggtr \gtrsim \gtrapprox \gtrless \gtreqless \gtreqqless \succcurlyeq \curlyeqsucc \succsim \succapprox \supseteqq \Supset \sqsupset \because \shortparallel \smallfrown \vartriangleright \trianglerighteq \doteqdot albo \Doteq \risingdotseq \fallingdotseq \eqcirc \circeq \triangleq \bumpeq \Bumpeq \thicksim \thickapprox \approxeq \backsim \backsimeq \vDash \Vdash \Vvdash \backepsilon \varpropto \between \pitchfork \blacktriangleleft \blacktriangleright

`

a

Tabela 3.15: Strzalki (pakiet AMS) \dashleftarrow \leftleftarrows \leftrightarrows \Lleftarrow \twoheadleftarrow \leftarrowtail \leftrightharpoons \Lsh \looparrowleft \curvearrowleft \circlearrowleft \dashrightarrow \rightrightarrows \rightleftarrows \Rrightarrow \twoheadrightarrow \rightarrowtail \rightleftharpoons \Rsh \looparrowright \curvearrowright \circlearrowright \multimap \upuparrows \downdownarrows \upharpoonleft \upharpoonright \downharpoonleft \downharpoonright \rightsquigarrow \leftrightsquigarrow

56

Wyraenia matematyczne

Tabela 3.16: Negacje symbolów relacji i strzalek (pakiet AMS) \nless \lneq \nleq \nleqslant \lneqq \lvertneqq \nleqq \lnsim \lnapprox \nprec \npreceq \precneqq \precnsim \precnapprox \subsetneq \varsubsetneq \nsubseteq \subsetneqq \nleftarrow \nLeftarrow \ngtr \gneq \ngeq \ngeqslant \gneqq \gvertneqq \ngeqq \gnsim \gnapprox \nsucc \nsucceq \succneqq \succnsim \succnapprox \supsetneq \varsupsetneq \nsupseteq \supsetneqq \nrightarrow \nRightarrow \varsubsetneqq \varsupsetneqq \nsubseteqq \nsupseteqq \nmid \nparallel \nshortmid \nshortparallel \nsim \ncong \nvdash \nvDash \nVdash \nVDash \ntriangleleft \ntriangleright \ntrianglelefteq \ntrianglerighteq \nleftrightarrow \nLeftrightarrow

Tabela 3.17: Relacje dwuargumentowe (pakiet AMS) \dotplus \ltimes \Cup or \doublecup \veebar \boxplus \boxtimes \leftthreetimes \curlyvee \centerdot \rtimes \Cap or \doublecap \barwedge \boxminus \boxdot \rightthreetimes \curlywedge \intercal \divideontimes \smallsetminus \doublebarwedge \circleddash \circledcirc \circledast

3.9 Zestawienie symboli matematycznych

57

Tabela 3.18: Róne symbole (pakiet AMS) \hbar \square \vartriangle \triangledown \lozenge \angle \diagup \nexists \eth \hslash \blacksquare \blacktriangle \blacktriangledown \blacklozenge \measuredangle \diagdown \Finv \mho k \Bbbk \circledS \complement \Game \bigstar \sphericalangle \backprime \varnothing

ð

H

Tabela 3.19: Kroje pisma dostpne w trybie matematycznym Przyklad ABCdef ABCdef ABCdef AB C A BC ABC ABCdef ABC Polecenie \mathrm{ABCdef} \mathit{ABCdef} \mathnormal{ABCdef} \mathcal{ABC} \mathcal{ABC} \mathcal{ABC} \mathscr{ABC} \mathfrak{ABCdef} \mathbb{ABC} Wymagany pakiet

mathrsfs eucal z opcj: mathcal albo eucal z opcj: mathscr eufrak amsfonts albo amssymb

Rozdzial 4

Rysunki, skorowidze . . .

A Kolej na opis moliwoci L TEX-a przydatnych podczas prac nad wikszymi dokumentami, tj. dolczania rysunków, tworzenia skorowidzów i spisów literatury. A Bardziej szczególowy opis tych i podobnych zagadnie znajdziemy w L TEX MaA X Companion [2]. nual [4] i The L TE

4.1

Dolczanie grafiki w formacie EPS

rodowisko figure pozwala zarezerwowa miejsce na wstawienie rysunku A do dokumentu L TEX-owego. Rysunki moemy tworzy na wiele sposobów przy wykorzystaniu stanA dardowych oraz niestandardowych pakietów L TEX-a. Trzeba jednak przyzna, e dla wikszoci uytkowników, nauka poslugiwanie si tymi pakietami jest trudna a tworzenie rysunków za ich pomoc pracochlonne. Dlatego nie bdziemy si ju nimi dalej zajmowa. Zainteresowanych odsylamy do A A The L TEX Companion [2] oraz L TEX Manual [4]. Znacznie prostszym sposobem wstawiania rysunków do dokumentu jest uprzednie ich przygotowanie za pomoc wyspecjalizowanych programów graficznych, takich jak XFig, CorelDraw!, Freehand, Gnuplot, itd., a nastpnie dolczenia gotowych rysunków do dokumentu. Take i tym przypadku mona to wykona na wiele sposobów. W tym wprowadzeniu przedstawimy tylko dolczanie grafiki w formacie EPS (Encapsulated PostScript) z uwagi na to, e jest to sposób prosty a do tego zdecydowanie najpowszechniej wykorzystywany. Po to eby wykorzystywa grafik w formacie EPS potrzebna jest drukarka z wbudowanym interpreterem jzyka PostScript1

Program ghostscript jest interpreterem jzyka PostScript o statusie oprogramowania freeware. Obsluguje kilkadziesit rónorakich urzdze, w tym wiele popularnych drukarek oraz kart graficznych. Pozwala on obejrze dokument na ekranie przed drukiem.

1 Zamiast interpretera w drukarce moemy uy programu ghostscript dostpnego, np. w CTAN://tex-archive/support/ghostscript.

4.1 Dolczanie grafiki w formacie EPS

59

Nie mamy takiej moliwoci wykorzystujc interpreter w drukarce. Program ghostscript jest dostpny na wszystkich popularnych platformach systemowych.

Do dolczenia rysunków do dokumentu mona skorzysta z polece pakietu graphicx (autor: D. P. Carlisle). Pakiet ten jest czci zestawu pakietów zwanego ,,graphics"2 . Zakladajc, e dysponujemy interpreterem jzyka PostScript oraz pakietem graphicx, dolczanie grafiki mona przedstawi nastpujco: 1. Zapisujemy rysunek w formacie EPS3 . 2. Dolczamy pakiet graphicx do preambuly dokumentu:

\usepackage[dvi-ps]{graphicx}

gdzie dvi-ps oznacza nazw sterownika wykorzystywanego do zamiany pliku .dvi na plik postscriptowy. Najczciej uywanym do tego celu programem jest dvips. Nazwa sterownika jest tu konieczna z uwagi na brak standardu dotyczcego dolczania grafiki PostScriptowej do A dokumentów L TEX-owych. Podanie nazwy pozwala na wybór metody specyficznej dla danego sterownika. 3. Instrukcj:

\includegraphics[klucz =warto, . . . ]{plik }

dolczamy plik do dokumentu. Parametr opcjonalny jest list, oddzielonych przecinkami kluczy o okrelonych przez nas wartociach. Klucze wykorzystujemy do zmian parametrów rysunku, tj. szerokoci czy wysokoci rysunku oraz kta obrotu. W tablicy 4.1 zamieszczono najwaniejsze klucze. Tabela 4.1: Nazwy kluczy w pakiecie graphicx width height angle scale skalowanie rysunku do szerokoci width; skalowanie rysunku do wysokoci height; obrót (przeciwnie do ruchu wskazówek zegara); skalowanie równomierne.

Poniszy przyklad pozwoli nam lepiej zrozumie to, co zostalo przedstawione w powyszych punktach:

CTAN://tex-archive/macros/latex/packages/graphics Jeeli program graficzny, którym si poslugujemy nie pozwala nam na to, spróbujmy zainstalowa sterownik do drukarki postscriptowej w rodzaju Apple Laser Writer i drukowa za pomoc tego sterownika do pliku. Przy odrobinie szczcia plik wynikowy bdzie w formacie EPS. Pamitajmy jednak, e pliki w tym formacie maj tylko jedn stron. Sterowniki niektórych drukarek mona jawnie ustawi wlanie do tworzenia plików w tym formacie.

3 2

60

Rysunki, skorowidze . . .

\begin{figure} \begin{center} \includegraphics[angle=90,width=0.5\textwidth]{test.eps} \end{center} \end{figure} Dolczony zostaje rysunek zawarty w pliku test.eps. Rysunek najpierw obracamy o 90 stopni w kierunku przeciwnym do ruchu wskazówek zegara a nastpnie przeskalowujemy tak, aby jego szeroko byla równa polowie szerokoci szpalty. Skalowanie grafiki jest równomierne z uwagi na brak klucza height. Szeroko i wysoko rysunku moemy take okreli przy uyciu miar bezwzgldnych. W tabeli 5.5 zamieszczono zestawienie jednostek miar A w L TEX-u. Wicej informacji dotyczcej powyszych zagadnie znajdziemy w [1] oraz [11].

4.2

Spis literatury

Do przygotowania spisu literatury uywamy rodowiska thebibliography. Kada pozycja w tym spisie rozpoczyna si poleceniem:

\bibitem{etykieta}

Etykiet poslugujemy si do cytowania oznaczonej ni pozycji w dokumencie:

\cite{etykieta}

Numerowanie pozycji literaturowych jest automatyczne (polecenia \bibitem i \cite dzialaj podobnie jak opisane ju instrukcje \label i \ref). rodowisko thebibliography ma jeden parametr, który powinien zawiera tekst równy szerokoci (lub szerszy) od najszerszej etykiety ze spisu. W przykladzie poniej ,,99" oznacza, e numery pozycji w spisie bd co najwyej dwucyfrowe.

Partl~\cite{pa} zaproponowal, eby \ldots \begin{thebibliography}{99} \bibitem{pa} H.~Partl: \emph{German \TeX}, TUGboat Vol.~9, No.~1 ('88) \end{thebibliography} Partl [1] zaproponowal, eby . . .

Spis literatury

[1] H. Partl: German TEX, TUGboat Vol. 9, No. 1 ('88)

Do wikszych projektów przydaje si program o nazwie BibTEX. Program ten znajduje si w kadej wspólczesnej dystrybucji TEX-a. BibTEX korzysta

4.3 Skorowidze

61

z bazy bibliograficznej (biblioteki), z której wybiera tylko te pozycje literaturowe, które byly cytowane w dokumencie. Sposób formatowania spisów literatury jest sterowany za pomoc specjalnych szablonów, których modyfikacja umoliwia zmian ukladu graficznego spisu.

Po przetworzeniu pliku, na podstawie zawartoci etykiet, zapisanych do pliku .aux A przez L TEX-a, BibTEX tworzy spis literatury obejmujcy tylko te pozycje z biblioteki (zwykle plik ten ma rozszerzenie .bib), które cytowano w dokumencie. Format spisu zaley od specyfikacji szablonu znajdujcej si w pliku o rozszerzeniu .bst i zapisywany jest do pliku o rozszerzeniu .bbl. Do poprawnego sformatowania bibliografii i cytowa A konieczne jest przynajmniej trzykrotne przetworzenie dokumentu LTEX-em.

4.3

Skorowidze

Niezwykle uytecznym elementem wielu ksiek jest skorowidz. Mona go A bardzo latwo utworzy za pomoc L TEX-a oraz programu wspomagajcego 4. W tym wprowadzeniu omówimy jedynie podstawowe o nazwie makeindex polecenia dotyczce przygotowania skorowidzy. Znowu wicej informacji A znajdziemy w The L TEX Companion [2]. Generowanie hasel do skorowidza jest moliwe dopiero po dolczeniu w preambule dokumentu pakietu o nazwie makeidx:

\usepackage{makeidx}

oraz wstawieniu (take w obrbie preambuly) instrukcji:

\makeindex

Kade haslo wstawiamy do skorowidza poleceniem:

\index{haslo}

gdzie haslo oznacza pozycj w skorowidzu. Polecenie \index{haslo} umieszczamy w pliku ródlowym bezporednio w miejscu zwizanym z okrelonym haslem. W tabeli 4.2 przedstawiono przyklady uycia hasel. A Podczas przetwarzania pliku ródlowego przez L TEX-a kada instrukcja \index powoduje zapisanie odpowiedniej pozycji skorowidza oraz numeru strony, którego ta pozycja dotyczy do pliku pomocniczego. Plik ten ma t sam nazw co glówny plik ródlowy i rozszerzenie .idx. Z kolei plik .idx musi by przetworzony za pomoc programu makeindex, piszemy:

makeindex plik

4 Lub makeidx, jeli nasz system operacyjny nie pozwala uywa nazw dluszych ni 8 znaków.

62

Rysunki, skorowidze . . .

Tabela 4.2: Przyklady skladni polecenia \index Przyklad \index{kot} \index{kot!rudy} \index{[email protected]\textsl{Sam}} \index{[email protected]\textbf{Lin}} \index{Jenny|textbf} \index{Joe|textit} Argument kot, 1 rudy, 3 Sam, 2 Lin, 7 Jenny, 3 Joe, 5 Uwagi haslo pierwszego stopnia haslo drugiego stopnia haslo sformatowane ditto formatowanie numeru strony ditto

W rezultacie program makeindex tworzy posortowany skorowidz i zapisuje go do pliku o nazwie identycznej z nazw glównego pliku ródlowego i rozszerzeniu .ind. Jeeli teraz jeszcze raz przetworzymy plik ródlowy, to tym razem taki skorowidz zostanie dolczony do dokumentu w miejscu, w którym znajduje si polecenie:

\printindex

A Pakiet showidx, który znajduje si w standardowej dystrybucji L TEX-a drukuje pozycje skorowidza na lewym marginesie. Jest on przydatny do korekt lub/i tworzenia skorowidza.

Reguly sortowania skorowidza s specyficzne dla danego jzyka. W przypadku pracy nad polskim dokumentem program makeindex jest nieprzydatny gdy sortuje hasla tylko wedlug zasad jzyka angielskiego. Zmodyfikowan wersj programu makeindex jest plmindex, (autor: Wlodzimierz Macewicz) zdolny do tworzenia skorowidza zarówno wedlug regul angielskich, jak i polskich. Program jest dostpny, np. w ftp://ftp. gust.org.pl/TeX/GUST/contrib/GUSTPROG/plmindex.zip. Wicej informacji na temat polskich zasad tworzenia skorowidzów mona znale w [9].

4.4

Paginy górne i dolne

Pakiet fancyhdr (autor Piet van Oostrum)5 udostpnia polecenia, którymi definiujemy wlasne paginy. Zwrómy uwag na rónice w wygldzie pagin na stronach: biecej i poprzedniej. Oprócz numeru strony, w paginie górnej na stronie nieparzystej znajduje si tytul rozdzialu, a na stronie nieparzystej dodatkowo tytul punktu. Tak pagin fachowo nazywa si yw pagin. A Za pomoc L TEX-a mona latwo poradzi sobie z automatycznym A umieszczaniem odpowiedniej informacji w ywej paginie. L TEX rozwizuje ten problem nastpujco. W definicjach polece skladajcych paginy wykonanie instrukcji \rightmark oraz \leftmark wstawia odpowiedni tytul rozdzialu, punktu lub cokolwiek innego. Poleceniom \rightmark i \leftmark

5

Dostpny w: CTAN://tex-archive/macros/latex/contrib/supported/fancyhdr/.

4.5 Pakiet verbatim

63

\documentclass{book} \usepackage{fancyhdr} \pagestyle{fancy} % zmiana liter w~ywej paginie na male \renewcommand{\chaptermark}[1]{\markboth{#1}{}} \renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}} \fancyhf{} % usu biece ustawienia pagin \fancyhead[LE,RO]{\small\bfseries\thepage} \fancyhead[LO]{\small\bfseries\rightmark} \fancyhead[RE]{\small\bfseries\leftmark} \renewcommand{\headrulewidth}{0.5pt} \renewcommand{\footrulewidth}{0pt} \addtolength{\headheight}{0.5pt} % pionowy odstp na kresk \fancypagestyle{plain}{% \fancyhead{} % usu p. górne na stronach pozbawionych % numeracji (plain) \renewcommand{\headrulewidth}{0pt} % pozioma kreska }

Rysunek 4.1: Przyklad wykorzystania pakietu fancyhdr jest nadawane nowe znaczenie (nowe wartoci) za kadym wykonaniem instrukcji skladania tytulu rozdzialu i punktu (\chapter, \section). W rzeczywistoci, \chapter oraz inne polecenia podzialu logicznego dokumentu nie zmieniaj definicji polece \rightmark i \leftmark. Odwoluj si one natomiast do polece \chaptermark, \sectionmark, lub \subsectionmark. Dopiero uycie tych instrukcji powoduje zmian definicji polece \rightmark i \leftmark. Do zmiany postaci tytulu rozdzialu w glówce wystarczy modyfikacja polecenia \chaptermark. Rysunek 4.1 przedstawia takie wykorzystanie pakietu, e paginy górne bd wyglda mniej wicej tak, jak w tym podrczniku. Kompletny opis pakietu znajduje si w jego dokumentacji dostpnej pod adresem podanym w ostatnim przypisie.

4.5

Pakiet verbatim

Pakiet verbatim udostpnia poprawion wersj standardowego rodowiska verbatim (opisanego na stronie 33). Oprócz wielu drobnych ale istotnych ulepsze pakiet udostpnia polecenie:

\verbatiminput{plik }

64

Rysunki, skorowidze . . .

które pozwala dolczy doslownie (verbatim) plik tekstowy do dokumentu, tak jakby jego zawarto znajdowala si wewntrz rodowiska verbatim. Pakiet verbatim jest czci zestawu pakietów ,,tools". Zestaw ten wchoA dzi w sklad standardowej dystrybucji L TEX-a. Wicej szczególów jest w [12].

Rozdzial 5 A Adaptowanie L TEX-a

Dokumenty skladane z wykorzystaniem poznanych do tej pory polece zapewne bd si podoba zdecydowanej wikszoci czytelników. Chocia ich wygld nie bdzie moe wyrafinowany, z pewnoci jednak spelni podstawowe zasady skladu, dziki czemu latwo i przyjemnie bdzie si je czytalo. W niektórych wypadkach moe si jednak okaza, e brakuje polecenia czy rodowiska, za pomoc którego moglibymy zloy dany fragment tekstu w sposób A odpowiadajcy potrzebom, albo te, e sposób dzialania dostpnej w L TEX-u instrukcji nie spelnia naszych wymaga. A W tym rozdziale przedstawimy, jak nauczy L TEX-a formatowa dokumenty tak, aby wygldaly inaczej, ni w przypadku korzystania tylko ze standardowych klas i pakietów.

5.1

Definiowane instrukcji i rodowisk

Czytelnicy zapewne zauwayli, e nowo wprowadzane w tej ksice polecenia ukazuj si w ramkach oraz, e znajduj si w skorowidzu. Aby to osign, A nie korzystalimy za kadym razem z wbudowanych w L TEX-a instrukcji, tylko utworzylimy wlasny pakiet, w którym zawarlimy nowe, potrzebne nam polecenia i rodowiska. Majc taki pakiet, wystarczy po prostu napisa:

\begin{command} \ci{polecenie} \end{command}

\polecenie

W tym przykladzie uylimy zarówno nowego rodowiska o nazwie command, odpowiedzialnego za rysowanie ramek dookola instrukcji, jak te nowego polecenia \ci, slucego do skladu nazw polece i wprowadzania ich do skorowidza. Proponujemy Czytelnikom odszukanie hasla \polecenie w skorowidzu; przy hale powinny by podane numery stron, na których ta instrukcja wystpuje w ksice.

66

A Adaptowanie L TEX-a

A We wstpie do tego opracowania wspomnielimy, e w L TEX-u moemy si skupi na logicznej strukturze dokumentów. Wskazane jest rozrónianie w tekcie ródlowym wszystkich elementów logicznych dokumentu, nawet jeeli ich formatowanie jest identyczne. Czsto to, co dzisiaj formatujemy jednakowo, w przyszloci moemy chcie rozróni. Przykladowo, adresy internetowe zwyklo si sklada imitacj kroju maszynoA wego, a poniewa w adresach mog wystpi znaki specjalne L TEX-a, mona by do tego celu wykorzystywa po prostu instrukcj \verb. Jednak lepiej uy specjalnej instrukcji, np. \url. W dokumencie drukowanym na papierze nie ma to znaczenia, ale oznakowanie logiczne umoliwia przedstawienie dokumentu nie tylko w formie drukowanej, ale te w wersji hipertekstowej, w formacie HTML czy PDF.

5.1.1

Instrukcje definiowane przez uytkownika

Do definiowania nowych polece sluy instrukcja:

\newcommand{nazwa}[num]{tekst}

Instrukcja ta wymaga co najmniej dwóch argumentów. Pierwszy z nich, nazwa, oznacza nazw nowej instrukcji, natomiast tekst to jej znaczenie, czyli tekst, który ma zosta wstawiony do skladu w momencie wykonania instrukcji. Podawany w nawiasach kwadratowych argument num to liczba od 1 do 9 okrelajca liczb (obowizkowych) argumentów instrukcji. Argument num jest opcjonalny, a jego pominicie oznacza, e definiowana instrukcja jest bezargumentowa.

A W czci tekst wolno uywa zarówno standardowych instrukcji L TEX-a, jak i zdefiniowanych wczeniej przez uytkownika (za wyjtkiem tych instrukcji, które same definiuj inne polecenia, jak \newcommand, \newenvironment itp.). Niedozwolona jest rekursja. W nazwie instrukcji nie wolno umieszcza polskich liter diakrytycznych.

Nastpujce przyklady pomog lepiej zrozumie zagadnienie. W pierwszym definiujemy instrukcj o nazwie \kwle, majc by skrótem dla slów ,,KrótA kie wprowadzenie do systemu L TEX 2 ". Takie polecenie mogloby si przyda, gdyby tytul ksiki mial by wypisywany wielokrotnie.

\newcommand{\kwle}{Krótkie wprowadzenie do systemu \LaTeXe} % nastpnie po \begin{document}: \kwle; \emph{\kwle}

A Krótkie wprowadzenie do systemu L TEX 2 ; A X 2 Krótkie wprowadzenie do systemu L TE

Nastpny przyklad ilustruje sposób wykorzystania opcjonalnego argumentu num. Znacznik #1 oznacza pierwszy parametr formalny (#2 oznaczalby drugi parametr formalny, #3 trzeci itd.). W chwili wykonania instrukcji parametry formalne s zamieniane na argumenty podane przy jej wywolaniu (parametry aktualne). Instrukcja w poniszym przykladzie ma jeden parametr.

5.1 Definiowane instrukcji i rodowisk

67

\newcommand{\wle}[1] {\emph{#1} wprowadzenie do systemu \LaTeXe} % nastpnie po \begin{document}: \wle{Krótkie}; \wle{Dlugie}

A Krótkie wprowadzenie do systemu L TEX 2 ; A Dlugie wprowadzenie do systemu L TEX 2

A L TEX nie pozwala definiowa instrukcji, której nazwa, jest nazw zdefiniowanego ju polecenia. W wypadku, gdy chcemy zmieni znaczenie ju istniejcej instrukcji, naley uy polecenia \renewcommand. Za wyjtkiem nazwy ma ono skladni identyczn jak \newcommand. Czasami moe si przyda polecenie \providecommand. Dziala ono jak \newcommand z tym, e jeli istnieje ju polecenie o takiej samej nazwie, to nie zastpuje ono starej i zwyczajnie ignoruje now.

5.1.2

rodowiska definiowane przez uytkownika

Odpowiednikiem instrukcji \newcommand, definiujcej nowe polecenia, jest dla rodowisk instrukcja \newenvironment. Ma ona nastpujc skladni:

\newenvironment{nazwa}[num]{pocztek }{koniec}

Podobnie jak w wypadku \newcommand, instrukcji \newenvironment mona A uy z argumentem opcjonalnym lub bez. L TEX wstawia tekst pocztek w miejsce \begin{nazwa}. Natomiast tekst koniec jest wstawiany w miejsce \end{nazwa}. Poniszy przyklad ilustruje sposób uycia instrukcji \newenvironment.

\newenvironment{zrodlo} {ródlo: }{\par} % nastpnie po \begin{document}: \begin{zrodlo} Rocznik Statystyczny GUS. \end{zrodlo}

ródlo: Rocznik Statystyczny GUS.

Znaczenie argumentu num jest takie samo jak w instrukcji \newcommand. A L TEX nie pozwala zdefiniowa rodowiska o ju istniejcej nazwie. W wypadku, gdy chcemy zmieni znaczenie ju istniejcego rodowiska, naley uy polecenia \renewenvironment, majcego tak sam skladni jak \newenvironment.

5.1.3

Wlasne pakiety

W wypadku zdefiniowania wielu nowych rodowisk i polece preambula dokumentu moe si znacznie wydluy. Dobrze w takiej sytuacji jest stworzy pakiet zawierajcy wlasne instrukcje i definicje rodowisk. Taki pakiet mona dolczy do dokumentu za pomoc polecenia \usepackage.

68

A Adaptowanie L TEX-a

% Przykladowy pakiet *** \ProvidesPackage{demopack} \newcommand{\kwle}{Krótkie wprowadzenie do systemu \LaTeXe} \newcommand{\wle}[1]{\emph{#1} wprowadzenie do systemu \LaTeXe} \newenvironment{zrodlo}{ródlo: }{\par}

Rysunek 5.1: Przykladowy pakiet Tworzenie pakietu polega na skopiowaniu polece z preambuly do oddzielnego pliku o rozszerzeniu .sty. Na pocztku pakietu naley uy polecenia:

\ProvidesPackage{nazwa}

A Dziki instrukcji \ProvidesPackage L TEX poznaje nazw pakietu, a to pozwoli mu na przyklad ostrzec uytkownika w przypadku próby powtórnego dolczenia pakietu do dokumentu. Rysunek 5.1 przedstawia niewielki pakiet z instrukcjami z przedstawionych wyej przykladów.

5.2

5.2.1

Fonty

Instrukcje przelczajce stopie pisma

A L TEX automatycznie wybiera krój i stopie pisma dla rónych elementów dokumentu (tytuly rozdzialów, punktów, przypisy itp.). Czasami jednak zachodzi potrzeba ,,rcznego" przelczenia kroju/stopnia pisma. W tym celu mona skorzysta z polece zestawionych w tabelach 5.1 i 5.2. Stopie pisma jest kwesti ukladu graficznego dokumentu i zaley od wybranej klasy dokumentu i ustawienia odpowiednich opcji. W tabeli 5.3 zestawiono stopnie pisma w jednostkach absolutnych dla polece zmieniajcych wielko kroju w przypadku standardowych klas dokumentu.

{\small Nieliczni lecz \textbf{odwani} Rzymianie rzdzili} {\Large wielk \textit{Itali}.}

Nieliczni lecz odwani Rzymianie rzdzili

wielk Itali.

A Biecy font charakteryzuje w L TEX-u pi elementów: uklad (zestaw znaków), krój (rodzin), grubo i szeroko, odmian, stopie i interlini. Kady z nich mona dobra niezalenie od ustawienia pozostalych. Oznacza to na przyklad, e zmiana stopnia pisma nie powoduje zmiany kroju czy odmiany.

5.2 Fonty

69

Tabela 5.1: Polecenia wyboru krojów i odmian \textrm{...} krój szeryfowy \texttt{...} grotesk \textmd{...} pismo jasne \textsf{...} krój bezszeryfowy \textbf{...} pismo grube

\textup{...} odmiana prosta \textit{...} kursywa \textsl{...} odmiana pochyla \textsc{...} kapitaliki \emph{...} wyrónienie \textnormal{...} glówny font dokumentu

Tabela 5.2: Polecenia wyboru stopnia pisma i interlinii \tiny \scriptsize \footnotesize \small \normalsize \large

mikroskopijny

\Large \LARGE \huge \Huge

wikszy

bardzo maly

mniejszy

bardzo duy

maly

ogromny

normalny

duy

najwikszy

Wewntrz trybu matematycznego mona wykorzysta instrukcje zmiany fontu do chwilowego opuszczenia trybu matematycznego i zloenia tekstu normalnym krojem. Przy okazji omawiania polece dotyczcych fontów trzeba wspomnie o koncepcji grupowania tekstu. Grupa rozpoczyna si od znaku ,,{", a koczy znakiem ,,}". Grupy slu do ograniczania zasigu dzialania polece A L TEX-a. Przyjrzyjmy si nastpujcemu przykladowi:

Lubi {\LARGE due oraz {\small male} litery} i~cyfry.

Lubi

due oraz male litery i cyfry.

Pierwszy nawias klamrowy rozpoczyna grup, potem polecenie \LARGE zmienia stopie pisma na bardzo duy, w którym zostanie zloony napis ,,due oraz". Kolejny otwierajcy nawias klamrowy zaczyna nastpn grup. Polecenie \small zmienia stopie pisma na maly. W tym stopniu zloone jest tylko slowo ,,male", poniewa nawias ,,}" zamyka grup. Po zamkniciu grupy nastpuje powrót do stopnia pisma aktualnego przed jej rozpoczciem, czyli \LARGE. W nim zostanie zloone slowo ,,litery". Zamknicie tej A grupy spowoduje, e reszt tekstu L TEX zloy w wyjciowym stopniu pisma. Jak wida, grupy mona zagnieda (nawet wielokrotnie).

70

A Adaptowanie L TEX-a

Tabela 5.3: Wielko stopnia pisma w klasach standardowych Stopie \tiny \scriptsize \footnotesize \small \normalsize \large \Large \LARGE \huge \Huge 10pt 5pt 7pt 8pt 9pt 10pt 12pt 14pt 17pt 20pt 25pt opcja 11pt 6pt 8pt 9pt 10pt 11pt 12pt 14pt 17pt 20pt 25pt opcja 12pt 6pt 8pt 10pt 11pt 12pt 14pt 17pt 20pt 25pt 25pt

Polecenia zmieniajce stopie pisma zmieniaj take interlini. Dzieje si tak jednak tylko wtedy, gdy przed zamkniciem odpowiedniej grupy koczy si akapit (przez wstawienie pustego wiersza lub polecenia \par). Zwrómy uwag na miejsce, w którym umieszczono instrukcj \par w poniszych dwóch przykladach.

{\Large Zdanie, które ma wicej ni pi slów nie ma sensu!\par}

Zdanie, które ma wicej ni pi slów nie ma sensu! Zdanie, które ma wicej ni pi slów nie ma sensu!

{\Large Zdanie, które ma wicej ni pi slów nie ma sensu!}\par

Gdy zachodzi konieczno zmiany stopnia pisma dla calego akapitu lub jeszcze dluszego tekstu, moemy skorzysta ze skladni przyjtej dla rodowisk:

\begin{Large} Zdanie, które ma wicej ni pi slów nie ma sensu! \end{Large}

Zdanie, które ma wicej ni pi slów nie ma sensu!

Zapis taki pozwala unika latwych do popelnienia bldów wynikajcych z opuszczania nawiasów otwierajcych lub zamykajcych w grupach. W trybie matematycznym w celu zloenia fragmentu wzoru innym krojem pisma mona wykorzysta polecenia zestawione w tabeli 5.4.

5.2.2

Uwaga niebezpieczestwo!

Jak ju zaznaczylimy na pocztku rozdzialu, nie naley explicite wstawia do pliku ródlowego instrukcji zmiany fontu. Byloby to niezgodne z pod-

5.3 Odstpy

71

Tabela 5.4: Polecenia wyboru fontów w trybie matematycznym Polecenie \mathcal{...} \mathrm{...} \mathbf{...} \mathsf{...} \mathtt{...} \mathnormal{...} \mathit{...} Przyklad $\mathcal{B}=c$ $\mathrm{K}_2$ $\sum x=\mathbf{v}$ $\mathsf{G\times R}$ $\mathtt{L}(b,c)$ $\mathnormal{R_{19}}\neq R_{19}$ $\mathit{ffi}\neq ffi$ Wynik B=c K2 x=v G×R L(b, c) R19 = R19 ffi = ffi

A stawow ide L TEX-a, jak jest oddzielenie formy od treci dokumentu i poslugiwanie si formatowaniem logicznym, a nie wizualnym. Jeeli fragment tekstu ma zosta wyróniony poprzez zloenie go innym krojem lub stopniem pisma, to naley zdefiniowa odpowiednie polecenie i jego wlanie uywa w treci dokumentu.

% w~preambule albo pakiecie \newcommand{\uwaga}[1]{\textbf{#1}} % po \begin{document} \uwaga{Baczno}. Przewody sieci trakcyjnej s pod napiciem. Dotknicie grozi \uwaga{mierci}.

Baczno. Przewody sieci trakcyjnej s pod napiciem. Dotknicie grozi mierci.

Niewtpliw zalet tego podejcia jest to, e kiedy póniej bdziemy chcieli wyróni wszystkie elementy, na które czytelnik powinien zwróci szczególn uwag, w inny sposób ni skladajc je pismem pólgrubym, to nie musimy przeglda calego pliku w celu sprawdzenia, czy dane wystpienie \textbf dotyczy tekstu, na który ma zosta zwrócona szczególna uwaga, czy te wstawione zostalo w zupelnie innym celu.

Na zakoczenie rada: nie naley przesadza z wykorzystywaniem wielu rónych krojów pisma w dokumencie.

5.3

5.3.1

Odstpy

Zmiana wielkoci interlinii

Wielko interlinii (odstpu pomidzy wierszami) w dokumencie mona zmienia za pomoc polecenia:

\linespread{czynnik }

72

A Adaptowanie L TEX-a

Polecenie to naley umieci w preambule dokumentu. Parametr czynnik okrela wielko interlinii. Podwójn interlini uzyskamy za pomoc \linespread{1.6}. Uywajc \linespread{1.3} uzyskamy interlini równ 1,5. Pojedynczej interlinii, zarazem domylnej odpowiada warto 1.

5.3.2

Wcicia i odstpy pomidzy akapitami

Dwa dodatkowe parametry okrelaj, odpowiednio, wielkoci wcicia akapitowego oraz odstpu midzy akapitami. Na przyklad, wpisujc: \setlength{\parindent}{0pt} \setlength{\parskip}{1ex plus 0.5ex minus 0.2ex} do preambuly dokumentu ustalamy wielko wcicia akapitowego na 0 pt (co powoduje, e akapity bd si zaczyna bez wci), a odstp midzy akapitami ustalamy na 1 ex plus 0,5 ex minus 0,2 ex. Drugi zapis oznacza, e normalny odstp midzy akapitami, wynoszcy 1,0 ex (jednostki miary A w L TEX-u podaje tabela 5.5 na stronie 73), moe si zwikszy do 1,0+0,5 = 1,5 ex lub zmniejszy do 1,9 - 0,2 = 0,8 ex. W Europie kontynentalnej akapity sklada si czasami bez wcicia akapitowego, tylko z dodatkowym odstpem midzy nimi. Ale uwaga, ten efekt pojawi si take w spisie treci, tabel i rysunków, gdzie poszczególne pozycje w spisie bd od siebie bardziej oddalone (w spisach wikszo akapitów jest jednowierszowa). Aby unikn tego troch miesznego efektu naley usun powysze instrukcje setlenght z preambuly dokumentu i wstawi je w czci glównej, po poleceniach \tableofcontents itp. Najlepiej jednak wcale nie korzysta z tego sposobu, gdy znakomita wikszo ksiek jest skladana z wciciem akapitowym, a nie z dodatkowymi odstpami midzy akapitami1 . Wcicie akapitowe wstawiamy za pomoc polecenia:

\indent

umieszczonego na pocztku akapitu2 . Wstawienie \indent, kiedy warto \parindent wynosi zero nie przyniesie oczywicie adnego efektu. Do zloenia akapitu bez wcicia naley rozpocz akapit od polecenia:

\noindent

5.3.3

Odstpy poziome

A L TEX automatycznie ustala wielkoci odstpów midzy slowami oraz midzy zdaniami. Dodatkowy odstp poziomy (przez odstp poziomy rozumiemy

Jednoczesne uycie wci i odstpów uwaa si w Polsce za powany bld typograficzny. Do uzyskania efektu wstawiania wcicia w pierwszym akapicie po tytule rozdzialu, podrozdzialu itd. naley dolczy do dokumentu pakiet indentfirst z zestawu pakietów ,,tools".

2

1

5.3 Odstpy

73

odstp midzy wyrazami, przez odstp pionowy rozumiemy odstp midzy wierszami i akapitami) wstawiamy za pomoc polecenia:

\hspace{odleglo}

Jeeli taki odstp, w wyniku zlamania akapitu na wiersze, wypadnie na pocztku lub kocu wiersza, to zostanie usunity ­ po to, by akapit nie A byl justowany ,,w chorgiewk". Jeeli L TEX ma wstawi odstp take w wypadku, gdy rozpoczyna sie lub koczy wiersz, to zamiast \hspace naley uy ,,gwiazdkowej" wersji \hspace*. Argument odleglo oznacza A wymiar L TEX-owy. W najprostszej postaci jest to liczba oraz jednostka A odlegloci. Wykaz waniejszych dostpnych w L TEX-u jednostek odlegloci znajduje si w tabeli 5.5.

To jest \hspace{1.5cm}odstp równy 1,5~cm. To jest odstp równy 1,5 cm.

A Tabela 5.5: L TEX-owe jednostki miary

mm cm in pt em ex

milimetr 1/25 cala centymetr = 10 mm cal = 25,4 mm punkt 1/72 cala 1 mm 3 w przyblieniu szeroko ,,M" w biecym foncie w przyblieniu wysoko ,,x" w biecym foncie

A Czsto wygodnie jest uy ,,elastycznej" odlegloci, zostawiajc L TEX-owi w pewnym zakresie swobod wyboru takiej odlegloci, jak uzna za najlepsz z punktu widzenia jakoci skladu. Tak elastyczn odleglo zapisujemy nastpujco: n plus p minus m. Czci ,,plus p" i ,,minus m" s opcjonalne (kad z nich mona pomin). Tego typu odlegloci maj naturaln wielko n, mog si kurczy lub rozciga w zakresie od n - m do n + p. Omawiany wczeniej odstp midzy akapitami (\parskip) jest A przykladem wymiaru o zmiennej wielkoci. Cz wymiarów L TEX-owych moe mie zmienne wielkoci, ale cz musi mie warto stal. Na przyklad, jest zrozumiale, e wcicie akapitowe musi by wielkoci stal, podobnie jak szeroko i wysoko lamu.

Polecenie:

\stretch{n}

wstawia specjalny odstp rozcigliwy o tej wlaciwoci, e potrafi wypelni cal woln przestrze wiersza. Jeeli w linii wstawimy dwa polecenia

74

A Adaptowanie L TEX-a

\hspace{\stretch{n}}, to wielko odstpów przez nie uzyskanych bdzie wg proporcji ustalonych przez argument n. W poniszym przykladzie odstp midzy x a y jest trzy razy mniejszy od odstpu midzy y a z.

x\hspace{\stretch{1}} y\hspace{\stretch{3}}z x y z

5.3.4

Odstpy pionowe

A L TEX wstawia odstpy pomidzy akapitami, rozdzialami, punktami itp. automatycznie. Jeeli istnieje potrzeba wstawienia dodatkowego odstpu pionowego, naley uy polecenia:

\vspace{odleglo}

Polecenie to naley oddzieli pustymi liniami od otaczajcego je tekstu. Jeeli w wyniku zlamania strony, odstp taki znajdzie si na pocztku lub na kocu strony (bdzie bezporednio zaczynal lub koczyl kolumn tekstu), to zostanie usunity. Jeeli ma zosta wstawiony take na pocztku lub kocu strony, to naley uy wersji ,,gwiazdkowej" \vspace*3. Argument odleglo A oznacza wymiar L TEX-owy. Polecenia \stretch, wykonanego lcznie z \pagebreak, mona uywa do rozmieszczania tekstu kolumny w pionie. W poniszym przykladzie tekst zostanie rozmieszczony tak, e odstp u dolu bdzie dwa razy mniejszy ni odstp u góry strony. \vspace{\stretch{1}} Tytul i~autor \vspace{\stretch{2}}\pagebreak Dodakowy odstp midzy dwoma wierszami tego samego akapitu lub midzy wierszami w tabeli moemy wstawi za pomoc instrukcji:

\\[odleglo]

5.4

Uklad graficzny strony

Wymiary papieru mona poda jako argumenty instrukcji \documentclass. A Na podstawie zadeklarowanych wymiarów L TEX oblicza szeroko i wysoko kolumny, marginesy i inne parametry. Na rysunku 5.2 przedstawiono wszystkie parametry graficznego ukladu strony. Do przygotowania rysunku A uylimy pakietu layout z zestawu ,,tools"4 . Jeeli obliczone przez L TEX-a wartoci s z pewnych wzgldów nieodpowiednie, mona je zmieni.

Zwrómy uwag, e w takim wypadku wysokoci kolumny tekstu na ssiednich stronach nie bdzie jednakowa, zatem korzystajmy z polecenia \vspace* z pewn ostronoci. 4 CTAN://tex-archive/macros/latex/packages/tools.

3

5.4 Uklad graficzny strony

75

4

i c T

5

i

6

i

2

T i c

c T

Pagina Górna c

T

T

Marginalia

Kolumna tekstu

7

i

E ' 9i ' 10 E i i ' 3 E

' c ' 1iE T i 11

8

i c

E

Pagina dolna

1 3 5 7 9 11

1 cal+ \hoffset \evensidemargin = 70pt \headheight = 12pt \textheight = 595pt \marginparsep = 7pt \footskip = 27pt \hoffset = 0pt \paperwidth = 597pt

2 4 6 8 10

1 cal+ \voffset \topmargin = 22pt \headsep = 19pt \textwidth = 360pt \marginparwidth = 106pt \marginparpush = 5pt (nie pokazane) \voffset = 0pt \paperheight = 845pt

Rysunek 5.2: Parametry ukladu graficznego strony

76

A Adaptowanie L TEX-a

Zanim jednak zaczniemy eksperymentowa, zwikszajc na przyklad A szeroko szpalty, chwil pomylmy. Jak dla wikszoci rzeczy w L TEX-u, istniej wane powody, dlaczego szeroko kolumny jest taka a nie inna. A W L TEX-u mamy dwie instrukcje do zmiany wielkoci wymiarów, zazwyczaj uywane w obrbie preambuly dokumentu: Pierwsza instrukcja nadaje parametrowi okrelon wielko:

\setlength{parametr }{odleglo}

Drugie polecenie zwiksza wielko parametru o okrelon wielko:

\addtolength{parametr }{length}

Druga instrukcja jest czciej wykorzystywana poniewa pozwala na modyfikowanie wymiarów. Przykladowo, aby zwikszy szeroko szpalty o jeden centymetr, naley w preambule dokumentu umieci nastpujce polecenia: \addtolength{\hoffset}{-0.5cm} \addtolength{\textwidth}{1cm} Wykonywanie operacji arytmetycznych na wymiarach ulatwia pakiet calc. Pakiet geometry pozwala na latwe modyfikowanie parametrów ukladu graficznego strony.

5.5

Wicej o odleglociach

Kiedy tylko jest to moliwe, unikajmy wykorzystywania wymiarów zdefiniowanych w jednostkach absolutnych, takich jak punkty czy milimetry. Starajmy si raczej wyrazi wymiary w odniesieniu do ju istniejcych, takich jak wysoko czy szeroko kolumny. W poniszym przykladzie szeroko rysunku jest zdefiniowana jako polowa szeroko biecej szpalty: \includegraphics[width=0.5\textwidth]{test.eps} Nastpujce trzy polecenia pozwalaj okreli szeroko, wysoko i glboko tekstu.

\settoheight{nazwa}{tekst } \settodepth{nazwa}{tekst } \settowidth{nazwa}{tekst }

Nastpujcy przyklad pokazuje moliwe zastosowanie tych polece:

5.6 Pudelka

77

\newenvironment{vardesc}[1]{% \settowidth{\parindent}{#1:\ } \makebox[0pt][r]{#1:\ }}{} \begin{displaymath} a^2+b^2=c^2 \end{displaymath} \begin{vardesc}{gdzie}% $a$, $b$ -- przyprostoktne, \par $c$ -- przeciwprostoktna. \end{vardesc}

a2 + b 2 = c2 gdzie: a, b ­ przyprostoktne, c ­ przeciwprostoktna.

5.6

Pudelka

A L TEX tworzy kad stron z pudelek, które odpowiednio skleja. Elementarnymi pudelkami s litery, z których sklejane s slowa. Slowa s nastpnie lczone w wiersze, a wiersze w akapity. Trzeba przyzna, e powysze jest mocno uproszczon wersj tego, co A si naprawd dzieje, ale zasadniczo biorc dzialanie L TEX-a mona wyjani w terminach pudelek oraz kleju (odstpu wstawianego midzy pudelkami). Nie tylko litery s pudelkami. Do pudelka mona wloy praktycznie A wszystko, take inne pudelka. Kade pudelko L TEX traktuje jak pojedyncz liter. Chcia o tym nie mówilimy wprost, pudelka pojawialy si ju w poprzednich rozdzialach. Na przyklad polecenie includegraphics albo rodowisko tabular tworz pudelka. Oznacza to, e latwo mona zestawi dwa rysunki albo tabele obok siebie. Trzeba jedynie zadba o to, by lczna szeroko polczonych obiektów nie byla wiksza ni szeroko szpalty. To samo odnosi si do akapitów, które ­ jeli tego potrzebujemy ­ moemy sklada w pudelka o zadanej szerokoci:

\parbox[pos]{szeroko}{tekst }

Do tego samego celu mona wykorzysta rodowisko:

\begin{minipage}[pos]{szeroko} tekst \end{minipage}

Argument pos jest jednoliterowy i moe przyjmowa jedn z wartoci: c, A t lub b. Wartoci te okrelaj, jak L TEX ma umieci pudelko wzgldem otaczajcego tekstu. Warto c oznacza umieszczenie rodka wysokoci pudelka na linii podstawowej, t ­ umieszczenie linii podstawowej pierwszego wiersza w pudelku na linii podstawowej otaczajcego tekstu, natomiast b umieszczenie dolnej krawdzi pudelka na linii podstawowej. Wynik zastosowania parametrów ilustruje poniszy przyklad (lini podstawow oznaczono kresk). Argument szeroko to wymiar okrelajcy szeroko pudelka.

78

A Adaptowanie L TEX-a

\makebox[0pt][l]{\rule{66mm}{.4pt}}% \parbox[c]{9mm}{5 5 5 5 5 5 5 5 5} \parbox[t]{9mm}{6 6 6 6 6 6 6 6 6} \parbox[b]{9mm}{8 8 8 8 8 8 8 8 8}

8 8 8 8 8 8 5 5 5 5 5 56 6 6888 555 6 6 6 666

Polecenie \parbox sklada tekst w pudelku, w razie potrzeby dzielc tekst na linijki. Inaczej jest z pudelkami uzyskiwanymi za pomoc polecenia \mbox, których zawarto nigdy nie jest dzielona na wiersze. Polecenia tego uywamy, gdy chcemy zapobiec dzieleniu wyrazu lub sekwencji wyrazów na wiersze. Polecenie \mbox jest uproszczon wersj instrukcji \makebox o skladni:

\makebox[szeroko][pos]{tekst }

Za pomoc opcjonalnego argumentu szeroko moemy zada szeroko pudelka. Moe ona si róni od naturalnej szerokoci tekstu w pudelku; moe wynosi zero, a nawet by wielkoci ujemn! W obrbie argumentu szeroko moemy take poslugiwa si wielkociami \width (szeroko), \height (wysoko), \depth (glboko) oraz \totalheight (suma wysokoci i glbokoci). Ponadto argument pos okrela sposób umieszczenia tekstu. Litera c oznacza wyrodkowanie, l dosunicie do lewej, r dosunicie do prawej, a s wyspacjowanie zawartoci. Poniszy przyklad ilustruje wykorzystanie polecenia \width w obrbie argumentu szeroko. Pierwsze pudelko ma szeroko równ polowie naturalnej szerokoci tekstu:

\makebox[.5\width][l]{oooooooo}% \makebox{xxxxxxxx} oooooooo xxxxxxxx

Polecenie \framebox dziala dokladnie jak \makebox, z tym e naokolo pudelka krelona jest ramka. Oto przyklad zastosowania polece \makebox i \framebox.

\makebox[\textwidth]{% p o r o d k u}\par \makebox[\textwidth][s]{% r o z s t r z e l o n y}\par \framebox[1.1\width]{Teraz jestem obramowany!} \par \framebox[0.8\width][r]{Troch tu jest za szeroko} \par \framebox[1cm][l]{Nie ma sprawy} Da si to czyta? porodku r o z s t r z e l o n y

Teraz jestem obramowany! Troch tu jest za szeroko Nie ma sprawy czyta? Da si to

5.7 Kreski i podpory

79

Pudelka mona te przesuwa w pionie. Sluy do tego polecenie:

\raisebox{przesunicie}[wysoko][glboko]{tekst }

Argument przesunicie okrela wielko przesunicia w gór (lub w dól, jeeli wielko przesunicia jest ujemna). Ponadto za pomoc parametrów opcjonalnych wysoko oraz glboko mona zada nominaln wysoko oraz A glboko pudelka (L TEX bdzie traktowal pudelko tak, jakby mialo zadane wymiary, bez wzgldu na wymiary naturalne). Wewntrz parametrów znowu mona skorzysta z polece \width, \height, \depth oraz \totalheight.

\raisebox{0pt}[0pt][0pt]{\Large% \textbf{Aaaa\raisebox{-0.3ex}{a}% \raisebox{-0.7ex}{aa}% \raisebox{-1.2ex}{r}% \raisebox{-2.2ex}{g}% \raisebox{-4.5ex}{h}}} Krzyczala, ale nikt nie zauwayl, e co si jej przytrafilo.

Aaaaaaa Krzyczala, ale nikt nie zarg uwayl, e co si jej przytrafilo. h

5.7

Kreski i podpory

Par stron wczeniej pojawilo si polecenie:

\rule[przesunicie]{szeroko}{wysoko}

W wyniku wykonania tej instrukcji najczciej otrzymujemy w skladzie czarny prostokt:

\rule{3mm}{.1pt}% \rule[-1mm]{5mm}{1cm}% \rule{3mm}{.1pt}% \rule[1mm]{1cm}{5mm}% \rule{3mm}{.1pt}

Polecenia \rule uywamy do rysowania kresek pionowych i poziomych. Na przyklad gruba czarna krecha na stronie tytulowej niniejszego Wprowadzenia to wynik zadzialania instrukcji: \rule[-1ex]{\textwidth}{5pt} Parametr przesunicie okrela, jak wysoko przesun krech ponad lini podstawow (lub opuci poniej linii podstawowej, jeeli parametr jest ujemny). Specjalnym przypadkiem jest kreska o zerowej szerokoci, ale niezerowej wysokoci. Tak kresk nazywamy podpor (strut). Podpora to czsto stosowana metoda nadawania wszystkim elementom jednakowej wysokoci.

80

A Adaptowanie L TEX-a

Spójrzmy na poniszy przyklad. Dziki wstawieniu podpory drugi wiersz ma t sam wysoko co pierwszy. Zawarto wiersza trzeciego jest identyczna jak drugiego, za wyjtkiem niewidocznej podpory. Gdyby jej brakowalo, to wysoko drugiego wiersza bylaby mniejsza.

\begin{tabular}{|c|} \hline \rule{1pt}{4ex}Pittprop \ldots\\ \hline \rule{0pt}{4ex}Strut\\ \hline Strut\\ \hline \end{tabular}

Pittprop . . . Strut Strut

Spis literatury

[1] Carlisle David P., Packages in the `graphics' bundle. Dokument dostpny w zestawie pakietów ,,graphics" w pliku grfguide.tex. A [2] Goossens Michel, Mittelbach Frank, Samarin Alexander. The L TEX Companion. Addison-Wesley, Reading 1994, ISBN 0-201-54199-8. [3] Knuth Donald E., The TEXbook, Addison-Wesley Publishing Company 1984, ISBN 0-201-13448-9. A [4] Lamport Leslie, L TEX: A Document Preparation System. 2nd ed., Addison-Wesley, Reading 1994, ISBN 0-201-52983-1. A A [5] L TEX Local Guide. Kada wielodostpna instalacja L TEX-owa powinna A zawiera L TEX Local Guide, w którym s opisane rzeczy specyficzne dla danej lokalnej instalacji. Dokument ten powinien by zawarty w pliku local.tex. W wielu wypadkach administratorzy nie udostpniaj jednak uytkownikom takiego dokumentu. Pozostaje wtedy zwrócenie si A o pomoc do lokalnego L TEX-owego guru. A A [6] L TEX3 Project Team. L TEX 2 for authors. Dokument dostpny A w pliku usrguide.tex w dystrybucji L TEX 2 . A A [7] L TEX3 Project Team. L TEX 2 for Class and Package writers. DokuA ment dostpny w pliku clsguide.tex w dystrybucji L TEX 2 . A X3 Project Team. L T X 2 Font selection. Dokument dostpny A [8] L TE E A w pliku fntguide.tex w dystrybucji L TEX 2 .

[9] Lichoski Boguslaw, TEX na indeksie. Biuletyn GUST 1994 (3). Dokument dostpny w http://www.gust.org.pl/PDF/BIUL/03/02-bl.pdf. [10] Nowacki Janusz M., TEXnologia a typografia. Biuletyn GUST 1995 (6). Dokument dostpny take w http://www.gust.org.pl/PDF/BIUL/06/01-jmn.pdf.

A [11] Reckdahl Keith, Using EPS Graphics in L TEX 2 Documents (szczególowe wyjanienie jak dolcza grafik w formacie EPS do dokumentów A L TEX-owych). Dostpny w CTAN://tex-archive/info/epslatex.ps. [12] Sch¨pf Rainer, Raichle Bernd, Rowley Chris, A New Implementation o A of L TEX's verbatim Environments. Dokument dostpny w zestawie pakietów ,,tools" w pliku verbatim.dtx. [13] Williams Graham, The TEX Catalogue (katalog pakietów dla TEX-a A oraz L TEX-a). Dokument dostpny w CTAN://tex-archive/help/ Catalogue/catalogue.html.

Skorowidz

\!, 46 $, 40 \', 24 ', 43 \(, 40 \), 40 \,, 41, 45 \-, 18 . . . , 20 \:, 45 \;, 46 \[, 40 %, 7 \\, 15, 32, 34, 38, 74 \\*, 15 \], 40 ^, 42 _, 42 |, 34 \a'o, 24 a5paper, 9 acute, 21 \addtolength, 76 æ, 21 akcenty matematyczne, 43 amsbsy, 50 amsfonts, 42, 57 amsmath, 45, 46, 48, 50 amssymb, 42, 51 \and, 29 \appendix, 27, 28 \arc, 25 argument, 6 -- opcjonalny, 6 array, 46, 47 arraycolsep, 47 \atop, 44 \author, 29 b5paper, 9 babel, 21­26 \backmatter, 29 backslash, 5 \begin, 31 \bibitem, 60 \big, 45 \Big, 45 \bigg, 45 \Bigg, 45 \bmod, 44 \boldmath, 50 \boldsymbol, 50 calc, 76 \caption, 37 \cc, 39 \cdots, 45 center, 32 \chapter, 27 \chaptermark, 63 \choose, 44 \cite, 60 \cleardoublepage, 16, 38 \clearpage, 16, 38 \closing, 39 \ctan, 25 \ctg, 25 \ctgh, 25 \date, 29 dcolumn, 35 \ddots, 45 \depth, 78, 79

SKOROWIDZ

83

description, 31 displaymath, 40 \displaystyle, 48 doc, 10 \documentclass, 8, 9, 17 dvips, 59 \dywiz, 19 \emph, 30, 69 \end, 31 enumerate, 31 EPS, 58 eqnarray, 47 equation, 40 eucal, 57 eufrak, 57 executivepaper, 9 exscale, 10, 45 fancyhdr, 62, 63 figure, 36 fleqn, 9 flushleft, 32 flushright, 32 foiltex, 8 fontenc, 10, 23­25 fonty -- CM, 22 -- EC, 22 -- PL, 22 \footnote, 30 \footnotesize, 69 \frac, 44 \framebox, 78 \frenchspacing, 27 \frontmatter, 29 \fussy, 17 geometry, 76 \geq, 52 ghostscript, 58 graphicx, 59 grave, 21 grupa, 69 \height, 78, 79

\hline, 34 \hspace, 73 \hspace*, 73 \huge, 69 \Huge, 69 \hyphenation, 17, 18 i (,,i" bez kropki), 21 \idotsint, 46 ifthen, 10 \iiiint, 46 \iiint, 46 \iint, 46 \include, 11 \includegraphics, 59 \includeonly, 11 indeks -- dolny, 42 -- górny, 42 \indent, 72 indentfirst, 72 \index, 61, 62 \input, 12 inputenc, 10, 18, 22, 24­26 instrukcja -- \!, 46 -- \', 24 -- \(, 40 -- \), 40 -- \,, 41, 45 -- \-, 18 -- \:, 45 -- \;, 46 -- \[, 40 -- \\, 15, 32, 34, 38, 74 -- \\*, 15 -- \], 40 -- \a'o, 24 -- \addtolength, 76 -- \and, 29 -- \appendix, 27, 28 -- \arc, 25 -- \atop, 44 -- \author, 29

84

SKOROWIDZ

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

\backmatter, 29 \begin, 31 \bibitem, 60 \big, 45 \Big, 45 \bigg, 45 \Bigg, 45 \bmod, 44 \boldmath, 50 \boldsymbol, 50 \caption, 37 \cc, 39 \cdots, 45 \chapter, 27 \chaptermark, 63 \choose, 44 \cite, 60 \cleardoublepage, 16, 38 \clearpage, 16, 38 \closing, 39 \ctan, 25 \ctg, 25 \ctgh, 25 \date, 29 \ddots, 45 \depth, 78, 79 \displaystyle, 48 \documentclass, 8, 9, 17 \dywiz, 19 \emph, 30, 69 \end, 31 \footnote, 30 \footnotesize, 69 \frac, 44 \framebox, 78 \frenchspacing, 27 \frontmatter, 29 \fussy, 17 \geq, 52 \height, 78, 79 \hline, 34 \hspace, 73 \hspace*, 73 \huge, 69

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

\Huge, 69 \hyphenation, 17, 18 \idotsint, 46 \iiiint, 46 \iiint, 46 \iint, 46 \include, 11 \includegraphics, 59 \includeonly, 11 \indent, 72 \index, 61, 62 \input, 12 \int, 44 \label, 29 \large, 69 \Large, 69 \LARGE, 69 \ldots, 20, 45 \left, 45 \leftmark, 62, 63 \leq, 52 \linebreak, 16 \linespread, 71 \listoffigures, 37 \listoftables, 37 \mainmatter, 29 \makebox, 78 \makeindex, 61 \maketitle, 29 \mathbb, 42 \mathbf, 71 \mathcal, 71 \mathit, 71 \mathnormal, 71 \mathrm, 71 \mathsf, 71 \mathtt, 71 \mbox, 18, 20, 78 \multicolumn, 35 \newcommand, 66 \newenvironment, 67 \newline, 15, 16 \newpage, 15 \newtheorem, 49

SKOROWIDZ

85

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

\noindent, 72 \nolinebreak, 16 \nopagebreak, 16 \normalsize, 69 \not, 52 \opening, 39 \overbrace, 43 \overleftarrow, 43 \overline, 43 \overrightarrow, 43 \pagebreak, 16, 74 \pageref, 29 \pagestyle, 11 \par, 70 \paragraph, 27 \parbox, 77, 78 \parindent, 72 \parskip, 72 \part, 27, 28 \pmb, 50 \pmod, 44 \polecenie, 65 \printindex, 62 \providecommand, 67 \ProvidesPackage, 68 \ps, 39 \qquad, 41, 46 \quad, 41, 46 \raisebox, 79 \ref, 29 \renewcommand, 67 \renewenvironment, 67 \right, 45 \rightmark, 62, 63 \rule, 79 \scriptscriptstyle, 48 \scriptsize, 69 \scriptstyle, 48 \section, 27 \sectionmark, 63 \selecthyphenation, 26 \selectlanguage, 23, 24, 26 \setlength, 72, 76 \settodepth, 76

-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

\settoheight, 76 \settowidth, 76 \signature, 38 \sloppy, 17 \small, 69 \sqrt, 42 \stretch, 73, 74 \subparagraph, 27 \subsection, 27 \subsectionmark, 63 \subsubsection, 27 \sum, 44 \table, 36 \tableofcontents, 28 \tan, 25 \textbf, 69 \textit, 69 \textmd, 69 \textnormal, 69 \textrm, 48, 69 \textsc, 69 \textsf, 69 \textsl, 69 \textstyle, 48 \texttt, 69 \textup, 69 \tg, 25 \tgh, 25 \thispagestyle, 11 \tiny, 69 \title, 29 \totalheight, 78, 79 \underbrace, 43 \underline, 43 \usepackage, 9, 22, 23, 67 \vdots, 45 \vec, 43 \verb, 33 \verbatiminput, 63 \vspace, 74 \vspace*, 74 \widehat, 43 \widetilde, 43 \width, 78, 79

86

SKOROWIDZ

\int, 44 interlinia, 71 itemize, 31 (,, j" bez kropki), 21 jednostki miary, 73 klasa -- article, 8 -- book, 8 -- letter, 8, 38 -- report, 8 -- slides, 8 klej, 77 Knuth, Donald E., 1 komentarz, 7 kropka, 20 \label, 29 Lamport, Leslie, 1 \large, 69 \Large, 69 \LARGE, 69 A L TEX 2.09, 2 A L TEX 2 , 2 A L TEX3, 2, 5 latexsym, 10 layout, 74 \ldots, 20, 45 \left, 45 \leftmark, 62, 63 legalpaper, 9 \leq, 52 leqno, 9 letter, 38 letterpaper, 9 ligatura, 20 \linebreak, 16 \linespread, 71 linia podstawowa, 45, 77, 79 \listoffigures, 37 \listoftables, 37 litera grecka, 42 \mainmatter, 29 \makebox, 78

makeidx, 10, 61 makeindex, 61 \makeindex, 61 \maketitle, 29 math, 40 \mathbb, 42 \mathbf, 71 \mathcal, 71 \mathit, 71 \mathnormal, 71 \mathrm, 71 mathrsfs, 57 \mathsf, 71 \mathtt, 71 \mbox, 18, 20, 78 minipage, 77 Mittelbach, Frank, 2 modulo, 44 \multicolumn, 35 nawias, 44 \newcommand, 66 \newenvironment, 67 \newline, 15, 16 \newpage, 15 \newtheorem, 49 \noindent, 72 \nolinebreak, 16 \nopagebreak, 16 \normalsize, 69 \not, 52 odstp, 5 -- na pocztku wiersza, 5 -- po instrukcji, 6 -- poziomy, 72 -- w trybie matematycznym, 45 oe, 21 ogranicznik, 44 opcje, 8 \opening, 39 \overbrace, 43 overfull hbox, 17 \overleftarrow, 43 \overline, 43

SKOROWIDZ

87

\overrightarrow, 43 \pagebreak, 16, 74 \pageref, 29 \pagestyle, 11 pakiet, 9 -- amsbsy, 50 -- amsfonts, 42, 57 -- amsmath, 45, 46, 48, 50 -- amssymb, 42, 51 -- babel, 21­26 -- calc, 76 -- dcolumn, 35 -- doc, 10 -- eucal, 57 -- eufrak, 57 -- exscale, 10, 45 -- fancyhdr, 62, 63 -- fontenc, 10, 23­25 -- geometry, 76 -- graphicx, 59 -- ifthen, 10 -- indentfirst, 72 -- inputenc, 10, 18, 22, 24­26 -- latexsym, 10 -- layout, 74 -- makeidx, 10, 61 -- mathrsfs, 57 -- platex, 19, 25, 44, 52 -- polski, 25, 27 -- showidx, 62 -- syntonly, 10 -- verbatim, 64 \par, 70 \paragraph, 27 \parbox, 77, 78 \parindent, 72 \parskip, 72 \part, 27, 28 pierwiastek kwadratowy, 42 platex, 19, 25, 44, 52 \pmb, 50 \pmod, 44 polecenia, 6

\polecenie, 65 polski, 25, 27 prim, 43 \printindex, 62 \providecommand, 67 \ProvidesPackage, 68 przecinek, 20 \ps, 39 pudelko, 77 \qquad, 41, 46 \quad, 41, 46 quotation, 32 quote, 32 \raisebox, 79 \ref, 29 \renewcommand, 67 \renewenvironment, 67 \right, 45 \rightmark, 62, 63 \rule, 79 \scriptscriptstyle, 48 \scriptsize, 69 \scriptstyle, 48 \section, 27 \sectionmark, 63 \selecthyphenation, 26 \selectlanguage, 23, 24, 26 \setlength, 72, 76 \settodepth, 76 \settoheight, 76 \settowidth, 76 showidx, 62 \signature, 38 \sloppy, 17 \small, 69 spójka, 20 \sqrt, 42 stopie pisma, 69 \stretch, 73, 74 \subparagraph, 27 \subsection, 27 \subsectionmark, 63

88

SKOROWIDZ

\subsubsection, 27 \sum, 44 surd, 43 syntonly, 10 rodowisko, 31 -- array, 46, 47 -- center, 32 -- description, 31 -- displaymath, 40 -- enumerate, 31 -- eqnarray, 47 -- equation, 40 -- figure, 36 -- flushleft, 32 -- flushright, 32 -- itemize, 31 -- letter, 38 -- math, 40 -- minipage, 77 -- quotation, 32 -- quote, 32 -- tabbing, 24 -- table, 36 -- tabular, 34 -- thebibliography, 60 -- verbatim, 33, 63 -- verse, 32 tabbing, 24 \table, 36 table, 36 \tableofcontents, 28 tabular, 34 \tan, 25 \textbf, 69 \textit, 69 \textmd, 69 \textnormal, 69 \textrm, 48, 69 \textsc, 69 \textsf, 69 \textsl, 69 \textstyle, 48 \texttt, 69

\textup, 69 \tg, 25 \tgh, 25 thebibliography, 60 \thispagestyle, 11 \tiny, 69 \title, 29 \totalheight, 78, 79 tryb matematyczny, 40 twocolumn, 9 ulamek, 44 umlaut, 21 \underbrace, 43 underfull hbox, 17 \underline, 43 \usepackage, 9, 22, 23, 67 \vdots, 45 \vec, 43 \verb, 33 verbatim, 64 verbatim, 33, 63 \verbatiminput, 63 verse, 32 \vspace, 74 \vspace*, 74 w-tyl-ciach, 6 wektor, 43 \widehat, 43 \widetilde, 43 \width, 78, 79 wielokropek, 45 wstawka, 35 WYSIWYG, 3, 4 wzorce podzialu, 21

A zalety L TEX-a, 4 znak -- calki, 44 -- sumowania, 44

ywa pagina, 62

Information

lshort2e.dvi

98 pages

Find more like this

Report File (DMCA)

Our content is added by our users. We aim to remove reported files within 1 working day. Please use this link to notify us:

Report this file as copyright or inappropriate

1226399