% TeX Live documentation. Originally written by Sebastian Rahtz and % Michel Goossens, now maintained by Karl Berry and others. % Public domain. % Permission is granted to copy, distribute and/or modify this % translation under the terms of the adapted version of FreeBSD % documentation licence. % % Дистрибуција овог превода дозвољена је под условима прилагођене % варијанте FreeBSD Documentation License. Tекст лиценце je прилагођен % техничким карактеристикама ове документације. % % http://www.gnu.org/licenses/license-list.html#FreeDocumentationLicenses % http://www.freebsd.org/copyright/freebsd-doc-license.html % ---------------------------------------------------------------------- % Serbian translation of TeX Live Guide: TeX Live 2020. % Copyright (C) 2010--2020 % Nikola Lečić (the translator). % % Redistribution and use in source (LuaLaTeX code) and `compiled' % forms (XDV, SGML, HTML, PDF, PostScript, RTF and so forth) with or % without modification, are permitted provided that the following % conditions are met: % % * Redistributions of source code (LuaLaTeX code) must retain the above % copyright notice, this list of conditions and the following % disclaimer as the first lines of the source file unmodified. % % * Redistributions in `compiled' form (transformed to other DTDs, % converted to PDF, HTML, PostScript, RTF and other formats) must % reproduce the above copyright notice, this list of conditions and % the following disclaimer in the documentation and/or other % materials provided with the distribution. % % THIS DOCUMENTATION IS PROVIDED BY THE TRANSLATOR `AS IS' AND ANY % EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE % IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR % PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE TRANSLATOR BE LIABLE % FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR % CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF % SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR % BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, % WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE % OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS % DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. % ---------------------------------------------------------------------- % See README-SR.txt for the technical details specific to this % translation. % Revision history: % 2020/03/27: fot TeX Live 2020: English screenshots, % = texlive-en.tex r54188 % 2019/10/22: for TeX Live 2019, post festum; % = texlive-en.tex r51878. % 2018/04/08: = texlive-en.tex r47434. % 2018/04/07: a typo. % 2018/04/03: = texlive-en.tex r47197. % 2017/05/14: = texlive-en.tex r44317. % 2017/05/11: for TeX Live 2017: switching to LuaLaTeX, a lot % of tidying up, new screenshots; % = texlive-en.tex r44250. % 2016/05/17: = texlive-en.tex r41185. % 2016/05/12: = texlive-en.tex r40981. % 2016/05/02: for TeX Live 2016: new screenshots, reformatting TOC; % = texlive-en.tex r40820. % 2015/05/06: = texlive-en.tex r37205. % 2015/05/03: for TeX Live 2015: new screenshots; % = texlive-en.tex r37109. % 2014/05/16: some rewording; updated screenshots. % 2014/05/06: for TeX Live 2014: new screenshots; % = texlive-en.tex r33865. % 2013/05/17: for TeX Live 2013: new screenshots; % = texlive-en.tex r30494. % 2012/06/02: for TeX Live 2012: new screenshots; % = texlive-en.tex r26703. % 2011/06/14: = texlive-en.tex r22906; screenshots updated. % 2011/06/07: small corrections. % 2011/06/05: first version for TeX Live 2011; new screenshots; % = texlive-en.tex r22709. % 2010/07/17: New localised screenshots; % a small adjustment for new screenshot. % 2010/07/14: = texlive-en.tex r19386. % 2010/07/13: = texlive-en.tex r19386. % 2010/07/07: = texlive-en.tex r19168. % 2010/07/06: fixed typos, some better wording; = texlive-en.tex r19168. % 2010/06/22: first revision to be included into the TL SVN trunk. The % translated text is equivalent to texlive-en.tex r19070. % ---------------------------------------------------------------------- \documentclass{article} \let\tldocenglish=0 % for live4ht.cfg \usepackage{texlive-sr} \begin{document} % Different font; we want to change geometry a bit, plus % we want footnotes etc.: \newgeometry{hscale=0.75,lines=57,vmarginratio=10:8} \setlength{\droptitle}{-3em} \title{% \huge \textit{\TeX\ Live 2020: Приручник}% \protect\footnote{\textserbian{Превод текста: \textenglish{Karl Berry (ed.), \emph{The \TL{} Guide: \TL{} 2020}}. Ова верзија превода је еквивалент \TeX\ \tmpbox{ко\char"0302 да} из фајла \hbox{\file{texlive-en.tex}}, SVN r54188. Услови под којима можете да користите овај превод дати су на крају документа, као и у фајлу \hbox{\file{texlive-sr.tex}}.}}% } \author{% Карл Бери, уредник\\[.8mm] \url{https://tug.org/texlive/}\\[5.0mm] \small{\textit{превод на српски језик}}\\[.9mm] \small{Никола Лечић}\\ \scriptsize{\protect\email{nikola.lecic@anthesphoria.net}} } \date{март 2020} \maketitle \tableofcontents \vfill \pagebreak \section{Увод} \label{sec:intro} \subsection{\protect\TeX\protect\ Live и \protect\TeX\protect\ Collection} У овом документу су описане главне могућности софтверске дистрибуције \TL{}, која се састоји од \TeX{}-а и програма који су повезани са њим, и која се прави за \GNU/Linux и друге варијанте Unix-а, \MacOSX и \Windows{}. \TL{} се може преузети са Интернета или добити преко \TK{} \DVD-ја који групе корисника \TeX{}-а дистрибуирају својим члановима, и на разне друге начине. Одељак \ref{sec:tl-coll-dists} укратко описује садржај \DVD-ја. \TL{} и \TK{} су резултат удружених напора многих група корисника \TeX{}-а. Овај документ описује пре свега \tmpbox{са\char"0302 м} \TL{}. У \TL{} су укључени програми \TeX{}, \LaTeXe{}, \ConTeXt, \MF, \MP, \BibTeX{} и многи други, обимна колекција макроа, фонтова и документације, као и подршка за припрему текста на много разних писама и језика из свих делова света. Кратак преглед најважнијих промена у овом издању \TL{}-а налази се на крају документа, у одељку~\ref{sec:history} (стр.~\pageref{sec:history}). \htmlanchor{platforms} \subsection{Подржани оперативни системи} \label{sec:os-support} \TL{} садржи унапред компајлиране програме за многе варијанте Unix-а, укључујући \GNU/Linux и \MacOSX. Такође, ту су и верзије програма за Cygwin. Пошто је изворни код укључен у дистрибуцију, програми се могу компајлирати и на платформама\footnote{\textserbian{\emph{Платформа} представља комбинацију архитектуре и оперативног система: нпр. оперативни систем FreeBSD који ради на 64-битном Intel или AMD процесору јесте платформа по имену \pkgname{amd64-freebsd}. Развојни тим \TL{}-a се одлучио да овом изразу да\char"0302\ предност у односу на израз „оперативни систем“ и ми ћемо следити ту одлуку колико је то могуће, мада не у свим случајевима (пре свега у српском преводу програма\char"0304\ \prog{install-tl} и \prog{tlmgr}, у којима би употреба израза \emph{архитектура} могла лако да збуни корисника пошто тамо није могуће дати овакво објашњење) --- \emph{прим. прев.}}} за које немамо унапред припремљене бинарне фајлове. Што се тиче \Windows{}-а, подржани су само \Windows{}~7 и касније верзије. \Windows{} \textenglish{Vista} ће са великом вероватноћом и даље радити за највећи број ствари. На \Windows{}-у~XP и старијим верзијама, међутим, \TL{} нећете моћи ни да инсталирате. \TL{} не садржи посебне 64-битне програме за \Windows{}; уместо тога, 32-битни програми би требало да раде на 64-битним системима. Погледајте одељек~\ref{sec:tl-coll-dists} ако Вам је потребно више информација о алтернативним решењима за \Windows{} и \MacOSX. \subsection{Основна инсталација \protect\TL{}-а} \label{sec:basic} \TL{} се може инсталирати са \DVD{}-ја или преко Интернета (\url{https://tug.org/texlive/acquire.html}). Сам програм за инсталацију који ради преко мреже је мали и скида све што је задато са Интернета. Програм за инсталацију са \DVD{}-ја Вам омогућава да инсталирате \TL{} на локални диск. \TL{} се не може директно покретати са \DVD{}-ја (као ни из \DVD{} \code{.iso} одраза), али зато можете да припремите преносиву радну верзију на нпр. USB-диску (погледајте одељак~\ref{sec:portable-tl}). Инсталација је детаљно описана у одељцима који следе (стр.~\pageref{sec:install}); укратко, поступак изгледа овако: \begin{itemize*} \item Инсталациона скрипта се зове \prog{install-tl}. Она може да ради у графичком режиму ако се позове са опцијом \code{-gui} (подразумевани режим на Win\-\hbox{dows-у}, у текстуалном режиму ако се позове са \code{-gui=text} (подразумевани режим на свим другим системима). На операционим системима сродним Unix-у и даље су доступни Perl/Tk и „wizard“ режими (ако је Perl/Tk инсталиран); одељак \ref{sec:wininst} садржи још неколико важних информација које се тичу \Windows{}-а. \item Један од инсталираних програма је и \TL\ Manager, који се позива помоћу \prog{tlmgr}. Као и програм за инсталацију, он може да се користи и у графичком (\GUI{}) и у текстуалном режиму. Можете га користити да инсталирате и деинсталирате пакете и да обавите разне конфигурационе задатке. \end{itemize*} \htmlanchor{security} \subsection{На шта треба обратити пажњу што се тиче сигурности} \label{sec:security} Према нашем најдубљем знању и уверењу, основни \TeX\ програми који чине језгро \TL{}-a изузетно су робусни (и увек су били такви). Међутим, допунски програми који су укључени у \TeX\ Live нису нужно на истом нивоу, упркос великим напорима. Као и увек, требало би да будете опрезни када покрећете програме да обрађују непоуздане улазне податке; најсигурније што можете да урадите јесте да то увек радите у новом поддиректоријуму или да користите \code{chroot}. Потреба за опрезом је нарочито важна на \Windows{}-у, пошто \Windows{} обично тражи програме у текућем директоријуму пре него на било ко другом месту, без обзира на путању за претрагу коју задаје корисник. Ово отвара широку лепезу могућности\char"0304\ за напад. Ми смо санирали многе сигурносне пропусте, али неки превиди су без сумње и даље ту, нарочито у програмима који нам долазе са стране. Стога препоручујемо да проверите да ли радни директоријум садржи сумњиве, пре свега извршне фајлове (бинарне или скрипте). Њих обично нема, и свакако не би требало да се створе обичном обрадом неког документа. Коначно, \TeX\ (и пратећи програми) често стварају нове фајлове када обрађују документ, што је особина која се може злоупотребити на много разних начина. Да поновимо, обрада непознатих докумената у новом поддиректоријуму је најсигурније што можете да урадите. Осим тога, важно је и проверити да ли је преузети материал идентичан материјалу са сервера. Програм \prog{tlmgr} (section~\ref{sec:tlmgr}) аутоматски обавља криптографску верификацију преузетог материјала уколико је доступан \prog{gpg} (GNU Privacy Guard); \prog{gpg} се не дистрибуира у оквиру \TL{}; погледајте \url{https://texlive.info/tlgpg/}. \subsection{Помоћ у раду} \label{sec:help} Заједница корисника \TeX{}-а је активна и пријатељски расположена, тако да се и на најозбиљнија питања на крају нађе одговор. Међутим, ова подршка је неформалне природе будући да долази од волонтера\char"0304\ и случајних читалаца мејлинг-листа, тако да је нарочито важно да „урадите домаћи задатак“ пре него што нешто питате. (Ако више волите загарантовану комерцијалну подршку, можете се у потпуности одрећи \TL{}-а и купити одговарајући систем; на страници \url{https://tug.org/interest.html#vendors} постоји списак таквих продаваца.) Ово је листа расположивих ресурса датих отприлике редоследом по коме препоручујемо да их користите: \begin{description} \item [Страница за почетнике] Ако сте нови у \TeX-у, страница \url{https://tug.org/begin.html} нуди кратак увод у систем. \item [\TeX{} FAQ] (питања везана за \TeX{} која се често постављају) представља огромну збирку одговора на све врсте питања, од најосновнијих до најсложенијих. Та збирка је укључена у \TL{} и налази се у директоријуму \OnCD{texmf-dist/doc/generic/FAQ-en/}, а доступна је и на Интернету преко \url{https://texfaq.org}. Молимо Вас да одговоре прво овде потражите. \item [\TeX{} Catalogue] (\TeX{}-каталог) Ако тражите неки специфичан пакет, фонт или програм, \TeX{}-каталог је место на коме треба отпочети претрагу. То је огромна колекција свих ствари које имају везе са \TeX{}-ом. Погледајте \url{https://ctan.org/pkg/catalogue/}. \item [\TeX{} ресурси на Интернету] Интернет-страница \url{https://tug.org/interest.html} садржи многе линкове који имају везе са \TeX{}-ом, нарочито на бројне књиге, приручнике и чланке о свим аспектима система. \item [базе знања и помоћ] Најважнија места на којима можете потражити информације о \TeX-у су портали \url{https://latex.org} (форум корисника \LaTeX{}-a) и \url{https://tex.stackexchange.com} (сајт са питањима и одговорима посвећеним \TeX-у који одржавају сами корисници), Usenet група \url{news:comp.text.tex} и мејлинг-листа \email{texhax@tug.org}. Архиве ових ресурса садрже велики број питања и одговора прикупљених током много година; претраживе архиве доступне су преко \url{http://groups.google.com/group/comp.text.tex/topics} и \url{https://tug.org/mail-archives/texhax}. Такође, обична претрага Интернета никад није наодмет. \item [постављање питања] Ако не можете да пронађете одговор, можете да поставите питање директно на порталима \url{https://latex.org} и \url{https://tex.stackexchange.com/}, или на \dirname{comp.text.tex} помоћу Google-овог или сопственог newsreader-а, а такође и на мејлинг-листи \email{texhax@tug.org} путем електронске поште. Пре него што поставите питање, \emph{молимо Вас} да прочитате овај текст из FAQ колекције како бисте увећали шансе да добијете користан одговор: \url{https://texfaq.org/FAQ-askquestion}. \item [подршка везана за \TL{}] Ако желите да пријавите грешку или ако имате предлоге и коментаре везане за дистрибуцију, инсталацију или документацију \TL{}-а, мејлинг-листа је \email{tex-live@tug.org}. Међутим, ако се Ваше питање тиче употребе неког посебног програма укљученог у \TL{}, молимо Вас да пишете особи која тренутно одржава тај програм или на одговарајућу мејлинг-листу. Врло често, покретање програма са параметром \code{-{}-help} даје адресу на коју треба пријавити грешке. \end{description} С друге стране, ту је пружање помоћи онима који постављају питања. Поменути ресурси су отворени за сваког, па стога будите слободни да се прикључите; почните да читате и помозите где можете. % don't use \TL so the \uppercase in the headline works. Also so % tex4ht ends up with the right TeX. Likewise the \protect's. \section{Преглед \protect\TeX\protect\ Live{}-а} \label{sec:overview-tl} Овај одељак описује садржај дистрибуције \TK{} и њеног саставног дела, \TL{}-а. \subsection{\protect\TeX\protect\ Collection: \protect\TL, pro\protect\TeX{}t, Mac\protect\TeX} \label{sec:tl-coll-dists} \TK{} \DVD{} обухвата: \begin{description} \item [\TL] Комплетан \TeX{} систем који се може инсталирати на диск. Интернет-страница: \url{https://tug.org/texlive/}. \item [Mac\TeX] Варијанта \TL{}-а за \MacOSX (Apple сада овај систем назива macOS, али ми ћемо у овом документу наставити да користимо старо име); укључује инсталациони програм писан специјално за \MacOSX\ и још неке Mac апликације. Интернет-страница: \url{https://tug.org/mactex/}. \item [pro\TeX{}t] Рађен као проширење \Windows{} дистрибуције \MIKTEX, \ProTeXt\ укључује неколико допунских алатки и поједностављује инсталацију. Он је у потпуности независан од \TL{}-а и има сопствена упутства за инсталацију. Интернет-страница: \url{https://tug.org/protext}. \item [CTAN] Сајт-копија (mirror) репозиторијума \CTAN{} (\url{http://www.ctan.org/}). \end{description} Лиценце које одређују услове умножавања \CTAN{}-а и пакета \pkgname{protext} нису нужно исте као у \TL{}-у, па стога будите опрезни када их редистрибуирате или преправљате. \subsection{\protect\TL{}: директоријуми највишег нивоа} \label{sec:tld} Ево списка и кратких описа директоријума\char"0304\ највишег нивоа у \TL{} инсталацији: \begin{ttdescription} \item[bin] Програми \TeX{} система, груписани по платформама. % \item[readme-*.dir] Кратак преглед \TL{}-a и корисни линкови на разним језицима, у \HTML{} и текстуалном формату. % \item[source] Изворни \tmpbox{ко\char"0302 д} свих програма који су укључени у \TL{}, укључујући средишње \TeX{} дистрибуције засноване на \Webc{}-у. % \item[texmf-dist] Главни директоријум. Погледајте опис променљиве \dirname{TEXMFDIST} у следећем одељку. % \item[tlpkg] Скрипте, програми и подаци потребни за одржавање инсталације, као и фајлови специфични за \Windows{}. \end{ttdescription} Што се тиче документације, од помоћи може да буде исцрпна колекција линкова у фајлу \OnCD{doc.html}, који се налази у директоријуму највишег нивоа. Документација за готово све (пакети, формати, фонтови, приручници за програме, man-странице, Info-фајлови) налази се у \dirname{texmf/doc}. Документација за \TeX\ пакете и формате налази се у \dirname{texmf-dist/doc}. Можете да употребите програм \cmdname{texdoc} ако желите да пронађете било који део документације. Документација о самој дистрибуцији \TL\ налази се у \dirname{texmf/doc/texlive} и доступна је на неколико језика: \begin{itemize*} \item{енглески:} \OnCD{texmf-dist/doc/texlive/texlive-en} \item{италијански:} \OnCD{texmf-dist/doc/texlive/texlive-it} \item{јапански:} \OnCD{texmf-dist/doc/texlive/texlive-ја} \item{кинески:} \OnCD{texmf-dist/doc/texlive/texlive-zh-cn} \item{немачки:} \OnCD{texmf-dist/doc/texlive/texlive-de} \item{пољски:} \OnCD{texmf-dist/doc/texlive/texlive-pl} \item{руски:} \OnCD{texmf-dist-dist/doc/texlive/texlive-ru} \item{српски:} \OnCD{texmf-dist/doc/texlive/texlive-sr} (овај документ) \item{француски:} \OnCD{texmf-dist/doc/texlive/texlive-fr} \item{чешки и словачки:} \OnCD{texmf-dist/doc/texlive/texlive-cz} \item{шпански:} \OnCD{texmf-dist/doc/texlive/texlive-es} \end{itemize*} \subsection{Садржај директоријума texmf} \label{sec:texmftrees} Овај одељак даје списак унапред дефинисаних променљивих које одређују распоред података унутар директоријума texmf, сврху којој служе, као и њихов подразумевани положај и својства унутар \TL{}-а. Команда \texttt{tlmgr~conf} приказује вредности ових променљивих тако да лако можете да видите на који директоријум (дрво) на Вашој инсталацији оне упућују. Сви ови директоријуми (дрвета), укључујући и лични, треба да поштују \TDS\ (\emph{структуру \TeX{} директоријума}, односно \TeX{} \textenglish{Directory Structure} --- \url{https://tug.org/tds}), са свим безбројним поддиректоријумима карактеристичним за њу, иначе може да се деси да се неки фајлови не могу пронаћи. Одељак~\ref{sec:local-personal-macros} (стр.~\pageref{sec:local-personal-macros}) детаљно се бави овом темом. Претрага се врши од последњег наведеног директоријума уназад. Другим речима, претрага се завршава ако је фајл пронађен у директоријуму који је наведен касније у листи. \begin{ttdescription} \item [TEXMFDIST] Дрво које садржи готово све фајлове оригиналне дистрибуције: конфигурационе фајлове, помоћне скрипте, пакете, фонтове, итд. (Најважнији изузетак су програми који зависе од операционог система, и који су смештени у паралелни директоријум \code{bin/}.) \item [TEXMFSYSVAR] (Глобално важеће) дрво које користе \verb+texconfig-sys+, \verb+updmap-sys+, \verb+fmtutil-sys+ и \verb+tlmgr+ за чување (кешираних) података које разни програми користе током рада, као што су формати и мапе. \item [TEXMFSYSCONFIG] (Глобално важеће) дрво које користе апликације \verb+texconfig-sys+, \verb+updmap-sys+ и \verb+fmtutil-sys+ за чување измењених конфигурационих података. \item [TEXMFLOCAL] Дрво које администратори могу да користе за инсталацију додатних или надограђених макроа, фонтова, итд; садржај овог дрвета важи за цео систем. \item [TEXMFHOME] Дрво које корисници могу да користе за своје личне инсталације додатних или надограђених макроа, фонтова, итд; вредност ове променљиве динамички се прилагођава положају личног директоријума сваког појединог корисника. \item [TEXMFVAR] (Лично корисниково) дрво у коме апликације \verb+updmap-user+ и \verb+fmtutil-user+ чувају аутоматски направљене (кеширане) податаке које разни програми користе током рада, као што су формати и мапе. \item [TEXMFCONFIG] (Лично корисниково) дрво које апликације \verb+texconfig+, \verb+updmap-sys+ и \verb+fmtutil-sys+ користе за чување измењених конфигурационих података. \item [TEXMFCACHE] Дрво (или више дрвета) које \ConTeXt\ MkIV и \LuaLaTeX{} користе за чување (кешираних) радних података. Подразумевана вредност ове променљиве је \code{TEXMFSYSVAR}, а ако се тамо не могу уписивати подаци, онда се узима вредност \code{TEXMFVAR}. \end{ttdescription} Подразумевана структура директоријума изгледа овако: \begin{description} \item[корен система] може да садржи више различитих издања \TL{}-а (подразумевано место на Unix-има je \texttt{/usr/local/texlive}): \begin{ttdescription} \item[2019] Претходно издање. \item[2020] Тренутно издање. \begin{ttdescription} \item [bin] ~ \begin{ttdescription} \item [i386-freebsd\ \ \ \ ] програми за FreeBSD \item [i386-linux\ \ \ \ \ \ ] програми за \GNU/Linux \item [...] \item [universal-darwin] програми за \MacOSX \item [x86\_64-darwin\ \ \ ] програми за \MacOSX \item [win32\ \ \ \ \ \ \ \ \ \ \ ] програми за \Windows{} \end{ttdescription} \item [texmf-dist\ \ ] \envname{TEXMFDIST} и \envname{TEXMFMAIN} \item [texmf-var \ \ ] \envname{TEXMFSYSVAR}, \envname{TEXMFCACHE} \item [texmf-config] \envname{TEXMFSYSCONFIG} \end{ttdescription} \item [texmf-local] \envname{TEXMFLOCAL}, заједнички за сва издања. \end{ttdescription} \item[корисников лични директоријум] (\texttt{\$HOME} или \texttt{\%USERPROFILE\%}) \begin{ttdescription} \item[.texlive2019] Лични направљени и конфигурациони подаци за претходно издање. \item[.texlive2020] Лични направљени и конфигурациони подаци за тренутно издање. \begin{ttdescription} \item [texmf-var\ \ \ ] \envname{TEXMFVAR}, \envname{TEXMFCACHE} \item [texmf-config] \envname{TEXMFCONFIG} \end{ttdescription} \item[texmf] \envname{TEXMFHOME} Лични макрои итд. \end{ttdescription} \end{description} \subsection{Проширења \protect\TeX-а} \label{sec:tex-extensions} Кнутов [Knuth] оригинални \TeX{} је замрзнут: осим ретких поправки грешака, у њега се не уносе никакве исправке. Изворни \TeX{} је још увек присутан у \TL-у као програм \prog{tex}, и тако ће и остати у будућности. \TL{} садржи неколико проширених варијанти \TeX-а (познатих као \TeX\ engines --- „\TeX\ мотори“): \begin{description} \item [\eTeX] додаје неколико нових примитива\char"0304\ \label{text:etex} (којe се односе на проширење макроа, читање симбола\char"0304, класе ознака, додатне могућности за отклањање грешака и још пуно тога), као и проширење звано \TeXXeT{} које служи за припрему докумената са садржајем на језицима који се пишу са лева на десно, уз оне који се пишу са десна на лево. У подразумеваном режиму, \eTeX{} је 100\% компатибилан са стандардним \TeX-ом. Погледајте \OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. \item [pdf\TeX] је изграђен на проширењима које је донео \eTeX, додајући на њих подршку за прављење докумената директно у PDF формату (поред уобичајеног \dvi{}) и много проширења невезаних за излаз. Ово је програм који се користи за већину формата, као што су \prog{etex}, \prog{latex}, \prog{pdflatex}. Интернет страница пројекта је \url{http://www.pdftex.org/}. Упутство за употребу је \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}, а примери који демонстрирају неке од његових могућности налазе се у \OnCD{texmf-dist/doc/pdftex/samplepdftex/samplepdf.tex}. \item [\LuaTeX] је предвиђен да буде наследник pdf\TeX-а, и углавном је (мада не у потпуности) компатибилан са својим претходницима. Намера је такође да он буде функционални надскуп Aleph-а (погледајте ниже), премда нема намере да се подржи савршена компатибилност. Уграђени интерпретер језика Lua (\url{https://www.lua.org/}) омогућава елегантна решења за многе тешко решиве проблеме у \TeX{}-у. Када се позива као \filename{texlua}, функционише као самостални Lua интерпретер и као такав је у употреби унутар \TL-а. Интернет-страница пројекта је \url{http://www.luatex.org/} а приручник је \OnCD{texmf-dist/doc/luatex/base/luatex.pdf}. \item [\XeTeX] додаје подршку за унос текста према Unicode стандарду уз употребу OpenType фонтова; \XeTeX\ може да користи фонтове који већ постоје на систему; ова подршка је урађена уз употребу спољних библиотека. Погледајте \url{https://tug.org/xetex}. \item [\OMEGA\ (Omega)] је заснован на Unicode стандарду (сваки знак заузима 16 бита), па стога подржава рад са скоро свим светским писмима у исто време. Он подржава и тзв. „\OMEGA{} процесе превођења“ („\textenglish{\OMEGA{}~Translation Processes}“ --- OTP) за извођење сложених транформација над произвољним улазом. Omega није више укључен у \TL{} као одвојени програм; одржавамо само Aleph (погледајте испод). \item [Aleph] комбинује проширења која су донели \OMEGA\ и \eTeX. Погледајте \OnCD{texmf-dist/doc/aleph/base}. \end{description} \subsection{Други истакнути програми у \protect\TL} Ево неколико других важних програма који су укључени у \TL{} и који се често користе: \begin{cmddescription} \itemsep=-.2em \item [bibtex, biber] подршка за прављење библиографија\char"0304. \item [makeindex, xindy] подршка за прављење индекса\char"0304. \item [dvips] пребацује \dvi{} формат у \PS{}. \item [xdvi] програм за приказивање \dvi{} формата у графичком систему X (X Window System). \item [dviconcat, dviselect] рад са документима у \dvi{} формату. \item [dvipdfmx] пребацује \dvi{} у PDF; служи као алтернатива приступу који омогућава pdf\TeX\ (објашњено у претходном одељку). \item [psselect, psnup\ldots{}] алатке за баратање \PS{} документима. \item [pdfjam, pdfjoin\ldots{}] алатке за баратање PDF документима. \item [context, mtxrun] програми за Con\TeX{}t и PDF. \item [htlatex, \ldots] \cmdname{tex4ht}: конвертор из \AllTeX{} у HTML, XML и друге формате. конвертор из \TeX{}-а у HTML, XML и много других формата. \end{cmddescription} \htmlanchor{installation} \section{Инсталација} \label{sec:install} \subsection{Покретање инсталационог програма} \label{sec:inst-start} За почетак, потребан Вам је \TK{} \DVD{} или програм за инсталирање \TL{}-а преко Интернета (\textenglish{net installer}). Пронађите инсталациону скрипту: она се зове \filename{install-tl} на Unix-има, а \filename{install-tl-windows.bat} на \Windows{}-у. На страници \url{https://tug.org/texlive/acquire.html} налазе се додатне информације како можете да дођете до софтвера. \begin{description} \item [Net installer, .zip или .tar.gz:] Скините га са \CTAN-а, налази се у директоријуму \dirname{systems/texlive/tlnet}; преко путање \url{http://mirror.ctan.org/systems/texlive/tlnet} требало би да будете аутоматски пребачени на географски најближи сајт-копију (mirror) који садржи најновије верзије целокупног садржаја. Можете да преузмете \filename{install-tl.zip}, који се може користити и под Unix-ом и под \Windows{}-ом, или значајно мањи \filename{install-unx.tar.gz} (само за Unix). Када распакујете фајл који сте преузели, у поддиректоријуму \dirname{install-tl} наћи ћете фајлове \filename{install-tl} и \filename{install-tl-windows.bat}. \item [Net installer, \Windows{} .exe:] Скините га са \CTAN-а као и у претходном случају, и покрените двоструким кликом миша. Покренуће се иницијални инсталер; погледајте слику~\ref{fig:nsis}. Он нуди две опције: „Инсталирај“ („\textenglish{Install}“) и „Само распакуј“ („\textenglish{Unpack only}“). \item [\TeX{} Collection \DVD:] Уђите у директоријум \dirname{texlive} на \DVD-ју. На \Windows{}-у се инсталациони програм обично сам покреће када убаците \DVD. \DVD можете добити ако постанете члан неке групе корисника \TeX-а (наша срдачна препорука да урадите тако, погледајте \url{https://tug.org/usergroups.html}), тако што ћете га купити (\url{https://tug.org/store}), или тако што ћете сами нарезати \ISO\ фајл. На већини система можете и да директно приступите садржају \ISO{} одраза („\textenglish{mount}“). Ако после инсталације преко \DVD{}-ја или \ISO{} одраза желите да наставите са надоградњама преко Интернета, погледајте одељак~\ref{sec:dvd-install-net-updates}. \end{description} \begin{figure}[tb] \begin{center} \tlpng{nsis_installer}{.6\linewidth} \caption{Иницијални прозор .exe инсталера на \Windows{}-у}\label{fig:nsis} \end{center} \end{figure} Без обзира на то који извор користите, покреће се један исти инсталер. Највидљивија разлика је то што преко мреже („\textenglish{Net installer}“) добијате пакете који су доступни у том тренутку. За разлику од тога, \DVD{} и \ISO{} фајлови се не освежавају у периоду између главних издања. Ако за преузимање са Интернета морате да користите прокси, треба да у сагласности са њим подесите фајл \filename{~/.wgetrc}, одговарајуће системске променљиве програма \prog{Wget} (\url{https://www.gnu.org/software/wget/manual/html_node/Proxies.html}), или било који еквивалентни програм који вам одговара. Ово нема никаквог значаја ако инсталирате са \DVD{}-ја или из \ISO{} фајла. Наредни одељци детаљно објашњавају како се инсталациони програм користи. \subsubsection{Unix} Од сада па надаље, \texttt{>} означава „промпт“ („shell prompt“); оно што уноси корисник приказано је \Ucom{подебљаним} \Ucom{словима}. Скрипта \prog{install-tl} је написана у језику Perl. Најједноставнији начин да је покренете на Unix системима изгледа овако: \begin{alltt} > \Ucom{perl /путања/до/програма/за/инсталацију/install-tl} \end{alltt} (Уместо тога, можете је просто позвати са \Ucom{perl /путања/до/инсталера/install-tl} ако је скрипта извршни фајл --- има „права на извршавање“, речено Unix језиком --- итд; нећемо понављати све ове варијације.) Може се десити да је потребно да повећате прозор свог терминала како би у њега стао цео садржај програма (слика~\ref{fig:text-main}). Ако желите да обавите инсталацију у графичком („GUI“) режиму (слика~\ref{fig:advanced-lnx}), биће Вам потребан модул \dirname{Perl::TK} компајлиран са подршком XFT. Када све буде спремно, откуцајте: \begin{alltt}> \Ucom{perl install-tl -gui} \end{alltt} Старе \code{wizard} и \code{perltk} опције су и даље доступне. За њих је потребан модул \dirname{Perl::Tk} компајлиран са подршком XFT; то је обично тако на \GNU/Linux-у, али није нужно случај на другим системима.% \footnote{\textserbian{Ово нарочито важи ако користите ћириличне верзије програма, укључујући и српску; фонтови могу бити читљиви, али ће изгледати веома лоше --- \emph{прим. прев.}}} Ако желите да видите комплетан списак разних опција, откуцајте: \begin{alltt}> \Ucom{perl install-tl -help} \end{alltt} \textbf{Корисничка овлашћења на Unix системима:} Инсталациони програм \TL{}-а ће поштовати Ваш \code{umask} који важи у време инсталације. Дакле, ако желите да инсталирани систем користе и други корисници, побрините се да подесите одговарајуће дозволе, на пример, \code{umask 002}. Исцрпније информације о команди \code{umask} можете пронаћи у документацији на Вашем систему. \textbf{Посебни обзири везани за Cygwin:} За разлику од других система компатибилних са Unix-ом, Cygwin у свом стандардном облику не садржи све неопходне програме који су потребни инсталационом програму \TL{}-а. Одељак~\ref{sec:cygwin} посвећен је овој теми. \subsubsection{\MacOSX} \label{sec:macosx} Као што је поменуто у одељку~\ref{sec:tl-coll-dists}, за \MacOSX је припремљена посебна дистрибуција по имену Mac\TeX\ (\url{https://tug.org/mactex}). Препоручујемо да на \MacOSX систему користите изворни инсталациони програм уместо оног који је укључен у \TL\ зато што ће Mac\TeX\ верзија урадити и нека додатна подешавања специфична за \MacOSX, пре свега она која Вам омогућавају да се лако пребацујете са једне на другу дистрибуцију \TeX-а (Mac\TeX, Fink, MacPorts\ldots{}) које поштују тзв. \TeX{}Dist структуру података. Mac\TeX\ је строго заснован на \TL-у и главни \TeX\ директоријуми су у потпуности исти. Mac\TeX\ на ту структуру додаје неколико допунских директоријума са документацијом и апликацијама специфичним за Mac. \subsubsection{Windows}\label{sec:wininst} Ако користите нераспаковани .zip фајл преузет са Интернета или ако се инсталациони програм са \DVD-ја не отвори аутоматски, двапут кликните \filename{install-tl-windows.bat}. Инсталациони програм се може покренути и са командне линије (command-prompt). У наставку текста, \texttt{>} ће означавати промпт; оно што куца корисник биће штампано \Ucom{подебљаним} \Ucom{словима}. Када уђете у директоријум у коме се налази инсталациони програм, откуцајте: \begin{alltt}> \Ucom{install-tl-windows} \end{alltt} Можете да употребите и апсолутну путању, на пример: \begin{alltt}> \Ucom{D:\bs{}texlive\bs{}install-tl-windows} \end{alltt} Овај конкретан пример значи да користите \TK\ \DVD и да је ознака оптичког драјва на Вашем компјутеру \dirname{D:}. Слика~\ref{fig:wizard-w32} приказује иницијални екран инсталера у графичком (GUI) режиму; овај режим се на \Windows{}-у подразумева. Ако хоћете да инсталирате у текстуалном режиму, откуцајте: \begin{alltt}> \Ucom{install-tl-windows -no-gui} \end{alltt} Комплетан списак опција\char"0304\ добићете ако откуцате: \begin{alltt}> \Ucom{install-tl-windows -help} \end{alltt} \begin{figure}[tb] \begin{boxedverbatim} Installing TeX Live 2020 from: ... Platform: x86_64-linux => 'GNU/Linux on x86_64' Distribution: live (compressed) Directory for temporary files: /tmp ... Detected platform: GNU/Linux on x86_64 binary platforms: 1 out of 16 set installation scheme: scheme-full customizing installation collections 40 collections out of 41, disk space required: 6536 MB directories: TEXDIR (the main TeX directory): /usr/local/texlive/2020 ... options: [ ] use letter size instead of A4 by default ... set up for portable installation Actions: start installation to hard disk

