LaTeX/Грешке и упозорења

LaTeX описује шта је подешавање куцања док га одрађује. Ако наиђе на нешто што не разуме или не може да уради, избациће грешку која говори шта није уреду. Може такође избацити упозорење за мање озбиљна стања.
''Не паничите ако видите ове поруке грешака'': честе су грешке куцања или погрешног уношења команди, заборављање на витичасте заграде, укуцавање косе црте уместо обичне цртице, или коришћење специјалног симбола грешком. Грешке се лако уоче и лако се исправе у свом уређивачу, и онда можете покренути LaTeX поново да би сте проверили да ли је све поправљено. Неке најчешће грешке су описане у наставку.
1 Поруке грешака
Формат поруке грешке је увек исти. Поруке грешака почињу са знаком узвика на почетку линије, и дају опис грешке, који прати линија која почиње бројем, што се односи на линија-број у вашем документи који је LaTeX обрађивао када је грешка уочена. Овде је пример, који показује да је корисник погрешно откуцао \tableofcontents
команду:
! Undefined control sequence.
l.6 \tableofcotnetns
Када LaTeX наиђе на овакву грешку, показује грешку и паузира. Морате укуцати неко од следећих слова да бисте
наставили:
Кључ, Значење
x, Стати одмах и изаћи из програма.
q, Наставити нечујно најбоље што може и не узнемиравај ме више са грешкама.
e, Заустави програм али помери текст у мом уређивачу на место где си пронашао грешку (Ово једино ради ако користите уређивач са којим LaTeX може да комуницира).
h, Покушај да ми даш више помоћи.
i, (праћен исправком) значи убаци исправку уместо грешке и настави (Ово је само тренутна исправка како би фајл био процесован. Идаље морате да направите исправку у уређивачу).
r, Покрени непрестани мод.Пробити се кроз све грешке, осим ако нема велике гомиле и не успе (100 грешака).
Неки системи (Emacs је један пример) покрећу LaTeX са "непрестаним" прекидачем укљученим, тако да увек процесира до краја фајла, необраћајући пажњу на грешке, или док ограничење није постигнуто.
2 Упозорења
Упозорења не почињу са знаком узвика: они су само коментари од стране LaTeX-а о стварима које би требали да погледате, као што су предучагке и подвучене линије (често изазване од стране необичних повлака, на пример), страница које су кратке или дуге, и друге типографске префињености (већина која може бити игнорисана касније).
За разлику од других система, који покушавају да сакрију неравнине у тексту (обично безуспешно) мешајући се у размаку слова, LaTeX узима поглед који би аутор или уређивач требао да учествује. Док је вероватно могуће поставити LaTeX-ове параметре тако да је размак довољно аљкав тако да нећете скоро уопште допити упозорење о лошим линијама или странама, само ћете одлагати ствари док не почнете да добијате жалбе од стране читача или објављивача.
3 Примери
Само неке честе грешке су дате овде: Они који најчешће могу бити одстрањени од стране почетника. Ако пронађете грешку која ни приказана овде и није вам јасно шта да радите, тражите помоћ.
Већина грешака су саме по себи разумљиве али имати на уму да место на коме LaTeX примећује и пријављује грешке може касније бити у фајлу, а не на месту где су створене. На пример ако заборавите да затворите витичасту заграду која се затвара, реците, италикс, LaTeX неће пријавити ово све док се нешто друго не јави које се не може десити док се витичаста заграда не затвори (нпр. крај доукмента!)Неке заграде могу бити затворене само од стране људи који могу да читају и разумеју шта треба документ да значи или како да изгледа.
Почетници би требало да запамте да провере листу специјалних симбола: велики број грешака када учите LaTeX се јављају због случајног укуцавања специјалног симбола када нисте мислили. Ово нестаје после неколико дана када се навикнете на то.
3.1 Превише }
! Превише }.
l.6 \date December 2004}
Разлог због LaTeX мисли да постоји превише } овде је зато што фали отворена витичаста заграда после \date контролне секвенце и пре речи Децембар, тако да је затварање витичасте заграде виђено као вишак (што и јесте!). Уствари, постоје друге ствари који могу да прате \date команду одвојену од датума у витичастој загради, тако да LaTeX не може погодити да ли сте пропустили отворену витичасту заграду све док не нађе затворену!
3.2 Недефинисана контрола секвенце
! Недефинисана контрола секвенце.
l.6 \dtae
{December 2004}
У овом примеру, LaTeX се жали да непостоји таква команда ("контрола секвенце")као \dtae. Очигледно је погрешно укуцана, али само човек може уочити такву чињеницу: све што LaTeX зна је да \dtae није команда коју он познаје: недефинисана је. Грешке у куцању су најчешћи извор грешака. Неки уређивачи дозвољавају честе команде и окружења да буду убачена користећи падајући мени или иконице, који се могу користити како би се избегле ове грешке.
3.3 Не у Математичком моду
! Недостаје $ убачен
Карактер који може само бити коришћен у математици је убачен у нормалан текст.
Ако намеравате да користите математички мод онда користите $...$ или \begin{math}...\end{math} или користите 'брзи математички мод': \ensuremath{...}.
Ако нисте намеравали да користите математички мод, онда можда покушавате да користите специјални карактер који је потребно укуцати на другачији начин; на пример _ ће бити претстављено као подскрипта оператора у математичком моду, и биће вам потребно \_ како би се добио доњи карактер.
Ово се такође може десити ако користите погрешно кодирање карактера, на пример коришћењe utf8 без "\usepackage[utf8]{inputenc}" или коришћењем iso8859-1 без "\usepackage[latin1]{inputenc}", постоје неколико карактера који декодирају формате, имајте на уму да изаберете прави.
3.4 Одбегли аргумент
Одбегли аргумент?
{December 2004 \maketitle
! Параграф завршен пре \date је завршен.
<за поновно читање>
\par
l.8
Код ове грешке, затварање витичасте заграде је изостављена из датума. Супротно је од грешке зване превише }, и као резултат даје \maketitle покушавајући да форматира наслов странице док LaTeX идаље очекује више текста за датум! Док \maketitle ствара нови параграф на означеној насловној страни, ово је пронађено и LaTeX се жали да је претходни параграф завршен, али \date није још завршен.
3.5 Потпуна хкутија
Потпуна \hbox (badness 1394) у параграфу
at lines 28--30
[][]\LY1/brm/b/n/10 Bull, RJ: \LY1/brm/m/n/10
Ac-count-ing in Busi-
[94]
Ово је упозорење које LaTeX не може развуче линију довољно широку да стане, не чинећи размаке већим него што су тренутно дозвољени. Поквареност (0-10,000) показује колико је ово строго (овде се може игнорисати поквареност од 1394). Говори које линије вашег фолдера су подешена за куцање када је пронађено ово, и број у квадратним заградама је број стране на коме је увређена линија иштампана. Кодови одвојени цртицама су слогови и стил фонта и величина се користи у линији. Игноришите их за тренутак.
Ово долази ако користите прелом реда, нпр., \\, и имате размак пре тога. Нормално TeX игнорише прекиде редова, пружајући пуне параграфе за недотеран текст. У овом случају неопходно је да се изведе прелом реда над једном линијом на крају претходне реченице.
Ово упозорење се може такође показати када се убацују слике. Може се избећи коришћењем \textwidth или могућом \linewidth опцијом, нпр. \includegraphics[width=\textwidth]{image_name}
3.6 Напуњена хкутија
[101]
Напуњена \hbox (9.11617pt преширока) у параграфу
при редовима 860--861
[]\LY1/brm/m/n/10 Windows, \LY1/brm/m/it/10 see
\LY1/brm/m/n/10 X Win-
Напуњени \hbox значи да постоји повлачење или проблем оправдања: померање последње речи линије би учинило размаке у линији ширим од тренутног лимита; задржавање речи на линији би учинило размаке мањим од тренутног лимита, тако да је реч на левој линији, али са минимумом размака који дозвољен између речи, и која чини да линија иде преко ивице.
Упозорење је дато тако да можете наћи линију у коду од кога потиче проблем (у овом случају: 860-861) и поправити га. Линија у овом примеру је предугачка, преко 9пт. Изабрано повлачење смањује грешку која је приказана на крају линије (Win-). Бројеви линија и страница су већ дати. У овом случају, 9пт је много да би се игнорисало (преко 3мм), и потребна је мануелна корекција (као промена повлачења), или подењавање флексибилност има потребу за променом.
Ако "напуњена" реч укључује косу црту, као "input/output", ово би било типично слагање слога "input\slash output". Коришћењем \slash има исти ефекат као коришћење "/" карактера, осим што оно може да формира крај линије (са пратећим речима на старту следеће линије). "/" карактер који се типично користи у јединицама, као "mm/year" карактер, који не би требао да се растури преко више линија.
Упозорење се такође може разматрати када \end{document} ознака није укључена или је избрисана.
3.6.1 Лако примећивање напуњених хкутија у документу
Да бисте лако пронашли локацију напуњене хкутије у вашем документу, можете направити да latex убаци црну линију где је линија предугачка:
3.7 Недостајући пакет
! LaTeX Error: File `paralisy.sty' not found.
Укуцати X за излаз или <RETURN> за наставак,
или укуцајте ново име. (Default extension: sty)
Укуцати ново име:
Када наиђете на \usepackage команду да LaTeX захтева коришћење одређеног пакета, тражиће фајл са одређеним именом и типом фајла.sty. In this case the user has mistyped the name of the paralist package, so it's easy to fix. Међутим, ако упишете име како треба, али пакет није инсталиран на вашем рачунару, мораћете да скинете и инсталирате да бисте наставили. Ако не желите да утичете на глобалну инсталацију рачунара, можете једноставно скинути са Интернета потребни .sty фајл и ставити га у исти фолдер документа који уређујете.
3.8 Упозорење пакета бабела: Нема подвучених шаблона који се учитавају за језик Х
Иако је ово упозорење од стране Бабел пакета, а не од LaTeX-а, ова грешка је честа и (може) даје нека чудна повлачења (прекид речи) проблема у вашем документу. Нетачно повлачење правила може смањити уредност вашег документаA
Упозорење пакета бабела: Нису учитани подвучени шаблони за
(babel) језик `Латински'
(babel) Користићу учитане шаблоне за \language=0 уместо тога.
Ово се може десити након коришћења: (видети LaTeX/Интернационализација)
\usepackage[latin]{babel}
Решње није тешко, само инсталирајте језик који користите у вашем LaTeX дистрибуција.
3.9 Грешка пакета бабела: Нисте идаље учитали опцију Х.
Ако је претходно подешен Х језик, и онда се одлучи за промену на Y, добићете ову грешку.
Ово може деловати незгодно, пошто не постоји грешка у вашем коду ако нисте променили ништа.
Одговор се налази у .aux фајл, где бабел дефинише ваш језик.
Ако покушате компилацију други пут, требало би да ради.
Ако не, избришите .aux file, онда ће све радити као уобичајно.
3.10 Нема грешке, али неће да компајлира
Један чест узрок (pdf)LaTeX који се заглављује је заборављање укључења \end{document}
4 Софтвер који може проверити ваш .tex Code
Постоје неколико програма који имају могућност провер LaTeX извора, са циљем проналаска грешака или назначавање лоше праксе, и пружање више помоћи (специјално почетницима) корисницима него уграђеним грешкама.T
* nag је LaTeX пакет дизајниран да покаже на коришћење застарелих команди.
* lacheck је доследна пробера која има намеру да примети грешке у коду. Доступан је као изворни код или је комајлиран за Виндоувс и ОС/2
* chktex је LaTeX-ова семантичка провера доступна као изворни код за Unix системе.


LaTeX/Индекс

