LaTeX/Osnove
Ovaj tutorial cilja na osnovno upoznavanje sa strukturom LaTeX-a.
Pre početka proverite da li imate instaliran LaTeX na računaru (vidi vodič za instalaciju).
- Prvo ćemo se upoznati sa LaTeX sintaksom.
- Napravićemo naš LaTeX dokument.
- Potom ćemo Vam pokazati kako da obradite dokument kroz LaTeX da bi dobili kvalitetan rezultat, kao što je postskript ili PDF.
- Na kraju ćemo razmatrati imena dokumenata i tipove.
LaTeX sintaksa
urediLaTeX koristi jezik za obeležavanje da bi opisao strukturu dokumenta. LaTeX pretvara Vaš izvorni kod, u kombinaciji sa oznakama, u visoko kvalitetan dokument. Kao primer analogije možemo koristiti internet stranice koje rade na isti način: HTML se koristi da opiše dokument, ali to će tek Vaš pretraživač predstaviti u punoj veličini - sa različitim bojama, slovima, veličinama i slično.
Unos u LaTeX-u je dokument sa običnim tekstom. Taj dokument se može napraviti u bilo kom tekstualnom uređivaču. On sadrži tekst dokumenta, kao i komande koje govore LaTeX-u kako da obradi taj tekst.
Minimalan primer izgleda kao sledeći deo (komande će biti kasnije objašnjene):
\documentclass{article}
\begin{document}
Здраво свете!
\end{document}
|
Razmaci
urediLaTeX-ov kompajler normalizuje razmake tako da karakteri za razmak, kao što su [space] ili [tab], se tretiraju ravnomerno kao "razmak": nekoliko vezanih "razmaka" se tretira kao jedan, "razmak" otvaranja reda se generalno ignoriše, a jedan prelom reda takođe daje "razmak". Dvostruki prelom reda (prazan red), međutim, definiše kraj pasusa; više praznih redova se takođe tretiraju kao kraj pasusa. Primer primene ovih pravila je prikazan u nastavku: na levoj strani prikazan je korisnikov ulaz (.tex), dok je na desnoj strani izlaz (.dvi/.pdf/.ps).
Није битно да ли Ви
унели један или неколико размака
после речи.
Празан ред почиње нов
параграф.
|
Nije bitno da li Vi uneli jedan ili nekoliko razmaka posle reči. Prazan red počinje nov paragraf. |
Rezervisani znakovi
urediSledeći simboli su rezervisani znakovi koji ili imaju posebno značenje u LaTeX-u ili su nedostupni u svim fontovima. Ako ih unesete direktno u Vašem tekstu, oni se neće štampati normalno, već će LaTeX da odradi stvari koje niste nameravali.
# $ % ^ & _ { } ~ \
Kao što ćete videti, ovi znakovi se mogu koristiti u vašim dokumentima dodavanjem prefiksa kose crte:
\# \$ \% \^{} \& \_ \{ \} \~{} \textbackslash{}
|
Kosa crta \
ne može se uneti dodavanjem još jedne kose crte ispred nje (\\
); već se ova posledica se koristi za prelom redova. Za uvođenje kose crte u matematičkom delu, možete koristiti \backslash
.
Komande \~
i \^
daju respektivno tildu i i šešir koje si nalazi na sledećem slovu. Na primer \~n
daje ñ. Zato Vam trebaju zagrade da odredite da slovo ne bude argument. Takođe možete koristiti \textasciitilde
i \textasciicircum
da bi uneli ove karaktere; ili druge komande .
Ako želite da unesete tekst koji sadrži nekoliko različitih simbola, to možete uraditi upotrebom \verb
komande, koju ćemo nešto kasnije razmatrati u delu formatiranje paragrafa. Za izvorni kod vidi Listiranje izvornog koda
'Manje od' (<) i 'veće od' (>) znakovi su jedini vidljivi ASCII znakovi (nisu rezervisani) koji se neće štampati pravilno. Vidi Posebne znakove za objašnjenje i rad.
Ne-ASCII znakovi (primer akcenti) se mogu uneti direktno u većini slučaja. Međutim morate podesiti dokument pravilno. Ostali simboli i još mnogo toga može da se štampa sa posebnim komandama u matematičkim formulama ili kao akcentima. Mi će se baviti ovim pitanjem u posebnim znakovima.
LaTeX grupe
urediPonekad određena naredba treba da ostane lokalna, primer ograničavanje obima. Ovo se može uraditi zatvaranjem dela koji se menja lokalno sa vitičastim zagradama. U određenim prilikama, upotreba zagrada neće biti moguća. LaTeX zato obezbeđuje
\bgroup
i \egroup
za početak i kraj grupe, respektivno.
\documentclass{article}
\begin{document}
обичан текст {\itshape други \bfseries трећи} још обичног текста
обичан текст \bgroup\itshape други \bfseries трећи\egroup{} обичан текст
\end{document}
|
Okruženja obrazuju implicitnu grupu.
LaTeX okruženja
urediOkruženja u LaTeX-u imaju ulogu koja je malo slična komandama, ali ona obično nemaju uticaj na druge delove dokumenta. Njihova sintaksa je:
\begin{environmentname}
текст на који се утиче
\end{environmentname}
|
Između \begin
i \end
možete ubaciti druge komande i ugnjezditi druga okruženja. Interni mehanizam okrženja definiše grupu, što čini upotrebu bezbednom (bez uticaja na druge delove dokumenta).
Uopšte, okruženja prihvataju argumente, ali dodaci nisu česti, a o tome će biti rasprave u narednim poglavljima.
Sve se u može izraziti u obliku komandi i okruženja.
LaTeX komande
urediLaTeX komande su osetljive na mala i velika slova, i uzimaju jedan od dva sledeća formata:
- Počinju sa kosom crtom
\
i sadrže ime sastavljeno samo od slova. Imena komandi se završavaju razmakom, brojem ili bilo kojim ne slovom. - Počinju sa kosom crtom
\
i sadrže samo jedno slovo.
Neke komande imaju argumente, koje su date sa vitičastim zagradama { }
posle imena komande. Neke komande podržavaju proizvoljne parametre, koje su dodate posle imena komande u kvadratnim zagradama [ ]
. Opšta sintaksa je:
\commandname[опција1,опција2,...]{аргумент1}{аргумент2}...
|
Najstandardnije LaTeX komande imaju ekvivalentan prekidač. Prekidači nemaju argumente ali se primenjuju na ostatak okoline, recimo na, trenutnu grupu ili okruženje. Prekidač ne treba (skoro) da se poziva izvan okoline, u suprotnom će se primeniti na ceo dokument.
|
Primer:
% \emph је команда са, \em је прекидач.
\emph{наглашен текст}, ово је океј % Тачно
{\em наглашен текст}, ово је океј % Тачно
\em наглашен текст, ово је океј % Нетачно
\em{наглашен текст}, ово је океј % Нетачно
|
Komentari
urediKada LaTeX naiđe na %
znak dok procesuira ulazni dokument, on tu liniju ignoriše, ali i prelom reda, i sve prazne razmake na početku sledeće linije.
Ovo se može koristiti za pisanje komentara unutar ulaznog dokumenta, što se kasnije neće videti u rezultatu pri štampanju.
Ово је % глупо
% Боље: поучно <----
example: Дезокси%
рибо%
нуклеинска
|
Ovo je primer: Dezoksiribonukleinska |
Primetite da se %
znak može upotrebiti da se odvoje dugi ulazni redovi što ne dozvoljava razmak ili prelom reda kao recimo Supercalifragilisticexpialidocious iznad.
Jezgro LaTeX jezika nema definisanu sintaksu za komentarisanje u više linija. Pogledajte komentare u višeredova za jednostana objašnjenja.
Naš prvi dokument
urediSada možemo napraviti naš prvi dokument. Kreiraćemo ga sa najmanjom mogućom upotrebom koda koji je potreban da bi dobili rezultat; već dobro poznat ,,Zdravo svete!" pristup će se koristiti ovde.
- Otvorite Vaš omiljeni tekstualni uređivač. vim, emacs, Notepad++, i drugi teksutalni uređivači će imati označavanje sintakse što će Vam pomoći pri pisanju dokumenata.
- Kopirajte sledeći tekst u vaš uređivač. Ovo je LaTeX izvorni kod.
% zdravo.tex - Наш први LaTeX пример!
\documentclass{article}
\begin{document}
Здраво свете!
\end{document}
|
- Sačuvajte dokument kao zdravo.tex.
Kada birate ime za dokument budite sigurni da se ono završava sa .tex ekstenzijom.
Šta to sve znači?
uredi% zdravo.tex - Naš prvi LaTeX primer!
|
Prva linija je komentar. To je zato što počinje sa znakom (%); kada LaTeX vidi to, jednostavno ignoriše ostatak linije. Komentari su korisni ljudima da označe određene delove izvornog koda. Na primer, možete ostaviti informacije o autoru i datumu ili šta god se setite. |
\documentclass{article}
|
Ova linija govori LaTeX-u da koristi klasu article dokumenta. Klasa dokumenta definiše formatiranje, što je u ovom slučaju opšti format članka. Dobra stvar je da ako želite da promenite izgled dokumenta, to možete učiniti tako što ćete klasu zameniti sa nekom drugom klasom dokumenta koja postoji. |
\begin{document}
|
Ova linija označava početak okruženja nazvanog document; to obaveštava LaTeX da počinje sadržaj dokumenta. Sve iznad ove komande pripada uvodu u dokument. |
Zdravo svete!
|
Ovo je jedina linija stvarnog sadržaja - tekst koji želimo da prikažemo na strani |
\end{document}
|
document okruženje se završava ovde. To govori LaTeX-u da je izvorni kod dokumenta završen, a sve posle ove linije da ignoriše. |
Kao što smo ranije rekli, svaka LaTeX počinje sa kosom crtom (\
). Ovo je LaTeX-ov način da kad god vidi kosu crtu, očekuje neku komandu. Komentari se ne svrstavaju u komande, pošto oni govore LaTeX-u da ignoriše tu liniju. Komentari nikada ne utiču na rezultat dokumenta.
Prevođenje izvornog koda
urediProces prevođenja
urediOsnovni koncept je da se običan tekst tranformiše u format za prikaz, najčešće DVI, PS ili PDF dokument. Ovaj proces se naziva prevođenje - kompaliranje, koje se izvršava od strane kompajlera.
Postoje dva osnovna kompajlera.
- tex kompajler čita TeX .tex dokument i pretvara u .dvi.
- pdftex kompajler čita TeX .tex dokument i pretvara u .pdf.
Ovi kompajleri se obično koriste da prevedu običan TeX, ne LaTeX. Ne postoji nešto što je LaTeX kompajler pošto je LaTeX samo grupa makroa za TeX. Međutim, postoje dva izvršenja povezana sa prethodnim kompajlerima:
- latex izvršava poziv za tex zasnovano na LaTeX dokumentu, čita LaTeX .tex dokument i pretvara u .dvi
- pdflatex izvršava poziv za pdftex zasnovano na LaTeX dokumentu, čita LaTeX .tex dokument i pretvara u .pdf
Ako prevodite običan TeX dokument sa LaTeX kompajlerom (kao što je pdflatex) to će raditi, dok u suprotnom neće: ako pokušate da prevedete LaTeX izvorni kod sa TeX kompajlerom, dobićete mnoge greške.
Kao činjenica, zavisno od Vašeg operativnog sistema latex i pdflatex su jednostavne skripte ili simbolički linkovi.
Većina programa bi trebala da sadrži LaTeX distribuciju; drugi dolaze sa Ghostscript, besplatan program koji radi na više platformi. Ove programe ćete najčešće naći u svakoj LaTeX distribuciji:
- dvi2ps pretvara .dvi dokument u .ps (postskript).
- dvi2pdf pretvara .dvi dokument u .pdf (dvi2pdfm je poboljšana verzija).
a sa Ghostscript:
- ps2pdf i pdf2ps pretvara .ps dokument u .pdf i obrnuto.
Kada je LaTeX napravljen, jedini format koji je mogao da izveze je bio DVI; kasnije je dodata podrška za PDF sa pdflatex. PDF dokumenti mogu biti kreirani sa oba: pdflatex i dvipdfm. Rezultat pdflatex daje direktnu prednost modernih dodataka PDF-a kao što su hiperlinkovi, uvezeni fontovi, što nije deo sa DVI formatom. Propuštanje kroz DVI ograničava na limit starijeg formata. Sa druge strane, neki paketi, kao što su PSTricks, izlažu proces konverzije DVI formata, i zato neće raditi sa pdflatex. Neki od ovih paketa uvoze informacije u DVI koje se ne pojavljuju kada se DVI pregleda, ali se pojavljuju kada se DVI pretvori u drugi, novi format.
Vaš dokument bi trebali da pišete malo različitije u zavisnosti koji kompajler koristite: (latex ili pdflatex). Ali kao što ćemo videti kasnije, moguće je sakriti detalje kompajlera koji koristite, dok će kompajler moći i dalje da prevodi.
Sledeći dijagram prikazuje vezu između LaTeX izvornog koda i formata koji možete napraviti iz njega:
Uokvireni crveni tekst predstavlja formate dokumenta, plavi tekst na strelicama predstavlja komande koje koristite, mali tamno zeleni tekst ispod kutija predstavlja formate slika koji su podržani. Svaki put kad prođete kroz strelicu, gubite neku informaciju, što može da smanji dodatke Vašeg dokumenta. Zato bi trebalo da birate najkraći put da stignete do željenog formata. Ovo je verovatno najbolji način da zadržite željeni format. Počinjanjem od LaTeX izvornog koda, najbolji način je da koristite samo latex za DVI izlaz ili pdflatex za PDF izlaz, a pretvaranje u postskipt vršite samo kada je to neophodno.
Odeljak Otpremanje u druge formate daje više informacija o izvozu LaTeX izvornog koda u druge formate dokumenta.
Generisanje dokumenta
urediSvakako neće biti najuzbudljiviji dokument koji ste ikada videli, ali ga svejedno želimo videti. Pretpostavljam da ste otvorili konzolu, u direktorijumu gde je hello.tex sačuvan. LaTeX nema GUI (graphical user interface), pošto je to samo program koji izvršava Vaš ulazni dokumen, i rezultuje ga kao DVI ili PDF dokument. Neke LaTeX dodatne instalacije grafičkog front-enda gde Vi možete kliknuti da prevedete Vaš LaTeX izvorni dokument. Na drugim sistemima je moguće da ćete morati da nešto i otkucate, pa je ovde predstavljeo kako da navedete LaTeX u kompajliranje Vašeg ulaznog dokumenta na tekstualno baziranim sistemima . Upozorenje: ovo podrazumeva da ste već instalirali LaTeX na računaru.
- Unesite komandu:
latex zdravo
(.tex ekstenzija nije neophodna, ali je možete uneti ako želite) - Nekoliko delova informacija o LaTeX-u i njegovom napretku će biti prikazano. Ako sve prođe dobro, poslednje dve linije u konzoli će biti:
Output written on zdravo.dvi (1 page, 232 bytes). Transcript written on zdravo.log.
Ovo znači da je Vaš izvorni dokument procesuiran i rezultujući dokument je nazvan zdravo.dvi, koji zauzima jednu stranu i 232 bajta prostora.
Sada možete pogledati DVI dokument. Na Unix-u sa X11 možete uneti xdvi foo.dvi
, na Vindousu možete koristiti program po imenu yap (yet another previewer). (Sada evince i okular, standarni pregledači dokumenata za mnoge Linuks distribucija su u mogućnosti da otvore DVI dokumenta.)
Ovim putem ste kreirali DVI dokument, ali sa istim izvornim dokumentom možete kreirati i PDF dokument. Korak je isti kao i ranije, samo što morate da zamenite komandu latex
sa pdflatex
:
- Unesite komandu:
pdflatex zdravo
(kao ranije .tex ekstenzija nije neophodna) - Nekoliko delova informacija o LaTeX-u i njegovom napretku će biti prikazano. Ako sve prođe dobro, poslednje dve linije u konzoli će biti:
Output written on zdravo.pdf (1 page, 5548 bytes). Transcript written on zdravo.log.
Možete primetiti da je PDF veći od DVI dokumenta, iako sadrže iste informacije. Glavne razlike između DVI i PDF formata su:
- DVI zahteva manje slobodnog prostora i brže se kreira. Ne uključuje fontove u dokumentu, tako da ako želite da dokument bude ispravno prikazan na drugom računaru, tamo moraju biti instalirani svi neophodni fontovi. Ne podržava bilo kakvu interaktivnost kao što su hiperlinkovi ili animirane slike. DVI pregledači nisu toliko česti, tako da razmislite o tome da li ćete njega koristiti za pregled.
- PDF zahteva više prostora na disku i sporije se kreira, ali uključuje sve neophodne fontove u dokumentu, tako da nećete imati nikakvih problema sa razmenom. Podržava interne i eksterne hiperveze. Takođe podržava naprednije tipografske dodatke: označavanje, ekspanziju slova sređivanje margina rezultuje sa više dostupnom fleksibilnošću za TeX prevodioc i bolji izgled dokumenta. Danas je de fakto standard deljenja i objavljivanja dokumenata, tako da ga možete koristiti kao poslednju verziju Vašeg dokumenta.
Zasad ste videli da možete kreirati DVI i PDF dokumene iz istog izvora. To je tačno, ali postaje komplikovanije ako želite da ubacite slike ili veze. Ovo će biti objašnjeno kasnije u narednim poglavljima, za sad pretpostavimo da možemo prevoditi i u DVI i u PDF bez ikakvih problema.
Primetite da smo u ovom primeri zbog jednostavnosti dokumenta samo jednom pokrenuli LaTeX komandu. Međutim, ako želite da napravite složeniji dokument, uključujući bibliografiju i reference, na primer, LaTeX će se morati više puta izvršiti da reši reference. O ovome će biti raspravljano u kasnije.
Automatski izgrađeni sistemi
urediPrevođenje upotrebom latex binarno možete biti malo komplikovanije kada počnete da radite na više složenijim dokumentima. Dosta programa postoji da automatski čita TeX dokumente i pokreće prikladan kompajler skladan broj puta. Na primer latexmk može generisati PDF iz većine TeX dokumenata jednostavno:
$ latexmk -pdf file.tex
Primetite da većina uređivača će se pobrinuti o tome za Vas.
Kompresovan PDF
urediZa PDF rezultat, možete primetiti da PDF dokument nije uvek iste veličine u zavisnosti od mašine koju koristite da prevedete dokument. Tako će latex → dvips → ps2pdf biti mnogo manji nego pdflatex. Ako želite da koristite pdflatex sa malim veličinom rezultata, možete koristiti Ghostscript komandu:
$ gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile="Compressed.pdf" "Original.pdf"
Dokumenti
urediOdabiranje pouzdanog imena
urediNikada ne koristite direktorije (foldere) ili imena dokumenata koji sadrže razmake. Iako ih Vaš operativni sistem podržava, neki ne, i oni će praviti probleme sa TeX-om. Pravite imena dokumenata ili kratka ili duga, po želji, ali izbegavajte upotrebu razmaka. Držite se malih slova bez znakova (a-z), brojeva 0-9, crtice (–), i samo jedne tačke (.) da odvojite ime od ekstenzije (nešto slično konvenkciji za dobre veb adrese): to će vam omogućiti da koristite TeX dokumenta na internetu lakše. Neki operativni sistemi ne prave razliku između velikih i malih slova, dok drugi to čine. Zato nije dobro da ih mešate.
Pomoćni dokumenti
urediTeX kompajleri su jednoprolazni procesi. To znači da ne postoji način da kompajler skoči oko dokumenta, što bi bilo korisno za sadržaj i reference. Kompajler ne može pogoditi na kojoj strani će se određeni deo odštampati, pa kada je sadržaj odštampan pre sledećeg dela, ne može mu dodeliti broj strane.
Da bi zaobišao ovaj problem, mnoge LaTeX komande koje treba da skoče koristite pomoćne dokumente koje obično imaju isto ime datoteke kao trenutni dokument, ali drugu ekstenziju. Ona čuva privremene podatke u ovim fajlovima i koristiti ih za naredno prevođenje. Tako da bi imali dinamičan sadržaj, potrebno je da dva puta prevedemo dokument. Nema potrebe da ponovo prevodi ako se nije neki deo premestio.
Na primer, privremeni dokument za sadržaj podataka je imedatoteke.toc.
Nijedan od ovih dokumenata ne sadrži nepopravljive informacije. To znači da ih možete izbrisati bezbedno, prevođenje će ih obnoviti automatski.
|
Kada radite sa različitim sposobnostima LaTeX-a (indeksi, rečnici, bibliografije, itd) uskoro ćete se naći u lavirintu dokumenata sa različitim ekstenzija. Sledeća lista objašnjava najčešće tipove datoteka sa kojima možete da se sretnete prilikom rada sa TeX:
.aux | Dokument koji prevozi informacije sa jednog prevodioca do sledećeg. Između ostalog,.aux datoteka se koristi za skladištenje informacija u vezi sa poprečnim referencama. |
.bbl | Rezultat bibliografije BiBTeX i koristi LaTeX |
.bib | Baza datoteka bibliografije. (gde možete da sačuvate spisak pun bibliografskih citata) |
.blg | BiBTeX log dokument. (greške se zapisuju ovde) |
.bst | BiBTeX dokument za stilove. |
.cls | Datoteka definiše kako će Vaš dokument izgledati. Oni su označeni sa \documentclass komandom.
|
.dtx | Dokumentovan TeX. Ovo je glavni format za LaTeX datoteke za stilove. Ako procesuirate .dtx datoteku dobijate dokumentovan makro kod LaTeX paketa u .dtx datoteki. |
.ins | Instalacija za datoteke sadržana u .dtx datoteki. Ako preuzmete LaTeX paket sa neta, dobićete .dtx i .ins dokument. Pokrenite LaTeX na .ins datoteki da otpakujete .dtx datoteku. |
.fd | Dokument sa opisima slova, govori LaTeX-u o novim slovima. |
.dvi | Device Independent File (Nezavisna datoteka od uređaja). Ovo je glavni rezultat za LaTeX, prevođenje se radi sa latex. Možete pregledati dokument sa DVI pregledačem ili možete ga štampati sa dvips ili sličnim programima. |
Ovo je glavni rezultat za LaTeX, prevođenje se radi sa pdflatex. Možete ga pogledati i odštampati sa bilo kojim PDF pregledačem. | |
.log | Daje detaljan opis onoga što se desilo tokom poslednjeg prevođenja. |
.toc | Čuva sva zaglavlja. Postaje čitljivo pri sledećem kompajliranju i koristi se za sadržaj. |
.lof | Ovo je kao .toc samo za listu slika. |
.lot | Isto, samo za listu tabela. |
.idx | Ako Vaš dokument sadrži indeks. LaTeX čuva sve reči koje su u indeksu u ovom fajlu. |
.ind | Obrađena .idx datoteka, spremna za uključivanje u dokumentu u sledećem ciklusu prevođenja. |
.ilg | Log datoteka sa indeksima. |
.sty | LaTeX makro paket. Ovo je datoteka koju možete ubaciti u LaTeX dokument upotrebom \usepackage komande. |
.tex | LaTeX ili TeX ulazna datoteka. Može da se prevede sa latex-om. |
.out | paket hyperref datoteke, samo jedan za glavni dokument. |
I šta sad?
urediNajčešći elementi
urediVidi Strukturu dokumenta i deo o Zajedničkim elementim za zajedničke stvari koje se mogu naći u svakom tipu dokumenta.
Ne-Engleska slova i posebni znakovi
urediLaTeX ima dobru podršku za većinu jezika u svetu. Možete reći LaTeX-u da prati tipografska pravila ciljanog jezika, radi sa unosom posebnih znakova i tako dalje. Vidi posebne znakove i Internacionalizacija.
Modularni dokument
urediVidi modularne dokumente za dobru preporuku o načinu organizacije velikih projekata u više dokumenata.
Pitanje i greške
urediPreporučujemo Vam da pročitate FAQ ako imate neke greške sa osnovnim stvarima, ili želite da pročitate osnovne savete. Za više određenija pitanja i greške, pređite na Saveti i trikovi stranu.
Makroi za najveći stepen efikasnosti
urediPuna snaga LaTeX-a leži u makroima. Oni čine Vaš dokument dinamičnim i fleksibilnim. Vidi posvećeni deo o njima.
Timski rad
urediVidi poglavlje Zajedničko pisanje LaTeX dokumenta.