save installation profile to 'texlive.profile' and exit help quit \end{boxedverbatim} %\vskip-\baselineskip \caption{Главни екран инсталационог програма (\GNU/Linux)}\label{fig:text-main} \end{figure} \begin{figure}[tb] %\tlpng{tl2019-install-tl-basic-sr}{.6\linewidth} \tlpng{advanced-lnx}{.6\linewidth} \caption{Основни екран инсталационог програма (\GNU/Linux);\\ ако притиснете дугме „Напредно“ добићете нешто налик на слику~\ref{fig:advanced-lnx}}\label{fig:wizard-w32} \end{figure} \begin{figure}[tb] %\tlpng{tl2019-install-tl-advanced-sr}{\linewidth} \tlpng{basic-w32}{.6\linewidth} \caption{Напредна верзија инсталационог програма у графичком (GUI) режиму (Windows)}\label{fig:advanced-lnx} \end{figure} \htmlanchor{cygwin} \subsubsection{Cygwin} \label{sec:cygwin} Пре него што почнете инсталацију, покрените Cygwin-ов програм \filename{setup.exe} како бисте инсталирали пакете \filename{perl} и \filename{wget} уколико не постоје на Вашем систему. Препоручују се и ови додатни пакети: \begin{itemize*} \item \filename{fontconfig} [потребан за \XeTeX\ и \LuaTeX] \item \filename{ghostscript} [потребан за више разних програма] \item \filename{libXaw7} [потребан за \prog{xdvi}] \item \filename{ncurses} [обезбеђује команду \code{clear} коју користи инсталациони програм] \end{itemize*} \subsubsection{Инсталација у текстуалном режиму} Слика~\ref{fig:text-main} приказује главни екран инсталационог програма у текстуалном режиму рада на Unix-у. Текстуални режим је стандард на Unix-у. У овом режиму, инсталациони програм се искључиво ослања на командну линију; употреба курзора није могућа. На пример, не можете да употебите дугме „Тab“ да се премештате од поља до поља за избор и унос текста. Просто откуцате нешто на промпту (разлика између великих и малих слова је битна) и притиснете Enter; тада се цео екран терминала поново испуњава измењеним садржајем. Текстуални интерфејс је с разлогом овако примитиван: он је дизајниран да ради на што је год могуће већем броју оперативних система, укључујући и оне које садрже само минималну верзију Perl-а. \subsubsection{Инсталација у графичком режиму} \label{sec:graphical-inst} Инсталациони програм у графичком режиму почиње рад са само неколико опција; погледајте слику~\ref{fig:wizard-w32}. Овај режим рада се може позвати помоћу \begin{alltt}> \Ucom{install-tl -gui} \end{alltt} Дугме „Напредно“ („Advanved“) отвара вам доступ ка већини опција из текстуалне верзије; погледајте слику~\ref{fig:advanced-lnx}. \subsubsection{Старе верзије инсталације} Стари режими \texttt{perltk}/\texttt{expert} и \texttt{wizard} и даље су доступни на системима са инсталираним Perl/Tk. Они се могу изричито позвати помоћу \texttt{-gui=perltk} и \texttt{-gui=wizard}. \subsection{Употреба инсталационог програма} \label{sec:runinstall} Инсталер је направљен са намером да буде мање-више јасан по себи, али ево неколико напомена о разним опцијама. \subsubsection{Мени за избор платформе (само на Unix-у)} \label{sec:binary} \begin{figure}[tb] \begin{boxedverbatim} Available platforms: =============================================================================== a [ ] Cygwin on Intel x86 (i386-cygwin) b [ ] Cygwin on x86_64 (x86_64-cygwin) c [ ] MacOSX current (10.13-) on x86_64 (x86_64-darwin) d [ ] MacOSX legacy (10.6-) on x86_64 (x86_64-darwinlegacy) e [ ] FreeBSD on x86_64 (amd64-freebsd) f [ ] FreeBSD on Intel x86 (i386-freebsd) g [ ] GNU/Linux on ARM64 (aarch64-linux) h [ ] GNU/Linux on ARMv6/RPi (armhf-linux) i [ ] GNU/Linux on Intel x86 (i386-linux) j [X] GNU/Linux on x86_64 (x86_64-linux) k [ ] GNU/Linux on x86_64 with musl (x86_64-linuxmusl) l [ ] NetBSD on x86_64 (amd64-netbsd) m [ ] NetBSD on Intel x86 (i386-netbsd) o [ ] Solaris on Intel x86 (i386-solaris) p [ ] Solaris on x86_64 (x86_64-solaris) s [ ] Windows (win32) \end{boxedverbatim} \caption{Мени за избор платформе (тј. архитектуре и оперативног система) за програме}\label{fig:bin-text} \end{figure} Слика~\ref{fig:bin-text} приказује мени са подржаним платформама (в.~фусноту 1 за објашњење израза „платформа“) за програме, у текстуалном режиму. Подразумева се да ће бити инсталиране само верзије програма за тип процесора и оперативни систем на коме сте покренули инсталацију. Можете, међутим, изабрати и да инсталирате верзије програма и за неке друге платформе. Ово може да буде корисно ако се \TeX\ заједнички користи на мрежи са разнородним машинама или на компјутерима који на себи имају неколико различитих оперативних система. \subsubsection{Избор компоненти} \label{sec:components} \begin{figure}[tbh] \begin{boxedverbatim} Select scheme: =============================================================================== a [X] full scheme (everything) b [ ] medium scheme (small + more packages and languages) c [ ] small scheme (basic + xetex, metapost, a few languages) d [ ] basic scheme (plain and latex) e [ ] minimal scheme (plain only) f [ ] ConTeXt scheme g [ ] GUST TeX Live scheme h [ ] infrastructure-only scheme (no TeX at all) i [ ] teTeX scheme (more than medium, but nowhere near full) j [ ] custom selection of collections \end{boxedverbatim} \caption{Мени са шемама}\label{fig:scheme-text} \end{figure} Слика~\ref{fig:scheme-text} приказује \TL-ов мени са шемама; преко њега можете изабрати „шему“, тј. један кохерентан скуп колекција пакета. Подразумевана „пуна“ (\optname{full}) шема инсталира све. Препоручује се да тако и урадите; ипак, можете да изаберете и „основну“ (\optname{basic}) шему (са којом добијате само plain и \LaTeX{}), „малу“ (\optname{small}) шему (са којом добијате неколико програма приде, слично као у случају тзв. Basic\TeX\ инсталације у Mac\TeX-у), „минималну“ (\optname{minimal}) шему за потребе тестирања и „средњу“ (\optname{medium}) шему --- заправо \optname{teTeX} --- нешто у средини. Постоје такође и разне специјализоване шеме и шеме прилагођене некој посебној земљи. \begin{figure}[tb] \begin{center} % \tlpng{tl2019-install-tl-collections-sr}{.6\linewidth} \tlpng{stdcoll}{.6\linewidth} \caption{Мени са колекцијама}\label{fig:collections-gui} \end{center} \end{figure} Одабир шеме може да се даље разради помоћу менија „колекције“ (слика~\ref{fig:collections-gui}, овог пута, за промену, приказан у графичком режиму). Колекције су за један ниво детаљније него шеме --- поједностављено речено, једна шема се састоји од неколико колекција, колекција се састоји од једног или више пакета\char"0304, а пакет (најнижи ниво груписања у \TL-у) садржи стварне фајлове \TeX\ макроа, фонтова, итд. Ако желите још више контроле него што нуде менији са колекцијама, можете да користите \textenglish{\TeX\ Live Manager} (\prog{tlmgr}) након инсталације (подгледајте одељак~\ref{sec:tlmgr}); помоћу њега можете да контролишете инсталацију на нивоу пакета\char"0304. \subsubsection{Директоријуми} \label{sec:directories} Подразумевани распоред директоријума\char"0304\ описан је у одељку~\ref{sec:texmftrees}, стр.~\pageref{sec:texmftrees}. Стандардни директоријум у који се смешта инсталација је \dirname{/usr/local/texlive/2020} на Unix-у, односно |%SystemDrive%\texlive\2020| на Win\-dows-у. На тај начин можете лако одржавати више паралелних инсталација \TL, по једну за свако издање (обично једно годишње, као у овом случају), и можете се лако пребацивати са једне на другу простим мењањем путање за претрагу. Директоријум за инсталацију можете променити у инсталеру подешавајући променљиву \dirname{TEXDIR}. Како се мењају ова и друге опције приказано је на слици~\ref{fig:advanced-lnx}. Најчешћи разлог за промену је недостатак простора на партицији на којој се налази подразумевани директоријум (комплетан \TL{} има неколико гигабајта) или недостатак права уписивања на подразумевано место (не морате да будете root или администратор да бисте инсталирали \TL, али морате имати право уписивања у циљни директоријум). Директоријуми за инсталацију могу да се промене и пре покретања инсталера подешавањем одређених системских променљивих (најчешће су то \envname{TEXLIVE\_INSTALL\_PREFIX} или \envname{TEXLIVE\_INSTALL\_TEXDIR}); у документацији коју даје |install-tl --help| (доступна на Интернету на страници \url{https://tug.org/texlive/doc/install-tl.html}) наћи ћете комплетан списак и много више детаља. Разумна алтернатива за инсталацију је неки директоријум унутар личног директоријума, посебно ако ћете једини корисник бити Ви. Употребите „|~|“ да означите лични директоријум, на пример „|~/texlive/2020|“. Препоручујемо да укључите ознаку за годину у име изабраног директоријума како бисте били у могућности да држите различита издања \TL{}-а једно поред другог. (Такође, можете и да помоћу симболичког линка одржавате име независно од верзије, нпр. \dirname{/usr/local/texlive-cur} и да тај линк касније промените након тестирања новог издања.) Промена вредности променљиве \dirname{TEXDIR} у инсталационом програму повлачи за собом и промену директоријума\char"0304\ \dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} и \dirname{TEXMFSYSCONFIG}. Препоручујемо да користите \dirname{TEXMFHOME} као место за личне макрое и пакете. Подразумевана вредност је |~/texmf| (|~/Library/texmf| на \MacOSX{}). Насупрот \dirname{TEXDIR}-у, овде се ознака |~| чува у новозаписаним конфигурационим фајловима зато што означава лични директоријум особе која који користи \TeX. Он на Unix-у узима вредност \dirname{$HOME} а на \Windows{}-у постаје \verb|%USERPROFILE%|. Посебна, већ помало сувишна напомена: \envname{TEXMFHOME}, као и сва дрвета са подацима, мора бити организовано у складу са \TDS{}; у противном се може десити да фајлови не могу да се пронађу. \dirname{TEXMFVAR} је место где се смештају кеширани подаци који се стварају током рада програма\char"0304\ и који се разликују од корисника до корисника. \LuaLaTeX{} и \ConTeXt\ MkIV (погледајте одељак~\ref{sec:context-mkiv}, стр.~\pageref{sec:context-mkiv}) користе у те сврхе директоријум \dirname{TEXMFCACHE}; његова подразумевана вредност је \dirname{TEXMFSYSVAR}, а у случају да тамо не могу да се уписују подаци, узима се вредност \dirname{TEXMFVAR}. \subsubsection{Опције} \label{sec:options} \begin{figure}[tbh] \begin{boxedverbatim} Options customization: ===============================================================================

