petak, 19 aprila, 2024
Sam svoj majstor

Uvod u LaTeX (2. deo)

Autor: Danilo Đokić

U ovom broju časpopisa pozabavićemo se sa osnovnim oblicima formatiranja, kao što su poravnanja, podebljan i iskošen tekst i slično. Pre nego što počnemo sa tim trebalo bi da prvo objasnimo šta je okolina i šta je to paket.

Okoline (engl. Environment) su poseban deo sintakse LaTeX-a, jer nam omogućavaju da na određeni deo koda primenimo neki posebni vid obrade. Okoline se koriste uvođenjem naredbi \begin i \end na sledeći način:


\begin{naziv okoline}[opcije okoline]
\end{naziv okoline}

Mada je ovo standardno, neretko se dešava da su opcije okoline navedene u vitičastim zagradama ({}). Jednu od okolina smo već upoznali i ona se pojavila u prethodnom broju, naravno to je okolina document koja će se pojaviti u svakom LaTeX kôdu i ona ukazuje kompajleru da se tu nalazi kôd koji treba obraditi da bi se on prikazao u konačnom dokumentu. Okoline možemo praviti sami ili uvoziti iz raznih paketa.

Paketi (engl. Package) su već pripremljeni niz okolina i naredbi za neki specifični tip obrade dokumenata, te tako imamo pakete za dodavanje drugih pisama (grčkog alfabeta, ćirilice i sl.), uvođenje slika u dokument, iscrtavanje visokokvalitetne vektorske grafike u samom kôdu i još puno toga.
I pakete možemo sami da napravimo, a možemo ih i uvesti naredbom:

\usepackage[**potpaketi**]{**naziv paketa**}

Upoznajmo se prvo sa nekoliko najosnovnijih okolina i naredbi koje ćemo koristiti prilikom formatiranja teksta, a za koje nam nisu potrebni nikakvi novi paketi.

Osnovi formatiranja

Poravnanja (engl. justification) izvršavamo korišćenjem okolina flushleft, center i flushright. Podebljani tekst (engl. bold) možemo proizvesti naredbom textbf a iskošeni (engl. italic) korišćenjem naredbe textit. Jedan primer koji koristi sve ove opcije bi glasio:

  \documentclass[a4paper]{article} \begin{document} \begin{flushleft} \textit{Iskoseni tekst poravnan uz levu ivicu} \end{flushleft} \begin{center} \textbf{Podebljani centrirani tekst} \end{center} \begin{flushright} Poravnanje uz desnu ivicu \end{flushright} \end{document}

Recimo da je taj kôd sačuvan pod nazivom main.tex. Tada bi smo kompajliranje istog obavili naredbom

pdflatex main.tex

(ova naredba se koristi kada imamo texlive kompajler koji cmo vam preporučili da instalirate u predhodnom broju). Nakon toga on bi izgledao kao:

Slova srpske latinice i srpski navodnici

Zbog daleko veće jednostavnosti pisanja srpske latinice u LaTeX-u, nju uvodimo prvu (u kasnijim brojevima objasnićemo i uvođenje ćirilice). Slova koja se u njoj pojavljuju sa „kvačicom” koriste naredbe da bi se prikazivale (klasa naredbi koje proizvode slova specifična za neko drugo pismo osim engleskog alfabeta nazivaju se specijalni karakteri). Naredbe \v{} i \'{} će docrtati odgovarajuću kvačicu na slovo koje je njihov argument. Pa će tako tabela specijalnih karaktera srpskog jezika izgledati ovako:

  Č = \v C č = \v c Ć = \'C ć = \'c Ž = \v Z ž = \v z Š = \v S s = \v s

Kao što možemo primetiti, ove naredbe se mogu pisati i na malo standardniji način time štedeći vreme i dužinu koda. Ovo potiče od sintakse samih naredbi. Kako naredbe mogu biti slova engleskog alfabeta (u nekim slučajevima i jedinstveni karakteri), naredba \v prepoznaje prvi znak iza beline kao njen argument (belina može biti proizvoljan broj razmaka, tabulatora ili novih linija). A naredba \’ prepoznaje neposredno prvi karakter iza nje kao njen argument. Sa slovom Đ je situacija za nijansu drugačija. Da bi se koristilo ovo slovo bez nekih posebnih poteškoća, treba uvesti paket fontenc posebno njegov deo T1 ( \usepackage[T1]{fontenc} ), tada se ono može dobiti naredbama \DJ{} i \dj{}.

Srpske navodnike je najlakše uvesti definisanjem nove naredbe bez argumenta. Nećemo se sada baviti definisanjem novih naredbi, za sada ćemo samo reći da je potrebno u preambuli dodati sledeći kôd:

  \def \dnv{,\kern-0.09em,} \def \gnv{``}

I sada ćemo donje i gornje navodnike dobijati kao specijalne karatere \dnv i \gnv redom. Kao neki primer za ovo navedimo obradu odsečka članka o BalCCon-u iz prošlog broja u LaTeX-u:

  \documentclass[a4paper]{article} \usepackage[T1]{fontenc} \def \dnv{,\kern-0.09em,} \def \gnv{``} \begin{document} Po\v cetkom septembra, ta\v cnije 6. i 7. septembra, u Novom Sadu u Master centru, odr\v zan je prvi balkanski ra\v cunarski kongres koji je privukao pa\v znju kako lokalnih, tako i hakerskih zajednica \v sirom svijeta. Ovaj doga\dj{}aj je jasan indikator nivoa kvaliteta \textit{IT}-a balkanskih zemalja. Prvi kongres je specifi\v cno nazvan \dnv First contact\gnv - na na\v sem jeziku \dnv Prvi kontakt\gnv. \end{document}

Što bi nakon kompajliranja izgledalo kao:

Primetimo nekoliko važnih stvari, pre svega novi red se ne obrađuje direktno. On je ekvivalentan bilo kojoj belini i biće prepoznat samo kao razdvajanje reči, naredbi i sl. Da bismo uveli pravi novi red, treba koristiti naredbu \\ (dvostruki backslash). Jedini način da novi red ima posebnog uticaja su dva uzastopna znaka za novi red (što znači jedna prazna linija između redova) koja će označiti novi red i uvlačenje teksta. Ovo uvlačenje je definisano i za prvu reč u tekstu. Ako nekad želimo da izbegnemo uvlačenje teksta ispred reči koja će po standardnoj sintaksi biti uvučena stavljamo naredbu \noindent, a ako se pak po sintaksi ne bi uvlačio tekst a mi to ipak želimo, ispred reči koju treba uvući stavljamo naredbu \indent.

Zaključak

U ovom broju objasnili smo osnove formatiranja teksta na koje ćete naići u svakom tekst-procesoru. U sledećem broju objasnićemo neke osobenosti vezane za sam LaTeX, kao što je jedinstveni način formiranja naslova, brojače, i za LaTeX čuveno i jako popularno ukršteno referenciranje (tzv. cross-referenciranje).