TEX Live: Приручник
TEX Live 2010*

Карл Бери, уредник
http://tug.org/texlive/

превод на српски језик
Никола Лечић
nikola.lecic@anthesphoria.net

јул 2010

Садржај

1 Увод
 1.1 TEX Live и TEX Collection
 1.2 Подржани оперативни системи
 1.3 Основна инсталација TEX Live-а
 1.4 На шта треба обратити пажњу што се тиче сигурности
 1.5 Помоћ у раду
2 Преглед TEX Live-а
 2.1 TEX Collection: TEX Live, proTEXt, MacTEX
 2.2 TEX Live директоријуми највишег нивоа
 2.3 Садржај директоријума texmf
 2.4 Проширења TEX
 2.5 Други истакнути програми у TEX Live
 2.6 Фонтови у TEX Live
3 Инсталација
 3.1 Покретање инсталационог програма
  3.1.1 Unix
  3.1.2 MacOSX
  3.1.3 Windows
  3.1.4 Cygwin
  3.1.5 Инсталација у текстуалном режиму
  3.1.6 Инсталација у експертском графичком режиму
  3.1.7 Инсталација у поједностављеном графичком („wizard“) режиму
 3.2 Употреба инсталационог програма
  3.2.1 Мени за избор платформе (само на Unix-у)
  3.2.2 Избор компоненти
  3.2.3 Директоријуми
  3.2.4 Опције
 3.3 Параметри програма install-tl на командној линији
  3.3.1 Параметар -repository
 3.4 Постинсталациони задаци
  3.4.1 Windows
  3.4.2 Ако су направљени симболички линкови
  3.4.3 Системске променљиве на Unix-у
  3.4.4 Системске променљиве: глобална подешавања
  3.4.5 Подешавање фонтова за XeTEX
  3.4.6 ConTEXt Mark IV
  3.4.7 Укључивање локалних и личних макроа
  3.4.8 Укључивање спољних фонтова
  3.4.9 Увећавање максимално доступне меморије на Windows-у и Cygwin-у
 3.5 Тестирање инсталације
 3.6 Додатни софтвер који се може преузети са Интернета
4 Инсталације на мрежи
5 Максимално преносиви TEX Live на DVD-ју или USB-диску
6 Одржавање инсталације помоћу tlmgr
 6.1 tlmgr у графичком (GUI) режиму рада
 6.2 Примери позивања tlmgr-а са командне линије
7 Напомене за Windows
 7.1 Могућности специфичне за Windows
 7.2 Додатни софтвер укључен на Windows-у
 7.3 Лични кориснички директоријум на Windows-у
 7.4 Windows-ов „registry“
 7.5 Овлашћења на Windows-у
8 Кориснички водич кроз Web2C
 8.1 Проналажење фајлова помоћу Kpathsea
  8.1.1 Извори путања
  8.1.2 Конфигурациони фајлови
  8.1.3 Прерачунавање путање
  8.1.4 Стандардно прерачунавање
  8.1.5 Прерачунавање заграда
  8.1.6 Прерачунавање поддиректоријума
  8.1.7 Списак специјалних симбола и њихово значење: преглед
 8.2 Базе података са именима фајлова
  8.2.1 База података ls-R
  8.2.2 Самостални програм за претраживање: kpsewhich
  8.2.3 Примери употребе
  8.2.4 Поступци отклањања грешака
 8.3 Опције током рада (runtime options)
9 Захвалнице
10 Историја издањā
 10.1 Прошлост
  10.1.1 2003
  10.1.2 2004
  10.1.3 2005
  10.1.4 2006–2007
  10.1.5 2008
  10.1.6 2009
 10.2 Тренутно стање
 10.3 Будућност

1 Увод

1.1 TEX Live и TEX Collection

У овом документу су описане главне могућности софтверске дистрибуције TEX Live, која се састоји од TEX-а и програма који су повезани са њим, и која се прави за GNU/Linux и друге варијанте Unix-а, Mac OS X и Windows.

TEX Live се може преузети са Интернета или добити преко TEX Collection DVD-ја који групе корисника TEX-а дистрибуирају својим члановима, и на разне друге начине. Одељак 2.1 укратко описује садржај DVD-ја. TEX Live и TEX Collection су резултат удружених напора многих група корисника TEX-а. Овај документ описује пре свега сâм TEX Live.

У TEX Live су укључени програми TEX, LaTeX2e, ConTEXt, Metafont, MetaPost, BibTeX и многи други, обимна колекција макроа, фонтова и документације, као и подршка за припрему текста на много разних писама и језика из свих делова света.

Кратак преглед најважнијих промена у овом издању TEX Live-а налази се на крају документа, у одељку 10 (стр. 79).

1.2 Подржани оперативни системи

TEX Live садржи унапред компајлиране програме за многе варијанте Unix-а, укључујући GNU/Linux и Mac OS X. Такође, ту су и верзије програма за Cygwin. Пошто је изворни код укључен у дистрибуцију, програми се могу компајлирати и на платформама1 за које немамо унапред припремљене бинарне фајлове.

Што се тиче Windows-а, подржани су само Windows 2000 и касније верзије. Подршка за Windows 9x, ME и NT је укинута. Захваљујући овој промени Windows захтева много мање посебног третмана у поређењу са Unix системима. Не постоје посебни 64-битни програми за Windows; уместо тога, 32-битни програми би требало да раде на 64-битним системима.

Погледајте одељек 2.1 ако Вам је потребно више информација о алтернативним решењима за Windows и Mac OS X.

1.3 Основна инсталација TEX Live-а