Ово је абецедни индекс књиге.
Садржај A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
1 A
* Акценат
* Алгоритми
* Апсолутни почетници
* Аутори
2 B
*babel*beamer пакет
* BibTeX
* Боја
* Бројање речи
3 C
*color пакет
* Цитирање Текста
* Цртање
* Црте
* цртица
4 D
* Дијакритичка ознака
5 E
* eм-црта
* eн-црта
* Евро тренутни симбол
* Елипса
6 F
* Фигуре
* Фонтови
* Форматирање
* Фусноте
* Футер, Страна
7 G
*graphicx пакет
* Горњи и доњи индекс: форма текста
* Графика
** Стварање
** Убацивање
** Уграђивање
* Грешке и упозорења
8 H
*hyperref пакет
* Хедер, Страна
* Хипрелинкови
9 I
* Извор окружења листи
* Индекс и експонент: овлашћења и индекси
* Индексирање
* Интернационализација
* Италик
10 K
* Класе документа
* Колоне, види Стране са више колона
* Креирање графике
11 L
* Линкови
* Листе
12 M
*\maketitle*makeidx пакет
* Mатематика
* Mатрице
* Мала велика слова
* Маргине
13 N
* набрајање
* Натписи
* Низови
* нпр. (На пример)
* Нумерација
14 O
* Ознаке
* окружење описа
* Опште смернице
* Основе
* Отпремање у друге формате
15 P
*picture* Пакети
** Стварање 1
* Писање са цртицом
* Подебљано
* Преглед садржаја
* Презентације
* претварање у HTML
* Претварање у PDF
* Претварање у PNG
* Претварање у RTF
* Претварање у SVG
* Прилагођавање LaTeX-а
* Пример окружења мини стране
* Провера правописа
* Псеудокод
16 R
* Размак између речи
* Распоред стране
* Резиме
* Референце
* референцирање
* Реченице
17 S
* Савети и трикови
* Слике
* Слике
* Слова
* Стварање наслова
* Стране са више колона
* Структура документа
18 T
* Teletype текст
* Tеореме
* т.ј.
* Табеле
19 U
* URL
* Убацивање графике
* Увод
* Управљање Литературом
20 V
* Величина текста
* Вербатим текст
21 X
* XeTeX
*xy пакет
*XY-pic пакет
22 Z
* Заједничко Писање LaTeX докумената
* Зрно
* Зрно поен

LaTeX


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

Главна сврха писања документа је представљање идеја, информација или знања ономе ко чита. Читалац ће боље разумети документ ако су идеје уредно представљене, и лакше ће схватити структуру ако се типографске форме правило одражавају на логичку и семантичку структуру садржаја.
LaTeX је другачији од осталих система за писање у томе што ви морате да означите логичку и семантичку структуру текста. Он даље резултује типографске форме документа по задатим правилима у фајлу класе документа и другим датотекама за стилове. LaTeX омогућава корисницима да структуирају њихов документ са различитим хијерархијским конструкторима, укључујући поглавља, секције, подсекције и параграфе.
1 Глобална структура
Када LaTeX обрађује улазну датотеку, очекује се од њега да прати одређену структуру. Зато свака улазна датотека мора да садржи наредбе
Простор између и се зове ''преамбула''. Он обично садржи наредбе које утичу на цео документ.
После преамбуле, текст вашег документа је затворен између две наредбе које одређују почетак и крај документа:
Ваш текст постављате где се налазе тачке. Разлог за означавање почетка текста је тај што LaTeX дозвољава убацивање додатних спецификација изнад (где је празан ред у горњем примери: што ћемо ускоро и употребити). Разлог за означавање краја текста обезбеђује место LaTeX-у да се програмира за додатне ствари аутоматски на крају документа, као што је индексирање.
Корисна последица означавања краја текста у документа је та што можете чувати коментаре или привремени текст испод са знањем да LaTeX никада неће да прикаже исти:
2 Преамбула
2.1 Класе документа
Када обрађује улазну датотеку, LaTeX-у је потребно да зна тип документа који аутор жели да направи. Ово се одређује са \documentclass наредбом. Препоручује се да се документ декларише на самом почетку.
Овде, class одређује тип документа који се креира. LaTeX дистрибуција обезбеђује додатне класе за друге документе, укључујући слова и слајдове. Такође можете направити сопствену класу, што је чест случај код новина, где једноставно обезбеђују властиту класу, која говори LaTeX-у како да се форматира документ. Ми ћемо за сад бити задовољно стандардном класом за чланке (article). Параметар options ближе одређује особине класе документа. Опције морају бити раздвојене запетом.
Пример: улазна датотека за LaTeX документ може почети са линијом
што упућује LaTeX да врати документ као чланак, са подразумеваним словима величине 11, и да припреми документ за дупло-страно штампање на А4 папиру.
Ово су неке класе документа које се могу користити са LaTeX-ом:
+Класе докумената
За чланке у научним часописима, презентације, краће извештаје, документацију, позивнице, ...
За чланке са IEEE форматом трансакције.
Класа за обрађивање базирана на класи article.
За дуже извештаје који садрже неколико поглавља, за мале књиге, тезе ...
За праве књиге.
За слајдове. Класа користи велика санс-сериф слова.
За стабилно мењање резултата документа. Базирано на класи, али са њом можете направити било коју врсту документа
За писање писама.
За састављање презентација (види LaTeX/Презентације).
Стандардне класе документа које су део LaTeX-а су направљене да буду подједнаке, и зато имају доста заједничких опција. Друге класе могу имати различите опције (или ниједну исту). Обично, класе са треће стране долазе са неком документацијом која вас више упућује на ту класу. Најчешће опције за стандарне класе докумената су представљене у следећој табели:
+Опције класа докумената
Подешава величину подразумеваног фонта у документу. Ако ниједна опција није одређена, 10pt се узима као подразумевано.
..., Дефинише величину папира. Подразумевана величина је ; Међутим, многе Европске дистрибуције TeX-а сада долазе са подразумеваним a4paper, не letterpaper, и ово је такође случај свих дистрибуција pdfLaTeX. Осим ових, , и могу бити изабрани.
При приказу резултата, формуле се налазе лево, а не у средини.
Постављање броја формуле са леве стране, а не са десне.
Одређује да ли нова страна треба да почне после наслова документа или не. Класа article подразумевано не почиње са новом страном, док report и book почињу.
Говори LaTeX-у да представи документ у две колоне уместо у једну.
Одређује да ли резултат треба да буде једностран или двостран. Класа и су једностране, док је класа двострана по подразумеваним вредностима. Приметите да ова опција утиче само на стил документа. Опција не говори штамачу да аутоматски штампа двострано.
Мења лист документа у лежећи положај.
Чини да поглавља почињу или само на десној страни или на следећој доступној. Ово не ради са класом , пошто у њој не постоје поглавља. Класа подразумевано почиње са поглављима на следећој доступној страни, а класа почиње одма са десне стране.
чини да LaTeX указује на проблем прелома и поравнања речи са малим квадратом на десној страни маргине, тако да човек може брзо уочити проблем. Такође прати укључивање слика и приказује само оквир где би се оне нормално приказивале.
На пример, ако желите report да буде у 12pt стилу на A4, али штампан са једне стране у draft моду, користићете:
2.2 Пакети
Док будете писали ваш документ, вероватно ћете наићи на неке делове где обичан LaTeX не може да реши ваш проблем. Ако желите да укључите слике, обојени текст или изворни код из фајта у документ, требало би да проширите способности LaTeX-а. Да би проширили LaTeX користите пакете. Неки пакети долазе у основи LaTeX дистрибуције. Други се посебно додају. Модерне TeX дистрибуције долазе са великим бројем преинсталираних пакета. Наредба за употребу пакета је једноставна: :
наредба, где је package назив пакета и options листа речи која циља на додатке у оквиру пакета. На пример, да користите пакет , који допушта приказ боја, користићете:
Можете убацити неколико опција приликом позива пакета, а сваку одвајате запетом.
3 Окружење документа
3.1 Заглавље
На почетку већине докумената, биће информација о самом документу, као што је наслов и датум, али такође и информације о ауторима, односно име, адреса, емаил, итд. Сви ови типови информација у LaTeX-у спадају у ''заглавље''. Иако никад није експлицитно назначено (не постоји наредба) на коју ћете вероватно рачунати у изразима у LaTeX документацији.
Прост пример:
Наредбе , , и су само-објашњиве. Поставите наслов, име аутора, датум у витичастим заградама после релевантне наредбе. Наслов и аутор су условни (ако желите да LaTeX пише заглавље аутоматски); ако не ставите наредбу , LaTeX користи данашњи датум као подразумевани. Увек завршавате заљлавље са наредбом , која говори LaTeX-у да је завршено и да може да подеси заглавље по задатим информацијама и класи (стилу) коју користите. Ако избаците , заглавље се никада неће приказати (осим ако не напишете своје).
Ево и мало сложенији пример:
Као што можете видети, можете користити наребе као аргументе и друге. Дупла коса црта представља LaTeX наредбу за прелом реда и увлачење.
Ако постоје два аутора, одвојите их са наредбом :
Употребом овог приступа, можете креирати само основни резултат чији је садржај тешко променити. Ако желите да наслов креирате слободно, погедајте део о креирању наслова.
3.2 Предговор
Из разлога што већина истраживачких радова има предговор, постоји дефинисана наредба која говори LaTeX-у који део садржаја представља предговор. Он се јавља у логичком реду, после заглавља, а пре главног дела садржаја. Ова наредба је доступна за класе документа ''article'' и ''report'', али не и ''book''.
LaTeX ће подразумевано реч "Abstract" схватати као наслов вашег предговора. Ако желите да промените у нешто друго, нпр. ,,Извршни збир", додајте следећи код пре почетка окружења предговора
3.3 Наредбе секција
Наредба за унос секција је прилично природна. Наравно, неке наредбе су приближно различите у зависности од класе документа. На пример, book има поглавље, али article нема. Следи пример неких наредби структура из ''simple.tex''.
Приметите да не треба да означите делове бројевима; LaTeX ће то урадити за вас. Такође, за секције, не треба да користите и наредбе да укажете на то који део припада задатом блоку.
LaTeX обезбеђује 7 нивоа дубине при дефинисању секција (види табелу испод). Свака секција у овој табели је субсекција оне изнад ње.
Command, Level, Comment
-1, нема у letters
0, само у books и reports
1, нема у letters
2, нема у letters
3, нема у letters
4, нема у letters
5, нема у letters
Сви наслови секција су аутоматски додати у садржај (ако сте одлучили да га убаците). Али ако ручно дизајнирате промене у вашем заљлављу, на пример веома дугачак наслов, или неки специјални прелом реда или играње са словима, то ће се појавити у садржају такође, што обично не желите. LaTeX дозвољава да задате додатне опције приказа наслова у садржају. Ове алтернативе иду у [квадратним заградама] пре витичастих заграда:
3.3.1 Набрајање секција
Набрајање секција се изводи аутоматски у LaTeX-у, тако да се немате мука да их додате, а све што је потребно је да убаците наслов између витичастих заграда. Делови постају римски бројеви (Део I, Део II, итд.); поглавља и секције добиају децималне вредности као овај документ, а додаци (који су специјални случајеви поглавља, и деле исте структуру) се организују словима (A, B, C, итд.).
Можете променити дубину броја који се појављује тако што ћете укључити или искљичити селективно. Подразумевано је подешено на 2. Ако само желите делове, поглавља и секције набројане бројевима, без подсекција, можете променити вредност бројача употребом наредбе , задајући дубину нивоа који желите. На пример, ако желите да промените на "1":
Повезани бројач , којим одређујете дубину у садржају. Може се подесити на исти начин . На пример:
Да би добили секцију без броја испред наслова што не иде у садржај, додајте звездицу после имена наредбе, испред витичастих заграда:
Све дивизионе наредбе од до имају ову "звездану" верзију која се може користити у специјални случајевима за ненумерисани наслов када би подешавање нормално то нумерисало.
Ако желите да ненумеришете секцију у садржају, користите наредбу као овде:
Запазите да ако користите ПДФ адресирање, потребно је да додате фантомску секцију да би адреса водила на право место у документу. Наредба дефинисана је у пакету, и нормално се имплементира, као што следи:
За поглавља би такође требало да очистите страну (то ће исправити нумерисање страна у садржају):
Вредност где почиње нумерисање секција може бити подешено следећом наредбом:
Следећа секција после ове наредбе ће бити са бројем 5.
За више детаља о набрајању, види посвећено поглавље.
3.3.2 Стилови нумерисања секција
Види Нумерисање.
3.4 Обични параграфи
Параграф долази после секције наслова. Једноставно откуцајте текст и оставите празнан ред између параграфа. Празан ред значи да ,,почне нови параграф овде": што не значи да ћете добити празан ред у резултату. За форматирање увучености параграфа и прореда између параграфа, погледајте Форматирање параграфа.
3.5 Садржај
Сви аутоматски нумерисани наслови се убацују у садржај аутоматски. Ви не морате да прикажете садржај, али ако желите, само додајте наредбу на месту на коме желите да се штампа (Обично после преговора или закључка).
Записи за садржај се евидентирају сваки пут када се обради документ, и репродукују следећи пут када се обради, тако да морате да поново покренете LaTeX још једном како би били сигурни да су сви бројеви страна правилно израчунати. Већ смо видели како се користи опциони аргумент за наредбе секција да додате текст у садржај који је мало другачији од оног штампаног у телу документа. Такође је могуће додати додатне редове у садржају, да се укључе додатни или ненумерисани наслови.
Наредба и ради на исти начин као и да аутоматски излиста све ваше табеле и фигуре. Ако их користите, оне обично иду после наредбе. Наредба обично приказује само нумерисане наслове, и само до нивоа дефинисаног са бројачем, али ако можете да додате додатне делове са наредбом . На пример, ако користите ненумерисане наслове за идрешене делове као што је су рецимо Литература или Предговор, можете их приказати на следећи начин:
Ово ће форматирати ненумерисани "Предговор" у стилу "субсекције". Можете користити исти механизам да додате делове за листу слика или листу табела са мењањем или са . Ако користите пакет hyperref и линкови не упућују на исправно поглавље, наредба у комбинацији са или се може искористити (види такође Ознаке и референцирање):
Да би променили име садржају, треба да налепите следећу команду у преамбули вашег документа. Да би променили име за листу слика или листу табела можете само да замените са за листу слика и за листу табела.
3.5.1 Дубина
Обичан садржај ће приказати наслове до трећег нивоа и изнад. Да би променили колико дубоко ће ваш садржај приказивати наслове аутоматски, поставите следећу команду у вашој преамбули:
Ово ће учинити да ваш садржај укључује све до параграфа. Нивои су дефинисани горе, на овој страни.
Имајте на уму да ово решење не дозвољава динамичку промену дубине.
Можете променити дубину одређеног типа секције, што може бити корисно за ПДФ везе (ако користите пакет ) :
У циљу даљег подешавања приказа или нумерације садржаја, на пример, ако би требало да додатак буде мање детаљан, можете употребити пакет.
4 Структура књиге
Обична LaTeX класа прати исти распоред описан изнад са истим додацима. Нормално ће слика бити двострана, нпр. лева и десна маргина ће се мењати у зависности од броја стране. Поред тога тренутно поглавље и секције ће се штампати у заглављу.
Ако не користите поглавља, она је једва корисно да користите класу.
Додатно, класа пружа макрое да промените форматирање неким местима у документу. Пружамо вам неке савете о томе како да их користите правилно. * Предња материја неће бити нумерисана. Број страна ће бити штампан римским бројевима. Предња материја није предвиђена да има делове, пошто ће они бити бројеви јер не постоји нумерисање поглавља. Погледајте поглавље Нумерисање за исправку.
* Поглавље главне материје ради по обичају. Наредба ресетује нумерисање страна. Број страна ће се приказати арапским бројевима.
* Марко се може употребити да укаже на то да следеће секције или поглавља буду нумерисане као додаци. Додаци се могу користити и за класу article такође:
Само користите једном марко за све додатке.
* Задња материја се понаша као и предња. Има исти проблем са нумерисањем секција.
Као опште правило, требало би да избегнете мешање реда наредби. Пошто су све наредбе опционе, можете размотрити да користите само неколико њих.
Приметите да се посебни делови, као што је садржај сматрају као ненумерисано поглавље.
4.1 Ред страна
Ово је стандарни ред страна за књиге.
;Предња материја
# Полу-наслов
# Празна страна
# Наслов
# Информације (издавач, година, итд.)
# Посвећено, ако јесте, у супротном празна страна
# Садржај
# Списак слика (може бити на крају такође)
# Уводно поглавље
;Главна материја
# Главна темпа
;Додатак
# Нека подређена поглавља
;Задња материја
# Литература
# Речник / Индекс
5 Посебне стране
Свеобухватни радови често имају посебне странице на крају, као што су индекси, речници и литературу. Пошто је ово прилично комплексна тема, више детаља можете наћи у наменски делу '' Посебне стране ''.


