субота, 27 априла, 2024
Сам свој мајстор

Увод у LaTeX

Аутор: Данило Ђокић

У серији чланака о овом пакету за обраду текста бавићемо се кроз неколико наредних бројева ЛиБРЕ! часописа. Једноставност кодирања и велики број могућности су му донели место једног од најпризнатијих формата текста на свету. Он је посебно користан за израду научних, семинарских, дипломских и сличних радова у било којим областима. Посебно је користан због свог јединственог и непревазиђеног система записивања једначина, те ће највише предности имати радови из области природних наука. Велики број издавача математичких књига користи овај пакет да би их уређивали. Из овог разлога, заправо, већина математичких књига изгледају слично. Позабавимо се прво историјом овог изузетног пакета.

TeX

TeX је настао за потребе производње и обраде текстова на рачунару, седамдесетих година прошлог века. Осмислио га је др Доналд Кнут (енгл. Donald Knuth) са универзитета у Станфорду. Он је имао идеју о дигиталном пакету за обраду текста. Сама помисао о изради једног таквог пакета је потекла од његовог мишљења да друго издање његове књиге „Уметност програмирања рачунара” („The art of computer programming”) не изгледа посебно добро са тадашњим техникама штампања књига. Те технике укључују принцип „шта видиш то и добијеш” (WYSIWYG – What you see is what you get) – уместо тога он је смислио програмски језик који описује како документ треба да изгледа (какво је поравнање, који симбол ту треба да се постави и сл.) Дакле, документ се састоји од кôда. Тај кôд није читљив за сваког корисника, њега може да чита само особа која познаје програмски језик (у овом случају TeX), те да би он постао читљив за крајњег корисника он се мора компајлирати (compile), односно превести на неки од стандардних типова документа (PDF, DVI и сл.). Дакле, он је програмски језик који се састоји од наредби које форматирају текст. Нећемо се даље бавити TeX пакетом (макар не директно), већ ћемо прећи на једну његову надоградњу – LaTeX.

LaTeX

Настао по потреби да се ТеX приближи већој групи корисника, LaTeX је оријентисан више ка садржају за разлику од TeX-a који је оријентисан ка форматирању. LaTeX је скуп макро команди које дефинишу често коришћене ствари (наслов, библиографија, садржај, број странице…). LaTeX те додатке доноси у виду нових наредби.

Свака наредба у LaTeX-у почиње знаком „\” (backslash), даље иза њега иду слова енглеског алфабета; неке од наредби су: \documentclass, \usepackage и сл. Ове наредбе не би биле претерано корисне да немају неке аргументе које користе. На пример, ако постоји наредба за наслов, тој наредби некако треба рећи који наслов желимо да буде постављен. Овакви аргументи се стављају у витичасте заграде ({}), а наведени пример би гласио \section{Naslov}. Такође, неке наредбе имају и опције које могу да дефинишу начин на који ће аргумент бити описан, на пример, ако дефинишемо документ могли бисмо да му кажемо да се ради о формату папира А4. Опције се стављају у средње заграде ([]), а наведени пример би гласио \documentclass[a4paper]{article}. Додатно ћемо појаснити улогу ове линије у следећем примеру кôда:

\documentclass[a4paper]{article}
\begin{document}
Zdravo svete
\end{document}

Опишимо шта која линија кôда ради:

  1. \documentclass[a4paper]{article}: Служи да се дефинише тип документа који се израђује. Он дефинише како ће се понашати бројање страница, позиционирање наслова и сл. У овом случају, то је чланак (article), мада он може узети и велики број других типова (book, minimal, a5paper …), а можемо и сами да направимо наш тип документа. Такође, она дефинише и формат странице користећи опцију a4paper.
  2. \begin{document}: Наредба којом се означава почетак документа. Све до ове линије се назива преамбула.
  3. Zdravo svete.: Линија без команди непромењена иде у документ
  4. \end{document}: Наредба којом означавамо да је документ завршен. Све линије у кôду које се налазе иза ове линије ће бити игнорисане.

Коначно, овако би изгледао тако откуцани документ:

Компајлери и развојна окружења за LaTeX

Да бисмо користили LaTeX, имамо две могућности: да користимо неки од бројних LaTeX едитора/компајлера који су на интернету (writeLaTeX, scribtex), док је друга опција инсталација компајлера на рачунару. Да би се то урадило треба инсталирати texlive пакет, колекцију компајлера за језике који су засновани на TeX-у. На оперативним системима заснованим на Debian-у то се може урадити наредбом:

sudo apt-get install texlive-latex-base

Како је LaTeX програмски језик, за његов развој није потребно ништа више од омиљеног текст едитора (vim, nano, gedit и сл.). Додатно постоје и развојна окружења посебно развијена за развој LaTeX докумената, као на пример kile. Ова окружења поседују посебне додатке који олакшавају рад (на пример, табеле посебних карактера, који су такође наредбе).