bevezetés a dokumentumkészítő rendszer...

531
Bevezetés a L A T E X dokumentumkészítő rendszer használatába Tómács Tibor Eszterházy Károly Főiskola Matematikai és Informatikai Intézet Eger http://www.ektf.hu/tomacs [email protected] 2013. december 18.

Upload: others

Post on 29-Jan-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

  • Bevezetés a

    LATEXdokumentumkészítő rendszer használatába

    Tómács Tibor

    Eszterházy Károly FőiskolaMatematikai és Informatikai Intézet

    Eger

    http://www.ektf.hu/tomacs

    [email protected]

    < 2013. december 18.

  • Donald ErvinKnuth

    a TEX megalkotója(szül.: 1938)

    Leslie Lamporta LATEX

    megalkotója(szül.: 1941)

  • A TEX szimbóluma(Tervezte Duane Bibby)

  • A TEX és a LATEX célja

    TEX −→ τ έχνη (techné) = művészet, mesterség görög szóból.Kiejtése nem „teksz” hanem „tekh” (mint a „technika” szóban).

    Szerzője Donald Ervin Knuth (1977) stanfordi matematikus.

    Verziószáma π-hez tart, jelenleg 3,1415926.

    A TEX a „nyomdászat assemblere”, melyben elemi parancsokkaldolgozhatunk.

    Több makrócsomag is készült, melyek leegyszerűsítik a szerkesztést:• plainTEX (Donald Ervin Knuth)• AMS-TEX (Michael Spivak, American Mathematical Society)• LATEX (Leslie Lamport)

    Mára a LATEX vált egységesen elfogadottá. (Kiejtése „léjtekh”, vagymagyarosan „latekh”.)

    Tómács Tibor Bevezetés a LATEX-rendszerbe 4 / 531

  • A TEX és a LATEX célja

    A LATEX tehát egy magas szintű dokumentumleíró nyelv. Első hivatalosverziószáma 2.09.

    Leslie Lamport 1989-ben visszavonult a fejlesztésétől. Ekkor a stanfordiTEX-találkozó után létrejött egy munkacsoport, mely a LATEX újraírását éskiterjesztését tűzte ki célul.

    1994-ben jelent meg a LATEX2ε (ejtsd: latekh kettő e), ami magábaolvasztotta a AMS-TEX-et is.A LATEX2ε folyamatosan bővül ún. csomagokkal, melyek bizonyos speciálisfeladatok elvégzését könnyítik meg.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 5 / 531

  • A TEX és a LATEX célja

    A számítógépes szerkesztő programok megjelenése óta a szerző a műmegírásától a szedésig mindent maga végez. Azonban legtöbbször atipográfiához és a szedéshez nem ért, így sok olyan dokumentum készül,mely a tipográfia legelemibb szabályait sem tartja be.

    A LATEX koncepciója szerint a szerző a tipográfusi munka nagy részét aLATEX-re bízza, míg a szedő munkáját a TEX végzi el.

    Ettől függetlenül a végső alak minden részletét befolyásolhatjuk, sőt sajátstílusállományt is írhatunk, de ez csak tipográfiai tudással és a LATEXmélyebb ismeretével ajánlott.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 6 / 531

  • Előnyök

    • Profi tipográfia.• Matematikai formulák könnyű és tipográfiailag helyes megvalósítása.• Vizuális szerkesztésre nincs szükség.• Irodalomjegyzék, tartalomjegyzék, szójegyzék, lábjegyzet,kereszthivatkozások automatikus elkészítése.

    • Minden operációs rendszeren hozzáférhető.• Egy rendszeren megírt mű egy másik rendszeren lefordítva ugyanazt azeredményt adja.

    • Nagy terjedelmű dokumentum forrása és az eredményt jelentő PDFfájl is csekély méretű.

    • Ingyenes, nyílt forráskódú.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 7 / 531

  • Hátrányok

    • A tipográfiai szabályoknak megfelelő új stílus kialakítása bonyolult.Ezért a kezdő felhasználónak a már meglévők használata ajánlott.

    • Leírás nélkül nem lehet boldogulni.• Hibák megtalálása, javítása néha nehéz, de a gyakorlat megszerzésévelilletve megfelelő editor használatával ez könnyebbé válik.

    • A LATEX forrása egy szöveges állomány. A szerkesztett állomány együtttartalmazza a kiadvány szövegét és a LATEX parancsait. Tehát aszerkesztés során nem azt látom, amit kapok.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 8 / 531

  • Telepítés

    A TEX egy programcsomag, mely többek között a LATEX-et is tartalmazza.Ebből minden operációs rendszerre készült.

    Mi a Windows alatt is működő TeX Live rendszert fogjuk használni.

    Ennek saját szerkesztő programja a TeXworks, de sok kényelmi szolgáltatáshiányzik belőle. Ezért ehelyett a TeXstudio nevű ingyenes programot fogjukhasználni.

    A telepítés menetét az alábbi címen olvashatja el:

    http://www.ektf.hu/tanszek/matematika/tomacs/latex.htm

    Tómács Tibor Bevezetés a LATEX-rendszerbe 9 / 531

    http://www.ektf.hu/tanszek/matematika/tomacs/latex.htm

  • Forrásállomány, fordító, dokumentáció

    A forrásállomány egy szöveges fájl, kiterjesztése tex.

    Ezt lefordítjuk a latexmk programmal pdf kiterjesztésű fájlba, mely amegfelelő beállítás után a TeXstudio-ban az F1 billentyűvel érhető el.

    A forrásállományban használható parancsok és csomagok teljesdokumentációja a texdoctk.exe (TeX Documentation Toolkit) programsegítségével tanulmányozható. Ez a program része a TeX Live rendszernek,ami

    Start → Minden program → TeX Live → TeXdoc GUImódon, vagy parancssorból indítható. A TeXstudio-ból is elérhető adokumentáció:

    Súgó → Súgó csomagok...Itt be kell írni az adott csomag nevét. Harmadik lehetőség, hogyparancssorba írja a következőt:

    texdoc csomagnév

    Tómács Tibor Bevezetés a LATEX-rendszerbe 10 / 531

  • Forrásállomány szerkezete

    \documentclass[opciók]{dokumentumosztály neve}preambulum\begin{document}dokumentum teste\end{document}

    Minden LATEX-parancs \ jellel kezdődik.

    Fontosabb dokumentumosztályok: article, report, book.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 11 / 531

  • Csomagok

    A LATEX képességei ún. csomagokkal bővíthetők. Stílusfájl is lehet csomag,amely a dokumentumosztály stílusát határozza meg.

    Ezeket a preambulumban kell betölteni a\usepackage[opciók]{csomag neve} paranccsal.

    Ha csak alapopciókat használunk, akkor elég a\usepackage{csomag neve} parancs.

    Ha több opciót is betöltünk, akkor azokat vesszővel kell elválasztani. Pl.\usepackage[OT2,T1]{fontenc}

    Ha alapopciókkal több csomagot is betöltünk, akkor az a következő módonis megtehető: \usepackage{csomag1,csomag2,...}

    Gyakran fogjuk használni az ∈ jelölést. Pl.: \euro ∈ eurosym azt fogjajelenteni, hogy az eurosym csomag betöltésével használhatjuk az \europarancsot.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 12 / 531

  • Opció, argumentum

    Az előbb említett \usepackage[OT2,T1]{fontenc} parancs példájánmegemlítünk két, a következőkben gyakran említett fogalmat.

    [ és ] jelek közötti részt nevezzük a \usepackage parancs opciójának. Haaz alapopciókat használjuk, akkor ezt elhagyjuk. Opciója nincs mindenparancsnak.

    { és } jelek közötti részt nevezzük a \usepackage parancsargumentumának.

    Ha egy parancs argumentumába szöveget kell írni, akkor a { és } jelek el ishagyhatók, de akkor csak a soron következő betűre hat. Pl.:

    \textbf{Szöveg} hatása: Szöveg\textbf Szöveg hatása: Szöveg

    Tómács Tibor Bevezetés a LATEX-rendszerbe 13 / 531

  • Deklarációs parancs, blokk

    Vannak argumentum nélküli parancsok is. Például a \LaTeX parancshatására kiíródik a LATEX logo, vagy \euro ∈ eurosym hatása: e.Ha egy argumentum nélküli parancs az azt követő részre hat ki, akkor aztdeklarációs parancsnak nevezzük. Például a \bfseries az azt követőszöveget félkövér betűkkel szedi ki. Ha azt akarjuk, hogy ez csak egy adottszövegrészre hasson, akkor tegyük a következőt:

    {\bfseries Csak ez fog félkövéren megjelenni.} Ez már nem.

    Ilyenkor a { és } jelek közötti részt blokknak nevezzük.

    Fontos szabály, hogy deklarációs parancs utáni szóköz a végeredménybennem jelenik meg.

    Vannak olyan argumentumos parancsok, amelyek szintén az azt követőrészre hatnak ki. Ekkor is használhatunk blokkot:

    {\selectlanguage{english} Itt angol tipográfia érvényesül.}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 14 / 531

  • Környezet

    \begin{document}...\end{document}

    parancspárt a továbbiakban document környezetnek fogjuk nevezni.

    A LATEX-ben sokféle környezet létezik. Például számozott listákat azenumerate környezettel tudunk írni:

    \begin{enumerate}...\end{enumerate}

    Minden deklarációs parancsnak van környezet változata is. Pl.:

    {\bfseries ...} = \begin{bfseries} ... \end{bfseries}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 15 / 531

  • Komment behelyezése forrásállományba

    Ha a forrásállományba ún. kommentet akarunk elhelyezni, vagyis amit aLATEX-fordító figyelmen kívül hagy, akkor azon szöveg elejére írjunk % jelet.A komment vége sortörés. Pl.

    Szöveg % komment szövegSzöveg

    hatása

    SzövegSzöveg

    Ha több sorból álló részt akarunk „kikommentezni”, akkor használjuk acomment csomag comment környezetét. A comment csomag továbbilehetőségeire még visszatérünk a „LATEX programozása” című részben.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 16 / 531

  • article dokumentumosztály

    Előadások, meghívók, kisebb jelentések, programdokumentációk,publikációk stb. készítéséhez.

    Opciói (aláhúzott az alapértelmezett):• 10pt, 11pt, 12pt → A dokumentum alap betűmérete pontban.• a4paper, a5paper, b5paper, letterpaper → Papírméret.• oneside, twoside → Egy- ill. kétoldalas szedés.• notitlepage, titlepage → Címlap nincs, van.• final, draft → Draft esetén jelzi a túlcsordulásokat és az ábráknakcsak a doboza jelenik meg. Final esetén nem jelzi a túlcsordulásokat ésaz ábrákat megjeleníti.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 17 / 531

  • report dokumentumosztály

    Beszámolók, értekezések, diplomamunkák készítéséhez.

    Opciói megegyeznek az article dokumentumosztályéval.

    Alapértékek: 10pt, letterpaper, oneside, titlepage, final

    Ezenkívül van még egy opciója (aláhúzott az alapértelmezett):

    openright, openany → A részek és fejezetek új oldalon kezdődnek. Ezaz oldal openright esetén csak páratlan sorszámú lehet, s ennek érdekébenakár üres oldalt is hagy. Az openany opció esetén az új oldal számabármilyen lehet.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 18 / 531

  • book dokumentumosztály

    Könyvek írásához.

    Opciói megegyeznek a report dokumentumosztályéval.

    Alapértékek: 10pt, letterpaper, twoside, titlepage, openright,final.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 19 / 531

  • Gyakorlat

    1 Indítsa el a TeXstudio-t.2 Nyisson meg egy új dokumentumot.3 Használjon article dokumentumosztályt.4 Az oldalméret legyen A4 és használjon 12 pt alapbetűméretet.5 Az alaphelyzetben betöltött Computer Modern fontokról térjen átTimes fontokra a txfonts csomag betöltésével.

    6 Írja a dokumentumtestbe: Nem is olyan bonyolult!7 Mentse a forrásfájlt elso.tex néven.8 Fordítsa le PDF-be.9 Szándékos hibázással tanulja meg a hibakezelést.10 Munkafájlok törlése.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 20 / 531

  • Megoldás

    A forrásállomány tartalma:

    \documentclass[a4paper,12pt]{article}\usepackage{txfonts}\begin{document}Nem is olyan bonyolult!\end{document}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 21 / 531

  • Foglalt karakterek

    Vannak olyan karakterek, melyek közvetlenül nem jeleníthetők meg, mert aforrásállományban speciális jelentésük van:

    \ (backslash) parancsok ezzel kezdődnek% kommentek ezzel kezdődnek{} blokkok, illetve parancsok argumentumainak határai$ matematikai mód határolójele& táblázatoknál kell# (hash mark) változót tartalmazó parancs definiálásához kell_ alsó index^ felső index~ törhetetlen szóköz

    Tómács Tibor Bevezetés a LATEX-rendszerbe 22 / 531

  • Foglalt karakterek megjelenítése

    \ ← \textbackslash% ← \%{ ← \{} ← \}$ ← \$& ← \&# ← \#_ ← \_^ ← \textasciicircum~ ← \textasciitilde

    Általánosan pl. ~ ← \char\string‘\~ (ahol ‘ fordított aposztrófjel azAltGr 7).

    Tómács Tibor Bevezetés a LATEX-rendszerbe 23 / 531

  • Speciális betűk

    Œ ← \OEœ ← \oeÆ ← \AEæ ← \aeß ← \ssØ ← \Oø ← \oŁ ← \Lł ← \lı ← \i ← \j

    Tómács Tibor Bevezetés a LATEX-rendszerbe 24 / 531

  • Ékezetes betűk

    Az ékezetes betűket alapesetben ún. „repülő ékezetekkel” jeleníthetjük meg.

    Magyará ← \’{a} viszont í ← \’{\i}ő ← \H{o}ö ← \"{o}A többi értelemszerűen írandó.

    Nem magyarò ← \‘{o} ô ← \^{o} õ ← \~{o} ō ← \={o} ȯ ← \.{o}ŏ ← \u{o} ǒ ← \v{o} o̊ ← \r{o} o̧ ← \c{o} o. ← \d{o}o¯← \b{o} �oo ← \t{oo}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 25 / 531

  • Kódlap

    A magyar ékezetes betűk megjelenítése történhet közvetlenül billentyűzetrőlis. Ehhez közölni kell, hogy milyen kódolású a forrásállomány. Ez jelenesetben utf8.

    Ezt az inputenc csomag utf8 opcióval való betöltésével érhetjük el.

    Ekkor minden billentyűzetről bevitt magyar ékezetes betűt fordításkorrepülő ékezetes betűre konvertál.

    Ha a forrásállomány kódolása ISO-8859-2, akkor az inputenc csomagotlatin2 opcióval kell betölteni.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 26 / 531

  • Belső kódolás

    A TEX belső kódolása csak az angol ábécé betűit tekinti betűnek. A repülőékezetes betűket nem, mert azok több karakterből állnak.

    Ahhoz hogy ez ne így legyen (márpedig ez a szavak helyes elválasztásáhozfeltétlenül szükséges), át kell térnünk az eredeti OT1 (old text 1) belsőkódolásról a magyar betűkhöz megfelelő T1 (text 1) kódolásra.

    Ezt a fontenc csomag T1 opcióval való betöltésével érhetjük el.

    A T1 belső kódolás a European Computer Modern (EC) fontkészletethasználja alapesetben.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 27 / 531

  • T1 kódolással elérhető további betűk

    Ékezetes betűkǫ ← \k{o} Ľ ← \v{L} ľ ← \v{l} ď ← \v{d} ť ← \v{t}

    Speciális betűkÐ ← \DH ð ← \dh Ð ← \DJ đ ← \dj Ŋ ← \NGŋ ← \ng Þ ← \TH þ ← \th

    Tómács Tibor Bevezetés a LATEX-rendszerbe 28 / 531

  • Cirill betűk

    Latin betűs szövegben néha szükség lehet cirill betűkre is. Ehhez a T1belső kódolás elé töltsük be az OT2 kódolást is:\usepackage[OT2,T1]{fontenc}

    Ekkor a T1 lesz az alapértelmezett. Az OT2 cirill karaktereit az alábbiparanccsal jelenítheti meg:{\fontencoding{OT2}\selectfont orosz szöveg}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 29 / 531

  • Cirill betűk bevitele

    A a ← A aB b ← B bV v ← V vG g ← G g&G &g ← \’{G} \’{g}D d ← D d� � ← Dj djE e ← E e� � ← E0 e0� ← E2 e2� � ← Zh zhZ z ← Z z� � ← D3 d3I i ← I i� � ← I1 i1 � = ← \"{\CYRII} \"{\i}

    � � ← I0 i0 J j ← J jK k ← K k&K &k ← \’{K} \’{k}L l ← L l� ← Lj ljM m ← M mN n ← N n� � ← Nj njO o ← O oP p ← P p� � ← C1 c1R r ← R rS s ← S sT t ← T t&C &c ← \’{C} \’{c}U u ← U u

    Tómács Tibor Bevezetés a LATEX-rendszerbe 30 / 531

  • Cirill betűk bevitele

    $U $u ← \U{U} \U{u}F f ← F fH h ← H hC c ← C cQ q ← Q q� ← D2 d2X x ← X xW w ← W w_ ← P2 p2Y y ← Y y^ ~ ← P1 p1� � ← E1 e1� � ← Yu yu&� &� ← \’{\CYRYU} \’{\cyryu}� � ← Ya ya&� &� ← \’{\CYRYA} \’{\cyrya}

    � � ← \CYRIZH \cyrizh# + ← \CYRYAT \cyryat� � ← \CYRFITA \cyrfita

    Tómács Tibor Bevezetés a LATEX-rendszerbe 31 / 531

  • Fraktúr fontok (Gótikus írás)

    A latin és cirill betűkön kívül még sokféle a rendelkezésünkre áll. Példáulgótikus, yfonts csomaggal írható:

    Und da er ihn fand, spraĚ er zu ihm:GlaubeĆ du an den Sohn GotteŊ?36. Er antwortete und spraĚ:Herr, welĚer iĆ’Ŋ ... Du haĆ ihn

    gesehen, und der mit dir redet, der iĆ’Ŋ. 38. Eraber spraĚ: Herr, iĚ glaube; und betete ihn an.

    Ennek a forráskódja:{\fontfamily{yfrak}\selectfont\fraklines\yinipar{U}nd ... \par}

    \par nélkül az iniciálé alá nem folyik be a szöveg.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 32 / 531

  • Ligatúrák

    Ligatúrán a betűknek a szokásosnál szorosabb összekötését értik. Alegismertebbek a következő ún. f-ligatúrák:

    ff fi fl ffi fflA cirill betűknél is van hasonló, bár ezeket nem nevezzük ligatúráknak. Pl.yu egybeírva más betűt ad, mint különírva:

    � y u ← yu y u

    Ha ezt a három cirill betűt szóközök nélkül szeretnénk leírni, akkor akövetkezőt kell tenni:

    �yu ← yu{y}u

    Tómács Tibor Bevezetés a LATEX-rendszerbe 33 / 531

  • Különleges karakterek

    Itt felsorolunk néhány érdekes karaktert. Bővebben erről atexdoc symbols-a4 parancssorba írásával olvashatnak.

    e ← \euro ∈ eurosym£ ← \pounds¢ ← \textcent ∈ textcomp℗ ← \textcircledP® ← \textregistered ∈ textcomp© ← \textcopyright ∈ textcomp« ← \textcopyleft ∈ textcomp† ← \dag‡ ← \ddag∗ ← \textasteriskcentered• ← \textbullet◦ ← \textopenbullet ∈ textcomp

    ␣ ← \textvisiblespace¡ ← !‘¿ ← ?‘‰ ← \textperthousand

    ∈ textcomp§ ← \S¶ ← \P№ ← \textnumero ∈ textcomp※ ← \textreferencemark

    ∈ textcomp5˙← 5\.

    Érdemes még tanulmányozni a wasysym csomagot is, ami sok érdekesszimbólumot tartalmaz.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 34 / 531

  • PostScript jelek

    A pifont csomag betöltése után PostScript jeleket is kiírathatunk a\ding{kódszám} paranccsal (pl. \ding{44} hatása ,).

    Tómács Tibor Bevezetés a LATEX-rendszerbe 35 / 531

  • PostScript jelek kódszámai

    ! 33" 34# 35$ 36% 37& 38' 39( 40) 41* 42+ 43, 44- 45. 46/ 470 48

    1 492 503 514 525 536 547 558 569 57: 58; 59< 60= 61> 62? 63@ 64

    A 65B 66C 67D 68E 69F 70G 71H 72I 73J 74K 75L 76M 77N 78O 79P 80

    Q 81R 82S 83T 84U 85V 86W 87X 88Y 89Z 90[ 91\ 92] 93^ 94_ 95` 96

    a 97b 98c 99d 100e 101f 102g 103h 104i 105j 106k 107l 108m 109n 110o 111p 112

    q 113r 114s 115t 116u 117v 118w 119x 120y 121z 122{ 123| 124} 125~ 126¡ 161¢ 162

    Tómács Tibor Bevezetés a LATEX-rendszerbe 36 / 531

  • PostScript jelek kódszámai

    £ 163¤164¥ 165¦ 166§ 167¨ 168© 169ª 170« 171¬ 172 173® 174¯ 175° 176± 177² 178

    ³ 179´ 180µ 181¶ 182· 183¸ 184¹ 185º 186» 187¼ 188½ 189¾ 190¿ 191À 192Á 193Â 194

    Ã 195Ä 196Å 197Æ 198Ç 199È 200É 201Ê 202Ë 203Ì 204Í 205Î 206Ï 207Ð 208Ñ 209Ò 210

    Ó 211Ô212Õ 213Ö214× 215Ø 216Ù217Ú 218Û219Ü220Ý221Þ222ß 223à 224á 225â226

    ã227ä228å229æ230ç 231è 232é 233ê 234ë 235ì 236í 237î 238ï 239ñ 241ò 242ó243

    ô 244õ 245ö 246÷ 247ø248ù 249ú 250û 251ü252ý253þ254

    Tómács Tibor Bevezetés a LATEX-rendszerbe 37 / 531

  • Központozás

    SzóközForrásállományban: szóköz(ök) vagy sortörés (hacsak a sor nem % jelrevégződik). A deklarációs parancsok elnyelik az utánuk lévő szóközt. Ilyenkorvagy lezárjuk kapcsos zárójelekkel a parancs hatását, vagy \␣ paranccsalkikényszerítjük a szóközt:LATEXkönyv ← \LaTeX könyvLATEX könyv ← {\LaTeX} könyv vagy \LaTeX{} könyv vagy\LaTeX\ könyvTörhetetlen szóköz jele a forrásállományban ~ (pl. IV. Béla ← IV.~Béla).

    . , : ; ? !Ezek elé ne, de utána tegyünk szóközt! Kivétel, ha utána záró idézőjel vagy) jel van.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 38 / 531

  • Központozás

    Kötőjel (forrásállományban -)levegő-mintavétel; elő- vagy utótag; betűtípus és -méret; egy-két ember;kb. 5-6 éves; tudod-e;

    Nagykötőjel (forrásállományban - -)15–21. oldal ← 15--21. oldal;kelet–nyugati; TU–154; brazil–magyar meccs;Bolzano –Weierstrass-tétel ← Bolzano\,--\,Weierstrass-tétel;

    Gondolatjel (forrásállományban - -)Magyarban – mondta – ez a gondolatjel.Sokszor vitatkoztak – legtöbbször semmiségekért –, de szerették egymást.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 39 / 531

  • Központozás

    ZárójelekItt pontosan az a szabály, mint a gondolatjelnél.

    Hármaspont (forrásállományban \dots és nem ...)„. . . várom a párom . . . üres a polc. . . ”Mit is akartam mondani. . .

    Tómács Tibor Bevezetés a LATEX-rendszerbe 40 / 531

  • Központozás

    IdézőjelAz idézőjel és a belső idézőjel nyelvenként változó. (Lásd mégaz 53. oldalon.)

    Magyarban:,,Bla-bla. >>Bla-bla.

  • Magyar tipográfia

    A magyar elválasztás és tipográfiai szabályok az alábbi kóddalérvényesíthetők:

    \documentclass{article}\usepackage[T1]{fontenc}\usepackage[utf8]{inputenc}\PassOptionsToPackage{defaults=hu-min}{magyar.ldf}\usepackage[magyar]{babel}\begin{document}...\end{document}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 42 / 531

  • Magyar tipográfia

    A babel csomag magyar opciójának betöltéséhez szükség van amagyar.ldf fájlra. A TeX Live nem a legújabb verziót tartalmazza. Alegújabb verziót (innen letölthető: http://www.math.bme.hu/latex/)tegyük a forrásfájlt tartalmazó könyvtárba.

    A magyar.ldf opcióiról bővebben a magyarldf-doc.pdf-ben olvashatnak.http://www.math.bme.hu/latex/magyarldf-doc.pdf

    Szabó Péter (szül.: 1981)a magyar.ldf v1.5szerzője és fejlesztőjee-mail: [email protected]

    Tómács Tibor Bevezetés a LATEX-rendszerbe 43 / 531

    http://www.math.bme.hu/latex/http://www.math.bme.hu/latex/[email protected]

  • Magyar elválasztás

    Fontos! A következőket csak a szerkesztés végén alkalmazzuk!Azaz a pdf-et nézzük át, és csak az elválasztás szempontjából problémáshelyeken használjuk ezeket a megoldásokat. Ezzel munkát spórolunk, ésjavítjuk a forrásállomány olvashatóságát.

    A szóelválasztás nem lehet tökéletesen automatikus (pl. ka-ró-ra ill.kar-ó-ra). A \- ún. puha elválasztójel a szóban láthatatlan marad, csak azta helyet jelöli, ahol a szót el szabad választani. Például a

    Már nem volt a szarkánál a kar\-ó\-ra,mikor felrepült a ka\-ró\-ra.

    mondatban a „karóra” szó mindkétszer jól lesz elválasztva, ha arra szükségvan.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 44 / 531

  • Magyar elválasztás

    A mennyi → meny-nyi típusú elválasztást sem lehet teljesenautomatizálni. Gondoljunk a „magánnyomozó” szóra. A dupla kettősmássalhangzók esetén a szövegbe írjuk a következőt: me‘nnyi (ahol ‘fordított aposztrófjel az AltGr 7).

    Ha egy szóban kötőjel van, akkor azt a TEX csak a kötőjelnél fogja tudnielválasztani. Hogy ez ne így legyen, írhatunk a szóba puha kötőjeleket, vagyami ennél egyszerűbb, a magyar.ldf betöltése után használhatjuk a ‘- jelet- helyett. Ilyenkor minden lehetséges helyen el tudja választani a TEX aszót. Pl. egyszer‘-kétszer

    Ha pl. a „karóra” szót nem akarjuk elválasztani, akkor használjuk az\mbox{karóra} parancsot.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 45 / 531

  • Túlcsordulás

    Ha a LATEX nem tudja megoldani egy sorvégi szó elválasztását, akkor ún.túlcsordulás jön létre. Ezeket a helyeket célszerű bejelölni avégeredményben. Ehhez gépeljük a következőt a preambulumba:\overfullrule10pt. Az így észlelt hibákat azután javíthatjuk a forrásban.

    Túlcsordulás akkor is létrejöhet, ha a sorvégi szót el tudja választani aLATEX, de egyetlen megoldás esetén sem lesznek a sorban a szóközökoptimálisak. Ilyen esetben a legjobb megoldás a szöveg átfogalmazása.

    Kényelmesebbnek tűnő lehetőség a \sloppy parancs használata, ami utána túlcsordulások úgy szűnnek meg, hogy az adott sorban a szóközök túlnagyok lesznek. Ez tipográfia hiba, ezért ezt a megoldást csak legvégsőesetben alkalmazzuk, vagy inkább még akkor sem. A \sloppy hatása a\fussy paranccsal szüntethető meg.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 46 / 531

  • Többnyelvű szöveg

    Ha magyar szövegben angol részleteket is meg akarunk jeleníteni, akkor akövetkezőt kell beírni a forrásállományba:

    \documentclass{article}\usepackage[T1]{fontenc}\usepackage[utf8]{inputenc}\PassOptionsToPackage{defaults=hu-min}{magyar.ldf}\usepackage[english,magyar]{babel}\begin{document}...\end{document}

    Amikor az angol szövegrészlethez érünk, írjuk be a{\selectlanguage{english} angol szöveg} parancsot.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 47 / 531

  • A magyar.ldf aktív karaktere

    A magyar.ldf használatakor a fordított aposztrófjelnek (AltGr 7 → ‘)speciális szerepe van. Erre láttunk példákat az előzőekben (me‘nnyi,egyszer‘-kétszer). Ezért ezt aktív karakternek nevezzük.

    További funkciója még, hogy az angol nyitó idézőjelet (‘‘) átalakítjamagyarrá: ‘‘idézet’’ → „idézet”.A magyar.ldf használatakor angol nyitó idézőjelet ‘’ (Altgr7 Shift1)módon lehet írni.

    Ha \string‘-et gépelünk, akkor az aktív karakter speciális jelentéseeltűnik. Ezzel is lehet készíteni angol nyitó idézőjelet: \string‘\string‘

    Harmadik lehetőség az angol nyitó idézőjel kiírására, ha az előző oldalonleírtak szerint az angol idézetet angol nyelvű blokkba tesszük. Itt az eredetimódon kell begépelni (‘‘). Ez a legszerencsésebb megoldás, mert ekkormég az angol elválasztás is érvénybe lép.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 48 / 531

  • Az aktív karakter kikapcsolása

    Bizonyos csomagokkal nem kompatibilis az aktív karakter használata (pl.MusiXTEX, ami kottaírásra alkalmas).

    Ilyenkor ki kell kapcsolni a magyar.ldf activeprefix=none opciójával:

    \PassOptionsToPackage{defaults=hu-min,activeprefix=none}{magyar.ldf}

    Ekkor• a szokásos módon írható az angol nyitó idézőjel (‘‘),• me‘nnyi helyett me\discretionary{ny-}{ny}{nny}i írandó,• egyszer‘-kétszer helyett egy\-szer-két\-szer írandó.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 49 / 531

  • Az activespace=safe opció

    A magyar tipográfia megköveteli, hogy kettőspont, pontosvessző, kérdőjelés felkiáltójel előtt legyen egy rövid szóköz.

    Ezt valósítja meg ezen jelek aktívvá tételével a magyar.ldfactivespace=safe opciója, ami a defaults=hu-min opcióvalautomatikusan betöltődik.

    Sajnos ez néha kompatibilitási problémákhoz vezethet. Például a későbbismertetett \label{...} parancs argumentumában kettőspontot használvaelőjöhet ilyen hiba. Ekkor használjuk a magyar.ldf activespace=noneopcióját:

    \PassOptionsToPackage{defaults=hu-min,activespace=none}{magyar.ldf}

    Ebben az esetben a fenti tipográfiai követelmény nem teljesül, ezért ezt amegoldást csak végső esetben alkalmazzuk.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 50 / 531

  • Idegen nyelvek tipográfiája

    A babel csomag többek között a következő nyelvek tipográfiáját ismeri:bulgarian, croatian, czech, danish, dutch, english, esperanto, estonian,finnish, french, german, greek, hebrew, magyar, icelandic, irish, italian,latin, polish, portuges, romanian, russian, scottish, serbian, slovak, slovene,spanish, swedish, turkish, ukrainian, welsh

    Például, ha német nyelvű dokumentumot szeretnénk készíteni, akkorhasználjuk a következő kódot:

    \documentclass{article}\usepackage[T1]{fontenc}\usepackage[utf8]{inputenc}\usepackage[german]{babel}\begin{document}...\end{document}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 51 / 531

  • Többnyelvű szöveg

    A következő kódban az alapnyelv a német, amelybe beszúrhatunk angolnyelvű részleteket is:

    \documentclass{article}\usepackage[T1]{fontenc}\usepackage[utf8]{inputenc}\usepackage[english,german]{babel}\begin{document}...\end{document}

    Amikor az angol szövegrészlethez érünk, írjuk be a{\selectlanguage{english} angol szöveg} parancsot.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 52 / 531

  • Idézőjel idegen nyelveken

    Idézőjelként soha ne használja a " (Shift 2) jelet! Ez tipográfiai hiba.

    A magyar és angol idézőjelek helyes használatáról már volt szó. Most egyuniverzális megoldást mutatunk.

    Töltse be a csquotes csomagot autostyle opcióval. Ez a csomag akövetkező nyelvek idézőjeleit ismeri: croatian, danish, dutch, english,finnish, french, german, greek, italian, norwegian, portuguese, russian,spanish, swedish

    Ha magyar nyelv esetén is akarjuk használni ezt a csomagot, akkor acsquotes csomag betöltése után a preambulumba gépeljük a következőt:

    \DeclareQuoteStyle{magyar}{,,}{’’}{>>}{

  • Idézőjel idegen nyelveken

    Ezután az

    \enquote{... \enquote{...} ...}

    kód az érvényben lévő nyelvnek megfelelően használja az idézőjelet (külsőtés a belsőt is).

    Ha közvetlenül a belső idézőjelet akarjuk megjeleníteni, akkor használjuk az\enquote*{...} parancsot.

    Az \enquote és \enquote* parancsok argumentumában használható többbekezdésből álló szöveg is.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 54 / 531

  • Betűváltozatok

    Alak (shape)álló (upright) ← \textup{...}, {\upshape ...}döntött (slanted) ← \textsl{...}, {\slshape ...}dőlt (italics) ← \textit{...}, {\itshape ...}kiskapitális (small caps) ← \textsc{...}, {\scshape ...}

    Testesség (series)normál (medium) ← \textmd{...}, {\mdseries ...}félkövér (boldface) ← \textbf{...}, {\bfseries ...}

    Család (family)antikva (roman) ← \textrm{...}, {\rmfamily ...}groteszk (sans serif) ← \textsf{...}, {\sffamily ...}írógép (typewriter) ← \texttt{...}, {\ttfamily ...}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 55 / 531

  • Betűváltozatok

    Antikva:talpas, változó vonalvastagság, változó betűszélesség → MintaGroteszk:talpatlan, állandó vonalvastagság, változó betűszélesség → MintaÍrógép:talpas, állandó vonalvastagság, állandó betűszélesség → MintaAz alak, testesség és család keverhetőek. Alapesetben a betű álló, normál,antikva.

    A \text..{ } parancsokat több bekezdésre nem lehet alkalmazni, ahol.. = up, sl, it, sc, md, bf, rm, sf, tt.

    \upshape, \slshape, \itshape stb. ún. deklarációs parancsok. Ezekhasználhatók környezetként is. Pl.:{\itshape ...} = \begin{itshape} ... \end{itshape}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 56 / 531

  • Alap betűváltozat átállítása

    Alak\renewcommand{\shapedefault}{érték}érték: n (álló), it (dőlt), sl (döntött), sc (kiskapitális)

    Testesség\renewcommand{\seriesdefault}{érték}érték: m (normál), bx (félkövér)

    Család\renewcommand{\familydefault}{érték}érték: cmr (antikva), cmss (groteszk), cmtt (írógép)

    Tómács Tibor Bevezetés a LATEX-rendszerbe 57 / 531

  • Kiemelés

    Amikor egy szót, vagy gondolatot ki akarunk emelni, használjuk az\emph{...} vagy {\em ...} = \begin{em} ... \end{em} parancsokatilletve környezetet. (Az első megoldás több bekezdésre nem használható.)

    Ezek figyelik az aktuális betűváltozatot, és aszerint emelnek ki. Álló alakesetén dőlt, nem álló alak esetén álló alakra vált.

    Kiemelésre ne használjuk a félkövér típust, mert az a címekre vanfenntartva.

    Az írógépek korában betűritkítással emeltek ki. Ez a LATEX-ben ismegoldható. Pl. r i t k í t á s ← \so{ritkítás} ∈ soul

    Tómács Tibor Bevezetés a LATEX-rendszerbe 58 / 531

  • Kiemelés

    További kiemelési lehetőségek alá- illetve áthúzással:

    \underline{szöveg} → szöveg\uline{szöveg} ∈ ulem → szöveg\uuline{szöveg} ∈ ulem → szöveg\uwave{szöveg} ∈ ulem →

    ::::::szöveg

    \sout{szöveg} ∈ ulem → szöveg\xout{szöveg} ∈ ulem → ///////szöveg\cancel{szöveg} ∈ cancel → ����szöveg\bcancel{szöveg} ∈ cancel → XXXXszöveg\xcancel{szöveg} ∈ cancel → ����XXXXszöveg

    Az ulem csomagot normalem opcióval töltsük be. Ha normalem opciónélkül töltjük be, akkor az \emph parancs aláhúzással fog kiemelni.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 59 / 531

  • Kiemelés

    Szavak, kifejezések kiemelésére alkalmas lehet csupa nagybetűvel, vagynagybetűs szövegben csupa kisbetűvel szedésük.

    \MakeUppercase{szöveg} → A szöveget csupa nagybetűvel szedi ki.\MakeLowercase{szöveg} → A szöveget csupa kisbetűvel szedi ki.\MakeTextUppercase{szöveg} ∈ textcase → A szöveget csupanagybetűvel szedi ki, de a matematikai képletek betűin nem változtat.

    \MakeTextLowercase{szöveg} ∈ textcase → A szöveget csupakisbetűvel szedi ki, de a matematikai képletek betűin nem változtat.

    \NoCaseChange{szöveg} ∈ textcase → Nem változtat a betűkön (a\MakeTextUppercase és a \MakeTextLowercase parancsokargumentumában lehet használni).

    Tómács Tibor Bevezetés a LATEX-rendszerbe 60 / 531

  • Normál stílus

    Amikor nem alapbetűváltozatot használunk, de ideiglenesen vissza akarunkarra térni (álló, normál, antikva), akkor használjuk a \textnormal{...}vagy {\normalfont ...} parancsot. (Az első több bekezdésre nemhasználható.)

    Tómács Tibor Bevezetés a LATEX-rendszerbe 61 / 531

  • Betűméret

    Az alapbetűméret a dokumentumosztály opcióinál állítható be.

    Ehhez mérten a relatív betűméretek (az arány 1 : 1,2):szöveg ← {\tiny ...}szöveg ← {\scriptsize ...}szöveg ← {\footnotesize ...}szöveg ← {\small ...}szöveg ← {\normalsize ...}szöveg ← {\large ...}szöveg ← {\Large ...}szöveg ← {\LARGE ...}szöveg ← {\huge ...}szöveg ← {\Huge ...}Ezek ún. deklarációs parancsok, amik használhatók környezetként is. Pl.:{\large ...} = \begin{large} ... \end{large}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 62 / 531

  • Betűméret

    Fix betűméretet (pl. 25 pontosat 12 pontos sortávolsággal) a következőparanccsal érünk el:

    {\fontsize{25}{12}\selectfont ...}

    Ha a sortávolságot meg akarjuk hagyni alapméreten, akkor oda a\the\baselineskip parancsot írjuk.

    A betűméret csak a következő értékeket veheti fel: 5, 6, 7, 8, 9, 10, 11, 12,14, 17, 21, 25, 30, 36.Pontosabban: 10 · 1,2k , ahol k = −4,−3,−2,−1, . . . , 7, 12 ,−12 .Ha más értéket írunk be, akkor a lehetséges méretek közül a hozzálegközelebbi töltődik be.

    Ez a korlátozás (mely csak az alap EC fontkészletre terjed ki) feloldható azanyfontsize csomaggal.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 63 / 531

  • Alapbetűméret átállítása

    Ha a dokumentumosztály opcióiban lehetséges alapbetűméretektől eltérőértéket szeretnénk beállítani, akkor a későbbi „Oldal szerkezete és méretei”című fejezetben leírtak szerint járhatunk el.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 64 / 531

  • Egyéb betűkészletek

    Az alap EC fontkészlet helyett használhatunk mást is. Ehhez töltsük be pl.a times, pxfonts, txfonts, lxfonts, bera, cyklop csomagokvalamelyikét. Az ezekben található fontok minden méretben használhatók.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 65 / 531

  • Gyakorlat

    1 Adjon forráskódot, melynek következő az eredménye (alapbetűméret10 pt):

    Ez már túlzás!2 Ugyanebben a forrásban ugyanezt a szöveget jelenítsük meg alap

    betűtípussal, aláhúzás nélkül, 20 pt-os betűmérettel. Ügyeljünk arra,hogy a sortávolságot ne állítsuk át.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 66 / 531

  • Megoldás

    \documentclass{article}\usepackage[T1]{fontenc}\usepackage[utf8]{inputenc}\PassOptionsToPackage{defaults=hu-min}{magyar.ldf}\usepackage[magyar]{babel}\usepackage{ulem,anyfontsize}\begin{document}{\sffamily{\bfseries{\slshape Ez \textnormal{\uuline{már}}{\large túlzás!}}}}{\fontsize{20}{\the\baselineskip}\selectfont Ez már túlzás!}\end{document}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 67 / 531

  • Mértékegységek

    A LATEX minden nyomdászatban használatos mértékegységet ismer. Mostcsak az általunk már jól ismerteket soroljuk fel:

    • mm (milliméter)• cm (centiméter)• in (inch, 1 in = 25,4mm)• pt (pont, 1 pt = 0,3515mm)

    Ezek fix mértékegységek. Vannak relatívak is:• ex (aktuális betűalakzatban az „x” magassága)• em (aktuális betűfokozat mérete)

    Tómács Tibor Bevezetés a LATEX-rendszerbe 68 / 531

  • Fix vízszintes térközök

    AAA\hspace{5mm}BBB → AAA BBB5mm térköz elhelyezése szövegrészbe. A szám lehet negatív is. Sor elején ésvégén a térköz elnyelődik. Ez a hatás \hspace*-gal nincs.

    \␣ = ␣ = \hspace{.33333em} (normál szóköz)\enskip = \hspace{.5em}\quad = \hspace{1em}\qquad = \hspace{2em}\, 16 em széles nem törő térköz. Pl. 5\,mm → 5mm~ 13 em széles nem törő normál szóköz.\negthinspace −16 em méretű nem törő összehúzás.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 69 / 531

  • Rugalmas vízszintes térközök

    M\hspace{\stretch{1}}M\hspace{\stretch{1.5}}M hatásaM M M

    \fill = \stretch{1}

    \hfill = \hspace{\fill}

    M\hrulefill M → M MM\dotfill M → M . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MM\rightarrowfill M → M−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−→MM\leftarrowfill M → M←−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−MAz utóbbi négy parancs hatása pontosan megegyezik a \hfill-lel, csakkitölti a térközt. Pl. M\dotfill M\hspace{\stretch{1.5}}M hatásaM. . . . . . . . . . . . . . . . . . . . . . . . . .M M

    Tómács Tibor Bevezetés a LATEX-rendszerbe 70 / 531

  • Fix függőleges térközök

    \vspace{5cm} → Függőleges 5 cm térköz. Csak akkor működik, ha a TEXfüggőleges módban van. Ez elérhető pl. ha a szöveg és a \vspace közöttlegalább egy üres sor van. A térköz az oldal tetején és alján elnyelődik. Ez ahatás \vspace*-gal nincs.

    xxx\lower.5ex\hbox{xxx} → xxxxxxSzövegközi felső index:17\textsuperscript{h} → 17h17\textsuperscript{\underline{45}} → 1745

    Tómács Tibor Bevezetés a LATEX-rendszerbe 71 / 531

  • Rugalmas függőleges térközök

    \smallskip = \vspace{3pt plus 1pt minus 1pt}

    \medskip = \vspace{6pt plus 2pt minus 2pt} == \smallskip\smallskip

    \bigskip = \vspace{12pt plus 4pt minus 4pt} == \medskip\medskip

    \vfill = \vspace{\fill} = \vspace{\stretch{1}}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 72 / 531

  • Gyakorlat

    1 Jelenítse meg a következőt: xxxxxxx

    2 Írjon négy sort tetszőleges szöveggel úgy, hogy kitöltsék a lapot, azelső és a második távolsága másfélszer akkora legyen mint a másodikés harmadik távolsága, továbbá a harmadik és negyedik távolsága 3 cmlegyen. A negyedik sor 2 cm-rel kezdődjön beljebb, mint a többi.

    3 Írjon kódot, melynek az eredménye:AAA BBB . . . . . . . . . . . . . . . . . . CCC DDDAz első két vízszintes térköz megegyezik, de a harmadik csak feleakkora.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 73 / 531

  • Megoldás

    1 x\lower1ex\hbox{x}\lower2ex\hbox{x}\lower3ex\hbox{x}%\lower2ex\hbox{x}\lower1ex\hbox{x}x

    2 Első sor.Ez a sor üres!

    \vspace{\stretch{1.5}} Második sor.Ez a sor üres!

    \vfill Harmadik sor.Ez a sor üres!

    \vspace{3cm}\hspace*{2cm} Negyedik sor.

    3 AAA\hfill BBB\dotfill CCC\hspace{\stretch{0.5}}DDD

    Tómács Tibor Bevezetés a LATEX-rendszerbe 74 / 531

  • Sortávolság

    A sortávolságot a LATEX maga határozza meg, de ha ezen változtatniakarunk, akkor használjuk a \linespread{1.67} parancsot, ami asortávolságot a LATEX által meghatározott sortávolság 1.67-szereséreváltoztatja.

    Az írógépeknél használt másfeles illetve kettes sorköz adatai a következők:

    sorköz 10 pt 11 pt 12 pt

    másfeles 1.25 1.21 1.24kettes 1.67 1.62 1.66

    Ha betöltjük a setspace csomagot, akkor másfeles sorköz a\onehalfspacing paranccsal, illetve kettes sorköz a \doublespacingparanccsal állítható be. De pl. hármas sorköz is megadható a\setstretch{3} paranccsal.

    A setspace és hyperref csomagok együttes használatánál a setspaceelőbb legyen betöltve.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 75 / 531

  • Sortörés

    A LATEX maga végzi a sortöréseket, de adott esetben ki is kényszeríthetjük:

    \\ → Új sort kezd sorkizárás nélkül. A következő sor az aktuálissortávolságra lesz.

    \\* → Ugyanaz mint \\ de nem enged meg oldaltörést.\\[2mm] → Új sort kezd sorkizárás nélkül. A következő sor az aktuálissortávolság + 2mm-re lesz.

    \\*[2mm] → Ugyanaz mint \\[2mm] de nem enged meg oldaltörést.\linebreak → Új sort kezd sorkizárással. A következő sor az aktuálissortávolságra lesz.

    Sortörést le is tilthatunk az aktuális helyen a \nolinebreak paranccsal.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 76 / 531

  • Oldaltörés

    A LATEX maga végzi az oldaltöréseket, de adott esetben ki iskényszeríthetjük:

    \newpage → Új oldalt (illetve többhasábos szedésnél új hasábot) kezd. Azutolsó sort vízszintesen, azután pedig az oldalt (vagy hasábot)függőlegesen feltölti térközzel.

    \clearpage → Az előzőtől annyiban különbözik, hogy többhasábnál is újoldalt kezd. Másrészt az új oldal kezdése előtt megjeleníti az ún. úszóobjektumokat (lásd később).

    \cleardoublepage → Ugyanaz mint a \clearpage, de a dokumentummegjelenítését csak a következő páratlan oldalon folytatja.

    \pagebreak → Az adott bekezdés után oldalt tör oldalkitöltéssel.Az adott bekezdés után letilthatjuk az oldaltörést a \nopagebreakparanccsal.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 77 / 531

  • Oldaltörés

    Egy oldal optimális kinézetéhez nagyon ritkán, de szükség lehet az adottoldal függőleges méretének növelésére:

    \enlargethispage{3mm} → Az aktuális oldal függőleges méretét3mm-rel megnöveli. (Az élőláb helyzetét nem igazítja hozzá!)

    \enlargethispage*{3mm} → Ugyanaz mint az előbbi, de az extratérközök elhagyásával maximalizálja az adott oldalra írhatószövegmennyiséget.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 78 / 531

  • Bekezdések

    Új bekezdés esetén a forrásállományban hagyni kell egy üres sort, vagy kikell adni a \par parancsot.

    Minden bekezdést behúzással kezd, kivéve az ún. fejezetnyitó bekezdést. Haezeket is behúzással szeretnénk kezdeni, akkor töltsük be az indentfirstcsomagot, vagy a magyar.ldf afterindent=force-yes opcióját.

    Saját makrók írásánál hasznos lehet az \indent illetve \noindentparancsok, melyek kikényszerítik illetve megtiltják adott helyen a behúzást.

    \setlength{\parindent}{5pt} → Bekezdés behúzásának átállítása5 pt-ra.\setlength{\parskip}{5pt} → Bekezdések közötti távolság 5 pt-talnagyobb, mint a normál sortávolság.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 79 / 531

  • Bekezdések kizárása

    Alaphelyzetben a bekezdések sorkizártak, azaz a sorok a bal margónálkezdődnek és a jobb margónál végződnek, kivéve az első sor elejét és azutolsó sor végét. (Az optimális szóközök érdekében elválasztást használ abeállított nyelv szabályainak megfelelőn.)

    Tómács Tibor Bevezetés a LATEX-rendszerbe 80 / 531

  • Bekezdések balra zárása

    Ilyenkor a bekezdést kezdő sor is a bal margónál kezdődik és nincs a jobboldalon kiegyenlítés, így szóelválasztások nincsenek. (Ilyen a jelenprezentáció is.) Az angol elnevezések:flush left = balra egyszintben levőragged right = jobbra egyenetlen.

    Megvalósítása:flushleft környezettel, azaz

    \begin{flushleft}... \\... \\\end{flushleft}

    vagy {\raggedright ... \par} paranccsal.

    A két megoldás között az a különbség, hogy a környezet függőlegestérközöket helyez a szöveg elejére és végére.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 81 / 531

  • Bekezdések jobbra zárása

    Képzeljünk el egy balra zárt szöveget, de most minden sort toljunk el úgy,hogy a sorvégek a jobb margóhoz kerüljenek. Ez a jobbra zárás. Az angolelnevezések:flush right = jobbra egyszintben levőragged left = balra egyenetlen.

    Megvalósítása:flushright környezettel, azaz

    \begin{flushright}... \\... \\\end{flushright}

    vagy {\raggedleft ... \par} paranccsal.

    A két megoldás között az a különbség, hogy a környezet függőlegestérközöket helyez a szöveg elejére és végére.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 82 / 531

  • Bekezdések középre zárása

    Képzeljünk el egy balra zárt szöveget, de most minden sort toljunk elközépre. Ez a középre zárás.

    Megvalósítása:center környezettel, azaz

    \begin{center}... \\... \\\end{center}

    vagy {\centering ... \par} paranccsal.

    A két megoldás között az a különbség, hogy a környezet függőlegestérközöket helyez a szöveg elejére és végére.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 83 / 531

  • Különleges formájú bekezdések

    A shapepar csomag segítségével állítható elő az alábbi bekezdés.

    ♦a á b

    c d e é f gh i í j k l m no ó ö ő p q r st u ú ü ű vz x y♦

    Ennek kódja: \diamondpar{a á b ... y}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 84 / 531

  • Tabulálás

    Szöveg tabulálása a tabbing környezettel oldható meg. A tabulálást leíróparancsok leírása körülményes, helyette tekintsük a következő példákat.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 85 / 531

  • Tabulálás 1. példa

    \begin{tabbing}0000000000000 \= 1111111111111\\

    \> 11111111 \= 222222222\\\> \> 222222 \\

    00000000 \=\\\> 111111 \> 222222

    \end{tabbing}

    0000000000000 111111111111111111111 222222222

    22222200000000

    111111 222222

    Tómács Tibor Bevezetés a LATEX-rendszerbe 86 / 531

  • Tabulálás 2. példa

    \begin{tabbing}0000 \= 1111 \= 2222\kill0 \> 1 \> 2\\00 \> 11 \> 22\\000 \> 111 \> 222\\0000 \> 1111 \> 2222\end{tabbing}

    0 1 200 11 22000 111 2220000 1111 2222

    Tómács Tibor Bevezetés a LATEX-rendszerbe 87 / 531

  • Tabulálás 3. példa

    \begin{tabbing}0000 \= 1111 \= 2222 \= 3333\+\+\\

    2222222222\\222222\-\\

    111111111111\\111111\-\\

    0000000 \‘ sorvége\end{tabbing}

    0000 1111 2222 33332222222222222222

    111111111111111111

    0000000 sorvége

    Tómács Tibor Bevezetés a LATEX-rendszerbe 88 / 531

  • Többsoros idézetek

    Bla-bla bla-bla ...\begin{quotation},,Bla-bla bla-bla ...’’\end{quotation}Bla-bla bla-bla ...

    Bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-blabla-bla bla-bla bla-bla bla-bla.

    „Bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-blabla-bla bla-bla bla-bla bla-bla bla-bla.

    Bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-blabla-bla bla-bla.”

    Bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-bla bla-blabla-bla bla-bla bla-bla bla-bla.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 89 / 531

  • Versek

    Bla-bla bla-bla ...\begin{verse}Megy a juhász szamáron,\\Földig ér a lába;\\Nagy a legény, de nagyobb\\Boldogtalansága.

    Gyepes hanton furulyált,\\Legelészett nyája.\\\dots\end{verse}Bla-bla bla-bla ...

    Bla-bla bla-bla bla-bla bla-bla bla-blabla-bla bla-bla.

    Megy a juhász szamáron,Földig ér a lába;Nagy a legény, de nagyobbBoldogtalansága.

    Gyepes hanton furulyált,Legelészett nyája.. . .

    Bla-bla bla-bla bla-bla bla-bla bla-blabla-bla bla-bla bla-bla bla-bla.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 90 / 531

  • Gyakorlat

    Írjon három oldalt, melynek 12 pt-os az alap betűmérete és másfeles asortávolsága. Az első oldalon álljon a következő:

    Címzett:

    Nyomasek BobóCsajágaröcsögeAszfaltos u. 42.2009

    Az első sortávolság legyen 2mm-rel nagyobb a másfeles sortávnál. Akövetkező oldalon álljon ugyanez, de jobbra zárással, végül a következőnközépre zárással.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 91 / 531

  • Megoldás

    A dokumentum teste a következő:

    \linespread{1.24}\noindent\textbf{Címzett:}\\[2mm]\textit{Nyomasek Bobó}\\Csajágaröcsöge\\ Aszfaltos u. 42.\\ 2009\\\newpage\begin{flushright}\textbf{Címzett:}\\[2mm]\textit{Nyomasek Bobó}\\Csajágaröcsöge\\ Aszfaltos u. 42.\\ 2009\\\end{flushright}\newpage\begin{center}\textbf{Címzett:}\\[2mm]\textit{Nyomasek Bobó}\\Csajágaröcsöge\\ Aszfaltos u. 42.\\ 2009\\\end{center}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 92 / 531

  • Felsorolás

    Egyszerű felsorolásokra az itemize környezet való. Minden listaelemet\item parancs előz meg. E környezetek négy szint mélységig ágyazhatókegymásba.

    Például:

    Bla-bla ...\begin{itemize}

    \item Bla-bla ...\begin{itemize}

    \item Bla-bla ...\end{itemize}

    \end{itemize}

    Bla-bla . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . .

    – Bla-bla . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . .

    • Bla-bla . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .

    Tómács Tibor Bevezetés a LATEX-rendszerbe 93 / 531

  • Felsorolásjelek megváltoztatása

    Ha csak egy adott listaelem jelét akarjuk megváltoztatni, akkor akövetkezőt tehetjük:

    Bla-bla ...\begin{itemize}

    \item[\dag] Bla-bla ...\item Bla-bla ...

    \end{itemize}

    Bla-bla . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . .

    † Bla-bla . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .

    – Bla-bla . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .

    Tómács Tibor Bevezetés a LATEX-rendszerbe 94 / 531

  • Felsorolásjelek megváltoztatása

    Ha csak egy adott felsorolás jeleit akarjuk megváltoztatni, akkor aparalist csomag betöltése után a következőt tehetjük:

    Bla-bla ...\begin{itemize}[\dag]

    \item Bla-bla ...\begin{itemize}[\ddag]

    \item Bla-bla ...\end{itemize}

    \end{itemize}

    Bla-bla . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . .

    † Bla-bla . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . .

    ‡ Bla-bla . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .

    Tómács Tibor Bevezetés a LATEX-rendszerbe 95 / 531

  • Felsorolásjelek megváltoztatása

    Ha az egész dokumentumra vonatkozóan szeretnénk a felsorolás jeleitmegváltoztatni, akkor a következőket írjuk a preambulumba:

    \renewcommand{\labelitemi}{első szint jele}\renewcommand{\labelitemii}{második szint jele}\renewcommand{\labelitemiii}{harmadik szint jele}\renewcommand{\labelitemiv}{negyedik szint jele}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 96 / 531

  • Felsorolás extra térközök nélkül

    Az itemize környezet minden listaelem között hagy egy extra függőlegestérközt.

    Ha ezt nem akarjuk, akkor használjuk a paralist csomag compactitemkörnyezetét.

    Ezt pontosan úgy kell használni, mint az itemize környezetet.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 97 / 531

  • Leíró listák

    A leíró listákra, azaz a szótárszerű felsorolásokra a description környezetvaló. Minden listaelemet \item[címke] parancs előz meg. E környezetekhat szint mélységig ágyazhatók egymásba.

    Például:

    Bla-bla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . .

    Valamilyen kifejezés. Bla-bla . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . .

    Valamilyen kifejezés. Bla-bla . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . .

    Ennek forráskódja:

    Tómács Tibor Bevezetés a LATEX-rendszerbe 98 / 531

  • Leíró listák

    Bla-bla ...\begin{description}

    \item[Valamilyen kifejezés] Bla-bla ...\begin{description}

    \item[Valamilyen kifejezés] Bla-bla ...\end{description}

    \end{description}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 99 / 531

  • Leíró listák

    Alaphelyzetben a címke félkövér betűtípusú. Ezt átállíthatjuk például dőltrea következő parancs preambulumba írásával:

    \renewcommand{\descriptionlabel}[1]{\hspace\labelsep\normalfont\itshape#1}

    A \hspace\labelsep azért kell, hogy a címke ne lógjon ki a bal margóra.

    Ha a listaelemek közötti extra függőleges térközt meg akarjuk szüntetni,akkor description helyett használjuk a paralist csomag compactdesckörnyezetét.

    Ennek használata pontosan megegyezik a description környezettel.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 100 / 531

  • Számozott listák

    Számozott listákra az enumerate környezet való. Minden listaelemet\item parancs előz meg. E környezetek négy szint mélységig ágyazhatókegymásba. A szintek számozása a magyar.ldf defaults=hu-min opciójaesetén: arab számok, latin ábécé kisbetűi, görög ábécé kisbetűi, latin ábécénagybetűi.

    Például:

    Bla-bla ...\begin{enumerate}

    \item Bla-bla ...\begin{enumerate}

    \item Bla-bla ...\end{enumerate}

    \end{enumerate}

    Bla-bla . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . .

    1. Bla-bla . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . .

    a) Bla-bla . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .

    Tómács Tibor Bevezetés a LATEX-rendszerbe 101 / 531

  • Számozott listák

    Ha a magyar.ldf defaults=hu-min opciója mellett bekapcsoljuk alabelenums=hu-A opciót is

    \PassOptionsToPackage{defaults=hu-min,labelenums=hu-A}{magyar.ldf}

    módon, akkor a szintek számozása: nagy római számok, arab számok, latinábécé nagybetűi, latin ábécé kisbetűi.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 102 / 531

  • Számozott listák elemeire való hivatkozás

    A számozott listaelemekre hivatkozhatunk anélkül, hogy tudnánk, avégleges verzióban mi lesz a sorszáma. Ehhez a listaelemnek kell adni egyhivatkozásnevet, majd később (vagy akár előbb) erre a névre hivatkozva aLATEX behelyettesíti a megfelelő sorszámot.

    A hivatkozásnévben lehetőleg ne legyen ékezetes betű és aktív karakter (pl.kettőspont).

    Tómács Tibor Bevezetés a LATEX-rendszerbe 103 / 531

  • Számozott listák elemeire való hivatkozás

    Adott listaelemet hivatkozási névvel a \label{hivatkozásnév} paranccsalláthatjuk el. Ezután az adott elemre a következőképpen tudunk hivatkozni:

    \ref{hivatkozásnév} → Kiírja az adott hivatkozási névvel ellátottlistaelem számát.

    \aref{hivatkozásnév} → Ugyanaz mint előbb, de a szám elé névelőttesz kisbetűvel.

    \Aref{hivatkozásnév} → Ugyanaz mint előbb, de a névelőt nagykezdőbetűvel írja ki.

    \pageref{hivatkozásnév} → Annak az oldalnak az oldalszámát írja ki,amelyiken az adott hivatkozási névvel ellátott listaelem található.

    \apageref{hivatkozásnév} → Ugyanaz mint előbb, de az oldalszám elénévelőt tesz kisbetűvel.

    \Apageref{hivatkozásnév} → Ugyanaz mint előbb, de a névelőt nagykezdőbetűvel írja ki.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 104 / 531

  • Számozott listák elemeire való hivatkozás

    Például

    \begin{enumerate}\item\label{bubuka} Bla-bla ...\begin{enumerate}

    \item\label{nyusziful} Bla-bla ...\end{enumerate}

    \end{enumerate}\Aref{bubuka}.~listaelem \apageref{bubuka}.~oldalontalálható, míg \aref{nyusziful} ...

    Ennek az eredménye:

    Tómács Tibor Bevezetés a LATEX-rendszerbe 105 / 531

  • Számozott listák elemeire való hivatkozás

    1. Bla-bla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    a) Bla-bla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    Az 1. listaelem a 106. oldalon található, míg az 1a . . .

    (Az „1a”-ban az „1” az „a” ún. prefixe. Ennek megjelenési formájátátállíthatjuk, amelyről később esik szó.)

    Tómács Tibor Bevezetés a LATEX-rendszerbe 106 / 531

  • Számozott listák számozási stílusának megváltoztatása

    Ha csak egy adott listaelem jelét akarjuk megváltoztatni, akkor akövetkezőt tehetjük:

    \begin{enumerate}\item[--] Bla-bla ...\item Bla-bla ...\item[--] Bla-bla ...\item Bla-bla ...

    \end{enumerate}

    – Bla-bla . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . .

    1. Bla-bla . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . .

    – Bla-bla . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . .

    2. Bla-bla . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . .

    Vegyük észre, hogy a jel változtatásakor a számozás nem növekszik.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 107 / 531

  • Számozott listák számozási stílusának megváltoztatása

    Ha csak egy adott lista adott szintjének számozását akarjukmegváltoztatni, akkor a paralist csomag betöltése után használjuk a\begin{enumerate}[stílus] környezetnyitást, ahol a stílus helyére akövetkezőket írhatjuk:

    1 → arab számi → kis római számI → nagy római száma → latin ábécé kisbetűiA → latin ábécé nagybetűiHa a címkébe szöveg is kerül, akkor az abban szereplő fenti öt karaktertkapcsos zárójelek közé kell tenni. Pl. a \begin{enumerate}[I-{a}]hatására a sorszámok rendre I-a, II-a, III-a, IV-a, . . .

    Tómács Tibor Bevezetés a LATEX-rendszerbe 108 / 531

  • Számozott listák számozási stílusának megváltoztatása

    A továbbiakhoz szükség van a következők ismeretére:

    enumi → 1. szint számlálójának a neveenumii → 2. szint számlálójának a neveenumiii → 3. szint számlálójának a neveenumiv → 4. szint számlálójának a neve\arabic{számláló} → számláló kiírása arab számmal (1, 2, 3)\roman{számláló} → számláló kiírása kis római számmal (i, ii, iii)\Roman{számláló} → számláló kiírása nagy római számmal (I, II, III)\alph{számláló} → számláló kiírása latin ábécé kisbetűjével (a, b, c)\Alph{számláló} → számláló kiírása latin ábécé nagybetűjével (A, B, C)

    Tómács Tibor Bevezetés a LATEX-rendszerbe 109 / 531

  • Számozott listák számozási stílusának megváltoztatása

    Az egész dokumentumra vonatkozó változtatáshoz gépelje be apreambulumba pl. a következőket:

    \renewcommand{\theenumi}{\arabic{enumi}}\renewcommand{\theenumii}{\alph{enumii}}\renewcommand{\theenumiii}{\roman{enumiii}}\renewcommand{\theenumiv}{\Alph{enumiv}}\renewcommand{\labelenumi}{\theenumi.}\renewcommand{\labelenumii}{(\theenumii)}\renewcommand{\labelenumiii}{\theenumiii.}\renewcommand{\labelenumiv}{\theenumiv.}

    Hatása1. szinten: 1. 2. 3. . . .2. szinten: (a) (b) (c) . . .3. szinten: i. ii. iii. . . .4. szinten: A. B. C. . . .

    Tómács Tibor Bevezetés a LATEX-rendszerbe 110 / 531

  • Hivatkozások stílusának megváltoztatása

    A számozott listák adott szintű számlálóinak a hivatkozásokban megjelenőalakjának prefixét (azaz, ami az adott számláló előtt megjelenik) meg lehetváltoztatni pl. az alábbiak preambulumba írásával:

    \makeatletter\renewcommand{\p@enumii}{\theenumi}\renewcommand{\p@enumiii}{\theenumi(\theenumii)}\renewcommand{\p@enumiv}{\p@enumiii\theenumiii}\makeatother

    Hatására a hivatkozások alakja (ha pl. a számozási stílust az előző oldalonmutatott módon átállítottuk)1. szinten: 12. szinten: 1a3. szinten: 1(a)i4. szinten: 1(a)iA

    Tómács Tibor Bevezetés a LATEX-rendszerbe 111 / 531

  • Számozott listák extra térközök nélkül

    Ha nem akarjuk, hogy a listaelemek között legyen extra függőleges térköz,akkor az enumerate környezet helyett használja a paralist csomagcompactenum környezetét. Használata pontosan megegyezik az enumeratekörnyezettel.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 112 / 531

  • Számozott listák PostScript jelekkel

    PostScript jeleket (lásd a 36. oldalon) is használhatunk számozásra, hiszena 172–181, 182–191, 192–201 és 202–211 tartományokban bekarikázottszámok találhatók. Erre való a pifont csomag dingautolist környezete.Itt nem érdemes két szintnél többet alkalmazni és a számozás se menjen 10fölé.

    \begin{dingautolist}{172}\item Bla-bla ...\begin{dingautolist}{182}

    \item Bla-bla ...\item Bla-bla ...

    \end{dingautolist}\end{dingautolist}

    ¬ Bla-bla . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . .

    ¶ Bla-bla . . . . . . . . . .. . . . . . . . . . . . . . .. . . . . . . . . . . . .

    · Bla-bla . . . . . . . . . .. . . . . . . . . . . . . . .. . . . . . . . . . . . .

    Tómács Tibor Bevezetés a LATEX-rendszerbe 113 / 531

  • Számozott listák PostScript jelekkel

    A dingautolist környezet a jelenlegi magyar.ldf-fel nem kompatibilis!Ezért újra kell definiálni a következő kóddal. Ebben a környezetben amagyar nyelv használata esetén, a listaelemekre való kereszthivatkozásoknem fognak helyesen működni.

    \newcounter{denumi}\newcounter{denumii}\newcounter{denumiii}\newcounter{denumiv}\def\dingautolist#1{\enumerate\ifnum\value{enumi}=0\setcounter{denumi}{#1}\addtocounter{denumi}{-1}\fi\ifnum\value{enumii}=0\setcounter{denumii}{#1}\addtocounter{denumii}{-1}\fi\ifnum\value{enumiii}=0\setcounter{denumiii}{#1}\addtocounter{denumiii}{-1}\fi\ifnum\value{enumiv}=0\setcounter{denumiv}{#1}\addtocounter{denumiv}{-1}\fi\def\labelenumi{\addtocounter{denumi}{\value{enumi}}\ding{\value{denumi}}\addtocounter{denumi}{-\value{enumi}}}\def\labelenumii{\addtocounter{denumii}{\value{enumii}}\ding{\value{denumii}}\addtocounter{denumii}{-\value{enumii}}}\def\labelenumiii{\addtocounter{denumiii}{\value{enumiii}}\ding{\value{denumiii}}\addtocounter{denumiii}{-\value{enumiii}}}\def\labelenumiv{\addtocounter{denumiv}{\value{enumiv}}\ding{\value{denumiv}}\addtocounter{denumiv}{-\value{enumiv}}}}\def\enddingautolist{\endenumerate}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 114 / 531

  • Sorfolytonos számozott listák

    Erre a paralist csomag betöltése után használjuk a\begin{inparaenum}[stílus] környezetnyitást, ahol a stílus helyére akövetkezőket írhatjuk:

    1 → arab számi → kis római számI → nagy római száma → latin ábécé kisbetűiA → latin ábécé kisbetűiHa a címkébe szöveg is kerül, akkor az abban szereplő fenti öt karaktertkapcsos zárójelek közé kell tenni. Pl. a\begin{inparaenum}[\itshape {a}1)] hatására a sorszámok rendrea1), a2), a3), . . .

    Tómács Tibor Bevezetés a LATEX-rendszerbe 115 / 531

  • Sorfolytonos számozott listák

    Például:

    Bla-bla ...\begin{inparaenum}[\itshape 1)]\item bla-bla ...\item bla-bla ...\item bla-bla ...\end{inparaenum}

    Eredménye:Bla-bla ... 1) bla-bla ... 2) bla-bla ... 3) bla-bla ...

    Tómács Tibor Bevezetés a LATEX-rendszerbe 116 / 531

  • Lábjegyzetek

    Erre a \footnote{szöveg} parancs használható.

    Például:

    Szinte megszépült\footnote{Levett a lábamról.}azóta, hogy rendszeresen\footnote{Hetente ötször.}fut.\footnote{Legalábbis jobb a lába.}

    Eredménye:

    Szinte megszépült1 azóta, hogy rendszeresen2 fut.3

    1Levett a lábamról.2Hetente ötször.3Legalábbis jobb a lába.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 117 / 531

  • Lábjegyzetek

    A \footnote előtt nem lehet szóköz.

    Ha a jegyzet egy adott szóra vonatkozik, akkor a parancsot közvetlenül aszó után írjuk, ha egy mondatra vagy mondatrészre, akkor az azt lezáróírásjel után.

    A magyar elválasztás és tipográfia defaults=hu-min opciója lábjegyzetekfölé nem tesz vízszintes vonalat. Ha mégis szeretnénk tenni, akkor írjuk akövetkezőt:

    \footnotestyle{rule=fourth}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 118 / 531

  • Lábjegyzetek

    Az article osztályban a lábjegyzet sorszámozása folyamatos, míg reportés book esetén fejezetenként 1-től kezdődik. Ha azt akarjuk, hogyoldalanként előlről kezdődjön a számozás (bármely osztályban), akkor akövetkezőt írjuk be:

    \footnotestyle{reset=page}

    Ha azt akarjuk report vagy book osztályban, hogy ne csak fejezetenként,hanem szakaszonként is újra kezdődjön a számozás, akkor használjuk a

    \footnotestyle{reset=section}

    parancsot. Ez kockázatos, mivel ha egy oldalon több szakasz is van, akkorelőfordulhat, hogy egy oldalon két lábjegyzetnek ugyanaz a száma.

    Ha report vagy book osztályban is folyamatos számozást szeretnénk,akkor írjuk a következőt:

    \footnotestyle{reset=none}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 119 / 531

  • Lábjegyzetek

    Ha article osztályban azt akarjuk, hogy szakaszonként újra kezdődjön aszámozás, akkor írjuk a következőt:

    \let\oldsection\section\def\section{\setcounter{footnote}{0}\oldsection}

    Ez kockázatos, mivel ha egy oldalon több szakasz is van, akkorelőfordulhat, hogy egy oldalon két lábjegyzetnek ugyanaz a száma.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 120 / 531

  • Lábjegyzetek

    A lábjegyzetek számozását átállíthatjuk csillagosra a következő paranccsal:

    \footnotestyle{mark=stars-max}

    Ekkor a lábjegyzet ilyen∗ meg ilyen∗∗ . . .

    ∗Ez egy lábjegyzet.∗∗Ez is egy lábjegyzet.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 121 / 531

  • Közös lábjegyzet

    Előfordulhat, hogy több szóhoz ugyanazon lábjegyzetet akarjuk írni. Példáulezekhez1 a szavakhoz1 most1 közös lábjegyzet tartozik.

    Ez a következő kóddal valósítható meg:

    ezekhez\footnote{Közös lábjegyzet.} aszavakhoz\footnotemark[\value{footnote}]most\footnotemark[\value{footnote}]közös lábjegyzet tartozik.

    1Közös lábjegyzet.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 122 / 531

  • Szerkesztői megjegyzések

    Ha a szerkesztő szeretne a műhöz megjegyzéseket írni lábjegyzetben, akkortegyük a következőket. A lábjegyzet számozását állítsuk arabra. A szerzőimegjegyzéseket írjuk \footnote{lábjegyzet} paranccsal a megszokottmódon, míg a szerkesztőit \editorfootnote{lábjegyzet} paranccsal. Ezutóbbi csillagos számozást használ és oldalanként újra indul.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 123 / 531

  • Lábjegyzet címekben

    Szintek (rész, fejezet, szakasz stb.) címében tipográfiailag helytelenlábjegyzetet használni. Ha feltétlenül szükség van erre, akkor nemhasználható a \footnote parancs, mert a fejléc és tartalomjegyzék hibáslesz. Ehelyett használjuk a \headingfootnote{lábjegyzet} parancsot.Például

    \section{Szakasz címe\headingfootnote{lábjegyzet}}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 124 / 531

  • Széljegyzetek

    Erre a \marginpar{széljegyzet} parancs használható.

    A széljegyzetek alapértelmezésben a külső margóra kerülnek.

    Kétoldalas szedésnél a páros oldalakon a külső margó bal oldalra esik.Ilyenkor célszerű a széljegyzetet jobbra igazítani \raggedleft paranccsal.

    De előre még nem tudjuk, hogy az adott széljegyzet páros vagy páratlanoldalra esik. Ezt a problémát így lehet megoldani:\marginpar[\raggedleft széljegyzet]{széljegyzet}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 125 / 531

  • Széljegyzetek

    Ha a széljegyzetet a belső margóra szeretnénk tenni, akkor adjuk ki a\reversemarginpar parancsot.

    De kétoldalas szedésnél a páratlan oldalakon a belső margó bal oldalra esik.Ilyenkor célszerű a széljegyzetet jobbra igazítani.

    De előre nem tudjuk, hogy az adott széljegyzet milyen oldalra esik. Ezt aproblémát pontosan úgy lehet megoldani, mint az előbb:\marginpar[\raggedleft széljegyzet]{széljegyzet}

    Alapértelmezésre (külső margó) visszatérni a \normalmarginparparanccsal lehet.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 126 / 531

  • Széljegyzetek

    Ha egy bekezdés elejére írunk széljegyzetet, akkor a \marginpar parancselé kell írni egy \mbox{} parancsot, különben a széljegyzet és a bekezdéselső sora között szintkülönbség lép fel. Ez azért van így, mert a\marginpar nem kezd új bekezdést.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 127 / 531

  • Széljegyzetek

    Ha a széljegyzetet tartalmazó doboz szélessége nem felel meg, és át akarjukállítani pl. 2 cm-re, akkor írjuk be a következőt:

    \setlength{\marginparwidth}{2cm}

    A szedéstükör és a széljegyzet távolsága így állítható át pl. 2mm-re:

    \setlength{\marginparsep}{2mm}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 128 / 531

  • Gyakorlat

    Írjon dokumentumot, melyben csillagos a lábjegyzet stílusa és alábjegyzetek felett vonal van.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 129 / 531

  • Megoldás

    \documentclass{article}\usepackage[T1]{fontenc}\usepackage[utf8]{inputenc}\PassOptionsToPackage{defaults=hu-min}{magyar.ldf}\usepackage[magyar]{babel}\footnotestyle{rule=fourth,mark=stars-max}\begin{document}szöveg\footnote{lábjegyzet}\end{document}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 130 / 531

  • Gyakorlat

    Írjon széljegyzetet, mely bal oldalon jobbra igazít és

    Széljegyzet .

    alakú, míg jobb oldalon balra igazít és

    / Széljegyzet

    alakú. ($\triangleright$ → . és $\triangleleft$ → /)A próbánál használjuk a dokumentumosztály twoside opcióját.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 131 / 531

  • Megoldás

    Szöveg\marginpar[\raggedleft Széljegyzet $\triangleright$]{$\triangleleft$ Széljegyzet}\newpage\mbox{}\marginpar[\raggedleft Széljegyzet $\triangleright$]{$\triangleleft$ Széljegyzet}Szöveg

    Áttekinthetőbbé válik a megoldás, ha a „A LATEX programozása” címűszakaszban leírtak szerint definiálunk egy új parancsot:

    \newcommand{\szeljegyzet}[1]{%\mbox{}\marginpar[\raggedleft #1 $\triangleright$]{$\triangleleft$ #1}}

    Szöveg\szeljegyzet{Széljegyzet}\newpage\szeljegyzet{Széljegyzet}Szöveg

    Tómács Tibor Bevezetés a LATEX-rendszerbe 132 / 531

  • Verbatim

    Ez olyan része a forrásállománynak, melynek egyik része sem értelmeződik,nem fordítódik le, hanem pontosan úgy jelenik meg a dokumentumban,mint a forrásállományban.

    Ha a verbatim szöveg nem hosszabb egy input sornál, akkor használjuk a\verb|verbatim szöveg| parancsot.

    A | határolójel lehet bármely más szóköztől, *-tól és betűtől különböző jel,ami nem szerepel a verbatim szövegben.

    Pl. \verb|\LaTeX\ könyv| → \LaTeX\ könyv\verb helyett \verb* írva, az eredményben a szóközök helyén ␣ jelenikmeg.

    Pl. \verb*|\LaTeX\ könyv| → \LaTeX\␣könyvA \verb illetve \verb* parancsok nem tehetők más parancsokargumentumába.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 133 / 531

  • Verbatim

    Többsoros szöveget verbatimként a verbatim és a verbatim* környezetekjelenítik meg.

    Például

    \begin{verbatim}1. verbatim sor2. verbatim sor\end{verbatim}

    → 1. verbatim sor2. verbatim sor

    \begin{verbatim*}1. verbatim sor2. verbatim sor\end{verbatim*}

    → 1.␣verbatim␣sor2.␣verbatim␣sor

    A verbatim illetve verbatim* környezetek nem tehetők parancsokargumentumába.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 134 / 531

  • Verbatim

    A lehetőségeket kiszélesíti a fancyvrb csomag.

    1 Első␣verbatim␣sor.2 Második␣verbatim␣sor.

    Ennek kódja:

    \begin{Verbatim}[formatcom={\color{cyan}\footnotesize},showspaces,frame=single,rulecolor=\color{red},numbers=left]

    Első verbatim sor.Második verbatim sor.\end{Verbatim}

    (Itt még be kell tölteni az xcolor csomagot is.)

    A Verbatim környezet nem tehető parancs argumentumába.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 135 / 531

  • Verbatim

    Amint láttuk, semmilyen verbatim parancs illetve környezet nem tehetőmás parancs argumentumába. Azonban ha erre mégis szükség van, akkor afancyvrb csomag erre is ad megoldást. Például, ha széljegyzetbe akarunkverbatim szöveget tenni, akkor a következő a megoldás:

    \SaveVerb{nev}|verb szöveg|\marginpar{\UseVerb[formatcom={\tiny},showspaces]{nev}}

    Itt a |...| határolókra hasonló a szabály, mint a \verb parancsnál.Lábjegyzetre is jó az előző megoldás, csak ekkor \marginpar helyett a\footnote parancsot kell beírni. De lábjegyzet esetére a fancyvrb csomagegyszerűbb megoldást is ad. Ha beírjuk a \VerbatimFootnotes parancsot,akkor utána verbatim használható \footnote parancs argumentumában.Például ezután már ezt is írhatjuk:\footnote{\verb*!Ez egy verbatim szöveg.!}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 136 / 531

  • Gyakorlat

    Írjon kódot, melynek a következő az eredménye:

    A \parancs kódja \verb|\parancs|\begin{verbatim}...\end{verbatim}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 137 / 531

  • Megoldás

    \noindent A \verb|\parancs| kódja \verb!\verb|\parancs|!\\\verb|\begin{verbatim}|\\\verb|...|\\\verb|\end{verbatim}|

    Vagy a fancyvrb csomag betöltése után

    \begin{Verbatim}A \parancs kódja \verb|\parancs|\begin{verbatim}...\end{verbatim}\end{Verbatim}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 138 / 531

  • Verbatim szöveg kiírása fájlba

    Néha szükség lehet arra, hogy a forrásállomány fordítása közben egyLATEX-kódot kimentsünk fájlba. Erre való a newfile csomag. Ennekműködése:

    \newoutputstream{KimentesFolyamatNeve}\openoutputfile{FajlNeve.tex}{KimentesFolyamatNeve}

    AAA\begin{writeverbatim}{KimentesFolyamatNeve}Ezt verbatimként kimenti a FajlNeve.tex-be,\end{writeverbatim}

    BBB\begin{writeverbatim}{KimentesFolyamatNeve}majd ezt hozzáfűzi.\end{writeverbatim}\closeoutputstream{KimentesFolyamatNeve}

    CCC

    Tómács Tibor Bevezetés a LATEX-rendszerbe 139 / 531

  • Verbatim szöveg kiírása fájlba

    Ezt lefordítva megjelenik a következő:

    AAA BBB CCC

    míg a FajlNeve.tex tartalma:

    Ezt verbatimként kimenti a FajlNeve.tex-be,majd ezt hozzáfűzi.

    Fontos, hogy az\openoutputfile{FajlNeve.tex}{KimentesFolyamatNeve} parancs,ha a FajlNeve.tex már korábban létezett, akkor annak tartalmát törli.

    A writeverbatim környezet nem tehető parancs argumentumába.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 140 / 531

  • Verbatim szöveg kiírása fájlba

    Az előbb leírtak jól használhatók például a következő esetben. Az afeladatunk, hogy írjunk egy példatárat úgy, hogy a megoldások különkötetben szerepeljenek.A feladatok számozását automatikusra kell állítani (lásd később), hiszenelőfordulhat, hogy már begépelt két feladat közé kell beékelni egyharmadikat. Ilyenkor a számozások elcsúsznának.A probléma az, hogy ilyen beékelések esetén a megoldásoknál is meg kellkeresni a beszúrási pontot. Ez gyakorlatilag átláthatatlan káoszt okozna egyidő után.A megoldás az, hogy egy feladat begépelése után ugyanazonforrásállományba kell gépelni a megoldást is writeverbatim környezetbe.Fordítás után csak a feladatok jelennek meg, míg a megoldások forráskódjahelyes sorrendben egy külön fájlban lesznek, melyből a megoldáskötet iselkészíthető.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 141 / 531

  • Programkód

    Különböző programnyelvek kódjainak megjelenítésére alkalmas a listingscsomag.

    \lstinline[opciók]|kód| (sorközi kód esetén)\begin{lstlisting}[opciók] kód \end{lstlisting}\lstinputlisting[opciók]{kódot tartalmazó fájl neve}

    Opciók így is megadhatók: \lstset{opciók}

    Ha az opcióban szerepelnek a [ illetve ] jelek, akkor csak az \lstsetparancsba rakható, az \lstinline \lstinputlisting parancsok illetvelstlisting környezet opciói közé nem.

    Az lstlisting környezet és \lstinline \lstinputlisting parancsoknem tehetők parancs argumentumába.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 142 / 531

  • Programkód

    Az \lstinputlisting parancs használatakor a programkódot tartalmazófájl legyen ugyanolyan kódolású, mint a tex forrásállomány. Ha ez utf8,akkor BOM nélküli legyen. Konvertáláshoz használhatjuk a TeXstudio-t:

    Szerkesztés → Kódolás beállítása → Változtatás erreSzerkesztés → Sorvég → Unix (LF)A listings csomag 1 bájtos kódolást tud kezelni. Így ha latin2kódolással dolgozunk, akkor a programkódban található ékezetes betűk jólfognak megjelenni. De utf8 esetén, ha a programkódban ékezetes betűketvannak, akkor a fordítás hibás lesz. Ekkor listings helyett használjuk alistingsutf8 csomagot. A csomag betöltése után írja be a következőkódot:

    \lstset{inputencoding=utf8/latin2}

    Ezután a listingsutf8 pontosan úgy működik, mint a listings, csakelőször az utf8 kódolású karaktereket latin2-re konvertálja.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 143 / 531

  • Programkód (opciók)

    Az előbbi parancsok opciói:(Az értékekben szereplő \color ∈ xcolor lásd „Színek kezelése”)basicstyle=\small\ttfamily → A kód fontbeállítása.columns=fixed,fullflexible → A kód fontjai oszlopokba rendezve(legyenek, ne legyenek).breaklines → Hosszú sorok törése (soft wrap).postbreak=\hbox{$\color{red}\to\ $} → Hosszú sorok törése utánijel.breakindent=10pt → Hosszú sorok törése utáni behúzás mértéke.backgroundcolor=\color{red} → Háttérszín.xleftmargin=1cm → Szövegtükör bal széle és a kód bal széle közöttitávolság.xrightmargin=1cm → Szövegtükör jobb széle és a kód jobb széle közöttitávolság.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 144 / 531

  • Programkód (opciók) (folyt.)

    linewidth=12cm → Szövegtükör bal széle és a kód jobb széle közöttitávolság.showspaces → Szóköz ␣ módon jelölve.showtabs → Tabulátort jelöli.tabsize=2 → Tabulátor mérete 2 szóköz.tab=\rightarrowfill → Tabulátor jele.numbers=none,left,right → Kód sorainak számozása (ne legyen, baloldalon legyen, jobb oldalon legyen).numberstyle=\tiny → Sorszám stílusa. A számlálója lstnumber (lásd a„Számlálók” szakaszban).numbersep=10pt → A sorszám és a kód távolsága.stepnumber=2 → Csak minden második sorszám jelenik meg.firstnumber=100 → A kód első sorának száma 100. A 100 helyére lastírva, kezdéskor nem nullázódik a számláló.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 145 / 531

  • Programkód (opciók) (folyt.)

    frame=érték → Keretvonalak rajzolása. Az érték a trblTRBL-nekbármilyen részhalmaza lehet. t: fent, b: lent, r: jobbra, l: balra (anagybetűsek hasonlóak, de dupla vonalat húz).Lehet még shadowbox és none is az érték.frameround=érték → Keretsarkok stílusa. Az érték a ttttffff-nekbármilyen négyelemű részhalmaza lehet. t: kerekített sarok, f: derékszögűsarok. Sorrend: jobb felső saroktól negatív forgási irányban. Pl.frameround=tftfframerule=0.4pt → Keret vonalának vastagsága.framesep=5pt → Keret és kód közötti távolság.rulesep=2pt → Keret dupla vonalai közötti távolság.rulecolor=\color{red} → Keret vonalának színe.rulesepcolor=\color{red} → Dupla vonalak közötti szín.fillcolor=\color{red} → Keret és kód közötti rész színe.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 146 / 531

  • Programkód (opciók) (folyt.)

    literate={=}{{$\geq$}}1 → A kódban található= jel helyett ≥ jelenik meg.escapeinside={(*}{*)} → Ezután a kódba pl. (* \pounds *) írva, avégeredményben ennek a helyén £ lesz, azaz (* és *) jelek közötti LATEXparancs a kódban kifejtődik.

    language=Delphi → Definiált nyelv highlight-ját tölti be. (Az előredefiniált nyelvek listája megtalálható a csomag eredeti leírásában.)Saját nyelvet így lehet definiálni: \lstdefinelanguage{név}{opciók}(A highlight-ozás opcióit lásd később.)language=[Sharp]C → Definiált nyelv egy dialektusának highlight-ját töltibe. (Az előre definiált nyelvek dialektusainak listája megtalálható a csomageredeti leírásában.)language={} → A korábban betöltött highlight-ozásokat kikapcsolja.Ha az opciók között szerepel a language=..., akkor a következőket utánakell beírni.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 147 / 531

  • Programkód (opciók) (folyt.)

    keywords=[x]{szó1,szó2,...} → Az x-edik osztályba tartozókulcsszavak cseréje ezekre (x=1,2,...). (Az [1] elhagyható.)morekeywords=[x]{szó1,szó2,...} → Az x-edik osztályba tartozókulcsszavakhoz hozzáad újakat (x=1,2,...). (Az [1] elhagyható.)keywordstyle=[x]\bfseries\color{red} → Az x-edik osztálybatartozó kulcsszavak highlight-ja (x=1,2,...). (Az [1] elhagyható.)comment=[s][\itshape\color{red}]{/*}{*/} → A /*...*/ részt azadott stílusban jeleníti meg, ugyanakkor a korábban beállított kommentektörlődnek.comment=[n][\itshape\color{red}]{/*}{*/} → Ugyanaz, mint azelőbb, de itt a kommentek egymásba ágyazhatók.comment=[l][\itshape\color{red}]{//} → A // jeltől az adott sor azadott stílusban jelenik meg, ugyanakkor a korábban beállított kommentektörlődnek.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 148 / 531

  • Programkód (opciók) (folyt.)

    morecomment=[s][\itshape\color{red}]{/*}{*/} → A /*...*/ résztaz adott stílusban jeleníti meg. A korábban beállított kommentek nemtörlődnek.morecomment=[n][\itshape\color{red}]{/*}{*/} → Ugyanaz, mintaz előbb, de itt a kommentek egymásba ágyazhatók.morecomment=[l][\itshape\color{red}]{//} → A // jeltől az adottsor az adott stílusban jelenik meg. A korábban beállított kommentek nemtörlődnek.commentstyle=\itshape\color{green} → Pl. ha comment=[l]{//}módon definiáltuk a kommentet, akkor alapból dőlt betűvel fog megjelenni.Ezt a stílust utólag ezzel az opcióval módosíthatjuk.

    style=stílusnév → Előre definiált stílust érvényesít.Stílus definiálása: \lstdefinestyle{stílusnév}{opciók}

    title=... → Kód címe sorszám nélkül. Ez nem kerül be a kódokjegyzékébe.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 149 / 531

  • Programkód (opciók) (folyt.)

    caption=... → Kód címe sorszámmal, címkével. Ha címkének pl. a „kód”szót akarja, akkor használja ezt a parancsot: \def\lstlistingname{kód}.Ha magyar nyelvű dokumentumot ír, akkor még töltse be a captioncsomagot is. Ezután a cím így jelenik meg: „1. kód. ...” vagy „1.1. kód. ...”.Ennek számlálója lstlisting (lásd „Számlálók” szakaszban). A címbekerül a kódok jegyzékébe (lásd „Jegyzékek készítése” szakaszban).nolol → Számozott kód ne kerüljön be a kódok jegyzékébe.numberbychapter=false → A kódok számozása ne a fejezetszámmalegyütt történjen. (Lásd „Hosszabb dokumentum tagolása”.)label=... → Kereszthivatkozás címkéje.

    Tómács Tibor Bevezetés a LATEX-rendszerbe 150 / 531

  • Gyakorlat

    Jelenítse meg az alábbi Delphi programkódot:

    f u n c t i o n Trim ( s : s t r i n g ) : s t r i n g ;va r i : i n t e g e r ;beg inr e s u l t := ’ ’ ;f o r i :=1 to l eng th ( s ) do i f s [ i ] ’ ␣ ’

    then r e s u l t := r e s u l t+s [ i ] ;end ;

    Tómács Tibor Bevezetés a LATEX-rendszerbe 151 / 531

  • Megoldás

    \begin{lstlisting}[language=Delphi,basicstyle=\footnotesize]function Trim(s:string):string;var i:integer;beginresult:=’’;for i:=1 to length(s) do if s[i]’ ’

    then result:=result+s[i];end;\end{lstlisting}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 152 / 531

  • Gyakorlat

    Jelenítse meg az alábbi Delphi programkódot:

    1. kód. Trim függvény� �1 f u n c t i o n Trim ( s : s t r i n g ) : s t r i n g ;2 va r i : i n t e g e r ;3 beg in4 r e s u l t := ’ ’ ;5 f o r i :=1 to l eng th ( s ) do i f s [ i ] ’ ␣ ’6 then r e s u l t := r e s u l t+s [ i ] ;7 end ;�

    Tómács Tibor Bevezetés a LATEX-rendszerbe 153 / 531

  • Megoldás

    \def\lstlistingname{kód}\lstset{language=Delphi,basicstyle=\footnotesize,keywordstyle=\bfseries\color{blue},numbers=left,frame=tRBl,frameround=tftt}

    \begin{lstlisting}[caption=Trim függvény]function Trim(s:string):string;var i:integer;beginresult:=’’;for i:=1 to length(s) do if s[i]’ ’

    then result:=result+s[i];end;\end{lstlisting}

    Tómács Tibor Bevezetés a LATEX-rendszerbe 154 / 531

  • URL megadása

    Az internetcímeket is verbatim szövegként kell megjeleníteni, amit az urlcsomag \url{cím} parancsával lehet megtenni. Ez annyiban különbözik a\verb|cím| megoldástól, hogy hosszú cím esetén meg tudja törni a címet,másrészt linkké válik, bár ennek nyomtatásban nincs jelentősége.

    Az \url parancs nem rakható parancs argumentumába.

    Ha elektronikus publikációt készítünk, akkor url helyett a későbbismertetésre kerülő hyperref csomagot kell használni, amelynek szinténvan \url parancsa.

    Tómács Tibor Bevezetés a LATEX-rendsze