LaTeX/Struktura dokumenta
Glavna svrha pisanja dokumenta je predstavljanje ideja, informacija ili znanja onome ko čita. Čitalac će bolje razumeti dokument ako su ideje uredno predstavljene, i lakše će shvatiti strukturu ako se tipografske forme pravilo odražavaju na logičku i semantičku strukturu sadržaja.
LaTeX je drugačiji od ostalih sistema za pisanje u tome što vi morate da označite logičku i semantičku strukturu teksta. On dalje rezultuje tipografske forme dokumenta po zadatim pravilima u fajlu klase dokumenta i drugim datotekama za stilove. LaTeX omogućava korisnicima da struktuiraju njihov dokument sa različitim hijerarhijskim konstruktorima, uključujući poglavlja, sekcije, podsekcije i paragrafe.
Globalna struktura
urediKada LaTeX obrađuje ulaznu datoteku, očekuje se od njega da prati određenu strukturu. Zato svaka ulazna datoteka mora da sadrži naredbe
\documentclass{...}
\begin{document}
...
\end{document}
|
Prostor između \documentclass{...}
i \begin{document}
se zove preambula. On obično sadrži naredbe koje utiču na ceo dokument.
Posle preambule, tekst vašeg dokumenta je zatvoren između dve naredbe koje određuju početak i kraj dokumenta:
\begin{document}
...
\end{document}
|
Vaš tekst postavljate gde se nalaze tačke. Razlog za označavanje početka teksta je taj što LaTeX dozvoljava ubacivanje dodatnih specifikacija iznad (gde je prazan red u gornjem primeri: što ćemo uskoro i upotrebiti). Razlog za označavanje kraja teksta obezbeđuje mesto LaTeX-u da se programira za dodatne stvari automatski na kraju dokumenta, kao što je indeksiranje.
Korisna posledica označavanja kraja teksta u dokumenta je ta što možete čuvati komentare ili privremeni tekst ispod \end{document}
sa znanjem da LaTeX nikada neće da prikaže isti:
\end{document}
...
|
Preambula
urediKlase dokumenta
urediKada obrađuje ulaznu datoteku, LaTeX-u je potrebno da zna tip dokumenta koji autor želi da napravi. Ovo se određuje sa \documentclass
naredbom. Preporučuje se da se dokument deklariše na samom početku.
\documentclass[опција]{класа}
|
Ovde, class
određuje tip dokumenta koji se kreira. LaTeX distribucija obezbeđuje dodatne klase za druge dokumente, uključujući slova i slajdove. Takođe možete napraviti sopstvenu klasu, što je čest slučaj kod novina, gde jednostavno obezbeđuju vlastitu klasu, koja govori LaTeX-u kako da se formatira dokument. Mi ćemo za sad biti zadovoljno standardnom klasom za članke (article). Parametar options
bliže određuje osobine klase dokumenta. Opcije moraju biti razdvojene zapetom.
Primer: ulazna datoteka za LaTeX dokument može početi sa linijom
\documentclass[11pt,twoside,a4paper]{article}
|
što upućuje LaTeX da vrati dokument kao članak, sa podrazumevanim slovima veličine 11, i da pripremi dokument za duplo-strano štampanje na A4 papiru.
Ovo su neke klase dokumenta koje se mogu koristiti sa LaTeX-om:
article | Za članke u naučnim časopisima, prezentacije, kraće izveštaje, dokumentaciju, pozivnice, ... |
IEEEtran | Za članke sa IEEE formatom transakcije. |
proc | Klasa za obrađivanje bazirana na klasi article. |
report | Za duže izveštaje koji sadrže nekoliko poglavlja, za male knjige, teze ... |
book | Za prave knjige. |
slides | Za slajdove. Klasa koristi velika sans-serif slova. |
memoir | Za stabilno menjanje rezultata dokumenta. Bazirano na book klasi, ali sa njom možete napraviti bilo koju vrstu dokumenta [1] |
letter | Za pisanje pisama. |
beamer | Za sastavljanje prezentacija (vidi LaTeX/Prezentacije). |
Standardne klase dokumenta koje su deo LaTeX-a su napravljene da budu podjednake, i zato imaju dosta zajedničkih opcija. Druge klase mogu imati različite opcije (ili nijednu istu). Obično, klase sa treće strane dolaze sa nekom dokumentacijom koja vas više upućuje na tu klasu. Najčešće opcije za standarne klase dokumenata su predstavljene u sledećoj tabeli:
10pt, 11pt, 12pt | Podešava veličinu podrazumevanog fonta u dokumentu. Ako nijedna opcija nije određena, 10pt se uzima kao podrazumevano. |
a4paper, letterpaper,... | Definiše veličinu papira. Podrazumevana veličina je letterpaper; Međutim, mnoge Evropske distribucije TeX-a sada dolaze sa podrazumevanim a4paper, ne letterpaper, i ovo je takođe slučaj svih distribucija pdfLaTeX. Osim ovih, a5paper, b5paper, executivepaper, i legalpaper mogu biti izabrani. |
fleqn | Pri prikazu rezultata, formule se nalaze levo, a ne u sredini. |
leqno | Postavljanje broja formule sa leve strane, a ne sa desne. |
titlepage, notitlepage | Određuje da li nova strana treba da počne posle naslova dokumenta ili ne. Klasa article podrazumevano ne počinje sa novom stranom, dok report i book počinju. |
twocolumn | Govori LaTeX-u da predstavi dokument u dve kolone umesto u jednu. |
twoside, oneside | Određuje da li rezultat treba da bude jednostran ili dvostran. Klasa article i report su jednostrane, dok je klasa book dvostrana po podrazumevanim vrednostima. Primetite da ova opcija utiče samo na stil dokumenta. Opcija twoside ne govori štamaču da automatski štampa dvostrano. |
landscape | Menja list dokumenta u ležeći položaj. |
openright, openany | Čini da poglavlja počinju ili samo na desnoj strani ili na sledećoj dostupnoj. Ovo ne radi sa klasom article, pošto u njoj ne postoje poglavlja. Klasa report podrazumevano počinje sa poglavljima na sledećoj dostupnoj strani, a klasa book počinje odma sa desne strane. |
draft | čini da LaTeX ukazuje na problem preloma i poravnanja reči sa malim kvadratom na desnoj strani margine, tako da čovek može brzo uočiti problem. Takođe prati uključivanje slika i prikazuje samo okvir gde bi se one normalno prikazivale. |
Na primer, ako želite report da bude u 12pt stilu na A4, ali štampan sa jedne strane u draft modu, koristićete:
\documentclass[12pt,a4paper,oneside,draft]{report}
|
Paketi
urediDok budete pisali vaš dokument, verovatno ćete naići na neke delove gde običan LaTeX ne može da reši vaš problem. Ako želite da uključite slike, obojeni tekst ili izvorni kod iz fajta u dokument, trebalo bi da proširite sposobnosti LaTeX-a. Da bi proširili LaTeX koristite pakete. Neki paketi dolaze u osnovi LaTeX distribucije. Drugi se posebno dodaju. Moderne TeX distribucije dolaze sa velikim brojem preinstaliranih paketa. Naredba za upotrebu paketa je jednostavna: \usepackage
:
\usepackage[опција]{пакет}
|
naredba, gde je package naziv paketa i options lista reči koja cilja na dodatke u okviru paketa. Na primer, da koristite paket color, koji dopušta prikaz boja, koristićete:
\documentclass{report}
\usepackage{color}
\begin{document}
...
\end{document}
|
Možete ubaciti nekoliko opcija prilikom poziva paketa, a svaku odvajate zapetom.
\usepackage[опција1,опција2,опција3]{''име_пакета''}
|
Okruženje dokumenta
urediZaglavlje
urediNa početku većine dokumenata, biće informacija o samom dokumentu, kao što je naslov i datum, ali takođe i informacije o autorima, odnosno ime, adresa, email, itd. Svi ovi tipovi informacija u LaTeX-u spadaju u zaglavlje. Iako nikad nije eksplicitno naznačeno (ne postoji \topmatter
naredba) na koju ćete verovatno računati u izrazima u LaTeX dokumentaciji.
Prost primer:
\documentclass[11pt,a4paper]{report}
\begin{document}
\title{Структура LaTeX документа}
\author{Перо Ложач}
\date{Децембар 2015}
\maketitle
\end{document}
|
Naredbe \title
, \author
, i \date
su samo-objašnjive. Postavite naslov, ime autora, datum u vitičastim zagradama posle relevantne naredbe. Naslov i autor su uslovni (ako želite da LaTeX piše zaglavlje automatski); ako ne stavite naredbu \date
, LaTeX koristi današnji datum kao podrazumevani. Uvek završavate zaljlavlje sa naredbom \maketitle
, koja govori LaTeX-u da je završeno i da može da podesi zaglavlje po zadatim informacijama i klasi (stilu) koju koristite. Ako izbacite \maketitle
, zaglavlje se nikada neće prikazati (osim ako ne napišete svoje).
Evo i malo složeniji primer:
\title{How to Structure a \LaTeX{} Document}
\author{Луне Шћекић\\
Школа рачунара,\\
Универзитет,\\
Књига,\\
Србија,\\
Број 1234\\
\texttt{studentgeneracije@latex.carobnjak}}
\date{\today}
\maketitle
|
Kao što možete videti, možete koristiti narebe kao argumente \title
i druge. Dupla kosa crta (\\
) predstavlja LaTeX naredbu za prelom reda i uvlačenje.
Ako postoje dva autora, odvojite ih sa naredbom \and
:
\title{Наш забавни документ}
\author{Џана Доу \and Џони Доу}
\date{\today}
\maketitle
|
Upotrebom ovog pristupa, možete kreirati samo osnovni rezultat čiji je sadržaj teško promeniti. Ako želite da naslov kreirate slobodno, pogedajte deo o kreiranju naslova.
Predgovor
urediIz razloga što većina istraživačkih radova ima predgovor, postoji definisana naredba koja govori LaTeX-u koji deo sadržaja predstavlja predgovor. On se javlja u logičkom redu, posle zaglavlja, a pre glavnog dela sadržaja. Ova naredba je dostupna za klase dokumenta article i report, ali ne i book.
\documentclass{article}
\begin{document}
\begin{abstract}
Ваш предговор иде овде...
...
\end{abstract}
...
\end{document}
|
LaTeX će podrazumevano reč "Abstract" shvatati kao naslov vašeg predgovora. Ako želite da promenite u nešto drugo, npr. ,,Izvršni zbir", dodajte sledeći kod pre početka okruženja predgovora
\renewcommand{\abstractname}{Извршни збир}
|
Naredbe sekcija
urediNaredba za unos sekcija je prilično prirodna. Naravno, neke naredbe su približno različite u zavisnosti od klase dokumenta. Na primer, book ima poglavlje, ali article nema. Sledi primer nekih naredbi struktura iz simple.tex.
\chapter{Увод}
Текст овог поглавља...
\section{Структура}
Текст овог поглавља...
\subsection{Главна тема}
Текст овог подпоглавља...
\subsubsection{Информације о чланку}
Текст овог подпоглавља...
|
Primetite da ne treba da označite delove brojevima; LaTeX će to uraditi za vas. Takođe, za sekcije, ne treba da koristite \begin
i \end
naredbe da ukažete na to koji deo pripada zadatom bloku.
LaTeX obezbeđuje 7 nivoa dubine pri definisanju sekcija (vidi tabelu ispod). Svaka sekcija u ovoj tabeli je subsekcija one iznad nje.
Command | Level | Comment |
---|---|---|
\part{''part''}
|
-1 | nema u letters |
\chapter{''chapter''}
|
0 | samo u books i reports |
\section{''section''}
|
1 | nema u letters |
\subsection{''subsection''}
|
2 | nema u letters |
\subsubsection{''subsubsection''}
|
3 | nema u letters |
\paragraph{''paragraph''}
|
4 | nema u letters |
\subparagraph{''subparagraph''}
|
5 | nema u letters |
Svi naslovi sekcija su automatski dodati u sadržaj (ako ste odlučili da ga ubacite). Ali ako ručno dizajnirate promene u vašem zaljlavlju, na primer veoma dugačak naslov, ili neki specijalni prelom reda ili igranje sa slovima, to će se pojaviti u sadržaju takođe, što obično ne želite. LaTeX dozvoljava da zadate dodatne opcije prikaza naslova u sadržaju. Ove alternative idu u [kvadratnim zagradama] pre vitičastih zagrada:
\section[Утицај на флуктуације запослених]{Анализа ефикасности ревидиране политике запошљавања особља у посебном седишту}
|
Nabrajanje sekcija
urediNabrajanje sekcija se izvodi automatski u LaTeX-u, tako da se nemate muka da ih dodate, a sve što je potrebno je da ubacite naslov između vitičastih zagrada. Delovi postaju rimski brojevi (Deo I, Deo II, itd.); poglavlja i sekcije dobiaju decimalne vrednosti kao ovaj dokument, a dodaci (koji su specijalni slučajevi poglavlja, i dele iste strukturu) se organizuju slovima (A, B, C, itd.).
Možete promeniti dubinu broja koji se pojavljuje tako što ćete uključiti ili iskljičiti selektivno. Podrazumevano je podešeno na 2. Ako samo želite delove, poglavlja i sekcije nabrojane brojevima, bez podsekcija, možete promeniti vrednost secnumdepth brojača upotrebom naredbe \setcounter
, zadajući dubinu nivoa koji želite. Na primer, ako želite da promenite na "1":
\setcounter{secnumdepth}{1}
|
Povezani brojač tocdepth, kojim određujete dubinu u sadržaju. Može se podesiti na isti način secnumdepth. Na primer:
\setcounter{tocdepth}{3}
|
Da bi dobili sekciju bez broja ispred naslova što ne ide u sadržaj, dodajte zvezdicu posle imena naredbe, ispred vitičastih zagrada:
\subsection*{Увод}
|
Sve divizione naredbe od \part*
do \subparagraph*
imaju ovu "zvezdanu" verziju koja se može koristiti u specijalni slučajevima za nenumerisani naslov kada bi podešavanje secnumdepth normalno to numerisalo.
Ako želite da nenumerišete sekciju u sadržaju, koristite naredbu \addcontentsline
kao ovde:
\section*{Увод}
\addcontentsline{toc}{section}{Увод}
|
Zapazite da ako koristite PDF adresiranje, potrebno je da dodate fantomsku sekciju da bi adresa vodila na pravo mesto u dokumentu. Naredba \phantomsection
definisana je u hyperref paketu, i normalno se implementira, kao što sledi:
\phantomsection
\addcontentsline{toc}{section}{Увод}
\section*{Увод}
|
Za poglavlja bi takođe trebalo da očistite stranu (to će ispraviti numerisanje strana u sadržaju):
\cleardoublepage
\phantomsection
\addcontentsline{toc}{chapter}{Литература}
\bibliographystyle{unsrt}
\bibliography{my_bib_file}
|
Vrednost gde počinje numerisanje sekcija može biti podešeno sledećom naredbom:
\setcounter{section}{4}
|
Sledeća sekcija posle ove naredbe će biti sa brojem 5.
Za više detalja o nabrajanju, vidi posvećeno poglavlje.
Stilovi numerisanja sekcija
urediVidi Numerisanje.
Obični paragrafi
urediParagraf dolazi posle sekcije naslova. Jednostavno otkucajte tekst i ostavite praznan red između paragrafa. Prazan red znači da ,,počne novi paragraf ovde": što ne znači da ćete dobiti prazan red u rezultatu. Za formatiranje uvučenosti paragrafa i proreda između paragrafa, pogledajte Formatiranje paragrafa.
Sadržaj
urediSvi automatski numerisani naslovi se ubacuju u sadržaj automatski. Vi ne morate da prikažete sadržaj, ali ako želite, samo dodajte naredbu \tableofcontents
na mestu na kome želite da se štampa (Obično posle pregovora ili zaključka).
Zapisi za sadržaj se evidentiraju svaki put kada se obradi dokument, i reprodukuju sledeći put kada se obradi, tako da morate da ponovo pokrenete LaTeX još jednom kako bi bili sigurni da su svi brojevi strana pravilno izračunati. Već smo videli kako se koristi opcioni argument za naredbe sekcija da dodate tekst u sadržaj koji je malo drugačiji od onog štampanog u telu dokumenta. Takođe je moguće dodati dodatne redove u sadržaju, da se uključe dodatni ili nenumerisani naslovi.
Naredba \listoffigures
i \listoftables
radi na isti način kao i \tableofcontents
da automatski izlista sve vaše tabele i figure. Ako ih koristite, one obično idu posle \tableofcontents
naredbe. Naredba \tableofcontents
obično prikazuje samo numerisane naslove, i samo do nivoa definisanog sa tocdepth brojačem, ali ako možete da dodate dodatne delove sa naredbom \addcontentsline
. Na primer, ako koristite nenumerisane naslove za idrešene delove kao što je su recimo Literatura ili Predgovor, možete ih prikazati na sledeći način:
\subsection*{Предговор}
\addcontentsline{toc}{subsection}{Предговор}
|
Ovo će formatirati nenumerisani "Predgovor" u stilu "subsekcije". Možete koristiti isti mehanizam da dodate delove za listu slika ili listu tabela sa menjanjem lof ili lot sa toc. Ako koristite paket hyperref i linkovi ne upućuju na ispravno poglavlje, naredba \phantomsection
u kombinaciji sa \clearpage
ili \cleardoublepage
se može iskoristiti (vidi takođe Oznake i referenciranje):
\cleardoublepage
\phantomsection
\addcontentsline{toc}{chapter}{Листа слика}
\listoffigures
|
Da bi promenili ime sadržaju, treba da nalepite sledeću komandu \renewcommand{\contentsname}{<Novo ime sadržaja>}
u preambuli vašeg dokumenta. Da bi promenili ime za listu slika ili listu tabela možete samo da zamenite \contentsname
sa \listfigurename
za listu slika i \listtablename
za listu tabela.
Dubina
urediObičan sadržaj će prikazati naslove do trećeg nivoa i iznad. Da bi promenili koliko duboko će vaš sadržaj prikazivati naslove automatski, postavite sledeću komandu u vašoj preambuli:
\setcounter{tocdepth}{4}
|
Ovo će učiniti da vaš sadržaj uključuje sve do paragrafa. Nivoi su definisani gore, na ovoj strani. Imajte na umu da ovo rešenje ne dozvoljava dinamičku promenu dubine.
Možete promeniti dubinu određenog tipa sekcije, što može biti korisno za PDF veze (ako koristite paket hyperref ) :
\makeatletter
\renewcommand*{\toclevel@chapter}{-1} % Поставите дубину поглавља на истом нивоу као и \part.
\chapter{Закључак}
\renewcommand*{\toclevel@chapter}{0} % Поставите дубину поглавља назад на њену подразумевану вредност.
\makeatother
|
U cilju daljeg podešavanja prikaza ili numeracije sadržaja, na primer, ako bi trebalo da dodatak bude manje detaljan, možete upotrebiti tocvsec2 paket (CTAN, doc).
Struktura knjige
urediObična LaTeX book klasa prati isti raspored opisan iznad sa istim dodacima. Normalno će slika biti dvostrana, npr. leva i desna margina će se menjati u zavisnosti od broja strane. Pored toga trenutno poglavlje i sekcije će se štampati u zaglavlju.
Ako ne koristite poglavlja, ona je jedva korisno da koristite book klasu.
Dodatno, klasa pruža makroe da promenite formatiranje nekim mestima u dokumentu. Pružamo vam neke savete o tome kako da ih koristite pravilno. [1]
\begin{document}
\frontmatter
\maketitle
% Уводно поглавље
\chapter{Предговор}
% ...
\mainmatter
\chapter{Прво поглавље}
% ...
\appendix
\chapter{Први додатак}
\backmatter
\chapter{Закључак}
|
- Prednja materija neće biti numerisana. Broj strana će biti štampan rimskim brojevima. Prednja materija nije predviđena da ima delove, pošto će oni biti brojevi
0.n
jer ne postoji numerisanje poglavlja. Pogledajte poglavlje Numerisanje za ispravku. - Poglavlje glavne materije radi po običaju. Naredba resetuje numerisanje strana. Broj strana će se prikazati arapskim brojevima.
- Marko
\appendix
se može upotrebiti da ukaže na to da sledeće sekcije ili poglavlja budu numerisane kao dodaci. Dodaci se mogu koristiti i za klasu article takođe:
\appendix
\section{Први додатак}
|
Samo koristite jednom \appendix
marko za sve dodatke.
- Zadnja materija se ponaša kao i prednja. Ima isti problem sa numerisanjem sekcija.
Kao opšte pravilo, trebalo bi da izbegnete mešanje reda naredbi. Pošto su sve naredbe opcione, možete razmotriti da koristite samo nekoliko njih.
Primetite da se posebni delovi, kao što je sadržaj smatraju kao nenumerisano poglavlje.
Red strana
urediOvo je standarni red strana za knjige.
- Prednja materija
- Polu-naslov
- Prazna strana
- Naslov
- Informacije (izdavač, godina, itd.)
- Posvećeno, ako jeste, u suprotnom prazna strana
- Sadržaj
- Spisak slika (može biti na kraju takođe)
- Uvodno poglavlje
- Glavna materija
- Glavna tempa
- Dodatak
- Neka podređena poglavlja
- Zadnja materija
- Literatura
- Rečnik / Indeks
Posebne strane
urediSveobuhvatni radovi često imaju posebne stranice na kraju, kao što su indeksi, rečnici i literaturu. Pošto je ovo prilično kompleksna tema, više detalja možete naći u namenski delu Posebne strane .
Literatura
urediSvaki dobar istraživači rad će imati punu listi referenci. LaTeX ima dva načina za ubacivanje referenci unutar dokumenta:
- možete ih ubaciti u samom dokumentu. Jednostavnije je, ali vam može uzeti više vremena ako pišete nekoliko radova o sličnim temama, pa iznova i iznova morate citirati istu knjigu.
- možete ih čuvati u eksternom BibTeX fajlu , a onda ih povezati uz pomoć naredbi sa vašim dokumentom i upotrebiti Bibtex stil za definisanje njihovog pojavljivanja. Na ovaj način možete napraviti malu bazu referenci koju možete koristiti i jednostavno povezivati, puštajući da LaTeX radi za vas.
Da naučite kako da dodate literaturu u dokument, pogledajte deo vezan za menadžment literature.
Reference
uredi