use letter size instead of A4 by default: [ ] execution of restricted list of programs: [X] create all format files: [X] install font/macro doc tree: [X] install font/macro source tree: [X] create symlinks in standard directories: [ ] binaries to: manpages to: info to: after install, set CTAN as source for package updates: [X] \end{boxedverbatim} \caption{Мени са опцијама (Unix)}\label{fig:options-text} \end{figure} Слика~\ref{fig:options-text} приказује мени са опцијама у текстуалном режиму рада. Следи више информација о свакој од њих: \begin{description} \itemsep=.2em \item[узети Letter као подразумевану величину папира уместо A4] (\textenglish{use letter size instead of A4 by de\-fault}): Избор подразумеване величине папира. Наравно, можете да употребите било коју величину папира ако се за тим укаже потреба у неком посебном документу. \item[извршавање ограничене листе програма] (\textenglish{execution of restricted list of programs}): Почев од \TL\ 2010, покретање једног броја спољних програма дозвољено је у стандардној инсталацији. Листа дозвољених програма (која је веома кратка) дата је у \filename{texmf.cnf}. Више детаља можете наћи у списку новитета за \TL\ 2010 (одељак~\ref{sec:2010news}). \item[направи све фајлове са форматима] (\textenglish{create all format files}): Иако фајлови са форматима које не користите заузимају место на диску и одузимају време да се направе, препоручује се да оставите ову опцију укључену: ако то не урадите, формати ће по потреби бити прављени у личним директоријумима корисника (дрво \dirname{TEXMFVAR}). На том месту неће бити аутоматски освежени ако се, рецимо, појави нова верзија основних програма или правила за прелом текста, па корисник лако може да има проблем са некомпатибилним форматима. \item[инсталирај изворни \tmpbox{ко\char"0302 д} и документацију фонтова и макроа] (\textenglish{install font/macro doc/source tree}): Ако су ове опције укључене, биће преузети са Интернета и инсталирани документација и изворни \tmpbox{ко\char"0302 д} који су саставни део већине пакета. Искључивање ове опције се не препоручује. \item[направи симболичке линкове у системским директоријумима] (\textenglish{create symlinks in standard directories}): Ова опција (само на Unix-у) служи да избегнете подешавање променљивих из радног окружења (\textenglish{environment variables}). Без ове опције, директоријуми \TL{}-а обично морају да се додају у \envname{PATH}, \envname{MANPATH} и \envname{INFOPATH}. Биће Вам потребно и овлашћење за уписивање у те системске директоријуме. Ова опција је пре свега намењена да би се \TL{} систему приступало кроз директоријуме који су већ познати кориснику, као што је \dirname{/usr/local/bin}, али само ако они пре тога нису садржавали никакве фајлове везане за \TeX. Ову опцију не треба користити тако да она мења фајлове који већ постоје тако што ћете, на пример, у овом контексту задати неки системски директоријум. Најбоље је --- и ми то препоручујемо --- да ову опцију оставите искључену. \item[после инсталације подесити CTAN као извор за надоградње] (\textenglish{after install, set CTAN as source for package updates}): Када инсталирате са \DVD-ја, ова опција се подразумева зато што већина корисника жели да преузме све нове верзије пакета са \CTAN-а које се појаве током године. Једини разумни разлог да искључите ову опцију појављује се у случају када са \DVD-ја инсталирате само део система и планирате да га касније проширите. У сваком случају, репозиторијум пакета\char"0304\ који се користи за инсталацију и за будуће освежавање система може да се подеси и касније; погледајте одељке~\ref{sec:location} и~\ref{sec:dvd-install-net-updates}. \end{description} Опције специфичне за \Windows{}, доступне у напредној верзији Perl/Tk (графичког) интерфејса: \begin{description} \item[подесити променљиву PATH у „registry“-ју] (\textenglish{adjust PATH setting in registry}): Сви програми инсталирани на систему видеће директоријум са програмима \TL{} у својој путањи за претрагу. \item[додати пречице у менију] (\textenglish{add menu shortcuts}): Ако је ова опција укључена, у \textenglish{Start} мениjу \Windows{}-а појавиће се подмени „\TL{}“. Поред „\textenglish{\TL{} menu}“ и „\textenglish{No shortcuts}“, постоји и трећа опција (\textenglish{Launcher entry}. Она је описана у одељку \ref{sec:sharedinstall}. \item[повежи типове фајлова са одговарајућим програмима] (\textenglish{change file associations}): Расположиве варијанте су „само у новим случајевима“ („\textenglish{only new}“ --- прави нове везе али не дира старе), „увек“ („\textenglish{all}“) и „не“ („\textenglish{none}“). \item[инсталирати програм \TeX{}works] (\textenglish{install \TeX{}works front end}) \end{description} Када су сви параметри подешени према Вашој жељи, можете да притиснете „|I|“ (у текстуалном интерфејсу) или „Инсталирај \TL{}“ (у графичком, тj. Perl/Tk \GUI{} интерфејсу) како бисте започели поступак инсталације. Када се све заврши, пређите на одељак~\ref{sec:postinstall} и прочитајте шта после тога има да се уради, ако уопште нешто буде потребно. \subsection{Параметри програма install-tl на командној линији} \label{sec:cmdline} Откуцајте \begin{alltt}> \Ucom{install-tl -help} \end{alltt} како бисте добили списак свих параметара које можете да употребите на командној линији. Можете да користите и |-| и |--| испред назива параметра. Ово је списак могућности које се најчешће употребљавају: \begin{ttdescription} \item[-gui] Ако је могуће биће употребљена графичка (\GUI{}) верзија инсталационог програма. За ово је потребан Tcl/Tk 8.5 или новији. Ово је случај на \MacOSX, док се за \Windows{}-у потребна верзија дистрибуира у оквиру \TL{}. Опције за старе верзије (\texttt{-gui=perltk} and \texttt{-gui=wizard}) су још увек дуступне и за њих је потребан модул \dirname{Perl::Tk} (\url{https://tug.org/texlive/distro.html#perltk}) компајлиран са подршком за XFT; ако \dirname{Perl::Tk} није доступан, инсталација се наставља у текстуалном режиму. \item[-no-gui] Изричито захтевање употребе текстуалног режима рада. \item[-lang {\sl LL}] Задавање језика инсталационог програма према стандардном двословном коду \textsl{LL}. Инсталациони програм ће покушати да установи који се језик користи на систему; ако не успе или ако језик није доступан, пребациће се на енглески. Команда \verb+install-tl --help+ ће приказати листу расположивих језика. Инсталациони програм је преведен на српски; покрените га помоћу \code{install-tl -gui -lang sr}. \item[-portable] \tmpbox{При\char"030F према} преносиве инсталације на USB-диску. Овај параметар се може изабрати и у текстуалном режиму инсталера (помоћу команде \code{V}), као и у графичком режиму. Погледајте одељак~\ref{sec:portable-tl}. \item[-profile {\sl file}] Учитава инсталациони профил \var{file} и обавља инсталацију без интеракције са корисником. Инсталациони програм увек записује фајл \filename{texlive.profile} у \dirname{tlpkg}, поддиректоријум Ваше инсталације. Помоћу ове опције поменути фајл се може употребити да се, на пример, идентична инсталација понови да неком другом систему. Осим тога, можете да лако припремите сопствени профил тако што промените вредности у профилу који је аутоматски направљен (простом изменом вредности у текст едитору) или да подесите да профил буде празан фајл (у ком случају ће инсталациони програм без питања инсталирати \TL{} са подразумеваним параметрима). Ова опција задаје програму да изнова употреби такав фајл тако да, након прве инсталације, можете да инсталирате \TL{} на више система или компјутера у режиму без постављања питања (batch mode), понављајући све опције које сте првобитно изабрали. \item [-repository {\sl url-or-directory}] Одређује репозиторијум из кога ће се инсталирати пакети; погледајте следећи одељак. \htmlanchor{opt-in-place} \item[-in-place] (Ова опција је унета у документацију због комплетности. Немојте је користити ако не знате тачно шта радите.) Ако већ имате копију \TL{}-а направљену помоћу \prog{rsync}, \prog{svn} или друге копије самог \TL{}-а (погледајте \url{https://tug.org/texlive/acquire-mirror.html}), онда се овим параметром задаје да се употреби то што имате, такво какво је; биће обављене само неопходне постинсталационе радње. Будите пажљиви зато што фајл \filename{tlpkg/texlive.tlpdb} може бити пребрисан новом верзијом; на Вама је да га сачувате. Такође, уклањање пакета\char"0304\ мора да се уради ручно. стите овај параметар ако не знате тачно шта радите. Ова опција не може да се укључи преко графичког интерфејса инсталера. \end{ttdescription} \subsubsection{Параметар \optname{-repository}} \label{sec:location} Подразумевани репозиторијум пакета је један од сајтова-копија (mirror) \CTAN{}-a који се аутоматски одређује преко \url{http://mirror.ctan.org}. Ако не желите да користите овај систем, вредност локације може да буде путања (URL) која почиње са \texttt{ftp:}, \texttt{http:} или \texttt{file:/}, или пак да буде обична путања до локалног директоријума. (Када задајете \texttt{http:} или \texttt{ftp:}, завршни знак „\texttt{/}“ и/или завршни текст „\texttt{/tlpkg}“ се игноришу.) На пример, можете да изаберете неки посебан \CTAN\ mirror отприлике овако: \url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, стављајући право име сервера (hostname) и његову специфичну путању до \CTAN-садржаја уместо |ctan.example.org/tex-archive|. Увек свежа листа сервера\char"0304\ који држе свеже копије садржаја \CTAN-а налази се на \url{https://ctan.org/mirrors}. Ако је задата вредност локална (путања или URL који почиње са \texttt{file:/}), употребиће се спаковани фајлови из поддиректоријума \dirname{archive} у репозиторијуму (чак и у случају да су распаковани фајлови доступни упоредо са њима). \subsection{Постинсталациони задаци} \label{sec:postinstall} Може се десити да је потребно урадити нешто и после инсталације. \subsubsection{Системске променљиве на Unix-у} \label{sec:env} Ако сте изабрали да се направе симболички линкови у стандардним директоријумима (као што је објашњено у одељку~\ref{sec:options}), онда нема потребе да се преправљају системске променљиве.% \footnote{\textserbian{\emph{Системска променљива} је превод израза \textenglish{\emph{environment variable}}. Други могући превод био би \emph{променљива из окружења}, али смо се одлучили да избегнемо ту конструкцију зато што је она по нашем мишљењу (1) мање јасна корисницима \Windows{}-а и зато што (2) обе имају мање-више исто значење у пракси --- \emph{прим. прев.}}} У супротном се на Unix системима директоријум са програмима за Ваш оперативни систем мора додати у путању за претрагу. (На \Windows-у о овоме инсталер сам води рачуна.) Сваки подржани оперативни систем има свој поддиректоријум унутар \dirname{TEXDIR/bin}. На слици~\ref{fig:bin-text} можете да видите списак поддиректоријума и одговарајућих платформи. По избору можете да додате и директоријуме са man-страницама и Info-документацијом у одговарајуће путање за претрагу, уколико желите да системске алатке могу да их уоче. Може се десити да man-странице постану аутоматски доступне и после проширивања списка путања из системске променљиве \envname{PATH}. Ако користите shell компатибилан са Bourne shell (као што је нпр. \prog{bash}) и Intel x86 GNU/Linux, и ако сте задржали подразумевани распоред директоријума као у нашем примеру, фајл који треба да уредите требало би да буде \filename{$HOME/.profile} (или неки други фајл који се позива из \filename{.profile}), а линије које треба додати изгледале би овако: \begin{sverbatim} PATH=/usr/local/texlive/2020/bin/i386-linux:$PATH; export PATH MANPATH=/usr/local/texlive/2020/texmf-dist/doc/man:$MANPATH; export MANPATH INFOPATH=/usr/local/texlive/2020/texmf-dist/doc/info:$INFOPATH; export INFOPATH \end{sverbatim} Ако користите \prog{csh} или \prog{tcsh}, фајл који треба уредити обично је \filename{$HOME/.cshrc}, а линије које треба додати изгледале би овако: \begin{sverbatim} setenv PATH /usr/local/texlive/2020/bin/i386-linux:$PATH setenv MANPATH /usr/local/texlive/2020/texmf-dist/doc/man:$MANPATH setenv INFOPATH /usr/local/texlive/2020/texmf-dist/doc/info:$INFOPATH \end{sverbatim} Ако у својим конфигурационим фајловима („који почињу са тачком“) већ имате нека подешавања ове врсте, онда би наравно требало да уклопите \TL\ директоријуме у већ постојеће вредности. \subsubsection{Системске променљиве: глобална подешавања} \label{sec:envglobal} Ако желите да промене описане у претходном одељку важе глобално и за сваког новог корисника на систему, онда сте препуштени сами себи; напросто постоји превише варијација од система до система у погледу тога како и где се ове ствари подешавају. Можемо Вам дати два савета: (1)~пробајте да потражите фајл \filename{/etc/manpath.config} и да, ако постоји, додате линије као што су ове: \begin{sverbatim} MANPATH_MAP /usr/local/texlive/2020/bin/x86_64-linux \ /usr/local/texlive/2020/texmf-dist/doc/man \end{sverbatim} Или, (2)~\tmpbox{потра\char"0301 жите} фајл \filename{/etc/environment}; у њему би могле бити дефинисане путање за претрагу и друге подразумеване системске променљиве. Осим тога, у свим директоријумима са програмима на Unix системима прави се симболички линк \code{man} који показује према \dirname{texmf-dist/doc/man}. Неке варијанте програма \code{man}, као што је стандардни \code{man} на \MacOSX-у, аутоматски ће се снаћи са новом путањом; на тај начин ћете избећи потребу да било шта подешавате на путањама за претрагу. \subsubsection{Надоградње преко Интернета после инсталације са \DVD-ја} \label{sec:dvd-install-net-updates} Ако сте инсталирали \TL\ са \DVD-ја и желите да после тога преузимате надоградње са Интернета, потребно је да покренете ову команду --- али \emph{тек пошто сте} проширили своју питању за претрагу (као што је описано у претходном одељку): \begin{alltt}> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} \end{alltt} Ова команда говори програму \cmdname{tlmgr} да употреби оближњу сајт-копију (\textenglish{mirror}) \CTAN-а за будуће надоградње. Надоградње ће се овим путем аутоматски обављати ако сте инсталирали \TL\ са \DVD-ја, према опцији описаној у одељку~\ref{sec:options}. У случају проблема са аутоматским избором најближег сајта, можете да назначите неку посебну копију (\textenglish{mirror}) \CTAN-а са списка доступног на \url{https://ctan.org/mirrors}. Користите тачну путању до поддиректоријума \dirname{tlnet} на том сајту, као што је урађено у нашем примеру. \htmlanchor{xetexfontconfig} % keep historical anchor working \htmlanchor{sysfontconfig} \subsubsection{Подешавање системских фонтова за \protect\XeTeX\protect\ и \protect\LuaTeX} \label{sec:font-conf-sys} \XeTeX\ и \LuaTeX\ могу да користе не само фонтове који су укључени у \TL, него и било који фонт инсталиран на Вашем систему. Они то раде на сличан, али не идентичан начин. На \Windows-у су фонтови укључени у \TL\ аутоматски по називу доступни \XeTeX-у. Како би на \MacOSX-у фонтови били доступни на исти начин, по називу, неопходне су неке додатне радње; погледајте Интернет-страницу Mac\TeX-а (\url{https://tug.org/mactex}). Ако Вам је потребна таква функционалност на другим оперативним системима из Unix породице, прочитајте остатак овог одељка. Ако сте инсталирали пакет \filename{xetex} на оперативном систему из Unix породице, морате да подесите систем тако да може да пронађе фонтове из \TL-а према стварном називу фонта, а не просто према именима фајлова од којих се фонт састоји. Како бисмо олакшали овај задатак, када се инсталира пакет \pkgname{xetex} (у иницијалној поставци или накнадно) прави се и одговарајући конфигурациони фајл \filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. Како бисте начинили фонтове из \TL{}-а видљивим за цео систем, подразумевајући да имате одговарајућа овлашћења на систему, урадите следеће: \begin{enumerate*} \item прекопирајте фајл \filename{texlive-fontconfig.conf} у \dirname{/etc/fonts/conf.d/09-texlive.conf}; \item покрените \Ucom{fc-cache -fsv}. \end{enumerate*} Ако немате овлашћења да ово урадите или ако Вам је довољно да фонтови из \TL{}-а буду видљиви само једном кориснику, можете да урадите следеће: \begin{enumerate*} \item прекопирајте \filename{texlive-fontconfig.conf} у \filename{~/.fonts.conf}, где \filename{~} представља Ваш лични директоријум; \item покрените \Ucom{fc-cache -fv}. \end{enumerate*} Команда \code{fc-list} ће излистати називе свих фонтова расположивих на Вашем систему. Ако је позовете помоћу \code{fc-list : family style file spacing} (унесите аргументе баш у том облику), биће приказане пробране информације које ће Вам највероватније бити веома корисне за рад. \subsubsection{\protect\ConTeXt{} Mark IV} \label{sec:context-mkiv} И „стари“ \ConTeXt{} (Mark II) и „нови“ \ConTeXt{} (Mark IV) требало би да раде без икаквих интервенција након инсталације \TL{}-а; тако би требало и да остане ако за надоградње будете користили само \verb+tlmgr+. Ипак, пошто \ConTeXt{} MkIV не користи библиотеку \KPS{}, неопходне су неке ручне интервенције кад год ручно инсталирате нове фајлове (без \verb+tlmgr+). После сваке такве инсталације корисник мора да покрене команду \begin{sverbatim} luatools --generate \end{sverbatim} како би освежио кеширане радне податке које \ConTeXt{} чува на диску. Направљени фајлови се смештају у \code{TEXMFCACHE}; подразумевана вредност ове променљиве у \TL-у је \verb+TEXMFSYSVAR;TEXMFVAR+. \ConTeXt\ MkIV ће читати из свих путања поменутих у \verb+TEXMFCACHE+, а податке ће смештати у прву путању у коју се може уписивати. Приликом читања, последње установљено поклапање ће имати предност у случају дуплираних кешираних података. Више информација можете наћи на \url{https://wiki.contextgarden.net/Running_Mark_IV}. \subsubsection{Укључивање локалних и личних макроа} \label{sec:local-personal-macros} Ова тема је имплицтно већ начета у одељку~\ref{sec:texmftrees}: \dirname{TEXMFLOCAL} (чија је подразумевана вредност \dirname{/usr/local/texlive/texmf-local} или \verb|%SystemDrive%\texlive\texmf-local| на \Windows-у) јесте место предвиђено за локалне фонтове и макрое који се употребљавају на целом систему, док је \dirname{TEXMFHOME} (чија је подразумевана вредност \dirname{$HOME/texmf} или \verb|%USERPROFILE%\texmf|) намењен за корисникове личне фонтове и макрое. Предвиђено је да се ови директоријуми не мењају од издања до издања и да нове верзије \TL{}-а аутоматски узимају у обзир њихов садржај. Стога је најбоље да се суздржите од подешавања вредности променљиве \dirname{TEXMFLOCAL} на нешто што је превише удаљено од главног директоријума \TL{}-а, иначе ћете морати ручно да мењате ту вредност за свако будуће издање. У оба ова директоријума фајлови треба да буду распоређени у одговарајуће поддиректоријуме у складу са \emph{структуром \TeX{} директоријума} (\TDS) --- погледајте \url{https://tug.org/tds} или прегледајте фајл \filename{texmf-dist/web2c/texmf.cnf}. На пример, једна \LaTeX{} класа или пакет треба да се ставе у \dirname{TEXMFLOCAL/tex/latex} или у \dirname{TEXMFHOME/tex/latex}, или у неки поддиректоријум поменутих директоријума. Функционалност директоријума \dirname{TEXMFLOCAL} зависи од тога да ли је база података са именима фајлова увек свежа; у супротном фајлови неће моћи да се пронађу. Базу можете освежити командом \cmdname{mktexlsr} или употребом дугмета „Поново постави базу података са фајловима“ („\textenglish{Reinit file database}“) --- наћи ћете га у језичку за конфигурацију програма \TeX\ Live Manager (\prog{tlmgr}) када он ради у графичком (\GUI) режиму. Подразумевана вредност сваке ове променљиве једнака je једном посебном директоријуму, као што је малочас показано. Ово правило није стриктно. На пример, ако Вам је потребно да се лако пребацујете навише и наниже кроз разне верзије великих пакета, можете да одржавате више директоријума (дрвета) за Ваше сопствене потребе. То се ради тако што се \dirname{TEXMFHOME} подеси као списак директоријума одвојених зарезима, унутар заграда: \begin{verbatim} TEXMFHOME = {/мој/дир1,/мојдир2,/неки/трећи/дир} \end{verbatim} Одељак~\ref{sec:brace-expansion} се детаљно бави прерачунавањем заграда. \subsubsection{Укључивање спољних фонтова} Нажалост, ово је веома компликован задатак. Немојте ни да размишљате о овоме уколико нисте вољни да се удубите у најситније детаље инсталације \TeX{}-а. У \TL{} је укључен велики број квалитетних фонтова, па стога препоручујемо да их прегледате зато што се оно што тражите може већ налазити у дистрибуцији. Једна од алтернатива\char"0304\ које Вам стоје на располагању јесте да користите \XeTeX\ или \LuaTeX\ (погледајте одељак~\ref{sec:tex-extensions}); ови програми Вам омогућавају да користите фонтове из оперативног система без икакве инсталације унутар \TeX-а. Ако ипак морате да се упустите у ову сложену материју, погледајте \url{https://tug.org/fonts/fontinstall.html}: на тој страни смо најбоље што смо могли описали неопходну процедуру. \subsection{Тестирање инсталације} \label{sec:test-install} Након што сте инсталирали \TL{}, природно је да ћете желети да га испробате како бисте могли да почнете са израдом свих тих дивних докумената и\slash или фонтова. Оно што ће Вам вероватно прво затребати јесте погодан специјализовани едитор. \TL{} инсталира \TeX{}works (\url{https://tug.org/texworks}) само на \Windows{}-у, док Mac\TeX инсталира TeXShop (\url{https://pages.uoregon.edu/koch/texshop}. На другим Unix системима мораћете сами да изаберете погодан едитор. Избор је велики; неке расположиве опције су изложене у следећем одељку; погледајте и \url{https://tug.org/interest.html#editors}. У принципу, можете да користите било који едитор специјализован за чисти текст, укључујући и оне који немају никакве посебне механизме предвиђене за \TeX. Остатак овог одељка описује неке основне поступке за проверу функционалности новог система. Овде ћемо дати команде за Unix-е; ако користите \MacOSX{} или \Windows{}, вероватно ћете све ове команде покретати покренути кроз графички интерфејс, мада принцип остаје исти. \begin{enumerate} \item Најпре проверите да ли можете да покренете сам програм \cmdname{tex}: \begin{alltt}> \Ucom{tex -{}-version} TeX 3.14159265 (TeX Live ...) Copyright ... D.E. Knuth. ... \end{alltt} Ако овде добијете поруку „command not found“ („команда се не може пронаћи“) уместо података о верзији \TeX-а и ауторским правима, или ако је верзија коју видите старија, то највероватније значи да немате исправан поддиректоријум \dirname{bin} као елемент у системској променљиви \envname{PATH}. Погледајте како се подешавају системске променљиве на стр.~\pageref{sec:env}. \item Покушајте да обрадите основни \LaTeX{} фајл: \begin{alltt}> \Ucom{latex sample2e.tex} pdfTeX 3.14... (TeX Live ...) ... Output written on sample2e.dvi (3 pages, 7484 bytes). Transcript written on sample2e.log. \end{alltt} Ако \LaTeX{} не успе да пронађе \filename{sample2e.tex} или неки други фајл, највероватније је у питању нека збрка старих и нових системских променљивих или конфигурационих фајлова; у таквим случајевима се препоручује да, за почетак, обришете вредности свих системских променљивих које имају везе са \TeX-ом. (Ако Вам треба дубља анализа, може се од самог \TeX{} програма тражити да извести које путање употребљава за претрагу и шта притом успева да пронађе; погледајте одељак „Поступци за отклањање грешака“ [\textenglish{debugging}] на стр.~\pageref{sec:debugging}.) \item Затим прегледајте како изгледа документ који сте добили овом обрадом: \begin{alltt}> \Ucom{xdvi sample2e.dvi} # Unix > \Ucom{dviout sample2e.dvi} # Windows \end{alltt} Требало би да се појави нови прозор са лепим документом који објашњава неке основне ствари о \LaTeX{}-у. (Узгред, тај текст је врло корисно прочитати ако сте почетник.) Како би програм \cmdname{xdvi} радио, морате имати покренут графички X сервер; ако X не ради или ако је системска променљива \envname{DISPLAY} неправилно подешена, добићете грешку \samp{Can't open display} („Није могуће отворити дисплеј“). \item Направите \PS{} фајл за штампање или гледање на екрану: \begin{alltt}> \Ucom{dvips sample2e.dvi -o sample2e.ps} \end{alltt} \item Направите PDF уместо \dvi{} фајла; ова команда ће обрадити \filename{.tex} фајл и директно направити PDF: \begin{alltt}> \Ucom{pdflatex sample2e.tex} \end{alltt} \item Прегледајте добијени PDF фајл: \begin{alltt}> \Ucom{gv sample2e.pdf} \textrm{или:} > \Ucom{xpdf sample2e.pdf} \end{alltt} Ни \cmdname{gv} ни \cmdname{xpdf} нису укључени у \TL{}, тако да морате да их сами одвојено инсталирате. Погледајте \url{https://www.gnu.org/software/gv} и \url{https://www.xpdfreader.com} ако Вам треба више информација о овим програмима. Наравно, има још много других програма у којима можете отварати PDF фајлове. Ако користите \Windows{}, препоручујемо да пробате Sumatra PDF (\url{https://www.sumatrapdfreader.org/free-pdf-reader.html}). \item Може бити корисно да пробате и друге тест-фајлове осим \filename{sample2e.tex}: \begin{ttdescription} \item [small2e.tex:] једноставнији документ него \filename{sample2e}; сврха му је да минимализује величину података који се обрађују ако се појаве неки проблеми; \item [testpage.tex:] проверава понашање Вашег штампача (ивице, итд); \item [nfssfont.tex:] служи да одштампате табеле фонтова и одговарајуће тестове везане за њих; \item [testfont.tex:] такође за табеле са фонтовима, али користи основни \TeX{}; \item [story.tex:] најчистији канонски тест-фајл за \TeX{} који се може направити; морате да откуцате \samp{\bs bye} када се појави упит са звездицом (\code{*}) након што покренете \samp{tex story.tex}. \end{ttdescription} \item Ако сте инсталирали пакет \filename{xetex}, можете да испробате да ли су системски фонтови видљиви за \XeTeX\ на овај начин: \begin{alltt}> \Ucom{xetex opentype-info.tex} This is XeTeX, Version 3.14... ... Output written on opentype-info.pdf (1 page). Transcript written on opentype-info.log. \end{alltt} Ако добијете поруку „Invalid fontname `Latin Modern Roman/ICU'\dots“ („Неисправно име фонта `Latin Modern Roman/ICU'\dots“), онда морате да подесите систем тако да се фонтови укључени у \TL могу пронаћи. Погледајте одељак~\ref{sec:font-conf-sys}. \end{enumerate} \subsection{Додатни софтвер који се може преузети са Интернета} Ако сте нови у \TeX{}-у, или Вам из било ког разлога треба помоћ око писања докумената у \TeX{}-у или \LaTeX{}-у, молимо Вас да посетите \url{https://tug.org/begin.html}: ту ћете наћи неке текстове који су веома добри као увод. Ово су линкови ка Интернет-страницама са још неким програмима који би могли да Вам буду од користи: \begin{description} \item[Ghostscript] \url{https://ghostscript.com/}; \item[Perl] \url{https://www.perl.org/} са додатним пакетима са CPAN-а, \url{http://www.cpan.org/}. \item[ImageMagick] \url{https://www.imagemagick.com}, за обраду слика и пребацивање из једног формата у други. \item[NetPBM] \url{http://netpbm.sourceforge.net}, такође за обраду слика. \item[Едитори специјализовани за \TeX] Овде имате велики избор и све зависи од Вашег укуса. Ево само неколико, по абецедном реду (неки од побројаних програма раде само на \Windows{}-у): \begin{itemize*} \itemsep=.1em \item \cmdname{GNU Emacs} је доступан и у изворном облику за \Windows{}: погледајте \url{https://www.gnu.org/software/emacs/emacs.html}. \item \cmdname{Emacs} са Auc\TeX-ом за \Windows{} доступан је преко \CTAN-a. Интернет-страница Auc\TeX-а је \url{https://www.gnu.org/software/auctex}. \item \cmdname{SciTE} је доступан на \url{https://www.scintilla.org/SciTE.html}. \item \cmdname{Texmaker} је софтвер отвореног кода, доступан на \url{https://www.xm1math.net/texmaker}. \item \cmdname{TeXstudio} је дериват (fork) \cmdname{TeXmaker}-а и укључује неке додатне могућности; погледајте \url{https://texstudio.org/}. \item \cmdname{TeXnicCenter} је софтвер отвореног кода, доступан на \url{https://www.texniccenter.org} и као део дистрибуције pro\TeX{}t. \item \cmdname{TeXworks} је такође отворени софтвер, доступан на \url{https://tug.org/texworks}; инсталира се као део \TL-а само на \Windows{}-у. \item \cmdname{Vim} је отворени софтвер, доступан преко \url{https://www.vim.org}. \item \cmdname{WinEdt} је „shareware“ доступан на \url{https://tug.org/winedt} или \url{https://www.winedt.com}. \item \cmdname{WinShell} се може набавити на \url{https://www.winshell.de}. \end{itemize*} \end{description} Још исцрпнији списак пакета и програма налази се на \url{https://tug.org/interest.html}. \section{Специјализоване инсталације} Претходни одељци бавили су се основним процесом инсталације. Сада прелазимо на неке специјализоване случајеве. \htmlanchor{tlsharedinstall} \subsection{Инсталације које дели више корисника или више компјутера} \label{sec:sharedinstall} \TL{} је дизајниран тако га истовремено могу употребљавати корисници који имају разне оперативне системе на некој компјутерској мрежи. Ако се држите стандардног распореда директоријума, подешавања не садрже ниједну фиксирану путању: локације фајлова који су потребни \TL{} програмима проналазе се релативно у односу на саме програме. Овакав приступ постаје јасан ако погледате главни конфигурациони фајл \filename{$TEXMFDIST/web2c/texmf.cnf}, који садржи овакве линије: \begin{sverbatim} TEXMFROOT = $SELFAUTOPARENT ... TEXMFDIST = $TEXMFROOT/texmf-dist ... TEXMFLOCAL = $SELFAUTOGRANDPARENT/texmf-local \end{sverbatim} Ово значи да корисници других оперативних система само треба да додају директоријум који садржи верзије програма за њихову платформу у своје путање за претрагу како би добили поставку спремну за употребу. На исти начин можете да инсталирате \TL{} локално и да онда накнадно преместите целу хијерархију на неко друго место на мрежи. За кориснике \Windows{}-а у \TL{} је укључен програм \prog{tlaunch}. Помоћу њега је веома лако покренути разне \TeX\ програме или пронаћи потребну документацију, простим притиском на одговарајуће дугме или кроз мени. Интерфејс овог програма лако је прилагодити сопственим потребама путем одговарајућег \filename{.ini} фајла. Када се први пут покрене, \prog{tlaunch} понавља одређене постинсталационе радње специфичне за \Windows{} (подешава путању за претраге \TL{}-a и повезује одређене типове фајлова са одговарајућим програмима), али само за тренутног корисника. То значи да на другим компјутерима на локалној мрежи који могу да приступају тој инсталацији \TL{}-а само треба подесити пречицу до \prog{tlaunch}. Више детаља о свему овоме можете пронаћи у документацији (\code{texdoc tlaunch} или на \url{https://ctan.org/pkg/tlaunch}). \htmlanchor{tlportable} \subsection{Преносиве инсталације на USB-диску} \label{sec:portable-tl} Ако инсталациони програм покренете са параметром \code{-portable} (или употребите команду \code{V} у текстуалном режиму, односно ако изаберете одговарајућу опцију у графичком режиму), направиће се потпуно затворена и самостална инсталација \TL{}-а и биће изостављена интеграција са остатком система. Такву инсталацију можете да направите директно на \USB{}-диску или да је на \USB{}-диск касније копирате. Како бисте покренули \TeX\ из овакве преносиве инсталације, морате да додате одговарајући директоријум са програмима у путању за претрагу у свом терминалу. На \Windows{}-у ово можете да урадите помоћу двоструког клика миша на \filename{tl-tray-menu} (налази се на првом нивоу инсталације), и тиме направите радну („tray“) иконицу, која даје избор између неколико уобичајених задатака, као што је приказано на следећој слици: \medskip \begin{center} \tlpng{tray-menu}{4cm} \end{center} \smallskip \noindent Ставка „More\ldots“ објашњава како овај мени можете да прилагодите својим потребама. %\htmlanchor{tlisoinstall} %\subsection{\ISO\ (или \DVD) инсталације} %\label{sec:isoinstall} % %Ако немате потребе да често надограђујете инсталацију или да је мењате %на било који начин и\slash или имате неколико система\char"0304\ на %којима је потребно користити \TL{}, може бити веома корисно да %направите \ISO\ одраз своје личне инсталације \TL{}-а. Ова пракса може %бити веома добра зато што~је: % %\begin{itemize} %\itemsep=.01em %\item копирање \ISO\ фајла са компјутера на компјутер много брже него % копирање обичне инсталације; %\item ако имате компјутер са више оперативних система % (\textenglish{dual-boot}) и желите да се инсталација \TL{}-а користи % на свим тим системима, \ISO-инсталација није условљена % специфичностима и ограничењима страних система (FAT32, % NTFS, HFS+); %\item директан приступ таквом \ISO\ одразу („\textenglish{mount}“) је % једноставан на виртуелним машинама. %\end{itemize} % %Наравно, Ваш \ISO\ одраз може и да се нареже на \DVD\ ако Вам је тако %згодније. % %Десктоп системи из GNU/Linux/Unix породице, укључујући \MacOSX, %могу да приступе садржају \ISO\ одраза као обичном фајл-систему %(„\textenglish{mount}“). \Windows{}~8 је први (!) из своје породице %у коме је ова једноставна радња изводива. Осим тог детаља, ништа није %другачије у поређењу са обичном инсталацијом на хард-диску: погледајте %одељак~\ref{sec:env}. % %Када припремате такву \ISO\ инсталацију, најбоље је да изоставите %поддиректоријум који се односи на годину издања и да поставите %\filename{texmf-local} на исти ниво са другим дрветима %(\filename{texmf-dist}, \filename{texmf-var} итд). Ово можете да урадите %у инсталеру користећи уобичајене опције за директоријуме. % %За реални (не виртуелни) \Windows{} систем можете да нарежете \ISO\ на %DVD. Међутим, исплати се одвојити мало времена и испитати %могућности директне употребе \ISO\ одраза\char"0304\ %(\ISO-\textenglish{mounting}) које нуди отворени софтвер, на пример %\prog{WinCDEmu} (\url{http://wincdemu.sysprogs.org/}). % %Ради боље интеграције са системом на \Windows{}-у можете да убаците и %скрипте из групе \filename{w32client} %(описане у одељку~\ref{sec:sharedinstall} и на страници %\url{https://tug.org/texlive/w32client.html}), које добро баратају и %\ISO\ инсталацијама и инсталацијама преко мреже. % %На \MacOSX-у, програм \TeX{}Shop може да користи %DVD-инсталацију ако симболички линк \filename{/usr/texbin} %показује на одговарајући директоријум са програмима, на пример %\begin{verbatim} %sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin %\end{verbatim} % %Историјска напомена: \TL{} 2010 био је први \TL{} који није био издат %„жив“ (\textenglish{live}). Ипак, увек је било потребно мало %акробација да би се \TL{} користио са \DVD-ја или из \ISO\ одраза; ово %се посебно односило на чињеницу да није постојао згодан начин да се %подеси барем још једна додатна системска променљива. Ако, међутим, %направите свој сопствени \ISO\ од постојеће инсталације, за овим %додатком неће бити потребе. \htmlanchor{tlmgr} \section{Одржавање инсталације помоћу \cmdname{tlmgr}} \label{sec:tlmgr} \begin{figure}[tb] \begin{center} \tlpng{tlshell-macos}{\linewidth} \caption{\prog{tlshell} у графичком (\GUI) режиму рада и менијем „Actions“ (\MacOSX)} \label{fig:tlshell} \end{center} \end{figure} \begin{figure}[tb] \tlpng{tlcockpit-packages}{.8\linewidth} \caption{Графички (GUI) режим \prog{tlcockpit} за \prog{tlmgr}} \label{fig:tlcockpit} \end{figure} \begin{figure}[tb] %\tlpng{tl2019-tlmgr-tl-old-gui-sr}{\linewidth} \tlpng{tlmgr-gui}{\linewidth} \caption{Стари графички (GUI) режим \prog{tlmgr}: главни прозор,\\ после „Учитај подразумевани репозиторијум“ („Load“)} \label{fig:tlmgr-gui} \end{figure} %\end{minipage} \TL{} садржи програм по имену \prog{tlmgr} који служи за одржавање \TL{}-а након почетне инсталације. Његове могућности између осталог укључују: \begin{itemize*} \item инсталацију, освежавање, бекаповање, враћање из бекапа, уклањање појединачних пакета са могућношћу да се узму у обзир са њима повезани пакети; \item претрагу и прављење разних спискова пакета и њихових описа; \item излиставање, додавање и уклањање верзија програма за неки оперативни систем (односно платформу); \item промену параметара инсталације као што су величина папира или локација изворног кода (погледајте одељак~\ref{sec:location}). \end{itemize*} Функционалност програма \prog{tlmgr} обухвата и превазилази могућности програма \prog{texconfig}. Још увек дистрибуирамо и одржавамо \prog{texconfig} зато што постоје корисници који су на њега навикли, али изричито препоручујемо да користите \prog{tlmgr}. \subsection{Графички интерфејс (\GUI{}) за \cmdname{tlmgr}} \TL{} садржи неколико графичких интерфејса (\GUI{}) за \cmdname{tlmgr}. Два најважнијих: (1)~слика~\ref{fig:tlshell} приказује \cmdname{tlshell}, који је написан на Tcl/Tk и подразумева се на \Windows{}-у и \MacOSX{}; (2)~слика~\ref{fig:tlcockpit} приказује \prog{tlcockpit}, за који је потребан Java верзије~8 или више, као и JavaFX; оба се дистрибуирају као одвојени пакети. Сам \prog{tlmgr} се може покренути у графичком (\GUI{}) режиму (слика~\ref{fig:tlmgr-gui}) помоћу \begin{alltt}> \Ucom{tlmgr -gui} \end{alltt} (српски језик добијате помоћу \Ucom{-gui-lang sr}). Међутим, за овај интерфејс је потребно да имате инсталиран модул \dirname{Perl::Tk}; он више није укључен у дистрибуцију \TL{}-а за \Windows{}. \subsection{Примери позивања \cmdname{tlmgr}-а са командне линије} Након почетне инсталације, можете да освежите свој систем најновијим доступним верзијама целокупног садржаја помоћу: \begin{alltt}> \Ucom{tlmgr update -all} \end{alltt} Ако Вас ово чини нервозним, прво пробајте \begin{alltt}> \Ucom{tlmgr update -all -dry-run} \end{alltt} или (са мање објашњења): \begin{alltt}> \Ucom{tlmgr update -list} \end{alltt} Следећи сложенији пример додаје једну колекцију (све што је везано за \XeTeX), и то из једног локалног директоријума: \begin{alltt}> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} \end{alltt} Ова команда даје следеће поруке (скраћено): \begin{fverbatim} install: collection-xetex install: arabxetex ... install: xetex install: xetexconfig install: xetex.i386-linux running post install action for xetex install: xetex-def ... running mktexlsr mktexlsr: Updating /usr/local/texlive/2020/texmf-dist/ls-R... ... running fmtutil-sys --missing ... Transcript written on xelatex.log. fmtutil: /usr/local/texlive/2020/texmf-var/web2c/xetex/xelatex.fmt installed. \end{fverbatim} Као што видите, \prog{tlmgr} инсталира све неопходне пакете и води рачуна о свим радњама које су неопходне после инсталације, што у овом случају обухвата освежавање базе података са именима фајлова и поновно прављење неких формата. У претходном примеру смо направили нове формате за \XeTeX. Ако Вам је потребан опис пакета (или колекције или шеме), откуцајте: \begin{alltt}> \Ucom{tlmgr show collection-latexextra} \end{alltt} Команда даје следећи излаз: \begin{fverbatim} package: collection-latexextra category: Collection shortdesc: LaTeX supplementary packages longdesc: A very large collection of add-on packages for LaTeX. installed: Yes revision: 46963 sizes: 657941k \end{fverbatim} Последње и најважније, пуна документација о програму \prog{tlmgr} налази се на страници \url{https://tug.org/texlive/tlmgr.html}, а можете је видети и ако откуцате: \begin{alltt}> \Ucom{tlmgr -help} \end{alltt} \section{Напомене за Windows} \label{sec:windows} \subsection{Могућности специфичне за Windows} \label{sec:winfeatures} Осим онога што је описано у претходним одељцима, инсталациони програм на \Windows{}-у обавља још неке додатне ствари: \begin{description} \item[Менији и пречице.] У Start менију се додаје нови одељак „\TL{}“, преко кога се могу позивати неки графички (\GUI{}) програми (\prog{tlmgr}, \prog{texdoctk}, и преко кога можете да дођете до једног дела документације. \item[Повезивање класа докумената са одговарајућим програмима.] Ако су инсталирани, \prog{TeXworks} и \prog{Dviout} постају или подразумевани програми за одговарајуће класе докумената или добијају ставку у менију „\textenglish{Open with}“ („отвори помоћу“), који се добија када документима поменутих класа приступите притиском на десно дугме миша. \item[Превођење бит-мапа у eps формат.] Разни формати који за основу имају бит-мапе добијају ставку \cmdname{bitmap2eps} у свом менију „\textenglish{Open with}“ („отвори помоћу“), који се добија притиском на десно дугме миша. Bitmap2eps је једноставна скрипта која омогућава да \cmdname{sam2p} и \cmdname{bmeps} обаве главни део посла. \item[Аутоматско подешавање путања.] Није потребна никаква ручна интервенција по овом питању. \item[Уклањање.] Инсталациони програм додаје одговарајућу ставку за \TL{} у „\textenglish{Add/Re\-mo\-ve Programs}“. Дугме за деинсталацију у графичком (\GUI) режиму програма \textenglish{\TeX\ Live Manager} („Уклони“) пребацује вас управо тамо. Ако је \TL{} инсталиран само за једног корисника, инсталациони програм ће направити и ставку за деинсталацију у \textenglish{Start} менију \Windows{}-а. \item[Заштита од измена.] Ако сте инсталацију обавили као администратор, директоријуми који садрже \TL{} биће \textenglish{write-protected}, тј. заштићени од измена, барем у „обичним“ околностима (ако је \TL{} инсталиран на NTFS партицију на непокретном диску). \end{description} Ово нису све могућности специфичне за \Windows{}; погледајте и секцију \ref{sec:sharedinstall}, у којој се говори о програму \filename{tlaunch}. \subsection{Додатни софтвер за Windows} За целовиту инсталацију \TL-а потребни су помоћни пакети који обично не постоје на \Windows{} компјутеру. \TL{} обезбеђује карике које недостају. Следећи програми се инсталирају као део \TL{}-а само на \Windows{}-у: \begin{description} \item[Perl и Ghostscript.] Због важности Perl-а и Ghostscript-а, \TL{} садржи „скривене“ копије ових програма. \TL{} програми који их користе знају где треба да их потраже, али не одају њихово присуство кроз системске променљиве или путем измена у „registry“-ју. То нису целовите инсталације и не би требало да дођу у сукоб са неком правом инсталацијом Perl-а или Ghostscript-а која је \Windows{}-у видљива. \item[dviout.] На \Windows{}-у се инсталира и \prog{dviout}, програм у коме можете да прегледате DVI фајлове. У почетку, када почнете да га употребљавате за ту сврху, \prog{dviout} ће правити потребне фонтове (зато што фонтови за екран нису инсталирани). После неког времена у употреби, направиће се већина фонтова која Вам је потребна и ретко ћете виђати прозор који Вас обавештава о овом поступку. О овом програму можете добити много више података на Интернет-страници (коју топло препоручујемо). \item[\TeX{}works.] \TeX{}works је едитор специјализован за \TeX; он има уграђен приказивач PDF фајлова. \item[Алатке за командну линију.] Осим уобичајених \TL{} програма, на \Windows{}-у се инсталира и известан број \Windows{} верзија\char"0304\ уобичајених Unix алатки за командну линију. Ту спадају \cmdname{gzip}, \cmdname{zip}, \cmdname{unzip} и алати из пројекта \cmdname{poppler} (\cmdname{pdfinfo}, \cmdname{pdffonts}\ldots{}); у дистрибуцији за \Windows{} није укључен ниједан самосталан \textenglish{viewer} (прегледач) PDF фајлова. Можете да инсталирате Sumatra PDF viewer; Интернет-страница пројекта је \url{https://www.sumatrapdfreader.org/}. \item[fc-list, fc-cache\ldots{}] Алатке из библиотеке fontconfig омогућавају \XeTeX{}-у да барата системским фонтовима на \Windows{}-у. Можете да користите \prog{fc-list} да одредите имена фонтова која задајете у \XeTeX-овој проширеној команди \cs{font}. Ако је потребно, најпре покрените \prog{fc-cache} како би се подаци о фонтовима освежили. \end{description} \subsection{Лични кориснички директоријум на Windows-у} \label{sec:winhome} Еквивалент Unix-овом личном директоријуму корисника (home) на \Windows{}-у јесте директоријум \verb|%USERPROFILE%|. На \Windows{}-у Vista и новијим то је обично \verb|C:\Users\|. У фајлу \filename{texmf.cnf} и у \KPS{} уопште, симбол \verb|~| ће се претворити у исправну путању и на \Windows{}-у и на Unix-у. \subsection{Windows-ов „registry“} \label{sec:registry} \Windows{} држи скоро сва подешавања у тзв. „registry“-ју. То складиште садржи скуп хијерархијски организованих кључева, са неколико кључева највишег нивоа. Најважнији за инсталационе програме су \path{HKEY_CURRENT_USER} и \path{HKEY_LOCAL_MACHINE}, или скраћено \path{HKCU} и \path{HKLM}. Део „registry“-ја \path{HKCU} налази се у личном директоријуму корисника (погледајте одељак~\ref{sec:winhome}). \path{HKLM} се обично налази у поддиректоријуму директоријума званог \Windows{}. У неким случајевима, информације о систему се могу добити из системских променљивих, али неке, на пример локација пречица\char"0304, и даље захтевају да се консултује „registry“. Трајно подешавање системских променљивих такође захтева приступ „registry“-ју. \subsection{Овлашћења на Windows-у} \label{sec:winpermissions} У новијим верзијама \Windows{}-а постоји разлика између обичних корисника и администратора; само администратори имају слободан приступ целом оперативном систему. Уложили смо доста напора да омогућимо да се \TL{} може инсталирати без администраторских овлашћења. Ако је инсталер покренут са администраторским овлашћењима, постоји опција да се \TL{} инсталира за све кориснике. Ако се ово изабере, пречице се праве за све кориснике и мењају се поставке на нивоу система. У супротном, пречице и одељци у менију праве се само за текућег корисника и мења се само његово окружење (ове измене се своде на модификацију путање за претрагу). Без обзира на то да ли корисник има статус администратора или не, подразумевани основни директоријум за \TL{} који предлаже инсталациони програм увек је унутар \verb|%SystemDrive%|. Програм увек тестира да ли тренутни корисник може да уписује податке у тај основни директоријум. Може се појавити проблем ако корисник није администратор а \TeX{} већ постоји у путањи за претрагу програма. Пошто се радна путања за претрагу састоји од системског дела иза кога следи кориснички део са својим путањама, нови \TL{} никад неће добити предност. Како би се решила ова ситуација, инсталациони програм прави пречицу до командног промпта у коме су нови \TL{} програми стављени испред локалне путање за претрагу. Нови \TL{} ће увек бити употребљив унутар таквог командног промпта. Пречица за \TeX{}works, ако се тај програм инсталира, такође додаје \TL{} на почетак путање за претрагу, тако да би и тај едитор требало да буде имун на ове проблеме са путањама. Треба истаћи још једну особеност: чак иако сте улоговани као Администратор, морате да изричито затражите администраторксе привилегије. У ствари, нема много сврхе да узимате улогу правог администратора. Уместо тога, кликните десним дугметом миша на програм који желите да покренете или на његову пречицу, и то ће Вам у нормалним околностима дати могућност да „покренете програм као администратор“ („\textenglish{Run as administrator}“). \subsection{Увећавање максимума доступне меморије на Windows-у и Cygwin-у} \label{sec:cygwin-maxmem} Корисницима \Windows{}-а и Cygwin-а (погледајте одаљак~\ref{sec:cygwin} о специфичностима инсталације на Cygwin-у) може да се деси да остану без меморије када покрећу неке програме укључене у \TL. На пример, \prog{asy} може да остане без меморије ако покушате да заузмете низ (array) од 25.000.000 реалних бројева, а \LuaTeX\ може да остане без меморије ако покушавате да обрадите документ са много великих фонтова. Што се тиче Cygwin-а, можете да увећате расположиву меморију ако пратите одговарајућа упутства из њиховог водича за кориснике (Cygwin User's Guide --- \url{https://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). На \Windows{}-у морате да направите један додатни фајл, рецимо \file{moremem.reg}, који садржи следеће четири линије: \begin{sverbatim} Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Cygwin] "heap_chunk_in_mb"=dword:ffffff00 \end{sverbatim} \noindent и да онда извршите команду \code{regedit /s moremem.reg} као администратор. (Ако желите да увећате меморију само за тренутног корисника уместо на целом систему, употребите кључ \code{HKEY\_CURRENT\_USER}.) \section{Кориснички водич кроз \Webc{}} \Webc{} је интегрисана колекција програма везаних за \TeX: \tmpbox{са\char"0302 м} \TeX{}, \MF{}, \MP, \BibTeX{}, итд. \Webc{} је срце \TL{}-а. Интернет-страница пројекта, на којој се налази најновији приручник и много других ствари, налази се на \url{https://tug.org/web2c}. Мало историје: првобитну имплементацију је направио Томас Рокицки [\textgerman{Tomas Rokicki}], који је 1987. развио први „\TeX{}-у-C“ разрадивши изворну Unix верзију, оригинални рад Хауарда Трикија [\textenglish{Howard Trickey}] и Павела Кертиса [\textenglish{Pavel Curtis}]. Одржавање система је наставио Тим Морган [\textenglish{Tim Morgan}] и током тог периода име је промењено у Web-to-C\@. 1990. године рад је преузео Карл Бери [\textenglish{Karl Berry}] који је уз помоћ више десетина сарадника одржавао пројекат до 1997, када је предао штафету Олафу Веберу [\textenglish{Olaf Weber}], који је руковођење вратио Карлу 2006. године. \Webc{} систем ради на Unix-у, 32-битним \Windows{} системима, \MacOSX{}-у и многим другим оперативним системима. Он користи оригинални Кнутов [\textenglish{Knuth}] \tmpbox{ко\char"0302 д} за \TeX{} и друге основне програме написане у „\web{} систему за писмено програмирање“ (\web{} literate programming system) и преводи их у језик C. Језгро састављено од \TeX{} програма\char"0304\ који се третирају на овај начин чине: \begin{cmddescription} \item[bibtex] Рад са библиографијама. \item[dvicopy] Рад са виртуелним фонтовима у \dvi{} фајловима. \item[dvitomp] Претвара \dvi{} у MPX (\MP{} слике). \item[dvitype] Претвара \dvi{} у читљив текст. \item[gftodvi] Визуализација изворних (\textenglish{generic}) фонтова. \item[gftopk] Претвара изворне (generic) у спаковане (packed) фонтове. \item[gftype] Претвара GF (изворне фонтове) у читљив текст. \item[mf] Програм за прављење породица\char"0304\ фонтова (typeface families). \item[mft] „Лепо штампање“ (prettyprinting) \MF{} \tmpbox{ко\char"0302 да} \item[mpost] Програм за прављење техничких дијаграма. \item[patgen] Програм за прављење правила\char"0304\ за прелом речи\char"0304\ (\textenglish{hyphenation patterns}). \item[pktogf] Претвара спаковане (packed) у изворне (generic) фонтове. \item[pktype] Претвара PK у читљив текст. \item[pltotf] Претвара текстуални списак особина фонта у acro{TFM}. \item[pooltype] Приказује \web{} pool фајлове. \item[tangle] Преводи \web{} \tmpbox{ко\char"0302 д} у језик Pascal. \item[tex] Припрема текста. \item[tftopl] Претвара TFM у текстуални списак особина фонта. \item[vftovp] Претвара виртуелни фонт у виртуелни списак особина\char"0304. \item[vptovf] Претвара виртуелни списак особина\char"0304\ у виртуелни фонт. \item[weave] Преводи \web{} \tmpbox{ко\char"0302 д} у \TeX. \end{cmddescription} \noindent Прецизне функције и синтакса ових програма описани су у документацији која долази уз одговарајуће пакете, као и уз \tmpbox{са\char"0302 м} \Webc{}. Међутим, корисно је знати неколико заједничких принципа који важе за све њих зато што на тај начин можете боље да искористите своју \Webc{} инсталацију. Сви ови програми поштују ове стандардне \GNU параметре: \begin{ttdescription} \item[-{}-help] штампање основног прегледа употребе. \item[-{}-version] штампање података о верзији, иза кога следи напуштање програма. \end{ttdescription} Већина поштује и: \begin{ttdescription} \item[-{}-verbose] штампање детаљнијег извештаја о раду. \end{ttdescription} Да би одредили положај разних фајлова, \Webc{} програми користе библиотеку за претрагу \KPS{} (\url{https://tug.org/kpathsea}). Ова библиотека користи комбинацију системских променљивих и конфигурационих фајлова како би оптимизовала претрагу кроз (огромни) садржај \TeX{} система. \Webc{} може да упоредо користи више хијерархија за претрагу, што је корисно за одржавање стандардних дистрибуција \TeX-а упоредо са локалним и личним проширењима у одвојеним директоријумима. Како би се претраживање убрзало, директоријум највишег нивоа у свакој хијерархији има фајл \file{ls-R} који садржи записе састављене од \tmpbox{и\char"030F мена} и релативне путање за све фајлове који се налазе ниже по хијерархији у том директоријуму. \subsection{Проналажење фајлова помоћу Kpathsea} \label{sec:kpathsea} Опишимо најпре механизам трагања који користи библиотека \KPS{}. \emph{Путањом за претрагу} (search path) називамо списак \emph{елемената путање} раздвојених двотачком или тачка-зарезом; ти елементи су обично имена директоријума, мада путања за претрагу може да се састави од елемената који потичу из разних извора. Када тражи фајл \samp{my-file} по путањи \samp{.:/dir}, \KPS{} проверава један по један сваки елемент путање: прво \file{./my-file}, затим \file{/dir/my-file}, и враћа први погодак (уз могућност да врати и све поготке одједном). Како би се оптимално прилагодила конвенцијама свих оперативних система, на системима који нису сродни са Unix-ом \KPS{} може да користи и друге сепараторе а не само двотачку (\samp{:}) и косу црту (\samp{/}). Када проверава поједини елемент путање \var{p}, \KPS{} прво проверава да ли се унапред припремљена база података (погледајте „База података са именима фајлова“ на страни~\pageref{sec:filename-database}) може употребити за \var{p}, тј. да ли се база података налази у директоријуму који је префикс од \var{p}. Ако је то случај, задата путања се \tmpbox{ра\char"0300 вна\char"0304} према садржају базе података. Премда је најједноставнији и најуобичајенији елемент путање име директоријума, \KPS{} подржава и додатне могућности у путањама за претрагу: „рашчлањене“ подразумеване вредности (\textenglish{layered default values}, односно вредности које имају предност једна у односу на другу зависно од извора у односу на који се користе), имена системских променљивих, вредности из конфигурационих фајлова, личне директоријуме корисника\char"0304, као и наредбе за рекурзивно претраживање поддиректоријума\char"0304. Стога кажемо да \KPS{} \emph{прерачунава}\footnote{\textserbian{\emph{Прерачунавање} је превод израза \textenglish{\emph{expanding}; генерално се ради о замени неког једноставног израза неким компликованијим садржајем до кога се долази одговарајућим алгоритмом; стога, у зависности од контекста, може да значи и \emph{рашчлањавање} и \emph{проширивање}} --- \emph{прим. прев.}}} елемент путање, што значи да он трансформише све спецификације у основно име (или имена) директоријума. Ово је описано у наредним одељцима у истом поретку у коме се претрага и врши. Обратите пажњу на један детаљ: ако је име фајла који се тражи апсолутно или изричито задато у релативном облику, тј. ако почиње са \samp{/}, \samp{./} или \samp{../}, \KPS{} просто проверава да ли тај фајл постоји. \ifSingleColumn \else \begin{figure*} \verbatiminput{examples/ex5.tex} \setlength{\abovecaptionskip}{0pt} \caption{Илустративни пример конфигурационог фајла} \label{fig:config-sample} \end{figure*} \fi \subsubsection{Извори путања} \label{sec:path-sources} Путања за претрагу може имати разне изворе. Ово је редослед у коме их \KPS{} користи: \begin{enumerate} \item Системске променљиве подешене од стране корисника, на пример \envname{TEXINPUTS}\@. Системске променљиве које садрже име програма придодато на крају иза тачке добијају предност; нпр. ако је име покренутог програма \samp{latex}, онда ће \envname{TEXINPUTS.latex} имати предност у односу на \envname{TEXINPUTS}. \item Конфигурациони фајл специфичан за поједини програм, нпр. линија \samp{S /a:/b} у фајлу \file{config.ps} који припада програму \cmdname{dvips}. \item Конфигурациони фајл \file{texmf.cnf} који припада \KPS{}-у, и који садржи линију као што је \samp{TEXINPUTS=/c:/d} (погледајте ниже). \item Вредност задата у време компајлирања. \end{enumerate} \noindent Како се према свакој од набројаних ставки формирају вредности за неку задату путању можете да пратите ако употребите опцију за отклањање грешака (\textenglish{debugging}) --- погледајте одељак „Поступци за отклањање грешака“ на страни~\pageref{sec:debugging}). \subsubsection{Конфигурациони фајлови} \KPS{} чита конфигурационе фајлове назване \file{texmf.cnf} (ови фајлови су предвиђени да се читају само када програми раде) и из њих узима путању за претрагу и друге дефиниције. Путања за претрагу која се користи да се \tmpbox{са\char"0301 ми} ови фајлови лоцирају зове се \envname{TEXMFCNF}, али ми не препоручујемо да постављате ову (нити било коју другу) системску променљиву. Уместо тога, уобичајени инсталациони процес доводи до обликовања фајла \file{.../2020/texmf.cnf}. Ако морате да начините неке промене вредности\char"0304\ које су тамо уписане као подразумеване (што обично није потребно), онда је овај фајл место где те вредности треба уписати. Главни конфигурациони фајл је \file{.../2020/texmf-dist/web2c/texmf.cnf}; њега не би требало да преправљате зато што ће се промене изгубити када се верзија инсталирана путем дистрибуције освежи. Ако просто хоћете да додате лични директоријум у неку посебну путању за претрагу, разумна варијанта је да подесите системску променљиву: method: \begin{verbatim} TEXINPUTS=.:/my/macro/dir: \end{verbatim} Како бисте ову променљиву могли да подешавате током година, користите знак \samp{:} (\samp{;} на \Windows{}-у) на крају линије да додате системске путање; то је боље него да их све изричито набрајате (погледајте одељак~\ref{sec:default-expansion}). Друга варијанта је да користите дрво \envname{TEXMFHOME} (погледајте одељак~\ref{sec:directories}). \emph{Сви} фајлови названи \file{texmf.cnf} који се нађу у путањи за претрагу биће прочитани и дефиниције из претходних фајлова биће замењене онима на које се касније наиђе. На пример, ако је путања за претрагу \verb|.:$TEXMF|, вредности из \file{./texmf.cnf} имају предност у односу на оне из \verb|$TEXMF/texmf.cnf|. \begin{itemize*} \item Коментари почињу са \code{\%} који се налази или на почетку линије или после размака (\textenglish{whitespace}% \footnote{\textserbian{Израз \emph{whitespace} означава све врсте „провидних знакова“, пре свега размак („\textenglish{space}“) и „Tab“ --- \emph{прим. прев.}}}), и настављају се до краја линије. \item Празне линије се прескачу. \item Симбол \bs{} на крају линије има улогу ознаке за наставак, тј. следећа линија се придодаје на текућу. Размаци (\textenglish{whitespace}) на почетку линије која се додаје се \emph{не} игноришу. \item Све остале линије имају следећи облик:\\ \hspace*{2em}\texttt{\var{променљива} \textrm{[}.\var{име-програма}\textrm{]} \textrm{[}=\textrm{]} \var{вредност}}\\[1pt] где се знак \samp{=} и размаци око њега могу изоставити. (Међутим, ако \var{value} почиње на \samp{.}, најједноставније је користити \samp{=} како би се избегла интерпретација тачке као квалификатора програма.) \item \ttvar{променљива} може да садржи било који знак осим размака\char"0304\ (\textenglish{whitespace}), \samp{=} и \samp{.}, али је најсигурније држати се скупа \samp{A-Za-z\_} (тј. велика и мала слова енглеског алфабета и доња црта). \item Ако је присутна променљива \samp{.\var{име-програма}}, дефиниција важи само ако се покренути програм зове \texttt{\var{име-програма}} или \texttt{\var{име-програма}.exe}. Између осталог, то значи да разни варијетети \TeX{}-а могу да имају различите путање за претрагу. \item Будући string-ом, \var{вредност} може да садржи било који знак. Међутим, у пракси већина вредности из \file{texmf.cnf} односи се на прерачунавање путања; пошто се у прерачунавању користе разни специјални знакови (см.~одељак~\ref{sec:cnf-special-chars}) као што су заграде и зарези, они не могу да се налазе у именима дуректоријума. Знак \samp{;}\ унутар \var{променљиве} преводи се у \samp{:} ако је у питању Unix; ово је корисно јер омогућава да се исти \file{texmf.cnf} користи и за Unix и за MS-DOS и за \Windows{}. Ово превођење се обавља за све вредности, не само у случају путања за претраживање; срећом, у пракси \samp{;} није неопходан у тим другим случајевима. Структуру \code{\$\var{var}.\var{prog}} не можете да користите „здесна“; уместо ње морате да употребите додатну променљиву. \item Све дефиниције се прочитају пре него што се било шта прерачуна, што значи да се променљиве могу употребити и пре него што се дефинишу. \end{itemize*} Део конфигурационог фајла који илуструје већину ових ствари \ifSingleColumn приказан је у следећој табели: \verbatiminput{examples/ex5.tex} \else приказан је на слици~\ref{fig:config-sample}. \fi \subsubsection{Прерачунавање путање} \label{sec:path-expansion} \KPS{} препознаје неке специјалне ознаке и конструкције у путањама за претрагу, сличне онима из Unix шкољки (\textenglish{shells}). На пример, путања \verb+~$USER/{foo,bar}//baz+ претвара се после прерачунавања у све поддиректоријуме унутар директоријума\char"0304\ \file{foo} и \file{bar} у личном директоријуму корисника \texttt{\$USER}, и то само онакве који садрже у себи директоријум или фајл по имену \file{baz}. Овакве трансформације објашњене су у следећем одељку. \subsubsection{Стандардно прерачунавање} \label{sec:default-expansion} Ако путања за претрагу са највећим приоритетом (погледајте „Извори путања“ на стр.~\pageref{sec:path-sources}) садржи једну \emph{додатну двотачку} (на почетку, на крају, или удвојену) \KPS{} убацује на том месту путању која је следећу по приоритету у оквиру задате претраге. Ако та уметнута путања има додатну двотачку, исто се дешава са следећим расположивим приоритетом по важности. На пример, ако су системске променљиве постављене овако: \begin{alltt}> \Ucom{setenv TEXINPUTS /home/karl:} \end{alltt} и ако је вредност променљиве \code{TEXINPUTS} из \file{texmf.cnf} једнака \begin{alltt} .:\$TEXMF//tex \end{alltt} онда ће коначна вредност која ће бити употребљена за претрагу бити: \begin{alltt} /home/karl:.:\$TEXMF//tex \end{alltt} Пошто би било бескорисно уметати подразумевану вредност на више од једног места, \KPS{} трансформише само један додатни \samp{:} а остале оставља како јесу. Програм најпре тражи има ли \samp{:} на почетку реда, затим на крају, а затим тражи двоструке \samp{:}. \subsubsection{Прерачунавање заграда} \label{sec:brace-expansion} Једна корисна могућност је и прерачунавање заграда: на пример, \verb+v{a,b}w+ се претвара у \verb+vaw:vbw+. Дозвољено је уметање заграда унутар постојећег пара заграда; захваљујући овоме могуће је имати више \TeX{} хијерархија директоријума\char"0304\ тако што се \code{\$TEXMF}-у додели листа заграда. У фајлу \file{texmf.cnf} из дистрибуције направљена је оваква дефиниција (у овом примеру стварни \tmpbox{ко\char"0302 д} је поједностављен): \begin{verbatim} TEXMF = {$TEXMFVAR,$TEXMFHOME,!!$TEXMFLOCAL,!!$TEXMFDIST} \end{verbatim} Ово затим употребљавамо да бисмо, на пример, дефинисали директоријуме које \TeX{} узима у обзир када учитава спољне фајлове: \begin{verbatim} TEXINPUTS = .;$TEXMF/tex// \end{verbatim} %$ што значи да ће се претрага, након задржавања у тренутном директоријуму, обавити \emph{искључиво} у дрветима \code{\$TEXMFVAR/tex}, \code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex} и \code{\$TEXMFDIST/tex} (последња два користе базу података са фајловима \file{ls-R}). \subsubsection{Прерачунавање поддиректоријума} \label{sec:subdirectory-expansion} Две или више узастопних косих црта у елементу путање које следе иза директоријума \var{d} трансформишу се у списак свих поддиректоријума који се по хијерархији налазе испод \var{d\/}: прво иду они који су непосредно испод \var{d}, затим они испод њих, итд. На сваком од тих нивоа редослед којим се директоријуми претражују \emph{није изричито одређен}. Ако ставите неки део имена фајла после \samp{//}, биће укључени само поддиректоријуми који садрже поклапање са тим делом имена. На пример, \samp{/a//b} се претвара у директоријуме \file{/a/1/b}, \file{/a/2/b}, \file{/a/1/1/b} итд, али не у \file{/a/b/c} или \file{/a/1}. Могуће је употребити и више конструкција са \samp{//} у једној путањи, али се \samp{//} на почетку путање игнорише. \subsubsection{Преглед специјалних симбола у фајловима \file{texmf.cnf}} \label{sec:cnf-special-chars} Следећа листа даје преглед специјалних симбола и конструкција у конфигурационим фајловима које користи \KPS{}. % need a wider space for the item labels here. \newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} \begin{ttdescription} \item[\CODE{:}] Сепаратор у задавању путање; на почетку или на крају путање, или удвојен у средини, служи уместо подразумеваног прерачунавања путање. \item[\CODE{;}] Сепаратор на системима који нису сродни са Unix-им (понаша се исто као \code{:}). \item[\CODE{\$}] Прерачунавање променљиве. \item[\CODE{\string~}] Представља корисников лични директоријум. \item[\CODE{\char`\{...\char`\}}] Прерачунавање заграда\char"0304. \item[\CODE{,}] Раздвајање елемената у прерачунавању заграда. \item[\CODE{//}] Прерачунавање поддиректоријума\char"0304\ (може да стоји било где у путањи изузев на почетку). \item[\CODE{\%}] Почетак коментара. \item[\CODE{\bs}] Ознака на крају линије да следи наставак текста: на овај начин се праве ставке које се простиру кроз више линија. \item[\CODE{!!}] Претраживање \emph{искључиво} базе података да се нађе фајл, диск се \emph{не} претражује. \end{ttdescription} Када ће конкретно симбол бити размотрен као специјални, а када ће бити искоришћен такав какав јесте, зависи од контекста. Правила се предају кроз неколико нивоа интерпретације конфигурације (анализа текста, прерачунавање, претрага\ldots{}) и због тога, нажалост, нема јасног правила. Такође, нема општег „\textenglish{escape}“ механизма; посебно треба нагласити да \samp{\bs} није „\textenglish{escape character}“ у фајловима \file{texmf.cnf}. У случају имена инсталационих директоријума, најсигурније да уопште не користите специјалне симболе. \subsection{Базе података са именима фајлова} \label{sec:filename-database} \KPS{} покушава да колико је могуће смањи физички приступ диску када обавља своје претраге. Па ипак, у стандардном \TL{}-у или у било којој инсталацији са много директоријума, претраживање свих могућих директоријума да би се нашао задати фајл може предуго да траје. Из тог разлога је \KPS{} осмишљен да може да користи унапред састављену „базу података“ --- заправо текстуални фајл --- по имену \file{ls-R}, који повезује стварне фајлове са одговарајућим директоријумима и на тај начин елиминише потребу да се диску често приступа. Други фајл --- база података, по имену \file{aliases}, омогућава Вам да дате додатна имена фајловима који су излистани у \file{ls-R}. \subsubsection{База података ls-R} \label{sec:ls-R} Као што је малочас објашњено, име главне базе података са фајловима мора бити \file{ls-R}. Можете да ставите по један такав фајл у корен сваке \TeX{}-хијерархије коју имате и коју желите да претражујете помоћу \KPS{} (подразумева се \code{\$TEXMF}). \KPS{} увек проверава да ли има неки \file{ls-R} дуж \code{TEXMFDBS}. Препоручени начин да направите и одржавате \samp{ls-R} јесте да покренете скрипту \code{mktexlsr} (која је укључена у дистрибуцију). Њу позивају разне \samp{mktex}\ldots{} скрипте. У принципу, ова скрипта напросто покреће команду \begin{alltt}cd \var{/корен/texmf/хијерархије} && \path|\|ls -1LAR ./ >ls-R \end{alltt} уз претпоставку да команда \code{ls} на Вашем систему даје исправан излаз (\GNU \code{ls} је таква команда). Како бисте били сигурни да је база података увек свежа, најлакши начин је да је редовно преправљате користећи \code{cron}, тако да се она аутоматски освежава увек када се неки већ инсталирани фајл промени, као што је случај када се инсталира или освежава неки \LaTeX{} пакет. Ако фајл не може да се пронађе у бази података, подразумевана радња коју предузима \KPS{} јесте да крене у претрагу директно на диску. Ако, међутим, неки поједини елемент путање почиње са \samp{!!}, претражиће се \emph{само} база података, никада \tmpbox{са\char"0302 м} диск. \subsubsection{Самостални програм за претраживање: kpsewhich} \label{sec:invoking-kpsewhich} Програм \prog{kpsewhich} изводи претраживање независно од било које апликације. У овом смислу он може бити користан и као нека врста програма \code{find} ако треба лоцирати појединачне фајлове у \TeX{}-хијерархијама (\prog{kpsewhich} се заиста и користи веома интензивно у скриптама \samp{mktex}\ldots{} које су део дистрибуције). \begin{alltt}> \Ucom{kpsewhich \var{option}... \var{filename}...} \end{alltt} Опције назначене у \ttvar{option} могу да почну и са \samp{-} и са \samp{-{}-}; такође, дозвољено је и било које недвосмислено скраћивање. \KPS{} третира сваки аргумент са командне линије (који није опција) као име фајла, и враћа први фајл који пронађе. Не постоји могућност да се врате сва имена фајлова са појединим именом (ако Вам је тако нешто потребно, употребите Unix команду \samp{find}). Следи опис најважнијих параметара. \begin{ttdescription} \item[\texttt{-{}-dpi=\var{num}}]\mbox{}\\ Задаје резолуцију \ttvar{num}; ово се тиче само претрага за фајловима типа \samp{gf} и \samp{pk}. \samp{-D} је синоним, омогућен ради компатибилности са \cmdname{dvips}. Подразумевана вредност је 600. \item[\texttt{-{}-format=\var{name}}]\mbox{}\\ Задаје да се тражи формат \ttvar{name}. Подразумевани формат се претпоставља на основу имена фајла. За формате који немају једнозначан наставак, као што су нпр. помоћни фајлови програма \MP{} или конфигурациони фајлови програма \cmdname{dvips}, морате назначити име које је познато \KPS{}-у, на пример \texttt{tex} или \texttt{enc files}. Покрените \texttt{kpsewhich -{}-help-formats} ако желите да видите целовит списак. \item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ Задаје режим по имену \ttvar{string}; ово се тиче једино претрага за фајловима типа \samp{gf} и \samp{pk}. Нема подразумеване вредности: тражиће се фајлови за све режиме. \item[\texttt{-{}-must-exist}]\mbox{}\\ Задаје да се учини све што је могуће да се фајлови пронађу; пре свега се мисли на прибегавање директном претраживању диска. Подразумева се да се, ефикасности ради, проверава само база података \file{ls-R}. \item[\texttt{-{}-path=\var{string}}]\mbox{}\\ Претрага ће се вршити низ путању \ttvar{string} (обично су то елементи раздвојени двотачкама), уместо да се путања за претрагу претпоставља на основу имена фајла. Подржани су \samp{//} и сва стандардна прерачунавања и трансформације. Параметри \samp{-{}-path} и \samp{-{}-format} узајамно се искључују. \item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ Задаје \texttt{\var{name}} као име програма. Ово може да утиче на путање за претрагу путем могућности дописивања имена програма (\texttt{.\var{progname}}). Подразумевана вредност је \cmdname{kpsewhich}. \item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ Приказује путању која се користи да се пронађе фајл или тип фајла \texttt{\var{name}}. Могу се користити и наставци за имена фајлова (\code{.pk}, \code{.vf}, итд), као и сама имена, баш као у случају опције \hbox{\samp{-{}-format}}. \item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ Поставља ниво потраге за грешкама на \texttt{\var{num}}. \end{ttdescription} \subsubsection{Примери употребе} \label{sec:examples-of-use} Погледајмо сада \KPS{} на делу. Ево једне једноставне претраге: \begin{alltt}> \Ucom{kpsewhich article.cls} /usr/local/texmf-dist/tex/latex/base/article.cls \end{alltt} Оно што тражимо је фајл \file{article.cls}. Пошто је наставак \samp{.cls} недвосмислен, не морамо да посебно назначимо да желимо да тражимо фајл типа \optname{tex} (директоријуми који садрже фајлове са изворним \TeX{} \tmpbox{ко\char"0302 дом}). Тражимо га у поддиректоријуму \file{tex/latex/base} који се налази у \TL\ директоријуму \samp{texmf-dist}. На сличан начин, сви фајлови у примерима који следе проналазе се без проблема захваљујући својим недвосмисленим наставцима: \begin{alltt}> \Ucom{kpsewhich array.sty} /usr/local/texmf-dist/tex/latex/tools/array.sty > \Ucom{kpsewhich latin1.def} /usr/local/texmf-dist/tex/latex/base/latin1.def > \Ucom{kpsewhich size10.clo} /usr/local/texmf-dist/tex/latex/base/size10.clo > \Ucom{kpsewhich small2e.tex} /usr/local/texmf-dist/tex/latex/base/small2e.tex > \Ucom{kpsewhich tugboat.bib} /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib \end{alltt} Узгред, последњи фајл из овог низа је библиографска база података програма \BibTeX{} која се односи на чланке у часопису \textsl{TUGboat}. \begin{alltt}> \Ucom{kpsewhich cmr10.pk} \end{alltt} Фајловe типa \file{.pk} (фонтови направљени као бит-мапе) користе приказивачи као што су \cmdname{dvips} и \cmdname{xdvi}. У овом случају се не враћа никаква вредност пошто нема унапред припремљених \textenglish{Computer Modern} \samp{.pk} фајлова у \TL{}-у --- подразумева се да се користе Type~1 варијанте. \begin{alltt}> \Ucom{kpsewhich wsuipa10.pk} \ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk \else /usr/local/texmf-var/fonts/pk/ljfour/public/ ... wsuipa/wsuipa10.600pk \fi\end{alltt} За ове фонтове (фонетски алфабет, производ Универзитета Вашингтона) морамо да генеришемо \samp{.pk} фајлове, и пошто је подразумевани режим програма \MF{} на нашем систему \texttt{ljfour} са основном резолуцијом од 600\dpi{} (тачака по инчу), имамо баш овај резултат. \begin{alltt}> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} \end{alltt} У овом случају, међутим, када је изричито назначено да смо заинтересовани за резолуцију од 300\dpi{} (\texttt{-dpi=300}), видимо да такав фонт није расположив на систему. Остаје на програмима као што су \cmdname{dvips} или \cmdname{xdvi} да сами направе потребне \texttt{.pk} фајлове помоћу скрипте \cmdname{mktexpk}. Сада ћемо размотрити заглавља (\textenglish{headers}) и конфигурационе фајлове програма \cmdname{dvips}. Погледајмо најпре један веома често коришћени фајл, пролог \file{tex.pro} за \TeX{} подршку, а затим један општи конфигурациони фајл (\file{config.ps}) и \PS{} фонт-мапу \file{psfonts.map} --- од издања \TL{}-а из 2004. фајлови са мапама и кодним распоредима имају своје сопствене путање за претрагу и нов положај унутар \dirname{texmf} дрвета\char"0304. Пошто је наставак \samp{.ps} вишесмислен, морамо да изричито назначимо који тип имамо у виду (\optname{dvips config}) за фајл \texttt{config.ps}. \begin{alltt}> \Ucom{kpsewhich tex.pro} /usr/local/texmf/dvips/base/tex.pro > \Ucom{kpsewhich --format="dvips config" config.ps} /usr/local/texmf/dvips/config/config.ps > \Ucom{kpsewhich psfonts.map} /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map \end{alltt} Погледајмо сада поближе помоћне фајлове програма \PS{} који се тичу фонта URW Times. Префикси за ове фајлове су, према стандардној шеми за именовање фонтова, \samp{utm}. Први фајл који разматрамо је један конфигурациони фајл, који садржи име фајла са одговарајућом мапом: \begin{alltt}> \Ucom{kpsewhich --format="dvips config" config.utm} /usr/local/texmf-dist/dvips/psnfss/config.utm \end{alltt} Садржај тог фајла је \begin{alltt} p +utm.map \end{alltt} што указује на фајл \file{utm.map}, и он је следећи ког желимо да лоцирамо. \begin{alltt}> \Ucom{kpsewhich utm.map} /usr/local/texmf-dist/fonts/map/dvips/times/utm.map \end{alltt} Овај фајл са мапом одређује имена фајлова Type~1 \PS{} фонтова у URW колекцији. Његов садржај изгледа овако (приказујемо само део): \begin{alltt}utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} \ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb \else /usr/local/texmf-dist/fonts/type1/ ... urw/utm/utmr8a.pfb \fi\end{alltt} Из ових примера требало би да буде јасно како лако можете да одредите положај било ког задатог фајла. Ово је нарочито важно ако сумњате да је у обради неког документа употребљена погрешна верзија неког фајла, пошто ће Вам \cmdname{kpsewhich} приказати само први фајл на који наиђе. \subsubsection{Поступци отклањања грешака} \label{sec:debugging} Понекад је неопходно да се испита како неки програм разрешава упућивања на одређене фајлове. Да би помогао у таквим ситуацијама, \KPS{} нуди разне нивое излаза у режиму трагања за грешкама (\textenglish{debugging}): \begin{ttdescription} \item[\texttt{\ 1}] Статистика директног приступа диску. Када се претрага обавља са свежом \file{ls-R} базом, ово не би требало да да\char"0302\ готово никакав излаз. \item[\texttt{\ 2}] Упућивања на „hash“ табеле (као што је база података \file{ls-R}, фајлови са мапама, конфигурациони фајлови). \item[\texttt{\ 4}] Операције отварања и затварања фајлова. \item[\texttt{\ 8}] Опште информације о путањама које \KPS{} користи за разне типове фајлова. Ово је корисно када треба установити на ком месту је нека поједина путања за неки фајл дефинисана. \item[\texttt{16}] Листа директоријума за сваки елемент путање (ово је релевантно само ако се претражује диск). \item[\texttt{32}] Претраге за фајловима. \item[\texttt{64}] Вредности променљивих. \end{ttdescription} Вредност \texttt{-1} ће активирати све описане опције; у пракси је ово обично и најкорисније. На сличан начин, ако се програм \cmdname{dvips} покрене са одговарајућом комбинацијом ових опција, може се до најситнијих детаља пратити одакле се узимају поједини фајлови. Или, ако се неки фајл не пронађе, детаљан излаз који смо добили показује у којим је директоријумима програм покушавао да нађе задати фајл, тако да се може добити неки наговештај о томе где лежи проблем. Уопштено говорећи, будући да већина програма позива библиотеку \KPS{} интерно, опција за отклањање грешака се може укључити путем системске променљиве \envname{KPATHSEA\_DEBUG} тако што се она подеси на неку вредност (или комбинацију вредности) описану у претходној табели. (Напомена за кориснике \Windows{}-а: на овом систему није лако преусмерити све поруке које даје неки програм у фајл. За сврхе дијагностиковања можете привремено да подесите одговарајућу променљиву помоћу \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}.) Размотримо као пример један мали фајл са \LaTeX{} \tmpbox{ко\char"0302 дом}, \file{hello-world.tex} („Здраво, свете!“), са следећим садржајем: \begin{verbatim} \documentclass{article} \begin{document} Hello World! \end{document} \end{verbatim} Овај мали фајл користи само фонт \file{cmr10}, па погледајмо стога како \cmdname{dvips} припрема \PS{} фајл (желимо да користимо Type~1 верзију фонтова из породице \textenglish{Computer Modern}, отуда опција \texttt{-Pcms}). \begin{alltt}> \Ucom{dvips -d4100 hello-world -Pcms -o} \end{alltt} У овом случају смо комбиновали ниво 4 за отклањање грешака програма \cmdname{dvips} (тј. путање везане за фонтове) са прерачунавањем елемента путање преко \KPS{} (погледајте упутство за употребу програма \cmdname{dvips}). Излаз (незнатно пресложен) може се видети на слици~\ref{fig:dvipsdbga}. \begin{figure*}[tp] \centering \input{examples/ex6a.tex} \caption{Тражење конфигурационих фајлова}\label{fig:dvipsdbga} \end{figure*} \cmdname{dvips} почиње тако што лоцира своје сопствене конфигурационе фајлове. Најпре налази \file{texmf.cnf}, и тај фајл му даје дефиниције путања на којима треба наћи друге фајлове, затим се проналази база података \file{ls-R} (како би се трагање за фајловима оптимизовало), и коначно фајл \file{aliases}, који омогућава да се зада више имена за исти фајл (нпр. кратка имена у стилу система DOS~8.3 или читкије дуже варијанте). Затим \cmdname{dvips} прелази на тражење општег конфигурационог фајла \file{config.ps}, пре него што прегледа фајл са подешавањима по имену \file{.dvipsrc} (који, у овом случају, \emph{није пронађен}). Коначно, \cmdname{dvips} налази конфигурациони фајл за породицу \PS{} фонтова \textenglish{Computer Modern}, који се зове \file{config.cms} (ово је иницирано зато што је уз команду \cmdname{dvips} употребљена опција \texttt{-Pcms}). Овај фајл садржи листу фајлова са мапама који дефинишу однос између \TeX{}-а, \PS{}-а и стварних имена фонтова на диску. \begin{alltt}> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} p +ams.map p +cms.map p +cmbkm.map p +amsbkm.map \end{alltt} \cmdname{dvips} налази све ове фајлове, као и општи фајл са мапом по имену \file{psfonts.map}, који се увек учитава (он садржи декларације за најчешће коришћене \PS{} фонтове; последњи део одељка \ref{sec:examples-of-use} садржи више информација о коришћењу фајлова са мапама за \PS{} фонтове). На овом ступњу \cmdname{dvips} се представља кориснику: \begin{alltt}This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) \end{alltt} \ifSingleColumn Затим прелази на тражење пролог фајла \file{texc.pro}: \begin{alltt}\small kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro \end{alltt} \else Затим тражи пролог фајла \file{texc.pro} (погледајте слику~\ref{fig:dvipsdbgb}). \fi Нашавши поменути фајл, \cmdname{dvips} исписује датум и време и обавештава нас да ће направити фајл \file{hello-world.ps}, затим да му треба фонт-фајл \file{cmr10}, као и да ће овај последњи бити означен као „резидентан“ (тј. да му нису потребне бит-мапе): \begin{alltt}\small TeX output 1998.02.26:1204' -> hello-world.ps Defining font () cmr10 at 10.0pt Font cmr10 is resident. \end{alltt} Сада се претрага наставља, овог пута за фајлом \file{cmr10.tfm}; када га пронађе, упућује се на још неколико пролог фајлова (нису приказани), и на крају се лоцира Type~1 облик фонта, који се зове \file{cmr10.pfb}, и тај податак се укључује у фајл са излазом (погледајте последњу линију). \begin{alltt}\small kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: /var/tex/fonts/tfm//). kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, ... kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb [1] \end{alltt} \subsection{Опције током рада (runtime options)} Још једна корисна способност \Webc{}-а јесте могућност да се контролише велики број меморијских параметара (а посебно „array sizes“) путем фајла \file{texmf.cnf} који чита \KPS{}. Подешавања која се тичу меморије могу се пронаћи у делу~3 тог фајла у \TL{} дистрибуцији. Важнији параметри које можете да подесите су: \begin{ttdescription} \item[\texttt{main\_memory}] Укупна расположива меморија (\textenglish{Total words of memory available}) за \TeX{}, \MF{} и \MP. За сваку вредност се мора направити посебан фајл са форматом. На пример, можете да направите „огромну“ (huge) верзију \TeX{}-a и да назовете фајл са форматом \texttt{hugetex.fmt}. Према стандардним правилима означавања имена\char"0304\ програма\char"0304\ којих се држи \KPS{}, посебна вредност променљиве \texttt{main\_memory} прочитаће се из фајла \file{texmf.cnf}. \item[\texttt{extra\_mem\_bot}] Додатни простор за „велике“ („large“) структуре података које прави \TeX{}: оквири (\textenglish{boxes}), лепак (\textenglish{glue}), места прелома (\textenglish{breakpoints}) итд. Посебно корисно ако користите \PiCTeX{}. \item[\texttt{font\_mem\_size}] Количина меморије за податке о фонтовима која стоји \TeX{}-у на располагању. Ово је мање-више укупна величина свих прочитаних TFM фајлова. \item[\texttt{hash\_extra}] Додатни простор за „hash“ табелу са именима контролних секвенци. Само \tmpbox{\char"007E 10.000} контролних секвенци може да се смести у главну „hash“ табелу; ако имате велику књигу са бројним унакрсним референцама, може се лако десити да то није довољно. Подразумевана вредност променљиве \texttt{hash\_extra} је \texttt{50000}. \end{ttdescription} \noindent Ово није замена за праве динамичке низове и методе располагања меморијом, али пошто је изузетно тешко да се тако нешто изведе у садашњем изворном \tmpbox{ко\char"0302 ду} \TeX{}-а, ови параметри за покретање програма представљају практични компромис који ипак даје и нешто флексибилности. \htmlanchor{texmfdotdir} \subsection{\texttt{\$TEXMFDOTDIR}} \label{sec:texmfdotdir} На разним местима ми смо раније задавали разне путање за претрагу које почињу са \code{.} (како би се тренутни директоријум претраживао први), као у следећем примеру: \begin{alltt}\small TEXINPUTS=.;$TEXMF/tex// \end{alltt} Овај пример је поједностављивање. Фајл \code{texmf.cnf} из дистрибуције \TL{} користи \filename{$TEXMFDOTDIR} уместо просто \samp{.}: \begin{alltt}\small TEXINPUTS=$TEXMFDOTDIR;$TEXMF/tex// \end{alltt} (У фајлу из дистрибуције други елемент путање је такође мало компликованији од \filename{$TEXMF/tex//}. Али то је од мањег значаја, сада желимо да размотримо \filename{$TEXMFDOTDIR}.) Разлог да се у именима путања користи променљива \filename{$TEXMFDOTDIR} уместо \samp{.} је проста могућност коришћења неке друге вредности. На пример, компликовани документи могу да имају много изворних фајлова организованих у много поддиректоријума. Како би све радило како треба, можете да подесите \filename{$TEXMFDOTDIR} као \filename{.//} (на пример, у окружењу у коме компајлирате документ) и тада ће сви ти директоријуми бити узети у обзир у претрази. (Упозорење: не користите \filename{.//} као подразумевану вредност; што се тиче сигурности, идеја да претражујете све поддиректоријуме било ког документа је веома лоша.) Још један пример: могуће је да ви уопште не желите да претражујете тренутни директоријум; на пример, тако ће бити ако сте документе организовали тако да се сви фајлови налазе по експлицитним путањама. У том случају можете да подесите \filename{$TEXMFDOTDIR} на вредност \filename{/nonesuch} или на неки непостојећи директоријум. Подразумевана вредност \filename{$TEXMFDOTDIR} је просто \samp{.}, као што је и урађено у нашем \filename{texmf.cnf}. \htmlanchor{ack} \section{Захвалнице} \TL{} је резултат заједничких напора практично свих група корисника \TeX{}-а. Овим издањем \TL{}-а руководио је Карл Бери [\textenglish{Karl Berry}]. Групе и појединци набројани на списку који следи, они који су у прошлости радили на \TL{}-у и они који су тренутно активни, заслужују нашу велику захвалност. \begin{itemize} \itemsep=.15em \parskip=0pt \item Централно удружење корисника \TeX{}-а, као и удружења из Немачке, Холандије и Пољске (TUG, DANTE e.V., NTG и GUST), која обезбеђују неопходну техничку и административну инфраструктуру. Молимо Вас да се учланите у најближу групу корисника \TeX{}-а! (Погледајте \url{https://tug.org/usergroups.html}); \item CTAN тим, који дистрибуира издања \TL{}-а и обезбеђује обједињену инфраструктуру за освежавање свих пакета који имају везе са \TeX{}-ом, од којих \TL{} зависи; \item Нелзон Биб [\textenglish{Nelson Beebe}], који је ставио програмерима \TL{}-а на располагање многе платформе и који \tmpbox{са\char"0302 м} спроводи много темељних тестова и велики библиографски подухват; \item Џон Боумен [\textenglish{John Bowman}], који је обавио велики посао на интеграцији свог напредног графичког програма \prog{Asymptote} у \TL{}; \item Петер Брајтенлонер [\textgerman{Peter Breitenlohner}] и \eTeX\ тим, зато што су поставили чврсте темеље будућим варијантама \TeX-а; осим тога, Петер је много година одржавао систем \GNU\ autotools и елементе изворног \tmpbox{ко\char"302 да} унутар \TL{}-а у беспрекорном стању; Петер је преминуо у октобру 2015. Даљи рад на овом пољу посвећујемо успомени на њега; \item Сташек Ваврикевич [\textpolish{Staszek Wawrykiewicz}], главна особа за тестирање \TL{}-а и координатор многих пољских пројеката, за рад на \Windows{} инсталацији, и још много тога; Сташек је преминуо у фебруару 2018. и ми даљи рад на овом пољу посвећујемо успомени на њега; \item Олаф Вебер [\textenglish{Olaf Weber}], за стрпљиво одржавање система \Webc{} током претходних година; \item Хербен Вирда [\textdutch{Gerben Wierda}], зато што је установио и одржавао верзију \TL{} за \MacOSX; \item Грејем Вилијамс [\textenglish{Graham Williams}], зачетник каталога пакета\char"0304\ \TeX\ Catalogue; \item Владимир Волович, за помоћ око портовања \TL{}-а на многе системе и за рад на многим програмима, нарочито зато што је омогућио да се у дистрибуцију укључи \cmdname{xindy}; \item Мишел Гусенс [\textdutch{Michel Goossens}], који је био један од аутора прве верзије ове документације; \item Ејтан Гурари [\textenglish{Eitan Gurari}], чији систем \TeX4ht користимо да направимо \HTML{} верзије ове документације, , и који је сваке године неуморно радио на усавршавању свог програма. Ејтан је прерано преминуо у јуну 2009. и ми посвећујемо даљи рад на документацији успомени на њега; \item Томас Есер [\textgerman{Thomas Esser}], без чијег сјајног \teTeX{}-а \TL{} никада не би постојао; \item Хоронобу Јамашита [\textenglish{Hironobu Yamashita}], за велики рад на p\TeX\ и подршку везану за тај пројекат; \item Павел Јацковски [\textpolish{Pawe{\l} Jackowski}], за развој инсталационог програма за \Windows{} по имену \cmdname{tlpm}, и Томаш Лужак [\textpolish{Tomasz {\L}uczak}] за програм \cmdname{tlpmgui}, који су се користили у ранијим издањима; \item Акира Какуто [\textenglish{Akira Kakuto}], зато што је ставио на располагање верзије програма за \Windows{} из своје дистрибуције W32TEX за јапански \TeX\ (\url{http://w32tex.org}), као и за велики допринос развоју многих елемената \TL{}-a; \item Хиронори Китагава [\textenglish{Hironori Kitagawa}], за велики рад на p\TeX\ и подршку везану за тај пројекат; \item Џонатан Кју [\textenglish{Jonathan Kew}], зато што је развио изузетни дериват \XeTeX{} и зато што је одвојио време и снагу да га уклопи у \TL{}, као и за почетну верзију инсталера за Mac\TeX\ и за рад на специјализованом едитору \TeX{}works, који сада препоручујемо као окружење за рад; \item Рајнхард Котуха [\textgerman{Reinhard Kotucha}], за велики допринос на развоју инфраструктуре и инсталационог програма за \TL{} 2008, као и за многа истраживања на пољу \Windows{}-а, за скрипту \cmdname{getnonfreefonts}, и још много тога; \item Дик Кох [\textenglish{Dick Koch}], за одржавање Mac\TeX-а (\url{https://tug.org/mactex}) у тесној сарадњи са \TL{} тимом, као и за свој непресушни ентузијазам током рада; \item \tmpbox{Си\char"0304 п} Кроненберг [\textdutch{Siep Kroonenberg}], за велики допринос у раду на инфраструктури и инсталационом програму за \TL{} 2008, посебно на \Windows{}-у, као и за велики рад на проширивању овог приручника како би се те нове могућности описале; \item Клерк Ма [\textenglish{Clerk Ma}], за устрањивање багова у основним програмима и њиховим надоградњама; \item Мојца Миклавец [\textslovenian{Mojca Miklavec}], за велику помоћ око \ConTeXt-а, компајлирање програма за велики број платформи и много других ствари; \item Хеико \tmpbox{Оберди\char"0304 к} [\textdutch{Heiko Oberdiek}], за пакет \pkgname{epstopdf} и за многе друге пакете, за компресију огромних \pkgname{pst-geo} фајлова са подацима тако да смо могли да их укључимо у дистрибуцију, и изнад свега, за његов изузетни рад на \pkgname{hyperref} пакету; \item Фелипе Олејник [\textenglish{Phelype Oleinik}], за рад на \cs{input} у разним програмима током 2020., и много другог; \item Петр Олшак [\textczech{Petr Olšak}], који је веома пажљиво прегледао цео чешки и словачки материјал и координисао рад да се он направи; \item Тошио Ошима [\textenglish{Toshio Oshima}], за његов \cmdname{dviout} приказивач за \Windows{}; \item Мануел Перугје-Гонар [\textfrenchp{Manuel Pégourié-Gonnard}], за помоћ на освежавању пакета, стално унапређивање документације, као и за развој програма \cmdname{texdoc}; \item Фабрис Попино [\textfrenchp{Fabrice Popineau}], за првобитну подршку за \Windows{} у \TL{}-у и за рад на француској верзији документације; \item Норберт Прајнинг [\textgerman{Norbert Preining}], за креирање тренутне инфраструктуре и инсталационог програма за \TL{}, за координацију верзије \TL{}-а за Debian (заједно са Франком Кистером [\textgerman{Frank Küster}]) и за многе друге важне ствари; \item Џозеф Рајт [\textenglish{Joseph Wright}], за велики рад на томе да се исте примитиве понашају једнако у свим доступним програмима; \item Себастијан Рац [\textgerman{Sebastian Rahtz}], зато што је створио \TL{} и одржавао га много година. Себастијан је преминуо у марту 2016, и ми посвећујемо наш даљи рад успомени на њега; \item Луиђи Скарсо [\textitalian{Luigi Scarso}], за велики рад на \MP{}-у, \LuaTeX-у и у многим другим областима; \item Хан Те Тањ [\textenglish{Hàn The\char"0302\char"0301\ Thành}], Мартин Шредер [\textgerman{Martin Schröder}] и pdf\TeX\ тим (\url{http://pdftex.org}) за непрестани рад на проширивању могућности \TeX-а; \item Фил Тејлор [\textenglish{Phil Taylor}], зато што је омогућио да се \TL{} преузима преко \textenglish{BitTorrent}-а; \item Томаш Тжечак [\textpolish{Tomasz Trzeciak}], за свеобухватну помоћ везану за \Windows{}; \item Ханс Хахен [\textdutch{Hans Hagen}], за велики посао тестирања свог \ConTeXt\ пакета (\url{https://pragma-ade.com}) и зато што је омогућио да он ради у оквиру \TL-а, као и за непрестани рад на развоју \TeX{}-а; \item Хартмут Хенкел [\textgerman{Hartmut Henkel}], за значајни допринос на развоју pdf\TeX-а, \LuaTeX-а, и још много тога; \item Шуншаку Хирата [Shunshaku Hirata], за рад на оригиналом DVIPDFM$x$, као и за његов развој; \item Халед Хосни [\textenglish{Khaled Hosny}], за велики допринос \XeTeX{}-у и програму DVIPDFM$x$, као и за рад у области фонтова, пре свега арапских; \item Тако Хукватер [\textdutch{Taco Hoekwater}], зато што је обновио развој MetaPost-а и за рад на [Lua]\TeX-у (\url{http://luatex.org}), за напоре на укључивању \ConTeXt-а у \TL, зато што је омогућио \textenglish{multi-threading} у \KPS{} библиотеци, и још много тога; \item Ђин-Хуан Чо [\textenglish{Jin-Hwan Cho}] и DVIPDFM$x$ тим, за њихов изврсни драјвер и брзе реакције везане за конфигурационе проблеме; \item Андреас Шерер [\textgerman{Andreas Scherer}], за \texttt{cwebbin}, имплементацију CWEB која се користи у \TL{}-у. \end{itemize} Програме за подржане оперативне системе припремили су: Марк Бодоан [\textfrenchp{Marc Baudoin}] (\pkgname{amd64-netbsd}, \pkgname{i386-netbsd}), Кен Браун [\textenglish{Ken Brown}] (\pkgname{i386-cygwin}, \pkgname{x86\_64-cygwin}), Сајмон Дејлс [\textenglish{Simon Dales}] (\pkgname{armhf-linux}), Акира Какуто [\textenglish{Akira Kakuto}] (\pkgname{win32}), Дик Коч [\textenglish{Dick Koch}] (\pkgname{universal-darwin}), Мојца Миклавец [\textslovenian{Mojca Miklavec}] (\pkgname{i386-linux}, \pkgname{amd64-freebsd}, \pkgname{i386-freebsd}, \pkgname{i386-darwin}, \pkgname{powerpc-darwin}, \pkgname{x86\_64-darwinlegacy}, \pkgname{i386-solaris}, \pkgname{x86\_64-solaris}, \pkgname{sparc-solaris}), Норберт Прајнинг [\textgerman{Norbert Preining}] (\pkgname{x86\_64-linux}), Јоханес Хилшер [\textgerman{Johannes Hielscher}] (\pkgname{aarch64-linux}). Процес компајлирања \TL{}-а описан је на \url{https://tug.org/texlive/build.html}. Преводиоци ове документације: Дени Битузе [\textfrenchp{Denis Bitouzé}] и Патрик Бидо [\textfrench{Patrick Bideault}] (француски), Зофја Валчак [\textpolish{Zofia Walczak}] (пољски), Борис Вејцман [\textrussian{Борис Вейцман}] (руски), Ђигод Ђијанг [\textenglish{Jjgod Jiang}], Ђинсонг Џао [\textenglish{Jinsong Zhao}], Јие Ванг [\textenglish{Yue Wang}] и Хелин Гаи [\textenglish{Helin Gai}] (кинески), Карлос Енрикез Фигуерас [\textspanish{Carlos Enriquez Figueras}] (шпански), Никола Лечић (српски), Марко Паланте \textitalian{[Marco Pallante]} и Карла Мађи [\textitalian{Carla Maggi}] (италијански), Петр Сојка [\textczech{Petr Sojka}] и Јан Буша [\textslovak{Ján Buša}] (чешки\slash словачки), Уве Цигенхаген [\textgerman{Uwe Ziegenhagen}] (немачки), Интернет-страница са документацијом за \TL{} је \url{https://tug.org/texlive/doc.html}. Наравно, најважнија захвалница мора ићи Доналду Кнуту [Donald Knuth], најпре зато што је изумео \TeX, а потом зато што га је поклонио свету. \section{Историја издања\char"0304} \label{sec:history} \subsection{Прошлост} Крајем 1993. године у Холандском удружењу корисника\char"0304\ \TeX{}-а се, током рада на пројекту 4All\TeX{} \CD{} (намењеног корисницима MS-DOS-а), појавила идеја да се можда може направити јединствени \CD{} за све системе. То је био преамбициозан циљ за оно време; ипак, идеја не само што је дала подстрек да се доврши рад на иначе веома успешном 4All\TeX{} \CD{} пројекту, него је из ње произашла и радна група названа Технички савет TUG-а (Удружења корисника\char"0304\ \TeX{}-а) која је радила на \emph{структури \TeX{} директоријума} (\emph{\TeX{} \textenglish{Directory Structure}} --- \url{https://tug.org/tds}); група је осмислила како да се направи конзистентна и употребљива колекција помоћних \TeX{} фајлова. Целовит нацрт \TDS{}-а објављен је у децембарском издању часописа \textsl{TUGboat} из 1995. и већ на том раном стадијуму било је јасно да би такву структуру требало следити и на \CD{}-у. Дистрибуција \TL{} која је пред Вама представља директан резултат преданости те радне групе. Такође је било јасно да је успех 4All\TeX{} \CD{}-а показао да корисници Unix-а могу имати користи од тако функционалног система, и управо ова идеја представља други главни мотив за рад на \TL-у. Предузели смо прве кораке да направимо такав \TDS{} \CD{} који би радио на Unix-у на јесен 1995. и брзо смо схватили да је \teTeX{} Томаса Есера [\textgerman{Thomas Esser}] савршена полазна тачка, пошто је он већ имао подршку за више оперативних система и пошто је био направљен узимајући у обзир преносивост у погледу организације фајлова које ти системи користе. Томас се сложио да помогне и озбиљан рад је почео почетком 1996. Прво издање објављено је у мају исте године. Почетком 1997, Карл Бери [\textenglish{Karl Berry}] је објавио ново издање система \Webc{}, које је укључивало готово све могућности које је Томас Есер већ убацио у \teTeX, и тако смо одлучили да се друго издање \CD{}-а базира на стандардном \Webc-у, уз додатак скрипте \texttt{texconfig} из \teTeX-а. Треће издање \CD{}-а заснивало се на темељно прерађеној верзији \Webc{}-a (7.2), коју је урадио Олаф Вебер [\textenglish{Olaf Weber}]; истовремено је урађена и нова верзија \teTeX-а, а \TL{} је укључио скоро све његове могућности. Четврто издање следило је исти смер, укључивало је нову верзију \teTeX-а и ново издање \Webc{}-а (7.3). Систем је овог пута имао и потпуну подршку за \Windows{} захваљујући Фабрису Попиноу (\textfrenchp{Fabrice Popineau}). За пето издање (март 2000) многи делови \CD{}-а су редизајнирани и темељније тестирани, а биле су укључене и нове верзије више стотина пакета. Подаци о пакетима спаковани су у XML фајлове. Ипак, највећа промена у \TeX\ Live~5 била је то што су уклоњени сви програми који нису рађени у складу са идејом слободног софтвера. Наиме, намера је била да од тада све у \TL{}-у буде у сагласности са Debian-овим упутствима за слободни софтвер (\textenglish{Debian Free Software Guidelines} --- \url{https://www.debian.org/intro/free}); учинили смо све што је тада било у нашој моћи да проверимо лиценце свих пакета; били бисмо веома захвални ако нас известите о било којој грешци коју смо направили. Шесто издање (јул 2001) садржавало је још више освеженог материјала. Главна промена био је нов инсталациони концепт: корисник од сада може да изабере много одређенији скуп колекција које су му потребне. Језичке колекције биле су комплетно преуређене за ово издање: избор неке од њих од тада не значи да се само инсталирају одговарајући макрои, фонтови итд, него да се уз то припреми и одговарајући \texttt{language.dat}. Седмо издање из 2002. укључивало је велики новитет у облику подршке за \MacOSX{}, и већ уобичајено огромни број освежења свих врста пакета и програма. Један од најважнијих циљева овог издања била је и поновна интеграција \tmpbox{ко\char"0302 да} са \teTeX-ом како би се елиминисао раскорак направљен у верзијама 5~и~6. \subsubsection{2003} 2003. године, услед непрестаног прилива измена и допуна, схватили смо да је \TL{} толико нарастао да више није могао да стане на један \CD, тако да смо га поделили на три одвојене дистрибуције (погледајте одељак~\ref{sec:tl-coll-dists}, стр.~\pageref{sec:tl-coll-dists}). Уз то, \begin{itemize*} \itemsep=.1em \item Према захтеву развојног тима \LaTeX{}-а променили смо стандардне команде \cmdname{latex} и \cmdname{pdflatex} тако да од сада користе \eTeX{} (в.~стр.~\pageref{text:etex}). \item Укључени су нови \textenglish{Latin Modern} фонтови и препоручени за употребу. \item Укинута је подршка за Alpha OSF (подршка за HPUX је укинута још раније), зато што нико није имао нити био спреман да уступи хардвер на којем бисмо компајлирали нове верзије програма\char"0304. \item Инсталација за \Windows{} је измењена из корена; по први пут смо укључили интегрисано окружење засновано на \prog{XEmacs}-у. \item Верзије важних помоћних програма за \Windows{} (Perl, Ghost\-script, Image\-Magick, Ispell) сада су укључене у стандардну инсталацију \TL{}-а. \item Фонт-мапе које користе \cmdname{dvips}, \cmdname{dvipdfm} и \cmdname{pdftex} сада се праве помоћу новог програма по имену \cmdname{updmap} и инсталирају се у \dirname{texmf/fonts/map}. \item \TeX{}, \MF{} и \MP{} сада, осим ако није другачије подешено, уписују већину унесених знакова (са ASCII \tmpbox{ко\char"0302 дом} 32 и даље) као такве у излазне фајлове (нпр. \verb|\write|), лог-фајлове и на терминал, тј. \emph{непреведене} уз помоћ нотације \verb|^^|. У \TL{}~7, овај превод је зависио од језичких подешавања у систему (тзв. „\textenglish{locale}“); сада језичка подешавања немају утицај на понашање \TeX{} програма\char"0304. Ако Вам је из неког разлога потребан излаз прерађен помоћу \verb|^^|, просто промените име фајла \verb|texmf/web2c/cp8bit.tcx|. (У будућим издањима ова процедура ће бити упрошћена.) \item Ова документација је темељно прерађена. \item Коначно, пошто су бројеви у ознаци верзије постали непрактични за употребу, верзија је сада просто изједачена са годином: \TL{}~2003. \end{itemize*} \subsubsection{2004} 2004. године десиле су се многе промене: \begin{itemize} \itemsep=.1em \item Ако имате приватно инсталиране фонтове који користе своје сопствене \filename{.map} или (много мање вероватно) \filename{.enc} помоћне фајлове, може се десити да ћете морати да те фајлове уклоните. \filename{.map} фајлови се сада, осим дуж путање \envname{TEXFONTMAPS}, траже искључиво у директоријумима испод \dirname{fonts/map} (тј. у сваком \filename{texmf} стаблу). Слично, \filename{.enc} фајлови се сада, осим дуж путање \envname{ENCFONTS}, траже искључиво у директоријумима испод \dirname{fonts/enc}. \cmdname{updmap} ће покушати да изда неко упозорење ако наиђе на проблематичне фајлове. Упутства о томе како да се поступа са овим и другим подацима налазе се на \url{https://tug.org/texlive/mapenc.html}. \item \TK\ је проширен инсталациониом \CD-ом базираним на \MIKTEX-у, за оне који више воле ту имплементацију него \Webc. Погледајте одељак~\ref{sec:overview-tl} (стр.~\pageref{sec:overview-tl}). \item Унутар \TL-а, једно велико \dirname{texmf} стабло из претходних издања замењено је са три: \dirname{texmf}, \dirname{texmf-dist} и \dirname{texmf-doc}. Погледајте одељак~\ref{sec:tld} (стр.~\pageref{sec:tld}) и фајлове \filename{README} у сваком од њих. \item Сви улазни фајлови који се односе на \TeX\ сада су прикупљени у поддиректоријум \dirname{tex} у сваком \dirname{texmf*} дрвету; они су се раније налазили у одвојеним сродним директоријумима \dirname{tex}, \dirname{etex}, \dirname{pdftex}, \dirname{pdfetex}, итд. Погледајте \CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions}% {\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}. \item Помоћне скрипте (\textenglish{helper scripts}) --- за које није предвиђено да их покрећу сами корисници --- сада су смештене у нове поддиректоријуме по имену \dirname{scripts} у сваком \dirname{texmf*} дрвету, и могу се пронаћи помоћу \verb|kpsewhich -format=texmfscripts|. То значи да треба да поправите подешавања у програмима који позивају такве скрипте, ако их имате. Погледајте \CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts}% {\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}. \item Скоро сви формати остављају већину слова одштампаним каква јесу преко „фајла са преводом“ \filename{cp227.tcx}; некада су их преводили помоћу \verb|^^| нотације. Посебно, слова на позицијама 32--256, „\textenglish{tab}“, „\textenglish{vertical tab}“ и „\textenglish{form feed}“ сада се сматрају приказивим (\textenglish{printable}) не преводе се. Изузетак представљају формати везани за чисти (\textenglish{plain}) \TeX\ (само се 32--126 могу штампати), за \ConTeXt\ (0--255 су принтабилни) и за програм \OMEGA. Ово подразумевано понашање је скоро исто као у \TL~2003, али је реализовано на много чистији начин, са више могућности за накнадна подешавања. Погледајте \CDref{texmf-dist/doc/web2c/web2c.html\#TCX-files}% {\texttt{texmf-dist/doc/web2c/web2c.html\#TCX-files}}. (Узгред, ако је улаз по \textenglish{Unicode} стандарду, може се десити да \TeX\ избаци непотпуне низове знакова када показује контекст грешке, пошто ради само са појединачним бајтовима.) \item \textsf{pdfetex} је сада подразумевани програм за све формате изузев за чисти (\textenglish{plain}) \textsf{tex}. (Наравно, он прави DVI када ради као \textsf{latex}, итд.) Ово између осталог значи да су микротипографске могућности \textsf{pdftex}-а доступне и у \LaTeX-у, \ConTeXt-у, итд; исто важи и за могућности \eTeX-а (\OnCD{texmf-dist/doc/etex/base/}). То такође значи да је важније него икада раније да се користи пакет % emph! \pkgname{ifpdf} (који ради и са чистим \TeX-ом и са \LaTeX-ом) или неки сличан \tmpbox{ко\char"0302 д}, зато што просто тестирање да ли \cs{pdfoutput} или нека примитива нису дефинисани није поуздан начин да се одреди да ли излаз има PDF формат. Ове године смо подесили да ово понашање буде компатибилно са ранијим верзијама колико смо могли, али следеће године се може десити да \cs{pdfoutput} буде дефинисан чак и ако се прави DVI. \item pdf\TeX\ (\url{http://pdftex.org}) има много нових могућности: \vspace{-\topsep} % TMP \begin{itemize*} \item \cs{pdfmapfile} и \cs{pdfmapline} омогућавају да се барата фонт-мапама из самог документа; \item олакшана је употреба микротипографског проширења фонтова (\textenglish{font expansion}: \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html}); \item сви параметри који су се раније подешавали у посебном конфигурационом фајлу \filename{pdftex.cfg} сада се морају подешавати путем примитива\char"0304, обично у фајлу \filename{pdftexconfig.tex}; укинута је подршка за \filename{pdftex.cfg}; сви постојећи \filename{.fmt} фајлови морају да се прераде кад год се \filename{pdftexconfig.tex} промени; \item више информација о свему овоме можете пронаћи у приручнику за pdf\TeX: \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}. \end{itemize*} \vspace{-\topsep} % TMP \item Примитива \cs{input} у програму \cmdname{tex} (као и у \cmdname{mf} и у \cmdname{mpost}) сада прихвата аргументе са дуплим наводницима који садрже размаке и друге специјалне знаке. Типични примери: \vspace{-.9\topsep} % TMP \begin{verbatim} \input "име фајла са размацима" % plain \input{"име фајла са размацима"} % latex \end{verbatim} \vspace{-.9\topsep} % TMP \Webc{} приручник садржи много више информација о овоме: \OnCD{texmf-dist/doc/web2c}. \item \Webc{} сада укључује и подршку за enc\TeX\ (а тиме и за све \TeX\ програме) путем опције \optname{-enc}, али \emph{само када се праве фајлови са форматима}. enc\TeX\ подржава свеобухватно мењање кодног распореда улаза и излаза, омогућујући на тај начин пуну подршку за \textenglish{Unicode} (у UTF-8 кодном распореду). Погледајте \OnCD{texmf-dist/doc/generic/enctex/} и \url{https://olsak.net/enctex.html}. \item У дистрибуцији је сада доступан Aleph, програм који комбинује \eTeX\ и \OMEGA. Кратка документација се може наћи у \OnCD{texmf-dist/doc/aleph/base} и на страници \url{https://texfaq.org/FAQ-enginedev}. Aleph формат заснован на \LaTeX-у назива се \textsf{lamed}. \item Најновије издање \LaTeX-а садржи нову верзију LPPL лиценце --- која је сада званично одобрена од стране Debian-а. Што се тиче других новости везаних за ову област, погледајте фајл \filename{ltnews} у \OnCD{texmf-dist/doc/latex/base}. \item У дистрибуцију је укључен \cmdname{dvipng}, нови програм за претварање DVI фајлова у PNG слике. Погледајте \url{http://www.ctan.org/pkg/dvipng}. \item Скуп фонтова који припадају пакету \pkgname{cbgreek} свели смо на „средњу“ величину, уз пристанак и савет аутора, Клаудија Бекарија \textitalian{[Claudio Beccari]}. Искључили смо невидљиве, провидне и „оцртане“ (\textenglish{outlined}) фонтове; они се веома ретко користе а нама је простор био преко потребан. Цела колекција је наравно и даље доступна преко CTAN-a (\url{https://ctan.org/pkg/cbgreek-complete}). \item \cmdname{oxdvi} је уклоњен; уместо њега просто користите \cmdname{xdvi}. \item Линкови \cmdname{ini} и \cmdname{vir} за команде \cmdname{tex}, \cmdname{mf} и \cmdname{mpost} више се не праве (као нпр. \cmdname{initex}). Функционалност команде \cmdname{ini} била је доступна путем опције \optname{-ini} годинама уназад. \item Укинута је подршка за платформу \textsf{i386-openbsd}. Пошто је пакет \pkgname{tetex} доступан преко портова на BSD системима и пошто смо имали спремљене верзије програма\char"0304\ за GNU/Linux и FreeBSD, били смо мишљења да се време волонтера\char"0304\ могло боље употребити за неке друге ствари. \item На платформи \textsf{sparc-solaris} (можда и другде) може бити неопходно да подесите системску променљиву \envname{LD\_LIBRARY\_PATH} како би програми из пакета \pkgname{t1utils} могли да раде. Ово се десило зато што се они компајлирају помоћу C++, у коме нема стандардне локације за библиотеке које програми користе док раде. (Ово није ново у верзији 2004, али раније није било документовано.) Слично, на платформи \textsf{mips-irix}, неоходни су MIPSpro 7.4 радне библиотеке. \end{itemize} \subsubsection{2005} Издање из 2005. објављено је, као и увек, са великим бројем измена Инфраструктура је остала релативно непромењена у односу на 2004. Неизбежно, понешто је морало другачије да се уради: \begin{itemize} \itemsep=.1em \item Уведене су нове скрипте \cmdname{texconfig-sys}, \cmdname{updmap-sys} и \cmdname{fmtutil-sys}; оне мењају конфигурацију у системским директоријумима. Скрипте \cmdname{texconfig}, \cmdname{updmap} и \cmdname{fmtutil} сада прерађују фајлове специфичне за корисника; ти фајлови су смештени у \dirname{$HOME/.texlive2005}. \item У складу са тим, уведене су и одговарајуће нове променљиве \envname{TEXMFCONFIG} и \envname{TEXMFSYSCONFIG}; оне одређују директоријуме у којима се налазе конфигурациони фајлови (кориснички или системски). Стога се може десити да треба да преместите личне верзије фајлова \filename{fmtutil.cnf} и \filename{updmap.cfg} на та нова места; друга могућност је да у \filename{texmf.cnf} промените вредности \envname{TEXMFCONFIG} или \envname{TEXMFSYSCONFIG}. У сваком случају, стварни положај ових фајлова и вредности променљивих \envname{TEXMFCONFIG} и \envname{TEXMFSYSCONFIG} морају да се слажу. Погледајте одељак~\ref{sec:texmftrees}, стр.~\pageref{sec:texmftrees}. \item Прошле године смо задржали \verb|\pdfoutput| и друге примитиве које нису дефинисане за \dvi\ излаз, чак и ако се користи \cmdname{pdfetex}. Ове године, као што смо обећали, повукли смо ту меру компатибилности. Дакле, ако Ваш документ користи \verb|\ifx\pdfoutput\undefined| да установи да ли се прави PDF као излаз, морате да промените тај тест. Можете да за ту сврху употребите пакет \pkgname{ifpdf.sty} (који ради и под чистим \TeX-ом и под \LaTeX-ом) или да позајмите логику из његовог \tmpbox{ко\char"0302 да}. \item Прошле године смо променили већину формата тако да исписују (8-битне) знакове као такве (погледајте претходни одељак). Нови TCX фајл \filename{empty.tcx} сада омогућава лакши начин да се добије оригинална \verb|^^| нотација ако је желите, на пример: \begin{verbatim} latex --translate-file=empty.tcx yourfile.tex \end{verbatim} \item У дистрибуцију је сада укључен нови програм \cmdname{dvipdfmx} који преводи DVI у PDF; ово је надоградња програма \cmdname{dvipdfm} која иза себе има активну групу програмера (стари програм је за сада још увек доступан, премда га не препоручујемо). \item Укључени су нови програми \cmdname{pdfopen} и \cmdname{pdfclose}: они омогућавају да се \filename{.pdf} фајлови изнова учитају у приказивачу \textenglish{Adobe Acrobat Reader} без поновног покретања програма. (Други PDF читачи, пре свега \cmdname{xpdf}, \cmdname{gv} и \cmdname{gsview}, никада нису имали овај проблем.) \item Ради доследности, имена променљивих \envname{HOMETEXMF} и \envname{VARTEXMF} промењена су у \envname{TEXMFHOME} и \envname{TEXMFSYSVAR}. Ту је такође и \envname{TEXMFVAR}, за коју је предвиђено да буде специфична за појединог корисника. Погледајте прву ставку у овом списку. \end{itemize} \subsubsection{2006--2007} Током 2006. и 2007. главни додатак \TL{}-у био је програм \XeTeX{}, доступан путем команди \texttt{xetex} и \texttt{xelatex}; погледајте \url{https://scripts.sil.org/xetex}. Такође, значајно је обновљен и унапређен програм \MP{}, уз велике планове за будућност (\url{https://tug.org/metapost/articles}); настављен је и развој pdf\TeX{}-а (\url{https://tug.org/applications/pdftex}). \TeX-ов \filename{.fmt} (\textenglish{high-speed format}) и слични фајлови за \MP\ и \MF\ сада су смештени у директоријуме унутар \dirname{texmf/web2c} уместо у \tmpbox{са\char"0302 м} тај директоријум (премда се тај директоријум и даље претражује, зарад постојећих \filename{.fmt} фајлова). Поддиректоријуми су названи према програмима (врстама \TeX{}-а) који су у употреби, као што су \filename{tex}, \filename{pdftex} или \filename{xetex}. Ова промена не би требало да буде видљива у свакодневној употреби. (Чисти) \texttt{tex} програм више не чита прву линију која почиње са \texttt{\%\&} како би одредио који формат да покрене; \texttt{tex} је сада чисти кнутовски \TeX. (\LaTeX\ и сви други и даље читају линије са \texttt{\%\&}.) Наравно, и ове године смо, као и обично, унели стотине надоградњи свих пакета и програма. Као и увек, молимо Вас да проверите да ли постоје нове верзије на CTAN-у (\url{http://mirror.ctan.org}). Што се тиче интерног рада програмерског тима, развојно дрво \TL{}-а се сада држи под контролом система \textenglish{Subversion}, са уобичајеним веб-интерфејсом за прегледање \tmpbox{ко\char"0302 да}; можете доћи до одговарајућих страница преко наше уводне Интернет-стране. Премда није оставила много видљивих трагова у коначном издању из ове године, очекујемо да ће ова промена обезбедити стабилан развојни темељ за године које долазе. Коначно, у мају 2006. Томас Есер [\textgerman{Thomas Esser}] је објавио да више неће радити на te\TeX{}-у (\url{https://tug.org/tetex}). Директна последица овог потеза било је огромно интересовање за \TL{}, посебно међу \GNU/Linux дистрибуцијама. (У \TL{}-у сада постоји нова инсталациона шема \texttt{tetex}, која даје приближни еквивалент.) Надамо се да ће се ово у једном тренутку преточити у побољшање квалитета \TeX\ окружења за све кориснике. \subsubsection{2008} 2008. године цела инфраструктура \TL{}-а је редизајнирана и исписана испочетка. Сви подаци о инсталацији сада су смештени у текстуалном фајлу \filename{tlpkg/texlive.tlpdb}. Између осталог, ово је коначно омогућило да се инсталција \TL{}-а освежава преко Интернета након почетног смештања на диск, што је функционалност коју је MiK\TeX\ имао пре много година. Очекујемо да корисницима редовно стављамо на располагање нове пакете чим се објаве на \CTAN-у. У дистрибуцију је укључен важан нови дериват \LuaTeX\ (\url{http://luatex.org}); поред новог нивоа флексибилности у припреми текста, он уводи и сјајан језик за писање команди у облику скрипте (\textenglish{scripting language}), који може да се користи и унутар и ван \TeX\ докумената. Подршка за \Windows{} и платформе засноване на Unix-у сада је много униформнија. Нарочито је битно то што је сада већина скрипти које су написане у језицима Perl и Lua сада доступна и на \Windows{}-у зато што се Perl дистрибуира у оквиру \TL-а. Нова скрипта \cmdname{tlmgr} (одељак~\ref{sec:tlmgr}) сада представља општи интерфејс за одржавање \TL{}-а после почетне инсталације. Она барата новим верзијама пакета\char"0304\ и води рачуна о одговарајућим прерадама фајлова са форматима, мапама (\textenglish{map files}), фајловима везаним за поједине језике, уз могућност да се укључе и локални додаци. Пошто сада имамо на располагању скрипту \cmdname{tlmgr}, све радње (везане за прераду конфигурационих фајлова са форматима и правилима за прелом речи\char"0304) које је некада обављао програм \cmdname{texconfig} сада су искључене. Програм за прављење индекса\char"0304\ \cmdname{xindy} (\url{http://xindy.sourceforge.net/}) укључен је за већину подржаних оперативних система. Алатка \cmdname{kpsewhich} сада може да врати све поготке за задати фајл (опција \optname{--all}) или да ограничи поготке на задати поддиректоријум (опција \optname{--subdir}). Програм \cmdname{dvipdfmx} сада има могућност да извуче податке о висини и ширини текста (\textenglish{bounding box}) ако се позове као \cmdname{extractbb}; ово је била једна од последњих могућности које је имао \cmdname{dvipdfm} а које нису постојале у \cmdname{dvipdfmx}-у. Уклоњена су алтернативна имена (алиаси) за фонтове \filename{Times-Roman}, \filename{Helvetica} итд. Различити пакети очекују различито понашање од тих имена (пре свега очекују да имају различите кодне распореде), и није постојао добар начин да се ово реши. Уклоњен је формат \pkgname{platex} како би се разрешио конфликт око имена са потпуно независним јапанским \pkgname{platex}-ом; пакет \pkgname{polski} сада представља главни ослонац за све што се тиче пољског језика. Интерно, \web\ string pool фајлови сада су компајлирани као бинарни фајлови, како би се олакшале надоградње. Коначно, промене које је увео Доналд Кнут [Donald Knuth] у свом раду „Дорада \TeX{}-а из 2008“ („\textenglish{\TeX\ tuneup of 2008}“) укључене су у ово издање. Погледајте \url{https://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. \subsubsection{2009} У издању из 2009, PDF је постављен као подразумевани излазни формат за Lua\AllTeX\ како би се искористиле могућности напредне \LuaTeX-ове подршке за OpenType итд. Нови програми названи \prog{dviluatex} и \prog{dvilualatex} покрећу \LuaTeX\ са излазом у DVI формату. Интернет-страница \LuaTeX-а је \url{http://luatex.org}. Програм Omega и формат Lambda су уклоњени, након дискусије са ауторима пројекта Omega. У дистрибуцији су остале надограђене верзије Aleph-а и Lamed-а, као и алатке из пројекта Omega. Укључено је и ново издање AMS \TypeI\ фонтова, међу њима и \textenglish{Computer Modern}: на тај начин је постало доступно неколико промена облика\char"0304\ које је Кнут [Knuth] током претходних година унео у изворни \MF\ \tmpbox{ко\char"0302 д}, а побољшан је и „hinting“. Херман Цапф [\textgerman{Hermann Zapf}] је темељно редизајнирао Ојлер [\textgerman{Euler}] фонтове (в. \url{https://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). У свим овим случајевима, метрика је остала непромењена. Интернет-страница фонтова Америчког математичког друштва (AMS) је \url{https://www.ams.org/tex/amsfonts.html}. У дистрибуцију су укључене верзије новог графичког (\GUI{}) окружења \TeX{}works за \Windows{} и Mac\TeX. Ако желите да користите \TeX{}works на другим оперативним системима, погледајте Интернет-страницу пројекта \url{https://tug.org/texworks}. \TeX{}works је програм писан за више платформи и инспирисан је \MacOSX\ едитором TeXShop, са циљем да олакша свакодневни рад у \TeX{}-у. Такође, укључене су верзије графичког програма \textenglish{Asymptote} за неколико оперативних система. Он интерпретира језик за описивање цртежа\char"0304\ који личи на \MP, али са развијеном подршком за тродимензионалне пројекције и многим другим могућностима. Интернет-страница овог програма је \url{https://asymptote.sourceforge.io}. Засебни програм \prog{dvipdfm} замењен је \prog{dvipdfmx}-ом; \prog{dvipdfmx} може да ради у посебном режиму компатибилности ако се позове са старим именом. \prog{dvipdfmx} укључује подршку за кинески, јапански и корејски (CJK) и током година које су прошле од последњег издања \prog{dvipdfm}-а накупило се много исправки. Додати су програми за платформе \pkgname{i386-cygwin} и \pkgname{i386-netbsd}; посаветовани смо да корисници OpenBSD-ја добијају \TL{} преко свог система за пакете; такође, било је и тешкоћа да се направе програми који би имали шансу да раде на више од једног издања тог оперативног система. Још неколико малих промена: сада користимо компресију типа \pkgname{xz}, која представља стабилну замену за \pkgname{lzma} (\url{https://tukaani.org/xz/}); знак |$| је сада дозвољен у именима фајлова уколико то не доводи то поклапања са именом неке постојеће променљиве; библиотека \KPS{} сада има подршку за \textenglish{multi-threading} (неопходно за нову верзију програма \MP{}); читаво компајлирање \TL{}-а сада се заснива на систему \textenglish{Automake}. На крају, једна напомена везана за прошлост: сва издања \TL{}-а, са допунским материјалом као што су налепнице и омоти за \CD-ове, доступна су на страници \url{ftp://tug.org/historic/systems/texlive}. \subsubsection{2010} \label{sec:2010news} % keep with 2010 У издању \TL{}-а из 2010. године подразумевана верзија PDF формата који праве разни програми постављена је на 1.5; ово омогућава бољу компресију докумената. Ова промена важи за све \TeX\ програме када им је задато да праве PDF, као и за \prog{dvipdfmx}. Ако желите да вратите верзију на PDF~1.4, учитајте \LaTeX\ пакет по имену \pkgname{pdf14} или подесите |\pdfminorversion=4|. pdf\AllTeX\ сада \emph{аутоматски} пребацује задати \textenglish{Encapsulated PostScript} (EPS) фајл у PDF формат помоћу пакета \pkgname{epstopdf}; исто важи и ако је учитан \LaTeX-ов конфигурациони фајл \filename{graphics.cfg} и ако је излаз подешен на PDF. Стандардне опције су подешене са намером да елиминишу могућност да се неки ручно урађени PDF фајл случајно пребрише у том процесу, али Ви свеједно можете да спречите да се \prog{epstopdf} учитава стављајући |\newcommand{\DoNotLoadEpstopdf}{}| (или |\def...|) пре команде \cs{documentclass}. Исто тако, \prog{epstopdf} се не учитава ако се користи пакет \pkgname{pst-pdf}. Више детаља о овим стварима можете пронаћи у документацији укљученој у пакет \pkgname{epstopdf} (\url{https://ctan.org/pkg/epstopdf-pkg}). Још једна промена која има везе са овим: сада је покретање малог броја спољних команди од стране \TeX-a (путем \cs{write18}) активирано у стандардној инсталацији. Ове команде су: \code{repstopdf}, \code{makeindex}, \code{kpsewhich}, \code{bibtex} и \code{bibtex8}; списак је одређен у фајлу \filename{texmf.cnf}. Ако радите у окружењу у коме морате да укинете покретање свих таквих спољних команди, можете да искључите одговарајућу опцију у инсталационом програму (погледајте одељак~\ref{sec:options}) или да промените вредност након инсталације помоћу команде |tlmgr conf texmf shell_escape 0|. Промена која следи из претходне две јесте то што ће \BibTeX\ и Makeindex сада, у стандардној конфигурацији, одбити да уписују своје излазне фајлове у произвољни директоријум (као и \tmpbox{са\char"0302 м} \TeX). Ова промена је уведена да би се искористила могућност да се \cmdname{bibtex} и \cmdname{makeindex} додају на листу дозвољених команди путем \cs{write18}; из поменутих разлога оне су у тај списак и укључене. Ако желите да промените ово подразумевано понашање, можете да дефинишете системску променљиву \envname{TEXMFOUTPUT} или да промените параметар |openout_any|. \XeTeX\ сада подржава микротипографске ефекте (\textenglish{margin kerning}) на исти начин као pdf\TeX. (Проширивање фонтова [\textenglish{font expansion}] тренутно није подржано.) У стандардној конфигурацији, \prog{tlmgr} сада прави по једну резервну копију (бекап) за сваки надограђени пакет (\code{tlmgr option autobackup 1}), тако да се пакети чије освежавање не успе могу лако повратити у радно стање помоћу \code{tlmgr restore}. Ако надограђујете пакете после инсталације а немате простора на диску за резервне копије, покрените команду \code{tlmgr option autobackup 0}. У \TL{} су укључени неки нови програми: p\TeX\ и алатке повезане са њим, специјализовани за припрему текста на јапанском језику; програм \BibTeX{}U који уводи подршку за \textenglish{Unicode} у \BibTeX; алатка \prog{chktex} (\url{http://baruch.ev-en.org/proj/chktex}) која проверава исправност \AllTeX\ докумената; програм за пребацивање из DVI у SVG векторски формат (\url{https://dvisvgm.de}). Додате су верзије програма\char"0304\ за пет нових платформи: \pkgname{amd64-freebsd}, \pkgname{amd64-kfreebsd}, \pkgname{i386-freebsd}, \pkgname{i386-kfreebsd}, \pkgname{x86\_64-darwin} и \pkgname{x86\_64-solaris}. Једна промена из \TL{} 2009 коју смо пропустили да евидентирамо: бројни програми везани за \TeX4ht\ (\url{https://tug.org/tex4ht}) склоњени су из директоријума са извршним фајловима. Програм \prog{mk4ht} сада покрива све могуће \prog{tex4ht} комбинације. На нашу велику жалост, издање \TL{}-а на \TK\ \DVD-ју више не може да се покреће „живо“ (\textenglish{live}): \DVD\ као медиј просто више није довољно велики. У томе има, међутим, и једна успутна предност: инсталација са \DVD-ја је сада много бржа. \subsubsection{2011} Издање \TL{}-a из 2011. године донело је релативно мало промена. Програми за \MacOSX\ (\pkgname{universal-darwin} и \pkgname{x86\_64-darwin}) сада раде само на систему \textenglish{Leopard} и на новијим издањима; \textenglish{Panther} и \textenglish{Tiger} нису више подржани. Укључен је програм за обраду библиографија \prog{biber}; постоје верзије за све уобичајене оперативне системе. Развој овог софтвера је тесно повезан са пакетом \pkgname{biblatex}. \prog{biber} поставља на нове основе библиографске могућности које постоје у \LaTeX{}-у. Програм \MP\ (\code{mpost}) више не прави и не користи \filename{.mem} фајлове. Неопховни фајлови, као што је \filename{plain.mp}, напросто се изнова читају сваки пут када се програм покрене. Ова промена везана је за подршку \MP-а као библиотеке, што је још једна значајна, премда за кориснике невидљива промена. Имплементација програма \prog{updmap} у програмском језику Perl, која је раније била у употреби само на \Windows-у, сада је прерађена и стављена у употребу на свим платформама. Ова промена не би требало да буде видљива за кориснике, осим што ће од сада програм радити много брже. Враћени су програми \cmdname{initex} и \cmdname{inimf}, али не и остале \cmdname{ini*} варијанте. \subsubsection{2012} \prog{tlmgr} сада може да обавља надоградње користећи неколико репозиторијума на Интернету упоредо. О овоме можете да прочитате више у документацији \TL\ менаџера (\code{tlmgr help}). Подразумевана вредност параметра \cs{XeTeXdashbreakstate} сада је~1 (и за \code{xetex} и за \code{xelatex}). То значи да ће се линије ломити после средњих и великих црта\char"0304\ (\textenglish{em-dash} и \textenglish{en-dash}), као што је увек био случај у чистом \TeX-у, \LaTeX-у, \LuaTeX-у, итд. У постојећим \XeTeX\ документима у којима је неопходно задржати потпуну компатибилност по питању ломљења линије иза црте морате изричито да подесите вредност \cs{XeTeXdashbreakstate} на~0. Фајлови које праве \code{pdftex} и \code{dvips} (између осталих) сада могу да буду већи од 2 гигабајта. 35 стандардних \PS фонтова сада се уграђују у све фајлове које прави \code{dvips}, зато што се појавило много разних верзија ових „стандардних“ фонтова. У режиму рада \cs{write18} (у коме је дозвољено покретање само малог броја спољних команди), још једна команда додата је у повлашћени списак у стандардној инсталацији: \code{mpost}. Фајл \filename{texmf.cnf} се сада може пронаћи и у \filename{../texmf-local}, тј. преко \filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf} (ако постоји). Скрипта \prog{updmap} сада чита \filename{updmap.cfg} у сваком дрвету уместо само једну глобалну конфигурацију. Ова промена нема никаквих практичних последица за кориснике који нису директно мењали \filename{updmap.cfg} фајлове. Више информација можете пронаћи у документацији скрипте \prog{updmap} (покрените \verb|updmap \mbox{--help}|). Додате су нове платформе \pkgname{armel-linux} и \pkgname{mipsel-linux}; платформе \pkgname{sparc-linux} и \pkgname{i386-netbsd} удаљене су из главне дистрибуције \TL-а. \subsubsection{2013} Структура дистрибуције: директоријум највишег нивоа \filename{texmf/} је ради једноставности спојен са \filename{texmf-dist/} и више не постоји. Сада \KPS{} променљиве \code{TEXMFMAIN} и \code{TEXMFDIST} обе показују на \filename{texmf-dist}. Инсталација и пакети: Велики број малих језичких колекција је груписан како би се процес инсталације упростио. \MP{} сада без употребе спољних програма подржава излаз у формату PNG и IEEE стандард бројева двоструке тачности (\textenglish{floating-point --- IEEE double}). \LuaTeX\ сада садржи Lua 5.2 и нову библиотеку \code{pdfscanner}, која му омогућава да процесуира спољне PDF документе и још много тога (погледајте Интернет страницу овог пројекта). \XeTeX\ сада (такође погледајте Интернет страницу пројекта): \begin{itemize*} \itemsep=.01em \item за баратање фонтовима користи библиотеку HarfBuzz уместо ICU (ICU се и даље користи за кодни распоред улазног текста, подршку писања са десна на лево и опционално ломљење редова према стандарду Unicode); \item за подршку фонт-технологије Graphite користи Graphite2 и HarfBuzz (уместо досадашњег \code{SilGraphite}); \item На \MacOSX{} користи Core Text уместо застареле технологије ATSUI; \item даје предност TrueType/OpenType фонтовима у односу на Type1 у случају да имају исто име; \item више нема проблема са повременим неспоразумима између \XeTeX-а и \prog{xdvipdfmx} у погледу проналажења фонтова; \item подржава OpenType math cut-ins. \end{itemize*} \cmdname{xdvi}: сада користи \code{FreeType} уместо \code{t1lib} за рендеринг. \pkgname{microtype.sty}: доноси нове микротипографске могућности, укључујући побољшану подршку за \XeTeX\ (\textenglish{protrusion}) и \LuaTeX\ (\textenglish{protrusion, font expansion, tracking}). \cmdname{tlmgr}: нова подкоманда \code{pinning} уведена је да олакша конфигурисање рада \TL{} у случају да користите више репозиторијума на Интернету истовремено; погледајте одговарајући одељак у \verb|tlmgr --help| (или исти садржај преко Интернета, на \url{https://tug.org/texlive/doc/tlmgr.html#MULTIPLE-REPOSITORIES}). Платформе: \pkgname{armhf-linux}, \pkgname{mips-irix}, \pkgname{i386-netbsd} и \pkgname{amd64-netbsd} су враћене или укључене први пут; \pkgname{powerpc-aix} је уклоњен из дистрибуције. \subsubsection{2014} Ову годину је обележила још једна мала поправка у Кнутовом \TeX-у. Она се пројектује на све деривативне програме („\textenglish{engines}“), али ће једина видљива промена највероватније бити то што ће се у иницијалном излазу програма поново појављивати речи \code{preloaded format}. Према Кнутовим речима, то означава формат који \emph{може} бити учитан уколико нема додатних инструкција, и не означава „\textenglish{undumped}“ формат који се садржи у извршном фајлу. Овај формат се може променити на разне начине. pdf\TeX: Додат је нови параметар за укидање порука о упозорењима, \cs{pdfsuppresswarningpagegroup}; додате су нове примитиве за размак између речи које треба да помогну око реформатирања прелома текста у формату PDF (\textenglish{text reflowing}): \cs{pdfinterwordspaceon}, \cs{pdfinterwordspaceoff}, \cs{pdffakespace}. \LuaTeX: Унете су значајне измене и поправке у механизме учитавања фонтова и преноса речи. Највећа новина су нова варијанта овог дериватива, \prog{luajittex} и његови рођаци, \prog{texluajit} и \prog{texluajitc}. Они користе „\textenglish{just-in-time}“ компајлер језика Lua (детаље можете пронаћи у чланку магазина \textsl{TUGboat}: \url{https://tug.org/TUGboat/tb34-1/tb106scarso.pdf}). \prog{luajittex} је још увек у развојној фази и није доступан на свим оперативним системима; такође, сматра се нестабилнијим од \prog{luatex}. Ни ми ни његови аутори не препоручујемо да га користите осим ако не желите да експериментишете са jit над \tmpbox{ко\char"0302 дом} написаним на језику Lua. \XeTeX: Сада су на свим оперативним системима подржани исти формати слика, укључујући и \MacOSX; уведена је политика избегавања посезања за тзв. уникодном еквиваленцијом („\textenglish{compatibility decomposition}“ --- декомпозиција саставних симбола Уникода), с тим што се то не односи на друге варијанте еквиваленције; OpenType фонтови сада имају предност у односу на фонтове са технологијом Graphite, ради компатибилности са ранијим верзијама \XeTeX-а. \MP: Сада је подржан нови бројни систем, \code{decimal}, као и нова одговарајућа интерна променљива, \code{numberprecision}; у фајл \filename{plain.mp} је, према Кнутовом савету, додата нова дефиниција \code{drawdot}-а; између осталог, исправљене су багови везани за излаз у форматима SVG и PNG. Алатка Con\TeX{}t-а, \cmdname{pstopdf}, биће уклоњена као самостална команда у једном тренутку након издања, због конфликта са програмима са истим именом који постоје на неким оперативним системима. Моћи ће да се позове (може и сада) помоћу \code{mtxrun --script pstopdf}. Нови одговорни програмер је темељно прерадио \cmdname{psutils}. Неке алатке које су се ретко користиле, (\code{fix*}, \code{getafm}, \code{psmerge}, \code{showchar}) сада се налазе у директоријуму \dirname{scripts/}, а не у општем директоријуму са другим програмима (ова одлука ће бити промењена ако се испостави да доноси проблеме). Додата је нова скрипта, \code{psjoin}. Mac\TeX, специјализовани дериват \TeX\ Live-а (одељак~\ref{sec:macosx}), више не укључује опционалне пакете фонтова \textenglish{Latin Modern} и \TeX\ Gyre прилагођене само за рад на \MacOSX, зато што је корисницима веома лако да их инсталирају у случају потребе. Избачен је и програм \cmdname{convert} (део ImageMagick-а), пошто \TeX4ht (конкретно \filename{tex4ht.env}) сада директно користи Ghostscript. Колекција \pkgname{langcjk} (језичка подршка за кинески, јапански и корејски) сада је подељена на три мање колекције. \TL{} сада подржава платформу \pkgname{x86\_64-cygwin} и више не подржава \pkgname{mips-irix}; \textenglish{Microsoft} више не подржава \Windows{} XP, тако да наши програми на том систему могу да престану да раде како треба у било ком тренутку. \subsubsection{2015} \LaTeXe\ сада у стандардној конфигурацији садржи допуне које су се раније активирале помоћу пакета \pkgname{fixltx2e} (пакет као опција више не постоји). Нови пакет \pkgname{latexrelease} и други механизми омогућавају контролу ових измена. У документима \LaTeX\ \textenglish{News} \#22 и „\LaTeX\ \textenglish{changes}“ можете да прочитате детаље. Узгред, пакети \pkgname{babel} и \pkgname{psnfss}, без обзира на то што су део језгра \LaTeX-а, развијају се одвојено и требало би и даље да раде: њих се ове промене не тичу. \LaTeXe\ се сада интерно може конфигурисати према стандарду \textenglish{Unicode} (који симболи представљају слова, како се именују примитиве итд); та подешавања су се раније задавала на нивоу \TL{}-а. Ова промена би требало да буде невидљива за кориснике. Неколико интерних контролних секвенци ниског нивоа добило је нова имена, али укупно понашање би требало да остане непромењено. pdf\TeX: Овај дериват сада подржава JPEG Exif и JFIF. Не приказује се чак ни упозорење ако је \cs{pdfinclusionerrorlevel} негативан. Синхронизован је са \prog{xpdf}~3.04. \LuaTeX: Укључена је нова библиотека \pkgname{newtokenlib} за скенирање токена. Исправљене су грешке везане за \code{normal} генератор случајних бројева, као и многе друге. \XeTeX: Унапређено је баратање сликама. Програм \prog{xetex} од сада прво покушава да покрене \prog{xdvipdfmx} из сопственог директоријума, а не онај који има предност према системској променљивој \envname{PATH}. Интерни \code{XDV} кодови операција\char"0304\ су промењени. \MP{}: Уведен је нови бројевни систем \code{binary}. Уведени су нови програми са подршком за јапански \prog{upmpost} и \prog{updvitomp}, аналогни \prog{up*tex}. Mac\TeX: CJK фонтови из \TL{}-а сада су доступни Ghostscript пакету који је укључен у Mac\TeX. Панел за избор \TeX\ дистрибуције (\textenglish{The \TeX\ Distribution Preference Pane}) сада ради на \textenglish{Yosemite} (\MacOSX~10.10). \XeTeX{} више не подржава „\textenglish{resource-fork font suitcases}“ (ови фајлови обично немају екстензију); „data-fork suitcases“ (\filename{.dfont} фајлови) остају подржани. Инфраструктура: Скрипта \prog{fmtutil} сада чита \filename{fmtutil.cnf} у сваком стаблу посебно, као што то ради \prog{updmap}. \Webc{} скрипте \prog{mktex*} (укључујући \prog{mktexlsr}, \prog{mktextfm} и \prog{mktexpk}) сада дају предност програмима који се налазе у њиховом сопственом директоријуму; до сада је предност имала локација из системске променљиве \envname{PATH}. Платформе: Програми за \pkgname{*-kfreebsd} су уклоњени из дистрибуције зато што се на овој породици оперативних система \TL{} сада лако може инсталирати интерним путем. Подршка за неке додатне платформе је обезбеђена преко странице \url{https://tug.org/texlive/custom-bin.html}. Неке подржане платформе се од сада не дистрибуирају на \DVD-ју (због ограниченог простора), али се и даље могу уобичајеним путем инсталирати преко Интернета. \subsubsection{2016} \LuaTeX: Велике измене примитива\char"0304\ (укључујући промене имена и укидање), као и ново устројство структуре нодова. Преглед ових измена представљен је у чланку Ханса Хахена [\textdutch{Hans Hagen}] „\textenglish{\LuaTeX\ 0.90 backend change for PDF and more}“ (\url{https://tug.org/TUGboat/tb37-1/tb115hagen-pdf.pdf}). Детаљан опис налази се у Приручнику за \LuaTeX: \OnCD{texmf-dist/doc/luatex/base/luatex.pdf}. \MF{}: У дистрибуцију су укључени нови чланови породице, MFlua и MFluajit. Они представљају покушај интеграције \MF{}-а и језика Lua, и налазе се у експерименталној фази. \MP{}: Исправљене су неке грешке и направљени нови кораци ка верзији 2.0. Сви деривативи осим \LuaTeX-a сада узимају у обзир вредност системске променљиве \code{SOURCE\_DATE\_EPOCH}. \LuaTeX{} ће ову функционалност подржавати у следећем издању. Оригинални \code{tex} је намерно изузет. Ако поменута системска променљива има неку вредност, она се користи за временске ознаке у резултујућем PDF фајлу. Ако је, осим ње, подешена и променљива \code{SOURCE\_DATE\_EPOCH\_TEX\_PRIMITIVES}, онда се према вредности \code{SOURCE\_DATE\_EPOCH} подешавају примитиве \cs{year}, \cs{month}, \cs{day} и \cs{time}. Приручник pdf\TeX-а садржи више детаља и примере. pdf\TeX: Нове примитиве \cs{pdfinfoomitdate}, \cs{pdftrailerid} и \cs{pdfsuppressptexinfo} омогућавају контролу одговарајућих вредности које се уписују у PDF, и које се мењају приликом сваког покретања програма (ово се тиче само резултујућег PDF фајла, а не DVI). \XeTeX: Додате су нове примитиве: \cs{XeTeXhyphenatablelength}, \cs{XeTeXgenerateactualtext}, \cs{XeTeXinterwordspaceshaping} и \cs{mdfivesum}; максималан број класа\char"0304\ слова\char"0304\ увећан је на 4096; увећан је id-бајт верзије DVI. Измене у другим програмима: \begin{itemize*} \itemsep=0em \item \prog{gregorio}: овај нови програм је део пакета \pkgname{gregoriotex}, који служи за припрему партитура грегоријанских напева; у стандардној инсталацији укључен је у \code{shell\_escape\_commands}; \item \prog{upmendex}: овај нови програм за прављење индекса\char"0304 (углавном компатибилан са \prog{makeindex}) између осталог подржава сортирање по стандартима \textenglish{Unicode}; \item \prog{afm2tfm}: промене висине условљене присуством акцентских знакова сада могу имати само позитивну вредност; ако не желите никакве измене такве врсте, ту је нова опција \code{-a}; \item \prog{ps2pk} сада може ради са унапређеним верзијама PK/GF фонтова. \end{itemize*} Mac\TeX: Нема више Панела за избор \TeX\ дистрибуције (\textenglish{The \TeX\ Distribution Preference Pane}); његову улогу је преузео \textenglish{\TL{} Utility}. Укључене су нове верзије апликација специфичних за ову дистрибуцију. За кориснике којима је потребна интеграција разник CJK фонтова у Ghostscript предвиђена је скрипта \code{cjk-gs-integrate}. Инфраструктура: Сада је могуће конфигурисати \prog{tlmgr} на системском нивоу; \TL\ сада контролише криптографске суме пакета\char"0304\ и, ако је доступан GPG, проверава криптографске потписе током освежавања преко Интернета. Криптографско верификовање спроводе и инсталер и \prog{tlmgr}. Ако GPG није доступан, сви описани процеси се обављају као раније. Платформе: \pkgname{alpha-linux} и \pkgname{mipsel-linux} више нису укључени у дистрибуцију. % \subsubsection{2017} \LuaTeX: Више контроле на свим нивоима функционалности (\textenglish{callbacks}, слагање текста, приступ интерним променљавама); библиотека за динамичко учитавање \tmpbox{ко\char"0302 да} (\code{ffi}) укључења је на неким платформама. pdf\TeX: Прошлогодишња системска променљива |SOURCE_DATE_EPOCH_TEX_PRIMITIVES| промењена је на |FORCE_SOURCE_DATE|; ова промена се не тиче функционалности; ако листа токена \cs{pdfpageattr} садржи стринг \code{/MediaBox}, изоставља се излаз подразумеваног \code{/MediaBox}. \XeTeX: За обраду математичког садржаја по Unicode/OpenType сада се користе MATH таблице библиотеке HarfBuzz; исправљено неколико багова. \prog{dvips}: Ако је, као резултат вишеструке примене \cs{special} команде, у \file{.dvi} фајлу више пута задата величина папира (\code{papersize}), излаз ће се формирати на основу последње, а не на основу прве (као раније). То је урађено да би се понашање усагласило са \prog{dvipdfmx} и логиком многих пакета\char"0304. Ако не желите ову промену у понашању, употребите параметар \code{-L0} (коме одговара конфигурациони параметар \code{L0}). ep\TeX, eup\TeX: Нове примитиве из pdf\TeX-а: \cs{pdfuniformdeviate}, \cs{pdfnormaldeviate}, \cs{pdfrandomseed}, \cs{pdfsetrandomseed}, \cs{pdfelapsedtime} и \cs{pdfresettimer}. Mac\TeX: Од ове године Mac\TeX\ ће, под платформом \pkgname{x86\_64-darwin}, подржавати само верзије \MacOSX\ за које Apple обезбеђује надоградње које се тичу безбедности; у овом тренутку то су \textenglish{Yosemite}, \textenglish{El~Capitan} и \textenglish{Sierra} (10.10 и новије верзије). Програми за старије верзије \MacOSX\ неће бити укључени у Mac\TeX, али ће и даље бити доступни у \TL{}-у (платформе \pkgname{x86\_64-darwinlegacy}, \pkgname{i386-darwin} и \pkgname{powerpc-darwin}). Инфраструктура: Ново подразумевано понашање је да се сада дрво \envname{TEXMFLOCAL} претражује пре \envname{TEXMFSYSCONFIG} и \envname{TEXMFSYSVAR}; очекујемо да ће се нова пракса боље слагати са очекивањима корисника код којих одређени локални фајлови треба да имају предност у односу на системске. Осим тога, \prog{tlmgr} има нови режим под називом \code{shell}, који се може користити за писање скрипти или интерактивно, и нову команду \code{conf auxtrees}, која омогућава да се лако додају или уклоне одговарајуће хијејархије података. \prog{updmap} и \prog{fmtutil}: Ове скрипте сада упозоравају корисника ако су позване без изричито назначеног тзв. системског режима (тј. без \prog{updmap-sys}, \prog{fmtutil-sys} или опције \code{-sys}) или корисничког режима (тј. без \prog{updmap-user}, \prog{fmtutil-user} или опције \code{-user}). Надамо се да ће ово решити стари проблем: често се дешавало да корисник случајно покрене скрипте у корисничком режиму и тако изгуби будуће системске надоградње. Детаљније о овоме можете прочитати на страници \url{https://tug.org/texlive/scripts-sys-user.html}. \prog{install-tl}: Mac\TeX\ ће од сада личне директоријуме корисника, на пример \envname{TEXMFHOME}, подешавати на |~/Library/...|. Додата је нова опција \code{-init-from-profile}, која омогућава да се инсталација покрене на основу вредности променљивих задатих у одређеном профилу; у ту сврху додата је команда \code{P}, помоћу које је могуће сачувати жељени профил; уведене су нове променљиве за имена профила\char"0304\ (мада се старе и даље прихватају). Sync\TeX: фајл са привременим (tmp) подацима сада је \code{foo.synctex(busy)}, уместо ранијег \code{foo.synctex.gz(busy)} (нема више \code{.gz}). Корисничке програме и системе који уклањају привремене податке треба прилагодити овој промени. Остали програми: Укључен је нови портабилни програм \prog{texosquery-jre8}, који служи да се из \TeX\ документа разазнају locale и друге информације специфичне за оперативни систем; програм је укључен у подразумевани списак |shell_escape_commands|. (Старије верзије JRE могу се користити за \prog{texosquery}, али та комбинација неће функционисати у „\textenglish{restricted mode}“.) Платформе: Погледајте ставку о Mac\TeX\ из овог одељка; нема других измена. \subsubsection{2018} \KPS{}: Проналажење фајлова се сада у свим несистемским директоријумима обавља уз игнорисање разлике међу великим и малим словима (\textenglish{сase-insensitive}). Ако Вам ново подразумевано понашање \KPS{} не одговара, поставите вредност \code{texmf\_casefold\_search} на~\code{0} (или путем подешавања одговарајуће системске променљиве, или у \code{texmf.cnf}). Више информација можете пронаћи у приручнику на страници \url{https://tug.org/kpathsea}. ep\TeX, eup\TeX: Додата нова примитива \cs{epTeXversion}. Lua\TeX: У току су припреме за прелазак на Lua-5.3 током 2019. За већину платформи већ сада је доступан програм \code{luatex53}; ако хоћете да га користите, морате или да му промените име на \code{luatex} или да користите фајлове са \ConTeXt{} Garden (\url{https://wiki.contextgarden.net}); више информација можете пронаћи на самом сајту. \MP{}: Исправљене грешке везане за \PS{} „path directions“ и излаз у форматима TFM и PNG. pdf\TeX: \PS „вектори кодирања“ („encoding vectors“ --- који су раније могли да се повежу са Type~1 фонтовима и TFM фајловима) сада могу да се асоцирају и са bitmap фонтовима. Радни директоријум се не више уписује у PDF~ID. Исправљене су грешке везане за \cs{pdfprimitive} и са њом повезане примитиве. \XeTeX: Додата је подршка за \code{/Rotate} приликом импорта PDF слике; % exit nonzero if the output driver fails; неколико исправки везаних за ретке ситуације са UTF-8 и примитивама. Mac\TeX: Погледајте ниже измене везане за подржане верзије. Осим тога, фајлови који се инсталирају у \code{/Applications/TeX/} реорганизовани су ради веће прегледности: на овом месту се у директоријуму највишег нивоа сада налазе четири графичка интерфејса (BibDesk, \LaTeX{}iT, \TL{} Utility и \TeX{}Shop), а у поддиректоријумима су смештене додатне алатке и документација. \code{tlmgr}: Нови графички интерфејси \code{tlshell} (Tcl/Tk) и \code{tlcockpit} (Java); излаз у JSON формату; \code{uninstall} је од сада синоним за \code{remove}; нова опција \code{print-platform-info}. Платформе: \begin{itemize*} \item Уклоњене: \code{armel-linux}, \code{powerpc-linux}. \item \code{x86\_64-darwin} ради на верзијама 10.10--10.13 (Yosemite, El~Capitan, Sierra, High~Sierra). \item \code{x86\_64-darwinlegacy} ради на верзијама 10.6--10.10 (премда је на 10.10 боље да користите \code{x86\_64-darwin}). Leopard (10.5) више није подржан и стога су платформе \code{powerpc-darwin} и \code{i386-darwin platforms} уклоњене из дистрибуције. \item Windows: XP више није подржан. \end{itemize*} % \subsubsection{2019} Kpathsea: конзистентније прерачунавање заграда (\textenglish{brace expansion} и дељење путања (\textenglish{path splitting}); нова променљива \code{TEXMFDOTDIR} (уместо фиксиране \code{.}\ у путањама) даје могућност да се лако претражује у допунским поддиректоријумима (погледајте коментаре у \code{texmf.cnf}). ep\TeX, eup\TeX: Нове примитиве \cs{readpapersizespecial} и \cs{expanded}. Lua\TeX: Сада се користи Lua-5.3 са свим својим изменама на пољу аритметике и интерфејса. За читање PDF фајлова сада се користи сопствена библиотека \code{pplib}; тиме је елиминисана зависност од пројекта \code{poppler} (а тиме и од~C++); интерфейс Lua је измењен у складу са тиме. \MP{}: Команда \code{r-mpost} је сада алиас за позивање са опцијом \code{--restricted}, и додата је у списак команди чија се доступност подразумева. Минимална прецизност је за сада~2 (у децималном и бинарном режиму). Бинарни режим више није доступан у \MP{}lib, али је и даље доступан у самосталном \MP{}. pdf\TeX: Нова примитива \cs{expanded}; ако се њен параметар \cs{pdfomitcharset} подеси на~1, из PDF излаза се избацује \code{/CharSet} зато што се не може рачунати на то да ће бити исправан (што захтевају PDF/A-2 и PDF/A-3). \XeTeX{}: Нове примитиве \cs{expanded}, \cs{creationdate}, \cs{elapsedtime}, \cs{filedump}, \cs{filemoddate}, \cs{filesize}, \cs{resettimer}, \cs{normaldeviate}, \cs{uniformdeviate}, \cs{randomseed}; раширите \cs{Ucharcat} како бисте саздали „активне симболе“ (\textenglish{active characters}). \code{tlmgr}: Сада подржава \code{curl} као програм за преузимање са Интернета; користи \code{lz4} и \code{gzip} пред \code{xz} за локалне бекапе (ако су доступни); у случају паковања и преузимања са Интернета даје предност програмима из система у односу на оне који су дистрибуирани у \TL{}-у, осим ако није подешена системска променљива \code{TEXLIVE\_PREFER\_OWN}. \code{install-tl}: Нова опција \code{-gui} (без аргумената) сада се подразумева на \Windows{}-у и \MacOSX{}; она подразумева нови графички интерфејс написан у Tcl/Tk (погледајте одељке~\ref{sec:basic} и~\ref{sec:graphical-inst}). Програмски алати: \begin{itemize*} \item \code{cwebbin} (\url{https://ctan.org/pkg/cwebbin}) је сада CWEB имплементација у \TL{}-у; она подржава више језичких дијалеката и садржи програм \code{ctwill} за прављење мини-индекса; \item \code{chkdvifont}: даје информације о фонтовима у \dvi{} фајловима, као и у tfm/ofm, vf, gf,~pk; \item \code{dvispc}: прави странице DVI фајла независим у односу на specials. \end{itemize*} Mac\TeX: \code{x86\_64-darwin} сада ради на верзији 10.12 и новијим (Sierra, High Sierra, Mojave); \code{x86\_64-darwinlegacy} још увек подржава 10.6 и новије. Пакет Excalibur за проверу правописа више није укључен у дистрибуцију због своје 32-битне природе. Платформе: Уклоњен \code{sparc-solaris}. \htmlanchor{news} \subsection{Тренутно стање --- 2020} \label{sec:tlcurrent} Опште: \begin{itemize} \item Примитива \cs{input} у свим \TeX-програмима, укључујући сам \texttt{tex}, сада прима име фајла раздељено на групе као аргумент; функционалност овог проширења зависи од система. Стари начин задавања имена фајла помоћу размака/разделитеља није се променио. Нови тип задавања аргумента раније је био разрађен у оквиру Lua\TeX-а, а сада је доступан у свим програмима. Дупли ASCII наводници (\texttt{"}) се уклањају из имена фајла, али се после токенизације не мењају. Ово се тренутно не тиче команде \LaTeX-а \cs{input}, зато што је она редефинисани макро стандардне примитиве \cs{input}. \item Нова опција \texttt{--cnf-line} за \texttt{kpsewhich}, \texttt{tex}, \texttt{mf} и све остале програме, уведена ради подршке произвољних концифурационих подешавања на командној линији. \item Додавање разних примитива у разне програме током ове и претходне године имало је за циљ достизање једнаке функционалности у свим програмима (\textsl{\LaTeX\ News \#31}, \url{https://latex-project.org/news}). \end{itemize} ep\TeX, eup\TeX: нове примитиве \cs{Uchar}, \cs{Ucharcat}, \cs{current(x)spacingmode}, \cs{ifincsname}; провера \cs{fontchar??} и \cs{iffontchar}. Искључиво у eup\TeX: \cs{currentcjktoken}. Lua\TeX: интеграција са библиотеком HarfBuzz сада је доступна у облику нових програма \texttt{luahbtex} (за \texttt{lualatex}) и \texttt{luajithbtex}. Нове примитиве: \cs{eTeXgluestretchorder}, \cs{eTeXglueshrinkorder}. pdf\TeX: нова примитива \cs{pdfmajorversion}; она просто мења број верзије у резултујућем PDF фајлу и не утиче на његов садржај. \cs{pdfximage} и~сл. сада траже фајлове са сликама на исти начин као \cs{openin}. p\TeX: нове примитиве \cs{ifjfont}, \cs{iftfont}. То важи и за ep\TeX, up\TeX, eup\TeX. Xe\TeX: исправке у \cs{Umathchardef}, \cs{XeTeXinterchartoks}, \cs{pdfsavepos}. Dvips: резултујући кодни распореди за битмап фонтове ради боље функционалности copy/paste (\url{https://tug.org/TUGboat/tb40-2/tb125rokicki-type3search.pdf}). Mac\TeX: за Mac\TeX\ и \texttt{x86\_64-darwin} сада је потребна верзија 10.13 или виша (\textenglish{High~Sierra, Mojave, Catalina}); \texttt{x86\_64-darwinlegacy} подржава 10.6 и новије. Mac\TeX\ је сада организован по захтевима Apple према инсталационим пакетима (нотаризација и „\textenglish{hardened runtimes}“ за програме који се покрећу са командне линије). BibDesk и \TeX\ Live Utility више нису у Mac\TeX-у зато што нису нотаризовани; фајл \filename{README} садржи списак сајтова са којих можете да их преузмете. \code{tlmgr} и инфраструктура: \begin{itemize*} \item аутоматски поновни покушај (један) да се преузму пакети ако прво скидање није успело; \item нова опција \texttt{tlmgr check texmfdbs}, која служи да се провери конзистентност \texttt{ls-R} фајлова и \texttt{!!} спецификације за свако посебно дрво; \item имена фајлова који садрже пакете сада имају у себи верзију, на пример \texttt{tlnet/archive/\textsl{pkgname}.rNNN.tar.xz}; иако ова промена не би требало да буде видљива за корисника, она је веома важна за дистрибуцију; \item информација \texttt{catalogue-date} се више не преузима из \TeX~Catalogue зато што често нема везе са надоградњама пакета. \end{itemize*} \subsection{Будућност} \TL{} није савршен, и никада неће ни бити. Намера нам је да наставимо да издајемо нове верзије, да припремимо више документације, више програма и још боље подешену и тестирану структуру макроа, фонтова и свега другог везаног за \TeX{}. Сав овај рад обављају волонтери у свом слободном времену, тако да посла увек има на претек. Стога Вас позивамо да посетите страницу \url{https://tug.org/texlive/contribute.html}. Молимо Вас да шаљете исправке, предлоге и понуде за сарадњу на: \begin{quote} \email{tex-live@tug.org} \\ \url{https://tug.org/texlive} \end{quote} \medskip \noindent \textsl{Срећно \TeX-овање!} % ---------------------------------------------------------------------- \vfill \noindent\rule{\linewidth}{.4pt} \bigskip \noindent\centering\begin{minipage}[b]{.8\textwidth} \scriptsize \begin{english} Serbian translation of \emph{\TeX\ Live Guide: \TL{} 2020}. Copyright © 2010--2020 Nikola Lečić [\email{nikola.lecic@anthesphoria.net}] (the translator). \smallskip Redistribution and use in source (Lua\LaTeX\ code) and `compiled' forms (XDV, SGML, HTML, PDF, PostScript, RTF and so forth) with or without modification, are permitted provided that the following conditions are met: \begin{itemize} \parskip=0pt \itemsep=.4em \item Redistributions of source code (Lua\LaTeX\ code) must retain the above copyright notice, this list of conditions and the following disclaimer as the first lines of the source file unmodified. \item Redistributions in compiled form (transformed to other DTDs, converted to PDF, HTML, PostScript, RTF and other formats) must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. \end{itemize} THIS DOCUMENTATION IS PROVIDED BY THE TRANSLATOR `AS IS' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE TRANSLATOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \end{english} \end{minipage} % ---------------------------------------------------------------------- \end{document}