LaTeX/Структура документа

Извор: Викикњиге

LaTeX

Почетак
  1. Увод100% завршен  Dec 13, 2015
  2. Инсталација100% завршен  Dec 13, 2015
  3. Инсталација додатних пакета 100% завршен  Dec 13, 2015
  4. Основе 100% завршен  Dec 13, 2015
  5. Како пронаћи помоћ 100% завршен  Dec 13, 2015

Заједнички елементи

  1. Структура документа 100% завршен  Dec 28, 2015
  2. Форматирање текста 100% завршен  Dec 27, 2015
  3. Форматирање параграфа 100% завршен  Јан 02, 2016
  4. Боје 100% завршен  Jan 10, 2016
  5. Слова100% завршен  Jan 10, 2016
  6. Структура листи 100% завршен  Jan 10, 2016
  7. Посебни знакови 100% завршен  Jan 10, 2016
  8. Интернационализација 100% завршен  Jan 10, 2016
  9. Ротација 100% завршен  Jan 10, 2016
  10. Табеле 100% завршен  Jan 10, 2016
  11. Стварање наслова 100% завршен  Jan 10, 2016
  12. Распоред стране 100% завршен  Jan 10, 2016
  13. Увоз графике 100% завршен  Jan 10, 2016
  14. Фигуре и натписи100% завршен  Jan 10, 2016
  15. Фусноте и Маргине100% завршен  Jan 10, 2016
  16. Хиперлинкови 100% завршен  Jan 10, 2016
  17. Ознаке и референцирање100% завршен  Jan 10, 2016

Механика

  1. Грешке и упозорења 75% завршен  Јан 02, 2016
  2. Дужине 100% завршен  Јан 02, 2016
  3. Бројачи 100% завршен  Јан 02, 2016
  4. Кутије 100% завршен  Јан 02, 2016
  5. Правила и носачи 100% завршен  Јан 02, 2016

Технички текстови

  1. Математика100% завршен  Jan 10, 2016
  2. Напреднија математика 75% завршен  Jan 10, 2016
  3. Теореме
  4. Хемијска графика 75% завршен  Јан 02, 2016
  5. Алгоритми 75% завршен  Јан 02, 2016
  6. Листирање изворног кода 100% завршен  Јан 02, 2016
  7. Лингвистика 75% завршен  Јан 02, 2016

Посебне стране

  1. Индексирање 75% завршен  Јан 02, 2016
  2. Речник 75% завршен  Јан 02, 2016
  3. Управљање библиографијом‎ 75% завршен  Jan 10, 2016
  4. Више библиографије

Посебни документи

  1. Писма 50% завршен  Јан 02, 2016
  2. Презентације 75% завршен  Јан 02, 2016
  3. Учитељски део 75% завршен  Jan 10, 2016
  4. Кратка биографија 50% завршен  Јан 02, 2016

Креирање графика

  1. Представљање процедуралних графика 100% завршен  Јан 02, 2016
  2. МетаПостови 0% завршен  Јан 02, 2016
  3. Слика 50% завршен  Јан 02, 2016
  4. PGF/TikZ 25% завршен  Јан 02, 2016
  5. PSTricks 50% завршен  Јан 02, 2016
  6. Xy-pic 25% завршен  Јан 02, 2016
  7. Прављење 3D графикa 75% завршен  Јан 02, 2016

Програмирање

  1. Макрои 100% завршен  Jan 10, 2016
  2. Обичан ТеХ‎ 100% завршен  Jan 10, 2016
  3. Креирање пакета 100% завршен  Jan 10, 2016
  4. Теме 75% завршен  Jan 10, 2016

Разно

  1. Модуларни Документи 100% завршен  Jan 10, 2016
  2. Заједничко писање LaTeX докумената 75% завршен  Jan 10, 2016
  3. Отпремање у друге формате 100% завршен  Jan 10, 2016

Помоћ и препоруке

  1. Најчешће постављана питања 100% завршен  Jan 10, 2016
  2. Савети и трикови 75% завршен  Jan 10, 2016