TEX Live се може инсталирати са DVD-ја или преко Интернета (http://tug.org/texlive/acquire.html). Сам програм за инсталацију који ради преко мреже је мали и скида све што је задато са Интернета.

Програм за инсталацију са DVD-ја Вам омогућава да инсталирате TEX Live на локални диск. TEX Live се не може директно покретати са DVD-ја, као ни из DVD ISO фајла (одраза), али зато можете да припремите преносиву радну верзију на нпр. USB-диску (погледајте одељак 5). Инсталација је детаљно описана у одељцима који следе (стр. 13); укратко, поступак изгледа овако:

1.4 На шта треба обратити пажњу што се тиче сигурности

Према нашем најдубљем знању и уверењу, основни TEX програми који чине језгро TEX Live-a изузетно су робусни (и увек су били такви). Међутим, допунски програми који су укључени у TEX Live нису нужно на истом нивоу, упркос великим напорима. Као и увек, требало би да будете опрезни када покрећете програме да обрађују непоуздане улазне податке; најсигурније што можете да урадите јесте да то увек радите у новом поддиректоријуму.

Потреба за опрезом је нарочито важна на Windows-у, пошто Windows обично тражи програме у текућем директоријуму пре него на било ко другом месту, без обзира на путању за претрагу коју задаје корисник. Ово отвара широку лепезу могућности за напад. Ми смо санирали многе сигурносне пропусте, али неки превиди су без сумње и даље ту, нарочито у програмима који нам долазе са стране. Стога препоручујемо да проверите да ли радни директоријум садржи сумњиве, пре свега извршне фајлове (бинарне или скрипте). Њих обично нема, и свакако не би требало да се створе обичном обрадом неког документа.

Коначно, TEX (и пратећи програми) често стварају нове фајлове када обрађују документ, што је особина која се може злоупотребити на много разних начина. Да поновимо, обрада непознатих докумената у новом поддиректоријуму је најсигурније што можете да урадите.

1.5 Помоћ у раду

Заједница корисника TEX-а је активна и пријатељски расположена, тако да се и на најозбиљнија питања на крају нађе одговор. Међутим, ова подршка је неформалне природе будући да долази од волонтерā и случајних читалаца мејлинг-листа, тако да је нарочито важно да „урадите домаћи задатак“ пре него што нешто питате. (Ако више волите загарантовану комерцијалну подршку, можете се у у потпуности одрећи TEX Live-а и купити одговарајући систем; на страници http://tug.org/interest.html#vendors постоји списак таквих продаваца.)

Ово је листа расположивих ресурса датих отприлике редоследом по коме препоручујемо да их користите:

Страница за почетнике
Ако сте нови у TEX-у, страница http://tug.org/begin.html нуди кратак увод у систем.
TEX FAQ
(питања везана за TEX која се често постављају) представља огромну збирку одговора на све врсте питања, од најосновнијих до најсложенијих. Та збирка је укључена у TEX Live и налази се у директоријуму texmf-dist/doc/generic/FAQ-en/html/index.html, а доступна је и на Интернету преко http://www.tex.ac.uk/faq. Молимо Вас да одговоре прво овде потражите.
TEX Catalogue
(TEX-каталог) Ако тражите неки специфичан пакет, фонт или програм, TEX-каталог је место на коме треба отпочети претрагу. То је огромна колекција свих ствари које имају везе са TEX-ом. Погледајте http://www.ctan.org/help/Catalogue/.
TEX ресурси на Интернету
Интернет-страница http://tug.org/interest.html садржи многе линкове који имају везе са TEX-ом, нарочито на бројне књиге, приручнике и чланке о свим аспектима система.
архивирана подршка
Два главна форума су Usenet група news:comp.text.tex и мејлинг-листа texhax@tug.org. Архиве ова два форума садрже велики број питања и одговора прикупљених током много година; ове претраживе архиве су доступне преко http://groups.google.com/group/comp.text.tex/topics и http://tug.org/mail-archives/texhax. Такође, обична претрага Интернета, на пример преко http://google.com, никад није на одмет.
постављање питања
Ако и даље не можете да пронађете одговор, можете да поставите питање на comp.text.tex користећи Google или свој newsreader, или на texhax@tug.org путем електронске поште. Али, пре него што поставите питање, молимо Вас да прочитате овај текст из FAQ колекције како бисте увећали шансе да добијете користан одговор: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion.
подршка везана за TEX Live
Ако желите да пријавите грешку или ако имате предлоге и коментаре везане за дистрибуцију, инсталацију или документацију TEX Live-а, мејлинг-листа је tex-live@tug.org. Међутим, ако се Ваше питање тиче употребе неког посебног програма укљученог у TEX Live, молимо Вас да пишете особи која тренутно одржава тај програм или на одговарајућу мејлинг-листу. Врло често, покретање програма са параметром --help даје адресу на коју треба пријавити грешке.

С друге стране, ту је пружање помоћи онима који постављају питања. И comp.text.tex и texhax су отворени за сваког, па стога будите слободни да се прикључите; почните да читате и помозите где можете.

2 Преглед TEX Live-а

Овај одељак описује садржај дистрибуције TEX Collection и њеног саставног дела, TEX Live-а.

2.1 TEX Collection: TEX Live, proTEXt, MacTEX

TEX Collection DVD обухвата:

TEX Live
Комплетан TEX систем који се може инсталирати на диск. Интернет-страница TEX Live-a је http://tug.org/texlive/.
MacTEX
Варијанта TEX Live-а за Mac OS X; укључује инсталациони програм писан специјално за Mac OS X и још неке Mac апликације. Интернет-страница пројекта је http://tug.org/mactex/.
proTEXt
Рађен као проширење Windows дистрибуције MiKTEX, proTEXt укључује неколико допунских алатки и поједностављује инсталацију. Он је у потпуности независан од TEX Live-а и има сопствена упутства за инсталацију. Интернет-страница proTEXt-а је http://tug.org/protext.
CTAN
Сајт-копија (mirror) репозиторијума CTAN (http://www.ctan.org).
texmf-extra
Директоријум са разним допунским пакетима.

Лиценце које одређују услове умножавања CTAN-а, пакета protext и садржаја директоријума texmf-extra нису нужно исте као у TEX Live-у, па стога будите опрезни када их редистрибуирате или преправљате.

2.2 TEX Live директоријуми највишег нивоа

Ево списка и кратких описа директоријумā највишег нивоа у TEX Live инсталацији:

bin

Програми TEX система, груписани по платформама.

readme-*.dir

Кратак преглед TEX Live-a и корисни линкови на разним језицима, у HTML и текстуалном формату.

source

Изворни кôд свих програма који су укључени у TEX Live, укључујући средишње TEX дистрибуције засноване на Web2C-у.

texmf

Погледајте опис променљиве TEXMFMAIN у следећем одељку.

texmf-dist

Погледајте опис променљиве TEXMFDIST у следећем одељку.

tlpkg

Скрипте, програми и подаци потребни за одржавање инсталације, као и фајлови специфични за Windows.

Осим управо набројаних директоријума, на највишем нивоу дистрибуције налазе се и инсталационе скрипте и README (ПРОЧИТАЈ-МЕ) фајлови на разним језицима.

Што се тиче документације, од помоћи могу да буду исцрпни линкови у фајлу doc.html, који се налази у директоријуму највишег нивоа. Документација за поједине програме (приручници, man-странице, Info-фајлови) налази се у texmf/doc. Документација за TEX пакете и формате налази се у texmf-dist/doc. Можете да употребите програм texdoc ако желите да пронађете било који део документације.

Документација о самој дистрибуцији TEX Live налази се у texmf/doc/texlive и доступна је на неколико језика:

2.3 Садржај директоријума texmf

Овај одељак даје списак унапред дефинисаних променљивих које одређују распоред података унутар директоријума texmf, сврху којој служе, као и њихов подразумевани положај и својства унутар TEX Live-а. Команда tlmgr conf приказује вредности ових променљивих тако да лако можете да видите на који директоријум (дрво) на Вашој инсталацији оне упућују.

TEXMFMAIN

Дрво у коме се налазе витални делови система као што су конфигурациони фајлови, помоћне скрипте и документација за програме.

TEXMFDIST

Дрво које садржи главни скуп макро-пакета, фонтова, итд.

TEXMFLOCAL

Дрво које администратори могу да користе за инсталацију додатних или надограђених макроа, фонтова, итд; садржај овог дрвета важи за цео систем.

TEXMFHOME

Дрво које корисници могу да користе за своје личне инсталације додатних или надограђених макроа, фонтова, итд; вредност ове променљиве динамички се прилагођава положају личног директоријума сваког појединог корисника.

TEXMFCONFIG

(Лично корисниково) дрво које апликације texconfig, updmap и fmtutil користе за чување измењених конфигурационих података.

TEXMFSYSCONFIG

(Глобално важеће) дрво које користе апликације texconfig-sys, updmap-sys и fmtutil-sys за чување измењених конфигурационих података.

TEXMFVAR

(Лично корисниково) дрво које користе texconfig, updmap и fmtutil за чување аутоматски направљених података које разни програми користе током рада, као што су формати и мапе. Користи га и ConTEXt MkIV.

TEXMFSYSVAR

(Глобално важеће) дрво које користе texconfig-sys, updmap-sys и fmtutil-sys, као и tlmgr, за чување аутоматски направљених података које разни програми користе током рада, као што су формати и мапе.

Подразумевана структура директоријума изгледа овако:

корен система
може да садржи више различитих издања TEX Live-а:
2009

Претходно издање.

2010

Тренутно издање.

bin

 

i386-linux      

програми за GNU/Linux

...

universal-darwin

програми за Mac OS X

win32           

програми за Windows

texmf       

TEXMFMAIN

texmf-dist  

TEXMFDIST

texmf-var   

TEXMFSYSVAR

texmf-config

TEXMFSYSCONFIG

texmf-local

TEXMFLOCAL, заједнички за сва издања.

корисников лични директоријум
($HOME или %USERPROFILE%)
.texlive2009

Лични направљени и конфигурациони подаци за претходно издање.

.texlive2010

Лични направљени и конфигурациони подаци за тренутно издање.

texmf-var   

TEXMFVAR

texmf-config

TEXMFCONFIG

texmf

TEXMFHOME Лични макрои итд.

2.4 Проширења TEX

Кнутов [Knuth] оригинални TEX је замрзнут: осим ретких поправки грешака, у њега се не уносе никакве исправке. Изворни TEX је још увек присутан у TEX Live-у као програм tex, и тако ће и остати у будућности. TEX Live садржи неколико проширених варијанти TEX-а:

e-TEX
додаје неколико нових примитивā  (којe се односе на проширење макроа, читање симболā, класе ознака, додатне могућности за отклањање грешака и још пуно тога), као и проширење звано TEX--XE T које служи за припрему докумената са садржајем на језицима који се пишу са лева на десно, уз оне који се пишу са десна на лево. У подразумеваном режиму, e-TEX је 100% компатибилан са стандардним TEX-ом. Погледајте texmf-dist/doc/etex/base/etex_man.pdf.
pdfTEX
је изграђен на проширењима које је донео e-TEX, додајући на њих подршку за прављење докумената директно у PDF формату (поред уобичајеног DVI) и много проширења невезаних за излаз. Ово је програм који се користи за већину формата, као што су etex, latex, pdflatex. Интернет страница пројекта је http://www.pdftex.org/. Упутство за употребу је texmf-dist/doc/pdftex/manual/pdftex-a.pdf, а примери који демонстрирају неке од његових могућности налазе се у texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex.
LuaTEX
је предвиђен да буде наследник pdfTEX-а, и углавном је (мада не у потпуности) компатибилан са својим претходницима. Намера је такође да он буде функционални надскуп Aleph-а (погледајте ниже), премда нема намере да се подржи техничка компатибилност. Уграђени интерпретер језика Lua (http://www.lua.org/) омогућава елегантна решења за многе тешко решиве проблеме у TEX-у. Када се позива као texlua, функционише као самостални Lua интерпретер и као такав је већ у употреби унутар TEX Live-а. Интернет-страница пројекта је http://www.luatex.org/ а приручник је texmf-dist/doc/luatex/luatexref-t.pdf.
XeTEX
додаје подршку за унос текста према Unicode стандарду уз употребу OpenType фонтова; XeTEX може да користи фонтове који већ постоје на систему; ова подршка је урађена уз употребу спољних библиотека. Погледајте http://tug.org/xetex.
Omega (Omega)
је заснован на Unicode стандарду (сваки знак заузима 16 бита), па стога подржава рад са скоро свим светским писмима у исто време. Он подржава и тзв. „Omega процесе превођења“ („Omega Translation Processes“ — OTP) за извођење сложених транформација над произвољним улазом. Omega није више укључен у TEX Live као одвојени програм; одржавамо само Aleph (погледајте испод).
Aleph
комбинује проширења која су донели Omega и e-TEX. Погледајте texmf-dist/doc/aleph/base.

2.5 Други истакнути програми у TEX Live

Ево неколико других важних програма који су укључени у TEX Live и који се често користе:

bibtex, bibtex8

подршка за прављење библиографијā.

makeindex, xindy

подршка за прављење индексā.

dvips

пребацује DVI формат у PostScript.

xdvi

програм за приказивање DVI формата у графичком систему X (X Window System).

dvilj

DVI драјвер за породицу штампачā HP LaserJet.

dviconcat, dviselect

рад са документима у DVI формату.

dvipdfmx

пребацује DVI у PDF; служи као алтернатива приступу који омогућава pdfTEX (објашњено горе).

psselect, psnup...

алатке за баратање PostScript документима.

pdfjam, pdfjoin...

алатке за баратање PDF документима.

texexec, texmfstart

програми за ConTEXt и PDF.

tex4ht

конвертор из TEX-а у HTML, XML и много других формата.

2.6 Фонтови у TEX Live

У TEX Live је укључен велики број векторских фонтова високог квалитета. Погледајте http://tug.org/fonts и texmf-dist/doc/fonts/free-math-font-survey.

3 Инсталација

3.1 Покретање инсталационог програма

За почетак, потребан Вам је TEX Collection DVD или програм за инсталирање TEX Live-а преко Интернета (net installer). Пронађите инсталациону скрипту: она се зове install-tl на Unix-има, а install-tl.bat на Windows-у.

Net installer:
Скините га са CTAN-а, налази се у директоријуму systems/texlive/ tlnet; преко путање http://mirror.ctan.org/systems/texlive/tlnet бићете аутоматски пребачени на географски најближи сајт-копију (mirror) који садржи најновије верзије целокупног садржаја. Можете да преузмете install-tl.zip, који се може користити и под Unix-ом и под Windows-ом, или значајно мањи install-unx.tar.gz (само за Unix). Када распакујете фајл који сте преузели, у поддиректоријуму install-tl наћи ћете фајлове install-tl и install-tl.bat.
TEX Collection DVD:
Уђите у директоријум texlive. На Windows-у се инсталациони програм обично сам покреће када убаците DVD. DVD можете добити ако постанете члан неке групе корисника TEX-а (наша срдачна препорука да урадите тако, погледајте http://tug.org/usergroups.html), тако што ћете га купити (http://tug.org/store), или тако што ћете сами нарезати ISO фајл.

Погледајте http://tug.org/texlive/acquire.html ако Вам је потребно још информација или неки други начин да дођете до софтвера.

Наредни одељци детаљно објашњавају како се инсталациони програм користи.

3.1.1 Unix

Од сада па надаље, означава „промпт“ („shell prompt“); оно што уноси корисник приказано је подебљаним словима. Скрипта install-tl је написана у језику Perl. Најједноставнији начин да је покренете на Unix системима изгледа овако:

cd /путања/до/програма/за/инсталацију
perl install-tl
(Уместо тога, можете је позвати са perl /path/to/installer/install-tl или са ./install-tl ако је скрипта извршни фајл — има „права на извршавање, речено Unix језиком — итд; нећемо понављати све ове варијације.) Може се десити да је потребно да повећате прозор свог терминала како би у њега стао цео садржај програма (слика 1).

Ако желите да обавите инсталацију у експертском графичком режиму („expert GUI“, слика 2), биће Вам потребан Perl/TK модул компајлиран са XFT подршком; то је обично тако на GNU/Linux-у, али није нужно случај на другим системима.2 Када све буде спремно, откуцајте:

perl install-tl -gui

Ако желите да видите комплетан списак разних опција, откуцајте:

perl install-tl -help

Упозорење везано за корисничка овлашћења на Unix системима: Инсталациони програм TEX Live-а ће поштовати Ваш umask који важи у време инсталације. Дакле, ако желите да инсталирани систем користе и други корисници, побрините се да подесите одговарајуће дозволе, на пример, umask 002. Исцрпније информације о команди umask можете пронаћи у документацији на Вашем систему.

Посебни обзири везани за Cygwin: За разлику од других система компатибилних са Unix-ом, Cygwin у свом стандардном облику не садржи све неопходне програме који су потребни инсталационом програму TEX Live-а. Одељак 3.1.4 посвећен је овој теми.

3.1.2 MacOSX

Као што је поменуто у одељку 2.1, за Mac OS X је припремљена посебна дистрибуција по имену MacTEX (http://tug.org/mactex). Препоручујемо да на Mac OS X систему користите изворни инсталациони програм уместо оног који је укључен у TEX Live зато што ће MacTEX верзија урадити и нека додатна подешавања специфична за Mac OS X, пре свега она која Вам омогућавају да се лако пребацујете са једне на другу дистрибуцију TEX-а (MacTEX, Fink, MacPorts...).

MacTEX је строго заснован на TEX Live-у и главни TEX директоријуми су у потпуности исти. MacTEX на ту структуру додаје неколико допунских директоријума са документацијом и апликацијама специфичним за Mac.

3.1.3 Windows

Ако користите програм за инсталацију преко Интернета (net installer) или ако се инсталациони програм са DVD-ја не отвори аутоматски, двапут кликните install-tl.bat. Ако желите да имате више могућности око подешавања разних параметара, нпр. да изаберете или не изаберете поједине колекције пакета, уместо поменутог програма покрените install-tl-advanced.bat.

Инсталациони програм се може покренути и са командне линије (command-prompt). У наставку текста, ће означавати промпт; оно што куца корисник биће штампано подебљаним словима. Када уђете у директоријум у коме се налази инсталациони програм, откуцајте:

install-tl

Можете да употребите и апсолутну путању, на пример:

D:\texlive\install-tl
Овај конкретан пример значи да користите TEX Collection DVD и да је ознака оптичког драјва на Вашем компјутеру D:. Слика 3 приказује поједностављени графички („wizard“) режим рада инсталационог програма; овај режим се на Windows-у подразумева.

Ако хоћете да инсталирате у текстуалном режиму, откуцајте:

install-tl -no-gui

Комплетан списак опцијā добићете ако откуцате:

install-tl -help


  Installing TeX Live 2010 from: ...
  Platform: i386-linux => "Intel x86 with GNU/Linux"
  Distribution: live (compressed)
  ...
   Detected platform: Intel x86 with GNU/Linux
  
   <B> binary systems: 1 out of 19
  
   <S> Installation scheme (scheme-full)
       84 collections out of 85, disk space required: 2256 MB
  
   Customizing installation scheme:
     <C> standard collections
     <L> language collections
  
   <D> directories:
     TEXDIR (the main TeX directory):
       /usr/local/texlive/2010
     ...
  
   <O> options:
     [ ] use letter size instead of A4 by default
     [X] allow execution of restricted list of programs via \write18
     ...
  
  Actions:
   <I> start installation to hard disk
   <H> help
   <Q> quit

Слика 1: Главни екран инсталационог програма (GNU/Linux)



pict

Слика 2: Инсталациони програм у експертском графичком („Expert GUI“) режиму (FreeBSD)



pict

Слика 3: Инсталациони програм у поједностављеном графичком („Wizard“) режиму (Windows)


3.1.4 Cygwin

Инсталациони програм TEX Live-а ради само на Cygwin 1.7. Пре него што почнете инсталацију, покрените Cygwin-ов програм setup.exe како бисте инсталирали пакете perl и wget уколико не постоје на Вашем систему. Препоручују се и ови додатни пакети:

3.1.5 Инсталација у текстуалном режиму

Слика 1 приказује главни екран инсталационог програма у текстуалном режиму рада на Unix-у. Текстуални режим је стандард на Unix-у.

У овом режиму, инсталациони програм се искључиво ослања на командну линију; употреба курзора није могућа. На пример, не можете да употебите дугме „Тab“ да се премештате од поља до поља за избор и унос текста. Просто откуцате нешто на промпту (разлика између великих и малих слова је битна) и притиснете Enter; тада се цео екран терминала поново испуњава измењеним садржајем.

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

3.1.6 Инсталација у експертском графичком режиму

Слика 2 приказује експертски графички режим рада на FreeBSD систему. Основна разлика у односу на текстуални режим јесте то што овде можете да користите дугмиће и меније.

Овај режим рада се може изричито позвати помоћу

install-tl -gui=perltk

3.1.7 Инсталација у поједностављеном графичком („wizard“) режиму

Ако није другачије захтевано, на Windows-у инсталациони програм користи најједноставнији режим рада који смо могли да осмислимо и који се зове „wizard“ („чаробњак“ — слика 3). Програм у том режиму инсталира све и не пита скоро ништа. Ако желите да подешавате инсталацију, треба да користите неки од горе описаних режима.

Овај режим се може изричито позвати помоћу

install-tl -gui=wizard

3.2 Употреба инсталационог програма

Инсталер је направљен са намером да буде мање-више јасан по себи, али ево неколико напомена о разним опцијама.

3.2.1 Мени за избор платформе (само на Unix-у)


  Available sets of binaries:
  ===============================================================================
     a [ ] alpha-linux      DEC Alpha with GNU/Linux
     b [ ] amd64-freebsd    x86_64 with FreeBSD
     c [ ] amd64-kfreebsd   x86_64 with GNU/FreeBSD
     d [ ] i386-cygwin      Intel x86 with Cygwin
     e [ ] i386-freebsd     Intel x86 with FreeBSD
     f [ ] i386-kfreebsd    Intel x86 with GNU/FreeBSD
     g [X] i386-linux       Intel x86 with GNU/Linux
     h [ ] i386-netbsd      Intel x86 with NetBSD
     i [ ] i386-solaris     Intel x86 with Solaris
     j [ ] mips-irix        SGI IRIX
     k [ ] powerpc-aix      PowerPC with AIX
     l [ ] powerpc-linux    PowerPC with GNU/Linux
     m [ ] sparc-linux      Sparc with GNU/Linux
     o [ ] sparc-solaris    Sparc with Solaris
     p [ ] universal-darwin universal binaries for MacOSX/Darwin
     s [ ] win32            Windows
     t [ ] x86_64-darwin    x86_64 with MacOSX/Darwin
     u [ ] x86_64-linux     x86_64 with GNU/Linux
     v [ ] x86_64-solaris   x86_64 with Solaris

Слика 4: Мени за избор платформе (тј. архитектуре и оперативног система) за програме


Слика 4 приказује мени са подржаним платформама (в. фусноту 1 за објашњење израза „платформа“) за програме, у текстуалном режиму. Подразумева се да ће бити инсталиране само верзије програма за тип процесора и оперативни систем на коме сте покренули инсталацију. Можете, међутим, изабрати и да инсталирате верзије програма и за неке друге платформе. Ово може да буде корисно ако се TEX заједнички користи на мрежи са разнородним машинама или на компјутерима који на себи имају неколико различитих оперативних система.

3.2.2 Избор компоненти


  Select a scheme:
  ===============================================================================
   a [ ] basic scheme (plain and LaTeX)
   b [ ] ConTeXt scheme
   c [X] full scheme (everything)
   d [ ] GUST TeX Live scheme
   e [ ] medium scheme (plain, latex, recommended packages, some languages)
   f [ ] minimal scheme (plain only)
   g [ ] teTeX scheme (more than medium, but nowhere near full)
   h [ ] XML scheme
   i [ ] custom selection of collections

Слика 5: Мени са шемама


Слика 5 приказује TEX Live-ов мени са шемама; преко њега можете изабрати „шему“, тј. један кохерентан скуп колекција пакета. Подразумевана „пуна“ (full) шема инсталира све. Препоручује се да тако и урадите; ипак, можете да изаберете и „основну“ (basic) шему прикладну за мале системе, „минималну“ (minimal) шему за потребе тестирања и „средњу“ (medium) шему — заправо teTeX — нешто у средини између претходна два. Постоје такође и разне специјализоване шеме и шеме прилагођене некој посебној земљи.


pict

Слика 6: Мени са колекцијама


Одабир шеме може да се даље разради помоћу менија „Стандардне колекције“ и „Језичке колекције“ (слика 6, овог пута, за промену, приказани у графичком режиму).

Колекције су за један ниво детаљније него шеме — поједностављено речено, једна шема се састоји од неколико колекција, колекција се састоји од једног или више пакетā, а пакет (најнижи ниво груписања у TEX Live-у) садржи стварне фајлове TEX макроа, фонтова, итд.

Ако желите још више контроле него што нуде менији са колекцијама, можете да користите TEX Live Manager (tlmgr) након инсталације (подгледајте одељак 6); помоћу њега можете да контролишете инсталацију на нивоу пакетā.

3.2.3 Директоријуми

Подразумевани распоред директоријумā описан је у одељку 2.3, стр. 9. Стандардна локација директоријума TEXDIR је /usr/local/texlive/2010 на Unix-у и %SystemDrive%\texlive\2010 на Windows-у.

Главни разлог да промените ове вредности јесте ако немате право уписивања на подразумевано место. Не морате да будете root или администратор да бисте инсталирали TEX Live, али морате имати право уписивања у циљни директоријум.

Разумна алтернатива јесте неки директоријум унутар личног директоријума, посебно ако ћете једини корисник бити Ви. Ознака за лични доректоријум је „~“, на пример „~/texlive/2010“.

Препоручујемо да укључите ознаку за годину у име изабраног директоријума како бисте били у могућности да држите различита издања TEX Live-а једно поред другог. (Такође, можете и да помоћу симболичког линка направите име независно од верзије, нпр. /usr/local/texlive-cur и да тај линк касније промените након тестирања новог издања.)

Промена вредности променљиве TEXDIR у инсталационом програму повлачи за собом и промену директоријумā TEXMFLOCAL, TEXMFSYSVAR и TEXMFSYSCONFIG.

Препоручујемо да користите TEXMFHOME као место за личне макрое и пакете. Подразумевана вредност је ~/texmf. Насупрот TEXDIR-у, овде се ознака ~ чува у новозаписаним конфигурационим фајловима зато што означава лични директоријум било ког појединца који користи TEX. Он на Unix-у узима вредност $HOME а на Windows-у постаје %USERPROFILE%.

TEXMFVAR је место где се смештају кеширани подаци који се стварају током рада програмā и који се разликују од корисника до корисника, укључујући „кеш“ (cache) који прави ConTEXt MkIV.

3.2.4 Опције


  Current options setup:
  ===============================================================================
   <P> use letter size instead of A4 by default: [ ]
   <E> execution of restricted list of programs: [X]
   <F> create format files:                      [X]
   <D> install font/macro doc tree:              [X]
   <S> install font/macro source tree:           [X]
   <L> create symlinks in standard directories:  [ ]
              binaries to:
              manpages to:
                  info to:

Слика 7: Мени са опцијама (Unix)


Слика 7 приказује мени са опцијама у текстуалном режиму рада. Следи више информација о свакој од њих:

узети Letter као подразумевану величину папира уместо A4
(use letter size instead of A4 by default): Избор подразумеване величине папира. Наравно, можете да употребите било коју величину папира ако се за тим укаже потреба у неком посебном документу.
извршавање ограничене листе програма
(execution of restricted list of programs): Почев од TEX Live 2010, покретање једног броја спољних програма дозвољено је у стандардној инсталацији. Листа дозвољених програма (која је веома кратка) дата је у texmf.cnf. Више детаља можете наћи у списку новитета за TEX Live 2010 (одељак 10.2).
направи фајлове са форматима
(create format files): Иако фајлови са форматима које не користите заузимају место на диску и одузимају време да се направе, препоручује се да оставите ову опцију укључену: ако то не урадите, формати ће по потреби бити прављени у личним директоријумима корисника (дрво TEXMFVAR). На том месту неће бити аутоматски освежени ако се, рецимо, појави нова верзија програма или правила за прелом текста, па корисник лако може да има проблем са некомпатибилним форматима.
инсталирај изворни кôд и документацију фонтова и макроа
(install font/macro doc/source tree): Ове опције Вам омогућавају да изоставите преузимање са Интернета или инсталацију документације и изворног кôда који постоје за већину пакета. Искључивање ове опције се не препоручује.
направи симболичке линкове у системским директоријумима
(create symlinks in standard directories) — само на Unix-у: Ова опција служи да избегнете подешавање променљивих из радног окружења (environment variables). Без ове опције, директоријуми TEX Live-а обично морају да се додају у PATH, MANPATH и INFOPATH. Ако ово желите, биће Вам потребно и овлашћење за уписивање у те системске директоријуме. Изричито саветујемо да употребом ове опције не дирате инсталацију TEX-а која је део Вашег система. Она је намењена пре свега да би се TEX Live систему приступало кроз директоријуме који су већ познати кориснику, као што је /usr/local/bin али само ако они пре тога нису садржавали никакве фајлове везане за TEX.

Када су сви параметри подешени према Вашој жељи, можете да притиснете „I“ како бисте започели поступак инсталације. Када се све заврши, пређите на одељак 3.4 и прочитајте шта после тога има да се уради, ако уопште нешто буде потребно.

3.3 Параметри програма install-tl на командној линији

Откуцајте

install-tl -help
како бисте добили списак свих параметара које можете да употребите на командној линији. Можете да користите и - и -- испред назива параметра. Ово је списак могућности које се најчешће употребљавају:

-gui

Ако је могуће биће употребљена графичка (GUI) верзија инсталационог програма. За ово је потребан Perl/Tk модул (http://tug.org/texlive/distro.html#perltk) компајлиран са подршком за XFT; ако Perl/Tk није доступан, инсталација се наставља у текстуалном режиму.

-no-gui

Изричито захтевање употребе текстуалног режима рада, чак и на Windows-у; ово ће Вам требати ако желите инсталацију „која ради са DVD-ја“, пошто она није доступна у графичком (GUI) режиму.

-lang LL

Одређује језик инсталационог програма према стандардном двословном коду LL. Тренутно су подржани следећи језици: енглески (en, подразумевани), чешки (cs), немачки (de), француски (fr), италијански (it), јапански (ja), холандски (nl), пољски (pl), руски (ru), словачки (sk), словеначки (sl), српски (sr), вијетнамски (vi) и кинески (поједностављени zh-cn и традиционални zh-tw). Инсталациони програм ће покушати да одреди језик; ако не успе или ако језик није доступан, пребациће се на енглески.

-portable

Припрема преносиве инсталације на USB-диску или DVD-ју. Ова опција своди остављање трагова на систему-домаћину на најмању могућу меру тако што се TEX Live смешта у један једини директоријум у коме се налази све што му је потребно за рад. Одељак 5 описује употребу оваквог преносивог TEX Live-а.

-profile file

Инсталациони програм увек записује фајл texlive.profile у tlpkg, поддиректоријум Ваше инсталације. Ова опција задаје програму да изнова употреби такав фајл тако да, након прве инсталације, можете да инсталирате TEX Live на више система или компјутера у режиму без постављања питања (batch mode), понављајући све опције које сте првобитно изабрали.

-repository url-or-directory

Одређује репозиторијум из кога ће се инсталирати пакети; погледајте следећи одељак.

3.3.1 Параметар -repository

Подразумевани репозиторијум пакета је један од сајтова-копија (mirror) CTAN-a који се аутоматски одређује преко http://mirror.ctan.org.

Ако не желите да користите овај систем, вредност локације може да буде путања (URL) која почиње са ftp:, http: или file:/, или пак да буде обична путања до локалног директоријума. (Када задајете http: или ftp:, завршни знак „/“ и/или завршни текст „/tlpkg“ се игноришу.)

На пример, можете да изаберете неки посебан CTAN mirror отприлике овако: http://ctan.example.org/tex-archive/systems/texlive/tlnet/, стављајући право име сервера (hostname) и његову специфичну путању до CTAN-садржаја уместо ctan.example.org/tex-archive. Увек свежа листа серверā који држе свеже копије садржаја CTAN-а налази се на http://ctan.org/mirrors.

Ако је задата вредност локална (путања или URL који почиње са file:/), употребиће се спаковани фајлови из поддиректоријума archive у репозиторијуму (чак и у случају да су распаковани фајлови доступни упоредо са њима).

3.4 Постинсталациони задаци

Може се десити да је потребно урадити нешто и после инсталације.

3.4.1 Windows

На Windows-у ће се инсталациони програм побринути о свему што је неопходно.

3.4.2 Ако су направљени симболички линкови

Ако сте изабрали да се направе симболички линкови у стандардним директоријумима (као што је објашњено у одељку 3.2.4), онда нема потребе да преправљате вредности системских променљивих.3

3.4.3 Системске променљиве на Unix-у

Директоријум који садржи инсталиране програме за Ваш оперативни систем мора се додати у путању за претрагу. Свака подржана платформа има свој поддиректоријум унутар TEXDIR/bin. На слици 4 налази се списак поддиректоријума и одговарајућих платформи.

Можете исто тако да додате директоријуме са man-страницама и Info-документацијом у одговарајуће путање за претраге уколико желите да системске алатке могу да их уоче. Иначе, man-страницама можете да приступате и после проширивања списка путања из системске променљиве PATH.

Ако користите шкољку (shell) компатибилну са Bourne као што је bash и Intel x86 GNU/Linux и ако сте задржали подразумевани распоред директоријума као у нашем примеру, фајл који треба да уредите требало би да буде $HOME/.profile (или неки други фајл који се позива из .profile), а линије које треба додати изгледале би овако:

  PATH=/usr/local/texlive/2010/bin/i386-linux:$PATH; export PATH
  MANPATH=/usr/local/texlive/2010/texmf/doc/man:$MANPATH; export MANPATH
  INFOPATH=/usr/local/texlive/2010/texmf/doc/info:$INFOPATH; export INFOPATH

Ако користите шкољку csh или tcsh, фајл који треба уредити обично је $HOME/.cshrc, а линије које треба додати изгледале би овако:

  setenv PATH /usr/local/texlive/2010/bin/i386-linux:$PATH
  setenv MANPATH /usr/local/texlive/2010/texmf/doc/man:$MANPATH
  setenv INFOPATH /usr/local/texlive/2010/texmf/doc/info:$INFOPATH

Ако у својим конфигурационим фајловима („који почињу са тачком“) већ имате нека подешавања ове врсте, онда би наравно требало да уклопите TEX Live директоријуме у већ постојеће вредности.

3.4.4 Системске променљиве: глобална подешавања

Ако желите да промене описане у претходном одељку важе глобално и за сваког новог корисника на систему, онда сте препуштени сами себи; напросто постоји превише варијација од система до система у погледу тога како и где се ове ствари подешавају.

Можемо Вам дати два савета: (1) пробајте да потражите фајл /etc/manpath.config и да, ако постоји, додате линије као што су ове:

  MANPATH_MAP /usr/local/texlive/2010/bin/i386-linux \
              /usr/local/texlive/2010/texmf/doc/man

Или, (2) потрáжите фајл /etc/environment; у њему би могле бити дефинисане путање за претрагу и друге подразумеване системске променљиве.

Осим тога, у свим директоријумима са програмима на Unix системима прави се симболички линк man који показује према texmf/doc/man. Неке варијанте програма man, као што је стандардни man на Mac OS X-у, аутоматски ће се снаћи са новом путањом; на тај начин ћете избећи потребу да било шта подешавате на путањама за претрагу.

3.4.5 Подешавање фонтова за XeTEX

Ако сте инсталирали пакет xetex на оперативном систему компатибилним са Unix-ом, онда су потребна нека додатна подешавања ако желите да XeTEX буде у могућности да пронађе фонтове који су укључени у TEX Live. Како бисмо олакшали овај задатак, када се инсталира пакет xetex (било у иницијалној поставци или накнадно) прави се и одговарајући конфигурациони фајл TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf.

Како бисте начинили фонтове из TEX Live-а видљивим за цео систем, подразумевајући да имате одговарајућа овлашћења на систему, урадите следеће:

  1. прекопирајте фајл texlive-fontconfig.conf у /etc/fonts/conf.d/09-texlive. conf;
  2. покрените fc-cache -fsv.

Ако немате овлашћења да ово урадите, можете да подесите да Вам фонтови из TEX Live-а буду доступни као појединачном кориснику XeTEX-а:

  1. прекопирајте texlive-fontconfig.conf у ~/.fonts.conf, где ~ представља Ваш лични директоријум;
  2. покрените fc-cache -fv.

3.4.6 ConTEXt Mark IV

„Стари“ ConTEXt (Mark II) требало би да ради без икаквих интервенција након инсталације TEX Live-а. Нови ConTEXt Mark IV, заснован на LuaTEX-у, захтева нешто ручног подешавања. После инсталације, корисник мора да покрене:

  luatools --generate
  context --make

Фајлови који ће се притом направити смештају се у TEXMFVAR.

Више информација можете наћи на http://wiki.contextgarden.net/Running_Mark_IV и http://wiki.contextgarden.net/TeX_Live_2010.

3.4.7 Укључивање локалних и личних макроа

Ова тема је имплицтно већ начета у одељку 2.3: TEXMFLOCAL (чија је подразумевана вредност /usr/local/texlive/texmf-local или %SystemDrive%\texlive\texmf-local) јесте место предвиђено за локалне фонтове и макрое који се употребљавају на целом систему, док је TEXMFHOME (чија је подразумевана вредност $HOME/texmf или %USERPROFILE%\texmf) намењен за корисникове личне фонтове и макрое. Предвиђено је да се ови директоријуми не мењају од издања до издања и да нове верзије TEX Live-а аутоматски узимају у обзир њихов садржај. Стога је најбоље да се суздржите од подешавања вредности променљиве TEXMFLOCAL на нешто што је превише удаљено од главног директоријума TEX Live-а, иначе ћете морати ручно да мењате ту вредност за свако будуће издање.

У оба ова директоријума фајлови треба да буду распоређени у одговарајуће поддиректоријуме; како бисте разумели предвиђену структуру, погледајте http://tug.org/tds или прегледајте фајл texmf/web2c/texmf.cnf. На пример, једна LATEX класа или пакет треба да се ставе у TEXMFLOCAL/tex/latex или у TEXMFHOME/tex/latex, или у неки поддиректоријум поменутих директоријума.

Функционалност директоријума TEXMFLOCAL зависи од тога да ли је база података са именима фајлова увек свежа; у супротном фајлови неће моћи да се пронађу. Базу можете освежити командом mktexlsr или употребом дугмета „Поново постави базу података са фајловима“ („Reinit file database“) — наћи ћете га у језичку за конфигурацију програма TEX Live Manager (tlmgr) када он ради у графичком (GUI) режиму.

3.4.8 Укључивање спољних фонтова

Нажалост, ово је веома компликован задатак. Немојте ни да размишљате о овоме уколико нисте вољни да се удубите у најситније детаље инсталације TEX-а. Не заборавите да прво прегледате шта Вам стоји на располагању за слободну употребу: погледајте одељак 2.6.

Једна од алтернативā које Вам стоје на располагању јесте да користите XeTEX или LuaTEX (погледајте одељак 2.4); ови програми Вам омогућавају да користите фонтове из оперативног система без икакве инсталације унутар TEX-а.

Ако ипак морате да се упустите у ову сложену материју, погледајте http://tug.org/fonts/fontinstall.html: на тој страни смо најбоље што смо могли покушали да опишемо неопходну процедуру.

3.4.9 Увећавање максимално доступне меморије на Windows-у и Cygwin-у

Корисницима Windows-а и Cygwin-а (погледајте одаљак 3.1.4 о специфичностима инсталације на Cygwin-у) може да се деси да остану без меморије када покрећу неке програме укључене у TEX Live. На пример, asy може да остане без меморије ако покушате да заузмете низ (array) од 25.000.000 реалних бројева, а LuaTEX може да остане без меморије ако покушавате да обрадите документ са много великих фонтова.

Што се тиче Cygwin-а, можете да увећате расположиву меморију ако пратите одговарајућа упутства из њиховог водича за кориснике (Cygwin User"s Guide — http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html).

На Windows-у морате да направите један додатни фајл, рецимо moremem.reg, који садржи следеће четири линије:

  Windows Registry Editor Version 5.00
  
  [HKEY_LOCAL_MACHINE\Software\Cygwin]
  "heap_chunk_in_mb"=dword:ffffff00

и да онда извршите команду regedit /s moremem.reg као администратор. (Ако желите да увећате меморију само за тренутног корисника уместо на целом систему, употребите кључ HKEY_CURRENT_USER.)

3.5 Тестирање инсталације

Након што сте инсталирали TEX Live, природно је да ћете желети да га испробате како бисте могли да почнете са израдом дивних докумената и/или фонтова.

Овај одељак описује неке основне поступке за проверу функционалности новог система. Овде ћемо дати команде за Unix-е; ако користите Mac OS X или Windows, вероватно ћете све ове команде покретати покренути кроз графички интерфејс, мада принцип остаје исти.

  1. Најпре проверите да ли можете да покренете сам програм tex:

    tex --version
    TeX 3.1415926 (TeX Live 2010)
    kpathsea version 6.0.0
    Copyright 2010 D.E. Knuth.
    ...
    Ако овде добијете поруку „command not found“ („команда се не може пронаћи“) уместо података о верзији TEX-а и ауторским правима, или ако је верзија коју видите старија, то највероватније значи да немате исправан поддиректоријум bin као елемент у системској променљиви PATH. Погледајте како се подешавају системске променљиве на стр. 39.
  2. Покушајте да обрадите основни LATEX фајл:

    latex sample2e.tex
    pdfTeX 3.1415926-1.40.11-2.2 (TeX Live 2010)
    ...
    Output written on sample2e.dvi (3 pages, 7484 bytes).
    Transcript written on sample2e.log.
    Ако LATEX не успе да пронађе sample2e.tex или неки други фајл, највероватније је у питању нека збрка старих и нових системских променљивих или конфигурационих фајлова; у таквим случајевима се препоручује да, за почетак, обришете вредности свих системских променљивих које имају везе са TEX-ом. (Ако Вам треба дубља анализа, може се од самог TEX програма тражити да извести које путање употребљава за претрагу и шта притом успева да пронађе; погледајте одељак „Поступци за отклањање грешака“ [debugging] на стр. 70.)
  3. Затим прегледајте како изгледа документ који сте добили овом обрадом:

    xdvi sample2e.dvi    # Unix
    dviout sample2e.dvi  # Windows
    Требало би да се појави нови прозор са лепим документом који објашњава неке основне ствари о LATEX-у. (Узгред, тај текст је врло корисно прочитати ако сте почетник.) Како би програм xdvi радио, морате имати покренут графички X сервер; ако X не ради или ако је системска променљива DISPLAY неправилно подешена, добићете грешку „Can"t open display“ („Није могуће отворити дисплеј“).
  4. Направите PostScript фајл за штампање или гледање на екрану:

    dvips sample2e.dvi -o sample2e.ps
  5. Направите PDF уместо DVI фајла; ова команда ће обрадити .tex фајл и директно направити PDF:

    pdflatex sample2e.tex
  6. Прегледајте добијени PDF фајл:

    gv sample2e.pdf
    или:
    xpdf sample2e.pdf
    Ни gv ни xpdf нису укључени у TEX Live, тако да морате да их сами одвојено инсталирате. Погледајте http://www.gnu.org/software/gv и http://www.foolabs.com/xpdf ако Вам треба више информација о овим програмима. Наравно, има још много других програма у којима можете отварати PDF фајлове. Ако користите Windows, препоручујемо да пробате Sumatra PDF (http://blog.kowalczyk.info/software/sumatrapdf).
  7. Може бити корисно да пробате и друге тест-фајлове осим sample2e.tex:

    small2e.tex:

    једноставнији документ него sample2e; сврха му је да минимализује величину података који се обрађују ако се појаве неки проблеми;

    testpage.tex:

    проверава понашање Вашег штампача (ивице, итд);

    nfssfont.tex:

    служи да одштампате табеле фонтова и одговарајуће тестове везане за њих;

    testfont.tex:

    такође за табеле са фонтовима, али користи основни TEX;

    story.tex:

    најчистији канонски тест-фајл за TEX који се може направити; морате да откуцате „\bye“ када се појави упит са звездицом (*) након што покренете „tex story.tex“.

  8. Ако сте инсталирали пакет xetex, можете да испробате да ли су системски фонтови видљиви за XeTEX на овај начин:

    xetex opentype-info.tex
    This is XeTeX, Version 3.1415926...
    ...
    Output written on opentype-info.pdf (1 page).
    Transcript written on opentype-info.log.
    Ако добијете поруку „Invalid fontname "Latin Modern Roman/ICU"…“ („Неисправно име фонта "Latin Modern Roman/ICU"…“), онда морате да подесите систем тако да XeTEX може да пронађе фонтове који су укључени у TEX Live. Погледајте одељак 3.4.5.

3.6 Додатни софтвер који се може преузети са Интернета

Ако сте нови у TEX-у, или Вам из било ког разлога треба помоћ око писања докумената у TEX-у или LATEX-у, молимо Вас да посетите http://tug.org/begin.html: ту ћете наћи неке текстове који су веома добри као увод.

Ово су линкови ка Интернет-страницама са још неким програмима који би могли да Вам буду од користи:

Ghostscript
http://www.cs.wisc.edu/~ghost/;
Perl
http://www.perl.org/ са додатним пакетима са CPAN-а, http://www.cpan.org/.
ImageMagick
http://www.imagemagick.com, за обраду слика и пребацивање из једног формата у други.
NetPBM
http://netpbm.sourceforge.net/, такође за обраду слика.
Едитори специјализовани за TEX
Овде имате велики избор и све зависи од Вашег укуса. Ево само неколико, по абецедном реду (неки од побројаних програма раде само на Windows-у):

Још исцрпнији списак пакета и програма налази се на http://tug.org/interest.html.

4 Инсталације на мрежи

TEX Live је дизајниран тако га истовремено могу употребљавати или више корисника на неком систему или корисници који имају разне оперативне системе на некој компјутерској мрежи. Ако се држите стандардног распореда директоријума, подешавања не садрже ниједну фиксирану путању: локације фајлова који су потребни TEX Live програмима проналазе се релативно у односу на саме програме. Овакав приступ постаје јасан ако погледате главни конфигурациони фајл $TEXMFMAIN/web2c/texmf.cnf, који садржи овакве линије:

  TEXMFMAIN = $SELFAUTOPARENT/texmf
  ...
  TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local

Ово значи да корисници других оперативних система само треба да додају директоријум који садржи верзије програма за њихову платформу у своје путање за претрагу како би добили поставку спремну за употребу.

На исти начин можете да инсталирате TEX Live локално и да онда накнадно преместите целу хијерархију на неко друго место на мрежи.

За Windows смо припремили једноставну скрипту за мрежне инсталације по имену w32client; можете је преузети на страници http://tug.org/texlive/w32client.html. Она прави сва потребна подешавања и пречице у менијима тако да можете да користите постојећу инсталацију TEX Live-а на LAN мрежи. Скрипта такође поставља и деинсталациони програм w32unclient који можете наћи у истом zip фајлу. Погледајте поменуту Интернет страницу ако Вам је потребно више података о овом поступку.

5 Максимално преносиви TEX Live на DVD-ју или USB-диску

Како бисте користили TEX Live на „преносив“ начин, са минималним ефектима на систему-домаћину, треба прво да инсталирате TEX Live на USB-диск помоћу инсталационог програма покренутог са опцијом -portable (погледајте одељак 3.3). После тога можете да из почетног директоријума новонаправљене инсталације позивате скрипту tl-portable (Unix) или извршни фајл tl-portable.bat (Windows) како бисте покренули терминал (shell).

Добијени садржај можете и да нарежете са USB-диска назад на DVD ако Вам је тако згодније да га, рецимо, у том облику дате другима.

Када се скрипта tl-portable први пут покрене са DVD-ја, она ће направити неколико фајлова на систему-домаћину у директоријуму ~/.tlportable2010, и то ће потрајати неко време. Приликом сваког наредног позивања скрипта ће се покретати готово тренутно.

Остатак система неће ништа знати о TEX Live-у. Ако желите да Ваш едитор има у виду овај TEX Live, онда треба да га покренете из те секундарне tl-portable сесије.

6 Одржавање инсталације помоћу tlmgr


pict

Слика 8: tlmgr у графичком (GUI) режиму рада: главни прозор, стање после учитавања репозиторијума помоћу дугмета „Учитај“ („Load“).



pict

Слика 9: tlmgr у графичком режиму: Општа подешавања
pict
Слика 10: tlmgr у графичком режиму: Подешавање величине папира


TEX Live садржи програм по имену tlmgr који служи за одржавање TEX Live-а након почетне инсталације. Програми updmap, fmtutil и texconfig и даље су укључени и биће задржани као део система и у будућности, али tlmgr је сада алатка која се препоручује. Његове могућности између осталог укључују:

Упозорење: tlmgr није дизајниран за преносиве инсталације (одељак 5) и није тестиран у таквој улози.

6.1 tlmgr у графичком (GUI) режиму рада

tlmgr се може покренути у графичком (GUI) режиму (слика 8) помоћу

tlmgr -gui
(српски језик добијате помоћу -gui-lang sr) или преко Start-менија на Windows-у: Start, Programs, TeX Live 2010, TeX Live Manager. Када притиснете „Учитај“ („Load“), програм приказује списак доступних и инсталираних пакета. Овде се наравно подразумева да је извор инсталације (installation source) исправно задат, функционалан и доступан.

Слике 9 и 10 приказују изглед програма приликом подешавања општих опција и величине папира.

6.2 Примери позивања tlmgr-а са командне линије

Након почетне инсталације, можете да освежите свој систем најновијим доступним верзијама целокупног садржаја помоћу:

tlmgr update -all
Ако Вас ово чини нервозним, прво пробајте

tlmgr update -all -dry-run
или (са мање објашњења):

tlmgr update -list

Следећи сложенији пример додаје једну колекцију (све што је везано за XeTEX), и то из једног локалног директоријума:

tlmgr -repository /local/mirror/tlnet install collection-xetex
Ова команда даје следеће поруке (скраћено):
  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/2010/texmf/ls-R...
  ...
  running fmtutil-sys --missing
  ...
  Transcript written on xelatex.log.
  fmtutil: /usr/local/texlive/2010/texmf-var/web2c/xetex/xelatex.fmt installed.

Као што видите, tlmgr инсталира све неопходне пакете и води рачуна о свим радњама које су неопходне после инсталације, што у овом случају обухвата освежавање базе података са именима фајлова и поновно прављење неких формата. У претходном примеру смо направили нове формате за XeTEX.

Ако Вам је потребан опис пакета (или колекције или шеме), откуцајте:

tlmgr show collection-latexextra
Команда даје следећи излаз:
  package:    collection-latexextra
  category:   Collection
  shortdesc:  LaTeX supplementary packages
  longdesc:   A large collection of add-on packages for LaTeX.
  installed:  Yes
  revision:   14675

Последње и најважније, пуна документација о програму tlmgr налази се на страници http://tug.org/texlive/tlmgr.html, а можете је видети и ако откуцате:

tlmgr -help

7 Напомене за Windows

TEX Live има један исти инсталациони програм који ради и на Windows-у и на Unix-у. Ово је било могуће извести само тако што смо одустали од подршке за старије верзије Windows-а, тако да се TEX Live сада може инсталирати само на Windows верзијама 2000 и новијим.

7.1 Могућности специфичне за Windows

Осим онога што је описано у претходним одељцима, инсталациони програм на Windows-у обавља још неке додатне ствари:

Менији и пречице.
У Start менију се додаје нови одељак „TEX Live“, преко кога се могу позивати неки графички (GUI) програми (tlmgr, texdoctk, PS_View (psv) PostScript previewer) и преко кога можете да дођете до једног дела документације. PS_View такође добија пречицу и на десктопу: она служи да се на њу превлаче PostScript фајлови.
Аутоматско постављање системских променљивих.
Није потребна никаква ручна интервенција по овом питању.
Уклањање TEX Live-а.
Инсталациони програм додаје одговарајућу ставку за TEX Live у „Add/Remove Programs“. Дугме за деинсталацију у графичком (GUI) режиму програма TEX Live Manager („Уклони“) води до тамо.

7.2 Додатни софтвер укључен на Windows-у

За целовиту инсталацију TEX Live-а потребни су помоћни пакети који обично не постоје на Windows компјутеру. TEX Live обезбеђује следеће карике које недостају:

Perl и Ghostscript.
Због важности Perl-а и Ghostscript-а, TEX Live садржи „скривене“ копије ових програма. TEX Live програми који их користе знају где треба да их потраже, али не одају њихово присуство кроз системске променљиве или путем измена у „registry“-ју. То нису целовите инсталације и не би требало да дођу у сукоб са неком правом инсталацијом Perl-а или Ghostscript-а која је Windows-у видљива.
PS_View.
Такође се инсталира и PS_View, програм у коме се могу отворити PostScript и PDF фајлови; погледајте слику 11.


pict

Слика 11: PS_View може да приказује садржај под великим увећањем


dviout.
На Windows-у се инсталира и dviout, програм у коме можете да прегледате DVI фајлове. У почетку, када почнете да га употребљавате за ту сврху, dviout ће правити потребне фонтове (зато што фонтови за екран нису инсталирани). После неког времена у употреби, направиће се већина фонтова која Вам је потребна и ретко ћете виђати прозор који Вас обавештава о овом поступку. О овом програму можете добити много више података на Интернет страници (коју топло препоручујемо).
TEXworks.
TEXworks је едитор специјализован за TEX; он има уграђен приказивач PDF фајлова.
Алатке за командну линију.
Осим уобичајених TEX Live програма, на Windows-у се инсталира и известан број Windows верзијā уобичајених Unix алатки за командну линију. Ту спадају gzip, unzip и алати из пројекта xpdf (pdfinfo, pdffonts...). Сâм xpdf viewer (прегледач) нема верзију која ради на Windows-у. Jедна алтернатива јесте да уместо њега преузмете Sumatra PDF viewer, који је заснован на xpdf-у; Интернет-страница пројекта је http://blog.kowalczyk.info/software/sumatrapdf.
fc-list, fc-cache...
Алатке из библиотеке fontconfig омогућавају XeTEX-у да барата системским фонтовима на Windows-у. Можете да користите fc-list да одредите имена фонтова која задајете у XeTEX-овој проширеној команди \font. Ако је потребно, најпре покрените fc-cache како би се подаци о фонтовима освежили.

7.3 Лични кориснички директоријум на Windows-у

Еквивалент Unix-овом личном директоријуму корисника (home) на Windows-у јесте директоријум %USERPROFILE%. На Windows-у XP и 2000 то је обично C:\Documents and Settings\<username>, док Windows Vista користи C:\Users\<username>. У фајлу texmf.cnf и у Kpathsea уопште, симбол ~ ће се претворити у исправну путању и на Windows-у и на Unix-у.

7.4 Windows-ов „registry“

Windows држи скоро сва подешавања у тзв. „registry“-ју. То складиште садржи скуп хијерархијски организованих кључева, са неколико кључева највишег нивоа. Најважнији за инсталационе програме су HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE, или скраћено HKCU и HKLM. Део „registry“-ја HKCU налази се у личном директоријуму корисника (погледајте одељак 7.3). HKLM се обично налази у поддиректоријуму директоријума званог Windows.

У неким случајевима, информације о систему се могу добити из системских променљивих, али неке, на пример локација пречицā, и даље захтевају да се консултује „registry“. Трајно подешавање системских променљивих такође захтева приступ „registry“-ју.

7.5 Овлашћења на Windows-у

У новијим верзијама Windows-а постоји разлика између обичних корисника и администратора; само администратори имају слободан приступ целом оперативном систему. У пракси би, међутим, боље било описати ове класе корисника као неовлашћене и обичне кориснике: бити администратор је правило, а не изузетак. Без обриза на то, уложили смо доста напора да омогућимо да се TEX Live може инсталирати без администраторских овлашћења.

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

Без обзира на то да ли корисник има статус администратора или не, подразумевани основни директоријум за TEX Live који предлаже инсталациони програм увек је унутар %SystemDrive%. Програм увек тестира да ли тренутни корисник може да уписује податке у тај основни директоријум.

Може се појавити проблем ако корисник није администратор а TEX већ постоји у путањи за претрагу програма. Пошто се радна путања за претрагу састоји од системског дела иза кога следи кориснички део са својим путањама, нови TEX Live никад неће добити предност. Како би се решила ова ситуација, инсталациони програм прави пречицу до командног промпта у коме су нови TEX Live програми стављени испред локалне путање за претрагу. Нови TEX Live ће увек бити употребљив унутар таквог командног промпта. Пречица за TEXworks, ако се тај програм инсталира, такође додаје TEX Live на почетак путање за претрагу, тако да би и тај едитор требало да буде имун на ове проблеме са путањама.

На Vista системима постоји још једна особеност: чак иако сте улоговани као администратор, морате да изричито затражите администраторксе привилегије. У ствари, нема много сврхе да узимате улогу правог администратора. Уместо тога, кликните десним дугметом миша на програм који желите да покренете или на његову пречицу, и то ће Вам у нормалним околностима дати могућност да „покренете програм као администратор“ („Run as administrator“).

8 Кориснички водич кроз Web2C

Web2C је интегрисана колекција програма везаних за TEX: сâм TEX, Metafont, MetaPost, BibTeX, итд. Web2C је срце TEX Live-а. Интернет-страница пројекта, на којој се налази најновији приручник и много других ствари, налази се на http://tug.org/web2c.

Мало историје: првобитну имплементацију је направио Томас Рокицки [Tomas Rokicki], који је 1987. развио први „TEX-у-C“ разрадивши изворну Unix верзију, оригинални рад Хауарда Трикија [Howard Trickey] и Павела Кертиса [Pavel Curtis]. Одржавање система је наставио Тим Морган [Tim Morgan] и током тог периода име је промењено у Web-to-C. 1990. године рад је преузео Карл Бери [Karl Berry] који је уз помоћ више десетина сарадника одржавао пројекат до 1997, када је предао штафету Олафу Веберу [Olaf Weber], који је руковођење вратио Карлу 2006. године.

Web2C систем ради на Unix-у, 32-битним Windows системима, Mac OS X-у и многим другим оперативним системима. Он користи оригинални Кнутов [Knuth] кôд за TEX и друге основне програме написане у „WEB систему за писмено програмирање“ (WEB literate programming system) и преводи их у језик C. Језгро састављено од TEX програмā који се третирају на овај начин чине:

bibtex

Рад са библиографијама.

dvicopy

Рад са виртуелним фонтовима у DVI фајловима.

dvitomp

Претвара DVI у MPX (MetaPost слике).

dvitype

Претвара DVI у читљив текст.

gftodvi

Визуализација изворних (generic) фонтова.

gftopk

Претвара изворне (generic) у спаковане (packed) фонтове.

gftype

Претвара GF (изворне фонтове) у читљив текст.

mf

Програм за прављење породицā фонтова (typeface families).

mft

„Лепо штампање“ (prettyprinting) Metafont кôда

mpost

Програм за прављење техничких дијаграма.

patgen

Програм за прављење правилā за прелом речи (hyphenation patterns).

pktogf

Претвара спаковане (packed) у изворне (generic) фонтове.

pktype

Претвара PK у читљив текст.

pltotf

Претвара текстуални списак особина фонта у acroTFM.

pooltype

Приказује WEB pool фајлове.

tangle

Преводи WEB кôд у језик Pascal.

tex

Припрема текста.

tftopl

Претвара TFM у текстуални списак особина фонта.

vftovp

Претвара виртуелни фонт у виртуелни списак особинā.

vptovf

Претвара виртуелни списак особинā у виртуелни фонт.

weave

Преводи WEB кôд у TEX.

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

Сви ови програми поштују ове стандардне GNU параметре:

--help

штампање основног прегледа употребе.

--verbose

штампање детаљнијег извештаја о раду.

--version

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

Да би одредили положај разних фајлова, Web2C програми користе библиотеку за претрагу Kpathsea (http://tug.org/kpathsea). Ова библиотека користи комбинацију системских променљивих и конфигурационих фајлова како би оптимизовала претрагу кроз (огромни) садржај TEX система. Web2C може да упоредо користи више хијерархија за претрагу, што је корисно за одржавање стандардних дистрибуција TEX-а упоредо са локалним и личним проширењима у одвојеним директоријумима. Како би се претраживање убрзало, директоријум највишег нивоа у свакој хијерархији има фајл ls-R који садржи записе састављене од имена и релативне путање за све фајлове који се налазе ниже по хијерархији у том директоријуму.

8.1 Проналажење фајлова помоћу Kpathsea

Опишимо најпре механизам трагања који користи библиотека Kpathsea.

Путањом за претрагу (search path) називамо списак елемената путање раздвојених двотачком или тачка-зарезом; ти елементи су обично имена директоријума, мада путања за претрагу може да се састави од елемената који потичу из разних извора. Када тражи фајл „my-file“ по путањи „.:/dir“, Kpathsea проверава један по један сваки елемент путање: прво ./my-file, затим /dir/my-file, и враћа први погодак (уз могућност да врати и све поготке одједном).

Како би се оптимално прилагодила конвенцијама свих оперативних система, на системима који нису сродни са Unix-ом Kpathsea може да користи и друге сепараторе а не само двотачку („:“) и косу црту („/“).

Када проверава поједини елемент путање p, Kpathsea прво проверава да ли се унапред припремљена база података (погледајте „База података са именима фајлова“ на страни 65) може употребити за p, тј. да ли се база података налази у директоријуму који је префикс од p. Ако је то случај, задата путања се рàвнā према садржају базе података.

Ако база података не постоји или ако се не може применити на задати елемент путање или ако у њој нема слагања, претражује се реални фајл-систем (ако то није забрањено спецификацијом која почиње са „!!“ или ако је задато да фајл који се тражи „мора да постоји“). Kpathsea конструише списак директоријума који одговарају овом елементу путање и затим тражи задати фајл у сваком од њих.

Услов „фајл мора да постоји“ односи се пре свега на „.vf“ фајлове и на улазне фајлове који се читају TEX-овом командом \openin. Може се десити да такви фајлови не постоје (нпр. cmr10.vf) па би стога било погрешно претраживати диск. Дакле, ако се деси да пропустите да освежите ls-R када инсталирате нови „.vf“ фајл, он никад неће бити пронађен. У сваком проласку се проверава по један елемент путање: најпре база података, затим диск. Ако се нађе оно што је задато, претрага се зауставља и враћа се резултат.

Премда је најједноставнији и најуобичајенији елемент путање име директоријума, Kpathsea подржава и додатне могућности у путањама за претрагу: „рашчлањене“ подразумеване вредности (layered default values, односно вредности које имају предност једна у односу на другу зависно од извора у односу на који се користе), имена системских променљивих, вредности из конфигурационих фајлова, личне директоријуме корисникā, као и наредбе за рекурзивно претраживање поддиректоријумā. Стога кажемо да Kpathsea прерачунава4 елемент путање, што значи да он трансформише све спецификације у основно име (или имена) директоријума. Ово је описано у наредним одељцима у истом поретку у коме се претрага и врши.

Обратите пажњу на један детаљ: ако је име фајла који се тражи апсолутно или изричито задато у релативном облику, тј. ако почиње са „/“, „./“ или „../“, Kpathsea просто проверава да ли тај фајл постоји.

8.1.1 Извори путања

Путања за претрагу може имати разне изворе. Ово је редослед у коме их Kpathsea користи:

  1. Системске променљиве подешене од стране корисника, на пример TEXINPUTS. Системске променљиве које садрже име програма придодато на крају иза тачке добијају предност; нпр. ако је име покренутог програма „latex“, онда ће TEXINPUTS. latex имати предност у односу на TEXINPUTS.
  2. Конфигурациони фајл специфичан за поједини програм, нпр. линија „S /a:/b“ у фајлу config.ps који припада програму dvips.
  3. Конфигурациони фајл texmf.cnf који припада Kpathsea-у, и који садржи линију као што је „TEXINPUTS=/c:/d“ (погледајте ниже).
  4. Вредност задата у време компајлирања.

Како се према свакој од набројаних ставки формирају вредности за неку задату путању можете да пратите ако употребите опцију за отклањање грешака (debugging) — погледајте одељак „Поступци за отклањање грешака“ на страни 70).

8.1.2 Конфигурациони фајлови

Kpathsea чита конфигурационе фајлове назване texmf.cnf (ови фајлови су предвиђени да се читају само када програми раде) и из њих узима путању за претрагу и друге дефиниције. Путања за претрагу која се користи да се сáми ови фајлови лоцирају зове се TEXMFCNF, али ми не препоручујемо да постављате ову (нити било коју другу) системску променљиву.

Уместо тога, уобичајени инсталациони процес доводи до обликовања фајла .../2010/texmf.cnf. Ако морате да начините неке промене вредности које су тамо уписане као подразумеване (што обично није потребно), онда је овај фајл место где те вредности треба уписати. Главни конфигурациони фајл је .../2010/texmf/web2c/texmf.cnf; њега не би требало да преправљате зато што ће се промене изгубити када се верзија инсталирана путем дистрибуције освежи.

Сви фајлови названи texmf.cnf који се нађу у путањи за претрагу биће прочитани и дефиниције из претходних фајлова биће замењене онима на које се касније наиђе. На пример, ако је путања за претрагу .:$TEXMF, вредности из ./texmf.cnf имају предност у односу на оне из $TEXMF/texmf.cnf.

Део конфигурационог фајла који илуструје већину ових ствари приказан је у следећој табели:

  TEXMF              = {$TEXMFLOCAL,!!$TEXMFMAIN}
  TEXINPUTS.latex    = .;$TEXMF/tex/{latex,generic;}//
  TEXINPUTS.fontinst = .;$TEXMF/tex//;$TEXMF/fonts/afm//
  % e-TeX related files
  TEXINPUTS.elatex   = .;$TEXMF/{etex,tex}/{latex,generic;}//
  TEXINPUTS.etex     = .;$TEXMF/{etex,tex}/{eplain,plain,generic;}//

8.1.3 Прерачунавање путање

Kpathsea препознаје неке специјалне ознаке и конструкције у путањама за претрагу, сличне онима из Unix шкољки (shells). На пример, сложена путања ~$USER/{foo,bar}//baz претвара се после прерачунавања у све поддиректоријуме унутар директоријумā foo и bar у личном директоријуму корисника $USER, и то само онакве који садрже у себи директоријум или фајл по имену baz. Овакве трансформације објашњене су у следећем одељку.

8.1.4 Стандардно прерачунавање

Ако путања за претрагу са највећим приоритетом (погледајте „Извори путања“ на стр. 59) садржи једну додатну двотачку (на почетку, на крају, или удвојену) Kpathsea убацује на том месту путању која је следећу по приоритету у оквиру задате претраге. Ако та уметнута путања има додатну двотачку, исто се дешава са следећим расположивим приоритетом по важности. На пример, ако су системске променљиве постављене овако:

setenv TEXINPUTS /home/karl:
и ако је вредност променљиве TEXINPUTS из texmf.cnf једнака

  .:$TEXMF//tex
онда ће коначна вредност која ће бити употребљена за претрагу бити:

  /home/karl:.:$TEXMF//tex

Пошто би било бескорисно уметати подразумевану вредност на више од једног места, Kpathsea трансформише само један додатни „:“ а остале оставља како јесу. Програм најпре тражи има ли „:“ на почетку реда, затим на крају, а затим тражи двоструке „:“.

8.1.5 Прерачунавање заграда

Једна корисна могућност је и прерачунавање заграда: на пример, v{a,b}w се претвара у vaw:vbw. Дозвољено је уметање заграда унутар постојећег пара заграда; захваљујући овоме могуће је имати више TEX хијерархија директоријумā тако што се \$TEXMF-у додели листа заграда. На пример, у фајлу texmf.cnf је направљена следећа дефиниција (ово што следи је само приближно тако; у стварности постоји још више дрветā):

    TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN}

Захваљујући овоме, могуће је написати:

    TEXINPUTS = .;$TEXMF/tex//

што значи да ће се претрага, након задржавања у тренутном директоријуму, обавити искључиво у дрветима \$TEXMFHOME/tex, \$TEXMFLOCAL/tex, \$TEXMFVAR/tex и \$TEXMFMAIN/tex (последња два имају базу података са фајловима ls-R). Ово представља један удобан начин да одржавате две паралелне структуре TEX-а, једну „замрзнуту“ (на пример на CD-у) и једну која се непрестано освежава новим верзијама чим се појаве. Пошто користимо променљиву \$TEXMF у свим дефиницијама, можемо бити сигурни да ће увек оно дрво које се освежава бити прво које се претражује.

8.1.6 Прерачунавање поддиректоријума

Две или више узастопних косих црта у елементу путање које следе иза директоријума d трансформишу се у списак свих поддиректоријума који се по хијерархији налазе испод d: прво иду они који су непосредно испод d, затим они испод њих, итд. На сваком од тих нивоа редослед којим се директоријуми претражују није изричито одређен.

Ако ставите неки део имена фајла после „//“, биће укључени само поддиректоријуми који садрже поклапање са тим делом имена. На пример, „/a//b“ се претвара у директоријуме /a/1/b, /a/2/b, /a/1/1/b итд, али не у /a/b/c или /a/1.

Могуће је употребити и више конструкција са „//“ у једној путањи, али се „//“ на почетку путање игнорише.

8.1.7 Списак специјалних симбола и њихово значење: преглед

Следећа листа даје преглед специјалних симбола у конфигурационим фајловима које користи Kpathsea.

:

Сепаратор у задавању путање; на почетку или на крају путање служи уместо подразумеваног прерачунавања путање.

;

Сепаратор на системима који нису сродни са Unix-им (понаша се исто као :).

\$

Прерачунавање променљиве.

 ~

Представља корисников лични директоријум.

{...}

Прерачунавање заградā.

//

Прерачунавање поддиректоријумā (може да стоји било где у путањи изузев на почетку).

%

Почетак коментара.

Ознака да следи наставак текста (омогућава ставке које се простиру кроз више линија).

!!

Претраживање искључиво базе података да се нађе фајл, диск се не претражује.

8.2 Базе података са именима фајлова

Kpathsea покушава да колико је могуће смањи физички приступ диску када обавља своје претраге. Упркос томе, на инсталацијама са великим бројем директоријума, претраживање свих могућих директоријума да би се нашао задати фајл може предуго да траје (ово је нарочито случај ако се мора проћи више стотина директоријума који садрже фонтове). Из тог разлога је Kpathsea осмишљен да може да користи унапред састављену „базу података“ — заправо текстуални фајл — по имену ls-R, који повезује стварне фајлове са одговарајућим директоријумима и на тај начин елиминише потребу да се диску често приступа.

Други фајл — база података, по имену aliases, омогућава Вам да дате додатна имена фајловима који су излистани у ls-R. Ово може да буде од користи ако је потребно да се у неком изворном коду поштује конвенција о именима фајлова која потиче из система DOS 8.3.

8.2.1 База података ls-R

Као што је малочас објашњено, име главне базе података са фајловима мора бити ls-R. Можете да ставите по један такав фајл у корен сваке TEX-хијерархије коју имате и коју желите да претражујете помоћу Kpathsea (подразумева се \$TEXMF). Kpathsea увек проверава да ли има неки ls-R дуж TEXMFDBS.

Препоручени начин да направите и одржавате „ls-R“ јесте да покренете скрипту mktexlsr (која је укључена у дистрибуцију). Њу позивају разне „mktex“... скрипте. У принципу, ова скрипта напросто покреће команду

cd /корен/texmf/хијерархије && \ls -1LAR ./ >ls-R
уз претпоставку да команда ls на Вашем систему даје исправан излаз (GNU ls је таква команда). Како бисте били сигурни да је база података увек свежа, најлакши начин је да је редовно преправљате користећи cron, тако да се она аутоматски освежава увек када се неки већ инсталирани фајл промени, као што је случај када се инсталира или освежава неки LATEX пакет.

Ако фајл не може да се пронађе у бази података, подразумевана радња коју предузима Kpathsea јесте да крене у претрагу директно на диску. Ако, међутим, неки поједини елемент путање почиње са „!!“, претражиће се само база података, никада сâм диск.

8.2.2 Самостални програм за претраживање: kpsewhich

Програм kpsewhich изводи претраживање независно од било које апликације. У овом смислу он може бити користан и као нека врста програма find ако треба лоцирати појединачне фајлове у TEX-хијерархијама (kpsewhich се заиста и користи веома интензивно у скриптама „mktex“... које су део дистрибуције).

kpsewhich option... filename...
Опције назначене у option могу да почну и са „-“ и са „--“; такође, дозвољено је и било које недвосмислено скраћивање.

Kpathsea третира сваки аргумент са командне линије (који није опција) као име фајла, и враћа први фајл који пронађе. Не постоји могућност да се врате сва имена фајлова са појединим именом (ако Вам је тако нешто потребно, употребите Unix команду „find“).

Следи опис најважнијих параметара.

--dpi=num


Задаје резолуцију num; ово се тиче само претрага за фајловима типа „gf“ и „pk“. „-D“ је синоним, омогућен ради компатибилности са dvips. Подразумевана вредност је 600.

--format=name


Задаје да се тражи формат name. Подразумевани формат се претпоставља на основу имена фајла. За формате који немају једнозначан наставак, као што су нпр. помоћни фајлови програма MetaPost или конфигурациони фајлови програма dvips, морате назначити име које је познато Kpathsea-у, на пример tex или enc files. Покрените kpsewhich --help ако желите да видите целовит списак.

--mode=string


Задаје режим по имену string; ово се тиче једино претрага за фајловима типа „gf“ и „pk“. Нема подразумеване вредности: тражиће се фајлови за све режиме.

--must-exist


Задаје да се учини све што је могуће да се фајлови пронађу; пре свега се мисли на прибегавање директном претраживању диска. Подразумева се да се, ефикасности ради, проверава само база података ls-R.

--path=string


Претрага ће се вршити низ путању string (обично су то елементи раздвојени двотачкама), уместо да се путања за претрагу претпоставља на основу имена фајла. Подржани су „//“ и сва стандардна прерачунавања и трансформације. Параметри „--path“ и „--format“ узајамно се искључују.

--progname=name


Задаје name као име програма. Ово може да утиче на путање за претрагу путем могућности дописивања имена програма (.progname). Подразумевана вредност је kpsewhich.

--show-path=name


Приказује путању која се користи да се пронађе фајл или тип фајла name. Могу се користити и наставци за имена фајлова (.pk, .vf, итд), као и сама имена, баш као у случају опције „--format“.

--debug=num


Поставља ниво потраге за грешкама на num.

8.2.3 Примери употребе

Погледајмо сада Kpathsea на делу. Ево једне једноставне претраге:

kpsewhich article.cls
   /usr/local/texmf-dist/tex/latex/base/article.cls
Оно што тражимо је фајл article.cls. Пошто је наставак „.cls“ недвосмислен, не морамо да посебно назначимо да желимо да тражимо фајл типа tex (директоријуми који садрже фајлове са изворним TEX кôдом). Тражимо га у поддиректоријуму tex/latex/base који се налази у TEX Live директоријуму „texmf-dist“. На сличан начин, сви фајлови у примерима који следе проналазе се без проблема захваљујући својим недвосмисленим наставцима:

kpsewhich array.sty
   /usr/local/texmf-dist/tex/latex/tools/array.sty
kpsewhich latin1.def
   /usr/local/texmf-dist/tex/latex/base/latin1.def
kpsewhich size10.clo
   /usr/local/texmf-dist/tex/latex/base/size10.clo
kpsewhich small2e.tex
   /usr/local/texmf-dist/tex/latex/base/small2e.tex
kpsewhich tugboat.bib
   /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib

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

kpsewhich cmr10.pk
Фајловe типa .pk (фонтови направљени као бит-мапе) користе приказивачи као што су dvips и xdvi. У овом случају се не враћа никаква вредност пошто нема унапред припремљених Computer Modern „.pk“ фајлова у TEX Live-у — подразумева се да се користе Type 1 варијанте.

kpsewhich wsuipa10.pk
   /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk
За ове фонтове (фонетски алфабет, производ Универзитета Вашингтона) морамо да генеришемо „.pk“ фајлове, и пошто је подразумевани режим програма Metafont на нашем систему ljfour са основном резолуцијом од 600 dpi (тачака по инчу), имамо баш овај резултат.

kpsewhich -dpi=300 wsuipa10.pk
У овом случају, међутим, када је изричито назначено да смо заинтересовани за резолуцију од 300 dpi (-dpi=300), видимо да такав фонт није расположив на систему. Остаје на програмима као што су dvips или xdvi да сами направе потребне .pk фајлове помоћу скрипте mktexpk.

Сада ћемо размотрити заглавља (headers) и конфигурационе фајлове програма dvips. Погледајмо најпре један веома често коришћени фајл, пролог tex.pro за TEX подршку, а затим један општи конфигурациони фајл (config.ps) и PostScript фонт-мапу psfonts.map — од издања TEX Live-а из 2004. фајлови са мапама и кодним распоредима имају своје сопствене путање за претрагу и нов положај унутар texmf дрветā. Пошто је наставак „.ps“ вишесмислен, морамо да изричито назначимо који тип имамо у виду (dvips config) за фајл config.ps.

kpsewhich tex.pro
   /usr/local/texmf/dvips/base/tex.pro
kpsewhich --format="dvips config" config.ps
   /usr/local/texmf/dvips/config/config.ps
kpsewhich psfonts.map
   /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map

Погледајмо сада поближе помоћне фајлове програма PostScript који се тичу фонта URW Times. Префикси за ове фајлове су, према стандардној шеми за именовање фонтова, „utm“. Први фајл који разматрамо је један конфигурациони фајл, који садржи име фајла са одговарајућом мапом:

kpsewhich --format="dvips config" config.utm
   /usr/local/texmf-dist/dvips/psnfss/config.utm
Садржај тог фајла је

  p +utm.map
што указује на фајл utm.map, и он је следећи ког желимо да лоцирамо.

kpsewhich utm.map
   /usr/local/texmf-dist/fonts/map/dvips/times/utm.map
Овај фајл са мапом одређује имена фајлова Type 1 PostScript фонтова у URW колекцији. Његов садржај изгледа овако (приказујемо само део):

utmb8r  NimbusRomNo9L-Medi    ... <utmb8a.pfb
utmbi8r NimbusRomNo9L-MediItal... <utmbi8a.pfb
utmr8r  NimbusRomNo9L-Regu    ... <utmr8a.pfb
utmri8r NimbusRomNo9L-ReguItal... <utmri8a.pfb
utmbo8r NimbusRomNo9L-Medi    ... <utmb8a.pfb
utmro8r NimbusRomNo9L-Regu    ... <utmr8a.pfb
Узмимо, на пример, инстанцу фонта Times Roman по имену utmr8a.pfb и потрáжимо њен положај у директоријуму texmf, уз трагање за фонт-фајловима типа Type 1:

kpsewhich utmr8a.pfb
   /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb

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

8.2.4 Поступци отклањања грешака

Понекад је неопходно да се испита како неки програм разрешава упућивања на одређене фајлове. Да би помогао у таквим ситуацијама, Kpathsea нуди разне нивое излаза у режиму трагања за грешкама (debugging):

 1

Статистика директног приступа диску. Када се претрага обавља са свежом ls-R базом, ово не би требало да дâ готово никакав излаз.

 2

Упућивања на „hash“ табеле (као што је база података ls-R, фајлови са мапама, конфигурациони фајлови).

 4

Операције отварања и затварања фајлова.

 8

Опште информације о путањама које Kpathsea користи за разне типове фајлова. Ово је корисно када треба установити на ком месту је нека поједина путања за неки фајл дефинисана.

16

Листа директоријума за сваки елемент путање (ово је релевантно само ако се претражује диск).

32

Претраге за фајловима.

64

Вредности променљивих.

Вредност -1 ће активирати све описане опције; у пракси је ово обично и најкорисније.

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

Уопштено говорећи, будући да већина програма позива библиотеку Kpathsea интерно, опција за отклањање грешака се може укључити путем системске променљиве KPATHSEA_DEBUG тако што се она подеси на неку вредност (или комбинацију вредности) описану у претходној табели.

(Напомена за кориснике Windows-а: на овом систему није лако преусмерити све поруке које даје неки програм у фајл. За сврхе дијагностиковања можете привремено да подесите одговарајућу променљиву помоћу SET KPATHSEA_DEBUG_OUTPUT=err.log.)

Размотримо као пример један мали фајл са LATEX кôдом, hello-world.tex („Здраво, свете!“), са следећим садржајем:

    \documentclass{article}
    \begin{document}
    Hello World!
    \end{document}

Овај мали фајл користи само фонт cmr10, па погледајмо стога како dvips припрема PostScript фајл (желимо да користимо Type 1 верзију фонтова из породице Computer Modern, отуда опција -Pcms).

dvips -d4100 hello-world -Pcms -o
У овом случају смо комбиновали ниво 4 за отклањање грешака програма dvips (тј. путање везане за фонтове) са прерачунавањем елемента путање преко Kpathsea (погледајте упутство за употребу програма dvips, texmf/doc/dvips/dvips.pdf). Излаз (незнатно пресложен) може се видети на слици 12.


debug:start search(file=texmf.cnf, must_exist=1, find_all=1,
  path=.:/usr/local/bin/texlive:/usr/local/bin:
       /usr/local/bin/texmf/web2c:/usr/local:
       /usr/local/texmf/web2c:/.:/./teTeX/TeX/texmf/web2c:).
kdebug:start search(file=ls-R, must_exist=1, find_all=1,
  path=~/tex:/usr/local/texmf).
kdebug:search(ls-R) =>/usr/local/texmf/ls-R
kdebug:start search(file=aliases, must_exist=1, find_all=1,
  path=~/tex:/usr/local/texmf).
kdebug:search(aliases) => /usr/local/texmf/aliases
kdebug:start search(file=config.ps, must_exist=0, find_all=0,
  path=.:~/tex:!!/usr/local/texmf/dvips//).
kdebug:search(config.ps) => /usr/local/texmf/dvips/config/config.ps
kdebug:start search(file=/root/.dvipsrc, must_exist=0, find_all=0,
  path=.:~/tex:!!/usr/local/texmf/dvips//).
search(file=/home/goossens/.dvipsrc, must_exist=1, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//).
kdebug:search($HOME/.dvipsrc) =>
kdebug:start search(file=config.cms, must_exist=0, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//).
kdebug:search(config.cms)
=>/usr/local/texmf/dvips/cms/config.cms
Слика 12: Тражење конфигурационих фајлова
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
Слика 13: Тражење пролог фајла
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,
   ...
<texps.pro>
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
<cmr10.pfb>[1]
Слика 14: Тражење фајла са фонтом

dvips почиње тако што лоцира своје сопствене конфигурационе фајлове. Најпре налази texmf.cnf, и тај фајл му даје дефиниције путања на којима треба наћи друге фајлове, затим се проналази база података ls-R (како би се трагање за фајловима оптимизовало), и коначно фајл aliases, који омогућава да се зада више имена за исти фајл (нпр. кратка имена у стилу система DOS 8.3 или читкије дуже варијанте). Затим dvips прелази на тражење општег конфигурационог фајла config.ps, пре него што прегледа фајл са подешавањима по имену .dvipsrc (који, у овом случају, није пронађен). Коначно, dvips налази конфигурациони фајл за породицу PostScript фонтова Computer Modern, који се зове config.cms (ово је иницирано зато што је уз команду dvips употребљена опција -Pcms). Овај фајл садржи листу фајлова са мапама који дефинишу однос између TEX-а, PostScript-а и стварних имена фонтова на диску.

more /usr/local/texmf/dvips/cms/config.cms
   p +ams.map
   p +cms.map
   p +cmbkm.map
   p +amsbkm.map
dvips налази све ове фајлове, као и општи фајл са мапом по имену psfonts.map, који се увек учитава (он садржи декларације за најчешће коришћене PostScript фонтове; последњи део одељка 8.2.3 садржи више информација о коришћењу фајлова са мапама за PostScript фонтове).

На овом ступњу dvips се представља кориснику:

This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com)
Затим прелази на тражење пролог фајла texc.pro:


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

Нашавши поменути фајл, dvips исписује датум и време и обавештава нас да ће направити фајл hello-world.ps, затим да му треба фонт-фајл cmr10, као и да ће овај последњи бити означен као „резидентан“ (тј. да му нису потребне бит-мапе):


TeX output 1998.02.26:1204" -> hello-world.ps
Defining font () cmr10 at 10.0pt
Font cmr10 <CMR10> is resident.
Сада се претрага наставља, овог пута за фајлом cmr10.tfm; када га пронађе, упућује се на још неколико пролог фајлова (нису приказани), и на крају се лоцира Type 1 облик фонта, који се зове cmr10.pfb, и тај податак се укључује у фајл са излазом (погледајте последњу линију).


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,
   ...
<texps.pro>
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
<cmr10.pfb>[1]

8.3 Опције током рада (runtime options)

Још једна корисна способност Web2C-а јесте могућност да се контролише велики број меморијских параметара (а посебно „array sizes“) путем фајла texmf.cnf који чита Kpathsea. Подешавања која се тичу меморије могу се пронаћи у делу 3 тог фајла у TEX Live дистрибуцији. Важнији параметри које можете да подесите су:

main_memory

Укупна расположива меморија (Total words of memory available) за TEX, Metafont и MetaPost. За сваку вредност се мора направити посебан фајл са форматом. На пример, можете да направите „огромну“ (huge) верзију TEX-a и да назовете фајл са форматом hugetex.fmt. Према стандардним правилима означавања именā програмā којих се држи Kpathsea, посебна вредност променљиве main_memory прочитаће се из фајла texmf.cnf.

extra_mem_bot

Додатни простор за „велике“ („large“) структуре података које прави TEX: оквири (boxes), лепак (glue), места прелома (breakpoints) итд. Посебно корисно ако користите PI CTEX.

font_mem_size

Количина меморије за податке о фонтовима која стоји TEX-у на располагању. Ово је мање-више укупна величина свих прочитаних TFM фајлова.

hash_extra

Додатни простор за „hash“ табелу са именима контролних секвенци. Само ~10.000 контролних секвенци може да се смести у главну „hash“ табелу; ако имате велику књигу са бројним унакрсним референцама, може се лако десити да то није довољно. Подразумевана вредност променљиве hash_extra је 50000.

Наравно, ово није замена за праве динамичке низове и методе располагања меморијом, али пошто је изузетно тешко да се тако нешто изведе у садашњем изворном кôду TEX-а, ови параметри за покретање програма представљају практични компромис који ипак даје и нешто флексибилности.

9 Захвалнице

TEX Live је резултат заједничких напора практично свих група корисника TEX-а. Овим издањем TEX Live-а руководио је Карл Бери [Karl Berry]. Групе и појединци набројани на списку који следи, они који су у прошлости радили на TEX Live-у и они који су тренутно активни, заслужују нашу велику захвалност.

Програме за подржане оперативне системе су припремили: Карл Бери [Karl Berry] (i386-linux, sparc-linux), Петер Брајтенлонер [Peter Breitenlohner] (x86_64-linux), Алан Брасло [Alan Braslau] (amd64-kfreebsd, i386-kfreebsd), Кен Браун [Ken Brown] (i386-cygwin), Олаф Вебер [Olaf Weber] (mips-irix), Владимир Волович (powerpc-aix, sparc-solaris), Акира Какуто [Akira Kakuto] (win32), Дик Коч [Dick Koch] (universal-darwin, x86_64-darwin), Никола Лечић (amd64-freebsd, i386-freebsd), Норберт Прајнинг [Norbert Preining] (alpha-linux), Јука Салми [Jukka Salmi] (i386-netbsd), Апостолос Сиропулос [Apostolos Syropoulos] (i386-solaris, x86_64-solaris), Томас Шмиц [Thomas Schmitz] (powerpc-linux). Процес компајлирања TEX Live-а описан је на http://tug.org/texlive/build.html.

Ову документацију су превели: Сташек Ваврикевич [Staszek Wawrykiewicz] (пољски), Борис Вејцман [Борис Вейцман] (руски), Ђигод Ђијанг [Jjgod Jiang], Ђинсонг Џао [Jinsong Zhao], Јие Ванг [Yue Wang] и Хелин Гаи [Helin Gai] (кинески), Никола Лечић (српски), Марко Паланте [Marco Pallante] (италијански), Мануел Пегурје-Гонар [Manuel Pégourié-Gonnard] (француски), Клаус Хепнер [Klaus Höppner] (немачки), Петр Сојка [Petr Sojka] и Јан Буша [Ján Buša] (чешки/словачки). Интернет-страница са документацијом за TEX Live је http://tug.org/texlive/doc.html.

Наравно, најважнија захвалница мора ићи Доналду Кнуту [Donald Knuth], најпре зато што је изумео TEX, а потом зато што га је поклонио свету.

10 Историја издањā

10.1 Прошлост

Крајем 1993. године у Холандском удружењу корисникā TEX-а се, током рада на пројекту 4AllTEX CD (намењеног корисницима MS-DOS-а), појавила идеја да се можда може направити јединствени CD за све системе. То је био преамбициозан циљ за оно време; ипак, идеја не само што је дала подстрек да се доврши рад на иначе веома успешном 4AllTEX CD пројекту, него је из ње произашла и радна група названа Технички савет TUG-а (Удружења корисникā TEX-а) која је радила на структури TEX директоријума (TEX Directory Structurehttp://tug.org/tds); група је осмислила како да се направи конзистентна и употребљива колекција помоћних TEX фајлова. Целовит нацрт TDS-а објављен је у децембарском издању часописа TUGboat из 1995. и већ на том раном стадијуму било је јасно да би такву структуру требало следити и на CD-у. Дистрибуција TEX Live која је пред Вама представља директан резултат преданости те радне групе. Такође је било јасно да је успех 4AllTEX CD-а показао да корисници Unix-а могу имати користи од тако функционалног система, и управо ова идеја представља други главни мотив за рад на TEX Live-у.

Предузели смо прве кораке да направимо такав TDS CD који би радио на Unix-у на јесен 1995. и брзо смо схватили да је teTEX Томаса Есера [Thomas Esser] савршена полазна тачка, пошто је он већ имао подршку за више оперативних система и пошто је био направљен узимајући у обзир преносивост у погледу организације фајлова које ти системи користе. Томас се сложио да помогне и озбиљан рад је почео почетком 1996. Прво издање објављено је у мају исте године. Почетком 1997, Карл Бери [Karl Berry] је објавио ново издање система Web2C, које је укључивало готово све могућности које је Томас Есер већ убацио у teTEX, и тако смо одлучили да се друго издање CD-а базира на стандардном Web2C-у, уз додатак скрипте texconfig из teTEX-а. Треће издање CD-а заснивало се на темељно прерађеној верзији Web2C-a (7.2), коју је урадио Олаф Вебер [Olaf Weber]; истовремено је урађена и нова верзија teTEX-а, а TEX Live је укључио скоро све његове могућности. Четврто издање следило је исти смер, укључивало је нову верзију teTEX-а и ново издање Web2C-а (7.3). Систем је овог пута имао и потпуну подршку за Windows.

За пето издање (март 2000) многи делови CD-а су редизајнирани и темељније тестирани, а биле су укључене и нове верзије више стотина пакета. Подаци о пакетима спаковани су у XML фајлове. Ипак, највећа промена у TEX Live 5 била је то што су уклоњени сви програми који нису рађени у складу са идејом слободног софтвера. Наиме, намера је била да од тада све у TEX Live-у буде у сагласности са Debian-овим упутствима за слободни софтвер (Debian Free Software Guidelines — http://www.debian.org/intro/free); учинили смо све што је тада било у нашој моћи да проверимо лиценце свих пакета; били бисмо веома захвални ако нас известите о било којој грешци коју смо направили.

Шесто издање (јул 2001) садржавало је још више освеженог материјала. Главна промена био је нов инсталациони концепт: корисник од сада може да изабере много одређенији скуп колекција које су му потребне. Језичке колекције биле су комплетно преуређене за ово издање: избор неке од њих од тада не значи да се само инсталирају одговарајући макрои, фонтови итд, него да се уз то припреми и одговарајући language.dat.

Седмо издање из 2002. укључивало је велики новитет у облику подршке за Mac OS X, и већ уобичајено огромни број освежења свих врста пакета и програма. Један од најважнијих циљева овог издања била је и поновна интеграција кôда са teTEX-ом како би се елиминисао раскорак направљен у верзијама 5 и 6.

10.1.1 2003

2003. године, услед непрестаног прилива измена и допуна, схватили смо да је TEX Live толико нарастао да више није могао да стане на један CD, тако да смо га поделили на три одвојене дистрибуције (погледајте одељак 2.1, стр. 7). Уз то,

10.1.2 2004

2004. године десиле су се многе промене:

10.1.3 2005

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

10.1.4 2006–2007

Током 2006. и 2007. главни додатак TEX Live-у био је програм XeTEX, доступан путем команди xetex и xelatex; погледајте http://scripts.sil.org/xetex.

Такође, значајно је обновљен и унапређен програм MetaPost, уз велике планове за будућност (http://tug.org/metapost/articles); настављен је и развој pdfTEX-а (http://tug.org/applications/pdftex).

TEX-ов .fmt (high-speed format) и слични фајлови за MetaPost и Metafont сада су смештени у директоријуме унутар texmf/web2c уместо у сâм тај директоријум (премда се тај директоријум и даље претражује, зарад постојећих .fmt фајлова). Поддиректоријуми су названи према програмима (врстама TEX-а) који су у употреби, као што су tex, pdftex или xetex. Ова промена не би требало да буде видљива у свакодневној употреби.

(Чисти) tex програм више не чита прву линију која почиње са %& како би одредио који формат да покрене; tex је сада чисти кнутовски TEX. (LATEX и сви други и даље читају линије са %&.)

Наравно, и ове године смо, као и обично, унели стотине надоградњи свих пакета и програма. Као и увек, молимо Вас да проверите да ли постоје нове верзије на CTAN-у (http://www.ctan.org).

Што се тиче интерног рада програмерског тима, развојно дрво TEX Live-а се сада држи под контролом система Subversion, са уобичајеним веб-интерфејсом за прегледање кôда; можете доћи до одговарајућих страница преко наше уводне Интернет-стране. Премда није оставила много видљивих трагова у коначном издању из ове године, очекујемо да ће ова промена обезбедити стабилан развојни темељ за године које долазе.

Коначно, у мају 2006. Томас Есер [Thomas Esser] је објавио да више неће радити на teTEX-у (http://tug.org/tetex). Директна последица овог потеза било је огромно интересовање за TEX Live, посебно међу GNU/Linux дистрибуцијама. (У TEX Live-у сада постоји нова инсталациона шема tetex, која даје приближни еквивалент.) Надамо се да ће се ово у једном тренутку преточити у побољшање квалитета TEX окружења за све кориснике.

10.1.5 2008

2008. године цела инфраструктура TEX Live-а је редизајнирана и исписана испочетка. Сви подаци о инсталацији сада су смештени у текстуалном фајлу tlpkg/texlive.tlpdb.

Између осталог, ово је коначно омогућило да се инсталција TEX Live-а освежава преко Интернета након почетног смештања на диск, што је функционалност коју је MiKTEX имао пре много година. Очекујемо да корисницима редовно стављамо на располагање нове пакете чим се објаве на CTAN-у.

У дистрибуцију је укључен важан нови дериват LuaTEX (http://luatex.org); поред новог нивоа флексибилности у припреми текста, он уводи и сјајан језик за писање команди у облику скрипте (scripting language), који може да се користи и унутар и ван TEX докумената.

Подршка за Windows и платформе засноване на Unix-у сада је много униформнија. Нарочито је битно то што је сада већина скрипти које су написане у језицима Perl и Lua сада доступна и на Windows-у зато што се Perl дистрибуира у оквиру TEX Live-а.

Нова скрипта tlmgr (одељак 6) сада представља општи интерфејс за одржавање TEX Live-а после почетне инсталације. Она барата новим верзијама пакетā и води рачуна о одговарајућим прерадама фајлова са форматима, мапама (map files), фајловима везаним за поједине језике, уз могућност да се укључе и локални додаци.

Пошто сада имамо на располагању скрипту tlmgr, све радње (везане за прераду конфигурационих фајлова са форматима и правилима за прелом речи) које је некада обављао програм texconfig сада су искључене.

Програм за прављење индексā xindy (http://xindy.sourceforge.net/) укључен је за већину подржаних оперативних система.

Алатка kpsewhich сада може да врати све поготке за задати фајл (опција –all) или да ограничи поготке на задати поддиректоријум (опција –subdir).

Програм dvipdfmx сада има могућност да извуче податке о висини и ширини текста (bounding box) ако се позове као extractbb; ово је била једна од последњих могућности које је имао dvipdfm а које нису постојале у dvipdfmx-у.

Уклоњена су алтернативна имена (алиаси) за фонтове Times-Roman, Helvetica итд. Различити пакети очекују различито понашање од тих имена (пре свега очекују да имају различите кодне распореде), и није постојао добар начин да се ово реши.

Уклоњен је формат platex како би се разрешио конфликт око имена са потпуно независним јапанским platex-ом; пакет polski сада представља главни ослонац за све што се тиче пољског језика.

Интерно, WEB string pool фајлови сада су компајлирани као бинарни фајлови, како би се олакшале надоградње.

Коначно, промене које је увео Доналд Кнут [Donald Knuth] у свом раду „Дорада TEX-а из 2008“ („TEX tuneup of 2008“) укључене су у ово издање. Погледајте http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf.

10.1.6 2009

У издању из 2009, PDF је постављен као подразумевани излазни формат за Lua(LA )TEX како би се искористиле могућности напредне LuaTEX-ове подршке за OpenType итд. Нови програми названи dviluatex и dvilualatex покрећу LuaTEX са излазом у DVI формату. Интернет-страница LuaTEX-а је http://luatex.org.

Програм Omega и формат Lambda су уклоњени, након дискусије са ауторима пројекта Omega. У дистрибуцији су остале надограђене верзије Aleph-а и Lamed-а, као и алатке из пројекта Omega.

Укључено је и ново издање AMS Type 1 фонтова, међу њима и Computer Modern: на тај начин је постало доступно неколико промена обликā које је Кнут [Knuth] током претходних година унео у изворни Metafont кôд, а побољшан је и „hinting“. Херман Цапф [Hermann Zapf] је темељно редизајнирао Ојлер [Euler] фонтове (в. http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf). У свим овим случајевима, метрика је остала непромењена. Интернет-страница фонтова Америчког математичког друштва (AMS) је http://www.ams.org/tex/amsfonts.html.

У дистрибуцију су укључене верзије новог графичког окружења TEXworks за Windows и MacTEX. Ако желите да користите TEXworks на другим оперативним системима, погледајте Интернет-страницу пројекта http://tug.org/texworks. TEXworks је програм писан за више платформи и инспирисан је Mac OS X едитором TeXShop, са циљем да олакша свакодневни рад у TEX-у.

Такође, укључене су верзије графичког програма Asymptote за неколико оперативних система. Он интерпретира језик за описивање цртежā који личи на MetaPost, али са развијеном подршком за тродимензионалне пројекције и многим другим могућностима. Интернет-страница овог програма је http://asymptote.sourceforge.net.

Засебни програм dvipdfm замењен је dvipdfmx-ом; dvipdfmx може да ради у посебном режиму компатибилности ако се позове са старим именом. dvipdfmx укључује подршку за кинески, јапански и корејски (CJK) и током година које су прошле од последњег издања dvipdfm-а накупило се много исправки. Интернет-страница DVIPDFMx-а је http://project.ktug.or.kr/dvipdfmx.

Додати су програми за платформе i386-cygwin и i386-netbsd; посаветовани смо да корисници OpenBSD-ја добијају TEX Live преко свог система за пакете; такође, било је и тешкоћа да се направе програми који би имали шансу да раде на више од једног издања тог оперативног система.

Још неколико малих промена: сада користимо компресију типа xz, која представља стабилну замену за lzma (http://tukaani.org/xz/); знак $ је сада дозвољен у именима фајлова уколико то не доводи то поклапања са именом неке постојеће променљиве; библиотека Kpathsea сада има подршку за multi-threading (неопходно за нову верзију програма MetaPost); читаво компајлирање TEX Live-а сада се заснива на систему Automake.

На крају, једна напомена везана за прошлост: сва издања TEX Live-а, са допунским материјалом као што су налепнице и омоти за CD-ове, доступна су на страници ftp://tug.org/historic/systems/texlive.

10.2 Тренутно стање

У издању TEX Live-а из 2010. године подразумевана верзија PDF формата који праве разни програми постављена је на 1.5; ово омогућава бољу компресију докумената. Ова промена важи за све TEX програме када им је задато да праве PDF, као и за dvipdfmx. Ако желите да вратите верзију на PDF 1.4, учитајте LATEX пакет по имену pdf14 или подесите \pdfminorversion=4.

pdf(LA )TEX сада аутоматски пребацује задати Encapsulated PostScript (EPS) фајл у PDF формат помоћу пакета epstopdf; исто важи и ако је учитан LATEX-ов конфигурациони фајл graphics.cfg и ако је излаз подешен на PDF. Стандардне опције су подешене са намером да елиминишу могућност да се неки ручно урађени PDF фајл случајно пребрише у том процесу, али Ви свеједно можете да спречите да се epstopdf учитава стављајући \newcommand{\DoNotLoadEpstopdf}{} (или \def...) пре команде \documentclass. Исто тако, epstopdf се не учитава ако се користи пакет pst-pdf. Више детаља о овим стварима можете пронаћи у документацији укљученој у пакет epstopdf (http://ctan.org/pkg/epstopdf-pkg).

Још једна промена која има везе са овим: сада је покретање малог броја спољних команди од стране TEX-a (путем \write18) активирано у стандардној инсталацији. Ове команде су: repstopdf, makeindex, kpsewhich, bibtex и bibtex8; списак је одређен у фајлу texmf.cnf. Ако радите у окружењу у коме морате да укинете покретање свих таквих спољних команди, можете да искључите одговарајућу опцију у инсталационом програму (погледајте одељак 3.2.4) или да промените вредност након инсталације помоћу команде tlmgr conf texmf shell_escape 0.

Промена која следи из претходне две јесте то што ће BibTeX и Makeindex сада, у стандардној конфигурацији, одбити да уписују своје излазне фајлове у произвољни директоријум (као и сâм TEX). Ова промена је уведена да би се искористила могућност да се bibtex и makeindex додају на листу дозвољених команди путем \write18; из поменутих разлога оне су у тај списак и укључене. Ако желите да промените ово подразумевано понашање, можете да дефинишете системску променљиву TEXMFOUTPUT или да промените параметар openout_any.

XeTEX сада подржава микротипографске ефекте (margin kerning) на исти начин као pdfTEX. (Проширивање фонтова [font expansion] тренутно није подржано.)

У стандардној конфигурацији, tlmgr сада прави по једну резервну копију (бекап) за сваки надограђени пакет (tlmgr option autobackup 1), тако да се пакети чије освежавање не успе могу лако повратити у радно стање помоћу tlmgr restore. Ако надограђујете пакете после инсталације а немате простора на диску за резервне копије, покрените команду tlmgr option autobackup 0.

У TEX Live су укључени неки нови програми: pTEX и алатке повезане са њим, специјализовани за припрему текста на јапанском језику; програм BibTeXU који уводи подршку за Unicode у BibTeX; алатка chktex (http://baruch.ev-en.org/proj/chktex) која проверава исправност (LA )TEX докумената; програм за пребацивање из DVI у SVG векторски формат (http://dvisvgm.sourceforge.net).

Додате су верзије програмā за пет нових платформи: amd64-freebsd, amd64-kfreebsd, i386-freebsd, i386-kfreebsd, x86_64-darwin и x86_64-solaris.

Једна промена из TEX Live 2009 коју смо пропустили да евидентирамо: бројни програми везани за TEX4ht (http://tug.org/tex4ht) склоњени су из директоријума са извршним фајловима. Програм mk4ht сада покрива све могуће tex4ht комбинације.

На нашу велику жалост, издање TEX Live-а на TEX Collection DVD-ју више не може да се покреће „живо“ (live): DVD као медиј просто више није довољно велики. У томе има, међутим, и једна предност: инсталација са нарезаног DVD-ја сада би требало да буде много бржа.

10.3 Будућност

TEX Live није савршен! (И никада неће ни бити.) Намера нам је да наставимо да издајемо нове верзије, да пружимо више помоћног материјала, више алатки, више инсталационих програма и (наравно) још боље подешену и тестирану структуру макроа и фонтова, који се са своје стране непрестано усавршавају. Сав овај рад обављају волонтери у свом слободном времену, тако да посла увек има на претек. Стога Вас позивамо да посетите страницу http://tug.org/texlive/contribute.html.

Молимо Вас да шаљете исправке, предлоге и понуде за помоћ на:

tex-live@tug.org
http://tug.org/texlive

Срећно TEX-овање!

_____________________________________________________________________________________

Permission is granted to copy, distribute and/or modify this translation under the terms of the adapted version of FreeBSD documentation licence.

http://www.gnu.org/licenses/license-list.html#FreeDocumentationLicenses
http://www.freebsd.org/copyright/freebsd-doc-license.html

Дистрибуција овог превода дозвољена је под условима прилагођене варијанте FreeBSD Documentation License. Tекст лиценце je прилагођен техничким карактеристикама ове документације.

Serbian translation of TEX Live Guide: TEX Live 2010.
Copyright (C) 2010 Nikola Lečić (the translator).

Redistribution and use in source (XeLATEX 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:

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.

*Превод текста: Karl Berry (ed.), The TEX Live Guide: TEX Live 2010. Ова верзија превода је еквивалент TEX кôда из фајла texlive-en.tex, SVN r19386. Услови под којима можете да користите овај превод дати су на крају документа, као и у фајлу texlive-sr.tex.

1Платформа представља комбинацију архитектуре и оперативног система: нпр. оперативни систем FreeBSD који ради на 64-битном Intel или AMD процесору јесте платформа по имену amd64-freebsd. Развојни тим TEX Live-a се одлучио да овом изразу дâ предност у односу на израз „оперативни систем“ и ми ћемо следити ту одлуку колико је то могуће, мада не у свим случајевима (пре свега у српском преводу програмā install-tl и tlmgr, у којима би употреба израза архитектура могла лако да збуни корисника пошто тамо није могуће дати овакво објашњење) — прим. прев.

2Ово нарочито важи ако користите ћириличне верзије програма, укључујући и српску; фонтови могу бити читљиви, али ће изгледати веома лоше — прим. прев.

3Системска променљива је превод израза environment variable. Други могући превод био би променљива из окружења, али смо се одлучили да избегнемо ту конструкцију зато што је она по нашем мишљењу (1) мање јасна корисницима Windows-а и зато што (2) обе имају мање-више исто значење у пракси — прим. прев.

4Прерачунавање је превод израза expanding; генерално се ради о замени неког једноставног израза неким компликованијим садржајем до кога се долази одговарајућим алгоритмом; стога, у зависности од контекста, може да значи и рашчлањавање и проширивање прим. прев.

5Израз whitespace означава све врсте „провидних знакова“, пре свега размак („space“) и „Tab“ — прим. прев.