next up previous contents
Next: Megjelenítés Up: Képletszerkesztő helyett: TEX Previous: Tartalomjegyzék   Tartalomjegyzék

Bevezető

A TEX rendszert Donald E. Knuth amerikai matematikus hozta létre az 1970-as években. A legenda szerint mikor az egyik matematikai könyvét elvitte a nyomdába kiszedetni a nyomdász azt válaszolta neki, hogy ha ilyen okos szedje ki maga a könyvet. És Knuth megalkottá a TEX-et. Azt a programot, ami a nyomdász helyett a kéziratból jó minőségben nyomtatható szöveget állít elő. Természetesen ennek ára van, a kéziratnak az eddig megszokottól eltérően kell kinéznie, és másként kell elkészíteni is. A TEX-el végzett munka alapvetően három részre osztható. Ez az ismertető is ezt a felosztást fogja követni. Először egy szövegszerkesztővel elkészítjük a forrás file-t, majd azt a TEX programmal lefordítjuk, és egy viewer programmal megnézzük, majd módosítjuk a forrást, újra fordítjuk és így tovább. Bizonyos gyakorlat után fejben is el tudjuk végezni a fordítást, így a tényleges fordítást csak ritkábban csináljuk meg. Így a TEX-el végzett munkát egy újabb szempont szerint oszthatjuk két részre. A munka elején megelégszünk a nagyjábóli kinézet elképzelésével, és inkább a tartalomra koncentrálva írunk. Majd a munka vége felé, mikor a tartalmi résszel készen vagyunk, jön a fordítás, a hibák kijavítása és a dokumentum végső kinézetének megalkotása. A TEX egy szövegszedő rendszer, nem szövegszerkesztő, a használata feltételezi egy szövegszerkesztő meglétét. Abban írjuk le, hogy mit, és hogyan szeretnénk látni az elkészült dokumentumban. Ez vonatkozik mind a tartalomra, mind annak a megjelenéséről szóló elképzeléseinkre. Az ezt tartalmazó file-t hívják forrás file-nak. A TEX azon túl, hogy számítógépes szövegszedő rendszer, egy programnyelv is az összes azokban megszokott lehetőséggel. Természetesen szövegszedői feladatokra kihegyezve. Például egy TEX programmal kiszedhető az első száz prím garantáltan sajtóhiba nélkül. Ez azt jelenti, hogy a TEX program dönti el egy számról, hogy prím-e, és nem nekünk kell begépelni őket egy prímtáblázatból. A programozhatóság adta lehetőségeket természetesen hasznosabb célokra is lehet használni, az előbbi példa csak a TEX képességeit demonstrálta. Rengeteg operációs rendszerre átvitték, köztük a leginkább elterjedtekre is. A TEX és szinte minden hozzá tartozó program ingyenes, és a legtöbbjük forráskódban is hozzáférhető különböző szabad licensek szerint. Ezek megegyeznek abban, hogy szabadon, itt ezt ingyenesnek kell érteni, futtathajuk, a programot, megkaphatjuk a forráskódot, és azt módosíthatjuk. Ezen túlmenően viszont nagyon fontos dolgok szabályozásában különbözhetnek. Különböző módon szabályozzák például a forráskód felhasználásának lehetőségeit, azaz, hogy a szabadon megszerzett forrást árulhatjuk-e pénzért, egyes részleteit felhasználhatjuk-e saját, pénzes programjainkban. Közös még bennük, hogy hasonlóan a pénzes programokhoz nem vállalnak garanciát a működésre. Fontos, hogy a futtatás szabadsága nem függ a futtatás céljától, azaz nyugodtan árulhatjuk pénzért az így készült dokumentumainkat. Leslie Lamport az 1980-as években továbbfejlesztve a TEX-et megalkotta a LATEX rendszert ami egy makró csomag a TEX-hez, célja élesen szétválasztani a szerző, a tipográfus és a szedő munkáját. Jelenleg a LATEX az általánosan elterjedt rendszer. A TEX programozhatősága tette lehetővé a LATEX elkészítését. A LATEX felhasználóinak viszonylag ritkán kell programozniuk a TEX-et. Napjainkban a matematikai, természettudományos folyoiratok csak egy adott, általuk meghatározott TEX-es formátumban fogadnak el cikkeket, de a szerzők számára egy alap TEX tudás után ez már nem jelent szoros megkötést. Továbbá az interneten is egy TEX-ből előállítható formátumban helyezik el ezeket az írásokat. Részben ezért tartom fontosnak megismertetni a TEX rendszert, és bemutatni, hogy miként lehet olvasni ezeket a dokumentumokat. Másrészt meg a TEX-ben nagyon szép programozási ötletek vannak megvalósítva, érdemes elolvasni az erre vonatkozó TEX-es szakirodalmat. A TEX egy jól dokumentált és öndokumentáló rendszer, könnyű hozzá saját segédprogramokat írni. Például egy készülő könyv tartalomjegyzékének html-formátumba konvertálásához írtam egy toc2html.el konvertert. A toc a TEX tartalomjegyzék formátuma. A nyelv pedig amin írtam az emacs programnyelve, egy szövegkezelésre optimalizált lisp nyelvjárás, erre utal az el kiterjesztés. Az egész konverálási folyamat pedig egy shell scriptbe van beágyazva, az ékezetes és egyéb speciális karakterek cseréjét a sed végzi. Ez is megoldható lett volna az emacs-en belül, de így gyorsabb volt.
next up previous contents
Next: Megjelenítés Up: Képletszerkesztő helyett: TEX Previous: Tartalomjegyzék   Tartalomjegyzék
Vecsei Balázs 2002-01-15