LaTeX/Ознаке и референцирање

1 Увод
У LaTeX-у можете лако референцирати готово све што је нумерисано (наслове, симболе, формуле), а LaTeX ће се побринути око нумерисања, тако што ће да ажурира кад год то буде потребно. Команде које се користе за лакше референцирање су:
;\label{''marker''}:дајете објекту који желите да референцирате ''маркер'', тако да га можете видети као име.
;\ref{''marker''}:позивате се на објекат који сте претходно ''означили''. Ово штампа број који је додељен објекту.
;\pageref{''marker''}:Ово ће исписати број странице на којој се објекат налази.
LaTeX ће обавити прецизно нумерисање објеката у документу; ''маркер'' који сте користили за обележавање објекта, неће бити нигде приказан у документу. Потом ће LaTeX заменити "\ref{''marker''}" са тачним бројем који је додељен објекту. Ако референцирате ''маркер'' који не постоји, компилација документа ће бити успешна, али ће LaTeX избацити упозорење:
LaTeX Warning: There were undefined references.
и замениће "\ref{''unknown-marker''}" са "??" (тако да ће бити лако пронаћи га у документу).
Као што сте можда приметили како ради читање, то је процес који се састоји из два корака: прво компалјер мора да чува ознаке које се користе за референцирање, а потом их мења the \ref са одговарајућим бројем. То је разлог зашто када референцирате, морате двапут компајловати документ да бисте видели жељену излазну вредност. Ако само једном компајлујете, LaTeX ће искористити старије податке које је прикупио у претходним компајловањима (што је можда застарело), али компајлер ће вас обавестити на крају компилације са својим обавештењем:
:LaTeX Warning: Label(s) may have changed. Rerun to get cross-references right.
Користећи команду \pageref{} можете помићи читачу да пронађе референцирани објекат пружајући број странице где се може наћи. Можете написати нешто слично овом:
Погледајте фигуру~\ref{fig:test} на страни~\pageref{fig:test}.
Пошто можете користити потпуно исте команде за референцирање готово ничег, можете бити мало збуњени након што сте увели пуно референци. То је уобичајена пракса међу LaTeX корисницима, да додају неко упутство на ознаци како би описали ''шта'' референцирају. Неки пакети, као што је fancyref, се ослањају на ове информације. Ево један пример:
ch:, поглавље
sec:, наслов
subsec:, поднаслов
fig:, фигуре
tab:, табела
eq:, једначина
lst:, листа кодова
itm:, нумерисана листа
alg:, алгоритам
app:, додатак подглавља
Након овог рапспореда, ознака фигуре ће изгледати \label{fig:''моја_фигура''}, итд. Нисте у обавези да користе ове префиксе. Можете користити било који стринг као аргумент \label{...}, али како ваш документ постаје већи, ови префикси постају све више корисни.
Још једна сугестија: покушајте да избегнете коришћење бројева у ознакама. Можете боље описати ''шта'' је ваш објекат. На овај начин, ако промените редослед објеката, нећете морати да мењате називе свих својих ознака и њихових референци.
Ако желите да видите маркере којњ користите у излазном документу, можете користити showkeys пакет; ово може бити веома корисно за израду документа. За више информација погледајте Ознаке пакета поглавље.
2 Примери
Ево неколико практичних примера, али ћете приметити да су сви исти, јер сви користе исте команде.
2.1 Наслови
\section{Поздрав}
\label{sec:greetings}
Здраво!
\section{Референце}
Поздрав у поглављу~\ref{sec:greetings}.
Можете да поставите ознаку било где у наслову; како год, како би се избегла забуна, боље је да се одмах стави на почетку секције. Приметите да маркер почиње са ''sec:'', као што је сугерисано. Ознака се затим референцира у другом одељку. Тилда (~) служи за означавање без размака.
2.2 Слике
Можете референцирати слику убацивањем у figure окружење.
\begin{figure}
\centering
\includegraphics[width=0.5\textwidth]{галеб}
\caption{Слика галеба}
\label{fig:галеб}
\end{figure}
Фигура \ref{fig:галеб} приказује слику галеба.
Када је ознака постављена унутар овог окружења, \ref{...} враћа респективно fig/table број, али се мора појавити након натписа. Када се појави излазни документ, то ће дати број секције. Да бисте били потпуно сигурни, ознака за било коју слику или табелу може ићи уз \caption{} команду, као ово:
\caption{Close-up of a gull\label{fig:gull
Погледајте поглавље Фигуре и натписи за остале figure и сродна окружења.
2.2.1 Поправка лоших ознака
Команда \label мора се појавити после (или унутар) \caption. Иначе ће покупити тренутни број секције или листе уместо оног што сте намеравали.
\begin{figure}
\centering
\includegraphics[width=0.5\textwidth]{галеб}
\caption{Слика галеба} \label{fig:галеб}
\end{figure}
2.2.2 Проблеми са линковима и табелама и фигура обрађних уз помоћ hyperref
У случају да користите пакет hyperref за прављење PDF-а, линкови за табеле или фигуре ће указати на натпис табеле или фигуре, који је увек испод саме табеле или фигуре. Зато табела или фигура неће бити видљива, ако је изнад показивача и мора да се скрола да би се видело. Ако желите линк тачку на врху слике можете користити опцију hypcap у caption пакету:
\usepackage[hypcap]{caption}
2.3 Формуле
Ево примера који показује како се референцирају формуле:
\begin{equation} \label{eq:solve}
x^2 - 5 x + 6 = 0
\end{equation}
\begin{equation}
x_1 = \frac{5 + \sqrt{25 - 4 \times 6{2} = 3
\end{equation}
\begin{equation}
x_2 = \frac{5 - \sqrt{25 - 4 \times 6{2} = 2
\end{equation}
И решили смо једначину~\ref{eq:solve}
:<math>
\begin{align}
&x^2-5x+6=0 && (1) \\
&x_1=\frac{5+\sqrt{25-4\times6{2}=3 && (2) \\
&x_2=\frac{5-\sqrt{25-4\times6{2}=2 && (3)
\end{align}
</math>
Као што можете видети, ознака је постављена након почетка мода математике. У циљу референцирања формула, морате да користите окружење које додаје бројеве. Углавном ћете користити equation окружење; то је најбољи избор за једно-линијске једначине, без обзира да ли користите amsmath или не. Приметите да је ''eq:'' префикс у ознаци.
2.3.1 eqref
Пакет amsmath има нову команду за референцирање формула; То је \eqref{}. Ради исто као \ref{}, али додаје заграде тако да уместо штампања обичног броја као што је ''5'', одштампаће ''(5)''. Ово може да помогне читаоцу да разликује формулу од других ствари, без потребе да се понавља реч "формула" пре сваке референце. Његова излазна вредност се може мењати по жељи; за више информација погледатје amsmath документ.
2.3.2 tag
Команда \tag{eqnno} се користи за ручно постављање бројева једначина где је ''eqnno'' произвољан текст који желите да се појави у документу. Боље је користити ознаке, али понекад тешко кодиране бројеви једначина могу понудити лакшу опцију. Ово може бити косирно, на пример ако желите да поновите једначину која већ била коришћена, нпр. \tag{\ref{eqn:before.
2.3.3 numberwithin
Пакет amsmath додаје \numberwithin{countera}{counterb} команду који замењује једноставан countera са софистициранијиим
counterb.countera. На пример \numberwithin{equation}{section} у преамбули ће се број сектора одосити на све бројеве једначина.
2.3.4 cases
Пакет cases додаје \numcases и \subnumcases команде, које производе више случајева са посебном бројем једначина и једначина са ознакама, респективно, за сваки случај.
3 Пакет varioref
Овај varioref пакет уводи нову команду под називом \vref{}. Ова команда се управо користи као основна \ref, али има другачију излаз у зависности од контекста. ако је објекат који треба да се референцира на истој страни, онда ради исто као \ref; ако је објекат удаљен, онда ће исписати нешто попут "5 on page 25", односно аутоматски ће додати број странице. Ако је објекат у близини, може да користи неке префињене реченице попут "on the next page" или "on the facing page" аутоматски, према околностима и класи документа.
Ова команда се мора користити веома пажљиво. Она штампа више од једне речи, тако да се може десити да грешком одштампа на две различите стране. У том случају, алгоритам може збунити и довести до петље. Ево један пример. Ви означите објекат на страни 23 и деси се да \vref излаз остане између страница 23 и 24. Ако би био на страни 23, онда би штампао као основни ref, а ако би остао на страни 24, штампао би "on the previous page", али у оба случаја то може изазвати неке чудне грешке које би захтевале доста времена за поправку. Помислили бисте да се то дешава веома ретко; нажалост, ако сте написали дуг документ није неуобичајено да имате на стотине референци, тако да је оваква ситуација веома могућа. Један од начина да се избегне проблем током рада је да се користи стандардни ref све време и да се конвертује у vref када је документ у фази финалне верзије, а затим поправка евентуалних проблема.
4 Пакет hyperref
4.1 autoref
Пакет hyperref уводи још једну корисну команду; \autoref{}. Ова команда креира референцу са додатним текстовима која одговара потребном типу, што ће бити хиперлинк. На пример, команда \autoref{sec:intro} би створила линк до \label{sec:intro} команде, где год да је. Под претпоставком да је ова ознака показује на секцију, хиперлинк ће садржати текст "section 3.4", или нешто слично (комплетан списак стандардних имена може се наћи ). Имајте на уму да, док је \autoref* команда, ствараће нелинковане префиксе (корисно ако је ознака на истој страни као и референца), без алтернативне \Autoref команде која је дефинисана за производњу верзије која се плаћа (корисни, на пример, када се почиње реченице); али од капитализације autoref имена су изабрана од стране аутора пакета, можете прилагодити редефинисањем текст префикса \''type''autorefname у префикс који желите, као што је:
\def\sectionautorefname{Section}
Овај трик преименовања се може сасвим добро користи и у друге сврхе.
* Ако бисте желели да хиперлинкујете референцу, али не желите унапред дефинисани текст који \autoref{} пружа, то можете да урадите са командом, као што је \hyperref[sec:intro]{Appendix~\ref*{sec:intro. Имајте на уму да можете онемогућити стварање хиперлинка у hyperref и само користити ове команде за аутоматски текст.
* Имајте на уму да \label мора бити постављен унутар окружења са бројачем, као што је табела или фиура. У супротном, не само број ће се односити на тренутни одељак, као што је поменуто горе, али име ће се односити на претходно окружење са бројачем. На пример, ако ставите ознаку након затварања фигуре, у ознаци ће и даље писати "figure n", где је n тренутни број секције.
4.2 nameref
Пакет hyperref такође аутоматски укључује nameref пакет и команду са сличним називом. Слично је \autoref{}, али инсерти текст одговара називу одељка, на пример.
Унос:
\section{MyFirstSection} \label{sec:marker}
\section{MySecondSection}
In section~\nameref{sec:marker} we defined...
Излаз:
In section MyFirstSection we defined...
4.3 Ручно позиционирање
Када дефинишете \label ван фигуре, табела или неки други објекат, штампа ознаку у тренутној секцији. У неким случајевима, ово понашање
није оно што желите и радије би генерисани линк искористили за указивање на линију где је \label дефинисана. Ово се може постићи командом
\phantomsection као у овом примеру:
%Локација линка ће бити постављена на линији испод.
\phantomsection
\label{the_label}
5 Пакет cleveref
Пакет cleveref уводи нову команду \cref{} који обухвата тип референцираног објекта као што \autoref{} ради. Алтернативна \labelcref{} команда ради више као стандардна \ref{}. Референце на страницама се обрађују од стране \cpageref{} команде.
Команде \crefrange{}{} и \cpagerefrange{} очекују почетну и крајњу ознаку у било ком редоследу као и обезбеђивање широког спектра (babel је омогућен) језика. Ако су ознаке наведене као листа раздвојена зарезима са уобичајеном \cref{} командом, онда ће их сортирати и груписати аутоматски.
Формат може бити наведен у преамбули.


LaTeX/Правила и носачи

1 Правила
команда при нормалном коришћењу даје једноставну црну кутију:
, и параметри су објашњени у Кутије одељак.
Овде је пример:
Ово је корисно за цртање вертикалних и хоризонталних линија.
2 Носачи
Специјални случај је правило без ширине али са одређеног висиниом. У професијалном слагању слогова, ово се назива "носач". Користи се како би се загарантовао елемент на страници која има одређену минималну висину. Можете га користити у табличном окружењу или у кутијама како би се осигурали да ред има одређену минималну висину.
У LaTeX-у носач је дефинисан као
3 Развучена првила
LaTeX пружа команду, која ради као развучени хоризонтални простор.
Видети Дужине одељак.


LaTeX/Везе

Ево још неких онлајн ресурса на располагању:
0.1 Заједница
* Укључује везе са бесплатним верзијама (La)TeX-a за многе врсте рачунара.
* Група TeX корисника у Великој Британији
* Група TeX корисника у Индији
* Група вести за питања у вези са (La)TeX-ом
* стотине додатних пакета и програма
0.2 Туториали/Често постављена питања
* Тобиасов не тако кратки увод у LaTex2e: такође на* Велов увод у LaTeX: Шта је то, зашто би га користили, који би требало да га користи и како да почнете: * Петер Флинов Водич за почетнике (форматирање):* АМС Кратки Водич за Математику у LaTeX-у, сажет преглед математичких формула * amsmath водич за кориснике (PDF) и повезане датотеке:* LaTeX буквар из Индијски TeX корисничке групе:* LaTeX буквар * ПСТрикови - фенси графика са ПДФ способностима* PDFScreen-- креирање LaTeX ПДФ датотека које имају дугмад за навигацију који се користе за презентације::* Давид Баусумова листа ТеХ примитива (ово су основне команде које се користе у ТеХ):* Леслие Лампортово упутство за коришћење команди које су јединствене за ЛаТеХ (команде се не користе у обичном ТеХ):* Велико Британијса TeX FAQ листа питања и одговора који се често постављају на comp.text.tex* ТеХ-на Мак ОС Х: Водич за коришћење ТеХ и LaTeX на Мак * Обрада текста помоћу ЛаТеX * (La)TeX енциклопедија * Хипертекст Помоћ за ЛаТеХ * EpsLatex: веома свеобухватан водич за слике, фигуре и графике* Листа ЛаТеХ Свеобухватних Симбола (у ПДФ) * Хватање у коштац са латексом (ХТМЛ): Колекција латекс туторијала вас води од самих основа, ка напреднијим темама * Поглавље 8 (око припреме математике) на ЛаТеХ-у
0.3 Шаблони
** , 2007
** , 2006
* , 2009

LaTeX


LaTeX/Алгоритми

LaTeX има неколико пакета за алгоритме у форми "pseudocode". Они обезбеђују стилизована побољшања преко уједначеног стила (тојест., у typewriter фонту) тако да петље или кондиционали буду визуалоно одвојени од осталог текста . За typesetting ''real'' код, куцан у ''правом'' програмском језику, погледајте ''listings'' пакет описан у Листирање изворног кода.
1 Подешавање typesetting коришћењем algorithmic пакета
algorithmic пакет користи другачији сет команди од algorithmicx пакета. ово није компатибилно са revtex4-1.
Основне команде су:
\STATE <text>
\IF{<condition>} \STATE{<text>} \ELSE \STATE{<text>} \ENDIF
\FOR{<condition>} \STATE{<text>} \ENDFOR
\FOR{<condition> \TO <condition> } \STATE{<text>} \ENDFOR
\FORALL{<condition>} \STATE{<text>} \ENDFOR
\WHILE{<condition>} \STATE{<text>} \ENDWHILE
\REPEAT \STATE{<text>} \UNTIL{<condition>}
\LOOP \STATE{<text>} \ENDLOOP
\REQUIRE <text>
\ENSURE <text>
\RETURN <text>
\PRINT <text>
\COMMENT{<text>}
\AND, \OR, \XOR, \NOT, \TO, \TRUE, \FALSE
Комплента документација се налази на . Већина команди је слична algorithmicx еквивалентима, али са другачијим наглашавањем.
algorithms bundle пакет на , dated 2009-08-24, описује algorithmic окружење (за typesetting алгоритма) као и algorithm floating wrapper (погледајте below) који је дизајниран да обмота окружење алготитма.
algorithmic пакет се препоручује за јер је део њиховог уобичајеног стила.
2 Подешавање typesetting копришћењем algorithm2e пакета
algorithm2e пакет (прво објављен 1995., а поселдње унапређење добио јануара 2013. како се наводи на ) омогућава typesetting алготитма са доста могућности прилагођавања. Као algorithmic пакет, овај пакет такође није компатибилан са Revtex-4.1.
За разлику од algorithmic, algorithm2e омогућава релативно велики број опција прилагођавања за изглед алгоритма које задовољавају потребе корисника.
обезбеђује разумљиву листу примера и сет котрола.
Уобичајено, употреба између \begin{algorithm} и \end{algorithm} била би
1. Постављање сета кључних речи (to typeset as functions/operators), котроле изгледа, наслова, текста у заглављу (који се појављује пре главних корака алгоритма на пример.: Input,Output)
2. Писање главних корака алгоритма, где се сваки корак завршава са \;
Можемо пронаћи аналогију са latex-преамбулом пре но што почнемо сам документ.
Пакет се учитава као
\usepackage[]{algorithm2e}
једноставан пример, узет из v4.01 упутства, је
\begin{algorithm}[H]
\KwData{this text}
\KwResult{how to write algorithm with \LaTeX2e }
initialization\;
\While{not at end of this document}{
read current\;
\eIf{understand}{
go to next section\;
current section becomes this one\;
}{
go back to the beginning of current section\;
}
}
\caption{How to write algorithms}
\end{algorithm}
Који прави
Више информација су у приручнику приложеном на .
3 Подешавање typesetting копришћењем algorithmicx пакета
пакет обезбеђује доста конструката за дизајн алгоритма. Поставите \usepackage{algpseudocode} у преабмули да бисте користили алгоритамско окружење за писање алготитамског псеудокода (\begin{algorithmic}...\end{algorithmic}). Можда бисте желели да користите (\usepackage{algorithm}) да обухватите код алготитма у алгоритамско окружење (\begin{algorithm}...\end{algorithm}) да направите floating окружење са нумерисаним алгоритмима.
Команди \begin{algorithmic} може се доделити ппоизвољни аргумент позитивног интиџера, који ако задат проузрокује да се линије набрајања јављају на садржатељу тог интиџера. нпр. \begin{algorithmic}[5] ће ући у алгоритамско оружење и побројати сваку пету линију.
Испод је пример typesetting елементарног алгоритма коришћењем algorithmicx пакета (не заборавите да убаците и \usepackage{algpseudocode} исказ у преамбули вашег документа):
\begin{algorithmic}
\If {$i\geq maxval$}
\State $i\gets 0$
\Else
\If {$i+k\leq maxval$}
\State $i\gets i+k$
\EndIf
\EndIf
\end{algorithmic}
LaTeX извор се може писати у форми ознатој свим програмерима тако да буде лако читљив. Ово ипак неће утицати на финални изглед документа.
Основне команде имају следећу синтаксу:
Исказ (\Исказ са косом цртом пребацује у нови ред, и може се такође користити испред осталих команди)
\State $x\gets <value>$
Три форме if-исказа:
\If{<condition>} <text> \EndIf\If{<condition>} <text> \Else <text> \EndIf\If{<condition>} <text> \ElsIf{<condition>} <text> \Else <text> \EndIf
Трећа форма прихвата онолико \ElsIf{} клаузула колико је потребно. Обратите пажњу да се користи \ElsIf а не \ElseIf.
Петље:
\For{<condition>} <text> \EndFor\ForAll{<condition>} <text> \EndFor\While{<condition>} <text> \EndWhile\Repeat <text> \Until{<condition>}\Loop <text> \EndLoop
Pre- and postcondition:
\Require <text>\Ensure <text>
Функције
\Function{<name>}{<params>} <body> \EndFunction\Return <text>\Call{<name>}{<params>}
Ова команда ће се обично користити у комбинацији са \State командом на овај начин:
\Function{Increment}{$a$}
\State $a \gets a+1$
\State \Return $a$
\EndFunction
Коментари:
\Comment{<text>}
Корисницима које су се пребацили са старог algorithmic пакета: коментари се могу налазити било где; нема ограничења као у старом algorithmic пакету.
3.1 Преименовање: algorithm to procedure, require/ensure to input/output
\floatname{algorithm}{Procedure}
\renewcommand{\algorithmicrequire}{\textbf{Input:
\renewcommand{\algorithmicensure}{\textbf{Output:
3.2 Прилагодљиви блокови алгоритма
algorithmicx пакет Вам омогућава да дефинишете ваша сопствена окружења.
Да бисте дефинисали почетак са почетном командом и крај са крајњом командом, користите,
\algblock[<block>]{<start>}{<end>}
Ово дефинише две команде \<start> и \<end> које немају параметре. Текст приказан је \textbf{<start>} и \textbf{<end>}.
Са \algblockdefx можете поставти текст као аутпут користећи почетак и крај команде и бројеве параметара за ове команде. У тексту н-ти параметар се референцира са #n.
\algblockdefx[<block>]{<start>}{<end>}
[<startparamcount>][<default value>]{<start text>}
[<endparamcount>][<default value>]{<end text>}
Пример:
\algblock[Name]{Start}{End}
\algblockdefx[NAME]{START}{END}%
[2][Unknown]{Start #1(#2)}%
{Ending}
\algblockdefx[NAME]{}{OTHEREND}%
[1]{Until (#1)}
\begin{algorithmic}
\Start
\Start
\START[One]{x}
\END
\START{0}
\OTHEREND{\texttt{True
\End
\Start
\End
\End
\end{algorithmic}
Напреднија прилагођавања и остали конструкти су описани у algorithmicx приручнику:
4 algorithm окружење
Често је корисно за алгоритме направљене са algorithmic да буду "floated" до оптималне тачке
у документу да би се избегло њихово раздвајање по страници .Окружење algorithm омогућава ово и још неколико корисних особина. Укључите је додајући \usepackage{algorithm}
у преамбулу документа. У њега се улази са
\begin{algorithm}
\caption{<your caption for this algorithm>}
\label{<your label for references later in your document>}
\begin{algorithmic}
<algorithmic environment>
\end{algorithmic}
\end{algorithm}
4.1 Набрајање алгоритма
Основни систем набрајања за algorithm пакет је да набрајате алгоритме секвенцијално. Ово често није пожељно, посебно у великом документу где се набраја по поглављима. На набрајање алгоритма се може утицати тако што се додели компонента име документа у којој је набрајање препоручено. Легалне вредности за ову опцију су: part, chapter, section, subsection, subsubsection or nothing (default). На пример:
\usepackage[chapter]{algorithm}
4.2 Листа алгоритма
Када користите фигуре или табеле, можете их убацити у листу сличну садржају; algorithm пакет омогућава сличну команду. Само ставите
\listofalgorithms
било где у документу, и LaTeX ће штампати листу "алгоритамских" окружења у докуметну са одговарајућом страницом и насловом.
4.3 Пример из приручника
Овај пример је узет из (official manual, p.14)
\begin{algorithm} % enter the algorithm environment
\caption{Calculate $y = x^n$} % give the algorithm a caption
\label{alg1} % and a label for \ref{} commands later in the document
\begin{algorithmic} % enter the algorithmic environment
\REQUIRE $n \geq 0 \vee x \neq 0$
\ENSURE $y = x^n$
\STATE $y \Leftarrow 1$
\IF{$n < 0$}
\STATE $X \Leftarrow 1 / x$
\STATE $N \Leftarrow -n$
\ELSE
\STATE $X \Leftarrow x$
\STATE $N \Leftarrow n$
\ENDIF
\WHILE{$N \neq 0$}
\IF{$N$ is even}
\STATE $X \Leftarrow X \times X$
\STATE $N \Leftarrow N / 2$
\ELSE[$N$ is odd]
\STATE $y \Leftarrow y \times X$
\STATE $N \Leftarrow N - 1$
\ENDIF
\ENDWHILE
\end{algorithmic}
\end{algorithm}
; Званични приручник се налази на :
5 Подешавање typesetting коришћењем program пакета
Пакет program обезбеђује macros за typesetting aлгоритма.
Свака линија је подешена у math моду, тако да су раyмаци и наглашавања аутоматски одрађени .
|variable_name| може бити коришћена и у нормалном тексту,
математичким експресијама или програмима да нагласи име варијабле.
Кoристите \origbar да бисте добили нормални | симбол у програму.
Команде \A, \B, \P, \Q, \R, \S, \T и \Z могу се слагати и са болдованим
словом следећег објекта као подскрипта (eg \S1 typesets {\bf
S$_1$} etc). Основни раде нормално, eg \S‘‘.
Испод је пример typesetting основног алгоритма користећи
program пакет (не заборавите да додате
\usepackage{program} исказ у преамбули документа):
\begin{program}
\mbox{A fast exponentiation procedure:}
\BEGIN \\ %
\FOR i:=1 \TO 10 \STEP 1 \DO
|expt|(2,i); \\ |newline|() \OD %
\rcomment{This text will be set flush to the right margin}
\WHERE
\PROC |expt|(x,n) \BODY
z:=1;
\DO \IF n=0 \THEN \EXIT \FI;
\DO \IF |odd|(n) \THEN \EXIT \FI;
\COMMENT{This is a comment statement};
n:=n/2; x:=x*x \OD;
\{ n>0 \};
n:=n-1; z:=z*x \OD;
|print|(z) \ENDPROC
\END
\end{program}
Команде \( and \) су редефинисане
да би се алгоритам представио у виду мале странице, тако да се може
приказти као један прозор или у формули. На пример,
да би изказали да је одређени систем акција еквивалентан
WHILE петљи можете писати:
\[
\( \ACTIONS A:
A \EQ \IF \B{} \THEN \S{}; \CALL A
\ELSE \CALL Z \FI \QE
\ENDACTIONS \)
\EQT
\( \WHILE \B{} \DO \S{} \OD \)
\]
Dijkstra кондиционали и петље:
\begin{program}
\IF x = 1 \AR y:=y+1
\BAR x = 2 \AR y:=y^2
\utdots
\BAR x = n \AR y:=\displaystyle\sum_{i=1}^n y_i \FI
\DO 2 \origbar x \AND x>0 \AR x:= x/2
\BAR \NOT 2 \origbar x \AR x:= \modbar{x+3} \OD
\end{program}
Петље са више излаза:
\begin{program}
\DO \DO \IF \B1 \THEN \EXIT \FI;
\S1;
\IF \B2 \THEN \EXIT(2) \FI \OD;
\IF \B1 \THEN \EXIT \FI \OD
\end{program}
Пример обратног инжењеринга.
Ово је оригинални програм:
\begin{program}
\VAR \seq{m := 0, p := 0, |last| := `` ''};
\ACTIONS |prog|:
|prog| \ACTIONEQ %
\seq


LaTeX/Бројачи

Бројачи су основнио део LaTeX-а: они дозвољавају контролу набрајања механизма свега (секција, листи, наслова, итд.).
На крају сваки бројач чува целобројну вредност у опсегу од дугачки цео број, нпр., од <math>-2^{31}</math> to <math>2^{311</math>.
1 Манипулација бројача
У LaTeX-у уреду је лако направити нове бројаче и чак бројаче који се ресетују аутоматски када је други бројач повећан (односи се на поднаслов у наслову на пример). Преко команде
стварате нови бројач који се аутоматски поставља на нулу.
Ако желите да се бројач враћа на нулу сваки пут када се други бројач повећа, користити:
Да бисте повећали бројач, или користити
или
или
овде број може такође бити негативан. За аутоматско ресетовање морате користити <code>\stepcounter</code>.
Да поставите вредност бројача на експлицитно, користити
2 Приступ бројачу
Постоје више начина да се приступи бројачу.
* ће штампати форматирани стринг који се односи на бројач (приметити "the" пре навођења имена бројача).
* ће штампати вредност бројача који се може користити преко других бројача или за прорачунавања. Није форматиран стринг, тако да се не може користити у тексту.
* ће штампати форматирани бројач користећи арапске бројеве.
Имати на уму да се може се користити као вредност такође, али не и други.
Довољно чудно, LaTeX-ови бројачи нису представљени косом цртом у сваком случају, чак и са командом. plainTeX еквиваленти и не поштују владавину косе црте.
3 Стил бројача
Сваки бројач такође има подразумевани формат који диктира како је приказан сваки пит када треба LaTeX да се штампа. Такви формати су специфирани користећи интерне LaTeX команде:
Команда, Пример
1, 2, 3 ...
a, b, c ...
A, B, C ...
i, ii, iii ...
I, II, III ...
Циљано на футноте; штампа секвенцу симбола.
4 LaTeX-и подразумевани бројачи
* part - део
* chapter - поглавље
* section - наслов
* subsection - поднаслов
* subsubsection -подподнаслов
* paragraph - параграф
* subparagraph - подпараграф
* page - страна
* figure - фигура
* table - табела
* footnote - фуснота
* mpfootnote - мпфуснота
За окружење:
* enumi
* enumii
* enumiii
* enumiv
За окружење:
* equation - једначина
5 Књига са деловима, насловима, али не и са поглављима
Овде следи пример где желимо да користимо делове и наслове, али не и поглавља у класи књиге:
6 Произвољно набрајање
Видети Структуре листе одељак.
7 Произвољни наслови
Овде је пример за стварање нечега сличном наслову и поднаслову бројача који већ постоју у LaTeX-у:


LaTeX/Кутије

LaTeX прави странице тако што гура кутије около. Прво, свако слово је мала кутија, која се касније залепи за друга слова како би се направила реч. Они су касније залепљени за остале речи, али са специјалним лепком, који је еластичан тако да серије речи могу бити стиснуте или развучене тако да тачно попуне линију.
Додуше, ово је веома једноставан опис онога што се стварно дешава, али ствар је у томе да ТеХ оперише лепком и кутијама. Слова нису једина ствар која може бити у кутијама. Неко може виртуелно ставити шта хоће, укључујући и друге кутије. Сваку кутију ће онда LaTeX преузети као да су једно слово.
Прошла поглавља су веч имали посла са неким кутијама, иако нису била описана као таква. Таблично окружење и , на пример, обоје праве кутију. Ово значи да један од њих може лако наместити табеле или слике по страни. Морате само да се осигурате њихова комбинована ширина није дужа од .
1 TeX кутије карактера
TeX карактери су чувани у кутијама као сваки иштампани елемент. Кутије имају тродимензионалне карактеристике:
*''висина'' је дужина између главне линије и врха кутије.
*''дубина'' је дужина између главне линије и дна кутије.
*''ширина'' је ширина кутије.
2 makebox и mbox
Док пакује цео параграф радећи прекид линије и остало, постоји такође класа команди кутија која оперише само над хоризонтално поређаним материјалом. Већ знамо једног од њих; зове се . Једноставно пакује серије кутија у другу, и може се користити да спречи LaTeX да разбије две речи. (ВИдети Хипернација.) Пошто се кутије могу ставити унутар кутија, ови хоризонтални пакери кутија дају ултимативну флексибилност.
дефинише ширину резултујуће кутије како се види споља. Ово значи да може бити мања од материјала унутар кутије. Можете чак поставити ширину на 0пт тако да текст унутра ће бити слагање слога без утицаја кутија које га окружују. Осим дужина експресија, можете такође користити , , и у параметра. Постављени су од вредности које су постигнуте мерењем слога у тексту.
параметар узима вредност једног слова : ц(c)ентар, равнол(l)ево, равнод(r)есно, или ш(s)ирење текста да попуни кутију.
3 framebox
Команда ради исто као и , али извлачи кутију око текста.
Следећи пример показује нам неке ствари које се могу радити са and командама:
Можете повући сладеће душине оквира.
* : растојање између оквира и садржине.
* : дебљина првила.
Ово штампа дебео и далеки оквир:
Ово приказује оквир кутије за слово.
4 уоквирен
Алтернатива ових приступа је коришћење окружења (морали бисте да укључите и пакет за коришћење). Ово пружа лакши начин да се складишти параграф унутар документа:
Можете то уради ручно преко parbox.
5 raisebox
Сада пошто контролишемо хоризонталу, очигледни следећи корак је да се иде за вертикалом. Нема проблема за LaTeX.
команда дозвољава нам да дефинишемо вертиклане карактеристике кутије. Можете користити , , и у прва три параметра, да би се утицало на величину кутије унутар текст аргумента. Два могућа сета параметра за висину и дубину raisebox-а. На пример можете посматрати разлику када се угради у framebox.
6 minipage и parbox
Најстандардније LaTeX кутије нису "дугачке" команде, "тј." не прихватају прекиде нити параграфе.
Како год можете паковати параграф по избору у кутија или са командом или окружењем.
може прихватити једно од слова центар, врх или дно како би се користила вертикална додела кутије, релативно главној линији текста који га окружује.
параметар је висина parbox или minipage.
параметар је позиција садржине и може бити један од центар, врх, дно или развучен.
прима дужину аргумента специфирајући ширину кутије. Главна разлике између и је та да не можете користити све команде и окружења унутар parbox, док је скоро све могуће у minipage-у.
Ово би требало да штампа 3 кутије на истој линији. Не стављати још један прекид линије између , иначе ставићете следеће у други параграф на другој линији.
6.1 Параграфи у свим кутијама
Можете имати користи од "дугачких" могућности minipage-a i parbox-a да би додали параграфи у кратким кутијама. На пример:
Ово спречава грешку препуњености.
Можете такође користити из pbox пакета који ће створити кутију минималне величине око текста. Имати на уму да\pbox команда узима опционални аргумент који специфира вертикалну позицију текста:
Валидне вредносту су b (дно), t (врх), и c (центар). Ако наведете дужину првог (траженог) аргумента, текст ће бити упакован:
7 savebox
је референца за кутију попуњену садржајем. Можете га користити као начин да иштампате или манипулишете нечин непрестано.
Команда ствара чувара места за чување текста;
Команда чува специфиран текст у овом чувару места, и не приказује ниста у документу; и позива садржину чувара места у документ.
8 rotatebox
Видети Ротације.
9 colorbox и fcolorbox
Видети Боје.
такође се могу уклопити са и .
10 resizebox и scalebox
пакет садржи додатне кутије
11 fancybox
пакет пружа додатне кутије.
***


LaTeX/Најчешће постављана питања

1 Маргине су превише широке
LaTeX подразумеване маргине могу изгледати сувише велике. У већини случајева, оне су пожељне и побољшавају читљивост.
Ако се још увек не слажете, можете их лако променити са
Види Распоред стране.
2 Избегавајте сувишне дупле размаке између редова у изворном коду
Превише пасуса са једном или двема линијама не изгледа веома добро.
Запамтите правило TeX-а:
* Ако су пронађена два или више размака између редова, ТеХ покреће нови пасус.
* Ако је пронађен само један размак између редова, ТеХ убацује простор, ако га није било, непосредно пре или после њега.
Можда сте у искушењу да ставите празнe редова све време како би се побољшала читљивост вашег изворног кода, али то би имало утицај на форматирање. Решење је једноставно: ставите коментар на самом почетку празних редова. Ово ће спречити ТеХ да види други размак између редова—сви карактери који се налазе до следећег размака и укључујући следећи размак се игноришу након коментара.
Пример:
3 Поједностављено убацивање посебних знакова
Докле год ваше рачунарско окружење подржава УТФ-8, можете унети специјалне знаке директно, пре него да пишете ТеХ команде за дијакритичке и друге проширене знаке. На пример,
Ово захтева да:
* Ваш програм за уређивање текста подржава и да је подешен да сачува своју датотеку у УТФ-8;
* да додате линију у преамбулу.
Избегавајте коришћење . Види Посебни знакови.
4 Директно писање симбола за Евро
Додајте следеће линије у преамбулу:
5 LaTeX заглавља пасуса имају наслов и садржај на истој линији
Неки људи не воле начин на који пише наслов у истој линији са садржајем. Ово је заправо прилично уобичајено у многим документима, и није толико чудно како изгледа на први поглед.
Постоје начини да се добије подразумевано понашање, ипак; види \paragraph размаци између редова за више информација.
6 Фонтови су ружни/искрзани/растерски или ПДФ тражи грешке или Неуредно је Копирати/Прилепити из ПДФ-а
Вероватно користите дијакритике (нпр акценте) са ОТ1 кодирањем (подразумевано).
Пребаците на Т1 кодирање:
Ако имате ружне искрзане фонтове након промене кодирања фонта, онда немате одговарајући Тип 1 фонт на располагању. Инсталирајте или (име пакета може бити ). Да бисте користили морате да укључите пакет:
Види Фонтове за објашњење.
7 Ручно форматирање: Употреба размака између редова и размака између страница
Требало би ''стварно'' да избегнете да ручно правите размаке између линија и странице. ТеХ машина је задужена за то. Велики проблем са ручним форматирањем је да није динамично. Чак иако изгледа добро први пут, садржај ће вероватно бити веома лош ако промените било шта пре места одакле сте ручно форматирали.
Једино место где се препоручују размаци између страница је на горњем нивоу одељака у вашим документима, ''нпр'' делови или поглавља (мада када започнете нови део или поглавље, LaTeX ће то обично учинити уместо вас). Када ручно убацујете размак између странице, треба да користите или која штампа тренутне пливајуће фигуре пре почетка нове стране.
Ако апсолутно морате ручно да убаците размаке између линија или страница, требало би то да урадите након што сте сигурни да сте завршили свој документ на неки други начин, тако да касније не морате да се вратите и да га ажурирате.
8 Увек завршите команде са {}
TeX има неинтуитивно правило да ако контролна секвенца (команда) не прати пар заграда (са параметром између њих или не), онда се следећи карактер(и) простора игноришу. LaTeX неће штампати ''ни мало'' простора, а команда (рецимо, ТеХ или LaTeX логои) се управља заједно са следећом речи.
Да бисте то исправили, користите пар заграда после команде, чак и ако не постоје параметри. Пример:
(Техничко објашњење: име контролне секвенце може бити састављено од карактера са кеткодом 11, који је А-З и а-з подразумеван. ТеХ зна где почиње име секвенце захваљујући обрнутој косој црти, а зна где се завршава када наиђе на први знак који није кеткод 11. Овај карактер је тада прескочен. Од када су узастопни простори спојени у један простор, не простор се узима у обзир.)
Могуће је дефинисати макрое који ће убацити размак динамички помоћу пакета.
* Ако нема заграда и простора након команде, додатни простор ће бити додат.
* Ако постоје загараде, неће бити штампан додатни простор.
Пример:
9 Избегавање подебљавања и подвлачења
Типографски говорећи, обично је лоша пракса да се користи подебљавање или подвлачење у средини пасуса. Ово је постало уобичајено за кориснике традиционалне обраде текста, јер су ове две функције веома лако доступне (заједно са курзивом).
Међутим, подебљавање и подвлачење имају тенденцију да отежају текст и да збуне читаоца. Када почнете да читате пасус са подебљаном речи у средини, често прочитате ту наглашену реч прво, па тако то квари садржај и разбија редослед идеја. Искошене речи су мање очигледне, а немају већу тежину него нормални карактери, тако да су обично бољи избор за истицање мале количине текста.
Оригиналнија и прикладнија употреба подебљаних и подвучених речи је у посебним деловима, као што су заглавља, индекс, речник, и тако даље. (Заправо, подвлачење се ретко користи у професионалним окружењима.)
LaTeX има макро за истицање текста коришћењем курзива. То би требало да буде предност у зато што ће тачно штампати наглашен текст унутар другог курзивног текста у регуларном фонту.
10 Правилан начин коришћења фигура
Корисници који користе ШВТЋИДД процесоре докумената као што су Мајкрософт Ворд или ЛибреОфис често су фрустрирани са фигурама. Одговор је једноставан: фигура '' није '' слика!
Ако користите не обухватајући га у окружењу, она ће се понашати као у програму за обраду текста, стављајући слику тачно на месту где је смештена у извору.
''Фигуре'' су плутајућа врста, што је виртуелни објекат који LaTeX може ставити не само на местима где су креирана, што помаже у спречавању затрпавања вашег текста са сликама и табелама.
Види Увоз графике и Фигуре и натписи за више детаља.
11 Текст зауставља поравњања
Најчешће се користи
,
или
у неком тренутку и често се њихово искључење заборавља. Ове команде су прекидачи-остају активни до краја поља, односно до краја документа уколико нема поља. Види Поравнање параграфа за више информација.
12 Правила интерпункције и размака
LaTeX ради неке послове за вас, али не све. Посебно у погледу интерпункције, ту сте прилично слободани да радите шта хоћете. Интерпункцијска правила су различита за сваки језик. У енглеском језику ''не'' постоји размак пред знаком интерпункције а постоји један размак након тога.
Има много правила, али можете их брзо погледати на Википедији.
13 Грешке у извршавању након промене у Бабел језик
Ово је ограничење у Бабелу. Избришите .aux датотеку (или цео пројекат), па извршите поново.
14 Учење LaTeX-а брзо или правилно
Данас је врло уобичајено "учење" на интернету помоћу претраживача и копирања и прилепљивања ствари ту и тамо. Као и са сваким програмским језиком, ово је генерално лоша метода која ће довести до недостатка контроле, неочекиваних резултата, и много фрустрација. Стварно учење LaTeX није толико тешко и не узима много времена. Већина поглавља у овој књизи су посвећени одређеној употреби, тако да су основе заправо покривене веома брзо.
Ако сте исфрустрирани са одређеним пакетом, уверите се да сте прочитали његову службену документацију, која је обично најбољи извор информација. Садржај наћи на интернету, чак и у овој књизи, која је ретко прецизна као службена документација. Нетачне информације могу довести до грешака које можда нећете разумети.
Време које проведете учећи вреди, и то је бржи начин него да не учите како треба и да стално заглављујете.
15 Простори без прекида
Ова корисна функција је непозната већини новајлија, мада је доступана на већини процесора ВИСИВИГ докумената. Не-размак између два знака (нпр речи, знакови интерпункције) спречава процесоре да убаце размак између њих. То је веома важно за доследно читање. LaTeX користи "~" симбол као простор без прекида.
Обично користите простор без размака за знакове интерпункције у неким језицима, за јединице и валуте, за иницијале, итд.
На пример, у Француској типографији, ставите простор без размака пре дводелних интерпункција.
Пример:
Имајте на уму да је овакво писање француског језика може бити заиста болно. Срећом, Бабел са опцијом ће се побринути за простор без размака за све знаке интерпункције. У горњем примеру, само простор без размака за симбол евра мора да остане.
16 Паметна математика
Сви виртуални објекти означени словима, променљивим или нечим другим треба да користе намењено форматирање. За математику и многе друге области, LaTeX математичко форматирање је савршено. На пример, ако желите да се обратите објекту ''А'', пишите
Ако желите да се обратите неколицини објеката, исто је.
Ако желите да се обратите скупу објеката, и даље можете да користите математичке ознаке.
Приметите да је ово различито од текстуално написаних заграда.
17 Користи векторску графику уместо растерских слика
Растерска (bitmap) графика је слаба и често даје искрзане или ниско-квалитетне резултате који се сукобљавају са квалитетом докумената, посебно када се штампа.
Коришћење векторсе (линиски оријентисане) графике уместо тога, било цртањем помоћу LaTeX алата или убацивањем слике направљене неким другим средством, ће обезбедити много бољи квалитет. Када је то могуће, требало би одабрати ПДФ, ЕПС, СВГ графику пре ПНГ или ЈПГ.
18 Продужавање табела
Ако покушате да продужите табеле са подразумеваним окружењем, то ће вас довести до неочекиваних резултата.
Леп пакет ће учинити оно што желите па чак и више од тога. Ако ипак не можете да користите пакет пробајте или пакет. Види Табеле.
19 Табеле су лакше него што мислите
Иако је поглавље о табелама прилично дугачако, вреди га читати. На крају, потребно је само да знате неколико ствари о окружењу по вашем избору.
Карактеристика неких LaTeX едитора су асистенти табела. Такође, многе апликације за табеларни приказ имају карактеристику LaTeX отпремања (или додатак). Поново, види Табле за више детаља.
20 Ослобађање гломазног кода (листе и велика командна имена)
LaTeX је понекад гломазан за писање, поготову ако не користите адекватне едиторе. Види Едитори за неке интересантне изборе.
Mожете дефинистати псеудониме како би скратили неке наредбе:
Овај пакет се користи како би се избегло гутање простора.
За листе можда желите да пробате пакет. Сада је писање листа једноставно као нпр:
21 Смањење величине ваше LaTeX инсталације
Чланак Инсталација детаљно објашњава како да ручно инсталирате потпуно функционално ТеХ окружење, укључујући LaTeX и друге карактеристике, у оквиру 100 МБ.

LaTeX


LaTeX/Дужине

У TeX-у, дужина је
* децимална тачка броја праћена јединицом, опционално праћена променљивом вредношћу;
* децимални фактор праћен макроом који се шири по дужини.
1 Јединице
Прво, представљамо LaTeX-ове јединице мерења. Све LaTeX-ове јединице су скраћенице од две речи. Можете бирати разне јединице. Овде се налазе најчешће.
Скраћеница, Дефиниција, Вредност у тачкама (pt)
pt, тачка је 1/72.27 инча, то значи око 0.0138 инча или 0.3515 мм. 1pt је регуларна дужина., 1
mm, милиметар, 2.84
cm, центиметар, 28.4
in, инч, 72.27
ex, грубо, висина од 'x' у тренутном фонту, ''недефинисана, зависи од коришћеног фонта''
em, грубо, ширина од 'M' (велико) у тренутном фонту, ''недефинисан, зависи од коришћеног фонта''
А овде су мање познате јединице.
Скраћеница, Дефиниција, Вредност у тачкама (pt)
bp, велика тачка је 1/72 инча, то значи око 0.0139 инча или 0.3527 мм., 1.00375
pc, pica, 12
dd, didôt (1157 points), 1.07
cc, cîcero (12 didôt), 12.84
sp, измерена тачка (65536sp по тачки), 0.000015
2 Дужине кутије
Кутија у TeX-у је карактеризована од стране три дужине:
*''дубина''*''висина''*''ширина''
Видети Кутије.
3 Манипулација дужине
Могу се променити вредности варијабли дефинисањем оквира стране са две команде. Са овом се може поставити нова вредност за постојећу дужину варијабле:
са овом другом, може се додати вредност постојећој:
Можете направити сопствену дужину са командом, и морате створити нову дужину пре него што покушате да је подесите:
Може се такође поставити дуђина из величине текста са једном од ових команди:
Када се користите ове команде, можете дуплирати текст који хоћете да користите као референцу ако планирате да је покажете. Али LaTeX такође пружа како би се избегло ово дуплирање.
Можда ћете имати жељу да погледате пример испод како би видели коришћење овога. Видети Кутије за више детаља.
Можете такође дефинисати променљиве вредности. Променљива вредност је претходила или да се прецизира колико tex има права да промени дужину. Пример:
То значи да tex ћете пробати да користите дужину од 10pt; ако је подвучено, повећаће дужину на максимум од 15pt; ако је препуно, смањиће дужину до минимума од 7pt.
Имати на уму да није обавезно навести обе и вредности, али ако то урадите, мора бити постављен пре .
Да би се иштампала дужина, може се користити команда:
3.1 Обичан TeX
Да би се направила нова дужина:
Да би се поставила дужина:
Да би се идело, исто је као код LaTeX-а, коришћењем команде .
4 LaTeX-ове подразумеване дужине
Чести макрои дужина су:
; \baselineskip : Нормална вертикална удаљеност између линија у параграфу.
; \baselinestretch : множи \baselineskip.
; \columnsep : Размак између колона.
; \columnwidth : Ширина колоне.
; \evensidemargin : Маргина за 'једнаке' странице (мисли се на штампану књижицу).
; \linewidth : Ширина линија у локалном окружењу.
; \oddsidemargin : Маргина за 'непарне' странице (мисли се на штампану књижицу).
; \paperwidth : Ширина странице.
; \paperheight : Висина странице.
; \parindent : Нормално удубљење параграфа.
; \parskip : Додатни вертикални простор између параграфа.
; \tabcolsep : Подразумевана одвојеност између колона у табличном окружењу.
; \textheight : Висина текста на страници.
; \textwidth : Ширина текста на страници.
; \topmargin : Величина горње маргине.
; \unitlength : Јединице дужине у окружења.
5 Намештени размаци дужина
Да би се убацио намештена дужина размака, користити:
стоји за хоризонтални простор, за вертикални простор.
Ако такав размак треба да се чува једнаким ако падне на крај или почетак линијем користити уместо тога.
Ако простор треба да буде очуван на врху или на дну странице, користити подразумевану команду , , уместо .
Ако желите да додате размак на почетку документа, без уписивања ичега пре, онда можете користити
Важно је да користите команду уместо, у супротном LaTeX може тихо игнорисати додатан простор.
TeX има неке макрое за фиксне дужине размака.
;: Убацује мали размак у вертикалном моду (између два параграфа).
;: Убацује средњи размак у вертикалном моду (између два параграфа).
;: Убацује велики размак у вертикалном моду (између два параграфа).
Вертиклани мод је током процеса монтаже кутија "вертикалан, као параграфи за грађење странице.
Хоризонтални мод је током процеса монтаже кутија "хоризонталан", као слова за грађење речи или речи за грађење параграфа.
Чињеница је да су они команде вертикално мода значи да ће бити игнорисани (или ће да падну) у хоризонталном моду као у средини параграфа. Први знак поред дуплог прекида линије је идаље у вертикалном моду ако се не прошири на карактере.
6 Растегљиве/променљиве дужине
Команда:
генерише специјални растегљиви простор где је број, вероватно децимални. Растеже се све док преостали простор на линији није попуњен. Ако су две команде разматране на истој линији, оне расту на основу растегљивог фактора.
На исти начин, може се растезати вертикално:
Можете такође користити уместо .
команда, у комбинацији са , може се користити за слага слога текста на последњој линији текста, или да се центрира текст вертикално на страни.
Постоје 'команде пречице' за растезање са фактором 1 (''тј.'' са или ): и .
Неки коментари:
6.1 Попуни остатак линије
Неколико макроа дозвољавају попуњавање остатка линије -- или растегљиве делове линије -- у различитим манирима.
* ће дати празан простор.
* ће дати тачке.
* ће дати правило.
7 Примери
Променити величину слике да заузме тачно пола ширине текста :
Направити разлику између већих ствари (унутар itemize окружења) :
Коришћење за мењање величине слике на висину текста:
8 Такође видети
*


LaTeX/Ознаке пакета

Ово је непотпун списак корисних пакета који се могу користити за широк опсег различитих врста докумената. Сваки пакет има кратак опис поред њега и, када је то могуће, постоји линк у одељку који описује такав пакет у детаље. Сви они (осим ако није наведено) треба да буду укључени у вашу LaTeX дистрибуцију као ''пакет_име.sty''. За више информација, погледајте документацију појединачних пакета, као што је описано у инсталацији додатних пакета.
Листа је у абецедном реду.
amsmath, Она садржи напредне математичке наставке за LaTeX. Комплетна документација треба да буде у вашој LaTeX дистрибуцији; фајл се зове ''amsdoc'', и може бити ''dvi'' или ''pdf''. За више информација, види одељак о математици.
amssymb, Додаје нове симболе који се користе у математичком режиму.
amsthm, Уводи окружење и команду. За више информација, види одељак теореме.
array, Повећава могућност LaTeX-а да се избори са табелама, поправља неке грешке и додаје нове функције. Користећи га, можете да креирате веома компликоване и прилагођене табеле. За више информација, погледајте одељак табеле.
babel, Она пружа интернационализацију LaTeX-а. Мора да се учита у документ, и морате навести главног језик који намеравате да користите у документу. За више информација погледајте одељак интернационализација.
bm, Омогућава употребу подебљаних грчких слова у математичком режиму користећи команду. Ово замењује пакет.
booktabs, обезбеђује додатне команде и оптимизацију за производњу табела. Смернице су дате о томе шта представља добру табелу у пакету документације.
boxedminipage, Она представља окружење, које ради исто као али додаје оквир око ње.
caption, Омогућава прилагођавање изгледа и постављање натписа за слике, табеле, итд.
cancel, Пружа команде за брисање математичких израза. Синтакса је
changepage, Да бисте лако променили маргине странице. Синтакса је
cite, Подржава збијене, сортиране листе нумеричких цитата, а бави се различитим интерпункцијама и другим питањима представљања, укључујући свеобухватно управљање прекидом.
color, Она додаје подршку за обојен текст. За више информација, види релевантни део.
easylist, Додаје подршку за арбитрарно-дубоким угнежђеним листама (корисно за обрисе). Види структура листи.
esint, Додаје додатне симболе за интеграле, за интеграле над квадратима, интеграле преко скупова, итд
eucal, Остали математички симболи.
fancyhdr, Да бисте променили хедер и футер било које странице документа. То је описано у одељку распоред стране.
fontenc, Да бисте одабрали фонт за кодирање излазног текста. Можда вам затреба ако пишете документе у другом језику осим енглеског. Провери у одељку фонтови.
geometry, За лако управљање маргинама докумената и величином странице документа. Види распоред стране.
glossaries, За креирање речника и листа акронима. За више информација, погледајте релевантно поглавље.
graphicx, омогућава да убаците графичке фајлове унутар документа.
hyperref, Она даје LaTeX-у могућност да управља везама у оквиру документа или на било који УРЛ када га преведете у ПДФ. За више информација, види релевантно поглавље.
indentfirst, Када се позове, почетак сваког поглавља / секције је увученији од уобичајеног увлачења.
inputenc, Да бисте изабрали кодирање за унос текста. Можда вам затреба ако пишете документе у другом језику осим енглеског. Проверите у одељку посебни знакови.
latexsym, Други математички симболи.
listings, Да бисте убацили програмерски код у документ. Многи језици су подржани и излази се могу прилагодити. За више информација, погледајте Списак Изворних кодова.
mathptmx, Поставља подразумевани фонт целог документа (укључујући математичке формуле) на Times New Roman, што је препознатљив фонт, и користан у спасавању простора у борби против граница страница.
mathrsfs, Други математички симболи.
mhchem, омогућава да лако куцате хемијске врсте и једначине. То аутоматски форматира хемијске врсте тако да не морате да користите команде за индекс. Такође вам омогућава да нацртате хемијске формуле.
microtype, Она пружа побољшање LaTeX-ових уграђених типографских екстензија, побољшања у областима као што су изданци карактера и проширење фонта, размак између речи итд.
multicol, обезбеђује multicols окружење које поставља текст у више колона.
natbib, Даје додатне опције за цитирање и стилове.
paralist, обезбеђује compactitem окружење које подешава ставке у листи много ближе него што је подразумевано код LaTeX-а.
pdfpages, Овај пакет поједностављује убацивање спољних страница ПДФ или ПС докумената.
rotating, То вам омогућава да ротирате било какву врсту објекта. Посебно је корисно за ротирање табела. За више информација, погледајте релевантан одељак.
setspace, Омогућава вам да промените проред, нпр пружа команду за израду двоструког прореда у докуменату. За више информација, погледајте релевантан одељак.
showkeys, Користан пакет у вези са референцирањем. Ако желите да референцирате слику или формулу, морате му дати име користећи \label{...} и онда је можете поново позвати користећи .Када преведете документ они ће бити замењени само са бројевима, и не можете да знате коју ознаку сте користили осим ако не погледате у изворном коду. Ако сте учитали пакет, видећете налепницу одмах поред или изнад одговарајућег броја у преведеној верзији. Пример референцирања секције је . На овај начин можете лако водити евиденцију о ознакама које додате или употребите, једноставно гледате на прегледу (може и '' дви '' и '' ПДФ ''). Непосредно пре коначне верзије, уклоните га.
showidx, Она исписује све индексиране уносе у левој маргини текста. Ово је веома корисно за редактуру документа и провереу индекса. За више информација, погледајте одељак индексирање.
subfiles, "Роот" и "дете" документ се може превести у исто време без прављења промене у "дете" документу. За више информација, погледајте одељак модуларни документи.
subcaption, Он омогућава да се дефинише више слика, табела унутар једне средине дајући индивидуалне натписе и ознаке у облику 1а, 1б.
syntonly, Ако додате следећи код у вашу преамбулу:
textcomp, Обезбеђује додатне симболе, нпр стрелице као , различите валуте (,...), ствари као и још много тога.
theorem, Можете да промените стил новодефинисаних теорема. За више информација погледајте одељак теореме.
todonotes, Омогућава вам да убаците белешке о стварима које треба урадити са синтаксом .
Помаже вам да исправно унесете Си-јединице. На пример . Аутоматски прави исправан размак између броја и јединице. Имајте на уму да су чак и не-Си-јединице су скупови, као и дБ, рад, ...
ulem, Он омогућава наглашавање текста (са равном или таласастом линијом). Неколико примера ове употребе је дато у одељку фонтови.
url, То дефинише команда. УРЛ-ови често садрже специјалне карактере, као што су '_' и '&',
verbatim, Побољшава окружење, решава неке багове. Штавише, он обезбеђује окружење, који вам омогућава да додате више линије коментара или једноставно коментаришете велике делове кода.
wrapfig, Да убаците слику окружену текстом. Разговарано је о томе у поглављу слике и натписи.
xypic, Користи се за стварање дрвећа, графикона, (комутативних) дијаграма и сличних ствари. Види Xy-pic.

LaTeX


LaTeX/Форматирање параграфа

Мењање облика параграфа је ретко потребно у академском писању. Првенствено се користи за форматирање текста у разним документима.
1 Поравнање параграфа
Параграфи у LaTeX-у су обично у потпуности поравнати, ''то јест'' поравнати и са леве и са десне маргине. Из било ког разлога, уколико желите да промените поравнање пасуса, постоје три врсте окружења која се могу користити уз помоћ ових LaTeX команди.
Поравнање, Окружење, Команда
Лево поравнање
Десно поравнање
Центрирано
Читав текст који се налази између и ће бити на одговарајући начин поравнат. Наведене команде су за употребу у оквиру других окружења. На пример, (пасус) колоне у .
Међутим, ако ''заиста'' желите да онемогућите једну од горе наведених команди локално (на пример, ако морате да користите неки непотпун пакет), можете користити команду из пакета .
2 Увлачење пасуса и размаци
По подразумеваним опцијама, први пасус после наслова је по Англо-Америчким издавачима, без увлачења. Величина наредног пасуса је одређена такозваним параметром . Стандардна дужина ове константе је постављена у зависности од врсте документа коју користите. Могуће је променити параметар уз помоћ команде. Овим се може поставити увлачење пасуса до 1cm:
Размак у LaTeX-у се такође може направити флексибилним (то Лампорт назива "гуменом" дужином). Пример је додатни вертикални простор који је убачен пре пасуса , може да има подразумевану димензију као и разлику кад је у питању ширење и контракција текста. Ово је корисно на страницама у сложеним документима, у којима не може свака страна да има тачан број линија висине, па су неке промене корисне. Ви одређујете ово уз команду као што је овде:
ако желите да увучете параграф који није увучен, можете употребити
на почетку параграфа. Очигледно, ово ће имати ефекат само када није постављен на нулу. Ако желите да увучете почетак сваке секције, можете искористити пакет: једном се учита, и почетак било ког поглавља/секције ће бити увучен.
Да направите пасус без увлачења, употребите
као прву команду пасуса. Ово може бити корисно када почнете документ са текстoм a не са командом увлачења.
Будите пажљиви, ако одлучите да поставите увлањење на нулу, онда ће вам бити потребан вертикалан простор између пасуса како би изгледало јасније. Размак између пасуса се одређује са , која би могао бити измењен на сличан начин као што је у претходонм случају урађено. Међутим, овај параметар се користи на другим местима, као што су листе, што значи да ризикујете израду делова вашег документа који могу да изгледају врло неуредно променом ове поставке. Ако желите да користите стил који нема увлачење простора између пасуса, користите пакет, која то ради за вас, док прилагођава растојање листи и других објеката који користе размак пасуса, тако да се не појаве превише удаљено. Ако желите и увлачење и размак пасуса, користите
Да увучете наредне редове параграфа, користите TeX команду . (Иако је подразумевано понашање примена увлачења након прве линије, то може да се промени са командом.) Пример следи.
TeX команде и дају додатни простор са леве и десне стране сваког реда, дозвољавајући форматирање да се наредни параграфи разликују од осталих маргина документа. Овај простор је као додатак увлачења убачен од стране и .
Да бисте променили увлачење у последњем реду пасуса, користите TeX команду .
3 \paragraph размаци између редова
Подразумевани стил за може изгледати чудно у почетку, јер пише текст поред наслова. Ако вам се то не допада, користите неку другу класу чланка/књиге, или користите ConTeXt или PlainTeX. Хаковање класе која је у употреби није начин на који се LaTeX користи, а може се и наићи на много фрустрирајућих проблема.
Свакако, хајде да анализирамо проблем. Ако ручно поставите проред са , LaTeX ће избацити грешку
There's no line here to end.
Једноставно додавање празног простора ће то учинити:
Алтернативно, можете користити краћу, али не у потпуности еквиваленту синтаксу:
4 Проред
Да бисте променили размак у целом документу користите команду која је објашњена у Форматирању текста.
Алтернативно, можете користити пакет, који је такође објашњен Форматирању текста. Овај пакет обезбеђује команде , , и , који ће одредити размак за све секције и пасусе док се друга команда не искористи. Осим тога, пакет обезбеђује следећа окружења за промену прореда у документу, која не документују ширину:
* : редови су дупло размакнути;
* : 1,5 размак редова;
* : нормалан проред;
* : прилагодљив проред, на пример .
Погледајте секцију прилагођавање листе за информације о томе како да промените проред у листама.
5 Ручни размаци
LaTeX брине о форматирању, укључујући и размаке. Требало би да избегавате ручну употребу размака колико је то могуће, јер то може довести до веома лошег форматирања.
Контрола размака треба да буде резервисана за макро и пакет писаца. Следи пример брзог референцирања.
Пребацује у нови ред на месту где је команда.
Пребацује у нови ред на месту где је команда; то је краћа верзија претходне наредбе, али га LaTeX понекад редефинише за неколико окружења. Ова наредба такође има вертикални простор као опциони параметар.
Пребацује у нови ред на месту где је команда и додатно забрањује прелом стране након принудне паузе линије. Ова наредба такође има вертикални простор као опциони параметар.
Команда \\ је опциони аргумент који одређује количину додатног вертикалног простора који се убацује испред следећег реда. Ова вредност може бити негативна.
Пребацује у нови ред на месту где је команда. ''Број'' који дајете као аргумент представља приоритет команде у распону од 0 (што ће бити лако игнорисано) до 4 (ради у сваком случају). LaTeX ће покушати да направи најбољи могући распоред. Ако то не може, онда ће одлучити да ли да укључи linebreak или не у складу са приоритетима које сте дали.
(TeX), Прелази у нови ред без довршавања тренутног. То ће довести до грешке ако ви сами не допуните претходну линију, ''то јест'' . Уствари ради исто као и .
(TeX), Почиње нови пасус. То је хоризонтални режим команде, тако да га можете користити само у једном параграфу.
О размацима између страна погледајте Распоред стране. Више детаља о размаку између пасуса (као што је ) можете видети у Дужинама.
6 Специјални пасуси
6.1 Verbatim текст
Постоји неколико начина да се уведе текст који неће бити протумачен од стране компајлера. Ако користите окружење, све што је стављено између ''begin'' и ''end'' команди, биће приказано као што је и откуцано. Сви размаци и нови редови се репродукују као што је дато и текст се приказује у одговарајућем фонту исте ширине. Било која LaTeX команда ће бити игнорисана и сматра се као обичан текст. Ово је идеално за куцање изворног кода програма. Ево једног примера:
Напомена: у окружењу, једина команда која ће бити призната је . Остале ће бити само део текста. Величина фонта у verbatim окружењу се може подесити стављањем команде пре . Ако је то проблем, можете користити пакет, пружајући окружење са истим именом:
Сетите се да додате у вашу преамбулу!
У оквиру окружења, можете користити комадну да бисте се вратили на нормалан фонт.
За писање једначина у окружењу, можете користити и за ограђивање, уместо обичног .
Када користите унутар окружења, имајте на уму да стандардни фонта нема болд TT фонт. Txtfonts има болдован фонт: само додајте након .
Ако желите само да уведете кратку verbatim фразу, не морате да користите цело окружење, али морате команду:
Први знак после је граничник: овде смо употребили "+", али ви можете користити било који знак, осим *; ће дословно одштампати сав текст после тога док не нађе следећи граничник. На пример, код:
ће штампати , игнорисаће ефекат кода који је требао да утиче на текст.
За већу контролу над форматирањем, можете пробати пакет, који обезбеђује окружење (обратите пажњу на велико слово) која вам омогућава да одредите правило око verbatim текста, промените величину фонта па чак и типографске ефекте унутар окружења. Може се користити заједно са пакетом а може додати и референтне бројеве редова (корисно за делове података или програма), а то чак може укључивати све спољне датотеке.
За употребу verbatim-а у beamer-у, оквир треба да се направи "ломљивим": \begin{frame}[fragile] .
6.1.1 Подешавање URLа
И пакет и пакет пружају команду, која прецизно поставља URL, на пример:
ово ће приказати овај URL као што је и откуцан (као што ради и команда), али команда такође мења велике размаке у знакове интерпункције (само у PDFLaTeX, није сигурно у LaTeX+ dvips). То је дизајнирано за Web URL, тако да разуме њихову синтаксу и никада их неће преломити на пола као друге речи, може само косе црте и тачке. Имајте на уму, да су размаци забрањени у URL-у, тако да коришћење размака у аргументима ће довести до грешке, као и коришћење других URL-непожељних симбола.
Када користите ову команду у пакету, URL је "кликљив" у PDF документу, док није повезан са интернетом, и то када се користи само пакет. Такође, када се користи пакет, за уклањање ивица постављених око URL-а, убаците унутар . (Алтернативно можда неће радити јер нису четири нуле.)
Можете да ставите следећи код у преамбулу ако желите да промените стил приказивања URL адреса у нормалном фонту:
Видите још у Хиперлинкови
6.1.2 Списак окружења
Ово је такође проширење verbatim окружења обезбеђено од стране пакета. Обезбеђује додатну функционалност додавања додатних бројева линија дуж текста. Команда: . Обавезни ''first line'' аргумент служи за прецизирање линије од које почиње нумерација. Изборни ''step'' је корак између нумерисаних редова (подразумевани је 1, што значи да ће свака линија бити нумерисана).
Да бисте користили ово окружење, не заборавите да додате у преамбулу документа.
6.2 Вишелинијски коментари
Као што смо видели, једини начин којим вам LaTeX омогућава да додате коментаре је помоћу посебног симбола , који ће коментарисати се све остале линије после сам. Овај приступ заиста штеди доста времена ако желите да убаците дуге коментаре или само коментаришете део вашег документа који желите касније да исправите, осим ако не користите едитор који аутоматски обавља овај процес. Алтернативно, можете користити пакет, који се као и обично убацује у преамбулу:
(такође можете користити и пакет)
можете да користите окружење под називом који ће коментарисати све само. Ево примера:
Имајте на уму да ово неће радити у сложеним окружењима, као што је math на пример. Можда се питате, зашто бих учитао пакет под називом да би имао могућност да додам коментаре? Одговор је једноставан: коментарисан текст компајлер тумачи баш као и verbatim текст, једина разлика је у томе што се verbatim текст уводи у документ, док је коментар само убачен.
Алтернативно, можете дефинисати команду, додавањем следећег у преамбулу тог документа:
Затим, да коментаришете текст, једноставно урадите нешто овако:
Овај приступ међутим може, да направи нежељене размаке у документу, тако да је можда боље користити
Онда ако снабдевате само један аргумент , то има жељени ефекат без додавања додатног размака.
Други недостатак је да се садржај још увек анализира и може евентуално бити проширен, тако да не можете ставити све што желите у њега (као што су LaTeX команде).
6.3 Прескакање деловa извора
Бољи начин за коришћење TeX система за прескакање неког дела извора је коришћење TeX -кондиционала. Типичан пример коришћења
-кондиционал је увек "false".
6.4 Цитирање текста
LaTeX обезбеђује неколико окружења за цитирање текста; имају мале разлике између њих и имају за циљ различите врсте цитата. Сви су они увучени у било коју маргину, а ви ћете морати да додате своје наводнике ако их желите. Окружења су следећа:
;:за кратак цитат, или низ малих цитата, одвојених празним линијама.
;:за употребу дужих цитата, више од једног пасуса, јер увлачи прву линију сваког пасуса.
;:је за цитате где су редови битни, као што је у поезији. Нове строфе се праве са новим редом, а нови редови унутар строфе су означени помоћу команде за нови ред, \\. Ако ред заузима више од једне линије на страни, а затим иду сви остали редови, онда су они увучени све док не буду експлицитно одвојени \\.
6.5 Предговор
У научним публикацијама је обичај да се почне са неким сажетком или предговором који даје читаоцу брз преглед онога шта може да очекује. Погледајте Структуру документа.