Додаци

  1. Аутори 0% завршен  Jan 10, 2016
  2. Линкови 0% завршен  Jan 10, 2016
  3. Ознаке пакета 0% завршен  Jan 10, 2016
  4. Примери LaTeX докумената 0% завршен  Jan 10, 2016
  5. Индекс 0% завршен  Jan 10, 2016
  6. Речник наредби 0% завршен  Jan 10, 2016

Главна сврха писања документа је представљање идеја, информација или знања ономе ко чита. Читалац ће боље разумети документ ако су идеје уредно представљене, и лакше ће схватити структуру ако се типографске форме правило одражавају на логичку и семантичку структуру садржаја.

LaTeX је другачији од осталих система за писање у томе што ви морате да означите логичку и семантичку структуру текста. Он даље резултује типографске форме документа по задатим правилима у фајлу класе документа и другим датотекама за стилове. LaTeX омогућава корисницима да структуирају њихов документ са различитим хијерархијским конструкторима, укључујући поглавља, секције, подсекције и параграфе.

Глобална структура[уреди]

Када LaTeX обрађује улазну датотеку, очекује се од њега да прати одређену структуру. Зато свака улазна датотека мора да садржи наредбе

\documentclass{...}

\begin{document}
...
\end{document}

Простор између \documentclass{...} и \begin{document} се зове преамбула. Он обично садржи наредбе које утичу на цео документ.

После преамбуле, текст вашег документа је затворен између две наредбе које одређују почетак и крај документа:

\begin{document}
...
\end{document}

Ваш текст постављате где се налазе тачке. Разлог за означавање почетка текста је тај што LaTeX дозвољава убацивање додатних спецификација изнад (где је празан ред у горњем примери: што ћемо ускоро и употребити). Разлог за означавање краја текста обезбеђује место LaTeX-у да се програмира за додатне ствари аутоматски на крају документа, као што је индексирање.

Корисна последица означавања краја текста у документа је та што можете чувати коментаре или привремени текст испод \end{document} са знањем да LaTeX никада неће да прикаже исти:

\end{document}
...

Преамбула[уреди]

Класе документа[уреди]

Када обрађује улазну датотеку, LaTeX-у је потребно да зна тип документа који аутор жели да направи. Ово се одређује са \documentclass наредбом. Препоручује се да се документ декларише на самом почетку.

\documentclass[опција]{класа}

Овде, class одређује тип документа који се креира. LaTeX дистрибуција обезбеђује додатне класе за друге документе, укључујући слова и слајдове. Такође можете направити сопствену класу, што је чест случај код новина, где једноставно обезбеђују властиту класу, која говори LaTeX-у како да се форматира документ. Ми ћемо за сад бити задовољно стандардном класом за чланке (article). Параметар options ближе одређује особине класе документа. Опције морају бити раздвојене запетом.

Пример: улазна датотека за LaTeX документ може почети са линијом

\documentclass[11pt,twoside,a4paper]{article}

што упућује LaTeX да врати документ као чланак, са подразумеваним словима величине 11, и да припреми документ за дупло-страно штампање на А4 папиру.

Ово су неке класе документа које се могу користити са LaTeX-ом:

Класе докумената
article За чланке у научним часописима, презентације, краће извештаје, документацију, позивнице, ...
IEEEtran За чланке са IEEE форматом трансакције.
proc Класа за обрађивање базирана на класи article.
report За дуже извештаје који садрже неколико поглавља, за мале књиге, тезе ...
book За праве књиге.
slides За слајдове. Класа користи велика санс-сериф слова.
memoir За стабилно мењање резултата документа. Базирано на book класи, али са њом можете направити било коју врсту документа [1]
letter За писање писама.
beamer За састављање презентација (види LaTeX/Презентације).

Стандардне класе документа које су део LaTeX-а су направљене да буду подједнаке, и зато имају доста заједничких опција. Друге класе могу имати различите опције (или ниједну исту). Обично, класе са треће стране долазе са неком документацијом која вас више упућује на ту класу. Најчешће опције за стандарне класе докумената су представљене у следећој табели:

Опције класа докумената
10pt, 11pt, 12pt Подешава величину подразумеваног фонта у документу. Ако ниједна опција није одређена, 10pt се узима као подразумевано.
a4paper, letterpaper,... Дефинише величину папира. Подразумевана величина је letterpaper; Међутим, многе Европске дистрибуције TeX-а сада долазе са подразумеваним a4paper, не letterpaper, и ово је такође случај свих дистрибуција pdfLaTeX. Осим ових, a5paper, b5paper, executivepaper, и legalpaper могу бити изабрани.
fleqn При приказу резултата, формуле се налазе лево, а не у средини.
leqno Постављање броја формуле са леве стране, а не са десне.
titlepage, notitlepage Одређује да ли нова страна треба да почне после наслова документа или не. Класа article подразумевано не почиње са новом страном, док report и book почињу.
twocolumn Говори LaTeX-у да представи документ у две колоне уместо у једну.
twoside, oneside Одређује да ли резултат треба да буде једностран или двостран. Класа article и report су једностране, док је класа book двострана по подразумеваним вредностима. Приметите да ова опција утиче само на стил документа. Опција twoside не говори штамачу да аутоматски штампа двострано.
landscape Мења лист документа у лежећи положај.
openright, openany Чини да поглавља почињу или само на десној страни или на следећој доступној. Ово не ради са класом article, пошто у њој не постоје поглавља. Класа report подразумевано почиње са поглављима на следећој доступној страни, а класа book почиње одма са десне стране.
draft чини да LaTeX указује на проблем прелома и поравнања речи са малим квадратом на десној страни маргине, тако да човек може брзо уочити проблем. Такође прати укључивање слика и приказује само оквир где би се оне нормално приказивале.

На пример, ако желите report да буде у 12pt стилу на A4, али штампан са једне стране у draft моду, користићете:

\documentclass[12pt,a4paper,oneside,draft]{report}

Пакети[уреди]

Док будете писали ваш документ, вероватно ћете наићи на неке делове где обичан LaTeX не може да реши ваш проблем. Ако желите да укључите слике, обојени текст или изворни код из фајта у документ, требало би да проширите способности LaTeX-а. Да би проширили LaTeX користите пакете. Неки пакети долазе у основи LaTeX дистрибуције. Други се посебно додају. Модерне TeX дистрибуције долазе са великим бројем преинсталираних пакета. Наредба за употребу пакета је једноставна: \usepackage:

\usepackage[опција]{пакет}

наредба, где је package назив пакета и options листа речи која циља на додатке у оквиру пакета. На пример, да користите пакет color, који допушта приказ боја, користићете:

\documentclass{report}
\usepackage{color}

\begin{document}
...
\end{document}

Можете убацити неколико опција приликом позива пакета, а сваку одвајате запетом.

\usepackage[опција1,опција2,опција3]{''име_пакета''}

Окружење документа[уреди]

Заглавље[уреди]

На почетку већине докумената, биће информација о самом документу, као што је наслов и датум, али такође и информације о ауторима, односно име, адреса, емаил, итд. Сви ови типови информација у LaTeX-у спадају у заглавље. Иако никад није експлицитно назначено (не постоји \topmatter наредба) на коју ћете вероватно рачунати у изразима у LaTeX документацији.

Прост пример:

\documentclass[11pt,a4paper]{report}

\begin{document}
\title{Структура LaTeX документа}
\author{Перо Ложач}
\date{Децембар 2015}
\maketitle
\end{document}

Наредбе \title, \author, и \date су само-објашњиве. Поставите наслов, име аутора, датум у витичастим заградама после релевантне наредбе. Наслов и аутор су условни (ако желите да LaTeX пише заглавље аутоматски); ако не ставите наредбу \date, LaTeX користи данашњи датум као подразумевани. Увек завршавате заљлавље са наредбом \maketitle, која говори LaTeX-у да је завршено и да може да подеси заглавље по задатим информацијама и класи (стилу) коју користите. Ако избаците \maketitle, заглавље се никада неће приказати (осим ако не напишете своје).

Ево и мало сложенији пример:

\title{How to Structure a \LaTeX{} Document}
\author{Луне Шћекић\\
  Школа рачунара,\\
  Универзитет,\\
  Књига,\\
  Србија,\\
  Број 1234\\
  \texttt{studentgeneracije@latex.carobnjak}}
\date{\today}
\maketitle

Као што можете видети, можете користити наребе као аргументе \title и друге. Дупла коса црта (\\) представља LaTeX наредбу за прелом реда и увлачење.

Ако постоје два аутора, одвојите их са наредбом \and:

\title{Наш забавни документ}
\author{Џана Доу \and Џони Доу} 
\date{\today}
\maketitle


Употребом овог приступа, можете креирати само основни резултат чији је садржај тешко променити. Ако желите да наслов креирате слободно, погедајте део о креирању наслова.

Предговор[уреди]

Из разлога што већина истраживачких радова има предговор, постоји дефинисана наредба која говори LaTeX-у који део садржаја представља предговор. Он се јавља у логичком реду, после заглавља, а пре главног дела садржаја. Ова наредба је доступна за класе документа article и report, али не и book.

\documentclass{article}

\begin{document}

\begin{abstract}
Ваш предговор иде овде...
...
\end{abstract}
...
\end{document}

LaTeX ће подразумевано реч "Abstract" схватати као наслов вашег предговора. Ако желите да промените у нешто друго, нпр. ,,Извршни збир", додајте следећи код пре почетка окружења предговора

\renewcommand{\abstractname}{Извршни збир}

Наредбе секција[уреди]

Наредба за унос секција је прилично природна. Наравно, неке наредбе су приближно различите у зависности од класе документа. На пример, book има поглавље, али article нема. Следи пример неких наредби структура из simple.tex.

\chapter{Увод}
Текст овог поглавља...

\section{Структура}
Текст овог поглавља...

\subsection{Главна тема}
Текст овог подпоглавља...

\subsubsection{Информације о чланку}
Текст овог подпоглавља...

Приметите да не треба да означите делове бројевима; LaTeX ће то урадити за вас. Такође, за секције, не треба да користите \begin и \end наредбе да укажете на то који део припада задатом блоку.

LaTeX обезбеђује 7 нивоа дубине при дефинисању секција (види табелу испод). Свака секција у овој табели је субсекција оне изнад ње.

Command Level Comment
\part{''part''} -1 нема у letters
\chapter{''chapter''} 0 само у books и reports
\section{''section''} 1 нема у letters
\subsection{''subsection''} 2 нема у letters
\subsubsection{''subsubsection''} 3 нема у letters
\paragraph{''paragraph''} 4 нема у letters
\subparagraph{''subparagraph''} 5 нема у letters

Сви наслови секција су аутоматски додати у садржај (ако сте одлучили да га убаците). Али ако ручно дизајнирате промене у вашем заљлављу, на пример веома дугачак наслов, или неки специјални прелом реда или играње са словима, то ће се појавити у садржају такође, што обично не желите. LaTeX дозвољава да задате додатне опције приказа наслова у садржају. Ове алтернативе иду у [квадратним заградама] пре витичастих заграда:

\section[Утицај на флуктуације запослених]{Анализа ефикасности ревидиране политике запошљавања  особља  у посебном седишту}

Набрајање секција[уреди]

Набрајање секција се изводи аутоматски у LaTeX-у, тако да се немате мука да их додате, а све што је потребно је да убаците наслов између витичастих заграда. Делови постају римски бројеви (Део I, Део II, итд.); поглавља и секције добиају децималне вредности као овај документ, а додаци (који су специјални случајеви поглавља, и деле исте структуру) се организују словима (A, B, C, итд.).

Можете променити дубину броја који се појављује тако што ћете укључити или искљичити селективно. Подразумевано је подешено на 2. Ако само желите делове, поглавља и секције набројане бројевима, без подсекција, можете променити вредност secnumdepth бројача употребом наредбе \setcounter, задајући дубину нивоа који желите. На пример, ако желите да промените на "1":

\setcounter{secnumdepth}{1}

Повезани бројач tocdepth, којим одређујете дубину у садржају. Може се подесити на исти начин secnumdepth. На пример:

\setcounter{tocdepth}{3}

Да би добили секцију без броја испред наслова што не иде у садржај, додајте звездицу после имена наредбе, испред витичастих заграда:

\subsection*{Увод}

Све дивизионе наредбе од \part* до \subparagraph* имају ову "звездану" верзију која се може користити у специјални случајевима за ненумерисани наслов када би подешавање secnumdepth нормално то нумерисало.

Ако желите да ненумеришете секцију у садржају, користите наредбу \addcontentsline као овде:

\section*{Увод}
\addcontentsline{toc}{section}{Увод}

Запазите да ако користите ПДФ адресирање, потребно је да додате фантомску секцију да би адреса водила на право место у документу. Наредба \phantomsection дефинисана је у hyperref пакету, и нормално се имплементира, као што следи:

\phantomsection
\addcontentsline{toc}{section}{Увод}
\section*{Увод}

За поглавља би такође требало да очистите страну (то ће исправити нумерисање страна у садржају):

\cleardoublepage
\phantomsection
\addcontentsline{toc}{chapter}{Литература}
\bibliographystyle{unsrt}
\bibliography{my_bib_file}

Вредност где почиње нумерисање секција може бити подешено следећом наредбом:

\setcounter{section}{4}

Следећа секција после ове наредбе ће бити са бројем 5.

За више детаља о набрајању, види посвећено поглавље.

Стилови нумерисања секција[уреди]

Види Нумерисање.

Обични параграфи[уреди]

Параграф долази после секције наслова. Једноставно откуцајте текст и оставите празнан ред између параграфа. Празан ред значи да ,,почне нови параграф овде": што не значи да ћете добити празан ред у резултату. За форматирање увучености параграфа и прореда између параграфа, погледајте Форматирање параграфа.

Садржај[уреди]

Сви аутоматски нумерисани наслови се убацују у садржај аутоматски. Ви не морате да прикажете садржај, али ако желите, само додајте наредбу \tableofcontents на месту на коме желите да се штампа (Обично после преговора или закључка).

Записи за садржај се евидентирају сваки пут када се обради документ, и репродукују следећи пут када се обради, тако да морате да поново покренете LaTeX још једном како би били сигурни да су сви бројеви страна правилно израчунати. Већ смо видели како се користи опциони аргумент за наредбе секција да додате текст у садржај који је мало другачији од оног штампаног у телу документа. Такође је могуће додати додатне редове у садржају, да се укључе додатни или ненумерисани наслови.

Наредба \listoffigures и \listoftables ради на исти начин као и \tableofcontents да аутоматски излиста све ваше табеле и фигуре. Ако их користите, оне обично иду после \tableofcontents наредбе. Наредба \tableofcontents обично приказује само нумерисане наслове, и само до нивоа дефинисаног са tocdepth бројачем, али ако можете да додате додатне делове са наредбом \addcontentsline. На пример, ако користите ненумерисане наслове за идрешене делове као што је су рецимо Литература или Предговор, можете их приказати на следећи начин:

\subsection*{Предговор}
\addcontentsline{toc}{subsection}{Предговор}

Ово ће форматирати ненумерисани "Предговор" у стилу "субсекције". Можете користити исти механизам да додате делове за листу слика или листу табела са мењањем lof или lot са toc. Ако користите пакет hyperref и линкови не упућују на исправно поглавље, наредба \phantomsection у комбинацији са \clearpage или \cleardoublepage се може искористити (види такође Ознаке и референцирање):

\cleardoublepage
\phantomsection
\addcontentsline{toc}{chapter}{Листа слика}
\listoffigures

Да би променили име садржају, треба да налепите следећу команду \renewcommand{\contentsname}{<Ново име садржаја>} у преамбули вашег документа. Да би променили име за листу слика или листу табела можете само да замените \contentsname са \listfigurename за листу слика и \listtablename за листу табела.

Дубина[уреди]

Обичан садржај ће приказати наслове до трећег нивоа и изнад. Да би променили колико дубоко ће ваш садржај приказивати наслове аутоматски, поставите следећу команду у вашој преамбули:

\setcounter{tocdepth}{4}

Ово ће учинити да ваш садржај укључује све до параграфа. Нивои су дефинисани горе, на овој страни. Имајте на уму да ово решење не дозвољава динамичку промену дубине.

Можете променити дубину одређеног типа секције, што може бити корисно за ПДФ везе (ако користите пакет hyperref ) :

\makeatletter
\renewcommand*{\toclevel@chapter}{-1} % Поставите дубину поглавља на истом нивоу као и \part.
\chapter{Закључак}
\renewcommand*{\toclevel@chapter}{0} % Поставите дубину поглавља назад на њену подразумевану вредност.
\makeatother

У циљу даљег подешавања приказа или нумерације садржаја, на пример, ако би требало да додатак буде мање детаљан, можете употребити tocvsec2 пакет (CTAN, doc).

Структура књиге[уреди]

Обична LaTeX book класа прати исти распоред описан изнад са истим додацима. Нормално ће слика бити двострана, нпр. лева и десна маргина ће се мењати у зависности од броја стране. Поред тога тренутно поглавље и секције ће се штампати у заглављу.

Ако не користите поглавља, она је једва корисно да користите book класу.

Додатно, класа пружа макрое да промените форматирање неким местима у документу. Пружамо вам неке савете о томе како да их користите правилно. [1]

\begin{document}
\frontmatter

\maketitle

% Уводно поглавље
\chapter{Предговор}
% ...

\mainmatter
\chapter{Прво поглавље}
% ...

\appendix
\chapter{Први додатак}

\backmatter
\chapter{Закључак}
  • Предња материја неће бити нумерисана. Број страна ће бити штампан римским бројевима. Предња материја није предвиђена да има делове, пошто ће они бити бројеви 0.n јер не постоји нумерисање поглавља. Погледајте поглавље Нумерисање за исправку.
  • Поглавље главне материје ради по обичају. Наредба ресетује нумерисање страна. Број страна ће се приказати арапским бројевима.
  • Марко \appendix се може употребити да укаже на то да следеће секције или поглавља буду нумерисане као додаци. Додаци се могу користити и за класу article такође:
\appendix
\section{Први додатак}

Само користите једном \appendix марко за све додатке.

  • Задња материја се понаша као и предња. Има исти проблем са нумерисањем секција.

Као опште правило, требало би да избегнете мешање реда наредби. Пошто су све наредбе опционе, можете размотрити да користите само неколико њих.

Приметите да се посебни делови, као што је садржај сматрају као ненумерисано поглавље.

Ред страна[уреди]

Ово је стандарни ред страна за књиге.

Предња материја
  1. Полу-наслов
  2. Празна страна
  3. Наслов
  4. Информације (издавач, година, итд.)
  5. Посвећено, ако јесте, у супротном празна страна
  6. Садржај
  7. Списак слика (може бити на крају такође)
  8. Уводно поглавље
Главна материја
  1. Главна темпа
Додатак
  1. Нека подређена поглавља
Задња материја
  1. Литература
  2. Речник / Индекс


Посебне стране[уреди]

Свеобухватни радови често имају посебне странице на крају, као што су индекси, речници и литературу. Пошто је ово прилично комплексна тема, више детаља можете наћи у наменски делу Посебне стране .

Литература[уреди]

Сваки добар истраживачи рад ће имати пуну листи референци. LaTeX има два начина за убацивање референци унутар документа:

  • можете их убацити у самом документу. Једноставније је, али вам може узети више времена ако пишете неколико радова о сличним темама, па изнова и изнова морате цитирати исту књигу.
  • можете их чувати у екстерном BibTeX фајлу , а онда их повезати уз помоћ наредби са вашим документом и употребити Bibtex стил за дефинисање њиховог појављивања. На овај начин можете направити малу базу референци коју можете користити и једноставно повезивати, пуштајући да LaTeX ради за вас.

Да научите како да додате литературу у документ, погледајте део везан за менаџмент литературе.


Референце[уреди]


Претходно: Основе Индекс Следеће: Форматирање текста