From b04c2e1a42573e9735547702356c7b9a769a6855 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 7 Apr 2013 18:26:53 +0000 Subject: texmf -> texmf-dist: doc git-svn-id: svn://tug.org/texlive/trunk@29714 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/texlive/index.html | 63 + .../doc/texlive/texlive-common/examples/ex5.tex | 6 + .../doc/texlive/texlive-common/examples/ex6.tex | 56 + .../doc/texlive/texlive-common/examples/ex6a.tex | 24 + .../doc/texlive/texlive-common/examples/ex6b.tex | 6 + .../doc/texlive/texlive-common/examples/ex6c.tex | 14 + .../texlive/texlive-common/install-lnx-main.png | Bin 0 -> 91892 bytes .../doc/texlive/texlive-common/psview.png | Bin 0 -> 10129 bytes .../doc/texlive/texlive-common/stdcoll.png | Bin 0 -> 50500 bytes .../texlive-common/tlmgr-general-options.png | Bin 0 -> 31765 bytes .../doc/texlive/texlive-common/tlmgr-gui.png | Bin 0 -> 59972 bytes .../texlive/texlive-common/tlmgr-paper-options.png | Bin 0 -> 20193 bytes .../doc/texlive/texlive-common/tray-menu.png | Bin 0 -> 2078 bytes .../doc/texlive/texlive-common/wizard-w32.png | Bin 0 -> 30107 bytes Master/texmf-dist/doc/texlive/texlive-cz/Makefile | 2 + .../texmf-dist/doc/texlive/texlive-cz/csquote.sty | 181 + .../doc/texlive/texlive-cz/ec-lmr10-19.png | Bin 0 -> 201 bytes .../texmf-dist/doc/texlive/texlive-cz/live4ht.cfg | 47 + .../texmf-dist/doc/texlive/texlive-cz/tex-live.css | 44 + .../doc/texlive/texlive-cz/texlive-cz.css | 353 + .../doc/texlive/texlive-cz/texlive-cz.html | 6639 +++++++++++++++++++ .../doc/texlive/texlive-cz/texlive-cz.pdf | Bin 0 -> 828466 bytes .../doc/texlive/texlive-cz/texlive-cz.tex | 3734 +++++++++++ Master/texmf-dist/doc/texlive/texlive-de/Makefile | 2 + .../doc/texlive/texlive-de/lmsy10-40.png | Bin 0 -> 273 bytes .../doc/texlive/texlive-de/texlive-de-new.tex | 2151 ++++++ .../doc/texlive/texlive-de/texlive-de.css | 474 ++ .../doc/texlive/texlive-de/texlive-de.html | 2192 ++++++ .../doc/texlive/texlive-de/texlive-de.pdf | Bin 0 -> 1031694 bytes .../doc/texlive/texlive-de/texlive-de.tex | 3328 ++++++++++ Master/texmf-dist/doc/texlive/texlive-en/Makefile | 34 + Master/texmf-dist/doc/texlive/texlive-en/README | 5 + .../doc/texlive/texlive-en/archive/bv-live.tex | 84 + .../doc/texlive/texlive-en/archive/bvoutln.sty | 193 + .../doc/texlive/texlive-en/archive/changemail | 24 + .../texmf-dist/doc/texlive/texlive-en/archive/l.pl | 44 + .../doc/texlive/texlive-en/archive/live-2003.tex | 3937 +++++++++++ .../doc/texlive/texlive-en/archive/live-2004.tex | 3854 +++++++++++ .../doc/texlive/texlive-en/archive/live-2005.tex | 3174 +++++++++ .../doc/texlive/texlive-en/archive/live-2007.tex | 3264 +++++++++ .../doc/texlive/texlive-en/archive/live-2008.tex | 2951 +++++++++ .../doc/texlive/texlive-en/archive/live-2009.tex | 3130 +++++++++ .../doc/texlive/texlive-en/archive/live-2010.tex | 3143 +++++++++ .../doc/texlive/texlive-en/archive/live-2011.tex | 3303 ++++++++++ .../doc/texlive/texlive-en/archive/live-tl7.tex | 3554 ++++++++++ .../texlive/texlive-en/archive/live4ht.cfg-2004 | 36 + .../doc/texlive/texlive-en/archive/mod.pl | 976 +++ .../doc/texlive/texlive-en/archive/nocites.tex | 557 ++ .../doc/texlive/texlive-en/archive/picture.tex | 46 + .../doc/texlive/texlive-en/archive/split.pl | 16 + .../doc/texlive/texlive-en/archive/status.pl | 31 + .../doc/texlive/texlive-en/archive/tex-live.bib | 235 + .../doc/texlive/texlive-en/archive/tex-live.bst | 60 + .../texlive/texlive-en/archive/tex-live.sty-2003 | 378 ++ .../texlive/texlive-en/archive/tex-live.sty-2004 | 422 ++ .../texlive/texlive-en/archive/tex-live.sty-2005 | 429 ++ .../texlive/texlive-en/archive/tex-live.sty-2007 | 429 ++ .../texlive/texlive-en/archive/tex-live.sty-2008 | 444 ++ .../texlive/texlive-en/archive/tex-live.sty-2009 | 489 ++ .../texlive/texlive-en/archive/tex-live.sty-2010 | 493 ++ .../doc/texlive/texlive-en/archive/texlive.pl | 574 ++ .../texmf-dist/doc/texlive/texlive-en/live4ht.cfg | 52 + .../texmf-dist/doc/texlive/texlive-en/tex-live.css | 44 + .../texmf-dist/doc/texlive/texlive-en/tex-live.sty | 494 ++ .../doc/texlive/texlive-en/texlive-en.css | 338 + .../doc/texlive/texlive-en/texlive-en.html | 6379 ++++++++++++++++++ .../doc/texlive/texlive-en/texlive-en.pdf | Bin 0 -> 896947 bytes .../doc/texlive/texlive-en/texlive-en.tex | 3360 ++++++++++ Master/texmf-dist/doc/texlive/texlive-fr/Makefile | 4 + .../texmf-dist/doc/texlive/texlive-fr/live4ht.cfg | 47 + Master/texmf-dist/doc/texlive/texlive-fr/notes | 83 + .../texmf-dist/doc/texlive/texlive-fr/tex-live.css | 44 + .../doc/texlive/texlive-fr/texlive-fr.css | 478 ++ .../doc/texlive/texlive-fr/texlive-fr.html | 6668 +++++++++++++++++++ .../doc/texlive/texlive-fr/texlive-fr.pdf | Bin 0 -> 997622 bytes .../doc/texlive/texlive-fr/texlive-fr.tex | 3653 ++++++++++ Master/texmf-dist/doc/texlive/texlive-it/Makefile | 3 + .../doc/texlive/texlive-it/texlive-it.html | 6532 ++++++++++++++++++ .../doc/texlive/texlive-it/texlive-it.pdf | Bin 0 -> 907628 bytes .../doc/texlive/texlive-it/texlive-it.tex | 3587 ++++++++++ Master/texmf-dist/doc/texlive/texlive-pl/Makefile | 2 + .../texmf-dist/doc/texlive/texlive-pl/live4ht.cfg | 52 + .../texmf-dist/doc/texlive/texlive-pl/tex-live.css | 44 + .../doc/texlive/texlive-pl/tex-livep.sty | 497 ++ .../doc/texlive/texlive-pl/texlive-pl.css | 380 ++ .../doc/texlive/texlive-pl/texlive-pl.html | 6942 ++++++++++++++++++++ .../doc/texlive/texlive-pl/texlive-pl.pdf | Bin 0 -> 965707 bytes .../doc/texlive/texlive-pl/texlive-pl.tex | 3862 +++++++++++ Master/texmf-dist/doc/texlive/texlive-ru/Makefile | 2 + .../texmf-dist/doc/texlive/texlive-ru/live4ht.cfg | 47 + .../texmf-dist/doc/texlive/texlive-ru/t2almdh.fd | 51 + Master/texmf-dist/doc/texlive/texlive-ru/t2almr.fd | 60 + .../texmf-dist/doc/texlive/texlive-ru/t2almss.fd | 60 + .../texmf-dist/doc/texlive/texlive-ru/t2almtt.fd | 59 + .../texmf-dist/doc/texlive/texlive-ru/tex-live.css | 44 + .../doc/texlive/texlive-ru/texlive-ru.css | 192 + .../doc/texlive/texlive-ru/texlive-ru.html | 6368 ++++++++++++++++++ .../doc/texlive/texlive-ru/texlive-ru.pdf | Bin 0 -> 1016558 bytes .../doc/texlive/texlive-ru/texlive-ru.tex | 3468 ++++++++++ Master/texmf-dist/doc/texlive/texlive-sr/Makefile | 26 + .../doc/texlive/texlive-sr/README-SR.txt | 48 + .../tl2012-install-tl-collections-freebsd-sr.png | Bin 0 -> 40900 bytes .../tl2012-install-tl-expert-gui-freebsd-sr.png | Bin 0 -> 83187 bytes .../images/tl2012-install-tl-wizard-win32-sr.png | Bin 0 -> 29374 bytes .../images/tl2012-tlmgr-main-screen-freebsd-sr.png | Bin 0 -> 43132 bytes .../images/tl2012-tlmgr-options-freebsd-sr.png | Bin 0 -> 32396 bytes .../tl2012-tlmgr-paper-options-freebsd-sr.png | Bin 0 -> 21613 bytes .../doc/texlive/texlive-sr/texlive-sr.css | 178 + .../doc/texlive/texlive-sr/texlive-sr.html | 5934 +++++++++++++++++ .../doc/texlive/texlive-sr/texlive-sr.pdf | Bin 0 -> 490509 bytes .../doc/texlive/texlive-sr/texlive-sr.sty | 70 + .../doc/texlive/texlive-sr/texlive-sr.tex | 3907 +++++++++++ .../texmf-dist/doc/texlive/texlive-zh-cn/Makefile | 23 + .../doc/texlive/texlive-zh-cn/README-live.ZH-CN | 25 + .../doc/texlive/texlive-zh-cn/tex-live-zh-cn.sty | 35 + .../doc/texlive/texlive-zh-cn/texlive-zh-cn.pdf | Bin 0 -> 793300 bytes .../doc/texlive/texlive-zh-cn/texlive-zh-cn.tex | 2788 ++++++++ 117 files changed, 122555 insertions(+) create mode 100644 Master/texmf-dist/doc/texlive/index.html create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/examples/ex5.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/examples/ex6.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/examples/ex6a.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/examples/ex6b.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/examples/ex6c.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/install-lnx-main.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/psview.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/stdcoll.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/tlmgr-general-options.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/tlmgr-gui.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/tlmgr-paper-options.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/tray-menu.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-common/wizard-w32.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-cz/Makefile create mode 100644 Master/texmf-dist/doc/texlive/texlive-cz/csquote.sty create mode 100644 Master/texmf-dist/doc/texlive/texlive-cz/ec-lmr10-19.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-cz/live4ht.cfg create mode 100644 Master/texmf-dist/doc/texlive/texlive-cz/tex-live.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.html create mode 100644 Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.pdf create mode 100644 Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-de/Makefile create mode 100644 Master/texmf-dist/doc/texlive/texlive-de/lmsy10-40.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-de/texlive-de-new.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-de/texlive-de.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-de/texlive-de.html create mode 100644 Master/texmf-dist/doc/texlive/texlive-de/texlive-de.pdf create mode 100644 Master/texmf-dist/doc/texlive/texlive-de/texlive-de.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/Makefile create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/README create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/bv-live.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/bvoutln.sty create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/changemail create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/l.pl create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/live-2003.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/live-2004.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/live-2005.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/live-2007.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/live-2008.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/live-2009.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/live-2010.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/live-2011.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/live-tl7.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/live4ht.cfg-2004 create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/mod.pl create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/nocites.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/picture.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/split.pl create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/status.pl create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.bib create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.bst create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2003 create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2004 create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2005 create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2007 create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2008 create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2009 create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2010 create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/archive/texlive.pl create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/live4ht.cfg create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/tex-live.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/tex-live.sty create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/texlive-en.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/texlive-en.html create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/texlive-en.pdf create mode 100644 Master/texmf-dist/doc/texlive/texlive-en/texlive-en.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-fr/Makefile create mode 100644 Master/texmf-dist/doc/texlive/texlive-fr/live4ht.cfg create mode 100644 Master/texmf-dist/doc/texlive/texlive-fr/notes create mode 100644 Master/texmf-dist/doc/texlive/texlive-fr/tex-live.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.html create mode 100644 Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.pdf create mode 100644 Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-it/Makefile create mode 100644 Master/texmf-dist/doc/texlive/texlive-it/texlive-it.html create mode 100644 Master/texmf-dist/doc/texlive/texlive-it/texlive-it.pdf create mode 100644 Master/texmf-dist/doc/texlive/texlive-it/texlive-it.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-pl/Makefile create mode 100644 Master/texmf-dist/doc/texlive/texlive-pl/live4ht.cfg create mode 100644 Master/texmf-dist/doc/texlive/texlive-pl/tex-live.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-pl/tex-livep.sty create mode 100644 Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.html create mode 100644 Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.pdf create mode 100644 Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/Makefile create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/live4ht.cfg create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/t2almdh.fd create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/t2almr.fd create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/t2almss.fd create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/t2almtt.fd create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/tex-live.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.html create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.pdf create mode 100644 Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/Makefile create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/README-SR.txt create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-collections-freebsd-sr.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-expert-gui-freebsd-sr.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-wizard-win32-sr.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-main-screen-freebsd-sr.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-options-freebsd-sr.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-paper-options-freebsd-sr.png create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.css create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.html create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.pdf create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.sty create mode 100644 Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.tex create mode 100644 Master/texmf-dist/doc/texlive/texlive-zh-cn/Makefile create mode 100644 Master/texmf-dist/doc/texlive/texlive-zh-cn/README-live.ZH-CN create mode 100644 Master/texmf-dist/doc/texlive/texlive-zh-cn/tex-live-zh-cn.sty create mode 100644 Master/texmf-dist/doc/texlive/texlive-zh-cn/texlive-zh-cn.pdf create mode 100644 Master/texmf-dist/doc/texlive/texlive-zh-cn/texlive-zh-cn.tex (limited to 'Master/texmf-dist/doc/texlive') diff --git a/Master/texmf-dist/doc/texlive/index.html b/Master/texmf-dist/doc/texlive/index.html new file mode 100644 index 00000000000..951ec4e1e7e --- /dev/null +++ b/Master/texmf-dist/doc/texlive/index.html @@ -0,0 +1,63 @@ + + +TeX Live + +

TeX Live documentation

+ +

The principal documentation available on TeX Live: + +

+ + + +
TeX Live home page. + diff --git a/Master/texmf-dist/doc/texlive/texlive-common/examples/ex5.tex b/Master/texmf-dist/doc/texlive/texlive-common/examples/ex5.tex new file mode 100644 index 00000000000..51a49fb670e --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-common/examples/ex5.tex @@ -0,0 +1,6 @@ +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;}// diff --git a/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6.tex b/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6.tex new file mode 100644 index 00000000000..7a56896e61c --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6.tex @@ -0,0 +1,56 @@ +\begin{figure*}[tp] +\centering +\begin{BVerbatim}[fontsize=\small] +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 +\end{BVerbatim} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\begin{BVerbatim}[fontsize=\small] +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{BVerbatim} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\begin{BVerbatim}[fontsize=\small] +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{BVerbatim} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} diff --git a/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6a.tex b/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6a.tex new file mode 100644 index 00000000000..bbc9f5b42a7 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6a.tex @@ -0,0 +1,24 @@ +\begin{BVerbatim}[fontsize=\small] +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 +\end{BVerbatim} \ No newline at end of file diff --git a/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6b.tex b/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6b.tex new file mode 100644 index 00000000000..5a5a92f1f22 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6b.tex @@ -0,0 +1,6 @@ +\begin{BVerbatim}[fontsize=\small] +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{BVerbatim} \ No newline at end of file diff --git a/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6c.tex b/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6c.tex new file mode 100644 index 00000000000..5daaeaa184b --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-common/examples/ex6c.tex @@ -0,0 +1,14 @@ +\begin{BVerbatim}[fontsize=\small] +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{BVerbatim} \ No newline at end of file diff --git a/Master/texmf-dist/doc/texlive/texlive-common/install-lnx-main.png b/Master/texmf-dist/doc/texlive/texlive-common/install-lnx-main.png new file mode 100644 index 00000000000..977a69bceee Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-common/install-lnx-main.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-common/psview.png b/Master/texmf-dist/doc/texlive/texlive-common/psview.png new file mode 100644 index 00000000000..8322bdda693 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-common/psview.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-common/stdcoll.png b/Master/texmf-dist/doc/texlive/texlive-common/stdcoll.png new file mode 100644 index 00000000000..1d20b66a70c Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-common/stdcoll.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-common/tlmgr-general-options.png b/Master/texmf-dist/doc/texlive/texlive-common/tlmgr-general-options.png new file mode 100644 index 00000000000..75fe72dfc9f Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-common/tlmgr-general-options.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-common/tlmgr-gui.png b/Master/texmf-dist/doc/texlive/texlive-common/tlmgr-gui.png new file mode 100644 index 00000000000..84de559dd8d Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-common/tlmgr-gui.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-common/tlmgr-paper-options.png b/Master/texmf-dist/doc/texlive/texlive-common/tlmgr-paper-options.png new file mode 100644 index 00000000000..dc339688f7d Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-common/tlmgr-paper-options.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-common/tray-menu.png b/Master/texmf-dist/doc/texlive/texlive-common/tray-menu.png new file mode 100644 index 00000000000..6b3921f229c Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-common/tray-menu.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-common/wizard-w32.png b/Master/texmf-dist/doc/texlive/texlive-common/wizard-w32.png new file mode 100644 index 00000000000..9d740fb838e Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-common/wizard-w32.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-cz/Makefile b/Master/texmf-dist/doc/texlive/texlive-cz/Makefile new file mode 100644 index 00000000000..cd38cae0227 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-cz/Makefile @@ -0,0 +1,2 @@ +include ../texlive-en/Makefile +doc = texlive-cz diff --git a/Master/texmf-dist/doc/texlive/texlive-cz/csquote.sty b/Master/texmf-dist/doc/texlive/texlive-cz/csquote.sty new file mode 100644 index 00000000000..3644143647b --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-cz/csquote.sty @@ -0,0 +1,181 @@ +%%%%%%%%%%%%%%%%%%%%%% cut here %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% File: CSQUOTE.TEX/STY +% Version: 1.1 +% +% Authors: Hunter Goatley +% (parts from QUOTE.TEX/STY) +% Petr Sojka +% +% Warranty: +% +% Copyright (c) 1992 by Hunter Goatley, Petr Sojka +% Permission to copy all or part of this work is granted, provided +% that the copies are not made or distributed for resale, and that +% the copyright notice and this notice are retained. +% +% THIS WORK IS PROVIDED ON AN "AS IS" BASIS. THE AUTHOR PROVIDES NO +% WARRANTY WHATSOEVER, EITHER EXPRESS OR IMPLIED, REGARDING THE WORK, +% INCLUDING WARRANTIES WITH RESPECT TO ITS MERCHANTABILITY OR FITNESS +% FOR ANY PARTICULAR PURPOSE. +% +% If you make any improvements, I'd like to hear about them. +% +% History: +% +% Oct 26, 92 - V1.0 first release +% Dec 14, 92 - V1.1 \uv added +% +% Abstract: +% +% This file defines the macros \csdoublequoteson and \csdoublequotesoff. +% These macros allows switching between standard and following behaviour: +% TeX replace the double-quote character (") with Czech +% left and right double-quotes. For example: +% +% "This is a test." ---> ,,This is a test.'' +% +% The double-quote character is still available via \dq. +% \" is still treated as the umlaut accent. +% +% This macro makes a couple of assumptions about the double-quotes: +% +% 1. Double-quotes are assumed to come in pairs. When replacing +% double-quotes, the macro alternates between ,, and ''. The only +% exception to this is noted in (2) below. +% 2. A double-quote at the beginning of a paragraph is always treated +% as ,,. This correctly handles the case where a quotation is +% continued into a second paragraph: +% +% "This is the first paragraph.\par +% "This is the second paragraph of the same quote." +% +% Normal TeX spacing after ,, and '' is maintained by saving and +% restoring the \spacefactor. +% +% Macros work both with plainTex and LaTeX. +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% HOW IT WORKS: +% +% The double-quote character (") is made active by \csdoublequoteson. +% The " macro keeps track of left-quote/right-quote pairs and inserts +% the appropriate ,, and '' in its place. +% +% Each character has a \spacefactor associated with it, which specifies +% the amount of stretch or shrink that a space following the character +% can have. Most characters have a factor of 1000, but some punctuation +% marks have higher spacefactors, most notably the period, which has a +% \spacefactor of 3000. This means the space following a period can +% stretch up to 3 times more than the space after a regular character, +% accounting for the increased space at the end of sentences. +% +% The ,, and '' ligatures are assigned \spacefactor's of 0, so that the +% \spacefactor that is applied to the next character is the same as that +% of the character preceding the quotes. Because " has been redefined as +% a macro, any spaces following " are swallowed by TeX. It was necessary +% to have this macro re-insert any needed space so that the following +% cases worked correctly: +% +% "This is a test," she said. --> ,,This is a test,'' she said. +% "This is in a list"; etc. --> ,,This is in a list''; etc. +% +% Without the added space, the first example becomes: +% +% ,,This is a test,''she said. +% +% The solution was to save the current \spacefactor before inserting a +% right double-quote, then resetting the \spacefactor after the +% insertion. The net effect was that the " macro has a \spacefactor +% of 0, which matches the way TeX treats ,, and ''. +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +{% % Begin a group for which " is active +\catcode`\"=\active % Make " an active character +\catcode`\@=11 % Make @ an active character +% +% \csdoublequoteson +% +% This macro makes " an active character, resets the control sequence +% \dblqu@te to L (left), and defines \dq as a replacement for ". +% +\gdef\csdoublequoteson{% % \csdoublequoteson enables " + \gdef"{\czechquotes}% % Define " as \czechquotes + \global\catcode`\"=\active% % Make " an active character + \global\chardef\dq=`\"% % Double-quote char. via \dq + \global\let\dblqu@te=L% % Always start with a left double-quote + } % End of macro +% +% \bq, \eq +% +% These macros define default characters for czech left and right +% double quotes. Czech opening quote is created from two commas with +% kerning depending on fontdimen four parameter of current font. +% Better solution should be specially designed character with +% proper kernings; if you have such characters in fonts +% (e.g. in DC-fonts), use it instead. (e.g. define +% macros \bq and \eq e.g. \def\bq{\char"130 } +% in your document/style file-- not in csquote.sty!) +% Similar solution is used for czech right quote. +% +% \cs existence test, stolen from TeXbook exercise 7.7 +\def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax }% +% +% another macro to be more efficient in time and space +\global\chardef\f@@r=4 +% +\ifundefined{bq}% +\gdef\bq{\kern-.25\fontdimen\f@@r\font,\kern-.8\fontdimen\f@@r\font,% + \kern-.35\fontdimen\f@@r\font}% +\fi +\ifundefined{eq}% +\gdef\eq{\kern-.35\fontdimen\f@@r\font`\kern-.8\fontdimen\f@@r\font`% + \kern-.25\fontdimen\f@@r\font} +\fi +% +% Macro \uv for other usage of \bq and \eq. +% +\ifundefined{uv}% + \gdef\uv#1{\bq #1\eq} +\fi +% +% Define the macro that will be executed whenever " is encountered. +% +\gdef\czechquotes{% + % If the double-quote is the first character in a new paragraph, + % make sure it becomes a left double-quote. This case can be + % detected by checking to see if TeX is currently in vertical mode. + % If so, the double-quote is at the beginning of the paragraph + % (since " hasn't actually generated any horizontal mode tokens + % yet, TeX is still in vertical mode). If the mode is vertical, + % set \dblqu@te equal to L. + % + \ifinner\else\ifvmode\let\dblqu@te=L\fi\fi% + % + % Now insert the appropriate left or right double-quote. + % + % If \dblqu@te is L, insert an opening quote and set \dblqu@te to R. + % + \if L\dblqu@te\bq\global\let\dblqu@te=R% + % + % Otherwise, save the current \spacefactor, insert '', set \dblqu@te + % to L, and reset the original \spacefactor. + % + \else% + \let\xxx=\spacefactor% % Save the \spacefactor + \eq% % Insert ending quote + \global\let\dblqu@te=L% % and reset \dblqu@te + \spacefactor\xxx% % Reset the \spacefactor + \fi% % End of \if L\dblqu@te... + } % End of " macro +} % End of group + +\gdef\csdoublequotesoff{% + \catcode`\"=12% % Set " back to other + } +% +% Czech quotes are default +% +\csdoublequoteson + diff --git a/Master/texmf-dist/doc/texlive/texlive-cz/ec-lmr10-19.png b/Master/texmf-dist/doc/texlive/texlive-cz/ec-lmr10-19.png new file mode 100644 index 00000000000..9b6ee191860 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-cz/ec-lmr10-19.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-cz/live4ht.cfg b/Master/texmf-dist/doc/texlive/texlive-cz/live4ht.cfg new file mode 100644 index 00000000000..54985bf6219 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-cz/live4ht.cfg @@ -0,0 +1,47 @@ +% tex4ht configuration file for the TeX Live documentation. +% Accumulated over many years. Public domain. +% +% html specifies the main output format. +% info for extra debugging info in the log files. + +% better approach is to have html in one piece (including footnotes). +% also the newest TeX4ht could produce UTF-8 output (-utf8 option) +\Preamble{charset=utf8,html,info,fn-in} + +% add extra stylesheet +\Configure{@HEAD}{\HCode{% +\Hnewline +\Hnewline +}} + +% or LaTeX complains it is missing. +\begin{document} + +\EndPreamble + +% simplify output for HTML. We leave TeX and LaTeX alone, since tex4ht +% actually does the lowered E (and raised A) in CSS. +\def\OMEGA{Omega} +\def\LaTeXe{LaTeX2e} +\def\eTeX{e-\TeX} +\def\acro#1{#1} +\def\MF{Metafont} +\def\BibTeX{BibTeX} +\def\warningbox{} +\def\endwarningbox{} + +\newif\ifhackliterals +\ifx\tldocenglish\undefined \else \hackliteralstrue \fi +\ifx\tldocrussian\undefined \else \hackliteralstrue \fi +\ifx\tldocgerman\undefined \else \hackliteralstrue \fi +% +\ifhackliterals + % these definitions cause "missing } inserted" at \end{tabularx} in + % French and Czech. don't know why. + % + % don't make these into links, as happens with \path. We only have a couple + % special characters that actually occur. + \def\dirname{\texttt\bgroup\catcode`\$=12 \catcode`\_=12 \finishliteral} + \def\finishliteral#1{#1\egroup} + \let\filename=\dirname +\fi diff --git a/Master/texmf-dist/doc/texlive/texlive-cz/tex-live.css b/Master/texmf-dist/doc/texlive/texlive-cz/tex-live.css new file mode 100644 index 00000000000..5062bc0d229 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-cz/tex-live.css @@ -0,0 +1,44 @@ +/* $Id$ + Simple CSS for TeX Live that adds margins and a little color. + original by Bzyl Wlodzimierz, edited by Karl Berry, 2005. + Public domain. */ + +html { + // top left bottom right + margin: 15pt 15pt 15pt 15pt; + background: rgb(255,255,224); +} + +body { + margin: 0 5pt 0 5pt; + padding: 0; + //matw: background: rgb(224,255,224); + // (It looks better to me to have a consistent background --karl) +// fonts in browser are low resolution; +// therefore generated serif are poor quality, +// so they disturb reading (that is my opinion) + font-family: sans-serif; + font-style: normal; +} + +/* (It looks better to me to not vary colors at every level --karl) */ + +h3.sectionHead { + padding: 12pt 10pt 12pt 20pt; + //matw: background: rgb(192,224,255); + background: rgb(224,224,255); + color: rgb(0,0,32); +} + +h4.subsectionHead { + padding: 7pt 10pt 7pt 40pt; + background: rgb(224,224,255); + color: rgb(0,0,32); +} + +h5.subsubsectionHead { + padding: 3pt 10pt 3pt 40pt; + //matw: background: rgb(224,255,255); + background: rgb(224,224,255); + color: rgb(0,0,32); +} diff --git a/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.css b/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.css new file mode 100644 index 00000000000..440a888f594 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.css @@ -0,0 +1,353 @@ + +/* start css.sty */ +.ec-lmr-10x-x-109{} +.ec-lmr-17{font-size:154%;} +.ec-lmss-17x-x-120{font-size:185%; font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmss-17x-x-120{ font-family: sans-serif;} +.ec-lmr-12{font-size:109%;} +.ec-lmtt-12{font-size:109%; font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmtt-10x-x-109{ font-family: monospace;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.ec-lmss-10x-x-109{ font-family: sans-serif;} +.lmmi-10x-x-109{} +.lmsy-10x-x-109{} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmbx-10x-x-109{ font-weight: bold;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmri-10x-x-109{ font-style:italic;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmtk-10x-x-109{ font-family: monospace;} +.ec-lmr-9{font-size:81%;} +.ec-lmtt-9{font-size:81%; font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmro-10x-x-109{ font-style: oblique;} +.ec-lmr-10{font-size:90%;} +.ec-lmtt-10{font-size:90%; font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmr-8{font-size:72%;} +.ec-lmtt-8{font-size:72%; font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.htf-calligraphy {font-family:cursive} +.htf-calligraphy-bold {font-family:cursive ; font-weight: bold; } +p.noindent { text-indent: 0em } +td p.noindent { text-indent: 0em; margin-top:0em; } +p.nopar { text-indent: 0em; } +p.indent{ text-indent: 1.5em } +@media print {div.crosslinks {visibility:hidden;}} +a img { border-top: 0; border-left: 0; border-right: 0; } +center { margin-top:1em; margin-bottom:1em; } +td center { margin-top:0em; margin-bottom:0em; } +.Canvas { position:relative; } +img.math{vertical-align:middle;} +li p.indent { text-indent: 0em } +li p:first-child{ margin-top:0em; } +li p:last-child, li div:last-child { margin-bottom:0.5em; } +li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } +.enumerate1 {list-style-type:decimal;} +.enumerate2 {list-style-type:lower-alpha;} +.enumerate3 {list-style-type:lower-roman;} +.enumerate4 {list-style-type:upper-alpha;} +div.newtheorem { margin-bottom: 2em; margin-top: 2em;} +.obeylines-h,.obeylines-v {white-space: nowrap; } +div.obeylines-v p { margin-top:0; margin-bottom:0; } +.overline{ text-decoration:overline; } +.overline img{ border-top: 1px solid black; } +td.displaylines {text-align:center; white-space:nowrap;} +.centerline {text-align:center;} +.rightline {text-align:right;} +div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } +.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.fbox {display:table} +div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.minipage{width:100%;} +div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} +div.center div {text-align: left;} +div.flushright, div.flushright div.flushright {text-align: right;} +div.flushright div {text-align: left;} +div.flushleft {text-align: left;} +.underline{ text-decoration:underline; } +.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } +.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +.framebox-c {text-align:center;} +.framebox-l {text-align:left;} +.framebox-r {text-align:right;} +span.thank-mark{ vertical-align: super } +span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } +div.footnotes{border-top:solid 1px black; border-bottom:solid 1px black; padding-bottom:1ex; padding-top:0.5ex; margin-right:15%; margin-top:2ex; font-style:italic; font-size:85%;} +div.footnotes p{margin-top:0; margin-bottom:0; text-indent:0;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +.tabbing-right {text-align:right;} +span.TEX {letter-spacing: -0.125em; } +span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} +a span.TEX span.E {text-decoration: none; } +span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} +span.LATEX span.TEX{ position:relative; left: -0.4em; } +div.float, div.figure {margin-left: auto; margin-right: auto;} +div.float img {text-align:center;} +div.figure img {text-align:center;} +.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} +.marginpar p{margin-top:0.4em; margin-bottom:0.4em;} +table.equation {width:100%;} +.equation td{text-align:center; } +td.equation { margin-top:1em; margin-bottom:1em; } +td.equation-label { width:5%; text-align:center; } +td.eqnarray4 { width:5%; white-space: normal; } +td.eqnarray2 { width:5%; } +table.eqnarray-star, table.eqnarray {width:100%;} +div.eqnarray{text-align:center;} +div.array {text-align:center;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.pmatrix img{vertical-align:middle;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.bar-css {text-decoration:overline;} +img.cdots{vertical-align:middle;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +div.array {text-align:center;} +.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} +.index-item, .index-subitem, .index-subsubitem {display:block} +div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} +div.caption span.id{font-weight: bold; white-space: nowrap; } +h1.partHead{text-align: center} +p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} +.subparagraphHead, .likesubparagraphHead { font-weight: bold;} +.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} +.verse{white-space:nowrap; margin-left:2em} +div.maketitle {text-align:center;} +h2.titleHead{text-align:center;} +div.maketitle{ margin-bottom: 2em; } +div.author, div.date {text-align:center;} +div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } +.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } +.abstract p {margin-left:5%; margin-right:5%;} +div.abstract {width:100%;} +.alltt P { margin-bottom : 0em; margin-top : 0em; } +.alltt { margin-bottom : 1em; margin-top : 1em; } +.figure img.graphics {margin-left:10%;} +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +div.longtable{text-align:center;} +.uline{ text-decoration:underline; } +.uuline{ text-decoration:underline; } +span.sout {text-decoration: line-through } +span.xout {text-decoration: line-through } +span.uwave {text-decoration:underline } +P.fancyvrb {white-space: nowrap; margin:0em;} +div#fancyvrb1{ border-top: solid 0.4pt; } +div#fancyvrb1{ border-left: solid 0.4pt; } +div#fancyvrb1{ border-bottom: solid 0.4pt; } +div#fancyvrb1{ border-right: solid 0.4pt; } +div#fancyvrb2{ border-top: solid 0.4pt; } +div#fancyvrb2{ border-left: solid 0.4pt; } +div#fancyvrb2{ border-bottom: solid 0.4pt; } +div#fancyvrb2{ border-right: solid 0.4pt; } +div#fancyvrb3{ border-top: solid 0.4pt; } +div#fancyvrb3{ border-left: solid 0.4pt; } +div#fancyvrb3{ border-bottom: solid 0.4pt; } +div#fancyvrb3{ border-right: solid 0.4pt; } +div#fancyvrb4{ border-top: solid 0.4pt; } +div#fancyvrb4{ border-left: solid 0.4pt; } +div#fancyvrb4{ border-bottom: solid 0.4pt; } +div#fancyvrb4{ border-right: solid 0.4pt; } +/* end css.sty */ + diff --git a/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.html b/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.html new file mode 100644 index 00000000000..8b72f2c6e22 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.html @@ -0,0 +1,6639 @@ + + + + TeX Live 2012 +P[Pleaseinsertintopreamble][Pleaseinsertintopreamble]ru[Pleaseinsertintopreamble]ka TEX Live, CS +verze 1.44 + + + + + + + + + + + + + +

TEX Live 2012
+Příručka TEX Live, CS verze 1.44

+
Karl Berry, editor +
http://tug.org/texlive/

+
8. června 2012
+ +

Překlad 2004–2012 Ján Buša, 2001 Janka Chlebíková, 2003–2012 Petr Sojka a 2003 Petra +Sojková je šířen pod GNU FDL licencí. +

Permission is granted to copy, distribute and/or modify this document under the terms of the +GNU Free Documentation License, Version 1.2 or any later version published by the Free +Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover +Texts. +

Obsah

+
+ 1 Úvodem +
 1.1 TEX Live a kolekce TEXu +
 1.2 Podpora operačních systémů +
 1.3 Základní instalace TEX Live +
 1.4 Úvahy o bezpečnosti +
 1.5 Nápověda +
2 Přehled TEX Live +
 2.1 Kolekce TEXu: TEX Live, proTEXt, MacTEX +
 2.2 Popis kořenových adresářů TEX Live +
 2.3 Přehled předdefinovaných stromů texmf +
 2.4 Rozšíření TEXu +
 2.5 Další za zmínku stojící programy na TEX Live +
 2.6 Fonty v TEX Live +
3 Instalace +
 3.1 Spuštění instalačního programu +
  3.1.1 Unix +
  3.1.2 MacOSX +
  3.1.3 Windows +
  3.1.4 Cygwin +
  3.1.5 Textový instalační program +
  3.1.6 Grafický instalační program pro zkušené +
  3.1.7 Jednoduchý průvodce instalací +
 3.2 Spuštění instalačního programu +
  3.2.1 Nabídka binárních systémů (pouze Unix) +
  3.2.2 Volba obsahu instalace +
  3.2.3 Adresáře +
  3.2.4 Volby +
 3.3 Volby příkazového řádku pro install-tl +
  3.3.1 Volba -repository +
 3.4 Poinstalační činnosti +
  3.4.1 Proměnné prostředí pro Unix + + +
  3.4.2 Proměnné prostředí: globální konfigurace +
  3.4.3 Internetovské aktualizace po instalaci z DVD +
  3.4.4 Systémová konfigurace fontů pro XeTEX a LuaTEX +
  3.4.5 ConTEXt Mark IV +
  3.4.6 Začleňování lokálních a osobních maker +
  3.4.7 Začleňování fontů třetích stran +
 3.5 Testování instalace +
 3.6 Odkazy na doplňkový software s možností stažení z Internetu +
4 Specializované instalace +
 4.1 Instalace sdílené uživateli (nebo cross-machine) +
 4.2 Mobilní USB instalace +
 4.3 ISO (nebo DVD) instalace +
5 tlmgr: správa vaší instalace +
 5.1 GUI režim tlmgr +
 5.2 Vzorové realizace tlmgr z příkazového řádku +
6 Poznámky o Windows +
 6.1 Vlastnosti typické pro Windows +
 6.2 Dodatečný obsažený software pod Windows +
 6.3 User Profile je Home +
 6.4 Registry Windows +
 6.5 Oprávnění Windows +
 6.6 Zvětšení maxima paměti pod Windows a Cygwin +
7 Používateľská príručka ku systému Web2C +
 7.1 Vyhľadávanie ciest knižnicou Kpathsea +
  7.1.1 Zdroje cesty +
  7.1.2 Konfiguračné súbory +
  7.1.3 Expanzia cesty +
  7.1.4 Predvolená expanzia +
  7.1.5 Expanzia zátvoriek +
  7.1.6 Expanzia podadresárov +
  7.1.7 Typy špeciálnych znakov a ich význam: zhrnutie +
 7.2 Databázy názvov súborov +
  7.2.1 Súborová databáza +
  7.2.2 kpsewhich: samostatné prehľadávanie cesty +
  7.2.3 Príklady použitia +
  7.2.4 Ladiace činnosti +
 7.3 Možnosti nastavenia za behu programu +
8 Poděkování +
9 Historie vydání +
 9.1 Minulost +
  9.1.1 2003 +
  9.1.2 2004 +
  9.1.3 2005 +
  9.1.4 2006–2007 +
  9.1.5 2008 +
  9.1.6 2009 +
  9.1.7 2010 +
  9.1.8 2011 +
 9.2 Současnost +
 9.3 Budoucnost +
+

+

1 Úvodem

+ + +

+

1.1 TEX Live a kolekce TEXu

+

Tento dokument popisuje základní vlastnosti distribuce TEX Live 2012, což je instalace TEXu a +příbuzných programů pro GNU/Linux a další unixové systémy, Mac OS X a (32bitové) systémy +Windows. +

TEX Live můžete získat stažením z internetu, nebo na TEX-kolekce DVD. Některé skupiny +uživatelů TEXu distribuují DVD svým členům. Obsah DVD je stručně popsán v oddíle 2.1. TEX +Live a TEX-kolekce spolu jsou výsledkem společného úsilí skupin uživatelů TEXu. Tento dokument +popisuje převážně samotný TEX Live. +

TEX Live obsahuje .exe soubory pro TEX, LaTeX2e, ConTEXt, Metafont, MetaPost, BibTeX a +mnoho dalších programů včetně obsáhlého seznamu maker, fontů a dokumentace spolu s podporou +sazby v mnoha různých světových jazycích. +

Krátký seznam hlavních změn v této verzi TEX Live najdete na konci tohoto dokumentu, +v oddílu 9 na straně 74. +

+

1.2 Podpora operačních systémů

+

TEX Live obsahuje binárky pro mnohé unixové platformy, včetně GNU/Linux, Mac OS X a Cygwin. +Obsažené zdrojové texty mohou být zkompilovány pro platformy, pro které neposkytujeme +binárky. +

Co se týče Windows: podporovány jsou Windows XP a pozdější verze. Windows 2000 ještě +bude pravděpodobně z největší části fungovat. Pro Windows nejsou k dispozici 64bitové .exe +soubory, ale 32bitové binárky by měly běžet na 64bitových systémech. +

Alternativní řešení pro Windows a Mac OS X najdete v oddíle 2.1. +

+

1.3 Základní instalace TEX Live

+

TEX Live můžete nainstalovat buď z DVD nebo z internetu (http://tug.org/texlive/acquire.html). +Samotný síťový instalační program je malý a vše požadované stáhne z internetu. +

Instalační program na DVD vám umožní instalaci na lokálním disku. TEX Live nemůžete +spustit přímo z DVD (nebo z jeho .iso obrazu), avšak můžete připravit spustitelnou instalaci, +například, na klíči USB (viz oddíl 4.2). Instalace je popsána v následujících sekcích (na +stránce 12), zde jen souhrn: +

    +
  • Instalační dávka se jmenuje install-tl . Může pracovat v „průvodcovském režimu“ + po zadání volby -gui=wizard (předvolba pro Windows), v textovém režimu zadaném + volbou -gui=text (předvoleném pro všechny ostatní systémy), nebo v GUI režimu pro + pokročilé zadaném volbou -gui=perltk. +
  • +
  • Jednou součástí instalace je program ‘TEX Live Manager’, nazvaný tlmgr. Podobně jako + instalační program může být použit v režimu GUI nebo v textovém režimu. Můžete + ho použít k nainstalování nebo odinstalování balíků a na různé konfigurační činnosti.
+

+

1.4 Úvahy o bezpečnosti

+

Podle našeho vědomí, hlavní programy TEXu samotné jsou (a vždycky byly) extrémně robustní. +Nicméně, programy dodané v rámci TEX Live nemusí dosahovat stejnou úroveň, navzdory +nejlepším úsilím všech. Jako vždy, při použití programů pro nedůvěryhodný vstup musíte být +opatrný; pro maximální bezpečnost použijte nový podadresář. +

Tato potřeba opatrnosti je zvláště naléhavá pro Windows, protože Windows obvykle najdou +programy v aktuálním adresáři před jinými, bez ohledu na cestu vyhledávaní. To otevírá +široké varianty možných útoků. Zavřeli jsme mnoho děr, ale nepochybně některé zůstaly, +obzvláště pro programy pocházející odjinud. Proto doporučujeme zkontrolovat podezřelé +programy v aktuálním adresáři, zvláště spustitelné (binárky nebo skripty). Běžně by +neměly být přítomny a rozhodně nemůžou být normálně vytvořeny při zpracování + + +dokumentů. +

Nakonec, TEX (a jeho doprovodné programy) jsou schopny při běhu zapisovat do souborů. Tato +schopnost může rovněž být zneužita mnohými způsoby. Znova, zpracování neznámých dokumentů +v novém podadresáři je nejbezpečnější tip. +

+

1.5 Nápověda

+

TEXovská komunita je aktivní, vstřícná a většina seriózních otázek je obvykle zodpovězena. +Podpora je neformální, je prováděna příležitostnými čtenáři a dobrovolníky, a proto je důležité, +abyste odpověď na svůj dotaz hledali nejdříve sami, než ho vznesete na fóru. Pokud toužíte po +garantované komerční podpoře, můžete na TEX Live zapomenout a zakoupit komerční distribuci; +viz seznam prodejců na http://tug.org/interest.html#vendors. +

Níže je uveden seznam informačních zdrojů, přibližně v pořadí, ve kterém ho doporučujeme +k použití: +

+první kroky
Pokud jste TEXovský nováček, na stránce http://tug.org/begin.html + najdete krátký úvod do systému. +
+TEX FAQ
TEX FAQ je obrovská studnice znalostí obsahující všechny druhy otázek, + od těch základních až po ty nejobskurnější. Dokument najdete na TEX Live + v adresáři texmf-dist/doc/generic/FAQ-en/html/index.html nebo na internetu na + http://www.tex.ac.uk/faq. Prosíme, začněte své hledání odpovědi zde. +
+TEX Catalogue
Pokud hledáte konkrétní balík, font, program + ap., TEX Catalogue je místo, kde začít. Je to obsáhlá sbírka TEXových položek. Viz + http://ftp.cstug.cz/pub/CTAN/help/Catalogue/. +
+TEXové odkazy na Webu
Na http://tug.org/interest.html najdete mnoho + relevantních odkazů na různé příručky, knihy, manuály a články o všech aspektech + systému TEX. +
+archívy diskusních skupin
+

Dvě základní fóra pro hledání řešení problémů jsou newsová skupina + news:comp.text.tex a emailová diskusní skupina texhax@tug.org. V archívech + těchto zdrojů najdete tisíce předchozích dotazů a odpovědí čekajících na vaše + hledání. Nahlédněte na http://groups.google.com/groups?group=comp.text.tex, + respektive na http://tug.org/mail-archives/texhax. Dotazem do obecného + vyhledávacího stroje jako http://google.com/ také nic nepokazíte a pro specifika + češtiny a slovenštiny najdete další zdroje odkazované na http://www.cstug.cz/. +

+kladení dotazů
Pokud nemůžete najít odpověď na svou otázku, můžete ji položit + na news:comp.text.tex přes Google nebo newsového klienta nebo emailem + na texhax@tug.org. Ale dříve, než tak učiníte, prosím, přečtěte si toto + doporučení, abyste maximalizovali vyhlídky na získání užitečné odpovědi: + http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion. Za zmínku stojí + také stránka LATEXovské komunity na http://www.latex-community.org/ a + její fórum http://www.latex-community.org/forum/ a TEX StackExchange na + http://tex.stackexchange.com/. +
+podpora TEX Live
Pokud chcete poslat chybové hlášení, připomínku nebo poznámku + k distribuci TEX Live, její instalaci nebo dokumentaci, diskusní skupina k tomu určená + je tex-live@tug.org. Pokud však je vaše otázka specifická pro program na TEX Live + umístěný, napište prosím přímo autorovi nebo do diskusní skupiny určené pro tento + program. Spuštění programu s volbou --help nezřídka poskytuje adresu pro chybové + hlášení.
+ + +

Druhou stranou mince je odpovídání na dotazy těch, kdo kladou otázky. news:comp.text.tex i list +texhax jsou otevřeny pro kohokoliv. Přihlaste se, naslouchejte a začněte odpovídat tam, kde +můžete. +

+

2 Přehled TEX Live

+

Tento oddíl popisuje obsah TEX Live a TEX-kolekce, jejíž je částí. +

+

2.1 Kolekce TEXu: TEX Live, proTEXt, MacTEX

+

DVD TEX-kolekce zahrnuje následující: +

+

+TEX Live
Úplný systém TEX, k nainstalování na disk. Jeho domovská stránka je + http://tug.org/texlive/. +
+MacTEX
pro Mac OS X, přidává nativní Mac OS X instalační program a jiné aplikace Mac + k TEX Live. Jeho domovská stránka je http://tug.org/mactex/. +
+proTEXt
Rozšíření systému MiKTEX pro Windows. proTEXt přidává k MiKTEXu + nové doplňkové nástroje a zjednodušuje instalaci. Je plně nezávislý na TEX + Live a má své vlastní příkazy. Domovská stránka projektu proTEXt je na + http://tug.org/protext. +
+CTAN
Výpis obrazovky archívu CTAN (http://www.ctan.org). +
+texmf-extra
Adresář s rozmanitými doplňkovými balíky. +
+

CTAN, protext a texmf-extra nemusí mít stejné podmínky pro kopírování jako TEX Live, +proto buďte pozorní při šíření nebo modifikaci. +

+

2.2 Popis kořenových adresářů TEX Live

+

Tady uvádíme stručný seznam a popis kořenových adresářů instalace TEX Live. +

+

+ bin
+

Binárky systému TEX, s podadresáři dle platforem. +

+ readme-*.dir
+

Stručný přehled a užitečné odkazy na TEX Live, v různých jazycích, ve formátu HTML + a textovém. +

+ source
+

Zdrojové kódy všech programů, včetně základní distribuce TEXu založené na Web2C. +

+ texmf
+

Viz TEXMFMAIN níže. + + +

+ texmf-dist
+

Viz TEXMFDIST níže. +

+ tlpkg
+

Skripty, programy a údaje pro správu instalace a přídavnou podporu pro Windows.

+

V kořenovém adresáři distribuce jsou navíc instalační dávky a soubory README (v různých +jazycích). +

Co se týče dokumentace, užitečné mohou být obsáhlé odkazy v kořenovém souboru doc.html. +Dokumentace programů (manuály, man-stránky, info-soubory) jsou v texmf/doc. Dokumentace +TEXových balíků a formátů je v texmf-dist/doc. K vyhledání veškeré dokumentace na +libovolném místě můžete použít programy texdoc. +

Samotná tato příručka TEX Live je k dispozici v několika jazycích v adresáři texmf-doc: +

+

+

2.3 Přehled předdefinovaných stromů texmf

+

Tento oddíl uvádí seznam předdefinovaných proměnných určujících stromy texmf, používaných +systémem, a jejich zamýšlený účel a standardní uspořádání systému TEX Live. Povel tlmgr conf +ukáže hodnoty těchto proměnných, tedy můžete jednoduše zjistit, jak tyto odpovídají jednotlivým +adresářům ve vaší instalaci. +

Všechny stromy, včetně osobních, musí dodržovat strukturu adresářů TEX Directory Structure +(TDS, http://tug.org/tds), s jejími nesčetnými podadresáři, jinak soubory nebudou k nalezení. +Podrobněji je to popsané v oddíle 3.4.6 (na straně 40). +

+

+ TEXMFMAIN
+

Strom obsahující životně důležité části systému, jako konfigurační soubory, pomocné + skripty a dokumentaci programu. +

+ TEXMFDIST
+

Strom obsahující hlavní sadu balíků maker, fontů, atd. z původní distribuce. +

+ TEXMFLOCAL
+

Strom, který mohou použít administrátoři na instalaci doplňkových nebo upravených + maker, fontů, atd., pro celý systém. + + +

+ TEXMFHOME
+

Strom, který mohou použít uživatelé na svoje osobní doplňková nebo upravená makra, + fonty, atd. Rozšíření této proměnné se dynamicky nastaví pro každého uživatele na + jeho vlastní osobní adresář. +

+ TEXMFCONFIG
+

Strom (soukromý) používaný nástroji texconfig, updmap a fmtutil na uložení + modifikovaných konfiguračních údajů. +

+ TEXMFSYSCONFIG
+

Strom (site-wide) používaný nástroji texconfig-sys, updmap-sys a fmtutil-sys na + uložení modifikovaných konfiguračních údajů. +

+ TEXMFVAR
+

Strom (soukromý) používaný programy texconfig, updmap a fmtutil na (cache) + uložení runtime údajů jako jsou soubory formátů a generované map-soubory. +

+ TEXMFSYSVAR
+

Strom (site-wide) používaný programy texconfig-sys, updmap-sys, fmtutil-sys a + také tlmgr, na (cache) uložení runtime údajů jako jsou soubory formátů a generované + map-soubory. +

+ TEXMFCACHE
+

Strom(y) používaný ConTEXtextem MkIV na uložení (cache) runtime údajů.

+

Standardní struktura je: +

+system-wide root
může obsáhnout vícenásobné vydání TEX Live: +
+ 2011
+

Předchozí vydání. +

+ 2012
+

Nynější vydání. +

+ bin
+

  +

+ i386-linux
+

binárky systému GNU/Linux +

+ ...
+

+

+ universal-darwin
+

binárky systému Mac OS X +

+ win32
+

binárky systému Windows

+
+ texmf       
+

Toto je TEXMFMAIN. + + +

+ texmf-dist  
+

TEXMFDIST +

+ texmf-var   
+

TEXMFSYSVAR +

+ texmf-config
+

TEXMFSYSCONFIG

+
+ texmf-local
+

TEXMFLOCAL, zamýšlený být zachován od vydání k vydání.

+
+domovský adresář uživatele
($HOME nebo %USERPROFILE%) +
+ .texlive2011
+

Soukromě generované a konfigurační údaje předchozího vydání. +

+ .texlive2012
+

Soukromě generované a konfigurační údaje aktuálního vydání. +

+ texmf-var   
+

TEXMFVAR, TEXMFCACHE +

+ texmf-config
+

TEXMFCONFIG

+
+ texmf
+

TEXMFHOME Osobní makra atd.

+
+

+

2.4 Rozšíření TEXu

+

Samotný Knuthův původní TEX je zmrazený, kromě ojedinělých oprav chyb. Stále je v TEX +Live přítomen jako program tex a tak to zůstane v dohledné budoucnosti. TEX Live obsahuje +několik rozšířených verzí TEXu: +

+

+e-TEX
přidává množinu nových příkazů (nazývaných TEXové primitivy). Nové příkazy + se například týkají makroexpanze, načítání znaků, tříd značek (marks), rozšířených + ladicích možností a rozšíření TEX--XE T pro + obousměrnou sazbu. Implicitně je e-TEX 100% kompatibilní se standardním TEXem. + Viz texmf-dist/doc/etex/base/etex_man.pdf. +
+pdfTEX
vybudován na rozšířeních e-TEXu přidává podporu zápisu ve formátu PDF + stejně jako v DVI a četná rozšíření netýkající se výstupu. Toto je program + používaný pro většinu formátů, například, etex, latex, pdflatex. Jeho stránka je + http://www.pdftex.org/. Viz návod texmf-dist/doc/pdftex/manual/pdftex-a.pdf a + texmf/doc/pdftex/manual/samplepdf/samplepdf.tex pro vzorové použití některých + jeho vlastností. +
+LuaTEX
je označován za nástupce pdfTEX/u, se kterým je z větší části (ale ne úplně) + zpětně kompatibilní. Měl by se také stát funkční podmnožinou systému Aleph, + + + viz dále, ačkoli technická kompatibilita není zamýšlena. Zabudovaný interpret Lua + (http://www.lua.org/) umožňuje elegantní řešení mnoha ožehavých TEXovských + problémů. Volaný povelem texlua, funguje jako samostatný interpret Lua, a jako takový + je již použit v rámci TEX Live. Jeho stránka je http://www.luatex.org/ a příručka + je texmf-dist/doc/luatex/luatexref-t.pdf. +
+XeTEX
přidává podporu vstupního kódování Unicode a OpenType- a systémových fontů, + implementovaných použitím zejména knihoven třetích stran. Viz + http://tug.org/xetex. +
+Omega (Omega)
je založena na Unicode. Umožňuje sázet v téměř všech světových + jazycích zároveň. Dociluje toho tzv. překladovými procesy (Omega Translation + Processes, OTP) pro realizaci složitých transformací na jakémkoliv vstupu. Omega už + není součástí TEX Live jako samostatný program; poskytnutý je jenom Aleph: +
+Aleph
kombinuje rozšíření Omega a e-TEX. Viz texmf-dist/doc/aleph/base.
+

+

2.5 Další za zmínku stojící programy na TEX Live

+

Na TEX Live najdete několik často používaných programů: +

+

+ bibtex, bibtex8
+

podpora práce se seznamem literatury. +

+ makeindex, xindy
+

vytváření rejstříku. Pro češtinu a slovenštinu však potřebujete verzi programu + s názvem csindex (není zatím součástí distribuce, je potřeba instalovat zvlášť). +

+ dvips
+

pro konverzi DVI do PostScript. +

+ xdvi
+

prohlížeč DVI pro systém X Window. +

+ dvilj
+

DVI ovladač tiskáren HP LaserJet. +

+ dviconcat, dviselect
+

pro kopii a vkládání stránek do/z DVI souborů. +

+ dvipdfmx
+

konvertor DVI do PDF, alternativní přístup vedle pdfTEXu zmíněného výše. +

+ psselect, psnup,
+

programy pro práci s PostScriptem. +

+ pdfjam, pdfjoin,
+

pomůcky pro PDF. + + +

+ texexec, texmfstart
+

wrapper pro ConTEXt a práci s PDF. +

+ tex4ht
+

konvertor TEXu do HTML. +

+

+

2.6 Fonty v TEX Live

+

TEX Live přináší množství vysoce kvalitních vektorových fontů. Viz http://tug.org/fonts a +texmf-dist/doc/fonts/free-math-font-survey. +

+

3 Instalace

+

+

3.1 Spuštění instalačního programu

+

Pro začátek si obstarejte TEX Collection DVD nebo si stáhněte síťový instalační program TEX +Live, a najděte instalační skript: install-tl pro Unix, install-tl.bat pro Windows. Viz +http://tug.org/texlive/acquire.html pro více informací a jiné způsoby získání +software. +

+

+Síťový instalátor:
stáhněte z CTANu, z adresáře systems/texlive/tlnet; + url http://mirror.ctan.org/systems/texlive/tlnet vás automaticky přesměruje na + blízký, aktuální mirror. Můžete získat install-tl.zip, který může být použit pod + Unixem a Windows nebo jenom pro Unix podstatně menší install-unx.tar.gz. Po + rozbalení se install-tl a install-tl.bat objeví v podadresáři install-tl. +
+DVD TEX kolekce:
vejděte do + podadresáře DVD texlive. Pod Windows se instalátor normálně spustí automaticky + po vložení DVD. DVD můžete získat, když se stanete členem skupiny uživatelů TEXu + (vřele doporučujemei CS TUG, http://tug.org/usergroups.html), nebo si ho zvlášť + zakoupíte (http://tug.org/store), anebo si vypálíte svoje vlastní z ISO obrazu. Ve + většině systémů můžete ISO namontovat přímo. Jestliže máte po instalaci z DVD nebo + ISO zájem o pokračující aktualizace z Internetu, nahlédněte, prosím, do oddílu 3.4.3.
+

Nezávisle na zdroji se spouští tentýž instalátor. Nejvíce viditelný rozdíl mezi dvěma možnostmi +je ten, že po skončení instalace z Internetu získáte balíky, které jsou v současné době k dispozici. +To je v protikladu k DVD a ISO obrazům, které se mezi významnějšími vydáními +neaktualizují. +

Následující oddíly vysvětlují spuštění instalátoru podrobněji. +

+

3.1.1 Unix
+

Dále > označuje výzvu (prompt shellu); vstup uživatele je zvýrazněn. Skript install-tl je +Perlovský skript. Nejjednodušší způsob jeho spuštění v unixovém systému je následující: +

+ + +

+> cd /path/to/installer +
> perl install-tl +
+
(Nebo můžete vyvolat perl /path/to/installer/install-tl, nebo ./install-tl když je +spustitelný, atd.; nechceme opakovat všechny tyto variace.) Možná zvětšíte okno terminálu tak, aby +ukazovalo celou obrazovku textového instalátora (obr. 1). +

K instalaci v pokročilém režimu GUI (obr. 2); budete potřebovat modul Perl/TK zkompilovaný +s podporou XFT, která je obvyklá v případě systému GNU/Linux, ale ne nevyhnutelně v jiných +systémech. Pak můžete spustit:

+

+> perl install-tl -gui +
+
+

Úplný seznam různých voleb získáte povelem:

+

+> perl install-tl -help +
+
+

Varování o oprávněních Unixu: Vaše nastavení umask v čase instalace bude respektováno +instalačním programem TEX Live. Proto, když chcete, aby byla vaše instalace použitelná i +jinými uživateli než vámi, ujistěte se, že jsou vaše nastavení dostatečně tolerantní, +například, umask 002. Další informace o nastavení umask, hledejte v dokumentaci k vašemu +systému. +

Zvláštní vysvětlivky pro Cygwin: Na rozdíl od jiných unixových systémů, Cygwin +implicitně neobsahuje všechny nezbytné programy, které instalátor TEX Live potřebuje. Pro +podrobnosti viz sekci 3.1.4. +

+

3.1.2 MacOSX
+

Jak již bylo zmíněno v sekci 2.1, pro Mac OS X je připravena samostatná distribuce, nazvaná +MacTEX (http://tug.org/mactex). Doporučujeme použít původní instalační program +MacTEX u namísto instalátoru TEX Live pod Mac OS X, protože původní (nativní) +instalátor provede několik nastavení specifických pro Mac, zejména umožňuje snadné +přepínání mezi různými distribucemi TEXu pro Mac OS X (MacTEX, Fink, MacPorts, +…). +

MacTEX je silně založen na TEX Live, a hlavní TEXovská stromová struktura je přesně +stejná. Přidává několik dalších adresářů s dokumentací a aplikacemi specifickými pro +Mac. +

+

3.1.3 Windows
+

Jestliže používáte síťový instalátor, nebo instalační program DVD se nespustí automaticky, +klikněte dvakrát na soubor install-tl.bat. Pro více voleb pro úpravy, např. výběr určité kolekce +balíků, spusťte namísto něho install-tl-advanced.bat. +

Můžete také spustit instalační program z příkazového řádku. Dále > označuje prompt shellu; +vstup uživatele je polotučný. Pokud jste v adresáři instalačního programu, jenom spusťte: +

+

+> install-tl + + +
+
+

Můžete to také vyvolat zadáním absolutní cesty, jako například:

+

+> D:\texlive\install-tl +
+
pro TEX-kolekce DVD, za předpokladu, že D: je optický disk. Obr. 3 zobrazuje průvodcovský +instalátor, který je pro Windows implicitní. +

Pro instalaci v textovém režimu použijte:

+

+> install-tl -no-gui +
+
+

Pro úplný seznam různých voleb zadejte:

+

+> install-tl -help +
+
+


+ + + + + +
  Installing TeX Live 2012 from: ...
  Platform: i386-linux => ’Intel x86 with GNU/Linux’
  Distribution: inst (compressed) +
  ...
   Detected platform: Intel x86 with GNU/Linux
  
   <B> platforms: 1 out of 19
  
   <S> Installation scheme (scheme-full) +
       84 collections out of 85, disk space required: 2600 MB
  
   Customizing installation scheme: +
     <C> standard collections
     <L> language collections
  
   <D> directories:
     TEXDIR (the main TeX directory): +
       /usr/local/texlive/2012
       ...
  
   <O> options:
     [ ] use letter size instead of A4 by default
     ...
   +
   <V> set up for portable installation
  
  
  Actions:
  
  
   <I> start installation to hard disk
   <H> help
   <Q> quit
+
Obrázek 1: Hlavní obrazovka textového instalačního programu (GNU/Linux)
+ + +


+


+ + + + + + +

pict +

Obrázek 2: Obrazovka pokročilého GUI instalátora (GNU/Linux)
+ + +


+


+ + + + + + +

pict +

Obrázek 3: Průvodcovská obrazovka instalátora (Windows)
+ + +


+

+

3.1.4 Cygwin
+

Instalátor TEX Live odporuje pouze Cygwin 1.7. Před začátkem instalace použijte program +Cygwinu setup.exe k instalaci programů perl a wget pokud jste tak ještě neudělali. Doporučené +jsou následující doplňkové balíky: +

    +
  • fontconfig [potřebný pro XeTEX] +
  • +
  • ghostscript [potřebný pro různé pomůcky] +
  • +
  • libXaw7 [potřebný pro xdvi] +
  • +
  • ncurses [umožní příkaz clear používaný instalátorem]
+

+

3.1.5 Textový instalační program
+

Obrázek 1 ukazuje základní obrazovku textového režimu pod Unixem. Pro Unix je textový +instalační program nastaven implicitně. +

Je to instalátor jenom s příkazovým řádkem; vůbec nemá kurzorovou podporu. Například, +nemůžete se pohybovat v zatrhávacích rámečcích nebo vstupních polích. Jenom napíšete něco +(s rozlišováním velikosti písma) na příkazovém řádku a stlačíte klávesu Enter, poté se celá +obrazovka přepíše s přizpůsobeným obsahem. +

Rozhraní textového instalátoru je tak primitivní z prostého důvodu: je navržené tak, aby se +dalo spustit na tolika platformách jak je to jen možné, dokonce i v Perlu. +

+

3.1.6 Grafický instalační program pro zkušené
+

Obrázek 2 ukazuje grafický instalátor pro znalce pod GNU/Linux. Kromě toho, že využívá tlačítka +a nabídky, se tento instalátor velmi neliší od textového. +

Tento režim může být vyvolán explicitně pomocí

+

+> install-tl -gui=perltk +
+
+

+

3.1.7 Jednoduchý průvodce instalací
+

Pod Windows je implicitně nastaveno spuštění nejjednoduššího instalačního způsobu, který +můžeme doporučit, nazvaného „průvodce“ instalací (obr. 3). Nainstaluje všechno a nezadává skoro +žádné otázky. Pokud si chcete vše nastavení upravit, musíte spustit některý z dalších +instalátorů. +

Tento režim může být vyvolán explicitně povelem

+

+> install-tl -gui=wizard +
+
+ + +

+

3.2 Spuštění instalačního programu

+

Instalátor je zamýšlený jako co nejvíce samovysvětlující. Nicméně následuje několik poznámek o +jednotlivých volbách a dílčích nabídkách: +

+

3.2.1 Nabídka binárních systémů (pouze Unix)
+


+ + + + + +
  Available platforms:
  ===============================================================================
   +
     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
+
Obrázek 4: Nabídka binárek
+ + +


+

Obrázek 4 ukazuje nabídku binárek textového režimu. Standardně budou nainstalovány jenom +binárky vaší aktuální platformy. Z této nabídky si rovněž můžete vybrat instalaci binárek pro jiné +platformy. Toto může být užitečné, pokud sdílíte TEXovský strom v síti heterogenních strojů, +nebo na systému s dvojitým zaváděcím procesem. +

3.2.2 Volba obsahu instalace
+


+ + + + + +
  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
+
Obrázek 5: Nabídka schémat
+ + +


+

Obrázek 5 ukazuje nabídku schémat TEX Live; tady vybíráte „schéma“, což je souhrn kolekcí +balíků. Předvolené schéma full nainstaluje vše, co je k dispozici. To doporučujeme, avšak můžete +také zvolit schéma basic pro malý systém, minimal pro účely testování, a schéma medium nebo +teTeX pro získání něčeho mezi tím. K dispozici jsou také různá specializovaná schémata a +schémata specifická pro některé země. +


+ + + + + + +

pict +

Obrázek 6: Nabídka kolekcí
+ + +


+

Svůj výběr schématu můžete upřesnit pomocí nabídek ‘standard collections’a ‘language +collections’(obrázek 6, ukázané pro změnu v režimu GUI). +

Kolekce jsou o jednu úroveň podrobnější než schémata — v podstatě, schéma je tvořeno +několika kolekcemi, kolekci tvoří jeden nebo více balíků, a balík (nejnižší úroveň seskupování +v TEX Live) obsahuje vlastní soubory TEXovských maker, soubory fontů, atd. +

Pokud chcete získat větší kontrolu než jakou poskytuje nabídka kolekcí, po instalaci můžete +použít program TEX Live Manager (tlmgr) (viz sekci 5); jeho použitím můžete řídit instalaci na +úrovni balíků. +

3.2.3 Adresáře
+

Standardní uspořádání je popsáno v sekci 2.3, na straně 8. +

Standardní umístění adresáře TEXDIR je /usr/local/texlive/2012 pro Unix a +%SystemDrive%\texlive\2012 pod Windows. +

Hlavní důvod pro změnu této předvolby je nedostatek práv na zápis pro standardní umístění. +Nemusíte být zrovna rootem nebo administrátorem, když instalujete TEX Live, ale potřebujete +oprávnění na zápis do cílového adresáře. +

Rozumnou alternativou je adresář uvnitř vašeho domovského adresáře, zvlášť když +chcete být výhradním uživatelem. Na naznačení tohoto použijte ‘~’, jako například +‘~/texlive/2012’. +

Doporučujeme do názvu začlenit rok, co umožní zachování různých vydání TEX Live vedle +sebe. (Můžete chtít vytvořit název nezávislý na verzi, například /usr/local/texlive-cur +pomocí symbolického odkazu, který může být později přepsán po přezkoušení nového +vydání.) +

Změna TEXDIR v instalačním programu vyvolá také změny TEXMFLOCAL, TEXMFSYSVAR a +TEXMFSYSCONFIG. +

TEXMFHOME je doporučené umístění osobních souborů maker nebo balíků. Předvolená hodnota +je ~/texmf. Na rozdíl od TEXDIR, je nyní ~ uchována v nově vytvořených konfiguračních +souborech, protože to užitečně odkazuje na domovský adresář kteréhokoliv běžícího TEXu. +Expanduje se na $HOME pod Unixem a %USERPROFILE% pod Windows. Zvláštní přebytečná +poznámka: TEXMFHOME, jako všechny stromy, musí být uspořádaný v souladu s TDS, jinak nemusí +být soubory k nalezení. +

TEXMFVAR je umístění pro uložení většiny generovaných dočasných dat specifických pro +každého uživatele. TEXMFCACHE se používá na tento účel ConTEXtem MkIV (viz oddíl 3.4.5, na +straně 39). +

+

3.2.4 Volby
+


+ + + + + +
  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:
+
Obrázek 7: Nabídka voleb (Unix)
+ + +


+

Obrázek 7 ukazuje nabídku voleb textového režimu. Další informace o každé volbě: +

+use letter size instead of A4 by default:
Výběr standardní velikosti papíru. Jednotlivé + dokumenty mohou a měly by deklarovat zvláštní rozměr papíru, pokud je to žádoucí. +
+execution of restricted list of programs:
Od TEX Live 2010 je implicitně povoleno + vykonávání několika externích programů. Velmi neúplný seznam povolených programů + je uveden v souboru texmf.cnf. Pro další podrobnosti viz novinky 2010 (oddíl 9.1.7). +
+create format files:
Přestože si vytvoření nepotřebných formátů vyžaduje čas a diskový + prostor pro uložení, nicméně doporučujeme nechat tuto volbu vyznačenou: když ji + nevyznačíte, budou formátové soubory vytvořené v osobních stromech TEXMFVAR + uživatelů, když budou zapotřebí. Na tomto místě nebudou automaticky aktualizované, + když se budou například obnovovat binárky nebo vzory dělení v instalaci a tudíž + můžete skončit s nekompatibilními soubory formátů. +
+install font/macro  tree:
Tyto + volby vám umožní přeskočit stahování/instalci dokumentace a zdrojových souborů ve + většine balíků. Nedoporučuje se. +
+create symlinks in standard directories
(pouze Unix): Tato volba obchází potřebu + změny proměnných prostředí. Bez této volby je obvykle potřebné přidat adresáře + TEX Live do proměnných PATH, MANPATH a INFOPATH. Budete muset přidělit práva + na zápis cílovým adresářům. Důrazně doporučujeme nepřepsat TEXovský systém, + který přišel s vaším systémem s touto volbou. Toto je v první řadě určeno pro + zpřístupnění systému TEX pomocí adresářů, které již uživatelé znají, jako například + /usr/local/bin, které neobsahují žádné TEXovské soubory.
+

Když jsou všechna nastavení podle vašeho vkusu, můžete napsat ‘I’a spustit instalační +proces. Po dokončení přeskočte na sekci 3.4, kde se dozvíte, co se případně má udělat +závěrem. +

3.3 Volby příkazového řádku pro install-tl

+

K zobrazení voleb příkazového řádku napište

+

+> install-tl -help +
+
K uvedení názvu volby mohou být použity - nebo také --. Následují nejběžnější +volby: +

+

+ -gui
+

Podle možností použijte GUI instalátor. Toto si vyžaduje modul Perl/Tk + (http://tug.org/texlive/distro.html#perltk); skompilovaný s podporou XFT; + pokud Perl/Tk není k dispozici, pokračuje instalace v textovém režimu. +

+ -no-gui
+

Vynutí si použití instalátoru v textovém režimu, dokonce i pod Windows. + + +

+ -lang LL
+

Specifikuje jazyk instalačního rozhraní jako jeho standardní dvoupísmenový kód LL. + V současné době jsou podporovány jazyky: cs (čeština), de (němčina), en (angličtina, + předvolený) fr (francouzština), it (italština), ja (japonština), nl (nizozemština), + pl (polština), ru (ruština), sk (slovenština), sl (slovinština), sr (srbština), vi + (vietnamština), zh-cn (zjednodušená čínština), zh-tw (tradiční čínština). Instalační + program se sám pokusí určit vhodný jazyk, ale když selže nebo když není správný + jazyk k dispozici, pak použije angličtinu jako nouzové řešení. +

+

+ -in-place
+

Pokud již máte rsync-, svn-, nebo jinou kopii TEX + Live (viz http://tug.org/texlive/acquire-mirror.html), pak tato volba použije to, + co již máte stažené a udělá pouze nezbytné post-instalační úkony. Upozorňujeme, že + soubor tlpkg/texlive.tlpdb může být přepsán; jeho uložení je na vaší odpovědnosti. + Odstranění balíků by mělo být také ruční. Toto použijte jen když víte co děláte. Tato + volba se nedá přepnout pomocí rozhraní instalátoru. +

+ -portable
+

Instalace pro přenosné použití, například na klíč USB. Dá se zvolit rovněž v textovém + instalátoru pomocí příkazu V a z instalátoru GUI. Viz oddíl 4.2. +

+ -profile soubor
+

Načtěte instalační profilový soubor a proveďte instalaci bez interakce s uživatelem. + Instalační program vždycky uloží soubor texlive.profile do podadresáře tlpkg vaší + instalace. Tento soubor může být zadán jako argument například pro znovuvytvoření + identické instalace na jiném systému. Nebo můžete použít uživatelský profil, který + nejjednodušeji vytvoříte změnou hodnot vygenerovaného souboru, nebo odstartováním + s prázdným souborem, který převezme všechny předvolby. +

+ -repository soubor-nebo-adresář
+

Určuje repositář balíků, z kterého se má instalovat; viz následující oddíl.

+

+

3.3.1 Volba -repository
+

Implicitní repositář balíků je zrcadlo CTAN zvolené automaticky použitím http://mirror.ctan.org. +

Pokud to chcete přepsat, může být hodnotou umístění adresa url s ftp:, http: nebo file:/ +na začátku, nebo jednoduchá cesta k adresáři. (Při zadání umístění http: nebo ftp: jsou +koncové znaky ‘/’a/nebo koncová složka ‘/tlpkg’ignorovány.) +

Ku příkladu můžete zvolit určité zrcadlo CTAN něčím jako: +http://ctan.example.org/tex-archive/systems/texlive/tlnet/, s nahrazením +ctan.example.org/tex-archive skutečným hostitelským jménem (hostname) a jeho konkrétní +kořenovou cestou k CTAN (jako třeba ftp.cstug.cz/pub/CTAN). Seznam zrcadel CTAN je +udržován na http://ctan.org/mirrors. +

Pokud je zadaný argument lokální (buď cesta nebo file:/ url), jsou použity komprimované +soubory v podadresáři archive cesty repositáře (i kdyby byly rovněž k dispozici nekomprimované +soubory). +

+

3.4 Poinstalační činnosti

+

Po instalaci se mohou hodit některé další úpravy. + + +

+

3.4.1 Proměnné prostředí pro Unix
+

Pokud se rozhodnete vytvořit symbolické odkazy v standardních adresářích (popsaných +v oddíle 3.2.4), pak není nutná editace proměnných prostředí. Jinak v systémech Unix musí být +adresář binárek pro vaší platformu přidán k prohledávaným cestám. (Ve Windows se o to postará +instalátor.) +

Každá podporovaná platforma má svůj vlastní podadresář pod TEXDIR/bin. Seznam +podadresářů a odpovídajících platforem je na obrázku 4. +

Nepovinně můžete rovněž přidat dokumentační manuálové stránky (man pages) a adresáře +Info k jejich příslušejícím vyhledávacím cestám, když chcete, aby je našly systémové +nástroje. Dokumentační stránky můžou být automaticky nalezeny po přidání do proměnné +PATH. +

Například pro Bourne-kompatibilní shell, jako je bash a používaný Intel x86 GNU/Linux se +standardním nastavením adresářů, může být vhodné editovat soubor $HOME/.profile. +

+

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

Pro csh nebo tcsh je editovaný soubor typicky $HOME/.cshrc a řádky k přidání můžou vypadat +jako: +

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

Pokud již máte nastavení někde ve vašich „dot“ souborech, adresáře TEX Live by měli, +přirozeně, jednoduše přiměřeně s nimi splynout. +

+

3.4.2 Proměnné prostředí: globální konfigurace
+

Volba, zda učinit tyto změny globálně, anebo pro uživatele právě přidaného do systému, je na vás; +existuje příliš mnoho variací mezi systémy, kde a jak se tato nastavení provádějí. Naše dvě rady +jsou: 1) můžete chtít vyhledat soubor /etc/manpath.config a pokud existuje, přidejte řádky +jako +

+

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

A 2) vyhledejte soubor /etc/environment, který může definovat vyhledávací cestu a další +standardní proměnné prostředí. +

V každém (Unixovém) adresáři binárek vytváříme také symbolický odkaz na adresář +texmf/doc/man s názvem man. Některé programy man, jako například standardní Mac OS X man, +ho automaticky najdou, co odstraňuje potřebu jakéhokoliv nastavování dokumentačních +stránek. +

+

3.4.3 Internetovské aktualizace po instalaci z DVD
+

Pokud jste instalovali TEX Live z DVD a později si přejete získat aktualizace z Internetu, budete +potřebovat spuštění tohoto povelu—poté co jste aktualizovali vaši vyhledávací cestu (jako to bylo +popsané v předcházejícím oddíle): +

+

+> tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet + + +
+
+

Toto řekne programu tlmgr aby pro následující aktualizace použil nejbližší zrcadlo CTANu. +Pokud se vyskytnou problémy s automatickým výběrem zrcadla, můžete deklarovat konkrétní +zrcadlo CTANu ze seznamu na stránce http://ctan.org/mirrors. Použijte přesnou cestu +k podadresáři tlnet tohoto zrcadla, jak jsme uvedli výše. +

+

3.4.4 Systémová konfigurace fontů pro XeTEX a LuaTEX
+

XeTEX a LuaTEX mohou používat jakýkoli font instalován v systému, nejenom ty, které se +nachází v TEXovských stromech. Provádí to prostřednictvím podobných, ale ne identických +metod. +

Pod Windows jsou fonty dodané s TEX Live automaticky dostupné pro XeTEX. Pokud máte na +unixovém systému nainstalován balík xetex, potřebujete dokonfigurovat váš systém chcete-li, aby +byl XeTEX schopen najít fonty dodané s TEX Live prostřednictvím vyhledávání systémových +jmen a nejen souborů. +

Pro usnadnění, když se instaluje balík xetex (buď ve výchozí instalaci nebo později), se vytváří +potřebný konfigurační soubor TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf. +

Pro nastavení fontů TEX Live pro použití v rámci celého systému (za předpokladu, že máte +odpovídající oprávnění), postupujte následovně: +

    +
  1. Zkopírujte soubor texlive-fontconfig.conf do adresáře /etc/fonts/conf.d/ + 09-texlive.conf. +
  2. +
  3. Spusťte fc-cache -fsv.
+

Pokud nemáte postačující práva k provedení výše popsaných kroků, neboli jednoduše chcete +učinit fonty TEX Live dosažitelnými pro vás jako samostatného uživatele, můžete učinit +následující: +

    +
  1. Zkopírujte soubor texlive-fontconfig.conf do ~/.fonts.conf, kde ~ označuje váš + domovský adresář. +
  2. +
  3. Spusťte fc-cache -fv.
+

Pokud chcete uvidět jména všech systémových fontů, můžete spustit příkaz fc-list. +Zaklínadlo fc-list : family style file spacing (všechny argumenty jsou písmenkové řetězce) +ukáže obecně zajímavou informaci. +

+

3.4.5 ConTEXt Mark IV
+

‘Starý’ConTEXt (Mark II) a ‘nový’ConTEXt (Mark IV) by měly po instalaci TEX Live fungovat bez +dalších zásahů a neměly by vyžadovat zvláštní pozornost, pokud budete k aktualizacím používat +tlmgr. +

Nicméně, protože ConTEXt MkIV nepoužívá knihovnu kpathsea, nějaké nastavení bude +požadováno vždycky, když budete instalovat nové soubory ručně (bez použití tlmgr). Po ukončení +takové instalace musí každý uživatel MkIV spustit: +

  context --generate
+

pro obnovení diskových cache údajů ConTEXtu. Výslední soubory jsou uloženy do TEXMFCACHE, kterého +přednastavená hodnota v TEX Live je TEXMSYSVAR;TEXMFVAR. +

ConTEXt MkIV bude číst ze všech cest uvedených v TEXMFCACHE a zapisovat do první +zapisovatelné cesty. Při čtení v případě duplicitních údajů v paměti cache získá přednost +poslední nalezený prvek. +

Pro další informace viz http://wiki.contextgarden.net/Running_Mark_IV. + + +

+

3.4.6 Začleňování lokálních a osobních maker
+

Toto je již implicitně zmíněno v sekci 2.3: adresář TEXMFLOCAL (standardně +/usr/local/texlive/texmf-local nebo %SystemDrive%\texlive\texmf-local pod Windows) je +určen pro rozsáhlé systémové lokální fonty a makra; a adresář TEXMFHOME (standardně +$HOME/texmf nebo %USERPROFILE%\texmf), je pro osobní fonty a makra. Pro oba stromy musí být +soubory umístěné v patřičných podadresářích TDS (TEX Directory Structure); viz +http://tug.org/tds nebo nahlédni do souboru texmf/web2c/texmf.cnf. Například, +LATEXovský styl, třída nebo makrobalík by měl být umístěn v TEXMFLOCAL/tex/latex nebo +TEXMFHOME/tex/latex, nebo v jejich podadresářích. +

TEXMFLOCAL vyžaduje aktuální databázi jmen souborů, jinak nebudou soubory nalezeny. Můžete +ji obnovit povelem mktexlsr nebo použít tlačítko ‘Reinit file database’na konfigurační záložce +programu TEX Live Manager v režimu GUI. +

Standardně je každá z těchto proměnných definována jako samostatný adresář, jak je +ukázáno. To však není nezbytně nutné. Pokud potřebujete přepínat mezi dvěma verzemi +velkých balíků, například můžete udržovat více stromů pro vaše vlastní potřeby. Toho se +dosáhne nastavením TEXMFHOME na seznam adresářů uvnitř složených závorek oddělených +čárkami: + + +

+
    TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir}
+
+

+

Další popis expanze závorek je v oddíle 7.1.5. +

+

3.4.7 Začleňování fontů třetích stran
+

Toto je naneštěstí nepříjemné téma. Zapomeňte na něj pokud se nechcete probírat v mnoha +podrobnostech instalace TEXu. Nezapomeňte si nejdříve prohlédnout fonty, které jsou zdarma +součástí distribuce, viz sekci 2.6. +

Možnou alternativou je použití XeTEXu nebo LuaTEXu (viz sekci 2.4), které vám umožní +používat fonty operačního systému bez jakékoliv instalace v TEXu. Pokud to potřebujete udělat, +vyvinuli jsme maximální úsilí k popsání postupu, viz http://tug.org/fonts/fontinstall.html. +Pokud pečlivě udržujete mapy svých lokálních fontů, tlmgr generate updmap že být užitečné, +například při přechodu od vydání k vydání; viz dokumentaci tlmgr. +

+

3.5 Testování instalace

+

Po nainstalování TEX Live přirozeně chcete systém otestovat a začít vytvářet nádherné +dokumenty nebo fonty. +

Tento oddíl popisuje základní postupy testování funkčnosti nového systému pod Unixem. Pod +Mac OS X a Windows budete patrně spouštět testy přes uživatelské grafické rozhraní (GUI), ale +principy jsou stejné. +

+

    +
  1. Nejprve ověřte, zda se spustí program tex: +
    +

    + > tex --version +
    TeX 3.1415926 (TeX Live ...) +
    kpathsea version 6.0.1 +
    Copyright ... D.E. Knuth. +
    ... +
    +
    Pokud obdržíte hlášku s ‘command not found’místo výše uvedeného, nebo se starší verzí, + patrně nemáte nastavený správný podadresář bin v proměnné prostředí PATH. Vraťte se + k informacím o jejich nastavování na straně 38. +
  2. +
  3. Přeložte ukázkový soubor LATEXu:
    +

    + > latex sample2e.tex +
    pdfTeX 3.1415926-... (TeX Live ...) +
    ... +
    Output written on sample2e.dvi (3 pages, 7484 bytes). +
    Transcript written on sample2e.log. + + +
    +
    Pokud selže nalezení souboru sample2e.tex nebo jiných souborů, nejspíše máte aktivní + stará nastavení proměnných prostředí nebo konfiguračních souborů; pro začátek + doporučujeme zrušit nastavení všech proměnných prostředí souvisejících s TEXem. Pro + hlubší analýzu a dohledání problému můžete kdykoliv požádat TEX o detaily toho, co a kde + hledá: viz „Ladicí činnosti“ na straně 66. +
  4. +
  5. Prohlédněte si výsledek na obrazovce:
    +

    + > xdvi sample2e.dvi    # Unix +
    > dviout sample2e.dvi  # Windows +
    +
    Mělo by se otevřít nové okno s pěkným dokumentem popisujícím základy LATEXu. + (Mimochodem, stojí za přečtení, pokud začínáte s TEXem.) Musíte mít spuštěny + X Window, aby xdvi pracovalo. Pokud tomu tak není nebo máte špatně nastavenou + proměnnou prostředí DISPLAY, dostanete chybovou hlášku ‘Can’t open display’. +
  6. +
  7. Vytvořte PostScriptový soubor pro tisk nebo prohlížení:
    +

    + > dvips sample2e.dvi -o sample2e.ps +
    +
    +
  8. +
  9. Vytvořte PDF soubor místo DVI; tento příkaz ze souboru .tex vytvoří PDF přímo: +
    +

    + > pdflatex sample2e.tex +
    +
    +
  10. +
  11. Prohlédněte si PDF soubor:
    +

    + > gv sample2e.pdf +
    nebo: +
    > xpdf sample2e.pdf +
    +
    Ani gv ani xpdf nejsou zařazeny na TEX Live a musíte je instalovat separátně. Viz + http://www.gnu.org/software/gv resp. http://www.foolabs.com/xpdf. Existuje také velké + množství jiných prohlížečů PDF. Pro Windows doporučujeme vyzkoušet Sumatra PDF + (http://blog.kowalczyk.info/software/sumatrapdf). +
  12. +
  13. Standardní testovací soubory, které mohou být užitečné kromě sample2e.tex: +

    + + +

    + small2e.tex
    +

    Ukázkový dokument, ještě kratší než sample2e. +

    + testpage.tex
    +

    Test, jestli vaše tiskárna neposunuje tiskové zrcadlo. +

    + nfssfont.tex
    +

    Pro tisk tabulek fontů a testů fontů. +

    + testfont.tex
    +

    Pro totéž, ale pro plain TEX. +

    + story.tex
    +

    Základní (plain) TEXový testovací soubor. Musíte napsat ‘\bye’ na výzvu * po + ‘tex story.tex’.

    +
  14. +
  15. Pokud máte nainstalovaný balík xetex package, můžete prověřit jeho přístup k systémovým + fontům následovně:
    +

    + > xetex opentype-info.tex +
    This is XeTeX, Version 3.1415926 +
    ... +
    Output written on opentype-info.pdf (1 page). +
    Transcript written on opentype-info.log. +
    +
    (Nebo to samé pro luatex.) +

    Jestliže obdržíte chybové hlášení „Invalid fontname ‘Latin Modern Roman/ICU’…“, pak + potřebujete nakonfigurovat váš systém tak, aby XeTEX mohl najít fonty dodané s TEX Live. + Viz oddíl 3.4.4.

+

+

3.6 Odkazy na doplňkový software s možností stažení z Internetu

+

Pokud jste TEXový začátečník nebo potřebujete pomoc se psaním TEXových, respektive +LATEXových dokumentů, navštivte http://tug.org/begin.html, kde najdete úvodní informace +k instalaci. +

Odkazy na některé další pomůcky, o instalaci kterých můžete uvažovat: +

+Ghostscript
http://www.cs.wisc.edu/~ghost/ +
+Perl
http://www.perl.org/ s doplňujícími balíky z CPAN, http://www.cpan.org/ +
+ImageMagick
http://www.imagemagick.com, k zpracování a konverzi grafiky +
+NetPBM
http://netpbm.sourceforge.net/, rovněž pro grafiku. +
+TEXovsky orientované editory
Existuje široký výběr a je to záležitost vkusu uživatele. Tady je + výběr v abecedním řazení (několik málo je pouze pro Windows). + + + +
+

Pro mnohem delší seznam balíků a programů, viz http://tug.org/interest.html. +

+

4 Specializované instalace

+

Předcházející oddíly popisovaly základní instalační proces. Teď se zaměříme na některé speciální +případy. +

+

4.1 Instalace sdílené uživateli (nebo cross-machine)

+

TEX Live byl navržený tak, aby se dal sdílet mezi různými uživateli jednoho systému a/nebo mezi +různými systémy na síti. Se standardní strukturou adresářů se nekonfigurují žádné pevné plné +cesty: umístění souborů potřebných pro programy TEX Live je zřízeno relativně k programům. +Můžete to najít v nejdůležitějším konfiguračním souboru $TEXMFMAIN/web2c/texmf.cnf, který +obsahuje řádky jako jsou +

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

To znamená, že k získání funkčního nastavení stačí přidat ke své vyhledávací cestě adresář binárek +TEX Live pro jejich platformu. +

Stejným způsobem můžete nainstalovat TEX Live lokálně a pak přesunout celou hierarchii +později na místo na síti. +

Pro Windows můžete stáhnout z http://tug.org/texlive/w32client.html vzorový +skript síťové instalace nazvaný w32client. Vytváří nastavení a nabídkové zkratky +k užívání stávající instalace TEX Live na LAN. Registruje také program k odinstalování +w32unclient, je po ruce ve stejném zip-souboru. Pro další informace odkazujeme na webovou +stránku. +

+ + +

4.2 Mobilní USB instalace

+

Volba instalačního programu -portable (nebo příkaz V v textové verzi instalátoru nebo +odpovídající volba GUI) vytváří úplně samostatnou instalaci TEX Live pod společným kořenem a +předcházející integraci systému. Takovou instalaci můžete vytvořit přímo na klíči USB, nebo ji +zkopírovat na klíč USB později. +

Ke spuštění TEX při použití této přenosné instalace musíte přidat příslušný adresář binárek +k vyhledávané cestě během vaší práce na terminálu, jako obvykle. Pod Windows můžete dvakrát +kliknout na tl-tray-menu v kořenovém adresáři instalace a zvolit si mezi několika běžnými úkoly, +jak je to ukázáno na této obrazovce: + +

pict +

Vstup ‘More…’vysvětluje, jak si můžete přizpůsobit tuto nabídku. +

+

4.3 ISO (nebo DVD) instalace

+

Pokud nepotřebujete příliš často aktualizovat nebo jiným způsobem měnit vaši instalaci a/nebo +máte více systémů, na kterých provozujete TEX Live, může pro vás být užitečné vytvořit +ISO obraz vaší instalace TEX Live, protože: +

    +
  • Kopírování ISO obrazů mezi různými počítači je mnohem rychlejší než zkopírování + obyčejné instalace. +
  • +
  • Pokud máte duální zavádění různých operačních systémů a chcete sdílet instalaci TEX + Live, instalace ISO není svázaná výstřednostmi a ohraničeními vzájemně rozdílných + podporovaných souborových systémů (FAT32, NTFS, HFS+). +
  • +
  • Virtuální stroj dokáže jednoduše namontovat takové ISO.
+

Samozřejmě si můžete také napálit ISO obraz na DVD, pokud to uznáte za užitečné. +

Systémy GNU/Linux/Unix s pracovní plochou, včetně Mac OS X, jsou schopné namontovat +ISO. Nezávisle na tom se nic nemění v porovnání s běžnou instalací na pevném disku, viz oddíl +3.4.1. +

Při přípravě takové ISO instalace je nejlepší vynechat podadresář roku vydání a mít +texmf-local na stejné úrovni jako ostatní stromy (texmf, texmf-dist atd.). Toto můžete udělat +pomocí obyčejných voleb adresářů v instalátoru. +

Pro fyzický (spíše než virtuální) systém Windows můžete napálit ISO obraz na DVD. Avšak, +může stát za to prozkoumat svobodné volby ISO-montování. Pro Windows XP, Microsoft nabízí +winxpvirtualcdcontrolpanel. +

Pro integraci systému Windows, můžete zahrnout skripty w32clienta popsané v oddíle 4.1 a +na http://tug.org/texlive/w32client.html, které pracují téměř stejně dobře pro ISO jako pro +síťovou instalaci. +

Pod Mac OS X, TeXShop a TEXworks jsou schopny použít DVD instalaci pokud symbolický +odkaz /usr/texbin ukazuje na příslušný adresář binárek, například, + + +

+
  sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin
+
+

+

Historická poznámka: TEX Live 2010 byla první edice TEX Live, která už již není +distribuovaná ‘live’. Nicméně, spouštění z DVD nebo ISO si vždy vyžadovalo jistou obratnost; +především nebyla možnost nastavení alespoň jedné dodatečné proměnné prostředí. Pokud +vytváříte vaše ISO ze stávající instalace, není to potřebné. +

+

5 tlmgr: správa vaší instalace

+


+ + + + + + +

pict +

Obrázek 8: tlmgr v režimu GUI: hlavní okno, po kliknutí na tlačítko ‘Load’.
+ + +


+


+ + + + + + +

pict +

Obrázek 9: tlmgr v režimu GUI: Obecné volby
+

pict +

Obrázek 10: tlmgr v režimu GUI: +Volby rozměru papíru
+ + +


+

TEX Live obsahuje program nazvaný tlmgr pro správu TEX Live po výchozí instalaci. Programy +updmap, fmtutil a texconfig jsou dosud zahrnuté a zůstanou i v budoucnosti, avšak preferovaným +rozhraním je nyní tlmgr. Jeho schopnosti zahrnují: +

    +
  • instalaci, aktualizaci, zálohování, obnovení a odinstalování jednotlivých balíků, + volitelně i se započítáním závislostí mezi balíky; +
  • +
  • vyhledávání a přehled balíků, atd.; +
  • +
  • výpis seznamu, přidání a odstranění platforem; +
  • +
  • změna instalačních voleb jako například velikosti papíru a umístění zdrojů (viz + sekci 3.3.1).
+

5.1 GUI režim tlmgr

+

tlmgr může být spuštěn v režimu GUI (obrázek 8) povelem

+

+> tlmgr -gui +
+
nebo ve Windows prostřednictvím Start menu: Start, Programs, TeX Live 2012, TeX +Live Manager. Po kliknutí na ‘Load’se zobrazí seznam balíků, které jsou k dispozici, a +nainstalovaných balíků. Pochopitelně se předpokládá, že instalační zdroj je platný a +dosažitelný. +

Obrázky 910 ukazují obrazovky obecných voleb a volby rozměru papíru. +

+

5.2 Vzorové realizace tlmgr z příkazového řádku

+

Po výchozí instalaci můžete svůj systém aktualizovat na nejnovější dostupnou verzi pomocí: +

+

+> tlmgr update -all +
+
Pokud vás to znepokojuje, zkuste nejdříve
+

+> tlmgr update -all -dry-run +
+
nebo (méně upovídané):
+

+> tlmgr update -list +
+
+

Tento složitější příklad přidá z místního adresáře kolekci pro nástroj (engine) +XeTEX: +

+

+> tlmgr -repository /local/mirror/tlnet install collection-xetex + + +
+
Vytvoří následující výstup (zkrácené): +
  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/2012/texmf/ls-R...
  ...
  running fmtutil-sys --missing
  ... +
  Transcript written on xelatex.log.
  fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed.
+

Jak můžete vidět, tlmgr nainstaluje závislosti a postará se o všechny potřebné poinstalační +činnosti, včetně aktualizace databáze názvů souborů a (znovu)vygenerování formátů. Výše jsme +vytvořili nové formáty pro XeTEX. +

K popisu balíku (nebo kolekce či schémy) zadejte:

+

+> tlmgr show collection-latexextra +
+
co vytvoří +
  package:    collection-latexextra
  category:   Collection
  shortdesc:  LaTeX supplementary packages +
  longdesc:   A large collection of add-on packages for LaTeX.
  installed:  Yes
  revision:   14675
+

Nakonec to nejdůležitější – úplnou dokumentaci najdete na http://tug.org/texlive/tlmgr.html +nebo zadáním:

+

+> tlmgr -help +
+
+

+

6 Poznámky o Windows

+

+

6.1 Vlastnosti typické pro Windows

+

Pod Windows dělá instalační program některé dodatečné věci: +

+Nabídky a zkratky.
Je nainstalována nová položka ‘TEX Live’nabídky Start, obsahující + vstupy pro některé programy GUI (tlmgr, texdoctk, prohlížeč PostScriptu PS_View + (psv)) a trochu dokumentace. +
+Přidružení souborů.
Pokud je to povoleno, TeXworks, Dviout a PS_view se buď stávají + předvolenými programy pro jejich příslušné typy souborů, nebo pro tyto typu + souborů získávají položku v nabídce ‘Otevřít pomocí’dostupnou kliknutím pravým + tlačítkem. +
+Konvertor bitmap na soubory formátu EPS.
Různé formáty bitmapových souborů + mohou být vstupem programu bitmap2eps v jejich položce ‘Otevřít pomocí’nabídky + dostupné kliknutím pravým tlačítkem. Bitmap2eps je jednoduchý skript, který + skutečnou práci ponechává na programech sam2p nebo bmeps. +
+Automatické nastavení proměnné path.
Nevyžadují se žádné kroky ruční + konfigurace. +
+Odinstalátor.
Instalační program vytvoří položku pro TEX Live pod nabídkou + ‘Add/Remove Programs’. Vztahuje se k tomu záložka ‘Uninstallation’GUI programu + TEX Live Manager.
+ + +

+

6.2 Dodatečný obsažený software pod Windows

+

Pro úplnost, instalace TEX Live potřebuje další balíky a programy, které na stroji s Windows +obvykle nenajdete. TEX Live poskytuje chybějící součásti: +

+Perl a Ghostscript.
Kvůli důležitosti Perlu a Ghostscriptu zahrnuje TEX Live ‘skryté’kopie + těchto programů. Programy TEX Live, které je potřebují, vědí, kde je najdou, ale + neprozrazují jejich přítomnost nastavením proměnných prostředí nebo registrů. Nejsou + to úplné instalace a neměly by překážet žádným systémovým instalacím Perlu nebo + Ghostscriptu. +
+PS_View.
Nainstalován je také PS_View, prohlížeč PostScript a PDF souborů; viz obr. 11. +


pict +
Obrázek 11: PS_View: k dispozici jsou velmi vysoká zvětšení!
+


+
+dviout.
Nainstalován je také dviout, prohlížeč DVI souborů. Nejdříve, když prohlížíte soubory + pomocí dviout, vytvoří tento fonty, protože fonty pro obrazovku nebyly nainstalovány. Po + chvilce budete mít vytvořenu většinu fontů pro použití a okno vytváření fontů uvidíte už + jen zřídka. Více informací je možné nalézt ve (velmi doporučené) odpovídající + nápovědě. +
+TEXworks.
TEXworks je TEXovsky orientovaný editor se zabudovaným prohlížečem PDF. Je již + pro TEX Live nakonfigurován. +
+Nástroje příkazového řádku.
Řada běžných unixových programů řízených z příkazového + řádku je nainstalovaných pod Windows spolu s běžnými binárkami TEX Live. Tyto zahrnují + programy gzip, unzip programy ze skupiny xpdf (pdfinfo, pdffonts, …) a běžné unixové programy + užívané na příkazové řádce. Samotný prohlížeč xpdf není k dispozici pro Windows. + Namísto něho si můžete z http://blog.kowalczyk.info/software/sumatrapdf + stáhnout prohlížeč PDF Sumatra, který je založen na xpdf, společně s dalšími + možnostmi. +
+fc-list, fc-cache,
Nástroj z knihovny fontconfig pomáhá XeTEXu efektivněji zacházet s fonty + pod Windows. Můžete použít fc-list k určení jmen fontů k předání příkazu XeTEXu \font + s rozšířenou funkcionalitou. Pokud je to potřebné, nejdříve spusťte fc-cache k aktualizaci + informací o fontech.
+

+

6.3 User Profile je Home

+

Windowsovský protějšek domovského (home) adresáře Unixu je adresář %USERPROFILE%. Pod +Windows XP je to obvykle C:\Documents and Settings\<username> a pod Windows Vista a +Windows 7 je to C:\Users\<username>. V souboru texmf.cnf a obecně pro Kpathsea, se bude ~ +expandovat přiměřeně v obou systémech Windows a Unix. +

+

6.4 Registry Windows

+

Windows ukládá téměř všechny konfigurační údaje do svých registrů. Registr obsahuje soubor +hierarchicky uspořádaných klíčů, s několika kořenovými klíči. Nejdůležitější pro instalační +programy jsou stručně řečeno HKEY_CURRENT_USER a HKEY_LOCAL_MACHINE, HKCU a HKLM. Část HKCU +registru je v domovském adresáři uživatele (viz sekci 6.3). HKLM je obvykle v podadresáři adresáře +Windows. + + +

V některých případech je možné získat systémové informace z proměnných prostředí, ale pro +další informace, kupříkladu umístění zkratek, je nutné nahlédnout do registrů. Trvalé nastavení +proměnných prostředí si rovněž vyžaduje přístup k registrům. +

+

6.5 Oprávnění Windows

+

V novějších verzích Windows se dělá rozdíl mezi běžnými uživateli a administrátory, když pouze +posledně zmínění mají volný přístup k celému operačnímu systému. Ve skutečnosti můžete tyto +třídy uživatelů raději označit jako neprivilegovaní uživatelé a normální uživatelé: být +administrátorem je pravidlo, ne výjimka. Přesto jsme se snažili učinit TEX Live instalovatelným bez +administrativních výsad. +

Pokud je uživatelem administrátor, je možnost instalovat i pro všechny uživatele počítače. +Pokud je tato volba zvolena, odkazy (shortcuts) se vytvářejí pro všechny uživatele a systémové +prostředí se upravuje. Jinak jsou odkazy a položky nabídky vytvářeny pouze pro aktuálního +uživatele a upravuje se jen jeho prostředí. +

Bez ohledu na status administrátora je standardní kořenový adresář TEX Live navržený +instalačním programem vždycky pod %SystemDrive%. Instalátor vždy testuje, zda je kořenový +adresář zapisovatelný pro aktuálního uživatele. +

Problém se může vyskytnout, pokud uživatel není administrátor a TEX již existuje ve +vyhledávací cestě. Protože skutečná cesta se sestává ze systémové cesty následované uživatelskou +cestou, nový TEX Live by nikdy neměl získat přednost. Jako bezpečnostní opatření vytváří +instalátor odkaz na příkazový řádek (command-prompt), ve kterém je adresář binárek nového TEX +Live předřazený lokální vyhledávací cestě. Nový TEX Live bude pořád použitelný, když bude +běžet v relaci příkazového řádku spuštěné z takového odkazu. Odkaz na TEXworks, pokud je +nainstalován, rovněž předřadí TEX Live k vyhledávací cestě, proto by měl být imunní vůči +tomuto problému cest. +

Pro Windows Vista a Windows 7 je tady jiná zrůdnost: dokonce i když jste přihlášen jako +správce, musíte explicitně požádat o správcovské práva. Ve skutečnosti nemá význam +přihlašovat se jako správce. Místo toho, kliknutí pravým tlačítkem na program nebo +odkaz, který chcete použít, vám obvykle nabídne volbu ‘Spustit jako správce/Run as +administrator’. +

+

6.6 Zvětšení maxima paměti pod Windows a Cygwin

+

Uživatelé Windows a Cygwin (pro zvláštnosti instalace Cygwin viz oddíl 3.1.4) mohou zjistit, že +při běhu některých programů dodaných s TEX Live, trpí nedostatkem paměti. Například, asy +zhavaruje pro nedostatek paměti pokud se pokusíte alokovat pole 25,000,000 reálných čísel a +LuaTEX může mít málo paměti pokud zkusíte zpracovat dokument s velkým množstvím +rozsáhlých fontů. +

Pro Cygwin můžete zvětšit množství dostupné paměti podle návodu v příručce the Cygwin +User’s Guide (http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html). +

Pro Windows musíte vytvořit soubor, například moremem.reg, obsahující tyto čtyři +řádky: +

+

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

a pak spustit povel regedit /s moremem.reg jako administrátor. (Pokud si přejete změnit paměť +pouze pro stávajícího uživatele místo všech, použijte HKEY_CURRENT_USER.) +

+

7 Používateľská príručka ku systému Web2C

+

Web2C obsahuje množinu TEX-príbuzných programov, t.j. samotný TEX, Metafont, MetaPost, +BibTeX, atď. Je to srdce systému TEX Live. Domovská stránka Web2C, s aktuálnou príručkou a +ďalšími vecami, je http://tug.org/web2c. + + +

Trochu histórie: originálna implementácia pochádza od Thomasa Rokického, ktorý +v roku 1987 vyvinul prvý TEX-to-C systém založený na zmenových súboroch systému +pre Unix, ktoré boli v prvom rade pôvodnou prácou Howarda Trickeya a Pavla Curtisa. +Tim Morgan sa stal spravovateľom systému a počas jeho obdobia sa meno zmenilo na +Web-to-C. V roku 1990 Karl Berry prebral túto prácu, asistoval pri tuctoch dodatočných +príspevkov a v roku 1997 podal taktovku Olafovi Weberovi, ktorý ju v roku 2006 vrátil +Karlovi. +

Web2C systém beží pod Unixom, 32bitovými Windows, MacOSX a inými operačnými +systémami. Používa originálne TEX zdrojové súbory od Knutha a ostatné základné programy +napísané v systéme kultivovaného programovania WEB, ktoré sú preložené do zdrojového kódu +jazyka C. Základné programy TEXu sú spracované týmto spôsobom: +

+bibtex
Spravovanie bibliografií. +
+dvicopy
Vytváranie modifikovanej kópie DVI súboru. +
+dvitomp
Konverzia DVI do MPX (MetaPost obrázky). +
+dvitype
Konverzia DVI do ľudsky čitateľného textu. +
+gftodvi
Generovanie fontov pre náhľad. +
+gftopk
Konverzia gf formátu fontov do pakovaných fontov. +
+gftype
Konverzia gf formátu fontov do ľudsky čitateľného textu. +
+mf
Metafont – vytváranie rodín fontov. +
+mft
Preddefinované Metafontové zdrojové súbory. +
+mpost
MetaPost – tvorba technických diagramov. +
+patgen
Vytváranie vzorov rozdeľovania slov. +
+pktogf
Konverzia pakovaných formátov fontov do gf formátov. +
+pktype
Konverzia pakovaných písiem do ľudsky čitateľného textu. +
+pltotf
Konverzia ‘Property list’do TFM. +
+pooltype
Zobrazovanie ,WEB pool‘ súborov. +
+tangle
Konverzia WEB súborov do Pascalu. +
+tex
TEX – sadzba. +
+tftopl
Konverzia TFM do ‘property list’. + + +
+vftovp
Konverzia virtuálneho fontu do virtuálneho ‘property list’. +
+vptovf
Konverzia virtuálneho ‘property list’do virtuálneho fontu. +
+weave
Konverzia WEB súborov do TEXu.
+

Presné funkcie a syntax týchto programov sú popísané v dokumentáciách jednotlivých balíkov alebo +v dokumentácii Web2C. Napriek tomu, poznanie niekoľkých princípov, ktoré platia pre celý balík +programov, vám pomôže vyťažiť čo najviac z vašej Web2C inštalácie. +

Všetky programy dodržiavajú štandardné GNU voľby: +

+

+–help
Vypisuje prehľad základného používania. +
+–verbose
Vypisuje detailnú správu spracovania. +
+–version
Vypisuje informáciu o verzii, potom skončí.
+

Na vyhľadávanie súborov používajú Web2C programy prehľadávaciu knižnicu Kpathsea +(http://tug.org/kpathsea). Táto knižnica používa kombináciu premenných prostredia a +niekoľkých konfiguračných súborov na optimalizáciu prehľadávania adresárového stromu TEXu. +Web2C zvládne prácu s viacerými adresárovými stromami súčasne, čo je užitočné, ak niekto chce +udržiavať štandardnú distribúciu TEXu a jeho lokálne a osobné rozšírenia v rozličných +stromoch. Na urýchlenie vyhľadávania súborov, koreň každého stromu obsahuje súbor ls-R so +záznamom obsahujúcim meno a relatívnu cestu ku všetkým súborom umiestneným pod týmto +koreňom. +

+

7.1 Vyhľadávanie ciest knižnicou Kpathsea

+

Najprv popíšeme všeobecný mechanizmus vyhľadávania ciest knižnicou Kpathsea. +

Vyhľadávacou cestou nazveme zoznam elementov cesty, ktorými sú v prvom rade mená adresárov +oddelené dvojbodkou alebo bodkočiarkou. Vyhľadávacia cesta môže pochádzať z viacerých zdrojov. +Pri vyhľadávaní súboru ‘my-file’ podľa cesty ‘.:/dir’, Kpathsea skontroluje každý element cesty: +najprv ./my-file, potom /dir/my-file, vracajúc prvý zodpovedajúci nájdený prvok (alebo +prípadne všetky zodpovedajúce prvky). +

Aby bolo dosiahnuté prispôsobenie sa konvenciám čo možno najviac operačných systémov, na +neunixových systémoch Kpathsea môže používať oddeľovače názvov súborov rôzne od dvojbodky +(‘:’) a lomítka (‘/’). +

Pri kontrolovaní určitého elementu cesty p Kpathsea najprv overí, či sa na naň nevzťahuje +vopred vybudovaná databáza (pozri ,Databáza názvov súborov‘ na strane 63), t. j., či sa databáza +nachádza v adresári, ktorý je prefixom p. Ak to tak je, špecifikácia cesty sa porovnáva s obsahom +databázy. +

Ak databáza neexistuje, alebo sa nevzťahuje na tento element cesty, alebo sa v nej hľadaný +súbor nevyskytuje, celý systém súborov je prehľadaný (pokiaľ to nebolo zakázané špecifikáciou +začínajúcou ‘!!’ a hľadaný súbor musí existovať). Kpathsea zostrojí zoznam adresárov +zodpovedajúcich tomuto elementu cesty a potom skontroluje každý z nich, či sa v ňom nenachádza +hľadaný súbor. +

Podmienka ,súbor musí existovať‘ sa týka napr. súborov typu ‘.vf’ a vstupných súborov +čítaných príkazom TEXu \openin. Takéto súbory nemusia existovať (napr. cmr10.vf) a nebolo by +dobré prehľadávať kvôli nim celý disk. Preto, ak zabudnete aktualizovať ls-R pri inštalácii +nového ‘.vf’ súboru, súbor nebude nikdy nájdený. Každý element cesty sa prekontroluje: +najprv databáza, potom disk. Keď je súbor nájdený, vyhľadávanie sa zastaví a výsledok je +vrátený. + + +

Hoci najjednoduchší a najbežnejší element cesty je meno adresáru, Kpathsea podporuje aj iné +zdroje vo vyhľadávacích cestách: dedičné (layered) štandardné hodnoty, mená premenných +prostredia, hodnoty súboru config, domáce adresáre používateľov a rekurzívne prehľadávanie +podadresárov. Preto, ak hovoríme, že Kpathsea rozbalí element cesty, znamená to, že +pretransformuje všetky špecifikácie do základného mena alebo mien adresárov. Toto je popísané +v nasledujúcich odsekoch. +

Všimnite si, že keď je meno hľadaného súboru vyjadrené absolútne alebo explicitne relatívne, +t. j. začína ‘/’ alebo ‘./’ alebo ‘../’, Kpathsea jednoducho skontroluje, či taký súbor +existuje. +

+

7.1.1 Zdroje cesty
+

Vyhľadávacia cesta môže byť vytvorená z rôznych zdrojov. Kpathsea ich používa v tomto +poradí: +

    +
  1. Používateľom nastavená premenná prostredia, napríklad TEXINPUTS. Premenné + prostredia s pridanou bodkou a menom programu majú prednosť pred premennými + rovnakého mena, ale bez prípony. Napríklad, keď ‘latex’ je meno práve bežiaceho + programu, potom premenná TEXINPUTS.latex prepíše TEXINPUTS. +
  2. +
  3. Programovo-špecifický konfiguračný súbor, napríklad riadok ,S /a:/b‘ v súbore + config.ps dvips. +
  4. +
  5. Konfiguračný súbor Kpathsea — texmf.cnf, obsahujúci riadok ako ‘TEXINPUTS=/c:/d’ + (pozri ďalej). +
  6. +
  7. Predvolené hodnoty počas kompilácie.
+

Všetky tieto hodnoty vyhľadávacej cesty môžete prezerať použitím ladiacích možností (pozri +,Ladenie‘ na strane 66). +

+

7.1.2 Konfiguračné súbory
+

Kpathsea číta počas behu z konfiguračných súborov s menom texmf.cnf vyhľadávaciu cestu a +ďalšie definície. Vyhľadávacia cesta používaná na hľadanie týchto súborov sa volá TEXMFCNF, ale +neodporúčame nastavovať túto (ani iné) premennú prostredia. +

Namiesto toho normálna inštalácia vyústi do súboru .../2012/texmf.cnf. Ak musíte +vykonať zmeny implicitných nastavení (obyčajne to nie je nutné), toto je miesto, kam sa +majú vložiť. Hlavný konfiguračný súbor je .../2012/texmf/web2c/texmf.cnf. Nesmiete +editovať tento neskorší súbor, pretože vaše zmeny budú stratené pri obnove šírenej +verzie. +

Všetky súbory texmf.cnf vo vyhľadávacej ceste budú prečítané a definície v starších súboroch +prepíšu definície v novších súboroch. Napríklad, pri vyhľadávacej ceste .:$TEXMF, hodnoty +z ./texmf.cnf prepíšu hodnoty z $TEXMF/texmf.cnf. +

    +
  • Komentáre začínajú znakom ,%‘ a pokračujú do konca riadku. +
  • +
  • Prázdne riadky sú ignorované. +
  • +
  • Znak \ na konci riadku slúži ako pokračovací znak, t.j. nasledujúci riadok je k nemu + pripojený. Prázdne znaky na začiatku pripájaných riadkov nie sú ignorované. + + +
  • +
  • Všetky ostatné riadky majú tvar:
    +

    +   variable[.progname] [=] value +
    +
    kde ‘=’ a prázdne znaky naokolo sú nepovinné. +
  • +
  • Meno premennej ,variable‘ môže obsahovať akékoľvek znaky okrem prázdnych znakov, ‘=’, + alebo ‘.’, ale obmedziť sa na znaky ‘A-Za-z_’ je najbezpečnejšie. +
  • +
  • Ak je ,.progname‘ neprázdne, definícia sa použije iba vtedy, keď práve bežiaci program má + meno progname alebo progname.exe. Toto umožňuje napríklad mať pre rôzne nadstavby + TEXu rôzne vyhľadávacie cesty. +
  • +
  • Hodnota ,value‘ môže obsahovať akékoľvek znaky okrem ,%‘ a ‘@’. Na pravej strane nie je + možné použiť ,$var.prog‘; namiesto toho musíte použiť ďalšiu premennú. Znak + ‘;’ vo ,value‘ je preložený do ‘:’ ak sme pod operačným systémom Unix. Toto je + užitočné, keď chceme mať jediný texmf.cnf súbor pre systémy Unix, MSDOS a + Windows. +
  • +
  • Všetky definície sú prečítané skôr, ako sa expandujú. Preto môžu existovať referencie na + premenné skôr, ako sú tieto definované.
+

Ukážkový úsek konfiguračného súboru, ilustrujúci väčšinu týchto bodov: +

+  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;}// +
+

+

7.1.3 Expanzia cesty
+

Kpathsea rozpoznáva určité zvláštne znaky a konštrukcie vo vyhľadávacích cestách podobné tým, +čo existujú v prostrediach unixovských interprétov príkazového riadku (shells). Ako +všeobecný príklad uvedieme komplexnú cestu ~$USER/{foo,bar}//baz, ktorá sa expanduje do +všetkých podadresárov pod adresármi foo a bar v domovskom adresári používateľa +$USER, ktorý obsahuje adresár alebo súbor baz. Tieto konštrukcie sú popísané v ďalších +odsekoch. +

7.1.4 Predvolená expanzia
+

Ak vyhľadávacia cesta s najväčšou prioritou (pozri ,Zdroje cesty‘ na strane 58) obsahuje dvojbodku +navyše (t.j. začiatočnú, koncovú, alebo zdvojenú), Kpathsea vloží na toto miesto vyhľadávaciu +cestu s druhou najvyššou prioritou, ktorá je definovaná. Ak táto vložená cesta obsahuje dvojbodku +navyše, to isté sa stane s ďalšou najvýznamnejšou cestou. Keby sme mali napríklad dané takéto +nastavenie premennej prostredia

+

+>> setenv TEXINPUTS /home/karl: + + +
+
a hodnotu TEXINPUTS v súbore texmf.cnf
+

+  .:$TEXMF//tex +
+
potom konečná hodnota použitá na vyhľadávanie by bola:
+

+  /home/karl:.:$TEXMF//tex +
+
Keďže by bolo zbytočné vkladať predvolenú hodnotu na viac ako jedno miesto, Kpathsea mení iba +nadbytočnú ‘:’ a všetko ostatné ponecháva na mieste. Najprv kontroluje začiatočnú ‘:’, potom +koncovú ‘:’ a potom zdvojenú ‘:’. +

+

7.1.5 Expanzia zátvoriek
+

Užitočná črta je expanzia zátvoriek, ktorá funguje tak, že napríklad v{a,b}w sa expanduje na +vaw:vbw. Vnáranie je povolené. Toto sa používa na implementáciu viacnásobných TEXovských +hierarchií, priradením hodnoty $TEXMF s použitím zátvoriek. Napríklad v súbore texmf.cnf +nájdete definíciu podobnú tejto (zjednodušenú pre tento príklad): + + +

+
    TEXMF = {$HOMETEXMF,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN}
+
+

Keď potom napíšete niečo podobné ako + + +

+
    TEXINPUTS = .;$TEXMF/tex//
+
+

bude to znamenať, že po hľadaní v aktuálnom adresári sa najprv prehľadá celý strom +$HOMETEXMF/tex, $TEXMFLOCAL/tex, $TEXMFVAR/tex a $TEXMFMAIN/tex (posledné dva s použitím +databázových súborov ls-R). Je to vhodný spôsob ako spúšťať dve paralelné TEX štruktúry, jednu +nemennú (napríklad na CD) a druhú neustále aktualizovanú novými verziami, akonáhle sú dostupné. +Použitím premennej $TEXMF vo všetkých definíciách máme istotu, že sa vždy ako prvý prehľadá +aktuálny strom. +

+

7.1.6 Expanzia podadresárov
+

Dva alebo viac za sebou nasledujúcich znakov ‘/’ v elemente cesty nasledujúcom za adresárom d je +nahradených všetkými podadresármi d: najprv podadresármi priamo pod d, potom podadresármi +pod nimi, atď. Poradie, v akom sú prehľadávané podadresáre na každej úrovni, nie je +špecifikované. +

Ak po ‘//’ špecifikujete akékoľvek komponenty mena súboru, pridajú sa iba podadresáre so +zodpovedajúcimi komponentami. Napríklad, ‘/a//b’ sa expanduje do adresárov /a/1/b, /a/2/b, +/a/1/1/b, atď, ale nie do /a/b/c alebo /a/1. +

Viacnásobné konštrukcie ‘//’ v ceste sú možné, ale použitie ‘//’ na začiatku cesty je +ignorované. +

+

7.1.7 Typy špeciálnych znakov a ich význam: zhrnutie
+

Nasledujúci zoznam zahŕňa zvláštne znaky v konfiguračných súboroch Kpathsea. +

+

+:
Oddeľovač v špecifikácii cesty; na začiatku alebo na konci cesty nahrádza predvolenú + expanziu cesty. +
+;
Oddeľovač v neunixových systémoch (správa sa ako ‘:’). +
+$
Expanzia premennej. +
+~
Reprezentuje domovský adresár používateľa. +
+{...}
Expanzia zátvoriek, napr. z a{1,2}b sa stane a1b:a2b. +
+//
Expanzia podadresárov. (Môže sa vyskytnúť kdekoľvek v ceste, okrem jej začiatku). +
+%
Začiatok komentáru. +
+\
Znak pokračovania riadku (umožňuje viacriadkové vstupy). +
+!!
Povel na hľadanie súboru iba v databáze, neprehľadáva disk.
+ + +

+

7.2 Databázy názvov súborov

+

Kpathsea minimalizuje prístupy na disk pri vyhľadávaní. Predsa však pri inštaláciách +s dostatočným množstvom adresárov hľadanie súboru v každom možnom adresári môže zabrať +prehnane veľa času (toto platí zvlášť vtedy, keď musia byť prejdené stovky adresárov s fontami). +Kpathsea preto používa externe vytvorený ,databázový‘ súbor nazývaný ls-R, ktorý +mapuje súbory v adresároch a pomáha tak vyhnúť sa vyčerpávajúcemu prehľadávaniu +disku. +

Skratky mien (aliases) v druhom databázovom súbore vám umožňujú dať dodatočné mená +súborom nachádzajúcim sa v zozname ls-R. Toto môže byť užitočné pri prispôsobovaní sa +súborovým konvenciám 8.3 DOSu v zdrojových súboroch. +

+

7.2.1 Súborová databáza
+

Ako bolo vysvetlené hore, meno hlavnej databázy súborov musí byť ls-R. Môžete umiestniť jednu +do koreňa každej hierarchie TEXu vo svojej inštalácii, ktorú chcete, aby bola prehľadávaná +(predvolená je $TEXMF). Kpathsea hľadá ls-R súbory podľa cesty v TEXMFDBS. +

Odporúčaný spôsob ako vytvoriť a udržiavať ‘ls-R’ je spustiť skript mktexlsr zahrnutý +v distribúcii. Je vyvolávaný rôznymi ‘mktex...’ skriptami. Tento skript v princípe iba spúšťa +príkaz

+

+cd /your/texmf/root && \ls -1LAR ./ >ls-R +
+
predpokladajúc, že ls vášho systému vytvára správny výstup (výstup GNU ls je v poriadku). Aby +ste sa ubezpečili, že databáza bude vždy aktuálna, najjednoduchšie je pravidelne ju prebudovávať +cez cron, takže po zmenách v inštalovaných súboroch —  napríklad pri inštalácii alebo aktualizácii +balíka LATEXu —  bude súbor ls-R automaticky aktualizovaný. +

Ak súbor nie je v databáze nájdený, podľa predvoleného nastavenia Kpathsea začne vyhľadávať +na disku. Ak však určitý element cesty začína ‘!!’, bude prehľadávaná iba databáza, nikdy nie +disk. +

+

7.2.2 kpsewhich: samostatné prehľadávanie cesty
+

Program kpsewhich vykonáva prehľadávanie cesty nezávislé od každej aplikácie. Môže byť +užitočný ako vyhľadávací find program na nájdenie súborov v hierarchiách TEXu (veľmi sa +využíva v distribuovaných ‘mktex’… skriptoch). +

+

+>> kpsewhich option filename +
+
Voľby špecifikované v ,option‘ môžu začínať buď ‘-’ alebo ‘--’ a každá skratka, ktorá nie je +viacznačná, je akceptovaná. +

Kpathsea považuje každý element vstupného riadku, ktorý nie je argumentom nejakej +voľby, za meno súboru, ktorý hľadá, a vracia prvý súbor, ktorý nájde. Neexistuje voľba +umožňujúca vrátiť všetky súbory s určitým menom (na to môžete použiť nástroj Unixu +‘find’). +

Najbežnejšie voľby sú popísané nižšie. +

+–dpi=num
+ Nastav rozlíšenie na ,num‘; toto má vplyv iba na ‘gf’ a ‘pk’ vyhľadávanie. ‘-D’ je + synonymom, kvôli kompatibilite s dvips. Predvolená hodnota je 600. + + +
+–format=name
+ Nastav formát na vyhľadávanie na ,name‘. Podľa predvoleného nastavenia je formát + uhádnutý z mena súboru. Pre formáty, ktoré nemajú asociovanú jednoznačnú príponu, + ako napríklad podporné súbory MetaPostu a konfiguračné súbory dvips, musíte + špecifikovať meno ako známe pre Kpathsea, také ako tex alebo enc files. Zoznam + získate spustením kpsewhich --help. +
+–mode=string

Nastav meno módu na ,string‘; toto má vplyv iba na ‘gf’ a ‘pk’ vyhľadávanie. Žiadna + predvolená hodnota: každý mód bude nájdený. +
+–must-exist

Urob všetko preto, aby si našiel súbory. Ak je to potrebné, vrátane hľadania na disku. + Normálne je v záujme efektívnosti prehľadávaná iba databáza ls-R. +
+–path=string

Vyhľadávaj podľa cesty ,string‘ (oddeľovaná dvojbodkou ako zvyčajne) namiesto + hádania vyhľadávacej cesty z mena súboru. Podporované sú ‘//’ a všetky bežné + expanzie. Voľby ‘–path’ a ‘–format’ sa vzájomne vylučujú. +
+–progname=name

Nastav meno programu na ,name‘. Toto nastavenie ovplyvňuje použitie vyhľadávacej + cesty cez nastavenie ,.progname‘ v konfiguračných súboroch. Predvolená hodnota je + ‘kpsewhich’. +
+–show-path=name

Zobrazí cestu použitú na vyhľadávanie súboru s typom ,name‘. Môže byť použitá buď + súborová prípona (‘.pk’, ‘.vf’ a pod.) alebo meno, podobne ako vo voľbe ‘–format’. +
+–debug=num

Nastaví masku výberu ladiacích možností na ,num‘.
+

+

7.2.3 Príklady použitia
+

Pozrime sa na Kpathsea v akcii. Za podčiarknutým príkazom nasleduje výsledok vyhľadávania +v nasledujúcich riadkoch.

+

+> kpsewhich  article.cls +
/usr/local/texmf-dist/tex/latex/base/article.cls +
+
Hľadáme súbor article.cls. Keďže prípona ‘.cls’ je jednoznačná, nemusíme špecifikovať, že +hľadáme súbor typu ,tex‘ (zdrojový súbor TEX). Nájdeme ho v podadresári tex/latex/base pod +koreňovým adresárom ‘TEXMF-dist’. Podobne, všetky nasledujúce súbory budú nájdené bez +problémov vďaka ich jednoznačnej prípone.
+

+> 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 +
+
+

Mimochodom, posledným súborom je bibliografická databáza BibTeXu pre články +TUGBoatu. +

+

+> kpsewhich cmr10.pk +
+
Bitmapové súbory fontov typu .pk sa používajú zobrazovacími programami ako dvips a xdvi. +V tomto prípade je vrátený prázdny výsledok, keďže neexistujú žiadne vopred generované +Computer Modern ‘.pk’ súbory v našom systéme (vzhľadom na to, že v TEX Live implicitne +používame verzie Type1 ).
+

+> kpsewhich wsuipa10.pk +
   /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +
+
Pre tieto fonty (fonetickú abecedu z University of Washington) sme museli vygenerovať ‘.pk’ +súbory. Keďže predvolený mód Metafontu v našej inštalácii je ljfour so základným rozlíšením +600 dpi (dots per inch), je vrátená táto inštancia.
+

+> kpsewhich -dpi=300 wsuipa10.pk +
+
V tomto prípade po špecifikovaní, že nás zaujíma rozlíšenie 300 dpi (-dpi=300), vidíme, že taký +font nie je v systéme k dispozícii. Programy ako dvips alebo xdvi by v tomto prípade vytvorili +požadované .pk súbory, použijúc skript mktexpk. +

Teraz obráťme našu pozornosť na hlavičkové a konfiguračné súbory dvips. Najprv sa +pozrieme na jeden z bežne používaných súborov, všeobecný prológový tex.pro na podporu +TEXu, potom pohľadáme konfiguračný súbor (config.ps) a PostScriptovú mapu fontov +psfonts.map — mapové a kódové súbory majú svoje vlastné cesty na vyhľadávanie a +nové umiestnenie v stromoch texmf. Keďže prípona ‘.ps’ je nejednoznačná, musíme pre +súbor config.ps špecifikovať explicitne, o ktorý typ sa zaujímame (dvips config). +

+

+> 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 +
+
Teraz sa pozrieme na podporné súbory URW Times PostScript. V Berryho schéme meno pre tieto +pomenovania fontov je „utm“. Prvý súbor, ktorý hľadáme, je konfiguračný súbor, ktorý obsahuje +meno mapového súboru:
+ + +

+> kpsewhich –format="dvips config" config.utm +
   /usr/local/texmf-dist/dvips/psnfss/config.utm +
+
Obsah tohoto súboru je
+

+  p +utm.map +
+
čo odkazuje na súbor utm.map, ktorý ideme ďalej hľadať.
+

+> kpsewhich utm.map +
   /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +
+
Tento mapový súbor definuje mená súborov fontov typu Type1 PostScript v kolekcii URW. Jeho +obsah vyzerá takto (zobrazili sme iba jeho časť):
+

+  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 +
+
Zoberme napríklad inštanciu Times Regular utmr8a.pfb a nájdime jej pozíciu v adresárovom +strome texmf použitím vyhľadávania fontových súborov Type1:
+

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

Z týchto príkladov by malo byť zrejmé, ako ľahko môžete nájsť umiestnenie daného súboru. +Toto je zvlášť dôležité, keď máte podozrenie, že ste narazili na zlú verziu súboru, pretože kpsewhich +emuluje vyhľadávanie úplne rovnakým spôsobom ako skutočný program (TEX, dvips a +pod). +

+

7.2.4 Ladiace činnosti
+

Niekedy je potrebné vyšetriť, ako program rozpoznáva referencie na súbory. Aby toto bolo možné +vhodne uskutočniť, Kpathsea ponúka rôzne stupne ladenia: +

    +
  • Volania stat (testy súborov). Pri behu s aktuálnou ls-R databázou by nemal dať takmer + žiaden výstup. +
  • +
  • Referencie do hašovacích tabuliek (ako ls-R databázy, mapové súbory, konfiguračné + súbory). +
  • +
  • Operácie otvárania a zatvárania súboru. + + +
  • +
  • Všeobecná informácia o ceste pre typy súborov hľadaných Kpathsea. Toto je užitočné + pri zisťovaní, kde bola definovaná určitá cesta pre daný súbor. +
  • +
  • Adresárový zoznam pre každý element cesty (vzťahuje sa iba na vyhľadávanie na disku). +
  • +
  • Vyhľadávanie súborov. +
  • +
  • Premenlivé hodnoty.
+

Hodnota -1 nastaví všetky horeuvedené voľby, v praxi pravdepodobne vždy použijete tieto úrovne, ak +budete potrebovať akékoľvek ladenie. +

Podobne s programom dvips nastavením kombinácie ladiacich prepínačov môžete detailne +sledovať, odkiaľ sa berú používané súbory. Aktuálny popis parametrov je možné nájsť +v ../texmf/doc/html/dvips/dvips_2.html. Alternatívne, keď súbor nie je nájdený, ladiaca cesta +ukazuje, v ktorých adresároch program daný súbor hľadal, čo môže naznačovať, v čom sa asi +vyskytol problém. Všeobecne povedané, keďže väčšina programov volá knižnicu Kpathsea vnútorne, +ladiace voľby je možné nastaviť pomocou premennej prostredia KPATHSEA_DEBUG na potrebnú +kombináciu, ako je to popísané v horeuvedenom zozname. (Poznámka pre používateľov Windows: +nie je jednoduché presmerovať všetky hlášky v tomto systéme do súboru. Na diagnostické účely +môžete dočasne priradiť
SET KPATHSEA_DEBUG_OUTPUT=err.log). Uvažujme ako príklad malý zdrojový súbor LATEXu, +hello-world.tex, ktorý obsahuje nasledujúci vstup. + + +

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

Tento malý súbor používa iba font cmr10, takže pozrime sa, ako dvips pripravuje PostScriptový +súbor (chceme použiť Type1 verziu písiem Computer Modern, preto je nastavená voľba +-Pcms1. +

+

+> dvips -d4100 hello-world -Pcms -o +
+
V tomto prípade sme skombinovali dvips ladiacu triedu 4 (cesty k fontom) s expanziou elementu +cesty Kpathsea (pozri Referenčný Manuál dvips, texmf/doc/html/dvips/dvips_toc.html). Výstup, +trochu preusporiadaný, je zobrazený na obrázku 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
+
Obr. 12: Hľadanie konfiguračných súborov
+
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
+
Obr. 13: Hľadanie ,prolog‘ súboru
+
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]
+
Obr. 14: Hľadanie súboru fontu
+ + +

+

dvips začne lokáciou svojich pracovných súborov. Najprv je nájdený texmf.cnf, ktorý obsahuje +definície vyhľadávacích ciest ostatných súborov, potom databáza súborov ls-R (na optimalizáciu +vyhľadávania súborov) a skratky mien súborov (aliases), čo robí možným deklarovať viacero mien +(napr. krátke meno typu ,8.3‘ ako v DOSe a dlhšiu prirodzenejšiu verziu) pre ten istý súbor. Potom +dvips pokračuje v hľadaní všeobecného konfiguračného súboru config.ps skôr, ako začne hľadať +súbor nastavení .dvipsrc (ktorý, v tomto prípade, nie je nájdený). Nakoniec, dvips +nájde konfiguračný súbor pre font Computer Modern PostScript, config.cms (toto bolo +iniciované voľbou-Pcms v príkaze dvips). Tento súbor obsahuje zoznam „mapových“ súborov, +ktoré definujú vzťah medzi menami fontov v TEXu, PostScripte a systéme súborov. +

+

+> more /usr/local/texmf/dvips/cms/config.cms +
   p +ams.map +
   p +cms.map +
   p +cmbkm.map +
   p +amsbkm.map +
+
dvips preto pokračuje v hľadaní všetkých týchto súborov plus všeobecného mapového súboru +psfonts.map, ktorý sa načíta vždy (obsahuje deklarácie bežne používaných PostScriptových +fontov; pozri poslednú časť sekcie 7.2.3, kde sa nachádza viac detailov o narábaní s mapovými +súbormi PostScriptu). +

V tomto bode sa dvips identifikuje používateľovi …

+

+
This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +
+
…potom pokračuje v hľadaní prológového súboru 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 +
+
+

Po nájdení tohoto súboru, dvips vypíše na výstup dátum a čas a informuje nás, že vygeneruje +súbor hello-world.ps, že potrebuje súbor s fontom cmr10, ktorý bude deklarovaný ako +„rezidentný“:

+

+
TeX output 1998.02.26:1204’ -> hello-world.ps +
Defining font () cmr10 at 10.0pt +
Font cmr10 <CMR10> is resident. +
+
Teraz sa rozbehne hľadanie súboru cmr10.tfm, ktorý je nájdený, potom je referencovaných ešte +niekoľko prológových súborov (nezobrazené) a nakoniec je nájdená inštancia fontu Type1, +cmr10.pfb, ktorá je pridaná do výstupného súboru (pozri posledný riadok).
+

+
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] +
+
+

7.3 Možnosti nastavenia za behu programu

+

Ďalšou z pekných čŕt distribúcie Web2C je možnosť kontroly množstva pamäťových parametrov +(najmä veľkosti polí) za behu prostredníctvom súboru texmf.cnf, ktorý číta knižnica Kpathsea. +Nastavenia všetkých parametrov môžete nájsť v časti 3 tohto súboru. Najdôležitejšie riadiace +premenné (čísla riadkov sa vzťahujú na súbor texmf.cnf): +

+

+main_memory
Celkový počet dostupných slov v pamäti pre TEX, Metafont a MetaPost. + Musíte vytvoriť nový formátový súbor pre každé odlišné nastavenie. Napríklad + môžete vygenerovať „obrovskú“ verziu TEXu a zavolať súbor s formátom hugetex.fmt. + S použitím štandardnej špecifikácie mena programu používaného knižnicou Kpathsea, + konkrétna hodnota premennej main_memory sa načíta zo súboru texmf.cnf. +
+extra_mem_bot
Dodatočný priestor pre „veľké“ dátové štruktúry TEXu: „boxy“, „glue“, + „breakpoint(y)“ a podobne. Je to užitočné hlavne ak používate PI CTEX. +
+font_mem_size
Počet dostupných slov pre informáciu o fontoch v TEXu. Toto je viac-menej + celková veľkosť všetkých prečítaných TFM súborov. +
+hash_extra
Dodatočný priestor pre hašovaciu tabuľku mien riadiacej sekvencie. Len 10 000 + riadiacich sekvencií môže byť uložených v hlavnej hašovacej tabuľke; ak máte + veľkú knihu s mnohými krížovými odkazmi, toto nemusí stačiť. Implicitná hodnota + hash_extra je 50000.
+

Samozrejme, tento prvok nemôže nahradiť naozajstné dynamické polia a alokácie pamäte, ale +keďže tieto sa veľmi ťažko implementujú v súčasnej verzii TEXu, tieto parametre počas +behu programu poskytujú praktický kompromis, ktorý dovoľuje aspoň nejakú flexibilitu. +

+

8 Poděkování

+

TEX Live je výsledkem společného úsilí téměř všech skupin uživatelů TEXu. Toto vydání editoval +TEX Live Karl Berry. Seznam ostatních hlavních přispěvatelů, minulých i současných, následuje. +Děkujeme: +

    +
  • Anglickému, německému, holandskému a polskému sdružení uživatelů TEXu (TUG, + DANTE e.V., NTG resp. GUST), kteří společně zajistily nezbytnou technickou a + administrativní infrastrukturu. Připojte se, prosím, k TEXovskému sdružení ve vaší + blízkosti (CSTUG)! (Viz http://tug.org/usergroups.html.) +
  • +
  • Týmu CTANu, pozoruhodně Robinu Fairbairnsovi, Jimu Hefferonovi a Raineru + Schöpfovi, který distribuuje obrazy TEX Live a poskytuje společnou infrastrukturu pro + aktualizaci balíků, na kterých je TEX Live závislý. + + +
  • +
  • Johnu Bowmanovi, za vykonání mnoha změn v jeho pokročilém grafickém programu + Asymptote, aby tento fungoval v TEX Live. +
  • +
  • Peteru Breitenlohnerovi a e-TEX týmu, kteří poskytují stabilní základ budoucnosti + TEXu, a výslovně Peteru za hvězdnou pomoc s používáním osobních nástrojů + GNU v celém TEX Live. +
  • +
  • Jin-Hwan Choovi a celému týmu DVIPDFMx, za jejich vynikajíci ovladač a za schopnost + reagovat na konfigurační problémy. +
  • +
  • Thomasi Esserovi, za překrásný balík teTEX, bez něhož by TEX Live nikdy + neexistovala. +
  • +
  • Michelu Goossensovi, který je spoluautorem původní dokumentace. +
  • +
  • Eitanu Gurarimu, jehož TEX4ht je použito pro HTML verzi této dokumentace a který + každý rok obratem pracoval neúnavně na jeho rozšířeních. Eitan nás předčasně opustil + v červnu 2009 a tuto dokumentaci věnujeme jeho památce. +
  • +
  • Hansi Hagenovi, za mnohá testování a přípravu jeho formátu + ConTEXt (http://pragma-ade.com) pracujícího uvnitř systému TEX Live. +
  • +
  • Hàn Thế Thànhovi, Martinu Schröderovi a pdfTEX týmu (http://pdftex.org) za + pokračující rozšiřování možností TEXu. +
  • +
  • Hartmutu Henkelovi, za významný příspěvek k vývoji pdfTEXu, LuaTEXu atp. +
  • +
  • Taco Hoekwaterovi, za významné úsilí při obnovení vývoje MetaPostu i samotného + (Lua)TEXu (http://luatex.org), za začlenění ConTEXtu do systému TEX Live, za + přidání vícevláknové funkčnosti programu Kpathsea a mnoho dalšího. +
  • +
  • Pawłu Jackowskému, za windowsový instalátor tlpm, a Tomaszi Łuczakovi, za tlpmgui, + používaný v předchozích vydáních. +
  • +
  • Akirovi Kakuto, za poskytnutí windowsovských binárek z jeho distribuce W32TEX pro + japonský TEX (http://w32tex.org) a za množství dalších příspěvků k vývoji. +
  • +
  • Jonathanu Kewovi a SIL, za vyvinutí pozoruhodného systému XeTEXu a za čas a + trápení při jeho integraci do TEX Live, právě tak za výchozí verzi instalačního + programu MacTEXa kromě toho za námi doporučený pomocný program TEXworks. +
  • +
  • Dicku Kochovi, za údržbu MacTEXu (http://tug.org/mactex) ve velmi blízkém + tandemu s TEX Live, a za jeho skvělé veselí přitom. +
  • +
  • Reinhardovi Kotuchovi za důležitý příspěvek k infrastruktuře a instalačnímu programu + TEX Live 2008, rovněž za úsilí při výzkumu Windows, za skript getnonfreefonts a + mnoho dalšího. +
  • +
  • Siep Kroonenbergové, rovněž za důležitý příspěvek k infrastruktuře a instalačnímu + programu TEX Live 2008, zvláště pod Windows a za množství práce při aktualizaci + této příručky, popisující tyto vlastnosti. +
  • +
  • Heikovi Oberdiekovi, za balík epstopdf a mnohé další, za kompresi velikánských + datových souborů pst-geo tak, že jsme je mohli zařadit do instalace a především za jeho + mimořádnou práci na balíku hyperref. +
  • +
  • Petru Olšákovi, který koordinoval a kontroloval velmi pečlivě českou a slovenskou + podporu na TEX Live. +
  • + + +
  • Toshio Oshima za jeho windowsový prohlížeč dviout. +
  • +
  • Manueli Pégourié-Gonnardovi, za pomoc při aktualizaci balíků, vylepšení dokumentace + a rozvoj dokumentu texdoc. +
  • +
  • Fabrice Popineau, za původní podporu Windows na TEX Live a za francouzskou + dokumentaci. +
  • +
  • Norbertovi Preiningovi, přednímu architektovi infrastruktury a instalačního programu + TEX Live 2008 a také za koordinaci Debian verze TEX Live (společně s Frankem + Küsterem), za mnohé průběžné návrhy na zlepšení. +
  • +
  • Sebastian Rahtz, za původní vytvoření systému TEX Live a za jeho údržbu po mnoho + let. +
  • +
  • Philu Taylorovi, za zřízení stahování BitTorrentu. +
  • +
  • Tomasz Trzeciak, za rozsáhlou pomoc s Windows. +
  • +
  • Vladimir Volovich, za významnou pomoc s portováním a jinými problémy údržby, + obzvláště za to, že udělal realizovatelným zahrnutí xindy. +
  • +
  • Staszku Wawrykiewiczovi, hlavnímu testérovi všeho na TEX Live a koordinátorovi + mnoha důležitých polských příspěvků: fontů, windowsové instalace a dalších. +
  • +
  • Olafu Weberovi, pro jeho pečlivou údržbu Web2C. +
  • +
  • Gerbenu Wierdovi, za vytvoření a údržbu původní podpory Mac OS X a za mnohou + integraci a testování. +
  • +
  • Grahamu Williamsovi, na jehož práci na katalogu TEXovských balíků závisíme. +
+

Tvůrci binárek: Ettore Aldrovandi (i386-solaris, x86_64-solaris), Alan Braslau (amd64-kfreebsd, +i386-kfreebsd), Peter Breitenlohner (x86_64-linux), Karl Berry (i386-linux), Akira Kakuto (win32), +Dick Koch (universal-darwin, x86_64-darwin), Nikola Lečić (amd64-freebsd, i386-freebsd), Mojca +Miklavec (mipsel-linux), Norbert Preining (alpha-linux), Jukka Salmi (i386-netbsd), Thomas +Schmitz (powerpc-linux), Boris Veytsman (armel-linux), Vladimir Volovich (powerpc-aix, +sparc-solaris), Olaf Weber (mips-irix). Pro informaci o procesu budování TEX Live, viz +http://tug.org/texlive/build.html. +

Překladatelé této příručky: Boris Veytsman (Ruština), Jjgod Jiang, Jinsong Zhao, Yue Wang, & +Helin Gai (Čínština), Uwe Ziegenhagen (Němčina), Manuel Pégourié-Gonnard (Francouzština), +Marco Pallante (Italština), Nikola Lečić (Srbština), Petr Sojka & Ján Buša (Čeština/ +Slovenština),2 +Staszek Wawrykiewicz (Polština). Webovská stránka dokumentace TEX Live je +http://tug.org/texlive/doc.html. Samozřejmě, nejdůležitější poděkování patří Donaldu +Knuthovi, především za vymyšlení TEXu a také za to, že ho věnoval světu. +

+

9 Historie vydání

+

+

9.1 Minulost

+

Diskuse začala koncem roku 1993, kdy holandská skupina uživatelů TEXu NTG začala práci na CD +4AllTEX pro uživatele MS-DOSu, doufajíc, že doba nazrála pro vydání jednoho CD pro +všechny systémy. Byl to na svou dobu příliš ambiciózní cíl, ale nenastartoval jen velmi +úspěšné 4AllTEX CD, ale také pracovní skupinu TUGu o TEX Directory Structure + + +(http://tug.org/tds), která specifikovala, jak vytvořit konzistentní a spravovatelnou kolekci +TEXových souborů. Kompletní draft TDS byl publikován v prosincovém čísle časopisu +TUGboat v roce 1995 a hned ze začátku bylo jasné, že jedním z žádaných produktů +bude vzorová struktura CD. Distribuce, kterou nyní máte, je přímým výstupem práce +této pracovní skupiny. Evidentní úspěch CD 4AllTEX ukázal, že i unixoví uživatelé by +toužili po podobně jednoduchém systému, a to je také jedno z hlavních aktiv TEX +Live. +

Nejprve jsme vytvořili unixové TDS CD na podzim 1995 a rychle identifikovali teTEX Thomase +Essera jako ideální systém, jelikož již měl multiplatformní podporu a byl koncipován +s perspektivou přenositelnosti. Thomas souhlasil s pomocí a seriózní práce započala začátkem roku +1996. První vydání se uskutečnilo v květnu 1996. Začátkem 1997 Karl Berry dokončil nové hlavní +vydání Web2C, které obsahovalo téměř všechny vlastnosti, které Thomas Esser přidal do teTEXu, +a tak jsme se rozhodli druhé vydání CD postavit na standardním Web2C, s přidáním +skriptu texconfig z teTEXu. Třetí vydání CD bylo založeno na další revizi Web2C, 7.2, +provedené Olafem Weberem; a jelikož zároveň byla hotova nová verze teTEXu, TEX Live +obsahoval téměř všechna její vylepšení. Podobně čtvrté vydání používalo novou verzi +teTEXu a nové vydání Web2C (7.3). TEX Live nyní obsahuje i kompletní systém pro +Windows. +

Pro páté vydání (březen 2000) bylo mnoho částí CD revidováno a zkontrolováno a byly +aktualizovány stovky balíků. Detaily o balících byly uloženy v souborech XML. Ale hlavní změnou +pro TEX Live 5 bylo vynětí softwaru, na kterém byla jakákoliv omezení na šíření (non-free +software). Vše uložené na TEX Live je nyní slučitelné s tzv. ‘Debian Free Software +Guidelines’(http://www.debian.org/intro/free); udělali jsme vše možné, abychom +zkontrolovali licenční podmínky všech balíků, ale budeme vděčni za upozornění na jakékoli +chyby. +

Šesté vydání (červenec 2001) mělo aktualizovaného materiálu ještě více. Hlavní změnou byl +nový instalační přístup: uživatel může volit instalační kolekce. Byly kompletně reorganizovány +jazykové kolekce, takže jejich výběrem se instalují nejen makra, fonty, ale je také připraven +odpovídající soubor language.dat. +

Sedmé vydání v roce 2002 mělo podstatné rozšíření v přidání podpory Mac OS X, kromě +množství aktualizací balíků a programů. Důležitým cílem byla opětná integrace s teTEXem a +korekce odchylek z pátého a šestého vydání. +

+

9.1.1 2003
+

V roce 2003 se neustálou smrští oprav a rozšíření stalo to, že velikost TEX Live již neumožnila +jeho směstnání na jedno CD, a tak došlo k rozdělení na tři různé distribuce (viz oddíl 2.1 na +straně 7). Navíc: +

    +
  • Na žádost LATEX týmu jsme změnili standardní příkazy latex a pdflatex tak, že nyní + používají e-TEX (viz strana 10). +
  • +
  • Byly přidány a jsou nyní doporučovány k používání nové fonty Latin Modern. +
  • +
  • Byla zrušena podpora OS Alpha OSF (podpora HPUX byla zrušena již dříve), jelikož + se nenašel nikdo, kdo by na těchto platformách zkompiloval nové binárky. +
  • +
  • Instalační program Windows byl změněn podstatným způsobem; poprvé bylo + integrováno uživatelské prostředí založené na XEmacsu. +
  • +
  • Důležité pomocné programy pro Windows (Perl, Ghostscript, ImageMagick, Ispell) jsou + nyní instalovány do instalačního adresáře TEX Live. +
  • +
  • Mapovací soubory jmen fontů pro dvips, dvipdfm a pdftex jsou nyní generovány novým + programem updmap a instalovány do texmf/fonts/map. +
  • +
  • TEX, Metafont a MetaPost nyní dávají na výstup většinu vstupních znaků (32 a + + + výš) bez konverze (například do souborů zapisovaných pomocí \write, souborů log, na + terminál), a tedy nejsou překládány do sedmibitové ^^ notace. V TEX Live 7 bylo toto + mapování závislé na nastavení systémových locale; nyní již nastavení locale neovlivní + chování TEXu. Pokud z nějakých důvodů potřebujete výstup s ^^, přejmenujte soubor + texmf/web2c/cp8bit.tcx. Příští verze bude mít čistší řešení. +
  • +
  • Tato dokumentace byla podstatným způsobem přepracována. +
  • +
  • Konečně, jelikož čísla verzí TEX Live již příliš narostla, verze je nyní identifikována + rokem vydání: TEX Live 2004.
+

+

9.1.2 2004
+

Rok 2004 přinesl mnoho změn: +

    +
  • Pokud máte lokálně instalovány fonty, které využívají své vlastní podpůrné soubory + .map nebo (mnohem méně pravděpodobně) .enc, možná budete nuceni tyto soubory + přesunout. +

    Soubory .map jsou nyní vyhledávány jen v podaresářích fonts/map (v každém + stromě texmf), podle cesty TEXFONTMAPS. Podobně, soubory .enc jsou hledány jen + v podadresářích fonts/enc, podle cesty ENCFONTS. updmap se pokusí vypsat varování + o problematických souborech. +

    O metodách zpracování té které informace, prosíme viz + http://tug.org/texlive/mapenc.html. +

  • +
  • TEX-kolekce byla rozšířena přidáním instalovatelného CD, založeného na MiKTEXu, + pro ty, kteří dávají přednost této implementaci před Web2C. Viz oddíl 2 (stránka 7). +
  • +
  • Uvnitř TEX Live byl velký strom texmf předešlých vydání nahrazen třemi: texmf, + texmf-dist a texmf-doc. Viz oddíl 2.2 (stránka 7) a soubory README pro každý z nich. +
  • +
  • Všechny vstupní soubory týkajíci se TEXu jsou teď soustředěny v podadresáři tex + stromů texmf* a nemají oddělené sourozenecké adresáře tex, etex, pdftex, pdfetex + atd. Viz texmf-doc/doc/english/tds/tds.html#Extensions. +
  • +
  • Pomocné dávky (neměly by být volány uživateli) jsou teď umístěny v novém + podadresáři scripts stromů texmf* a mohou být vyhledávány prostřednictvím + kpsewhich -format=texmfscripts. Když tedy máte programy volající tyto dávky, + budou muset být nastaveny. Viz texmf-doc/doc/english/tds/tds.html#Scripts. +
  • +
  • Téměř všechny formáty umožňují většinu znaků tisknout bez konverze pomocí + překladového souboru cp227.tcx, místo jejich konverze pomocí ^^ notace. Konkrétně, + znaky na pozicích 32–256, plus „tab“, „vertikální tab“ a „form feed“ jsou považovány + za tisknutelné a nejsou konvertovány. Výjimky tvoří plain TEX (jen 32–127 jsou + tisknutelné), ConTEXt (0–255 tisknutelné) a formáty systému Omega. Toto implicitní + chování je téměř stejné jak na TEX Live 2003, ale je implementováno čistěji, + s více možnostmi přizpůsobení. Viz texmf/doc/web2c/web2c.html#TCX-files. + (Mimochodem, se vstupem Unicode, může TEX na výstupu vypsat posloupnosti + částečných znaků při výpisu chybových kontextů, protože je bytově orientován.) +
  • +
  • pdfetex je teď implicitní stroj pro všechny formáty kromě samotného (plain) texu. (Ten + jistěže generuje DVI, když je spuštěn jako latex atd.) To znamená, kromě jiných věcí, že + mikrotypografické rozšíření pdftexu jsou dostupné v LATEXu, ConTEXtu atd., stejně + jako rozšíření e-TEXu (texmf-dist/doc/etex/base/). + + +

    To také znamená, že užití balíku ifpdf (pracuje s plainem i LATEXem) nebo + ekvivalentního kódu je důležitější než kdykoliv předtím, protože jednoduché testování, + zda je \pdfoutput nebo nějaký jiný primitiv definován, není spolehlivý způsob určení, + zda je generován PDF výstup. Tento zpětný krok jsme udělali co nejvíc kompatibilní + letos, ale v příštím roce \pdfoutput může být definován, dokonce i když se zapisuje + do DVI. +

  • +
  • pdfTEX (http://pdftex.org/) má množství nových vlastností: +
      +
    • \pdfmapfile a \pdfmapline poskytují podporu mapování fontů uvnitř + dokumentu. +
    • +
    • Mikrotypografické rozšíření fontu může být použito jednodušeji.
      http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html +
    • +
    • Všechny parametry, které byly předtím nastavovány ve zvláštním konfiguračním + souboru pdftex.cfg, musí teď být nastaveny pomocí primitivů, obyčejně + v pdftexconfig.tex; pdftex.cfg není dále podporován. Všechny existující .fmt + soubory musí být znovu vytvořeny při změně souboru pdftexconfig.tex. +
    • +
    • Další informace viz manuál pdfTEXu: texmf/doc/pdftex/manual. +
    +
  • +
  • Primitiv \input texu (a mf a mpost) teď akceptuje dvojité uvozovky se jmény obsahujícími + mezery a s jinými zvláštními znaky. Typické příklady: + + +
    +
      \input "filename with spaces"   % plain
      \input{"filename with spaces"}  % latex
    +

    Pro další informace viz manuál Web2C: texmf/doc/web2c. +

  • +
  • Podpora encTEXu je nyní zahrnuta uvnitř Web2C, v důsledku toho ve všech + TEXových programech, použitím volby -enc jen v případě, že formáty jsou + vytvořeny. encTEX podporuje obecné překódování vstupu a výstupu, čímž umožňuje + plnou podporu kódování Unicode (v UTF-8). Viz texmf-dist/doc/generic/enctex/ a + http://www.olsak.net/enctex.html. +
  • +
  • Aleph, nový stroj kombinující e-TEX a Omega, je nyní k dispozici. Trochu informace najdete + na texmf-dist/doc/aleph/base a http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph. + Formát pro Aleph, založený na LATEXu se jmenuje lamed. +
  • +
  • Nejnovější vydání LATEXu má novou verzi LPPL — teď oficiálně schválená Debian licence. + Rozmanité další aktualizace najdete v souborech ltnews texmf-dist/doc/latex/base. +
  • +
  • Je dodán dvipng, nový program pro konvertování DVI na obrazové soubory PNG. Viz + texmf/doc/man/man1/dvipng.1. +
  • +
  • Zredukovali jsme balík cbgreek na „středně“ velkou sadu fontů, se souhlasem a na radu autora + (Claudio Beccari). Odstraněné fonty jsou neviditelné, obrysové, a průhledné, relativně + zřídka se používají a my jsme potřebovali místo. Úplná sada je dostupná z CTAN + (http://mirror.ctan.org/tex-archive/fonts/greek/cb). +
  • +
  • oxdvi byl odebrán; použijte jednoduše xdvi. +
  • +
  • Příkazy ini a vir (linky) pro tex, mf a mpost se již nevytvářejí, například initex. Funkčnost + instrukce ini byla po celá léta přístupna prostřednictvím volby -ini na příkazovém + řádku. +
  • +
  • Podpora platformy i386-openbsd byla zrušena. Jelikož balíček tetex v BSD Ports systému je + dostupný a GNU/Linux a FreeBSD binárky byly dostupné, zdálo se nám, že čas dobrovolníků + může být využit lépe někde jinde. +
  • +
  • Na sparc-solaris (přinejmenším) jste možná museli nastavovat proměnné prostředí + LD_LIBRARY_PATH, aby běžely programy t1utils. Je to tím, že jsou kompilovány v C++, a + neexistuje standardní umístění ,runtime‘ knihoven. (To není novinka roku 2004, ale nebylo to + dřív zdokumentováno.) Podobně, na mips-irix, ‘runtime’knihovny pro MIPS 7.4 jsou + nezbytné.
+

+

9.1.3 2005
+

Rok 2005 přinesl jako obvykle množství modernizací balíčků a programů. Infrastruktura zůstala +relativně stabilní z roku 2004, ale nutně také nastaly nějaké změny: +

    +
  • Byly zavedeny nové skripty texconfig-sys, updmap-sys a fmtutil-sys, které mění + konfiguraci v systémových stromech. Skripty texconfig, updmap a fmtutil teď mění + uživatelské (user-specific) soubory v $HOME/.texlive2005. + + +
  • +
  • Na specifikaci stromů obsahujících konfigurační soubory (uživatelské resp. systémové) + byly zavedeny odpovídající nové proměnné TEXMFCONFIG resp. TEXMFSYSCONFIG. Tedy, + možná budete potřebovat přesunout osobní verze souborů fmtutil.cnf a updmap. + cfg na tato místa; jiná volba je předefinování TEXMFCONFIG nebo TEXMFSYSCONFIG + v souboru texmf.cnf. V každém případě skutečná pozice těchto souborů a hodnoty + TEXMFCONFIG a TEXMFSYSCONFIG se musejí shodovat. Viz oddíl 2.3, strana 8. +
  • +
  • Loni jsme ponechali \pdfoutput a jiné primitivy nedefinovány pro výstup DVI, přestože + byl používán program pdfetex. Letos, jak jsme slíbili, jsme odstranili toto zpětně + kompatibilní opatření. Tedy když váš dokument používá \ifx\pdfoutput\undefined + na testování výstupu do formátu PDF, je nutné ho změnit. Můžete k tomu použít + balík ifpdf.sty (který funguje v plain TEXu i LATEXu), nebo použít jeho logiku. +
  • +
  • Loni jsme změnili většinu formátů tak, aby vypisovaly (8bitové) znaky tak jak jsou (viz + předcházející sekci). Nový TCX soubor empty.tcx teď poskytuje jednodušší cestu + k dosažení původního zápisu ^^ když si tak budete přát, jako v případě: + + +
    +
      latex --translate-file=empty.tcx yourfile.tex
    +

    +

  • +
  • Nový program dvipdfmx je zařazen pro převedení z DVI do PDF; ten je platnou aktualizací + programu dvipdfm (který je též ještě k dispozici, i když ho nedoporučujeme). +
  • +
  • Nové programy pdfopen a pdfclose byly přidány, aby poskytly možnost znovu otevřít PDF + soubory v programe Adobe Acrobat Reader bez jeho restartu. (Jiné prohlížeče PDF, + především xpdf, gv a gsview, nikdy netrpěly tímto problémem.) +
  • +
  • Kvůli důslednosti proměnné HOMETEXMF a VARTEXMF byly přejmenovány na TEXMFHOME resp. na + TEXMFSYSVAR. Je tu také TEXMFVAR, která je implicitně uživatelsky závislá (user-specific). Viz + první bod výše.
+

+

9.1.4 2006–2007
+

V letech 2006–2007 byl rozsáhlým přírustkem na TEX Live program XeTEX, přístupný jako +programy xetex a xelatex; viz http://scripts.sil.org/xetex. +

MetaPost byl také podstatně aktualizován, s mnoha plány do budoucnosti +(http://tug.org/metapost/articles), podobně pdfTEX (http://tug.org/applications/pdftex). +

Formát TEX .fmt (vysokorychlostní formát) a podobně soubory MetaPost a Metafont jsou teď +uloženy v podadresářích texmf/web2c, namísto přímého uložení v něm (ačkoliv je adresář stále +prohledáván, v zájmu stávajících formátů .fmt). Podadresáře nesou jména používaných +programů, například tex nebo pdftex nebo xetex. Tato změna by měla při běžném používání +zůstat nepostřehnuta. +

Program (plain) tex již nečte první řádky %& aby určil, jaký formát má spustit; je to čistý +knuthovský TEX. (LATEX a všechny ostatní programy stále čtou řádky %&). Pochopitelně se +během roku (jako obvykle) vyskytly stovky jiných aktualizací balíků a programů. Jako obyčejně, +zkontrolujte, prosím, aktualizace na CTANu (http://mirror.ctan.org). +

Vnitřně, strom zdrojových textů je nyní uložen v Subversion, se standardním webovským +rozhraní m pro jeho prohlížení, kam směruje odkaz z naší domovské stránky. Třebaže není +v konečné verzi viditelný, očekáváme, že to poskytne základ pro stabilní rozvoj v letech +následujících. +

Nakonec, v květnu 2006 Thomas Esser oznámil, že už nebude aktualizovat teTEX +(http://tug.org/tetex). Výsledkem je nárůst zájmu o TEX Live, především mezi distributory +GNU/Linuxu. (Na TEX Live se nachází nové instalační schéma tetexu, poskytující +přibližný ekvivalent.) Doufáme, že to možná povede ke zlepšení prostředí TEXu pro +všechny. +

+

9.1.5 2008
+

V roce 2008 byla celá infrastruktura TEX Live přebudována a znovu implementována. Úplná +informace o instalaci je nyní uložena v textovém souboru tlpkg/texlive.tlpdb. +

Mezi dalšími věcmi je konečně možná aktualizace instalace TEX Live z internetu po předchozí +instalaci. Tuto vlastnost poskytoval MiKTEX již řadu let. Předpokládáme pravidelnou aktualizaci +nových balíků po jejich vydání na CTANu. +

Obsažený je významnější nový stroj (engine) LuaTEX (http://luatex.org); kromě lepší +přizpůsobivosti v sázení je možno tento vynikající skriptovací jazyk použít jak uvnitř, tak +i mimo TEXovské dokumenty. +

Podpora Windows a unixových platforem je nyní jednotnější. Zejména, většina skriptů +Perlu a Lua je teď k dispozici pod Windows, s použitím Perlu distribuovaného na TEX +Live. + + +

Nový skript tlmgr (sekce 5) je všeobecné rozhraní pro správu TEX Live po předchozí instalaci. +Ovládá aktualizaci balíků a následující znovuvytvoření formátů, mapovacích souborů a +jazykových souborů, volitelně zahrnující lokální doplňky. +

S příchodem programu tlmgr, činnosti programu texconfig na editaci formátů a konfiguračních +souborů dělení slov jsou nyní blokované. +

Program xindy pro tvorbu rejstříků (http://xindy.sourceforge.net/) je nyní zahrnut na +většině platforem. Nástroj kpsewhich může nyní ohlásit všechny výskyty pro daný soubor (option +–all) a omezené výskyty pro daný podadresář (option –subdir). +

Program dvipdfmx zahrnuje nyní funkčnost extrakce informace o ‘bounding boxu’, pomocí +povelu extractbb; toto byl jeden z posledních rysů, které poskytoval dvipdfm, avšak ne +dvipdfmx. +

Fontové přezdívky Times-Roman, Helvetica, atd. byly odstraněné. Různé balíky očekávaly +jejich různé chování (především, že budou mít různé kódování) a nenalezlo se vhodné řešení +tohoto problému. +

Formát platex byl odstraněn pro konflikt jmen s japonštinou platex; podporu polštiny nyní +zajišťuje balík polski. +

Soubory WEBovských řetězců (pool) jsou nyní zkompilované do binárek pro usnadnění +aktualizací. +

A nakonec, v tomto vydání jsou zahrnuty změny provedené Donaldem Knuthem v jeho úpravách TEXu +roku 2008 (‘TEX tuneup of 2008’). Viz http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf. +

+

9.1.6 2009
+

Od roku 2009 je standardní výstupní formát Lua(LA )TEX PDF, pro využití výhody LuaTEXovské +podpory OpenType a jiné. Nové binárky nazvané dviluatex a dvilualatex spouští LuaTEX při +výstupu DVI. Domovská stránka LuaTEXu je http://luatex.org. +

Původní systém (engine) Omega a formát Lambda format byly odstraněny po diskusích +s autory systému Omega. Zůstaly aktualizované programy Aleph a Lamed, podobně jako pomocné +programy systému Omega. +

Obsažené je nové vydání fontů AMS Type 1, včetně Computer Modern: do zdrojáků Metafontu +bylo zapracováno několik málo změn tvarů, které za léta udělal Don Knuth a byl aktualizován +hinting fontů. Tvary fontů Euler byly důkladně překresleny Hermannem Zapfem (viz +http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf). Ve všech případech zůstaly +metriky nezměněny. Domovská stránka AMS fontů je http://www.ams.org/tex/amsfonts.html. +

Pomocný program – nový GUI editor – TEXworks je zahrnut pro Windows, ale také +v MacTEXu. Pro jiné platformy a další informace, viz domovskou stránku TEXworks +http://tug.org/texworks. Je to multi-platformní prostředí inspirované editorem TeXShop +v Mac OS X, zaměřené na jednoduché použití. +

Grafický program Asymptote je zahrnutý pro více platforem. Realizuje textově založený jazyk +pro popis grafiky, blízký k MetaPostu, avšak s pokročilou podporou 3D a jinými vlastnostmi. Jeho +domovská stránka je http://asymptote.sourceforge.net. +

Samostatný program dvipdfm byl nahrazen programem dvipdfmx, který pod tímto jménem +pracuje ve zvláštním režimu kompatibility. dvipdfmx zahrnuje podporu CJK a má nahromaděny +mnohé další úpravy za léta od posledního vydání dvipdfm. Domovská stránka DVIPDFMx je +http://project.ktug.or.kr/dvipdfmx. +

Binárky pro platformy cygwin a i386-netbsd jsou nyní v TEX Live zahrnuty, zatímco nám bylo +oznámeno, že uživatelé OpenBSD získají TEX pomocí jejich systémů balíků a navíc se +objevily potíže při vytváření binárek, které by měli šanci fungovat ve více než jedné +verzi. +

Z dalších menších změn: nyní používáme xz kompresi, stabilní náhradu za lzma +(http://tukaani.org/xz/); a literál $ je povolen v názvech souborů pokud není uveden na +začátku jména známé proměnné; knihovna Kpathsea je teď vícevláknová (použitelné +v MetaPostu); budování celého TEX Live je nyní založeno na systému Automake. +

Závěrečná poznámka o minulosti: všechna vydání TEX Live, spolu s podpůrným materiálem +jako např. CD labels jsou dostupná na ftp://tug.org/historic/systems/texlive. +

+ + +

9.1.7 2010
+

V roce 2010 je předvolenou verzí pro výstup PDF verze 1.5, umožňující větší kompresi. To +se týká všech nástrojú TEXu používaných na vytváření PDF a dvipdfmx. Načtením +LATEXovského balíčku pdf14 se provede zpětná změna na PDF 1.4, nebo nastavte +\pdfminorversion=4. +

pdf(LA )TEX nyní automaticky konvertuje požadovaný soubor ve formátu Encapsulated +PostScript (EPS) na PDF, prostřednictvím balíku epstopdf, když a pokud je načten konfigurační +soubor LATEXu graphics.cfg a pokud je výstup do PDF. Implicitní nastavení jsou +zamýšlené pro eliminaci možností přepsání ručně vytvořených PDF souborů, ale můžete +také docela zakázat načtení epstopdf zadáním \newcommand{\DoNotLoadEpstopdf}{} +(nebo \def...) před deklarací \documentclass. Balík epstopdf nebude zaveden rovněž +pokud bude použit balík pst-pdf. Pro další podrobnosti viz dokumentaci balíku epstopdf +(http://ctan.org/pkg/epstopdf-pkg). +

Další podobnou změnou je, že vykonání několika málo externích příkazů z TEXu, +prostřednictvím vlastnosti \write18, je nyní implicitně povoleno. Tyto příkazy jsou repstopdf, +makeindex, kpsewhich, bibtex a bibtex8; seznam je uveden v texmf.cnf. Prostředí, která musí +zakázat všechny takové externí povely můžou zrušit tuto volbu v instalátoru (viz oddíl 3.2.4), +nebo po instalaci přepsat hodnotu spuštěním tlmgr conf texmf shell_escape 0. +

Ještě další podobnou změnou je to, že BibTeX a Makeindex nyní implicitně odmítají zapsat +své výstupní soubory do libovolného adresáře (jako samotný TEX). Je to proto, že nyní můžou být +povolené pro použití omezeným \write18. Aby se to změnilo, může být nastavena proměnná +prostředí TEXMFOUTPUT, nebo změnené nastavení openout_any. +

XeTEX nyní podporuje posun (kerning) okrajů podél stejných linií jako pdfTEX. (Expanze +fontů není aktuálně podporována.) +

Program tlmgr nyní standardně ukládá jednu zálohu každého aktualizovaného balíku (tlmgr +option autobackup 1), tudíž přerušené aktualizace balíků mohou být snadno vráceny příkazem +tlmgr restore. Pokud děláte poinstalační aktualizace a nemáte dostek místa na disku pro zálohy, +spusťte tlmgr option autobackup 0. +

Byly zařazeny nové programy: nástroj (engine) pTEX a příbuzné pomůcky pro sazbu +Japonštiny; program BibTeXU pro BibTeXumožňující použití Unicode; utility chktex +(http://baruch.ev-en.org/proj/chktex) na kontrolu dokumentů (LA )TEXu; překladač dvisvgm +z DVI do SVG (http://dvisvgm.sourceforge.net). +

Jsou dodány binárky těchto nových platforem: amd64-freebsd, amd64-kfreebsd, i386-freebsd, +i386-kfreebsd, x86_64-darwin, x86_64-solaris. +

Změna TEX Live 2009, kterou jsme si nevšimli: četné binárky týkající se TEX4ht +(http://tug.org/tex4ht) byly odstraněny z adresářů binárek. Obecně použitelný (generic) +program mk4ht může být použit na spuštění libovolné z rozličných kombinací tex4ht. +

Nakonec, vydání TEX Live na TEX Collection DVD již nemůže být (kupodivu) spouštěné +živě. Samostatné DVD již nemá dostatek místa. Jednou výhodou je, že instalace z fyzického +DVD je mnohem rychlejší. +

+

9.1.8 2011
+

Binárky Mac OS X (universal-darwin a x86_64-darwin) nyní pracují jenom pro Leopard nebo +pozdější; Panther a Tiger již nejsou podporovány. +

Program biber pro zpracování bibliografie je zahrnut pro běžné platformy. Jeho rozvoj je úzce +spojený s balíkem biblatex, který úplně přebudovává bibliografické prostředky poskytované +LATEXem. +

Program MetaPost (mpost) již nevytváří nebo nepoužívá soubory .mem. Potřebné soubory, jako +je plain.mp, se jednoduše načítají při každém spuštění. To souvisí s podporou MetaPostu jako +knihovny, což je další důležitá změna, třebas neviditelná pro uživatele. +

Implementace updmap v programu Perl, předtím používána pouze pod Windows, byla +vylepšena a nyní je používána na všech platformách. Výsledkem toho je, že uživatel by neměl vidět +žádné změny, kromě toho, že program běží mnohem rychleji. +

+

9.2 Současnost

+ + +

tlmgr podporuje aktualizace z vícenásobných síťových repositářů. Více obsahuje oddíl o +vícenásobných repositářích ve výstupu příkazu tlmgr help. +

Parametr \XeTeXdashbreakstate je implicitně nastaven na 1, pro xetex i xelatex. To +umožňuje zalomení řádek po pomlčkách a spojovnících, co vždycky bylo chováním plain TEXu, +LATEXu, LuaTEXu, atd. Stávající dokumenty XeTEXu, které si musí udržet perfektní +kompatibilitu zalomení řádek musí explicitně nastavit hodnotu \XeTeXdashbreakstate +na 0. +

Výstupní soubory generované programy pdftex a dvips, mimo jiné, můžou teď převýšit +2gb. +

Do výstupu programu dvips je implicitně zahrnuto 35 standardních PostScriptových fontů, +protože existuje tolik jejich různých verzí. +

V omezeném režimu vykonávání \write18, který je implicitně nastaven, mpost je teď povoleným +programem. +

Soubor texmf.cnf je také k nalezení v adresáři ../texmf-local, například, +/usr/local/texlive/texmf-local/web2c/texmf.cnf, pokud existuje. +

Skript updmap čte soubor updmap.cfg podle stromu místo globálního konfiguračního souboru. +Tato zména by neměla být viditelná, pokud needitujete vaše soubory updmap.cfg přímo. Více +obsahuje výstup příkazu updmap –help. +

Platformy: byly přidány armel-linux a mipsel-linux; sparc-linux není více v základní distribuci, +ale je dostupný pro instalaci jako jedna z uživatelských binárek, společně s různýma jinýma +platformami: http://tug.org/texlive/custom-bin.html. +

+

9.3 Budoucnost

+

TEX Live není dokonalý! A nikdy nebude. Máme v úmyslu pokračovat v pravidelných vydáních a +rádi bychom poskytovali více podpůrných materiálů, programů, včetně instalačních, a +jistěže aktualizovaný a lépe zkontrolovaný strom maker a fontů. Tato práce je prováděna +dobrovolníky v jejich limitovaném volném čase a tedy vždycky je co dělat. Viz, prosím, +http://tug.org/texlive/contribute.html. +

Prosíme, pošlete opravy, návrhy, náměty a nabídky pomoci na: +

+

Šťastné TEXování! +

1Od verzie TEX Live 7 nie je nutné túto voľbu nastavovať, pretože Type 1 fonty sú načítané +implicitne. +

2Ke korektuře českého a slovenského překladu přispěli v letech 2003–2012 kromě autorů Jaromír Kuben, +Milan Matlák, Tomáš Obšívač, Karel Píška, Tomáš Polešovský, Libor Škarvada, Zdeněk Wagner a další. +Poděkování patří také Michalu Mádrovi, který dokončil editaci souboru cs.po a přeložil také soubor +README.EN.

+ + + + + + diff --git a/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.pdf b/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.pdf new file mode 100644 index 00000000000..104a1128097 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.pdf differ diff --git a/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.tex b/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.tex new file mode 100644 index 00000000000..eff9dc28583 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-cz/texlive-cz.tex @@ -0,0 +1,3734 @@ +% +% texlive-cz/texlive-cz.tex - TeXlive 2012 documentation +% CzechoSlovak translation (part is in Czech and part is in Slovak :-) +% +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +% 2012/06/09: v1.44 further typos (PS) +% 2012/06/05: v1.43 typos, checking 2012 modifications (PS) +% 2012/05/21: v1.42 translation of 2012 modifications (JB) +% 2011/06/28: v1.41 switch to utf8, typos (PS) +% 2011/06/24: v1.40 small fixes, deactivation of - (babel) (PS) +% 2011/06/16: v1.39 translation of new things for 2011 (JB) +% 2010/06/26: v1.38 translation of new things for 2010 (JB) +% 2009/10/20: v1.37 typos (by Piska) fixed, together with other edits (PS) +% 2009/09/23: v1.36 first 2009 version commited to TL 2009 (PS) +% 2009/09/02: v1.35 translation of new things for 2009 (JB) +% 2008/08/12: v1.34 prvni korektury prekladu 2008 +% 2008/08/02: v1.33 aktualizacia prekladu 2008 +% 2007/01/24: v1.32 XeTeX URL and HH (config.manpath) change +% 2007/01/22: v1.31 last minute corrections by Staszek (2x) and ZW +% 2007/01/15: v1.30 corrections and typos +% 2007/01/14: v1.29 texlive2007 version (JB&PS) +% 2005/11/01: v1.28 last minute Staszek additions +% 2005/10/31: v1.27 texlive2005 version (JB&PS) +% 2004/11/18: v1.26 final release cleanup, latest changes by Staszek +% 2004/11/17: v1.24,25 typos corrected +% 2004/11/15: v1.21,22,23 corrections by KB, JB and others entered +% 2004/11/14: v1.20 first texlive2004 version (JB&PS) +% 2004/01/30: v1.19 postbulletin version release for CSTUG web +% 2004/01/22: v1.18 minor changes before final-2003 source release +% 2004/01/19: v1.16, v1.17 last-minute corrections before sending +% CSTUG Bulletin to print +% 2004/01/18: modifications for CS bulletin by Z. Wagner +% 2004/01/07: version 1.15 +% 2003/12/08-10: Slovak and other Czech typos corrected +% 2003/12/06: Czech language typos/errors entered +% 2003/09/23: prepositions checked, v1.03 +% 2003/09/23: some typos, jch's email, v1.02 +% 2003/09/22: further error corrections, v1.01 +% 2003/09/18: final checking and error corrections, v1.0 release +% 2003/09/17: another changes in English version incorporated +% 2003/09/08: changes in English version from 09/04 to 09/06 incorporated +% 2003/09/06: fixes from Staszek +% 2003/09/05: touched by Karl +% 2003/09/04: fixes from Staszek and Fabrice +% 2003/09/05: translation started from English version as of Sep 1st by +% Petra & Petr S. +% 2003/09/01: fixes from Volker. +% 2003/08/12: fixes from Christer Gustafsson . +% 2003/07/07: substantial revisions by karl. +% ... deleted +% +% TODO +% +% -- Priklady ve slovenske casti aktualizovat z~anglicke verze +% (zustaly dosud z verze TeXlive 6). +% +% Translations: +% Copyright (c) 2003--2012 Petr Sojka +% Copyright (c) 2004--2012 Ján BuÅ¡a +% Copyright (c) 2003 Petra Sojková +% Copyright (c) 2001 Janka Chlebíková +% Permission is granted to copy, distribute and/or modify this document +% under the terms of the GNU Free Documentation License, Version 1.2 +% or any later version published by the Free Software Foundation; +% with no Invariant Sections, no Front-Cover Texts, and no +% Back-Cover Texts. A copy of the license is included in +% the section entitled "GNU Free Documentation License". + +\newif\ifforbulletin +\forbulletinfalse +%\forbulletintrue +\newcommand\cstlversion{1.44} +\newcommand\cstldate{8.\ \v cervna 2012} +\ifforbulletin + \providecommand\Status{3} % version for CSTUG bulletin Zpravodaj + \else + \providecommand\Status{1} % 2 html alebo 1 pdf +\fi +% +\ifnum\Status=2 % e.g. html generation via tex4ht + \def\classname{article} % need different doc class for html + \def\classoptions{11pt} +\else + \ifnum\Status=3 % Zpravodaj + \def\classname{article} + \def\classoptions{twoside,a5paper} +% \pdfpaperwidth=147.5mm +% \pdfpaperheight=210mm + \else \def\classname{artikel1} + \def\classoptions{11pt} + \fi +\fi + +\listfiles +\documentclass[\classoptions,slovak,english,czech]{\classname} +\usepackage{tex-live} +\usepackage[T1]{fontenc} +\usepackage[utf8x]{inputenc} +\usepackage[czech]{babel}% +\usepackage{csquote} % do define \uv +\newcommand{\singleuv}[1]{,#1`} +\newcommand{\ctt}{\url{news:comp.text.tex}} +\newcommand{\kB}{KiB} +\newcommand{\MB}{MiB} +\newcommand{\CSTUG}{\CS TUG} +\providecommand*{\GS}{Ghost\-script\xspace} +\newcommand\TKCS{\textsf{\TeX-kolekce}} +\clubpenalty 10000 +\widowpenalty 10000 +\def\p.{na stranÄ›~} +\newcommand\tubreflect[1]{% + \@ifundefined{reflectbox}{% + \message{A graphics package must be loaded for \string\XeTeX}% + }{% + \ifdim \fontdimen1\font>0pt + \raise 1.75ex \hbox{\kern.1em\rotatebox{180}{#1}}\kern-.1em + \else + \reflectbox{#1}% + \fi + }% +} +\def\tubhideheight#1{\setbox0=\hbox{#1}\ht0=0pt \dp0=0pt \box0 } + +\begin{document} +\ifnum\Status=2 + % this ugliness is because the normal definition of ' for tex4ht + % tries to go into math mode. I don't under + \def'{\char`\'} +\fi + +\selectlanguage{czech} +\hyphenation{Meta-Postu} +\errorcontextlines=20 +\shorthandoff{-} +\title{{\huge\textsf{\TL{} 2012}}\\[3mm] + PříruÄka \protect\TeXLive{}, CS verze \cstlversion} +\date{\cstldate} + +\author{Karl Berry, editor \\[3mm] + \url{http://tug.org/texlive/}\\[3mm] +%B% \ifnum \Status=2 +%B% \includegraphics[bb=0 0 824 741]{../pictures/front} \\[5mm] +%B%\else +%B%\ifnum \Status=3 +%B% \includegraphics[width=.5\linewidth]{../pictures/bw-front2} \\[5mm] +%B%\else +%B% \includegraphics[width=.5\linewidth]{../pictures/front} \\[5mm] +%B%\fi \fi +%B% \small \textit{Kontaktní osoby pro tuto dokumentaci:}\\[3mm] +%B% \small \begin{tabular}{lcr} +%B% Czech/Slovak & Petr Sojka & \email{sojka (at) fi.muni.cz} \\ +%B% & Ján BuÅ¡a & \email{jan.busa (at) tuke.sk} \\ +%B% English & Karl Berry & \email{karl (at) freefriends.org} \\ +%B% French & Fabrice Popineau & \email{fabrice.popineau (at) supelec.fr} \\ +%B% German & Volker R.\,W.\ Schaa & \email{volker (at) dante.de} \\ +%B% Polish & Staszek Wawrykiewicz & \email{staw (at) gust.org.pl} \\ +%B% Russian & Boris Veytsman & \email{borisv (at) lk.net} +%B% \end{tabular} +% \tlimage{front}{bb=0 0 824 741}{.7\linewidth} + } + +% comes out too close to the toc, and we know it's page one anyway. +\thispagestyle{empty} +\maketitle + +\ifnum\Status=3 + \thispagestyle{csbul} + \ifforbulletin \setcounter{page}{113} % valid for 3-4/2003 + \else \raggedbottom + \fi +\fi + + PÅ™eklad + 2004--2012 Ján BuÅ¡a, + 2001 Janka Chlebíková, + 2003--2012 Petr Sojka a + 2003 Petra Sojková + je šířen pod GNU FDL licencí. + + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.2 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no + Back-Cover Texts. + +%\begin{multicols}{2} +\tableofcontents +%\listoftables +%\end{multicols} + +\section{Úvodem} +\label{sec:intro} + +\subsection{\TeX\ Live a kolekce \TeX{}u} + +Tento dokument popisuje základní vlastnosti distribuce \TeXLive{} 2012, +což je instalace \TeX{}u a příbuzných programů pro \acro{GNU}/Linux a další +unixové systémy, \MacOSX{} a (32bitové) systémy Windows. + +\TL{} můžete získat stažením z~internetu, nebo na \TKCS{} \DVD. +NÄ›které skupiny uživatelů \TeX{}u distribuují \DVD\ svým Älenům. +Obsah \DVD\ je struÄnÄ› popsán v~oddíle~\ref{sec:tlcoll.dists}. +\TL{} a \TKCS{} spolu jsou výsledkem spoleÄného úsilí +skupin uživatelů \TeX u. Tento dokument popisuje pÅ™evážnÄ› samotný \TL{}. + +\TL{} obsahuje \file{.exe} soubory pro \TeX, \LaTeXe, \ConTeXt, +\MF, \MP, \BibTeX{} a mnoho dalších programů vÄetnÄ› obsáhlého +seznamu maker, fontů a dokumentace spolu s~podporou +sazby v~mnoha různých svÄ›tových jazycích. + +%Aktuální verze použitého software je v~archívu +%\acro{CTAN} na \url{http://www.ctan.org/}. + +Krátký seznam hlavních zmÄ›n v~této verzi \TL{} +najdete na konci tohoto dokumentu, v~oddílu~\ref{sec:history} +na stranÄ›~\pageref{sec:history}. + +\htmlanchor{platforms} +\subsection{Podpora operaÄních systémů} +\label{sec:os.support} + +\TL{} obsahuje binárky pro mnohé unixové platformy, +vÄetnÄ› \GNU/Linux, \MacOSX a Cygwin. +Obsažené zdrojové texty mohou být zkompilovány +pro platformy, pro které neposkytujeme binárky. + +Co se týÄe Windows: podporovány jsou Windows \acro{XP} +a pozdÄ›jší verze. Windows~2000 +jeÅ¡tÄ› bude pravdÄ›podobnÄ› z~nejvÄ›tší Äásti fungovat. +Pro Windows nejsou k~dispozici 64bitové \file{.exe} soubory, ale +32bitové binárky by mÄ›ly běžet na 64bitových systémech. + +Alternativní Å™eÅ¡ení pro Windows a \MacOSX{} najdete +v~oddíle~\ref{sec:tlcoll.dists}. + +\subsection{Základní instalace \protect\TL{}} +\label{sec:basic} + +\TL{} můžete nainstalovat buÄ z~\DVD{} nebo z~internetu +(\url{http://tug.org/texlive/acquire.html}). Samotný síťový +instalaÄní program je malý a vÅ¡e požadované stáhne z~internetu. + +InstalaÄní program na \DVD{} vám umožní instalaci na lokálním +disku. \TL{} nemůžete spustit přímo z~\DVD{} +(nebo z~jeho \code{.iso} obrazu), avÅ¡ak můžete pÅ™ipravit +spustitelnou instalaci, například, na klíÄi \USB{} (viz +oddíl~\ref{sec:portable-tl}). Instalace je popsána v~následujících +sekcích (na stránce~\pageref{sec:install}), zde jen souhrn: +\begin{itemize*} +\item InstalaÄní dávka se jmenuje \filename{install-tl}\,. +Může pracovat v~\uv{průvodcovském režimu} po zadání +volby \code{-gui=wizard} (pÅ™edvolba pro Windows), +v~textovém režimu zadaném volbou \code{-gui=text} +(pÅ™edvoleném pro vÅ¡echny ostatní systémy), +nebo v~\GUI{} režimu pro pokroÄilé zadaném volbou \code{-gui=perltk}. +% Jednotlivé režimy dosáhnete volbou \code{-gui} nebo \code{-no-gui}. + +\item Jednou souÄástí instalace je program +`\TL\ Manager', nazvaný \prog{tlmgr}. +PodobnÄ› jako instalaÄní program může být použit +v~režimu \GUI{} nebo v~textovém režimu. +Můžete ho použít k~nainstalování nebo odinstalování +balíků a na různé konfiguraÄní Äinnosti. +\end{itemize*} + +\htmlanchor{security} +\subsection{Úvahy o bezpeÄnosti} +\label{sec:security} + +Podle naÅ¡eho vÄ›domí, hlavní programy \TeX{u} samotné jsou (a vždycky byly) +extrémnÄ› robustní. NicménÄ›, programy dodané v~rámci \TeX\ Live nemusí dosahovat +stejnou úroveň, navzdory nejlepším úsilím vÅ¡ech. Jako vždy, pÅ™i použití programů +pro nedůvÄ›ryhodný vstup musíte být opatrný; pro maximální bezpeÄnost použijte +nový podadresář. + +Tato potÅ™eba opatrnosti je zvláštÄ› naléhavá pro Windows, protože +Windows obvykle najdou programy v~aktuálním adresáři pÅ™ed jinými, +bez ohledu na cestu vyhledávaní. To otevírá Å¡iroké varianty možných +útoků. ZavÅ™eli jsme mnoho dÄ›r, ale nepochybnÄ› nÄ›které zůstaly, +obzvláštÄ› pro programy pocházející odjinud. Proto doporuÄujeme +zkontrolovat podezÅ™elé programy v~aktuálním adresáři, zvláštÄ› spustitelné +(binárky nebo skripty). BěžnÄ› by nemÄ›ly být přítomny a rozhodnÄ› +nemůžou být normálnÄ› vytvoÅ™eny pÅ™i zpracování dokumentů. + +Nakonec, \TeX\ (a jeho doprovodné programy) jsou schopny pÅ™i bÄ›hu +zapisovat do souborů. Tato schopnost může rovněž být zneužita +mnohými způsoby. Znova, zpracování neznámých dokumentů v~novém podadresáři +je nejbezpeÄnÄ›jší tip. + + +\subsection{NápovÄ›da} +\label{sec:help} + +\TeX{}ovská komunita je aktivní, vstřícná a vÄ›tÅ¡ina +seriózních otázek je obvykle zodpovÄ›zena. Podpora je +neformální, je provádÄ›na příležitostnými Ätenáři a dobrovolníky, +a proto je důležité, abyste odpovÄ›Ä na svůj dotaz hledali nejdříve sami, +než ho vznesete na fóru. Pokud toužíte po garantované komerÄní podpoÅ™e, +můžete na \TL{} zapomenout a zakoupit komerÄní distribuci; viz +seznam prodejců na \url{http://tug.org/interest.html#vendors}. + +Níže je uveden seznam informaÄních zdrojů, pÅ™ibližnÄ› v~poÅ™adí, ve kterém +ho doporuÄujeme k~použití: +\begin{description} +\item [první kroky] Pokud jste \TeX ovský nováÄek, na stránce +\url{http://tug.org/begin.html} najdete krátký úvod do systému. +\item [\TeX{} \acro{FAQ}] \TeX{} \acro{FAQ} je obrovská studnice + znalostí obsahující vÅ¡echny druhy otázek, od tÄ›ch základních až po + ty nejobskurnÄ›jší. Dokument najdete na \TL{} v~adresáři +% \OnCD{texmf-doc/doc/english/FAQ-en/html/index.html} + \OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html} + nebo na internetu na \url{http://www.tex.ac.uk/faq}. + Prosíme, zaÄnÄ›te své hledání odpovÄ›di zde. + +\item [\TeX{} Catalogue] Pokud hledáte konkrétní balík, + font, program ap., \TeX{} Catalogue je místo, kde zaÄít. + Je to obsáhlá sbírka \TeX{}ových položek. Viz +% \url{http://mirror.ctan.org/help/Catalogue/}. + \url{http://ftp.cstug.cz/pub/CTAN/help/Catalogue/}. + + +\item [\TeX{}ové odkazy na Webu] Na \url{http://tug.org/interest.html} + najdete mnoho relevantních odkazů na různé příruÄky, + knihy, manuály a Älánky o vÅ¡ech aspektech systému \TeX{}. + +\item [archívy diskusních skupin] + \sloppypar DvÄ› základní fóra pro hledání Å™eÅ¡ení problémů jsou + newsová skupina \ctt{} a emailová diskusní + skupina \email{texhax@tug.org}. V~archívech tÄ›chto zdrojů + najdete tisíce pÅ™edchozích dotazů a odpovÄ›dí Äekajících na vaÅ¡e + hledání. NahlédnÄ›te na + \url{http://groups.google.com/groups?group=comp.text.tex}, + res\-pek\-ti\-ve na + \url{http://tug.org/mail-archives/texhax}. Dotazem do obecného + vyhledávacího stroje jako \url{http://google.com/} také nic nepokazíte + a pro specifika ÄeÅ¡tiny a slovenÅ¡tiny najdete další zdroje + odkazované na \url{http://www.cstug.cz/}. + +\item [kladení dotazů] Pokud nemůžete najít odpovÄ›Ä na svou otázku, + můžete ji položit na \ctt{} pÅ™es Google nebo + newsového klienta nebo emailem na \email{texhax@tug.org}. + Ale dříve, než tak uÄiníte, \emph{prosím,} pÅ™eÄtÄ›te + si toto doporuÄení, abyste maximalizovali vyhlídky na + získání užiteÄné odpovÄ›di: + \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + Za zmínku stojí také stránka \LaTeX{}ovské komunity na + \url{http://www.latex-community.org/} a její fórum + \url{http://www.latex-community.org/forum/} a + \TeX\ Stack\-Exchange na \url{http://tex.stackexchange.com/}. + + +\item [podpora \TL{}] Pokud chcete poslat + chybové hlášení, pÅ™ipomínku nebo poznámku k~distribuci + \TL{}, její instalaci nebo dokumentaci, + diskusní skupina k~tomu urÄená je \email{tex-live@tug.org}. + Pokud vÅ¡ak je vaÅ¡e otázka specifická pro program na + \TL{} umístÄ›ný, napiÅ¡te prosím přímo autorovi nebo do diskusní + skupiny urÄené pro tento program. SpuÅ¡tÄ›ní programu + s~volbou \code{-{}-help} nezřídka + poskytuje adresu pro chybové hlášení. +\end{description} + +\noindent +Druhou stranou mince je odpovídání na dotazy tÄ›ch, kdo kladou otázky. +\ctt{} i~list \code{texhax} jsou otevÅ™eny pro kohokoliv. +PÅ™ihlaste se, naslouchejte a zaÄnÄ›te odpovídat tam, kde můžete. + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{PÅ™ehled \protect\TeX\protect\ Live} +\label{sec:overview.tl} + +Tento oddíl popisuje obsah \TL{} a \TKCS{}, jejíž~je Äástí. + +%DvÄ› hlavní instalaÄní dávky pro Unix a \MacOSX{} jsou +%\texttt{install-tl.sh} a \texttt{install-pkg.sh}. Jsou +%popsány v~oddíle~\ref{sec:unix.install} na +%stranÄ›~\pageref{sec:unix.install}. +%V~dalším oddíle popíšeme strukturu a obsah \TL{}. + + +\subsection{Kolekce \protect\TeX{}u: \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tlcoll.dists} + +\DVD{} \TKCS{} zahrnuje následující: + +\begin{description} +\item [\TL] Úplný systém \TeX{}, k~nainstalování na disk. +Jeho domovská stránka je \url{http://tug.org/texlive/}. + +\item [Mac\TeX] pro \MacOSX, pÅ™idává nativní \MacOSX\ instalaÄní +program a jiné aplikace Mac k~\TL{}. Jeho domovská stránka je +\url{http://tug.org/mactex/}. + +\item [pro\TeX{}t] Rozšíření systému \MIKTEX\ pro Windows. +\ProTeXt\ pÅ™idává k~\MIKTEX u nové doplňkové nástroje +a zjednoduÅ¡uje instalaci. Je plnÄ› nezávislý na \TL{} +a má své vlastní příkazy. +Domovská stránka projektu \ProTeXt\ je na \url{http://tug.org/protext}. + +\item [CTAN] Výpis obrazovky archívu \CTAN{} (\url{http://www.ctan.org}). + +\item [\texttt{texmf-extra}] Adresář s~rozmanitými doplňkovými balíky. + +%\item [demo] systém spustitelný přímo z~\CD. Aby to bylo možné, +%byli jsme nuceni vypustit velké kolekce pro sazbu +%ÄínÅ¡tiny, japonÅ¡tiny a korejÅ¡tiny \acro{CJK}, +%podporu sazby not, nÄ›která ménÄ› Äasto používaná písma. +%Distribuce funguje jen pod Linuxem, \MacOSX{} a systémy Windows. + +\end{description} + +\CTAN{}, \pkgname{protext} a \dirname{texmf-extra} +nemusí mít stejné podmínky pro kopírování jako \TL{}, +proto buÄte pozorní pÅ™i šíření nebo modifikaci. + + +\subsection{Popis koÅ™enových adresářů \TL{}} +\label{sec:tld} + +%V~koÅ™enovém adresáři distribuce \TL{} najdete následující podadresáře. +Tady uvádíme struÄný seznam a popis koÅ™enových adresářů instalace \TL{}. +%Na %\pkgname{live} +%\TK{} \DVD\ je celá \TL{} hierarchie v~podaresáři +%\dirname{texlive}, a ne v~koÅ™enovém adresáři disku. + +\begin{ttdescription} +\item[bin] Binárky systému \TeX{}, s~podadresáři dle platforem. +% +%\item[readme.html] Webovské stránky se struÄnými úvody a užiteÄnými +%odkazy, v~různých jazycích. +\item[readme-*.dir] StruÄný pÅ™ehled a užiteÄné odkazy +na \TL{}, v~různých jazycích, ve formátu \HTML{} a textovém. +% +\item[source] Zdrojové kódy vÅ¡ech programů, vÄetnÄ› základní distribuce + \TeX{}u založené na \Webc{}. +% +%\item[support] Různé pomocné balíky a programy. Automaticky +% \emph{nejsou} instalovány. Toto zahrnuje editory +% a \TeX{}ová vývojová prostÅ™edí různých druhů. + +% +\item[texmf] Viz \dirname{TEXMFMAIN} níže. +% +\item[texmf-dist] Viz \dirname{TEXMFDIST} níže. +% +%\item[texmf-doc] Strom samostatné Äisté dokumentace, uspořádán podle jazyků. +% +\item[tlpkg] Skripty, programy a údaje pro správu instalace a +přídavnou podporu pro Windows. +%Obsahuje rovněž neveÅ™ejné kopie Perlu a Ghostscriptu pro Windows, které jsou mimo +%\TL{} neviditelné, a nový prohlížeÄ PostScriptu pro Windows PSView. +\end{ttdescription} + +\smallskip + +V~koÅ™enovém adresáři distribuce jsou navíc instalaÄní dávky a soubory +\filename{README} (v~různých jazycích). + +Co se týÄe dokumentace, užiteÄné mohou +být obsáhlé odkazy v~koÅ™enovém souboru \OnCD{doc.html}. +%Adresář \dirname{texmf-doc} obsahuje dokumentaci, která není +%souÄástí nÄ›jakého konkrétního balíku nebo programu. +Dokumentace programů (manuály, man-stránky, info-soubory) +jsou v~\dirname{texmf/doc}. Dokumentace \TeX ových +balíků a formátů je v~\dirname{texmf-dist/doc}. +K~vyhledání veÅ¡keré dokumentace na libovolném místÄ› můžete +použít programy \cmdname{texdoc}. % nebo \cmdname{texdoctk}. + +Samotná tato příruÄka \TL\ je k~dispozici v~nÄ›kolika +jazycích v~adresáři \dirname{texmf-doc}: + +\begin{itemize*} +\item{Äesko-slovenská:} \OnCD{texmf/doc/texlive/texlive-cz} +\item{nÄ›mecká:} \OnCD{texmf/doc/texlive/texlive-de} +\item{anglická:} \OnCD{texmf/doc/texlive/texlive-en} +\item{francouzská:} \OnCD{texmf/doc/texlive/texlive-fr} +\item{italská:} \OnCD{texmf/doc/texlive/texlive-it} +\item{polská:} \OnCD{texmf/doc/texlive/texlive-pl} +\item{ruská:} \OnCD{texmf/doc/texlive/texlive-ru} +\item{srbská:} \OnCD{texmf/doc/texlive/texlive-sr} +\item{zjednoduÅ¡ená ÄínÅ¡tina:} \OnCD{texmf/doc/texlive/texlive-zh-cn} +\end{itemize*} + +\subsection{PÅ™ehled pÅ™eddefinovaných stromů texmf} +\label{sec:texmftrees} + +Tento oddíl uvádí seznam %vÅ¡ech +pÅ™eddefinovaných promÄ›nných urÄujících stromy +texmf, používaných systémem, a jejich zamýšlený úÄel +a standardní uspořádání systému \TL. +Povel \texttt{tlmgr~conf} %\texttt{texconfig conf} vám +ukáže hodnoty tÄ›chto promÄ›nných, tedy můžete jednoduÅ¡e zjistit, +jak tyto odpovídají jednotlivým adresářům ve vaší instalaci. + +VÅ¡echny stromy, vÄetnÄ› osobních, musí dodržovat strukturu adresářů \TeX\ +Directory Structure (\TDS, \url{http://tug.org/tds}), s~jejími nesÄetnými +podadresáři, jinak soubory nebudou k~nalezení. PodrobnÄ›ji je to +popsané v~oddíle~\ref{sec:local_personal_macros} +(\p.\pageref{sec:local_personal_macros}). + +\begin{ttdescription} +\item [TEXMFMAIN] Strom obsahující životnÄ› důležité Äásti +systému, jako konfiguraÄní soubory, pomocné skripty a dokumentaci programu. +%(napÅ™. \verb+web2c/mktexdir+) a jiné podpůrné soubory a jejich dokumentaci. +%Neobsahuje \TeX ovské formáty a balíky. +\item [TEXMFDIST] Strom obsahující hlavní sadu balíků maker, +fontů, atd. z~původní distribuce. +\item [TEXMFLOCAL] Strom, který mohou použít administrátoÅ™i na instalaci +doplňkových nebo upravených maker, fontů, atd., pro celý systém. +\item [TEXMFHOME] Strom, který mohou použít uživatelé +na svoje osobní doplňková nebo upravená makra, fonty, atd. +Rozšíření této promÄ›nné se dynamicky nastaví pro +každého uživatele na jeho vlastní osobní adresář. +\item [TEXMFCONFIG] Strom (soukromý) používaný nástroji +\verb+texconfig+, \verb+updmap+ a \verb+fmtutil+ na uložení +modifikovaných konfiguraÄních údajů. %ImplicitnÄ› pod \envname{TEXMFHOME}. %$ +\item [TEXMFSYSCONFIG] Strom (site-wide) používaný nástroji \verb+texconfig-sys+, \verb+updmap-sys+ a \verb+fmtutil-sys+ na uložení modifikovaných konfiguraÄních údajů. +\item [TEXMFVAR] Strom (soukromý) používaný programy \verb+texconfig+, +\verb+updmap+ a \verb+fmtutil+ na (cache) uložení runtime +údajů jako jsou soubory formátů a generované map-soubory. + % Používá ho rovněž \ConTeXt\ Mk\acro{IV}. + %ImplicitnÄ› pod \envname{TEXMFHOME}. %$ +\item [TEXMFSYSVAR] Strom (site-wide) používaný programy +\verb+texconfig-sys+, \verb+updmap-sys+, \verb+fmtutil-sys+ +a také \verb+tlmgr+, na (cache) uložení runtime +údajů jako jsou soubory formátů a generované map-soubory. +\item [TEXMFCACHE] Strom(y) používaný \ConTeXt{}extem Mk\acro{IV} +na uložení (cache) runtime údajů. +\end{ttdescription} + + +\noindent +Standardní struktura je: +\begin{description} + \item[system-wide root] může obsáhnout vícenásobné vydání \TL{}: + \begin{ttdescription} + \item[2011] PÅ™edchozí vydání. + \item[2012] NynÄ›jší vydání. + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] binárky systému \GNU/Linux + \item [...] + \item [universal-darwin] binárky systému \MacOSX + \item [win32] binárky systému Windows + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] Toto je \envname{TEXMFMAIN}. + \item [texmf-dist\ \ ] \envname{TEXMFDIST} +% \item [texmf-doc] \envname{TEXMFDOC} + \item [texmf-var \ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, zamýšlený být zachován od vydání k~vydání. + \end{ttdescription} + \item[domovský adresář uživatele] (\texttt{\$HOME} nebo + \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2011] SoukromÄ› generované a konfiguraÄní údaje pÅ™edchozího vydání. + \item[.texlive2012] SoukromÄ› generované a konfiguraÄní údaje aktuálního vydání. + \begin{ttdescription} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR}, \envname{TEXMFCACHE} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} Osobní makra atd. + \end{ttdescription} +\end{description} + + +\subsection{Rozšíření \protect\TeX{}u} +\label{sec:tex.extensions} + +Samotný Knuthův původní \TeX{} je zmrazený, kromÄ› ojedinÄ›lých oprav chyb. +Stále je v~\TL\ přítomen jako program \prog{tex} a tak to zůstane +v~dohledné budoucnosti. \TL{} obsahuje nÄ›kolik rozšířených verzí \TeX{}u: + +\begin{description} + +\item [\eTeX] pÅ™idává množinu nových +příkazů (nazývaných \TeX{}ové primitivy). +\label{text:etex} +Nové příkazy se například týkají makroexpanze, naÄítání znaků, +tříd znaÄek (marks), rozšířených ladicích možností +a rozšíření \TeXXeT{} pro obousmÄ›rnou sazbu. ImplicitnÄ› +je \eTeX{} 100\% kompatibilní se standardním \TeX{}em. +Viz~\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. +%B% \eTeX{} je nyní sázecím programem pro \LaTeX{} i pdf\LaTeX{}. + +\item [pdf\TeX] vybudován na rozšířeních \eTeX{}u pÅ™idává podporu +zápisu ve formátu \acro{PDF} stejnÄ› jako v~\dvi{} a +Äetná rozšíření netýkající se výstupu. +Toto je program používaný pro vÄ›tÅ¡inu formátů, +například, \prog{etex}, \prog{latex}, +\prog{pdflatex}. Jeho stránka je \url{http://www.pdftex.org/}. Viz +návod \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf} +%v~adresáři \OnCD{texmf/doc/pdftex/manual/} +a \OnCD{texmf/doc/pdftex/manual/samplepdf/samplepdf.tex} +pro vzorové použití nÄ›kterých jeho vlastností. %v~adresáři + +\item [Lua\TeX] je oznaÄován za nástupce pdf\TeX/{}u, se kterým %by mÄ›l být +je z~vÄ›tší Äásti (ale ne úplnÄ›) zpÄ›tnÄ› kompatibilní. +MÄ›l by se také stát funkÄní podmnožinou systému %nahradit +Aleph, viz dále, aÄkoli technická kompatibilita není zamýšlena. +Zabudovaný interpret Lua (\url{http://www.lua.org/}) +umožňuje elegantní Å™eÅ¡ení mnoha ožehavých +\TeX ovských problémů. Volaný povelem \filename{texlua}, funguje +jako samostatný interpret Lua, a jako takový je již použit +v~rámci \TL. Jeho stránka je \url{http://www.luatex.org/} a příruÄka je +\OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [\XeTeX] pÅ™idává podporu vstupního kódování +Unicode a OpenType- a systémových fontů, implementovaných +použitím zejména knihoven tÅ™etích stran. +Viz \url{http://tug.org/xetex}. + +\item [\OMEGA\ (Omega)] je založena na Unicode. +Umožňuje sázet v~téměř vÅ¡ech +svÄ›tových jazycích zároveň. Dociluje toho tzv. +pÅ™ekladovými procesy (\OMEGA{} Translation Processes, +\acro{OTP}) pro realizaci složitých transformací na jakémkoliv vstupu. +%Viz \OnCD{texmf/doc-dist/omega/base/doc-1.8.tex} (dokumentace vÅ¡ak není zcela aktuální). +Omega už není souÄástí \TL{} jako samostatný program; poskytnutý je jenom Aleph: + +\item [Aleph] kombinuje rozšíření \OMEGA\ a \eTeX. +%Pro minimální dokumentaci +Viz \OnCD{texmf-dist/doc/aleph/base}. +\end{description} + + +\subsection{Další za zmínku stojící programy na \protect\TeXLive} + +Na \TL{} najdete nÄ›kolik Äasto používaných programů: + +\begin{cmddescription} + +\item [bibtex, bibtex8] podpora práce se seznamem literatury. + +\item [makeindex, xindy] vytváření rejstříku. Pro ÄeÅ¡tinu a slovenÅ¡tinu +vÅ¡ak potÅ™ebujete verzi programu s~názvem \texttt{csindex} (není zatím +souÄástí distribuce, je potÅ™eba instalovat zvlášť). + +\item [dvips] pro konverzi \dvi{} do \PS{}. + +\item [xdvi] prohlížeÄ \dvi{} pro systém X~Window. + +\item [dvilj] \dvi{} ovladaÄ tiskáren HP Laser\-Jet. + +%\item [dv2dt, dt2dv] pro konverzi \dvi{} do/z~ascii textu. + +\item [dviconcat, dviselect] pro kopii a vkládání stránek +do/z \dvi{} souborů. + +\item [dvipdfmx] konvertor \dvi{} do \acro{PDF}, alternativní +přístup vedle pdf\TeX{}u zmínÄ›ného výše. +%Srovnej balíky \pkgname{ps4pdf} a \pkgname{pdftricks} pro další alternativy. + +\item [psselect, psnup, \ldots] programy pro práci s~\PS{}em. + +\item [pdfjam, pdfjoin, \ldots] pomůcky pro \acro{PDF}. + +%\item [lacheck] pro kontrolu syntaxe \LaTeX{}u. + +\item [texexec, texmfstart] wrapper pro Con\TeX{}t a práci s~\acro{PDF}. + +\item [tex4ht] konvertor \TeX{}u do \acro{HTML}. + +\end{cmddescription} + + +\subsection{Fonty v~\protect\TL} +\label{sec:tlfonts} + +\TL{} pÅ™ináší množství vysoce kvalitních vektorových % ?scalable fonts. +fontů. Viz \url{http://tug.org/fonts} a +\OnCD{texmf-dist/doc/fonts/free-math-font-survey}. +%\OnCD{texmf-doc/english/free-math-fonts-survey}. + +\htmlanchor{installation} +\section{Instalace} +\label{sec:install} + +\subsection{SpuÅ¡tÄ›ní instalaÄního programu} +\label{sec:inst.start} + +Pro zaÄátek si obstarejte \TK{} \DVD{} nebo si stáhnÄ›te +síťový instalaÄní program \TL{}, +a najdÄ›te instalaÄní skript: \filename{install-tl} pro Unix, +\filename{install-tl.bat} pro Windows. +Viz \url{http://tug.org/texlive/acquire.html} +pro více informací a jiné způsoby získání software. %softvéru. + + +\begin{description} +\item [Síťový instalátor:] stáhnÄ›te z~\CTAN{}u, +z~adresáře \dirname{systems/texlive/tlnet}; url +\url{http://mirror.ctan.org/systems/texlive/tlnet} +vás automaticky pÅ™esmÄ›ruje na blízký, aktuální mirror. +Můžete získat \filename{install-tl.zip}, který může +být použit pod Unixem a Windows nebo jenom pro Unix +podstatnÄ› menší \filename{install-unx.tar.gz}. +Po rozbalení se \filename{install-tl} a +\filename{install-tl.bat} objeví v~podadresáři \dirname{install-tl}. + +\item [\DVD{} \TeX{} kolekce:] vejdÄ›te do podadresáře \DVD{} \dirname{texlive}. +Pod Windows se instalátor normálnÄ› spustí %by se instalátor mÄ›l spustit +automaticky po vložení \DVD. \DVD\ můžete získat, když se stanete Älenem +skupiny uživatelů \TeX u (vÅ™ele doporuÄujemei \CSTUG, +\url{http://tug.org/usergroups.html}), nebo si ho zvlášť zakoupíte +(\url{http://tug.org/store}), anebo si vypálíte svoje vlastní z~\ISO\ +obrazu. %(\url{http://tug.org/texlive/acquire.html}). +Ve vÄ›tÅ¡inÄ› systémů můžete \ISO\ namontovat přímo. +Jestliže máte po instalaci z \DVD\ nebo \ISO{} +zájem o pokraÄující aktualizace z~Internetu, +nahlédnÄ›te, prosím, do oddílu \ref{sec:dvd-install-net-updates}. +\end{description} + +Nezávisle na zdroji se spouÅ¡tí tentýž instalátor. Nejvíce +viditelný rozdíl mezi dvÄ›ma možnostmi je ten, že po skonÄení +instalace z~Internetu získáte balíky, které jsou v~souÄasné +dobÄ› k~dispozici. To je v~protikladu k~\DVD\ a +\ISO\ obrazům, které se mezi významnÄ›jšími vydáními neaktualizují. + +\noindent +Následující oddíly vysvÄ›tlují spuÅ¡tÄ›ní instalátoru podrobnÄ›ji. + +\subsubsection{Unix} + +Dále \texttt{>} oznaÄuje výzvu (prompt shellu); vstup +uživatele je \Ucom{\texttt{zvýraznÄ›n}}. +%terminálu je : +Skript \filename{install-tl} je Perlovský skript. Nejjednodušší způsob jeho +spuÅ¡tÄ›ní v~unixovém systému je následující: +\begin{alltt} +> \Ucom{cd /path/to/installer} +> \Ucom{perl install-tl} +\end{alltt} +(Nebo můžete vyvolat \Ucom{perl /path/to/installer/install-tl}, nebo +\Ucom{./install-tl} když je spustitelný, atd.; nechceme opakovat vÅ¡echny tyto variace.) +Možná zvÄ›tšíte okno terminálu tak, aby ukazovalo celou +obrazovku textového instalátora (obr.~\ref{fig:textmain}). + +%To install in expert \GUI\ mode (figure~\ref{fig:gui-main}), you'll +%need the \dirname{Perl/TK} module +%compiled with \acro{XFT} support, +%which is generally the case with \GNU/Linux, but not necessarily other +%systems. Given that, you can run: +K~instalaci v~pokroÄilém režimu \GUI\ (obr.~\ref{fig:guimain}); +budete potÅ™ebovat modul \dirname{Perl/TK} zkompilovaný +s~podporou \acro{XFT}, která je obvyklá v~případÄ› systému +\GNU/Linux, ale ne nevyhnutelnÄ› v~jiných systémech. +Pak můžete spustit: +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +Úplný seznam různých voleb získáte povelem: +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{Varování o oprávnÄ›ních Unixu:} VaÅ¡e nastavení \code{umask} v~Äase instalace +bude respektováno instalaÄním programem \TL{}. Proto, když chcete, aby byla vaÅ¡e +instalace použitelná i jinými uživateli než vámi, ujistÄ›te se, že jsou vaÅ¡e +nastavení dostateÄnÄ› tolerantní, například, \code{umask +002}. Další informace o nastavení \code{umask}, hledejte v~dokumentaci k~vaÅ¡emu systému. + +\textbf{Zvláštní vysvÄ›tlivky pro Cygwin:} Na rozdíl od jiných +unixových systémů, Cygwin implicitnÄ› +neobsahuje vÅ¡echny nezbytné programy, které instalátor \TL{} potÅ™ebuje. +Pro podrobnosti viz sekci~\ref{sec:cygwin}. + +\subsubsection{MacOSX} + +Jak již bylo zmínÄ›no v~sekci~\ref{sec:tlcoll.dists}, pro \MacOSX je +pÅ™ipravena samostatná distribuce, nazvaná +Mac\TeX\ (\url{http://tug.org/mactex}). +DoporuÄujeme použít původní instalaÄní program +Mac\TeX\ u namísto instalátoru \TL\ +pod \MacOSX, protože původní (nativní) instalátor provede +nÄ›kolik nastavení specifických pro Mac, zejména umožňuje +snadné pÅ™epínání mezi různými distribucemi \TeX u pro \MacOSX\ +(Mac\TeX, %gw\TeX, +Fink, MacPorts, \ldots). + +Mac\TeX\ je silnÄ› založen na \TL, a hlavní \TeX ovská stromová +struktura je pÅ™esnÄ› stejná. PÅ™idává nÄ›kolik dalších adresářů +s~dokumentací a aplikacemi specifickými pro Mac. + +\subsubsection{Windows} + +Jestliže používáte síťový instalátor, nebo instalaÄní +program \DVD\ se nespustí automaticky, kliknÄ›te +dvakrát na soubor \filename{install-tl.bat}. +Pro více voleb pro úpravy, napÅ™. výbÄ›r urÄité +kolekce balíků, spusÅ¥te namísto nÄ›ho +\filename{install-tl-advanced.bat}. + +Můžete také spustit instalaÄní program z~příkazového řádku. +Dále \texttt{>} oznaÄuje prompt shellu; +vstup uživatele je \Ucom{\texttt{polotuÄný}}. +Pokud jste v~adresáři instalaÄního programu, jenom spusÅ¥te: +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} + +Můžete to také vyvolat zadáním absolutní cesty, jako například: +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +pro \TKCS\ \DVD, za pÅ™edpokladu, že \dirname{D:} je optický disk. +Obr.~\ref{fig:wizard-w32} zobrazuje průvodcovský +instalátor, který je pro Windows implicitní. + +Pro instalaci v~textovém režimu použijte: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +Pro úplný seznam různých voleb zadejte: +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2012 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + platforms: 1 out of 19 + + Installation scheme (scheme-full) + 84 collections out of 85, disk space required: 2600 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + options: + [ ] use letter size instead of A4 by default + ... + + set up for portable installation + + +Actions: + + + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{Hlavní obrazovka textového instalaÄního programu (\GNU/Linux)}\label{fig:textmain} +\end{figure} + +%\begin{figure}[tb] +%\begin{boxedverbatim} +%Instalace TeX Live 2009 z: ... +%Platforma: i386-linux => 'Intel x86 with GNU/Linux' +%Distribuce: live (uncompressed) +%... +% ZjiÅ¡tÄ›ná platforma: Intel x86 with GNU/Linux +% +% binární systémy: 1 out of 14 +% +% InstalaÄní schéma (scheme-full) +% 83 kolekcí z 84, požadovaný prostor na disku: 1882 MB +% +% PÅ™izpůsobení instalaÄní schémy: +% standardní kolekce +% jazykové kolekce +% +% adresáře: +% TEXDIR (hlavní adresář TeXu): +% /usr/local/texlive/2009 +% TEXMFLOCAL (adresář pro umístÄ›ní lokálních souborů): +% /usr/local/texlive/texmf-local +% TEXMFSYSVAR (aresář pro mÄ›nící se a automaticky generované údaje): +% /usr/local/texlive/2009/texmf-var +% TEXMFSYSCONFIG (adresář pro lokální konfiguraci): +% /usr/local/texlive/2009/texmf-config +% TEXMFHOME (adresář pro uživatelské soubory): +% ~/texmf +% +% volby: +% [ ] imlicitnÄ› použít výchozí velikost papíru letter místo A4 +% [X] vytvoÅ™it vÅ¡echny formáty +% [X] nainstaluj strom dokumentace maker/fontů +% [X] nainstaluj strom zdrojových souborů maker/fontů +% [ ] vytvoÅ™it symbolické odkazy na standardní adresáře +% +% nastavení pro spouÅ¡tÄ›ní z DVD +% +%Další Äinnosti: +% zaÄít instalaci na pevný disk +% pomoc +% ukonÄit +%\end{boxedverbatim} +%\caption{Hlavní obrazovka textového instalaÄního programu (\GNU/Linux)}\label{fig:textmaincs} +%\end{figure} + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth,trim=10 4 0 20,clip} +\caption{Obrazovka pokroÄilého \GUI{} instalátora (\GNU/Linux)}\label{fig:guimain} +\end{figure} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth,trim=0 4 0 0,clip} +\caption{Průvodcovská obrazovka instalátora (Windows)}\label{fig:wizard-w32} +\end{figure} + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +Instalátor \TL{} odporuje pouze Cygwin 1.7. +PÅ™ed zaÄátkem instalace použijte program Cygwinu +\filename{setup.exe} k~instalaci programů +\filename{perl} a \filename{wget} pokud jste tak jeÅ¡tÄ› neudÄ›lali. +DoporuÄené jsou následující doplňkové balíky: +\begin{itemize*} +\item \filename{fontconfig} [potÅ™ebný pro \XeTeX] +\item \filename{ghostscript} [potÅ™ebný pro různé pomůcky] +\item \filename{libXaw7} [potÅ™ebný pro \code{xdvi}] +\item \filename{ncurses} [umožní příkaz + \code{clear} používaný instalátorem] +\end{itemize*} + +\subsubsection{Textový instalaÄní program} + +Obrázek~\ref{fig:textmain} ukazuje základní obrazovku textového režimu pod Unixem. +Pro Unix je textový instalaÄní program nastaven implicitnÄ›. + +Je to instalátor jenom s~příkazovým řádkem; vůbec nemá kurzorovou podporu. Například, nemůžete se pohybovat v~zatrhávacích rámeÄcích nebo vstupních polích. Jenom napíšete nÄ›co (s~rozliÅ¡ováním velikosti písma) na příkazovém řádku a stlaÄíte klávesu Enter, poté se celá obrazovka pÅ™epíše s~pÅ™izpůsobeným obsahem. + +Rozhraní textového instalátoru je tak primitivní z~prostého důvodu: je +navržené tak, aby se dalo spustit na tolika platformách jak je to jen +možné, dokonce i~v~Perlu. +% (pro Windows je zaÅ™azena podmožina Perlu). + +\subsubsection{Grafický instalaÄní program pro zkuÅ¡ené} + +Obrázek~\ref{fig:guimain} ukazuje grafický instalátor pro +znalce pod \GNU/Linux. KromÄ› toho, že využívá tlaÄítka +a nabídky, se tento instalátor velmi neliší od textového. +% (obr.~\ref{fig:textmain}). + +Tento režim může být vyvolán explicitnÄ› pomocí +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} + + +\subsubsection{Jednoduchý průvodce instalací} + +Pod Windows je implicitnÄ› nastaveno spuÅ¡tÄ›ní nejjednoduššího +instalaÄního způsobu, který můžeme doporuÄit, +nazvaného \uv{průvodce} instalací (obr.~\ref{fig:wizard-w32}). Nainstaluje +vÅ¡echno a nezadává skoro žádné otázky. Pokud si +chcete vÅ¡e nastavení upravit, musíte spustit nÄ›který +z~dalších instalátorů. + +Tento režim může být vyvolán explicitnÄ› povelem +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + +\subsection{SpuÅ¡tÄ›ní instalaÄního programu} +\label{sec:runinstall} + +Instalátor je zamýšlený jako co nejvíce samovysvÄ›tlující. +NicménÄ› následuje nÄ›kolik poznámek o jednotlivých volbách +a dílÄích nabídkách: + +\subsubsection{Nabídka binárních systémů (pouze Unix)} +\label{sec:binary} + +\begin{figure}[tb] +\begin{boxedverbatim} +Available platforms: +=============================================================================== + + 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 +\end{boxedverbatim} +\caption{Nabídka binárek}\label{fig:bin_text} +\end{figure} + +Obrázek~\ref{fig:bin_text} ukazuje nabídku binárek textového +režimu. StandardnÄ› budou nainstalovány jenom binárky +vaší aktuální platformy. Z~této nabídky si rovněž můžete +vybrat instalaci binárek pro jiné platformy. Toto +může být užiteÄné, pokud sdílíte \TeX ovský strom +v~síti heterogenních strojů, nebo na systému +s~dvojitým zavádÄ›cím procesem. + + +\subsubsection{Volba obsahu instalace} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +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 +\end{boxedverbatim} +\caption{Nabídka schémat}\label{fig:schemetext} +\end{figure} + +Obrázek~\ref{fig:schemetext} ukazuje nabídku schémat \TL; tady +vybíráte \uv{schéma}, což je souhrn kolekcí balíků. +PÅ™edvolené schéma \optname{full} nainstaluje vÅ¡e, +co je k~dispozici. To doporuÄujeme, avÅ¡ak +můžete také zvolit schéma \optname{basic} pro malý systém, +\optname{minimal} pro úÄely testování, a schéma \optname{medium} nebo +\optname{teTeX} pro získání nÄ›Äeho mezi tím. K~dispozici jsou také různá +specializovaná schémata a schémata specifická pro nÄ›které zemÄ›. + +\begin{figure}[tb] +\tlpng{stdcoll}{.7\linewidth,trim=0 4 0 0,clip} +\caption{Nabídka kolekcí}\label{fig:collections.gui} +\end{figure} + +Svůj výbÄ›r schématu můžete upÅ™esnit pomocí nabídek `standard collections' a +`language collections' (obrázek~\ref{fig:collections.gui}, ukázané pro zmÄ›nu v~režimu \GUI). + +Kolekce jsou o jednu úroveň podrobnÄ›jší než schémata\Dash v~podstatÄ›, +schéma je tvoÅ™eno nÄ›kolika kolekcemi, kolekci tvoří jeden nebo více +balíků, a balík (nejnižší úroveň seskupování v~\TL) obsahuje vlastní +soubory \TeX ovských maker, soubory fontů, atd. + +Pokud chcete získat vÄ›tší kontrolu než jakou poskytuje nabídka kolekcí, +po instalaci můžete použít program \TeX\ Live Manager (\prog{tlmgr}) +(viz sekci~\ref{sec:tlmgr}); jeho použitím můžete řídit +instalaci na úrovni balíků. + +\subsubsection{Adresáře} +\label{sec:directories} + +Standardní uspořádání je popsáno v~sekci~\ref{sec:texmftrees}, +\p.\pageref{sec:texmftrees}. + +Standardní umístÄ›ní adresáře \dirname{TEXDIR} je +\dirname{/usr/local/texlive/2012} pro Unix +a |%SystemDrive%\texlive\2012| pod Windows. + + +Hlavní důvod pro zmÄ›nu této pÅ™edvolby je nedostatek práv +na zápis pro standardní umístÄ›ní. +Nemusíte být zrovna rootem nebo administrátorem, když +instalujete \TL, ale potÅ™ebujete oprávnÄ›ní na zápis do cílového adresáře. + +Rozumnou alternativou je adresář uvnitÅ™ vaÅ¡eho domovského +adresáře, zvlášť když chcete být výhradním uživatelem. +Na naznaÄení tohoto použijte `|~|', jako například `|~/texlive/2012|'. + +DoporuÄujeme do názvu zaÄlenit rok, co umožní zachování +různých vydání \TL{} vedle sebe. (Můžete chtít vytvoÅ™it +název nezávislý na verzi, například +\dirname{/usr/local/texlive-cur} pomocí symbolického odkazu, +který může být pozdÄ›ji pÅ™epsán po pÅ™ezkouÅ¡ení nového vydání.) + +ZmÄ›na \dirname{TEXDIR} v~instalaÄním programu vyvolá také zmÄ›ny +\dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} a +\dirname{TEXMFSYSCONFIG}. + +\dirname{TEXMFHOME} je doporuÄené umístÄ›ní osobních souborů maker nebo balíků. PÅ™edvolená hodnota je |~/texmf|. Na rozdíl od \dirname{TEXDIR}, je nyní |~| uchována v~novÄ› vytvoÅ™ených konfiguraÄních souborech, protože to užiteÄnÄ› odkazuje na domovský adresář kteréhokoliv běžícího \TeX u. Expanduje se na \dirname{$HOME} pod Unixem a \verb|%USERPROFILE%| pod Windows. +Zvláštní pÅ™ebyteÄná poznámka: \envname{TEXMFHOME}, jako vÅ¡echny stromy, musí být uspořádaný v~souladu s~\TDS, jinak nemusí být soubory k~nalezení. + + +\dirname{TEXMFVAR} je umístÄ›ní pro uložení vÄ›tÅ¡iny +generovaných doÄasných dat specifických pro každého uživatele. +% is the location for storing most cached runtime data specific to each user, +\dirname{TEXMFCACHE} se používá na tento úÄel \ConTeXt{}em +Mk\acro{IV} (viz oddíl~\ref{sec:context_mkiv}, +na stranÄ›~\pageref{sec:context_mkiv}). + +\subsubsection{Volby} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Options setup: +=============================================================================== +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: +\end{boxedverbatim} +\caption{Nabídka voleb (Unix)}\label{fig:optionstext} +\end{figure} + +Obrázek~\ref{fig:optionstext} ukazuje nabídku voleb textového režimu. +Další informace o~každé volbÄ›: + +\begin{description} +\item[use letter size instead of A4 by default:] VýbÄ›r standardní velikosti papíru. +Jednotlivé dokumenty mohou a mÄ›ly by deklarovat zvláštní +rozmÄ›r papíru, pokud je to žádoucí. + +\item[execution of restricted list of programs:] +Od \TL\ 2010 je implicitnÄ› povoleno vykonávání +nÄ›kolika externích programů. Velmi neúplný seznam +povolených programů je uveden v~souboru \filename{texmf.cnf}. +Pro další podrobnosti viz novinky 2010 (oddíl~\ref{sec:2010news}). + +\item[create format files:] PÅ™estože si vytvoÅ™ení nepotÅ™ebných formátů +vyžaduje Äas a diskový prostor pro uložení, nicménÄ› doporuÄujeme nechat +tuto volbu vyznaÄenou: když ji nevyznaÄíte, budou formátové soubory +vytvoÅ™ené v~osobních stromech \dirname{TEXMFVAR} uživatelů, když budou +zapotÅ™ebí. Na tomto místÄ› nebudou automaticky aktualizované, když se budou +například obnovovat binárky nebo vzory dÄ›lení v~instalaci a tudíž můžete +skonÄit s~nekompatibilními soubory formátů. + +\item[install font/macro \ldots\ tree:] Tyto volby vám umožní pÅ™eskoÄit stahování/instalci dokumentace a zdrojových souborů ve vÄ›tÅ¡ine balíků. NedoporuÄuje se. + +\item[create symlinks in standard directories] (pouze Unix): +Tato volba obchází potÅ™ebu zmÄ›ny promÄ›nných prostÅ™edí. Bez této +volby je obvykle potÅ™ebné pÅ™idat adresáře \TL{} do promÄ›nných +\envname{PATH}, \envname{MANPATH} a \envname{INFOPATH}. +Budete muset pÅ™idÄ›lit práva na zápis cílovým adresářům. +DůraznÄ› doporuÄujeme \emph{ne}pÅ™epsat \TeX ovský systém, +který pÅ™iÅ¡el s~vaším systémem s~touto volbou. Toto je v~první +Å™adÄ› urÄeno pro zpřístupnÄ›ní systému \TeX\ pomocí adresářů, +které již uživatelé znají, jako například \dirname{/usr/local/bin}, +které neobsahují žádné \TeX ovské soubory. +\end{description} + +Když jsou vÅ¡echna nastavení podle vaÅ¡eho vkusu, můžete napsat +`I' a spustit instalaÄní proces. Po dokonÄení pÅ™eskoÄte na +sekci~\ref{sec:postinstall}, kde se dozvíte, co se případnÄ› +má udÄ›lat závÄ›rem. + + +\subsection{Volby příkazového řádku pro install-tl} +\label{sec:cmdline} + +K~zobrazení voleb příkazového řádku napiÅ¡te +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +K~uvedení názvu volby mohou být použity |-| nebo také |--|. +Následují nejběžnÄ›jší volby: + +\begin{ttdescription} +\item[-gui] Podle možností použijte \GUI{} instalátor. Toto si vyžaduje modul + Perl/Tk (\url{http://tug.org/texlive/distro.html#perltk}); + skompilovaný s~podporou \acro{XFT}; + pokud Perl/Tk není k~dispozici, pokraÄuje instalace v~textovém režimu. +\item[-no-gui] Vynutí si použití instalátoru v~textovém režimu, + dokonce i pod Windows. +%; můžete to potÅ™ebovat, pokud chcete spustit instalaci s~volbou `from \DVD', ponÄ›vadž tato +% není k~dispozici v~režimu \GUI{}. +\item[-lang {\sl LL}] Specifikuje jazyk instalaÄního rozhraní jako +jeho standardní dvoupísmenový kód \textsl{\acro{LL}}. +V~souÄasné dobÄ› jsou podporovány jazyky: + \texttt{cs} (ÄeÅ¡tina), + \texttt{de} (nÄ›mÄina), + \texttt{en} (angliÄtina, pÅ™edvolený) + \texttt{fr} (francouzÅ¡tina), + \texttt{it} (italÅ¡tina), + \texttt{ja} (japonÅ¡tina), + \texttt{nl} (nizozemÅ¡tina), + \texttt{pl} (polÅ¡tina), + \texttt{ru} (ruÅ¡tina), + \texttt{sk} (slovenÅ¡tina), + \texttt{sl} (slovinÅ¡tina), + \texttt{sr} (srbÅ¡tina), + \texttt{vi} (vietnamÅ¡tina), + \texttt{zh-cn} (zjednoduÅ¡ená ÄínÅ¡tina), + \texttt{zh-tw} (tradiÄní ÄínÅ¡tina). + InstalaÄní program se sám pokusí urÄit vhodný jazyk, ale když selže nebo když není správný jazyk k~dispozici, pak použije angliÄtinu jako nouzové Å™eÅ¡ení. + +\htmlanchor{opt-in-place} +\item[-in-place] Pokud již máte rsync-, svn-, nebo jinou kopii + \TL{} (viz \url{http://tug.org/texlive/acquire-mirror.html}), + pak tato volba použije to, co již máte stažené a udÄ›lá pouze nezbytné + post-instalaÄní úkony. Upozorňujeme, že soubor + \filename{tlpkg/texlive.tlpdb} může být pÅ™epsán; + jeho uložení je na vaší odpovÄ›dnosti. OdstranÄ›ní + balíků by mÄ›lo být také ruÄní. + Toto použijte jen když víte co dÄ›láte. + Tato volba se nedá pÅ™epnout pomocí rozhraní instalátoru. + +\item[-portable] Instalace pro pÅ™enosné použití, například na klÃ­Ä \USB{}. + Dá se zvolit rovněž v~textovém instalátoru pomocí příkazu \code{V} + a z~instalátoru \GUI{}. Viz oddíl~\ref{sec:portable-tl}. + +\item[-profile {\sl soubor}] NaÄtÄ›te instalaÄní profilový + soubor a proveÄte instalaci bez interakce s~uživatelem. + InstalaÄní program vždycky uloží soubor + \filename{texlive.profile} do podadresáře \dirname{tlpkg} vaší instalace. + Tento soubor může být zadán jako argument například pro znovuvytvoÅ™ení + identické instalace na jiném systému. Nebo můžete + použít uživatelský profil, který nejjednoduÅ¡eji + vytvoříte zmÄ›nou hodnot vygenerovaného + souboru, nebo odstartováním s~prázdným souborem, + který pÅ™evezme vÅ¡echny pÅ™edvolby. + +\item [-repository {\sl soubor-nebo-adresář}] UrÄuje + repositář balíků, z~kterého se má instalovat; viz následující oddíl. +\end{ttdescription} + +\subsubsection{Volba \optname{-repository}} +\label{sec:location} + +Implicitní repositář balíků je zrcadlo CTAN zvolené automaticky použitím +\url{http://mirror.ctan.org}. + +Pokud to chcete pÅ™epsat, může být hodnotou umístÄ›ní +adresa url s~\texttt{ftp:}, \texttt{http:} nebo +\texttt{file:/} na zaÄátku, nebo jednoduchá cesta k~adresáři. +(PÅ™i zadání umístÄ›ní \texttt{http:}\ nebo \texttt{ftp:}\ +jsou koncové znaky `\texttt{/}' a/nebo koncová složka + `\texttt{/tlpkg}' ignorovány.) + +Ku příkladu můžete zvolit urÄité zrcadlo \CTAN\ nÄ›Äím +jako: \url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +s~nahrazením |ctan.example.org/tex-archive| skuteÄným +hostitelským jménem (hostname) a jeho konkrétní koÅ™enovou +cestou k~\CTAN\ (jako tÅ™eba |ftp.cstug.cz/pub/CTAN|). +Seznam zrcadel \CTAN\ je udržován na \url{http://ctan.org/mirrors}. + +Pokud je zadaný argument lokální (buÄ cesta nebo \texttt{file:/} url), +jsou použity komprimované soubory v~podadresáři \dirname{archive} +cesty repositáře (i kdyby byly rovněž k~dispozici nekomprimované soubory). + +\subsection{PoinstalaÄní Äinnosti} +\label{sec:postinstall} + +Po instalaci se mohou hodit nÄ›které další úpravy. + +%\subsubsection{Windows} + +%AvÅ¡ak pod Windows se instalaÄní program o~vÅ¡e postará. + +%\subsubsection{Pokud byly vytvoÅ™eny symbolické odkazy} + +%Pokud jste zvolili vytvoÅ™ení symbolických odkazů v~standardních adresářích (zmínÄ›ných v~sekci~\ref{sec:options}), pak není potÅ™eba editovat promÄ›nné prostÅ™edí. + + +\subsubsection{PromÄ›nné prostÅ™edí pro Unix} +\label{sec:env} + +Pokud se rozhodnete vytvoÅ™it symbolické odkazy v~standardních adresářích +(popsaných v~oddíle~\ref{sec:options}), pak není nutná editace promÄ›nných +prostÅ™edí. Jinak v~systémech Unix musí být adresář binárek pro vaší platformu +pÅ™idán k~prohledávaným cestám. (Ve Windows se o to postará instalátor.) + +%Adresář binárek pro vaÅ¡i platformu musí být pÅ™idán k~vyhledávacím cestám. +Každá podporovaná platforma má svůj vlastní podadresář +pod \dirname{TEXDIR/bin}. +Seznam podadresářů a odpovídajících platforem je na +obrázku~\ref{fig:bin_text}. + +NepovinnÄ› můžete rovněž pÅ™idat dokumentaÄní manuálové +stránky (man pages) a adresáře Info k~jejich +přísluÅ¡ejícím vyhledávacím cestám, když chcete, +aby je naÅ¡ly systémové nástroje. +DokumentaÄní stránky můžou být automaticky +nalezeny po pÅ™idání do promÄ›nné \envname{PATH}. + +Například pro Bourne-kompatibilní shell, jako je +\prog{bash} a používaný Intel x86 +GNU/Linux se standardním nastavením adresářů, může +být vhodné editovat soubor \filename{$HOME/.profile}. + +\begin{sverbatim} +PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} + +Pro \prog{csh} nebo \prog{tcsh} je editovaný soubor +typicky \filename{$HOME/.cshrc} a +řádky k~pÅ™idání můžou vypadat jako: +\begin{sverbatim} +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{sverbatim} + +Pokud již máte nastavení nÄ›kde ve vaÅ¡ich \uv{dot} souborech, +adresáře \TL\ by mÄ›li, pÅ™irozenÄ›, jednoduÅ¡e pÅ™iměřenÄ› s~nimi splynout. + +\subsubsection{PromÄ›nné prostÅ™edí: globální konfigurace} +\label{sec:envglobal} +Volba, zda uÄinit tyto zmÄ›ny globálnÄ›, anebo pro uživatele právÄ› +pÅ™idaného do systému, je na vás; existuje příliÅ¡ mnoho variací mezi +systémy, kde a jak se tato nastavení provádÄ›jí. +NaÅ¡e dvÄ› rady jsou: 1)~můžete chtít vyhledat soubor +\filename{/etc/manpath.config} a pokud existuje, pÅ™idejte řádky jako + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man +\end{sverbatim} + +A 2)~vyhledejte soubor \filename{/etc/environment}, +který může definovat vyhledávací cestu a další standardní +promÄ›nné prostÅ™edí. + +V~každém (Unixovém) adresáři binárek vytváříme také symbolický +odkaz na adresář \dirname{texmf/doc/man} s~názvem \code{man}. +NÄ›které programy \code{man}, jako například standardní +\MacOSX\ \code{man}, ho automaticky najdou, co odstraňuje +potÅ™ebu jakéhokoliv nastavování dokumentaÄních stránek. + +\subsubsection{Internetovské aktualizace po instalaci z~\DVD} +\label{sec:dvd-install-net-updates} + +Pokud jste instalovali \TL\ z~\DVD\ a pozdÄ›ji si pÅ™ejete +získat aktualizace z~Internetu, budete potÅ™ebovat spuÅ¡tÄ›ní +tohoto povelu---\emph{poté} co jste aktualizovali vaÅ¡i +vyhledávací cestu (jako to bylo popsané v~pÅ™edcházejícím oddíle): + +\begin{alltt} +> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +Toto Å™ekne programu \cmdname{tlmgr} aby pro následující +aktualizace použil nejbližší zrcadlo \CTAN{}u. +Pokud se vyskytnou problémy s~automatickým výbÄ›rem zrcadla, +můžete deklarovat konkrétní zrcadlo \CTAN{}u ze seznamu na stránce +\url{http://ctan.org/mirrors}. Použijte pÅ™esnou cestu k~podadresáři +\dirname{tlnet} tohoto zrcadla, jak jsme uvedli výše. + +\htmlanchor{xetexfontconfig} % keep historical anchor working +\htmlanchor{sysfontconfig} +\subsubsection{Systémová konfigurace fontů pro \XeTeX\ a Lua\TeX} +\label{sec:font-conf-sys} + +\XeTeX\ a Lua\TeX\ mohou používat jakýkoli font instalován +v~systému, nejenom ty, které se nachází +v~\TeX{}ovských stromech. Provádí to prostÅ™ednictvím +podobných, ale ne identických metod. + +Pod Windows jsou fonty dodané s~\TL\ automaticky dostupné pro \XeTeX. +Pokud máte na unixovém systému nainstalován balík \filename{xetex}, +potÅ™ebujete dokonfigurovat váš systém chcete-li, %TODO +aby byl \XeTeX\ schopen najít fonty dodané s~\TL\ +prostÅ™ednictvím vyhledávání systémových jmen a nejen souborů. + +Pro usnadnÄ›ní, když se instaluje balík \pkgname{xetex} +(buÄ ve výchozí instalaci nebo pozdÄ›ji), +se vytváří potÅ™ebný konfiguraÄní soubor +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. + +Pro nastavení fontů \TL{} pro použití v~rámci +celého systému (za pÅ™edpokladu, že máte odpovídající oprávnÄ›ní), +postupujte následovnÄ›: +\begin{enumerate*} +\item Zkopírujte soubor \filename{texlive-fontconfig.conf} do adresáře +\dirname{/etc/fonts/conf.d/09-texlive.conf}. +\item SpusÅ¥te \Ucom{fc-cache -fsv}. +\end{enumerate*} +Pokud nemáte postaÄující práva k~provedení výše popsaných kroků, +neboli jednoduÅ¡e chcete uÄinit fonty \TL{} dosažitelnými pro vás jako +samostatného uživatele, můžete uÄinit následující: +\begin{enumerate*} +\item Zkopírujte soubor \filename{texlive-fontconfig.conf} do + \filename{~/.fonts.conf}, kde \filename{~} oznaÄuje váš + domovský adresář. +\item SpusÅ¥te \Ucom{fc-cache -fv}. +\end{enumerate*} + +Pokud chcete uvidÄ›t jména vÅ¡ech systémových fontů, můžete +spustit příkaz \code{fc-list}. +Zaklínadlo \code{fc-list : family style file spacing} +(vÅ¡echny argumenty jsou písmenkové Å™etÄ›zce) +ukáže obecnÄ› zajímavou informaci. + + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context_mkiv} + +`Starý' \ConTeXt{} (Mark \acro{II}) a `nový' \ConTeXt{} +(Mark \acro{IV}) by mÄ›ly po instalaci \TL{} fungovat bez dalších zásahů +a nemÄ›ly by vyžadovat zvláštní pozornost, pokud budete k~aktualizacím +používat \verb+tlmgr+. + +NicménÄ›, protože \ConTeXt{} Mk\acro{IV} nepoužívá knihovnu kpathsea, +nÄ›jaké nastavení bude požadováno vždycky, když budete instalovat nové +soubory ruÄnÄ› (bez použití \verb+tlmgr+). Po ukonÄení takové instalace +musí každý uživatel Mk\acro{IV} spustit: +\begin{sverbatim} +context --generate +\end{sverbatim} +pro obnovení diskových cache údajů \ConTeXt{}u. +Výslední soubory jsou uloženy do \code{TEXMFCACHE}, +kterého pÅ™ednastavená hodnota v~\TL\ je \verb+TEXMSYSVAR;TEXMFVAR+. + +\ConTeXt\ Mk\acro{IV} bude Äíst ze vÅ¡ech cest uvedených +v~\verb+TEXMFCACHE+ a zapisovat do první zapisovatelné cesty. +PÅ™i Ätení v~případÄ› duplicitních údajů v~pamÄ›ti cache získá +pÅ™ednost poslední nalezený prvek. + +Pro další informace viz +\url{http://wiki.contextgarden.net/Running_Mark_IV}. +% a\url{http://wiki.contextgarden.net/TeX_Live_2010}. + +\subsubsection{ZaÄleňování lokálních a osobních maker} +\label{sec:local_personal_macros} + +Toto je již implicitnÄ› zmínÄ›no v~sekci~\ref{sec:texmftrees}: +adresář \dirname{TEXMFLOCAL} (standardnÄ› +\dirname{/usr/local/texlive/texmf-local} nebo +\verb|%SystemDrive%\texlive\texmf-local| pod Windows) +je urÄen pro rozsáhlé systémové % system-wide +lokální fonty a makra; a adresář +\dirname{TEXMFHOME} (standardnÄ› \dirname{$HOME/texmf} nebo +\verb|%USERPROFILE%\texmf|), je pro osobní fonty a makra. +Pro oba stromy musí být soubory umístÄ›né v~patÅ™iÄných +podadresářích \TDS\ (\TeX\ Directory Structure); +viz \url{http://tug.org/tds} nebo nahlédni do souboru +\filename{texmf/web2c/texmf.cnf}. Například, \LaTeX{}ovský +styl, třída nebo makrobalík by mÄ›l být umístÄ›n + v~\dirname{TEXMFLOCAL/tex/latex} nebo +\dirname{TEXMFHOME/tex/latex}, nebo v~jejich podadresářích. + +\dirname{TEXMFLOCAL} vyžaduje aktuální databázi jmen souborů, jinak +nebudou soubory nalezeny. +Můžete ji obnovit povelem \cmdname{mktexlsr} nebo použít tlaÄítko +`Reinit file database' na konfiguraÄní záložce programu +\TeX\ Live Manager v~režimu \GUI. + +StandardnÄ› je každá z~tÄ›chto promÄ›nných definována jako +samostatný adresář, jak je ukázáno. +To vÅ¡ak není nezbytnÄ› nutné. %This is not a hard-and-fast requirement. +Pokud potÅ™ebujete pÅ™epínat mezi dvÄ›ma verzemi velkých +balíků, například můžete udržovat více stromů pro vaÅ¡e vlastní potÅ™eby. +Toho se dosáhne nastavením \dirname{TEXMFHOME} na seznam adresářů uvnitÅ™ +složených závorek oddÄ›lených Äárkami: + +\begin{verbatim} + TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir} +\end{verbatim} + +Další popis expanze závorek je v~oddíle~\ref{sec:brace-expansion}. + +\subsubsection{ZaÄleňování fontů tÅ™etích stran} +Toto je naneÅ¡tÄ›stí nepříjemné téma. Zapomeňte na nÄ›j +pokud se nechcete probírat v~mnoha +podrobnostech instalace \TeX u. Nezapomeňte si nejdříve +prohlédnout fonty, které jsou +zdarma souÄástí distribuce, viz sekci~\ref{sec:tlfonts}. + +Možnou alternativou je použití \XeTeX{}u nebo Lua\TeX{}u +(viz sekci~\ref{sec:tex.extensions}), které vám +umožní používat fonty operaÄního systému bez jakékoliv instalace v~\TeX{}u. +Pokud to potÅ™ebujete udÄ›lat, vyvinuli jsme maximální úsilí +k~popsání postupu, viz \url{http://tug.org/fonts/fontinstall.html}. +Pokud peÄlivÄ› udržujete mapy svých lokálních fontů, +\texttt{tlmgr generate updmap} \textit{může} být užiteÄné, například pÅ™i +pÅ™echodu od vydání k~vydání; viz dokumentaci \cmdname{tlmgr}. + +\subsection{Testování instalace} +\label{sec:test.install} + +Po nainstalování \TL{} pÅ™irozenÄ› chcete +systém otestovat a zaÄít vytvářet nádherné dokumenty nebo fonty. + +Tento oddíl popisuje základní postupy testování funkÄnosti nového +systému pod Unixem. Pod \MacOSX{} a +Windows budete patrnÄ› spouÅ¡tÄ›t testy pÅ™es uživatelské grafické rozhraní +(\acro{GUI}), ale principy jsou stejné. + +\begin{enumerate} +\item Nejprve ověřte, zda se spustí program \cmdname{tex}: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live ...) +kpathsea version 6.0.1 +Copyright ... D.E. Knuth. +... +\end{alltt} +Pokud obdržíte hlášku s~`command not found' místo výše +uvedeného, nebo se starší verzí, patrnÄ› nemáte nastavený správný podadresář +\dirname{bin} v~promÄ›nné prostÅ™edí \envname{PATH}. VraÅ¥te se +k~informacím o~jejich nastavování na stranÄ›~\pageref{sec:env}. + +\item PÅ™eložte ukázkový soubor \LaTeX{}u: +\begin{alltt} +> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-... (TeX Live ...) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +Pokud selže nalezení souboru \filename{sample2e.tex} nebo jiných +souborů, nejspíše máte aktivní stará nastavení promÄ›nných prostÅ™edí nebo +konfiguraÄních souborů; pro zaÄátek doporuÄujeme zruÅ¡it +nastavení vÅ¡ech promÄ›nných prostÅ™edí souvisejících s~\TeX{}em. +Pro hlubší analýzu a dohledání problému můžete kdykoliv požádat +\TeX{} o detaily toho, co a kde hledá: viz \uv{Ladicí Äinnosti} +na stranÄ›~\pageref{sec:debugging}. + +\item ProhlédnÄ›te si výsledek na obrazovce: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +MÄ›lo by se otevřít nové okno s~pÄ›kným dokumentem popisujícím základy +\LaTeX{}u. (Mimochodem, stojí za pÅ™eÄtení, pokud zaÄínáte s~\TeX em.) +Musíte mít spuÅ¡tÄ›ny +X~Window, aby \cmdname{xdvi} pracovalo. Pokud tomu tak není nebo máte +Å¡patnÄ› nastavenou promÄ›nnou prostÅ™edí +\envname{DISPLAY}, dostanete chybovou hlášku `Can't open display'. + +\item VytvoÅ™te \PS{}ový soubor pro tisk nebo prohlížení: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item VytvoÅ™te \acro{PDF} soubor místo \dvi{}; tento příkaz +ze~souboru \filename{.tex} vytvoří \acro{PDF} přímo: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item ProhlédnÄ›te si \acro{PDF} soubor: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{nebo:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Ani \cmdname{gv} ani \cmdname{xpdf} nejsou zaÅ™azeny na +\TL{} a musíte je instalovat separátnÄ›. Viz +\url{http://www.gnu.org/software/gv} resp. +\url{http://www.foolabs.com/xpdf}. Existuje také velké množství +jiných prohlížeÄů \acro{PDF}. +Pro Windows doporuÄujeme vyzkouÅ¡et Sumatra PDF +(\url{http://blog.kowalczyk.info/software/sumatrapdf}). + +\item Standardní testovací soubory, které mohou být +užiteÄné kromÄ› \filename{sample2e.tex}: + +\begin{ttdescription} +%B% \item [docstrip.tex] VytvoÅ™ení \TeX{}ového zdroje Äi dokumentace ze +%B% souboru~\samp{.dtx}. +\item [small2e.tex] Ukázkový dokument, jeÅ¡tÄ› kratší než +\filename{sample2e}. +\item [testpage.tex] Test, jestli vaÅ¡e tiskárna neposunuje tiskové zrcadlo. +\item [nfssfont.tex] Pro tisk tabulek fontů a testů fontů. +\item [testfont.tex] Pro totéž, ale pro plain \TeX{}. +\item [story.tex] Základní (plain) \TeX{}ový testovací soubor. +Musíte napsat \samp{\bs bye} na výzvu \code{*} po \samp{tex +story.tex}. +\end{ttdescription} + +\item Pokud máte nainstalovaný balík \filename{xetex} package, +můžete prověřit jeho přístup k~systémovým fontům následovnÄ›: +\begin{alltt} +> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +(Nebo to samé pro \filename{luatex}.) + +Jestliže obdržíte chybové hlášení \uv{Invalid fontname `Latin Modern +Roman/ICU'\dots}, pak potÅ™ebujete nakonfigurovat váš systém tak, aby +\XeTeX{} mohl najít fonty dodané s~\TL. Viz +oddíl~\ref{sec:font-conf-sys}. +\end{enumerate} + +\subsection{Odkazy na doplňkový software s~možností stažení z~Internetu} + +Pokud jste \TeX{}ový zaÄáteÄník nebo potÅ™ebujete pomoc se psaním +\TeX{}ových, respektive \LaTeX{}ových dokumentů, navÅ¡tivte +\url{http://tug.org/begin.html}, kde najdete úvodní informace +k~instalaci. + +Odkazy na nÄ›které další pomůcky, o instalaci kterých můžete uvažovat: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} + s~doplňujícími balíky z~\acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, k~zpracování + a konverzi grafiky +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, rovněž pro grafiku. + +\item[\TeX ovsky orientované editory] Existuje Å¡iroký výbÄ›r a je to +záležitost vkusu uživatele. Tady je výbÄ›r v~abecedním Å™azení +(nÄ›kolik málo je pouze pro Windows). + \begin{itemize*} + \item \cmdname{GNU Emacs} je pÅ™irozenÄ› k~dispozici pod Windows, viz + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs} s~Auc\TeX em pro Windows je k~dispozici z~\CTAN{}u. + Jeho domovská stránka je \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} je k~dostání z~\url{http://mirror.ctan.org/support/LEd}. + \item \cmdname{SciTE} je k~dostání z~\url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} je volný (free) software, k~dispozici + z~\url{http://www.xmlmath.net/texmaker}. + \item \cmdname{TexMakerX} je odboÄka programu \cmdname{Texmaker} + s~dodateÄnými rysy; \url{http://texmakerx.sourceforge.net}. + \item \cmdname{TeXnicCenter} je volný software, + k~dispozici z~\url{http://www.texniccenter.org} + a v~distribuci pro\TeX{}t. + \item \cmdname{TeXworks} je volný software, k~dispozici + z~\url{http://tug.org/texworks} + a je nainstalovaný pro Windows a \MacOSX\ jako souÄást \TL. + \item \cmdname{Vim} je volný software, k~dispozici + z~\url{http://www.vim.org}. + \item \cmdname{WinEdt} je shareware dostupný tÅ™eba + na \url{http://tug.org/winedt} + nebo na \url{http://www.winedt.com}. + \item \cmdname{WinShell} je k~dispozici z~\url{http://www.winshell.de}. + \end{itemize*} +\end{description} +Pro mnohem delší seznam balíků a programů, viz +\url{http://tug.org/interest.html}. + +\section{Specializované instalace} + +PÅ™edcházející oddíly popisovaly základní instalaÄní proces. +TeÄ se zaměříme na nÄ›které speciální případy. + +\htmlanchor{tlsharedinstall} +\subsection{Instalace sdílené uživateli (nebo cross-machine)} +\label{sec:sharedinstall} + +\TL{} byl navržený tak, aby se dal sdílet mezi různými +uživateli jednoho systému a/nebo mezi různými systémy na síti. +Se standardní strukturou adresářů se nekonfigurují +žádné % no hard paths are configured +pevné plné cesty: umístÄ›ní souborů potÅ™ebných pro programy \TL{} +je zřízeno relativnÄ› k~programům. Můžete to +najít v~nejdůležitÄ›jším konfiguraÄním souboru +\filename{$TEXMFMAIN/web2c/texmf.cnf}, který obsahuje řádky jako jsou +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +To znamená, že k~získání funkÄního nastavení staÄí +pÅ™idat ke své vyhledávací cestÄ› adresář binárek \TL{} +pro jejich platformu. + +%By the same token, +Stejným způsobem můžete nainstalovat \TL{} lokálnÄ› a +pak pÅ™esunout celou hierarchii pozdÄ›ji na místo na síti. + +Pro Windows můžete stáhnout z~\url{http://tug.org/texlive/w32client.html} +vzorový skript síťové instalace nazvaný +\filename{w32client}. Vytváří nastavení a nabídkové +zkratky k~užívání stávající instalace \TL{} na \acro{LAN}. +Registruje také program k~odinstalování \filename{w32unclient}, +je po ruce ve stejném zip-souboru. Pro další informace +odkazujeme na webovou stránku. + +\htmlanchor{tlportable} +\subsection{Mobilní \USB{} instalace} +\label{sec:portable-tl} + +Volba instalaÄního programu \code{-portable} (nebo +příkaz \code{V} v~textové verzi instalátoru nebo +odpovídající volba \GUI{}) vytváří úplnÄ› samostatnou +instalaci \TL{} pod spoleÄným koÅ™enem a pÅ™edcházející integraci systému. +Takovou instalaci můžete vytvoÅ™it přímo na klíÄi \USB{}, +nebo ji zkopírovat na klÃ­Ä \USB{} pozdÄ›ji. + +Ke spuÅ¡tÄ›ní \TeX\ pÅ™i použití této pÅ™enosné instalace musíte pÅ™idat +přísluÅ¡ný adresář binárek k~vyhledávané cestÄ› +bÄ›hem vaší práce na terminálu, jako obvykle. +Pod Windows můžete dvakrát kliknout +na \filename{tl-tray-menu} v~koÅ™enovém adresáři instalace a zvolit si mezi +nÄ›kolika běžnými úkoly, jak je to ukázáno na této obrazovce: + +\medskip +\tlpng{tray-menu}{4cm} +\smallskip + +\noindent Vstup `More\ldots' vysvÄ›tluje, jak si můžete +pÅ™izpůsobit tuto nabídku. + + +\htmlanchor{tlisoinstall} +\subsection{\ISO\ (nebo \DVD) instalace} +\label{sec:isoinstall} + +Pokud nepotÅ™ebujete příliÅ¡ Äasto aktualizovat nebo jiným +způsobem mÄ›nit vaÅ¡i instalaci +a\slash nebo máte více systémů, na kterých provozujete \TL{}, +může pro vás být užiteÄné vytvoÅ™it +\ISO\ obraz vaší instalace \TL{}, protože: + +\begin{itemize} +\item Kopírování \ISO\ obrazů mezi různými poÄítaÄi je mnohem rychlejší +než zkopírování obyÄejné instalace. +\item Pokud máte duální zavádÄ›ní různých operaÄních systémů a chcete +sdílet instalaci \TL, instalace \ISO{} není svázaná výstÅ™ednostmi +a ohraniÄeními % is not tied to the idiosyncrasies +vzájemnÄ› rozdílných podporovaných souborových systémů +(\acro{FAT32}, \acro{NTFS}, \acro{HFS+}). +\item Virtuální stroj dokáže jednoduÅ¡e namontovat takové \ISO. +\end{itemize} + + +SamozÅ™ejmÄ› si můžete také napálit \ISO\ obraz na \DVD, pokud +to uznáte za užiteÄné. + +Systémy \GNU/Linux/Unix s~pracovní plochou, vÄetnÄ› \MacOSX, +jsou schopné namontovat \ISO. Nezávisle na tom se nic +nemÄ›ní v~porovnání s~běžnou instalací na pevném disku, +viz oddíl \ref{sec:env}. + +PÅ™i přípravÄ› takové \ISO\ instalace je nejlepší vynechat +podadresář roku vydání a mít +\filename{texmf-local} na stejné úrovni jako ostatní stromy +(\filename{texmf}, \filename{texmf-dist} atd.). Toto můžete udÄ›lat pomocí +obyÄejných voleb adresářů v~instalátoru. + +Pro fyzický (spíše než virtuální) systém Windows můžete +napálit \ISO\ obraz na \acro{DVD}. AvÅ¡ak, může stát za +to prozkoumat svobodné volby \ISO-montování. +Pro Windows \acro{XP}, Microsoft nabízí +\filename{winxpvirtualcdcontrolpanel}. + +Pro integraci systému Windows, můžete zahrnout skripty \filename{w32client}a +popsané v~oddíle~\ref{sec:sharedinstall} a na +\url{http://tug.org/texlive/w32client.html}, které pracují téměř stejnÄ› +dobÅ™e pro \ISO\ jako pro síťovou instalaci. + +Pod \MacOSX, TeXShop a \TeX{}works jsou schopny použít \acro{DVD} +instalaci pokud symbolický odkaz \filename{/usr/texbin} ukazuje na +přísluÅ¡ný adresář binárek, například, +\begin{verbatim} +sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin +\end{verbatim} + +Historická poznámka: \TL{} 2010 byla první edice \TL{}, která už již není +distribuovaná `live'. NicménÄ›, spouÅ¡tÄ›ní z~\DVD\ nebo \ISO\ si vždy +vyžadovalo jistou obratnost; +pÅ™edevším nebyla možnost nastavení alespoň jedné dodateÄné +promÄ›nné prostÅ™edí. Pokud vytváříte vaÅ¡e \ISO\ ze stávající +instalace, není to potÅ™ebné. + +\htmlanchor{tlmgr} +\section{\cmdname{tlmgr}: správa vaší instalace} +\label{sec:tlmgr} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} v~režimu \GUI: hlavní okno, po kliknutí +na tlaÄítko `Load'.} +\label{fig:tlmgr_gui} +\end{figure} + +\begin{figure}[tb] +\hbox to \hsize{% + \vtop{\hsize=.59\linewidth + \null % make figures align at the top + \tlpng{tlmgr-general-options}{\hsize} + \caption{\texttt{tlmgr} v~režimu \GUI: Obecné volby} + \label{fig:tlmgr_general_options} + } + \hfil + \vtop{\hsize=.39\linewidth + \null + \tlpng{tlmgr-paper-options}{\hsize} + \caption{\texttt{tlmgr} v~režimu \GUI: Volby rozmÄ›ru papíru} + \label{fig:tlmgr_paper_options} + } +} +\end{figure} + +\TL{} obsahuje program nazvaný \prog{tlmgr} pro správu \TL{} +po výchozí instalaci. Programy \prog{updmap}, +\prog{fmtutil} a \prog{texconfig} jsou dosud zahrnuté a +zůstanou i v~budoucnosti, avÅ¡ak preferovaným rozhraním je +nyní \prog{tlmgr}. Jeho schopnosti zahrnují: +\begin{itemize*} +%\item výpis seznamů schémat, kolekcí a balíků; +\item instalaci, aktualizaci, zálohování, obnovení a odinstalování +jednotlivých balíků, volitelnÄ› i se zapoÄítáním závislostí mezi +balíky; % optionally taking dependencies into account; +\item vyhledávání a pÅ™ehled balíků, atd.; +\item výpis seznamu, pÅ™idání a odstranÄ›ní platforem; +\item zmÄ›na instalaÄních voleb jako například velikosti papíru a umístÄ›ní +zdrojů (viz sekci~\ref{sec:location}). +\end{itemize*} + +\subsection{GUI režim \cmdname{tlmgr}} +\prog{tlmgr} může být spuÅ¡tÄ›n v~režimu \GUI{} +(obrázek~\ref{fig:tlmgr_gui}) povelem +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +nebo ve Windows prostÅ™ednictvím Start menu: \texttt{Start}, \texttt{Programs}, +\texttt{TeX Live 2012}, \texttt{TeX Live Manager}. Po kliknutí na `Load' +se zobrazí seznam balíků, které jsou k~dispozici, a nainstalovaných +balíků. +%\Dash poslednÄ› zmínÄ›né jsou oznaÄeny `(i)'. +PochopitelnÄ› se pÅ™edpokládá, že instalaÄní zdroj je platný a dosažitelný. + +Obrázky~\ref{fig:tlmgr_general_options} a~\ref{fig:tlmgr_paper_options} +ukazují obrazovky obecných voleb a volby rozmÄ›ru papíru. + +\subsection{Vzorové realizace \cmdname{tlmgr} z~příkazového řádku} + +Po výchozí instalaci můžete svůj systém aktualizovat +na nejnovÄ›jší dostupnou verzi pomocí: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +Pokud vás to znepokojuje, zkuste nejdříve +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +nebo (ménÄ› upovídané): +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} + +Tento složitÄ›jší příklad pÅ™idá z~místního adresáře kolekci +pro nástroj (engine) \XeTeX: + +\begin{alltt} +> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +Vytvoří následující výstup (zkrácené): +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2012/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} + +Jak můžete vidÄ›t, \prog{tlmgr} nainstaluje závislosti +a postará se o~vÅ¡echny potÅ™ebné poinstalaÄní Äinnosti, +vÄetnÄ› aktualizace databáze názvů souborů +a (znovu)vygenerování formátů. Výše jsme vytvoÅ™ili +nové formáty pro \XeTeX. + +K~popisu balíku (nebo kolekce Äi schémy) zadejte: +\begin{alltt} +> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +co vytvoří +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +Nakonec to nejdůležitÄ›jší -- úplnou dokumentaci najdete na +\url{http://tug.org/texlive/tlmgr.html} nebo zadáním: +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + +\section{Poznámky o Windows} +\label{sec:windows} + +\subsection{Vlastnosti typické pro Windows} %Windows-specific features +\label{sec:winfeatures} +Pod Windows dÄ›lá instalaÄní program nÄ›které dodateÄné vÄ›ci: +\begin{description} +\item[Nabídky a zkratky.] Je nainstalována nová položka `\TL{}' nabídky + Start, obsahující vstupy pro nÄ›které programy \GUI{} + (\prog{tlmgr}, \prog{texdoctk}, prohlížeÄ PostScriptu PS\_View (\prog{psv})) + a trochu dokumentace. +\item[PÅ™idružení souborů.] Pokud je to povoleno, \prog{TeXworks}, \prog{Dviout} + a \prog{PS\_view} se buÄ stávají pÅ™edvolenými programy pro jejich přísluÅ¡né + typy souborů, nebo pro tyto typu souborů získávají položku v~nabídce + `Otevřít pomocí' dostupnou kliknutím pravým tlaÄítkem. +\item[Konvertor bitmap na soubory formátu EPS.] Různé formáty + bitmapových souborů mohou být vstupem programu + \cmdname{bitmap2eps} v~jejich položce `Otevřít pomocí' + nabídky dostupné kliknutím pravým tlaÄítkem. \cmdname{Bitmap2eps} + je jednoduchý skript, který skuteÄnou práci ponechává + na programech \cmdname{sam2p} nebo \cmdname{bmeps}. +\item[Automatické nastavení promÄ›nné path.] Nevyžadují se žádné + kroky ruÄní konfigurace. +\item[Odinstalátor.] InstalaÄní program vytvoří položku + pro \TL{} pod nabídkou `Add/Remove + Programs'. Vztahuje se k~tomu záložka `Uninstallation' \GUI\ + programu \TeX\ Live Manager. +\end{description} + +\subsection{DodateÄný obsažený software pod Windows} + +Pro úplnost, instalace \TL{} potÅ™ebuje další balíky a programy, +které na stroji s~Windows obvykle nenajdete. +\TL{} poskytuje chybÄ›jící souÄásti: +\begin{description} +\item[Perl a Ghostscript.] Kvůli důležitosti Perlu a Ghostscriptu + zahrnuje \TL{} `skryté' kopie tÄ›chto programů. + Programy \TL{}, které je potÅ™ebují, vÄ›dí, kde je najdou, ale + neprozrazují jejich přítomnost nastavením promÄ›nných prostÅ™edí nebo + registrů. Nejsou to úplné instalace a nemÄ›ly by pÅ™ekážet žádným + systémovým instalacím Perlu nebo Ghostscriptu. + +\item[PS\_View.] Nainstalován je také PS\_View, prohlížeÄ \PS{} + a \acro{PDF} souborů; viz obr.~\ref{fig:psview}. + +\begin{figure}[tb] +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: k~dispozici jsou velmi vysoká zvÄ›tÅ¡ení!}\label{fig:psview} +\end{figure} + +\item[dviout.] Nainstalován je také \prog{dviout}, prohlížeÄ + \acro{DVI} souborů. Nejdříve, když prohlížíte soubory pomocí + \cmdname{dviout}, vytvoří tento fonty, + protože fonty pro obrazovku nebyly nainstalovány. Po chvilce + budete mít vytvoÅ™enu vÄ›tÅ¡inu fontů pro použití a okno + vytváření fontů uvidíte už jen zřídka. Více informací + je možné nalézt ve (velmi doporuÄené) odpovídající nápovÄ›dÄ›. +\item[\TeX{}works.] \TeX{}works je \TeX ovsky orientovaný + editor se zabudovaným prohlížeÄem \acro{PDF}. + Je již pro \TL\ nakonfigurován. + +\item[Nástroje příkazového řádku.] Řada běžných unixových + programů řízených z~příkazového řádku je nainstalovaných + pod Windows spolu s~běžnými binárkami \TL. Tyto zahrnují + programy \cmdname{gzip}, %\cmdname{chktex}, \cmdname{jpeg2ps}, + \cmdname{unzip} %, \cmdname{wget} + programy ze skupiny \cmdname{xpdf} (\cmdname{pdfinfo}, + \cmdname{pdffonts}, \ldots) a běžné unixové programy + užívané na příkazové řádce. + Samotný prohlížeÄ \cmdname{xpdf} není k~dispozici pro Windows. + Namísto nÄ›ho si můžete z~\url{http://blog.kowalczyk.info/software/sumatrapdf} stáhnout prohlížeÄ \acro{PDF} Sumatra, + který je založen na \cmdname{xpdf}, spoleÄnÄ› s~dalšími možnostmi. + +\item[fc-list, fc-cache, \ldots] Nástroj z~knihovny + fontconfig pomáhá \XeTeX{}u efektivnÄ›ji zacházet s~fonty pod Windows. + Můžete použít \prog{fc-list} k~urÄení jmen fontů + k~pÅ™edání %to pass to Xe\TeX's extended \cs{font} command. + příkazu \XeTeX{}u \cs{font} s~rozšířenou funkcionalitou. + Pokud je to potÅ™ebné, nejdříve spusÅ¥te \prog{fc-cache} k~aktualizaci + informací o~fontech. +\end{description} + +\subsection{User Profile je Home} +\label{sec:winhome} +Windowsovský protÄ›jÅ¡ek domovského (home) adresáře Unixu je adresář +\verb|%USERPROFILE%|. Pod Windows \acro{XP} je to obvykle +\verb|C:\Documents and Settings\| a pod +Windows Vista a Windows 7 je to +\verb|C:\Users\|. V~souboru +\filename{texmf.cnf} a obecnÄ› pro \KPS{}, se bude \verb|~| expandovat +pÅ™iměřenÄ› v~obou systémech Windows a Unix. + +\subsection{Registry Windows} +\label{sec:registry} +Windows ukládá téměř vÅ¡echny konfiguraÄní údaje do svých registrů. Registr +obsahuje soubor hierarchicky uspořádaných klíÄů, s~nÄ›kolika koÅ™enovými klíÄi. +NejdůležitÄ›jší pro instalaÄní programy jsou struÄnÄ› Å™eÄeno +\path{HKEY_CURRENT_USER} a \path{HKEY_LOCAL_MACHINE}, \path{HKCU} a +\path{HKLM}. Část \path{HKCU} registru je v~domovském adresáři +uživatele (viz sekci~\ref{sec:winhome}). \path{HKLM} je +obvykle v~podadresáři adresáře Windows. + +V~nÄ›kterých případech je možné získat systémové informace z~promÄ›nných +prostÅ™edí, ale pro další informace, kupříkladu umístÄ›ní zkratek, je nutné +nahlédnout do registrů. Trvalé nastavení promÄ›nných prostÅ™edí si rovněž +vyžaduje přístup k~registrům. + +\subsection{OprávnÄ›ní Windows} +\label{sec:winpermissions} + +V~novÄ›jších verzích Windows se dÄ›lá rozdíl mezi běžnými uživateli a +administrátory, když pouze poslednÄ› zmínÄ›ní mají volný přístup k~celému +operaÄnímu systému. Ve skuteÄnosti můžete tyto třídy uživatelů radÄ›ji +oznaÄit jako neprivilegovaní uživatelé a normální uživatelé: být +administrátorem je pravidlo, ne výjimka. PÅ™esto jsme se snažili uÄinit +\TL{} instalovatelným bez administrativních výsad. + +Pokud je uživatelem administrátor, je možnost instalovat +i pro vÅ¡echny uživatele poÄítaÄe. Pokud je tato volba zvolena, +odkazy (shortcuts) se vytvářejí pro +vÅ¡echny uživatele a systémové prostÅ™edí se upravuje. Jinak jsou odkazy a +položky nabídky vytvářeny pouze pro aktuálního uživatele a upravuje +se jen jeho prostÅ™edí. +%Použijte volbu \optname{non-admin} pro \prog{install-tl}, pokud +%upÅ™ednostňujete nastavení podle uživatele dokonce jako administrátor. + +Bez ohledu na status administrátora je standardní koÅ™enový adresář \TL{} +navržený instalaÄním programem vždycky pod \verb|%SystemDrive%|. +Instalátor vždy testuje, zda je koÅ™enový adresář +zapisovatelný pro aktuálního uživatele. + +Problém se může vyskytnout, pokud uživatel není administrátor a \TeX{} již +existuje ve vyhledávací cestÄ›. Protože skuteÄná cesta se sestává ze +systémové cesty následované uživatelskou cestou, +nový \TL{} by nikdy nemÄ›l získat pÅ™ednost. +Jako bezpeÄnostní opatÅ™ení vytváří instalátor odkaz na příkazový řádek +(command-prompt), ve kterém je adresář binárek nového \TL{} +pÅ™edÅ™azený lokální vyhledávací cestÄ›. Nový \TL{} bude pořád použitelný, když +bude běžet v~relaci příkazového řádku spuÅ¡tÄ›né z~takového odkazu. Odkaz na +\TeX{}works, pokud je nainstalován, rovněž pÅ™edÅ™adí \TL{} +k~vyhledávací cestÄ›, proto by mÄ›l být imunní vůÄi tomuto problému cest. + +Pro Windows Vista a Windows~7 je tady jiná zrůdnost: % fígl, finta =twist +dokonce i když jste pÅ™ihlášen jako správce, +musíte explicitnÄ› požádat o správcovské práva. Ve skuteÄnosti nemá význam +pÅ™ihlaÅ¡ovat se jako správce. Místo toho, kliknutí pravým +tlaÄítkem na program nebo odkaz, +který chcete použít, vám obvykle nabídne volbu +`Spustit jako správce/Run as administrator'. + + +\subsection{ZvÄ›tÅ¡ení maxima pamÄ›ti pod Windows a Cygwin} +\label{sec:cygwin-maxmem} + +Uživatelé Windows a Cygwin (pro zvláštnosti instalace Cygwin viz oddíl~\ref{sec:cygwin}) +mohou zjistit, že pÅ™i bÄ›hu nÄ›kterých programů dodaných s~\TL, +trpí nedostatkem pamÄ›ti. Například, \prog{asy} zhavaruje pro +nedostatek pamÄ›ti +pokud se pokusíte alokovat pole 25,000,000 reálných Äísel a +Lua\TeX\ může mít málo pamÄ›ti pokud zkusíte zpracovat dokument +s~velkým množstvím rozsáhlých fontů. + +Pro Cygwin můžete zvÄ›tÅ¡it množství dostupné pamÄ›ti podle +návodu v~příruÄce the Cygwin User's Guide +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +Pro Windows musíte vytvoÅ™it soubor, například \code{moremem.reg}, obsahující +tyto ÄtyÅ™i řádky: + +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +\noindent a pak spustit povel \code{regedit /s moremem.reg} jako +administrátor. (Pokud si pÅ™ejete zmÄ›nit paměť pouze pro +stávajícího uživatele místo vÅ¡ech, použijte \code{HKEY\_CURRENT\_USER}.) + + +\begin{otherlanguage}{slovak} +\frenchspacing +% don't use \Webc so the \uppercase in the headline works. +\section{Používateľská príruÄka ku systému Web2C} +\Webc{} obsahuje množinu \TeX-príbuzných programov, t.j.\ samotný \TeX{}, +\MF{}, \MP, \BibTeX{}, atÄ. Je to srdce systému \TL{}. +Domovská stránka \Webc{}, s~aktuálnou príruÄkou a Äalšími vecami, je +\url{http://tug.org/web2c}. + +Trochu histórie: originálna implementácia pochádza +od Thomasa Rokického, ktorý v~roku 1987 vyvinul prvý +\TeX{}-to-C systém založený na zmenových súboroch systému pre Unix, ktoré +boli v~prvom rade pôvodnou prácou Howarda Trickeya a Pavla Curtisa. +Tim Morgan sa stal spravovateľom systému a poÄas jeho obdobia sa meno zmenilo +na Web-to-C\@. V~roku 1990 Karl Berry prebral túto prácu, +asistoval pri tuctoch dodatoÄných príspevkov a v~roku 1997 podal +taktovku Olafovi Weberovi, ktorý ju v~roku 2006 vrátil Karlovi. + +\Webc{} systém beží pod Unixom, 32bitovými Windows, +\acro{MacOSX} a inými operaÄnými systémami. Používa originálne +\TeX{} zdrojové súbory od Knutha a ostatné základné programy napísané +v~systéme kultivovaného programovania \web{}, ktoré sú preložené do zdrojového kódu jazyka C. +Základné programy \TeX{}u sú spracované týmto spôsobom: +\begin{description} +\renewcommand{\makelabel}[1]{\descriptionlabel{\mdseries\cmdname{#1}}} +\item[bibtex] Spravovanie bibliografií. +%\item[dmp] Konverzia \cmdname{troff} do MPX (\MP{} obrázky). +\item[dvicopy] Vytváranie modifikovanej kópie \dvi{} súboru. +\item[dvitomp] Konverzia \dvi{} do MPX (\MP{} obrázky). +\item[dvitype] Konverzia \dvi{} do ľudsky Äitateľného textu. +\item[gftodvi] Generovanie fontov pre náhľad. +\item[gftopk] Konverzia gf formátu fontov do pakovaných fontov. +\item[gftype] Konverzia gf formátu fontov do ľudsky Äitateľného textu. +%\item[makempx] \MP{} znaÄkové sádzanie. +\item[mf] \MF{} -- vytváranie rodín fontov. +\item[mft] Preddefinované \MF ové zdrojové súbory. +\item[mpost] \MP{} -- tvorba technických diagramov. +%\item[mpto] \MP{} -- znaÄkový výber. +%\item[newer] Porovnanie modifikaÄných Äasov. +\item[patgen] Vytváranie vzorov rozdeľovania slov. +\item[pktogf] Konverzia pakovaných formátov fontov do +gf formátov. +\item[pktype] Konverzia pakovaných písiem do ľudsky Äitateľného textu. +\item[pltotf] Konverzia `Property list' do TFM. +\item[pooltype] Zobrazovanie \singleuv{\web{} pool} súborov. +\item[tangle] Konverzia \web{} súborov do Pascalu. +\item[tex] \TeX{} -- sadzba. +\item[tftopl] Konverzia TFM do `property list'. +\item[vftovp] Konverzia virtuálneho fontu do virtuálneho `property list'. +\item[vptovf] Konverzia virtuálneho `property list' do virtuálneho fontu. +\item[weave] Konverzia \web{} súborov do \TeX u. +\end{description} +\noindent Presné funkcie a syntax týchto programov sú popísané +v~dokumentáciách jednotlivých balíkov alebo v~dokumentácii +\Webc{}. Napriek tomu, poznanie niekoľkých princípov, ktoré +platia pre celý balík programov, vám pomôže vyÅ¥ažiÅ¥ Äo najviac +z~vaÅ¡ej \Webc{} inÅ¡talácie. + +VÅ¡etky programy dodržiavajú Å¡tandardné \GNU{} voľby: + +\begin{description} +\item[\texttt{--help}] Vypisuje prehľad základného používania. +\item[\texttt{--verbose}] Vypisuje detailnú správu spracovania. +\item[\texttt{--version}] Vypisuje informáciu o~verzii, potom skonÄí. +\end{description} + +Na vyhľadávanie súborov používajú \Webc{} programy prehľadávaciu +knižnicu \KPS{} (\url{http://tug.org/kpathsea}). +Táto knižnica používa kombináciu premenných +prostredia a niekoľkých konfiguraÄných súborov na optimalizáciu +prehľadávania adresárového stromu \TeX u{}. \Webc{} zvládne +prácu s~viacerými adresárovými stromami súÄasne, Äo je +užitoÄné, ak niekto chce udržiavaÅ¥ Å¡tandardnú distribúciu \TeX u a jeho +lokálne a osobné rozšírenia v~rozliÄných stromoch. Na urýchlenie +vyhľadávania súborov, koreň každého stromu obsahuje súbor +\file{ls-R} so záznamom obsahujúcim meno a relatívnu cestu ku +vÅ¡etkým súborom umiestneným pod týmto koreňom. + + +\subsection{Vyhľadávanie ciest knižnicou Kpathsea} +\label{sec:kpathsea} +Najprv popíšeme vÅ¡eobecný mechanizmus vyhľadávania ciest +knižnicou \KPS{}. + +\emph{Vyhľadávacou cestou} nazveme zoznam \emph{elementov cesty}, +ktorými sú v~prvom rade mená adresárov +oddelené dvojbodkou alebo bodkoÄiarkou. +Vyhľadávacia cesta môže pochádzaÅ¥ z~viacerých zdrojov. +Pri vyhľadávaní súboru \samp{my-file} podľa cesty \samp{.:/dir}, +\KPS{} skontroluje každý element cesty: najprv \file{./my-file}, +potom \file{/dir/my-file}, vracajúc prvý zodpovedajúci nájdený +prvok (alebo prípadne vÅ¡etky zodpovedajúce prvky). + +Aby bolo dosiahnuté prispôsobenie sa konvenciám Äo možno najviac +operaÄných systémov, na neunixových systémoch \KPS{} môže používaÅ¥ +oddeľovaÄe názvov súborov rôzne od dvojbodky (\samp{:}) a +lomítka (\samp{/}). + +Pri kontrolovaní urÄitého elementu cesty \var{p} \KPS{} najprv +overí, Äi sa na naň nevzÅ¥ahuje vopred vybudovaná databáza (pozri +\singleuv{Data\-báza názvov súborov} na +strane~\pageref{sec:filename.database}), t.\,j., Äi sa databáza nachádza +v~adresári, ktorý je prefixom \var{p}. Ak to tak je, Å¡pecifikácia +cesty sa porovnáva s~obsahom databázy. + +Ak databáza neexistuje, alebo sa nevzÅ¥ahuje na tento element cesty, alebo +sa v~nej hľadaný súbor nevyskytuje, celý systém súborov je prehľadaný +(pokiaľ to nebolo zakázané Å¡pecifikáciou zaÄínajúcou \samp{!!} a +hľadaný súbor musí existovaÅ¥). \KPS{} zostrojí zoznam adresárov +zodpovedajúcich tomuto elementu cesty a potom skontroluje každý +z~nich, Äi sa v~ňom nenachádza hľadaný súbor. + +Podmienka \singleuv{súbor musí existovaÅ¥\kern1pt} sa týka napr.\ súborov typu +\samp{.vf} a vstupných súborov Äítaných príkazom \TeX u \cs{openin}. +Takéto súbory nemusia existovaÅ¥ (napr.\ \file{cmr10.vf}) a nebolo +by dobré prehľadávaÅ¥ kvôli nim celý disk. Preto, ak zabudnete +aktualizovaÅ¥ \file{ls-R} pri inÅ¡talácii nového \samp{.vf} súboru, +súbor nebude nikdy nájdený. Každý element cesty sa prekontroluje: najprv +databáza, potom disk. KeÄ je súbor nájdený, vyhľadávanie sa zastaví +a výsledok je vrátený. + +Hoci najjednoduchší a najbežnejší element cesty je meno adresáru, +\KPS{} podporuje aj iné zdroje vo vyhľadávacích cestách: dediÄné +(layered) Å¡tandardné hodnoty, mená premenných prostredia, hodnoty +súboru \file{config}, domáce adresáre používateľov a rekurzívne +prehľadávanie podadresárov. Preto, ak hovoríme, že \KPS{} +\emph{rozbalí} element cesty, znamená to, že pretransformuje vÅ¡etky +Å¡pecifikácie do základného mena alebo mien adresárov. Toto je +popísané v~nasledujúcich odsekoch. + +VÅ¡imnite si, že keÄ je meno hľadaného súboru vyjadrené absolútne +alebo explicitne relatívne, t.\,j.\ zaÄína \samp{/} alebo \samp{./} +alebo \samp{../}, \KPS{} jednoducho skontroluje, Äi taký súbor +existuje. +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{IlustraÄný príklad konfiguraÄného súboru} + \label{fig:configsample} +\end{figure*} +\fi + +\subsubsection{Zdroje cesty} +\label{sec:pathsources} +Vyhľadávacia cesta môže byÅ¥ vytvorená z~rôznych zdrojov. +\KPS{} ich používa v~tomto poradí: +\begin{enumerate} +\item + Používateľom nastavená premenná prostredia, napríklad \envname{TEXINPUTS}\@. + Premenné prostredia s~pridanou bodkou a menom programu majú prednosÅ¥ pred +premennými rovnakého mena, ale bez prípony. + Napríklad, keÄ \samp{latex} je meno práve bežiaceho programu, potom + premenná \envname{TEXINPUTS.latex} prepíše \envname{TEXINPUTS}. +\item + Programovo-Å¡pecifický konfiguraÄný súbor, napríklad riadok + \singleuv{\texttt{S /a:/b}} v~súbore \file{config.ps} \cmdname{dvips}. +\item KonfiguraÄný súbor \KPS{} \Dash{} \file{texmf.cnf}, obsahujúci riadok + ako \samp{TEXINPUTS=/c:/d} (pozri Äalej). +\item Predvolené hodnoty poÄas kompilácie. +\end{enumerate} +\noindent VÅ¡etky tieto hodnoty vyhľadávacej cesty môžete prezeraÅ¥ +použitím ladiacích možností (pozri \singleuv{Ladenie} na +strane~\pageref{sec:debugging}). + +\subsubsection{KonfiguraÄné súbory} + +\KPS{} Äíta poÄas behu z~\emph {konfiguraÄných súborov} +s~menom \file{texmf.cnf} vyhľadávaciu cestu a ÄalÅ¡ie definície. +Vyhľadávacia cesta používaná na hľadanie týchto súborov sa +volá \envname{TEXMFCNF}, ale neodporúÄame nastavovaÅ¥ túto (ani iné) +premennú prostredia. + +Namiesto toho normálna inÅ¡talácia vyústi do súboru +\file{.../2012/texmf.cnf}. Ak musíte vykonaÅ¥ zmeny implicitných +nastavení (obyÄajne to nie je nutné), toto je miesto, kam sa majú vložiÅ¥. +Hlavný konfiguraÄný súbor je \file{.../2012/texmf/web2c/texmf.cnf}. +Nesmiete editovaÅ¥ tento neskorší súbor, pretože vaÅ¡e zmeny budú stratené +pri obnove šírenej verzie. + +\emph{VÅ¡etky} súbory +\file{texmf.cnf} vo vyhľadávacej ceste budú preÄítané a definície +v~starších súboroch prepíšu definície v~novších súboroch. +Napríklad, pri vyhľadávacej ceste \verb|.:$TEXMF|, +hodnoty z~\file{./texmf.cnf} prepíšu hodnoty z~\verb|$TEXMF/texmf.cnf|. + +\begin{itemize} +\item + Komentáre zaÄínajú znakom \singleuv{\texttt{\%}} a pokraÄujú do konca + riadku. +\item + Prázdne riadky sú ignorované. +\item + Znak \bs{} na konci riadku slúži ako pokraÄovací znak, t.j.\ + nasledujúci riadok je k~nemu pripojený. Prázdne znaky na zaÄiatku + pripájaných riadkov nie sú ignorované. +\item + VÅ¡etky ostatné riadky majú tvar: +\begin{alltt} + \var{variable}[.\var{progname}] [=] \var{value} +\end{alltt}% + kde \samp{=} a prázdne znaky naokolo sú nepovinné. +\item + Meno premennej \singleuv{\texttt{\var{variable}}} môže obsahovaÅ¥ + akékoľvek znaky okrem prázdnych znakov, \samp{=}, alebo \samp{.}, + ale obmedziÅ¥ sa na znaky \samp{A-Za-z\_} je najbezpeÄnejÅ¡ie. +\item + Ak je \singleuv{\texttt{.\var{progname}}} neprázdne, definícia sa + použije iba vtedy, keÄ práve bežiaci program má meno + \texttt{\var{progname}} alebo \texttt{\var{progname}.exe}. + Toto umožňuje napríklad maÅ¥ pre rôzne nadstavby \TeX u rôzne + vyhľadávacie cesty. +\item Hodnota \singleuv{\texttt{\var{value}}} môže obsahovaÅ¥ akékoľvek + znaky okrem \singleuv{\texttt{\%}} a \samp{@}. Na pravej strane nie je + možné použiÅ¥ \singleuv{\texttt{\$\var{var}.\var{prog}}}; namiesto toho + musíte použiÅ¥ ÄalÅ¡iu premennú. Znak \samp{;} vo + \singleuv{\texttt{\var{value}}} je preložený do \samp{:} ak sme pod + operaÄným systémom Unix. Toto je užitoÄné, keÄ chceme maÅ¥ jediný + \file{texmf.cnf} súbor pre systémy Unix, MSDOS a Windows. +\item + VÅ¡etky definície sú preÄítané skôr, ako sa expandujú. Preto môžu + existovaÅ¥ referencie na premenné skôr, ako sú tieto definované. +\end{itemize} +Ukážkový úsek konfiguraÄného súboru, ilustrujúci väÄÅ¡inu +týchto bodov\ifSingleColumn +\ignorespaces: +\verbatiminput{examples/ex5.tex} +\else +\space je na obrázku~\ref{fig:configsample}. +\fi + +\subsubsection{Expanzia cesty} +\label{sec:pathexpansion} + +\KPS{} rozpoznáva urÄité zvláštne znaky a konÅ¡trukcie vo +vyhľadávacích cestách podobné tým, Äo existujú v~prostrediach +unixovských interprétov príkazového riadku (shells). Ako vÅ¡eobecný +príklad uvedieme komplexnú cestu \verb+~$USER/{foo,bar}//baz+, %$ +ktorá sa expanduje do vÅ¡etkých podadresárov pod adresármi +\file{foo} a \file{bar} +v~domovskom adresári používateľa \texttt{\$USER}, ktorý obsahuje +adresár alebo súbor \file{baz}. Tieto konÅ¡trukcie sú popísané +v~Äalších odsekoch. +\subsubsection{Predvolená expanzia} +\label{sec:defaultexpansion} + +Ak vyhľadávacia cesta s~najväÄÅ¡ou prioritou (pozri \singleuv{Zdroje cesty} +na strane~\pageref{sec:pathsources}) obsahuje \emph{dvojbodku +navyÅ¡e} (t.j.\ zaÄiatoÄnú, koncovú, alebo zdvojenú), \KPS{} vloží na +toto miesto vyhľadávaciu cestu s~druhou najvyÅ¡Å¡ou prioritou, ktorá +je definovaná. Ak táto vložená cesta obsahuje dvojbodku navyÅ¡e, to +isté sa stane s~ÄalÅ¡ou najvýznamnejÅ¡ou cestou. Keby sme mali +napríklad dané takéto nastavenie premennej prostredia +\begin{alltt} +>> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +a hodnotu \code{TEXINPUTS} v~súbore \file{texmf.cnf} +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +potom koneÄná hodnota použitá na vyhľadávanie by bola: +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} +KeÄže by bolo zbytoÄné vkladaÅ¥ predvolenú hodnotu na viac ako jedno +miesto, \KPS{} mení iba nadbytoÄnú \samp{:}\ a vÅ¡etko ostatné +ponecháva na mieste. Najprv kontroluje zaÄiatoÄnú \samp{:}, potom +koncovú \samp{:} a potom zdvojenú \samp{:}. + +\subsubsection{Expanzia zátvoriek} +\label{sec:brace-expansion} + +UžitoÄná Ärta je expanzia zátvoriek, ktorá funguje tak, že +napríklad \verb+v{a,b}w+ sa expanduje na \verb+vaw:vbw+. Vnáranie je +povolené. Toto sa používa na implementáciu viacnásobných +\TeX{}ovských hierarchií, priradením hodnoty \code{\$TEXMF} +s~použitím zátvoriek. Napríklad v~súbore \file{texmf.cnf} nájdete +definíciu podobnú tejto (zjednoduÅ¡enú pre tento príklad): +\begin{verbatim} + TEXMF = {$HOMETEXMF,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +KeÄ potom napíšete nieÄo podobné ako +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +bude to znamenaÅ¥, že po hľadaní v~aktuálnom adresári sa najprv prehľadá celý +strom \code{\$HOMETEXMF/tex}, \code{\$TEXMFLOCAL/tex}, +\code{\$TEXMFVAR/tex} a \code{\$TEXMFMAIN/tex} (posledné dva +s~použitím databázových súborov \file{ls-R}). Je to vhodný spôsob ako +spúšťaÅ¥ dve paralelné \TeX{} Å¡truktúry, jednu nemennú +(napríklad na \CD) a druhú neustále aktualizovanú novými +verziami, akonáhle sú dostupné. Použitím premennej +\code{\$TEXMF} vo vÅ¡etkých definíciách máme istotu, že sa vždy ako +prvý prehľadá aktuálny strom. + +\subsubsection{Expanzia podadresárov} +\label{sec:subdirectory.expansion} + +Dva alebo viac za sebou nasledujúcich znakov \samp{/} +v~elemente cesty nasledujúcom za adresárom \var{d} je nahradených vÅ¡etkými +podadresármi \var{d}: najprv podadresármi priamo pod \var{d}, potom +podadresármi pod nimi, atÄ. Poradie, v~akom sú prehľadávané +podadresáre na každej úrovni, \emph{nie je Å¡pecifikované}. + +Ak po \samp{//} Å¡pecifikujete akékoľvek komponenty mena súboru, +pridajú sa iba pod\-adre\-sáre so zodpovedajúcimi komponentami. +Napríklad, \samp{/a//b} sa expanduje do +adresárov \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, atÄ, ale nie do \file{/a/b/c} alebo \file{/a/1}. + +Viacnásobné konÅ¡trukcie \samp{//} v~ceste sú možné, ale +použitie \samp{//} na zaÄiatku cesty je ignorované. + +\subsubsection{Typy Å¡peciálnych znakov a ich význam: zhrnutie} +Nasledujúci zoznam zahŕňa %B% význam +zvláštne znaky v~konfiguraÄných +súboroch \KPS{}. + +% need a wider space for the item labels here. 3em instead of 2em +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{description} +\item[\CODE{:}]OddeľovaÄ v~Å¡pecifikácii cesty; na zaÄiatku alebo + na konci cesty nahrádza predvolenú expanziu cesty.\par +\item[\CODE{;}]OddeľovaÄ v~neunixových systémoch (správa sa ako + \samp{:}). +\item[\CODE{\$}]Expanzia premennej. +\item[\CODE{\string~}] Reprezentuje domovský adresár používateľa. +\item[\CODE{\char`\{...\char`\}}] Expanzia zátvoriek, napr.\ + z~\verb+a{1,2}b+ sa stane \verb+a1b:a2b+. +\item[\CODE{//}] Expanzia podadresárov. (Môže sa + vyskytnúť kdekoľvek v~ceste, okrem jej zaÄiatku). +\item[\CODE{\%}] ZaÄiatok komentáru. +\item[\CODE{\bs}] Znak pokraÄovania riadku (umožňuje viacriadkové vstupy). +\item[\CODE{!!}] Povel na hľadanie súboru \emph{iba} v~databáze, + neprehľadáva disk. +\end{description} + +\subsection{Databázy názvov súborov} +\label{sec:filename.database} + +\KPS{} minimalizuje prístupy na disk pri vyhľadávaní. Predsa vÅ¡ak +pri inÅ¡taláciách s~dostatoÄným množstvom adresárov hľadanie súboru +v~každom možnom adresári môže zabraÅ¥ prehnane veľa Äasu (toto platí +zvlášť vtedy, keÄ musia byÅ¥ prejdené stovky adresárov s~fontami). +\KPS{} preto používa externe vytvorený \singleuv{databázový} súbor +nazývaný \file{ls-R}, ktorý mapuje súbory v~adresároch a pomáha tak +vyhnúť sa vyÄerpávajúcemu prehľadávaniu disku. + +Skratky mien (\file{aliases}) v~druhom databázovom súbore vám +umožňujú daÅ¥ dodatoÄné mená súborom nachádzajúcim sa +v~zozname \file{ls-R}. Toto môže byÅ¥ užitoÄné pri prispôsobovaní sa +súborovým konvenciám 8.3 DOSu v~zdrojových súboroch. + +\subsubsection{Súborová databáza} +\label{sec:ls.R} + +Ako bolo vysvetlené hore, meno hlavnej databázy súborov musí +byÅ¥ \file{ls-R}. Môžete umiestniÅ¥ jednu do koreňa každej hierarchie +\TeX u{} vo svojej inÅ¡talácii, ktorú chcete, aby bola prehľadávaná +(predvolená je \code{\$TEXMF}). +%; väÄÅ¡inou sa jedná iba o~jednu hierarchiu. +\KPS{} hľadá \file{ls-R} súbory podľa cesty +v~\code{TEXMFDBS}. + +OdporúÄaný spôsob ako vytvoriÅ¥ a udržiavaÅ¥ \samp{ls-R} je spustiÅ¥ +skript \code{mktexlsr} zahrnutý v~distribúcii. Je vyvolávaný +rôznymi \samp{mktex...} skriptami. Tento skript v~princípe iba +spúšťa príkaz +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +predpokladajúc, že \code{ls} vášho systému vytvára správny výstup +(výstup \GNU \code{ls} je v~poriadku). Aby ste sa ubezpeÄili, +že databáza bude vždy aktuálna, najjednoduchÅ¡ie je pravidelne ju +prebudovávaÅ¥ cez \code{cron}, +takže po zmenách v~inÅ¡talovaných +súboroch \Dash\ napríklad pri inÅ¡talácii alebo aktualizácii balíka +\LaTeX u{} \Dash\ bude súbor \file{ls-R} automaticky aktualizovaný. + +Ak súbor nie je v~databáze nájdený, podľa predvoleného nastavenia +\KPS{} zaÄne vyhľadávaÅ¥ na disku. Ak vÅ¡ak urÄitý element cesty +zaÄína \samp{!!}, bude prehľadávaná \emph{iba} databáza, nikdy nie +disk. + +\subsubsection{kpsewhich: samostatné prehľadávanie cesty} +\label{sec:invoking.kpsewhich} + +Program \texttt{kpsewhich} vykonáva prehľadávanie cesty nezávislé +od každej aplikácie. Môže byÅ¥ užitoÄný ako vyhľadávací \code{find} +program na nájdenie súborov v~hierarchiách \TeX u{} (veľmi sa +využíva v~distribuovaných \samp{mktex}\dots\ skriptoch). + +\begin{alltt} +>> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +Voľby Å¡pecifikované v~\singleuv{\texttt{\var{option}}} môžu zaÄínaÅ¥ buÄ +\samp{-} alebo \samp{-{}-} a každá skratka, ktorá nie je viacznaÄná, je +akceptovaná. + +\KPS{} považuje každý element vstupného riadku, ktorý nie je +argumentom nejakej voľby, za meno súboru, ktorý hľadá, a +vracia prvý súbor, ktorý nájde. Neexistuje voľba umožňujúca +vrátiÅ¥ vÅ¡etky súbory s~urÄitým menom (na to môžete použiÅ¥ +nástroj Unixu \samp{find}). + +NajbežnejÅ¡ie voľby sú popísané nižšie. +\begin{description} +\item[\CODE{--dpi=num}]\hfill\break + Nastav rozlíšenie na \singleuv{\texttt{\var{num}}}; toto má vplyv iba na + \samp{gf} a \samp{pk} vyhľadávanie. \samp{-D} je synonymom, kvôli + kompatibilite s~\cmdname{dvips}. Predvolená hodnota je~600. +\item[\CODE{--format=name}]\hfill\break + Nastav formát na vyhľadávanie na \singleuv{\texttt{\var{name}}}. Podľa + predvoleného nastavenia je formát uhádnutý z~mena súboru. Pre formáty, +ktoré nemajú asociovanú jednoznaÄnú príponu, ako napríklad podporné + súbory \MP u a konfiguraÄné súbory \cmdname{dvips}, musíte + Å¡pecifikovaÅ¥ meno ako známe pre \KPS{}, také ako + \texttt{tex} alebo \texttt{enc files}. Zoznam získate spustením + \texttt{kpsewhich -{}-help}. + +\item[\texttt{--mode=\var{string}}]\mbox{}\\ + Nastav meno módu na \singleuv{\texttt{\var{string}}}; toto má vplyv iba na + \samp{gf} a \samp{pk} vyhľadávanie. Žiadna predvolená hodnota: + každý mód bude nájdený. +\item[\texttt{--must-exist}]\mbox{}\\ + Urob vÅ¡etko preto, aby si naÅ¡iel súbory. Ak je to potrebné, +vrátane hľadania na disku. Normálne je v~záujme efektívnosti + prehľadávaná iba databáza \file{ls-R}. +\item[\texttt{--path=\var{string}}]\mbox{}\\ + Vyhľadávaj podľa cesty \singleuv{\texttt{\var{string}}} (oddeľovaná dvojbodkou + ako zvyÄajne) namiesto hádania vyhľadávacej cesty z~mena súboru. + Podporované sú \samp{//} a vÅ¡etky bežné expanzie. Voľby \samp{--path} + a \samp{--format} sa vzájomne vyluÄujú. +\item[\texttt{--progname=\var{name}}]\mbox{}\\ + Nastav meno programu na \singleuv{\texttt{\var{name}}}. Toto nastavenie ovplyvňuje + použitie vyhľadávacej cesty cez nastavenie \singleuv{\texttt{.\var{progname}}} + v~konfiguraÄných súboroch. Predvolená hodnota je \samp{kpsewhich}. +\item[\texttt{--show-path=\var{name}}]\mbox{}\\ + Zobrazí cestu použitú na vyhľadávanie súboru s~typom +\singleuv{\texttt{\var{name}}}. + Môže byÅ¥ použitá buÄ súborová prípona (\samp{.pk}, \samp{.vf} a pod.) + alebo meno, podobne ako vo voľbe \samp{--format}. +\item[\texttt{--debug=\var{num}}]\mbox{}\\ + Nastaví masku výberu ladiacích možností na \singleuv{\texttt{\var{num}}}. +\end{description} + +\subsubsection{Príklady použitia} +\label{sec:examplesofuse} + +Pozrime sa na \KPS{} v~akcii. Za podÄiarknutým príkazom nasleduje +výsledok vyhľadávania v~nasledujúcich riadkoch. +\begin{alltt} +> \Ucom{kpsewhich article.cls} +/usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +Hľadáme súbor \file{article.cls}. KeÄže prípona \samp{.cls} je +jednoznaÄná, nemusíme Å¡pecifikovaÅ¥, že hľadáme súbor typu \singleuv{tex} +(zdrojový súbor \TeX{}). Nájdeme ho v~podadresári +\file{tex/latex/base} pod koreňovým adresárom +\samp{TEXMF-dist}. Podobne, vÅ¡etky nasledujúce súbory budú nájdené bez +problémov vÄaka ich jednoznaÄnej prípone. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +Mimochodom, posledným súborom je bibliografická databáza \BibTeX u pre +Älánky \textsl{TUGBoatu}. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Bitmapové súbory fontov typu \file{.pk} sa používajú zobrazovacími +programami ako \cmdname{dvips} a \cmdname{xdvi}. V~tomto prípade +je vrátený prázdny výsledok, keÄže neexistujú žiadne vopred +generované Computer Modern \samp{.pk} súbory v~naÅ¡om systéme +(vzhľadom na to, že v~\TL{} implicitne používame verzie Type1 ). +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +Pre tieto fonty (fonetickú abecedu z~University of Washington) sme museli vygenerovaÅ¥\ +\samp{.pk} súbory. KeÄže predvolený mód \MF u v~naÅ¡ej inÅ¡talácii +je \texttt{ljfour} so základným rozlíšením 600~dpi (dots per inch), +je vrátená táto inÅ¡tancia. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +V~tomto prípade po Å¡pecifikovaní, že nás zaujíma rozlíšenie 300~dpi +(\texttt{-dpi=300}), vidíme, že taký font nie je v~systéme +k~dispozícii. Programy ako \cmdname{dvips} alebo \cmdname{xdvi} +by v~tomto prípade vytvorili požadované \texttt{.pk} súbory, použijúc skript \cmdname{mktexpk}. + +Teraz obráťme naÅ¡u pozornosÅ¥ na hlaviÄkové a konfiguraÄné súbory +\cmdname{dvips}. Najprv sa pozrieme na jeden z~bežne používaných +súborov, vÅ¡eobecný prológový \file{tex.pro} na pod\-poru \TeX u{}, +potom pohľadáme konfiguraÄný súbor (\file{config.ps}) a +PostScriptovú mapu fontov \file{psfonts.map} \Dash %B% as of 2004, +mapové a kódové súbory majú svoje vlastné cesty na vyhľadávanie a nové umiestnenie v~stromoch \dirname{texmf}. +KeÄže prípona +\samp{.ps} je ne\-jed\-no\-znaÄná, musíme pre súbor \texttt{config.ps} +Å¡pecifikovaÅ¥ explicitne, o ktorý typ sa zaujímame (\optname{dvips +config}). +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format=`dvips config' config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} +Teraz sa pozrieme na podporné súbory URW Times PostScript. +V~Berryho schéme meno pre +tieto pomenovania fontov je \uv{\texttt{utm}}. Prvý +súbor, ktorý hľadáme, je konfiguraÄný súbor, ktorý obsahuje meno +mapového súboru: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +Obsah tohoto súboru je +\begin{alltt} + p +utm.map +\end{alltt} +Äo odkazuje na súbor \file{utm.map}, ktorý ideme Äalej hľadaÅ¥. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +Tento mapový súbor definuje mená súborov fontov typu Type1 +PostScript v~kolekcii URW. Jeho obsah vyzerá takto (zobrazili sme +iba jeho ÄasÅ¥): +\begin{alltt} + utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +Z~týchto príkladov by malo byÅ¥ zrejmé, ako ľahko môžete nájsÅ¥ +umiestnenie daného súboru. Toto je zvlášť dôležité, keÄ máte +podozrenie, že ste narazili na zlú verziu súboru, +pretože \cmdname{kpsewhich} emuluje vyhľadávanie +úplne rovnakým spôsobom ako skutoÄný program (\TeX{}, dvips a pod). + +\subsubsection{Ladiace Äinnosti} +\label{sec:debugging} +Niekedy je potrebné vyÅ¡etriÅ¥, ako program rozpoznáva referencie na +súbory. Aby toto bolo možné vhodne uskutoÄniÅ¥, \KPS{} ponúka rôzne +stupne ladenia: +\begin{itemize} +\item[\texttt{\ 1}] Volania \texttt{stat} (testy súborov). Pri behu + s~aktuálnou \file{ls-R} databázou by nemal daÅ¥ takmer žiaden výstup. +\item[\texttt{\ 2}] Referencie do haÅ¡ovacích tabuliek (ako \file{ls-R} + databázy, mapové súbory, konfiguraÄné súbory). +\item[\texttt{\ 4}] Operácie otvárania a zatvárania súboru. +\item[\texttt{\ 8}] VÅ¡eobecná informácia o ceste pre typy súborov + hľadaných \KPS. Toto je užitoÄné pri zisÅ¥ovaní, kde bola definovaná + urÄitá cesta pre daný súbor. +\item[\texttt{16}] Adresárový zoznam pre každý element cesty (vzÅ¥ahuje + sa iba na vyhľadávanie na disku). +\item[\texttt{32}] Vyhľadávanie súborov. +\item[\texttt{64}] Premenlivé hodnoty. +\end{itemize} +Hodnota \texttt{-1} nastaví vÅ¡etky horeuvedené voľby, v~praxi +pravdepodobne vždy použijete tieto úrovne, ak budete potrebovaÅ¥ +akékoľvek ladenie. + +Podobne s~programom \cmdname{dvips} nastavením kombinácie +ladiacich prepínaÄov môžete detailne sledovaÅ¥, odkiaľ sa berú +používané súbory. Aktuálny popis parametrov je možné nájsÅ¥ +v~\path{../texmf/doc/html/dvips/dvips_2.html}. Alternatívne, +keÄ súbor nie je nájdený, +ladiaca cesta ukazuje, v~ktorých adresároch program daný súbor +hľadal, Äo môže naznaÄovaÅ¥, v~Äom sa asi vyskytol problém. +VÅ¡eobecne povedané, keÄže väÄÅ¡ina programov volá knižnicu \KPS{} +vnútorne, ladiace voľby je možné nastaviÅ¥ pomocou premennej +prostredia \envname{KPATHSEA\_DEBUG} na potrebnú kombináciu, ako je +to popísané v~horeuvedenom zozname. +(Poznámka pre používateľov Windows: nie je jednoduché +presmerovaÅ¥ vÅ¡etky hlášky v~tomto systéme do súboru. +Na diagnostické úÄely môžete doÄasne priradiÅ¥\hfill\\ +\texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). +Uvažujme ako príklad malý zdrojový súbor +\LaTeX u{}, \file{hello-world.tex}, ktorý obsahuje nasledujúci vstup. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +Tento malý súbor používa iba font \file{cmr10}, takže pozrime sa, +ako \cmdname{dvips} pripravuje PostScriptový súbor (chceme použiÅ¥ +Type1 verziu písiem Computer Modern, preto je nastavená +voľba \texttt{-Pcms}\footnote{Od verzie \TL{}~7 nie +je nutné túto voľbu nastavovaÅ¥, pretože Type~1 fonty sú +naÄítané implicitne.}. +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +V~tomto prípade sme skombinovali \cmdname{dvips} ladiacu +triedu~4 (cesty k~fontom) s~expanziou elementu cesty \KPS\ +(pozri ReferenÄný Manuál +\cmdname{dvips}, \OnCD{texmf/doc/html/dvips/dvips_toc.html}). +%\ifSingleColumn +%We get something +%like the following (we have rearranged the output for easier display): +%\begin{alltt}\small +%\input{examples/ex6.tex} +%\end{alltt} +%\else +Výstup, trochu preusporiadaný, je zobrazený na obrázku~\ref{fig:dvipsdbga}. + +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Hľadanie konfiguraÄných súborov}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Hľadanie \singleuv{prolog} súboru}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Hľadanie súboru fontu}\label{fig:dvipsdbgc} +\end{figure*} + +%\input{examples/ex6skfromtl6.tex} % TODO: Janka -- treba aktualizovat +% z ../examples/ex6*.tex + +\cmdname{dvips} zaÄne lokáciou svojich pracovných súborov. Najprv je +nájdený \file{texmf.cnf}, ktorý obsahuje definície vyhľadávacích +ciest ostatných súborov, potom databáza súborov \file{ls-R} (na +optimalizáciu vyhľadávania súborov) a skratky mien súborov +(\file{aliases}), Äo robí možným deklarovaÅ¥ viacero mien (napr.\ +krátke meno typu \singleuv{8.3} ako v~\acro{DOS}e a dlhÅ¡iu prirodzenejÅ¡iu +verziu) pre ten istý súbor. Potom \cmdname{dvips} pokraÄuje +v~hľadaní vÅ¡eobecného konfiguraÄného súboru \file{config.ps} skôr, +ako zaÄne hľadaÅ¥ súbor nastavení \file{.dvipsrc} (ktorý, v~tomto +prípade, \emph{nie je nájdený}). Nakoniec, \cmdname{dvips} nájde +konfiguraÄný súbor pre font Computer Modern PostScript, +\file{config.cms} (toto bolo iniciované voľbou\texttt{-Pcms} +v~príkaze \cmdname{dvips}). Tento súbor obsahuje zoznam \uv{mapových} +súborov, ktoré definujú vzÅ¥ah medzi menami fontov v~\TeX u, +PostScripte a systéme súborov. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} preto pokraÄuje v~hľadaní vÅ¡etkých týchto súborov plus +vÅ¡eobecného mapového súboru \file{psfonts.map}, ktorý sa naÄíta +vždy (obsahuje deklarácie bežne používaných PostScriptových fontov; +pozri poslednú ÄasÅ¥ sekcie~\ref{sec:examplesofuse}, kde sa nachádza +viac detailov o narábaní s~mapovými súbormi PostScriptu). + +V~tomto bode sa \cmdname{dvips} identifikuje používateľovi\,\ldots +\begin{alltt}\ifSingleColumn +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\else\small{}This is dvips(k) 5.92b Copyright 2002 Radical Eye ... +\fi\end{alltt}% decided to accept slight overrun in tub case +\ifSingleColumn +\noindent\ldots potom pokraÄuje v~hľadaní prológového súboru +\file{texc.pro}: + +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). + kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +potom pokraÄuje v~hľadaní prológového súboru +\file{texc.pro} (pozri obrázok~\ref{fig:dvipsdbgb}). +\fi + +Po nájdení tohoto súboru, \cmdname{dvips} vypíše na výstup dátum a +Äas a informuje nás, že vygeneruje súbor \file{hello-world.ps}, že +potrebuje súbor s~fontom \file{cmr10}, ktorý bude deklarovaný ako +\uv{rezidentný}: +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Teraz sa rozbehne hľadanie súboru \file{cmr10.tfm}, ktorý je +nájdený, potom je referencovaných eÅ¡te niekoľko prológových súborov +(nezobrazené) a nakoniec je nájdená inÅ¡tancia fontu +Type1, \file{cmr10.pfb}, ktorá je pridaná do výstupného súboru +(pozri posledný riadok). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Možnosti nastavenia za behu programu} + +ÄŽalÅ¡ou z~pekných ÄÅ•t distribúcie \Webc{} je možnosÅ¥ kontroly +množstva pamäťových parametrov (najmä veľkosti polí) za behu +prostredníctvom súboru \file{texmf.cnf}, +ktorý Äíta knižnica \KPS{}. Nastavenia vÅ¡etkých parametrov môžete +nájsÅ¥ v~Äasti~3 tohto súboru. NajdôležitejÅ¡ie riadiace +premenné (Äísla riadkov sa vzÅ¥ahujú na súbor \file{texmf.cnf}): + +\begin{description} +\item[\texttt{main\_memory}] + Celkový poÄet dostupných slov v~pamäti pre \TeX{}, \MF{} a \MP. + Musíte vytvoriÅ¥ nový formátový súbor pre každé odliÅ¡né nastavenie. + Napríklad môžete vygenerovaÅ¥ \uv{obrovskú} verziu \TeX u{} + a zavolaÅ¥ súbor s~formátom \texttt{hugetex.fmt}. S~po\-užitím + Å¡tandardnej Å¡pecifikácie mena programu používaného knižnicou + \KPS{}, konkrétna hodnota premennej \texttt{main\_memory} sa naÄíta zo + súboru \file{texmf.cnf}. + %B% (porovnaj vÅ¡eobecnú hodnotu a \uv{obrovskú} hodnotu, ktorá sa inÅ¡tancuje cez \texttt{hugetex}, atÄ.). +\item[\texttt{extra\_mem\_bot}] + DodatoÄný priestor pre \uv{veľké} dátové Å¡truktúry \TeX u{}: + \uv{boxy}, \uv{glue}, \uv{break\-point(y)} a podobne. + Je to užitoÄné hlavne ak používate \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + PoÄet dostupných slov pre informáciu o fontoch v~\TeX u. Toto je + viac-menej celková veľkosÅ¥ vÅ¡etkých preÄítaných \acro{TFM} súborov. +\item[\texttt{hash\_extra}] + DodatoÄný priestor pre haÅ¡ovaciu tabuľku mien riadiacej sekvencie. + Len $\approx$10\,000 riadiacich sekvencií môže byÅ¥ uložených v~hlavnej + haÅ¡ovacej tabuľke; ak máte veľkú knihu s~mnohými krížovými odkazmi, + toto nemusí staÄiÅ¥. Implicitná hodnota \texttt{hash\_extra} je \texttt{50000}. + %B% Vidíte, že obidve volania programov \cmdname{hugetex} a \cmdname{pdftex} požadujú + %B% dodatoÄných 15\,000 riadiacich sekvencií (preddefinovaná hodnota + %B% hash\_extra je nula). +\end{description} +Samozrejme, tento prvok nemôže nahradiÅ¥ naozajstné dynamické polia +a alokácie pamäte, ale keÄže tieto sa veľmi Å¥ažko implementujú +v~súÄasnej verzii \TeX u, tieto parametre poÄas behu programu +poskytujú praktický kompromis, ktorý dovoľuje aspoň nejakú +flexi\-bilitu. +\end{otherlanguage} + +\begin{comment} +\section{PÅ™eklad pro novou unixovou platformu} +Pokud používáte platformu, pro kterou neposkytujeme binárky, nezbude vám +nic jiného, než si je vytvoÅ™it ze zdrojáků sami. +Není to tak těžké, jak se traduje Äi zdá. VÅ¡e, co je tÅ™eba, najdete +v~adresáři \texttt{source} distribuce. + +\subsection{PÅ™edpoklady úspÄ›chu} +Budete potÅ™ebovat alespoň 100~Mebibytů diskového prostoru na kompilaci +celého \TeX{}u a podpůrných programů. Budete také potÅ™ebovat kompilátor +\acro{ANSI}~C, program \cmdname{make}, lexikální analyzátor a generátor +pÅ™ekladaÄe. DoporuÄujeme \GNU{} verze tÄ›chto programů +(\cmdname{gcc}, \GNU \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). Možná uspÄ›jete i s~jinými verzemi kompilátoru~C, +programu \cmdname{make} a dalších programů, ale budete potÅ™ebovat +dobrou znalost kompilace unixových programů pro Å™eÅ¡ení kolizí. +Také příkaz \texttt{uname} musí vracet rozumné hodnoty. + +\subsection{Konfigurace} + +Pro zaÄátek proveÄte normální instalaci \TL{} na váš disk (viz +oddíl~\ref{sec:install.disk} na +stranÄ›~\pageref{sec:install.disk}). Můžete pÅ™eskoÄit instalaci +vÅ¡ech pÅ™edkompilovaných binárek. + +Potom rozbalte zdroje z~komprimovaného \texttt{tar} archívu z~adresáře +\dirname{source} na svůj disk a pÅ™ejdÄ›te do adresáře, kam jste zdroje +rozbalili. + +Potom spusÅ¥te program \cmdname{configure} například takto: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +Adresář udaný pÅ™epínaÄem \optname{-prefix} je ten, kam jste instalovali +pomocný texmf strom; struktura adresářů bude jak je popsáno níže (pÅ™iÄemž +\$TEXDIR je adresář, který jste zvolili): + +\noindent +\begin{tabularx}{\textwidth}{@{}>{\ttfamily}lX@{}} + \dirname{$TEXDIR/share/texmf} & hlavní strom s~fonty, makry, atp.\\ + \dirname{$TEXDIR/man} & unixové manuálové stránky\\ + \dirname{$TEXDIR/info} & \GNU style Info manuály\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binárky +\end{tabularx} +%$ + +Pokud chcete zruÅ¡it extra úroveň adresářů \dirname{$PLATFORM} pro každou +platformu, t.j.\ uložit binárky do adresáře \dirname{$TEXDIR/bin}, +specifikujte volbu \verb|--disable-multiplatform| pro \cmdname{configure}. + +Podívejte se na výstup příkazu \verb|./configure --help| pro popis +dalších pÅ™epínaÄů, které můžete chtít použít. Například můžete chtít +vynechat pÅ™eklad \OMEGA{}y Äi \eTeX{}u. + +\subsection{SpuÅ¡tÄ›ní \cmdname{make}} + +Ověřte, zda promÄ›nná prostÅ™edí nebo volba \texttt{noclobber} není nastavena. + +Potom spusÅ¥te hlavní \cmdname{make} takto: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +a dejte si chvíli oddechu\ldots +PřípadnÄ› si můžete zaznamenat vÅ¡echen výstup takto: +\begin{alltt} +> \Ucom{sh -c \string"make world >world.log 2>\&1\string" \&} +\end{alltt} +PÅ™edtím než uvěříte, že vÅ¡echno je v~pořádku, zkontrolujte +logovací soubor na chyby: \GNU \cmdname{make} vždy používá Å™etÄ›zec +\samp{***}, kdykoliv příkaz selže. Také zkontrolujte, zda vÅ¡echny programy +byly opravdu pÅ™eloženy: +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +Výsledkem by mÄ›lo být pÅ™es 200 programů (můžete zkontrolovat pÅ™esný +poÄet s~adresáři \dirname{bin} na~distribuÄním médiu). + +Pro závÄ›reÄný \texttt{make install} budete potÅ™ebovat rootovské +oprávnÄ›ní, takže můžete rozdÄ›lit \samp{make world} na dvÄ› Äásti: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +Poté, co instalujete vÅ¡echny binárky, mÄ›li byste provést +normální postinstalaÄní proceduru, jak je popsána +v~oddíle~\ref{sec:postinstall} na stranÄ›~\pageref{sec:postinstall}. + +Rovněž, když budete chtít zpřístupnit svoje binárky ostatním, +prosíme kontaktujte nás. Rádi je umístíme na webové stránky \TL. +\end{comment} + +\htmlanchor{ack} +\section{PodÄ›kování} + +\TL{} je výsledkem spoleÄného úsilí téměř vÅ¡ech skupin uživatelů \TeX u. +Toto vydání editoval \TL{} Karl Berry. +Seznam ostatních hlavních pÅ™ispÄ›vatelů, minulých i souÄasných, následuje. +DÄ›kujeme: +%B% Kaja Christiansen provádÄ›la neúnavnÄ› opakované +%B% rekompilace na různých unixových platformách. Vladimir Volovich odvedl +%B% vynikající práci na vyÄiÅ¡tÄ›ní zdrojových textů a provedl mnohá +%B% vylepÅ¡ení, zatímco Gerben Wierda dÄ›lal veÅ¡kerou práci pro \MacOSX. + +\begin{itemize*} +\item Anglickému, nÄ›meckému, holandskému a polskému sdružení +uživatelů \TeX{}u (\acro{TUG}, \acro{DANTE} e.V., +\acro{NTG} resp. \acro{GUST}), kteří spoleÄnÄ› zajistily +nezbytnou technickou a administrativní infrastrukturu. +PÅ™ipojte se, prosím, k~\TeX ovskému sdružení ve vaší +blízkosti (\acro{CSTUG})! +(Viz \url{http://tug.org/usergroups.html}.) + +\item Týmu \acro{CTAN}u, pozoruhodnÄ› %nejpozoruhodnÄ›jším +Robinu Fairbairnsovi, Jimu Hef{}feronovi +a Raineru Sch\"opfovi, který distribuuje obrazy \TL{} a +poskytuje spoleÄnou infrastrukturu pro aktualizaci balíků, +na kterých je \TL{} závislý. + +\item Johnu Bowmanovi, za vykonání mnoha zmÄ›n v~jeho pokroÄilém +grafickém programu Asymptote, aby tento fungoval v~\TL. + +\item Peteru Breitenlohnerovi a \eTeX\ týmu, kteří poskytují +stabilní základ budoucnosti \TeX u, a výslovnÄ› Peteru za +hvÄ›zdnou pomoc s~používáním osobních nástrojů \GNU\ v~celém \TL. + +%B% \item Karlu Berrymu, který poskytl původní distribuci \Webc{}, a +%B% pokraÄoval v~poskytování cenných rad, povzbuzení a pomocí. + +\item Jin-Hwan Choovi a celému týmu DVIPDFM$x$, za jejich vynikajíci +ovladaÄ a za schopnost reagovat na konfiguraÄní problémy. +\item Thomasi Esserovi, za pÅ™ekrásný balík \teTeX{}, bez nÄ›hož by \TL{} +nikdy neexistovala. +\item Michelu Goossensovi, který je spoluautorem původní dokumentace. + +\item Eitanu Gurarimu, jehož \TeX{}4ht je použito pro +\HTML{} verzi této dokumentace a který každý rok obratem +pracoval neúnavnÄ› na jeho rozšířeních. Eitan nás pÅ™edÄasnÄ› +opustil v~Äervnu 2009 a tuto dokumentaci vÄ›nujeme jeho památce. +\item Hansi Hagenovi, za mnohá testování a přípravu jeho formátu \ConTeXt\ +(\url{http://pragma-ade.com}) pracujícího uvnitÅ™ systému \TL. + +\item \Thanh ovi, Martinu Schröderovi a pdf\TeX\ týmu (\url{http://pdftex.org}) +za pokraÄující rozÅ¡iÅ™ování možností \TeX u. + +\item Hartmutu Henkelovi, za významný příspÄ›vek k~vývoji +pdf\TeX u, Lua\TeX u atp. + +\item Taco Hoekwaterovi, za významné úsilí pÅ™i obnovení vývoje \MP u i +samotného (Lua)\TeX{}u (\url{http://luatex.org}), za zaÄlenÄ›ní \ConTeXt{}u do systému \TL, +za pÅ™idání vícevláknové funkÄnosti programu Kpathsea a mnoho dalšího. +\item Paw{\l}u Jackowskému, za windowsový instalátor \cmdname{tlpm}, +a Tomaszi {\L}uczakovi, za \cmdname{tlpmgui}, používaný v~pÅ™edchozích vydáních. + +\item Akirovi Kakuto, za poskytnutí windowsovských binárek +z~jeho distribuce \acro{W32TEX} pro japonský \TeX{} +(\url{http://w32tex.org}) a za množství dalších příspÄ›vků k~vývoji. + +\item Jonathanu Kewovi a \acro{SIL}, za vyvinutí pozoruhodného systému \XeTeX{}u a +za Äas a trápení pÅ™i jeho integraci do \TL{}, +právÄ› tak za výchozí verzi instalaÄního programu Mac\TeX a kromÄ› toho za námi +doporuÄený pomocný program \TeX{}works. % front-end + +\item Dicku Kochovi, za údržbu Mac\TeX{}u (\url{http://tug.org/mactex}) +ve velmi blízkém tandemu s~\TL{}, a za jeho skvÄ›lé veselí pÅ™itom. % for his great good cheer in doing so. + +\item Reinhardovi Kotuchovi za důležitý příspÄ›vek k~infrastruktuÅ™e a +instalaÄnímu programu \TL{} 2008, rovněž za úsilí pÅ™i výzkumu Windows, +za skript \texttt{getnonfreefonts} a mnoho dalšího. + +\item Siep Kroonenbergové, rovněž za důležitý příspÄ›vek k~infrastruktuÅ™e +a instalaÄnímu programu \TL{} 2008, zvláštÄ› pod Windows a za množství práce +pÅ™i aktualizaci této příruÄky, popisující tyto vlastnosti. +\item Heikovi Oberdiekovi, za balík \pkgname{epstopdf} a mnohé další, +za kompresi velikánských datových souborů \pkgname{pst-geo} tak, že +jsme je mohli zaÅ™adit do instalace a pÅ™edevším za jeho mimořádnou práci +na balíku \pkgname{hyperref}. + +\item Petru Olšákovi, který koordinoval a kontroloval velmi peÄlivÄ› +Äeskou a slovenskou podporu na \TeXLive. + +\item Toshio Oshima za jeho windowsový prohlížeÄ \cmdname{dviout}. + +\item Manueli Pégourié-Gonnardovi, za pomoc pÅ™i aktualizaci balíků, +vylepÅ¡ení dokumentace a rozvoj dokumentu \cmdname{texdoc}. + +\item Fabrice Popineau, za původní podporu Windows na \TL{} a za francouzskou dokumentaci. + +\item Norbertovi Preiningovi, pÅ™ednímu architektovi infrastruktury a +instalaÄního programu \TL{} 2008 a také za koordinaci Debian +verze \TL{} (spoleÄnÄ› s~Frankem K\"usterem), +za mnohé průběžné návrhy na zlepÅ¡ení. +\item Sebastian Rahtz, za původní vytvoÅ™ení systému \TL{} a za jeho údržbu po mnoho let. + +\item Philu Taylorovi, za zřízení stahování Bit\-Torrentu. + +\item Tomasz Trzeciak, za rozsáhlou pomoc s~Windows. % Å¡irokopásmovou ? wide-ranging + +\item Vladimir Volovich, za významnou pomoc s~portováním % with porting +a jinými problémy údržby, obzvláštÄ› za to, že udÄ›lal realizovatelným zahrnutí \cmdname{xindy}. + +\item Staszku Wawrykiewiczovi, hlavnímu testérovi vÅ¡eho na \TL{} a +koordinátorovi mnoha důležitých polských příspÄ›vků: fontů, windowsové instalace a dalších. +\item Olafu Weberovi, pro jeho peÄlivou údržbu \Webc. + +\item Gerbenu Wierdovi, za vytvoÅ™ení a údržbu původní podpory \MacOSX\ a +za mnohou integraci a testování. +\item Grahamu Williamsovi, na jehož práci na katalogu \TeX{}ovských balíků závisíme. + +\end{itemize*} +Tvůrci binárek: +Ettore Aldrovandi (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}), +Alan Braslau (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}), +Peter Breitenlohner (\pkgname{x86\_64-linux}), +Karl Berry (\pkgname{i386-linux}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}), +Nikola LeÄić (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +Mojca Miklavec (\pkgname{mipsel-linux}), +Norbert Preining (\pkgname{alpha-linux}), +Jukka Salmi (\pkgname{i386-netbsd}), +Thomas Schmitz (\pkgname{powerpc-linux}), +Boris Veytsman (\pkgname{armel-linux}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix}). +Pro informaci o procesu budování \TL{}, viz +\url{http://tug.org/texlive/build.html}. + +PÅ™ekladatelé této příruÄky: +Boris Veytsman (RuÅ¡tina), Jjgod Jiang, Jinsong Zhao, Yue Wang, \& Helin Gai (ČínÅ¡tina), +Uwe Ziegenhagen (NÄ›mÄina), +Manuel Pégourié-Gonnard (FrancouzÅ¡tina), +Marco Pallante (ItalÅ¡tina), +Nikola LeÄić (SrbÅ¡tina), +Petr Sojka \& Ján BuÅ¡a (ÄŒeÅ¡tina\slash SlovenÅ¡tina),% +\footnote{Ke korektuÅ™e Äeského a slovenského pÅ™ekladu pÅ™ispÄ›li +v~letech 2003--2012 kromÄ› autorů Jaromír Kuben, Milan Matlák, Tomáš ObšívaÄ, +Karel Píška, Tomáš PoleÅ¡ovský, Libor Å karvada, ZdenÄ›k Wagner a další. +%Libor Å karvada korigoval i letoÅ¡ní verzi. +PodÄ›kování patří také Michalu Mádrovi, +který dokonÄil editaci souboru cs.po a pÅ™eložil také soubor README.EN.} +Staszek Wawrykiewicz (PolÅ¡tina). +Webovská stránka dokumentace \TL{} je \url{http://tug.org/texlive/doc.html}. +%B% Dále Gerhard Wilhelms, Volker Schaa, Fabrice Popineau, Janka +%B% Chlebíková, Petra Sojková, Staszek Wawrykiewicz, +%B% Erik Frambach a Ulrik Vieth laskavÄ› pÅ™eložili v~různých +%B% obdobích dokumentaci do svých mateÅ™ských jazyků a poskytli +%B% vítanou zpÄ›tnou reakci. +SamozÅ™ejmÄ›, nejdůležitÄ›jší podÄ›kování patří Donaldu Knuthovi, +pÅ™edevším za vymyÅ¡lení \TeX u a také za to, že ho vÄ›noval svÄ›tu. + +\section{Historie vydání} +\label{sec:history} + +\subsection{Minulost} + +Diskuse zaÄala koncem roku 1993, kdy holandská skupina uživatelů \TeX{}u +NTG zaÄala práci na \CD{} 4All\TeX{} pro uživatele \acro{MS-DOS}u, doufajíc, +že doba nazrála pro vydání jednoho \CD{} pro vÅ¡echny +systémy. Byl to na svou dobu příliÅ¡ ambiciózní cíl, ale +nenastartoval jen velmi úspěšné 4All\TeX{} \CD{}, ale také +pracovní skupinu \acro{TUG}u o \emph{\TeX{} Directory Structure} +(\url{http://tug.org/tds}), která specifikovala, +jak vytvoÅ™it konzistentní a spravovatelnou +kolekci \TeX{}ových souborů. Kompletní draft \TDS{} byl publikován +v~prosincovém Äísle Äasopisu \textsl{TUGboat} v~roce 1995 a +hned ze zaÄátku bylo jasné, že jedním z~žádaných produktů bude +vzorová struktura \CD{}. Distribuce, kterou nyní máte, je přímým +výstupem práce této pracovní skupiny. Evidentní úspÄ›ch \CD{} 4All\TeX{} +ukázal, že i unixoví uživatelé by toužili po podobnÄ› jednoduchém +systému, a to je také jedno z~hlavních aktiv~\TeXLive. + +Nejprve jsme vytvoÅ™ili unixové \TDS{} \CD{} na podzim +1995 a rychle identifikovali \teTeX{} Thomase Essera +jako ideální systém, jelikož již mÄ›l multi\-platformní +podporu a byl koncipován s~perspektivou +pÅ™enositelnosti. Thomas souhlasil s~pomocí a seriózní práce zapoÄala +zaÄátkem roku 1996. První vydání se uskuteÄnilo +v~kvÄ›tnu 1996. ZaÄátkem 1997 Karl Berry dokonÄil nové hlavní +vydání \Webc, které obsahovalo téměř vÅ¡echny vlastnosti, +které Thomas Esser pÅ™idal do \teTeX{}u, a tak jsme se rozhodli +druhé vydání \CD{} postavit na standardním +\Webc, s~pÅ™idáním skriptu \texttt{texconfig} z~\teTeX{}u. +TÅ™etí vydání \CD{} bylo založeno na další revizi +\Webc, 7.2, provedené Olafem Weberem; a jelikož zároveň +byla hotova nová verze \teTeX{}u, \TL{} obsahoval +téměř vÅ¡echna její vylepÅ¡ení. PodobnÄ› Ätvrté vydání používalo novou +verzi \teTeX{}u a nové vydání \Webc{} (7.3). +\TL{} nyní obsahuje i kompletní systém pro Windows. + +Pro páté vydání (bÅ™ezen 2000) bylo mnoho Äástí \CD{} revidováno +a zkontrolováno a byly aktualizovány stovky +balíků. Detaily o balících byly uloženy v~souborech \acro{XML}. +Ale hlavní zmÄ›nou pro \TeX\ Live~5 bylo vynÄ›tí +softwaru, na kterém byla jakákoliv omezení na šíření +(non-free software). VÅ¡e uložené na \TL{} je nyní +sluÄitelné s~tzv.\ `Debian Free Software Guide\-lines' +(\url{http://www.debian.org/intro/free}); udÄ›lali jsme vÅ¡e možné, +abychom zkontrolovali licenÄní podmínky vÅ¡ech balíků, +ale budeme vdÄ›Äni za upozornÄ›ní na jakékoli chyby. + +Å esté vydání (Äervenec 2001) mÄ›lo aktualizovaného materiálu +jeÅ¡tÄ› více. Hlavní zmÄ›nou byl nový instalaÄní přístup: +uživatel může volit instalaÄní kolekce. +Byly kompletnÄ› reorganizovány jazykové kolekce, +takže jejich výbÄ›rem se instalují +nejen makra, fonty, ale je také pÅ™ipraven odpovídající +soubor \texttt{language.dat}. + +Sedmé vydání v~roce 2002 mÄ›lo podstatné rozšíření v~pÅ™idání +podpory \MacOSX{}, kromÄ› množství aktualizací balíků a programů. +Důležitým cílem byla opÄ›tná integrace s~\teTeX{}em +a korekce odchylek z~pátého a Å¡estého vydání. + +\subsubsection{2003} + +V~roce 2003 se neustálou smrÅ¡tí oprav a rozšíření stalo to, že +velikost \TL{} již neumožnila jeho smÄ›stnání +na jedno \CD{}, a tak doÅ¡lo k~rozdÄ›lení na tÅ™i různé distribuce +(viz oddíl~\ref{sec:tlcoll.dists} na +stranÄ›~\pageref{sec:tlcoll.dists}). Navíc: + +\begin{itemize*} +\item Na žádost \LaTeX{} týmu jsme zmÄ›nili standardní příkazy + \cmdname{latex} a \cmdname{pdflatex} tak, že nyní používají + \eTeX{} (viz strana~\pageref{text:etex}). +\item Byly pÅ™idány a jsou nyní doporuÄovány k~používání + nové fonty Latin Modern. +\item Byla zruÅ¡ena podpora OS Alpha \acro{OSF} + (podpora \acro{HPUX} byla zruÅ¡ena již dříve), jelikož se + nenaÅ¡el nikdo, kdo by na tÄ›chto platformách zkompiloval nové binárky. +\item InstalaÄní program Windows byl zmÄ›nÄ›n podstatným způsobem; poprvé + bylo integrováno uživatelské prostÅ™edí založené na XEmacsu. +\item Důležité pomocné programy pro Windows + (Perl, \GS{}, Image\-Magick, Ispell) jsou nyní instalovány + do instalaÄního adresáře \TL{}. +\item Mapovací soubory jmen fontů pro \cmdname{dvips}, \cmdname{dvipdfm} + a \cmdname{pdftex} jsou nyní generovány novým programem + \cmdname{updmap} a instalovány do \dirname{texmf/fonts/map}. +%+\item \TeX{}, \MF{}, and \MP{} now output 8-bit input +%+ characters as themselves in output (e.g., \verb|\write|) files, +%+ log files, and the terminal, i.e., \emph{not} translated using the +%+ \verb|^^| notation. In \TL{}~7, this translation was +%+ dependent on the system locale settings; now, locale settings do +%+ not influence the \TeX{} programs' behavior. If for some reason +%+ you need the \verb|^^| output, rename the file +%+ \verb|texmf/web2c/cp8bit.tcx|. (Future releases will have cleaner +%+ ways to control this.) +\item \TeX{}, \MF{} a \MP{} nyní dávají na výstup %B% 8-bitové + vÄ›tÅ¡inu vstupních + znaků (32 a výš) bez konverze (například do souborů + zapisovaných pomocí \verb|\write|, + souborů log, na terminál), a tedy \emph{nejsou pÅ™ekládány} do + sedmibitové \verb|^^| notace. V~\TL{}~7 bylo toto mapování + závislé na nastavení systémových locale; nyní již nastavení locale + \emph{neovlivní} chování \TeX{}u. Pokud z~nÄ›jakých důvodů + potÅ™ebujete výstup s~\verb|^^|, pÅ™ejmenujte soubor + \verb|texmf/web2c/cp8bit.tcx|. Příští verze bude mít Äistší Å™eÅ¡ení. +\item Tato dokumentace byla podstatným způsobem pÅ™epracována. +\item KoneÄnÄ›, jelikož Äísla verzí \TL{} již příliÅ¡ narostla, + verze je nyní identifikována rokem vydání: \TL{} 2004. +\end{itemize*} + +\subsubsection{2004} +Rok 2004 pÅ™inesl mnoho zmÄ›n: +\begin{itemize} + +\item Pokud máte lokálnÄ› instalovány fonty, které +využívají své vlastní podpůrné soubory +\filename{.map} nebo (mnohem ménÄ› pravdÄ›podobnÄ›) \filename{.enc}, +možná budete nuceni tyto soubory pÅ™esunout. + +Soubory \filename{.map} jsou nyní vyhledávány jen v~podaresářích +\dirname{fonts/map} (v~každém stromÄ› \filename{texmf}), podle cesty +\envname{TEXFONTMAPS}. PodobnÄ›, soubory \filename{.enc} jsou hledány +jen v~podadresářích \dirname{fonts/enc}, podle cesty \envname{ENCFONTS}. +\cmdname{updmap} se pokusí vypsat varování o~problematických souborech. +% + +O~metodách zpracování té které informace, prosíme viz +\url{http://tug.org/texlive/mapenc.html}. + +\item \TKCS\ byla rozšířena pÅ™idáním instalovatelného \CD, +založeného na \MIKTEX u, pro ty, kteří dávají pÅ™ednost +této implementaci pÅ™ed Web2C. +%Také loňské demo \CD{} bylo nahrazeno instalovatelným \CD{} pro Windows. +Viz oddíl~\ref{sec:overview.tl} (stránka~\pageref{sec:overview.tl}). + +\item UvnitÅ™ \TL byl velký strom \dirname{texmf} pÅ™edeÅ¡lých vydání nahrazen tÅ™emi: \dirname{texmf}, +\dirname{texmf-dist} a \dirname{texmf-doc}. Viz oddíl~\ref{sec:tld} (stránka~\pageref{sec:tld}) a soubory \filename{README} pro každý z~nich. + +\item VÅ¡echny vstupní soubory týkajíci se \TeX u jsou teÄ soustÅ™edÄ›ny +v~podadresáři \dirname{tex} stromů \dirname{texmf*} a nemají oddÄ›lené +sourozenecké adresáře \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex} atd. Viz +\CDref{texmf.doc/doc/english/tds/tds.html\#Extensions} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Extensions}}. + +\item Pomocné dávky (nemÄ›ly by být volány uživateli) jsou teÄ +umístÄ›ny v~novém podadresáři \dirname{scripts} stromů \dirname{texmf*} +a mohou být vyhledávány prostÅ™ednictvím +\verb|kpsewhich -format=texmfscripts|. Když tedy máte programy +volající tyto dávky, budou muset být nastaveny. Viz +\CDref{texmf.doc/doc/english/tds/tds.html\#Scripts} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Scripts}}. + +\item Téměř vÅ¡echny formáty umožňují vÄ›tÅ¡inu znaků tisknout +bez konverze pomocí pÅ™ekladového souboru +\filename{cp227.tcx}, místo jejich konverze pomocí +\verb|^^| notace. KonkrétnÄ›, znaky na pozicích 32--256, +plus \uv{tab}, \uv{vertikální tab} a \uv{form feed} jsou považovány +za tisknutelné a nejsou konvertovány. Výjimky tvoří plain \TeX\ +(jen 32--127 jsou tisknutelné), \ConTeXt\ (0--255 tisknutelné) a formáty +systému \OMEGA. Toto implicitní chování je téměř stejné jak na +\TL\,2003, ale je implementováno ÄistÄ›ji, s~více možnostmi pÅ™izpůsobení. +Viz \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. +(Mimochodem, se vstupem Unicode, může \TeX\ na výstupu vypsat posloupnosti +ÄásteÄných znaků pÅ™i výpisu chybových kontextů, protože je bytovÄ› orientován.) +\item \textsf{pdfetex} je teÄ implicitní stroj pro vÅ¡echny formáty +kromÄ› samotného (plain) \textsf{tex}u. (Ten jistěže generuje \acro{DVI}, + když je spuÅ¡tÄ›n jako \textsf{latex} atd.) To znamená, kromÄ› jiných + vÄ›cí, že mikrotypografické rozšíření \textsf{pdftex}u jsou dostupné + v~\LaTeX u, \ConTeXt u atd., stejnÄ› jako rozšíření +\eTeX u (\OnCD{texmf-dist/doc/etex/base/}). + +To také znamená, že užití balíku \pkgname{ifpdf} (pracuje s~plainem +i \LaTeX em) nebo ekvivalentního kódu je \emph{důležitÄ›jší +než kdykoliv pÅ™edtím}, protože jednoduché testování, zda +je \cs{pdfoutput} nebo nÄ›jaký jiný primitiv definován, +není spolehlivý způsob urÄení, zda je generován \acro{PDF} +výstup. Tento zpÄ›tný krok jsme udÄ›lali co nejvíc kompatibilní +letos, ale v~příštím roce \cs{pdfoutput} může +být definován, dokonce i když se zapisuje do \acro{DVI}. + +\item pdf\TeX\ (\url{http://pdftex.org/}) má množství nových vlastností: + + \begin{itemize*} + + \item \cs{pdfmapfile} a \cs{pdfmapline} poskytují podporu mapování + fontů uvnitÅ™ dokumentu. + \item Mikrotypografické rozšíření fontu může být použito jednoduÅ¡eji.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item VÅ¡echny parametry, které byly pÅ™edtím nastavovány ve + zvláštním konfiguraÄním souboru \filename{pdftex.cfg}, musí + teÄ být nastaveny pomocí primitivů, obyÄejnÄ› + v~\filename{pdftexconfig.tex}; \filename{pdftex.cfg} není + dále podporován. VÅ¡echny existující \filename{.fmt} soubory + musí být znovu vytvoÅ™eny pÅ™i zmÄ›nÄ› souboru \filename{pdftexconfig.tex}. + + \item Další informace viz manuál pdf\TeX u: \OnCD{texmf/doc/pdftex/manual}. + + \end{itemize*} + +\item Primitiv \cs{input} v~\cmdname{tex}u (a \cmdname{mf} a +\cmdname{mpost}) teÄ akceptuje dvojité uvozovky se jmény obsahujícími +mezery a s~jinými zvláštními znaky. Typické příklady: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +Pro další informace viz manuál Web2C: \OnCD{texmf/doc/web2c}. + +\item Podpora enc\TeX u je nyní zahrnuta uvnitÅ™ Web2C, +v~důsledku toho ve vÅ¡ech \TeX ových programech, použitím +volby \optname{-enc} \Dash \emph{jen v~případÄ›, že formáty +jsou vytvoÅ™eny}. enc\TeX\ podporuje obecné pÅ™ekódování +vstupu a výstupu, Äímž umožňuje plnou podporu kódování +Unicode (v~\acro{UTF}-8). Viz \OnCD{texmf-dist/doc/generic/enctex/} a +\url{http://www.olsak.net/enctex.html}. + +\item Aleph, nový stroj kombinující \eTeX\ a \OMEGA, je nyní k~dispozici. +Trochu informace najdete na \OnCD{texmf-dist/doc/aleph/base} +a \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. Formát pro +Aleph, založený na \LaTeX u se jmenuje \textsf{lamed}. + +\item NejnovÄ›jší vydání \LaTeX u má novou verzi \acro{LPPL} \Dash teÄ +oficiálnÄ› schválená Debian licence. Rozmanité další aktualizace najdete +v~souborech \filename{ltnews} v~\OnCD{texmf-dist/doc/latex/base}. + +\item Je dodán \cmdname{dvipng}, nový program pro konvertování \acro{DVI} na +obrazové soubory \acro{PNG}. Viz \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item Zredukovali jsme balík \pkgname{cbgreek} na \uv{stÅ™ednÄ›} velkou +sadu fontů, se souhlasem a na radu autora (Claudio Beccari). +OdstranÄ›né fonty jsou neviditelné, obrysové, a průhledné, +relativnÄ› zřídka se používají a my jsme potÅ™ebovali místo. +Úplná sada je dostupná z~\acro{CTAN} +(\url{http://mirror.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} byl odebrán; použijte jednoduÅ¡e \cmdname{xdvi}. + +\item Příkazy \cmdname{ini} a \cmdname{vir} (linky) pro +\cmdname{tex}, \cmdname{mf} a \cmdname{mpost} se již nevytvářejí, +například \cmdname{initex}. FunkÄnost instrukce \cmdname{ini} byla po +celá léta přístupna prostÅ™ednictvím volby \optname{-ini} na~příkazovém řádku. + +\item Podpora platformy \textsf{i386-openbsd} byla zruÅ¡ena. +Jelikož balíÄek \pkgname{tetex} v~\acro{BSD} Ports systému +je dostupný a \acro{GNU/}Linux a Free\acro{BSD} binárky byly +dostupné, zdálo se nám, že Äas dobrovolníků může být využit +lépe nÄ›kde jinde. +\item Na \textsf{sparc-solaris} (pÅ™inejmenším) jste možná +museli nastavovat promÄ›nné prostÅ™edí +\envname{LD\_LIBRARY\_PATH}, aby běžely programy \pkgname{t1utils}. +Je to tím, že jsou kompilovány v~C++, +a neexistuje standardní umístÄ›ní \singleuv{runtime} knihoven. +(To není novinka roku 2004, ale nebylo to dřív zdokumentováno.) +PodobnÄ›, na \textsf{mips-irix}, `runtime' knihovny pro \acro{MIPS} +7.4 jsou nezbytné. +\end{itemize} + +\subsubsection{2005} + +Rok 2005 pÅ™inesl jako obvykle množství modernizací balíÄků a programů. +Infrastruktura zůstala relativnÄ› stabilní z~roku 2004, ale nutnÄ› také +nastaly nÄ›jaké zmÄ›ny: + +\begin{itemize} + +\item Byly zavedeny nové skripty \cmdname{texconfig-sys}, \cmdname{updmap-sys} a + \cmdname{fmtutil-sys}, které mÄ›ní konfiguraci v~systémových stromech. + Skripty \cmdname{texconfig}, + \cmdname{updmap} a \cmdname{fmtutil} teÄ mÄ›ní uživatelské (user-specific) soubory + v~\dirname{$HOME/.texlive2005}. %$ + +\item Na specifikaci stromů obsahujících konfiguraÄní soubory (uživatelské resp. systémové) + byly zavedeny odpovídající nové promÄ›nné \envname{TEXMFCONFIG} resp. + \envname{TEXMFSYSCONFIG}. Tedy, možná budete potÅ™ebovat pÅ™esunout osobní verze + souborů \filename{fmtutil.cnf} a \filename{updmap.cfg} na tato místa; jiná volba je + pÅ™edefinování \envname{TEXMFCONFIG} nebo \envname{TEXMFSYSCONFIG} v~souboru + \filename{texmf.cnf}. V~každém případÄ› skuteÄná pozice tÄ›chto souborů a + hodnoty \envname{TEXMFCONFIG} a \envname{TEXMFSYSCONFIG} + se musejí shodovat. Viz oddíl~\ref{sec:texmftrees}, + strana~\pageref{sec:texmftrees}. + +\item Loni jsme ponechali \verb|\pdfoutput| a jiné primitivy nedefinovány + pro výstup \dvi, pÅ™estože byl používán program \cmdname{pdfetex}. + Letos, jak jsme slíbili, jsme odstranili toto zpÄ›tnÄ› kompatibilní + opatÅ™ení. Tedy když váš dokument používá + \verb|\ifx\pdfoutput\undefined| + na testování výstupu do formátu \acro{PDF}, je nutné ho zmÄ›nit. Můžete + k~tomu použít balík \pkgname{ifpdf.sty} (který funguje + v~plain \TeX u i \LaTeX u), nebo použít jeho logiku. + +\item Loni jsme zmÄ›nili vÄ›tÅ¡inu formátů tak, aby vypisovaly (8bitové) znaky + tak jak jsou (viz pÅ™edcházející sekci). Nový TCX soubor + \filename{empty.tcx} teÄ poskytuje jednodušší cestu k~dosažení + původního zápisu \verb|^^| když si tak budete přát, jako v~případÄ›: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + +\item Nový program \cmdname{dvipdfmx} je zaÅ™azen pro +pÅ™evedení z~\acro{DVI} do \acro{PDF}; +ten je platnou aktualizací programu +\cmdname{dvipdfm} (který je též jeÅ¡tÄ› k~dispozici, i když ho nedoporuÄujeme). + +\item Nové programy \cmdname{pdfopen} a \cmdname{pdfclose} byly pÅ™idány, aby +poskytly možnost znovu otevřít \acro{PDF} +soubory v~programe Adobe Acrobat Reader bez jeho restartu. +(Jiné prohlížeÄe \acro{PDF}, pÅ™edevším \cmdname{xpdf}, +\cmdname{gv} a \cmdname{gsview}, nikdy netrpÄ›ly tímto problémem.) + +\item Kvůli důslednosti promÄ›nné \envname{HOMETEXMF} a + \envname{VARTEXMF} byly pÅ™ejmenovány na \envname{TEXMFHOME} resp. na + \envname{TEXMFSYSVAR}. Je tu také \envname{TEXMFVAR}, která je + implicitnÄ› uživatelsky závislá (user-specific). Viz první bod výše. +\end{itemize} + +\subsubsection{2006--2007} + +V~letech 2006--2007 byl rozsáhlým přírustkem na \TL{} program \XeTeX{}, +přístupný jako programy \texttt{xetex} a \texttt{xelatex}; viz +\url{http://scripts.sil.org/xetex}. + +\MP\ byl také podstatnÄ› aktualizován, s~mnoha plány do budoucnosti +(\url{http://tug.org/metapost/articles}), podobnÄ› pdf\TeX{} +(\url{http://tug.org/applications/pdftex}). + +Formát \TeX\ \filename{.fmt} (vysokorychlostní formát) a podobnÄ› soubory +\MP\ a \MF\ jsou teÄ uloženy v~podadresářích \dirname{texmf/web2c}, +namísto přímého uložení v~nÄ›m (aÄkoliv je adresář stále prohledáván, +v~zájmu stávajících formátů \filename{.fmt}). Podadresáře nesou jména +používaných programů, například \filename{tex} +nebo \filename{pdftex} nebo \filename{xetex}. Tato zmÄ›na by mÄ›la pÅ™i +běžném používání zůstat nepostÅ™ehnuta. + +Program (plain) \texttt{tex} již neÄte první řádky \texttt{\%\&} aby +urÄil, jaký formát má spustit; je to Äistý knuthovský \TeX. +(\LaTeX\ a vÅ¡echny ostatní programy stále Ätou řádky \texttt{\%\&}). +PochopitelnÄ› se bÄ›hem roku (jako obvykle) vyskytly stovky jiných +aktualizací balíků a programů. Jako obyÄejnÄ›, zkontrolujte, prosím, +aktualizace na \acro{CTAN}u (\url{http://mirror.ctan.org}). + +VnitÅ™nÄ›, strom zdrojových textů je nyní uložen v~Subversion, se +standardním webovským rozhraní m pro jeho prohlížení, kam smÄ›ruje +odkaz z~naší domovské stránky. TÅ™ebaže není v~koneÄné verzi +viditelný, oÄekáváme, že to poskytne základ pro stabilní rozvoj +v~letech následujících. + +Nakonec, v~kvÄ›tnu 2006 Thomas Esser oznámil, že už nebude aktualizovat +te\TeX{} (\url{http://tug.org/tetex}). Výsledkem je nárůst zájmu o~\TL{}, +pÅ™edevším mezi distributory \GNU/Linuxu. +(Na \TL{} se nachází nové instalaÄní schéma \texttt{tetex}u, +poskytující pÅ™ibližný ekvivalent.) Doufáme, že to možná povede +ke zlepÅ¡ení prostÅ™edí \TeX{}u pro vÅ¡echny. + +\subsubsection{2008} + +V~roce 2008 byla celá infrastruktura \TL{} pÅ™ebudována a znovu +implementována. Úplná informace o~instalaci je nyní +uložena v~textovém souboru \filename{tlpkg/texlive.tlpdb}. + +Mezi dalšími vÄ›cmi je koneÄnÄ› možná aktualizace instalace \TL{} +z~internetu po pÅ™edchozí instalaci. Tuto vlastnost poskytoval +MiK\TeX\ již Å™adu let. PÅ™edpokládáme pravidelnou aktualizaci nových +balíků po jejich vydání na \CTAN{}u. + +Obsažený je významnÄ›jší nový stroj (engine) Lua\TeX\ (\url{http://luatex.org}); +kromÄ› lepší pÅ™izpůsobivosti v~sázení je možno tento vynikající skriptovací jazyk +použít jak uvnitÅ™, tak i~mimo \TeX{}ovské dokumenty. + +Podpora Windows a unixových platforem je nyní jednotnÄ›jší. +Zejména, vÄ›tÅ¡ina skriptů Perlu a Lua je teÄ k~dispozici pod Windows, +s~použitím Perlu distribuovaného na~\TL. + +Nový skript \cmdname{tlmgr} (sekce~\ref{sec:tlmgr}) je vÅ¡eobecné rozhraní +pro správu \TL{} po pÅ™edchozí instalaci. Ovládá aktualizaci balíků +a následující znovuvytvoÅ™ení formátů, mapovacích souborů a jazykových souborů, +volitelnÄ› zahrnující lokální doplňky. + +S~příchodem programu \cmdname{tlmgr}, Äinnosti programu +\cmdname{texconfig} na editaci formátů a konfiguraÄních souborů dÄ›lení +slov jsou nyní blokované. + +Program \cmdname{xindy} pro tvorbu rejstříků +(\url{http://xindy.sourceforge.net/}) je nyní zahrnut na vÄ›tÅ¡inÄ› +platforem. +Nástroj \cmdname{kpsewhich} může nyní ohlásit vÅ¡echny výskyty +pro daný soubor +(option \optname{--all}) a omezené výskyty pro daný podadresář +(option \optname{--subdir}). + +Program \cmdname{dvipdfmx} zahrnuje nyní funkÄnost extrakce informace +o `bounding boxu', pomocí povelu \cmdname{extractbb}; toto +byl jeden z~posledních rysů, které poskytoval \cmdname{dvipdfm}, avÅ¡ak ne +\cmdname{dvipdfmx}. + +Fontové pÅ™ezdívky \filename{Times-Roman}, \filename{Helvetica}, atd. +byly odstranÄ›né. Různé balíky oÄekávaly jejich různé chování (pÅ™edevším, +že budou mít různé kódování) a nenalezlo se vhodné Å™eÅ¡ení tohoto problému. + +Formát \pkgname{platex} byl odstranÄ›n pro konflikt jmen s~japonÅ¡tinou +\pkgname{platex}; +podporu polÅ¡tiny nyní zajiÅ¡Å¥uje balík \pkgname{polski}. + +Soubory \web{}ovských Å™etÄ›zců (pool) jsou nyní zkompilované do binárek pro +usnadnÄ›ní aktualizací. + +A nakonec, v~tomto vydání jsou zahrnuty zmÄ›ny provedené Donaldem Knuthem +v~jeho úpravách \TeX u roku 2008 (`\TeX\ tuneup of 2008'). +Viz \url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + +\subsubsection{2009} + +Od roku 2009 je standardní výstupní formát Lua\AllTeX\ PDF, pro využití +výhody Lua\TeX{}ovské podpory Open\-Type a jiné. Nové binárky nazvané +\code{dviluatex} a \code{dvilualatex} spouÅ¡tí Lua\TeX\ pÅ™i výstupu DVI. +Domovská stránka Lua\TeX{}u je \url{http://luatex.org}. + +Původní systém (engine) Omega a formát Lambda format byly odstranÄ›ny +po diskusích s~autory systému Omega. Zůstaly aktualizované +programy Aleph a Lamed, podobnÄ› jako pomocné programy systému Omega. + +Obsažené je nové vydání fontů AMS \TypeI, vÄetnÄ› Computer +Modern: do zdrojáků Metafontu bylo zapracováno nÄ›kolik málo zmÄ›n tvarů, +které za léta udÄ›lal Don Knuth a byl aktualizován hinting fontů. +% and the hinting has been updated. +Tvary fontů Euler byly důkladnÄ› pÅ™ekresleny Hermannem Zapfem (viz +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). Ve vÅ¡ech +případech zůstaly metriky \emph{nezmÄ›nÄ›ny}. Domovská stránka AMS fontů je +\url{http://www.ams.org/tex/amsfonts.html}. + +Pomocný program -- nový GUI editor -- \TeX{}works +je zahrnut pro Windows, ale také v~Mac\TeX u. +Pro jiné platformy a další informace, viz domovskou +stránku \TeX{}works \url{http://tug.org/texworks}. +Je to multi-platformní prostÅ™edí +%It is a cross-platform front end +inspirované editorem TeXShop v~\MacOSX, zaměřené +na jednoduché použití. + +Grafický program Asymptote je zahrnutý pro více platforem. Realizuje +textovÄ› založený jazyk pro popis grafiky, blízký k~MetaPostu, +avÅ¡ak s~pokroÄilou podporou 3D a jinými vlastnostmi. +Jeho domovská stránka je \url{http://asymptote.sourceforge.net}. + +Samostatný program \code{dvipdfm} byl nahrazen programem +\code{dvipdfmx}, který pod tímto jménem pracuje ve zvláštním +režimu kompatibility. % under that name +\code{dvipdfmx} zahrnuje podporu \acro{CJK} a má nahromadÄ›ny +mnohé další úpravy za léta od posledního vydání +\code{dvipdfm}. Domovská stránka DVIPDFMx je +\url{http://project.ktug.or.kr/dvipdfmx}. + +Binárky pro platformy \pkgname{cygwin} a \pkgname{i386-netbsd} jsou nyní +v~\TL{} zahrnuty, zatímco nám bylo oznámeno, že uživatelé Open\acro{BSD} získají \TeX\ pomocí jejich +systémů balíků a navíc se objevily potíže pÅ™i vytváření binárek, +které by mÄ›li Å¡anci fungovat ve více než jedné verzi. + +Z dalších menších zmÄ›n: nyní používáme \pkgname{xz} kompresi, +stabilní náhradu za \pkgname{lzma} +(\url{http://tukaani.org/xz/}); a literál |$| je povolen v~názvech +souborů pokud není uveden na zaÄátku jména známé promÄ›nné; +knihovna Kpathsea je teÄ vícevláknová +(použitelné v~MetaPostu); budování celého \TL{} je nyní založeno na +systému Automake. + +ZávÄ›reÄná poznámka o minulosti: vÅ¡echna vydání \TL{}, spolu s~podpůrným +materiálem jako napÅ™. \CD\ labels jsou dostupná na +\url{ftp://tug.org/historic/systems/texlive}. + +\subsubsection{2010} + +\label{sec:2010news} % keep with 2010 +V~roce 2010 je pÅ™edvolenou verzí pro výstup PDF verze 1.5, umožňující vÄ›tší kompresi. +To se týká vÅ¡ech nástrojú \TeX{}u používaných na vytváření PDF a \code{dvipdfmx}. +NaÄtením \LaTeX{}ovského balíÄku \pkgname{pdf14} se provede zpÄ›tná zmÄ›na na PDF~1.4, +nebo nastavte |\pdfminorversion=4|. + +pdf\AllTeX\ nyní \emph{automaticky} konvertuje požadovaný soubor ve formátu Encapsulated +PostScript (EPS) na PDF, prostÅ™ednictvím balíku \pkgname{epstopdf}, když a pokud je naÄten +konfiguraÄní soubor \LaTeX{}u \code{graphics.cfg} a pokud je výstup do PDF. +Implicitní nastavení jsou zamýšlené pro eliminaci možností pÅ™epsání +ruÄnÄ› vytvoÅ™ených PDF souborů, ale můžete také docela zakázat naÄtení \code{epstopdf} zadáním +|\newcommand{\DoNotLoadEpstopdf}{}| (nebo |\def...|) pÅ™ed deklarací +\cs{documentclass}. Balík \pkgname{epstopdf} nebude zaveden rovněž +pokud bude použit balík \pkgname{pst-pdf}. +Pro další podrobnosti viz dokumentaci balíku \pkgname{epstopdf} +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +Další podobnou zmÄ›nou je, že vykonání nÄ›kolika málo externích příkazů z~\TeX{}u, +prostÅ™ednictvím vlastnosti \cs{write18}, je nyní implicitnÄ› povoleno. Tyto +příkazy jsou \code{repstopdf}, \code{makeindex}, \code{kpsewhich}, +\code{bibtex} a \code{bibtex8}; seznam je uveden v~\code{texmf.cnf}. +ProstÅ™edí, která musí zakázat vÅ¡echny takové externí povely +můžou zruÅ¡it tuto volbu v~instalátoru (viz +oddíl~\ref{sec:options}), nebo po instalaci pÅ™epsat hodnotu +spuÅ¡tÄ›ním |tlmgr conf texmf shell_escape 0|. + +JeÅ¡tÄ› další podobnou zmÄ›nou je to, že \BibTeX\ a Makeindex nyní implicitnÄ› odmítají zapsat +své výstupní soubory do libovolného adresáře (jako samotný \TeX). +Je to proto, že nyní můžou být povolené pro použití omezeným \cs{write18}. +Aby se to zmÄ›nilo, může být nastavena promÄ›nná prostÅ™edí \envname{TEXMFOUTPUT}, +nebo zmÄ›nené nastavení |openout_any|. + +\XeTeX\ nyní podporuje posun (kerning) okrajů podél stejných linií jako pdf\TeX. +(Expanze fontů není aktuálnÄ› podporována.) + +Program \prog{tlmgr} nyní standardnÄ› ukládá jednu zálohu každého +aktualizovaného balíku (\code{tlmgr option autobackup 1}), +tudíž pÅ™eruÅ¡ené aktualizace balíků mohou být snadno vráceny příkazem \code{tlmgr restore}. +Pokud dÄ›láte poinstalaÄní aktualizace a nemáte dostek místa na disku pro zálohy, +spusÅ¥te \code{tlmgr option autobackup 0}. + +Byly zaÅ™azeny nové programy: nástroj (engine) p\TeX\ a příbuzné pomůcky pro sazbu JaponÅ¡tiny; +program \BibTeX{}U pro \BibTeX umožňující použití Unicode; utility \prog{chktex} +(\url{http://baruch.ev-en.org/proj/chktex}) +na kontrolu dokumentů \AllTeX{}u; pÅ™ekladaÄ \prog{dvisvgm} z~DVI do SVG +(\url{http://dvisvgm.sourceforge.net}). + +Jsou dodány binárky tÄ›chto nových platforem: \code{amd64-freebsd}, +\code{amd64-kfreebsd}, \code{i386-freebsd}, \code{i386-kfreebsd}, +\code{x86\_64-darwin}, \code{x86\_64-solaris}. + +ZmÄ›na \TL{} 2009, kterou jsme si nevÅ¡imli: Äetné binárky týkající se \TeX4ht +(\url{http://tug.org/tex4ht}) byly odstranÄ›ny z~adresářů binárek. +ObecnÄ› použitelný (generic) program \code{mk4ht} může být použit na spuÅ¡tÄ›ní +libovolné z~rozliÄných kombinací \code{tex4ht}. + +Nakonec, vydání \TL{} na \TK\ \DVD\ již nemůže být (kupodivu) spouÅ¡tÄ›né živÄ›. +Samostatné \DVD\ již nemá dostatek místa. +Jednou výhodou je, že instalace z~fyzického \DVD\ je mnohem rychlejší. + +\subsubsection{2011} + +Binárky \MacOSX\ (\code{universal-darwin} a +\code{x86\_64-darwin}) nyní pracují jenom pro Leopard nebo pozdÄ›jší; Panther a +Tiger již nejsou podporovány. + +Program \code{biber} pro zpracování bibliografie je zahrnut pro běžné platformy. +Jeho rozvoj je úzce spojený s~balíkem +\code{biblatex}, který úplnÄ› pÅ™ebudovává %which completely reimplements +bibliografické prostÅ™edky poskytované \LaTeX{}em. + +Program MetaPost (\code{mpost}) již nevytváří nebo nepoužívá soubory +\code{.mem}. PotÅ™ebné soubory, jako je \code{plain.mp}, se jednoduÅ¡e naÄítají +pÅ™i každém spuÅ¡tÄ›ní. To souvisí s~podporou MetaPostu jako knihovny, +což je další důležitá zmÄ›na, tÅ™ebas neviditelná pro uživatele. + +Implementace \code{updmap} v~programu Perl, pÅ™edtím používána pouze +pod Windows, byla vylepÅ¡ena a nyní je používána na vÅ¡ech +platformách. Výsledkem toho je, že uživatel by nemÄ›l +vidÄ›t žádné zmÄ›ny, kromÄ› toho, že program běží mnohem rychleji. + +% +\htmlanchor{news} +\subsection{SouÄasnost} +\label{sec:tlcurrent} + +\code{tlmgr} podporuje aktualizace z~vícenásobných +síťových repositářů. Více obsahuje oddíl o vícenásobných +repositářích ve výstupu příkazu \code{tlmgr help}. + +Parametr \cs{XeTeXdashbreakstate} je implicitnÄ› nastaven na~1, pro +\code{xetex} i \code{xelatex}. To umožňuje zalomení řádek po +pomlÄkách a spojovnících, % a em-dashes and en-dashes, +co vždycky bylo chováním %which has always been the behavior of plain +plain \TeX{}u, \LaTeX{}u, Lua\TeX{}u, atd. Stávající dokumenty +\XeTeX{}u, které si musí udržet perfektní kompatibilitu +zalomení řádek musí explicitnÄ› nastavit hodnotu +\cs{XeTeXdashbreakstate} na~0. + +Výstupní soubory generované programy \code{pdftex} a \code{dvips}, mimo jiné, +můžou teÄ pÅ™evýšit 2gb. + +Do výstupu programu \code{dvips} je implicitnÄ› zahrnuto 35 standardních +PostScriptových fontů, protože existuje tolik jejich různých verzí. + +V omezeném režimu vykonávání \cs{write18}, který je implicitnÄ› nastaven, +\code{mpost} je teÄ povoleným programem. + +Soubor \code{texmf.cnf} je také k nalezení v adresáři \filename{../texmf-local}, +například, \filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf}, +pokud existuje. + +Skript \code{updmap} Äte soubor \code{updmap.cfg} podle stromu místo +globálního konfiguraÄního souboru. Tato zména by nemÄ›la být viditelná, +pokud needitujete vaÅ¡e soubory updmap.cfg přímo. +Více obsahuje výstup příkazu \code{updmap --help}. + +Platformy: byly pÅ™idány \pkgname{armel-linux} a \pkgname{mipsel-linux}; +\pkgname{sparc-linux} není více v~základní distribuci, ale je dostupný +pro instalaci jako jedna z~uživatelských binárek, spoleÄnÄ› s~různýma +jinýma platformami: \url{http://tug.org/texlive/custom-bin.html}. + +\subsection{Budoucnost} + +\emph{\TL{} není dokonalý!} A~nikdy nebude. Máme v~úmyslu +pokraÄovat v~pravidelných vydáních a rádi bychom poskytovali +více podpůrných materiálů, programů, vÄetnÄ› instalaÄních, a jistěže +aktualizovaný a lépe zkontrolovaný strom maker a fontů. Tato práce je +provádÄ›na dobrovolníky v~jejich limitovaném volném Äase a tedy vždycky je +co dÄ›lat. Viz, prosím, +\url{http://tug.org/texlive/contribute.html}. + +Prosíme, poÅ¡lete opravy, návrhy, námÄ›ty a nabídky pomoci na: +\begin{quote} +\email{tex-live@tug.org}\\ +\url{http://tug.org/texlive} +\end{quote} +\smallskip\nobreak +\noindent \textsl{Šťastné \TeX ování!} + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-de/Makefile b/Master/texmf-dist/doc/texlive/texlive-de/Makefile new file mode 100644 index 00000000000..37063a9db3e --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-de/Makefile @@ -0,0 +1,2 @@ +include ../texlive-en/Makefile +doc = texlive-de diff --git a/Master/texmf-dist/doc/texlive/texlive-de/lmsy10-40.png b/Master/texmf-dist/doc/texlive/texlive-de/lmsy10-40.png new file mode 100644 index 00000000000..55c7772320b Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-de/lmsy10-40.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-de/texlive-de-new.tex b/Master/texmf-dist/doc/texlive/texlive-de/texlive-de-new.tex new file mode 100644 index 00000000000..eb8ea421e10 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-de/texlive-de-new.tex @@ -0,0 +1,2151 @@ +%\pdfoutput=0 +\documentclass[12pt,ngerman,a4paper,fullparskip]{scrreprt} + +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{booktabs} +\usepackage{babel} +\usepackage{graphicx} +\usepackage{csquotes} +\usepackage{paralist} +\usepackage{xcolor} +\usepackage{xspace} +\usepackage{url} +\usepackage{multicol} +\usepackage{showlabels} +\usepackage[tocindentauto]{tocstyle} +\usepackage{alltt} + + +\usepackage{bera} +\usepackage[]{ulem} + +\newcommand{\tlcurrentyear}{2013} +\newcommand{\TL}{\TeX\ Live\xspace} +\newcommand{\email}[1]{\texttt{#1}} +\newcommand{\acro}[1]{\texttt{#1}} +\newcommand{\cmdname}[1]{\texttt{#1}} +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\texttt{#1}} +\newcommand{\optname}[1]{\texttt{#1}} +\newcommand{\OnCD}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\renewcommand{\filename}[1]{\texttt{#1}} +\newcommand{\dirname}[1]{\texttt{#1}} +\newcommand{\pkgname}[1]{\texttt{#1}} +\newcommand{\Webc}[1]{\texttt{#1}} +\newcommand{\envname}[1]{\texttt{#1}} +\newcommand{\TeXXeT}{TeXXeT} +\newcommand{\KPS}{Kpathsea\xspace} +\newcommand{\var}[1]{\texttt{#1}} + + +\newcommand{\samp}[1]{\texttt{#1}} +\newcommand{\Ucom}[1]{\textbf{\texttt{#1}}} +\newcommand{\bs}{\protect\normalfont\ttfamily\char'134} + +\usepackage{fancyvrb} +\DefineVerbatimEnvironment{boxedverbatim}{Verbatim}{fontsize=\footnotesize,frame=single} + + +\setlength{\parskip}{1em} +\setlength{\parindent}{0pt} + + +\def\TK{\TeX\ Collection} + +\newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} +\newcommand\MIKTEX{MiK\kern-.025em \TeX}% per www.miktex.org + +\def\MP{MetaPost} +\def\MF{MetaFont} +\def\BibTeX{Bib\TeX} + +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\texorpdfstring{\acro{DVD}}{DVD}\xspace} +\providecommand*{\GNU}{\acro{GNU}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\ISO}{\texorpdfstring{\acro{ISO}}{ISO}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\USB}{\texorpdfstring{\acro{USB}}{USB}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{WEB}\xspace} +\providecommand*{\XeTeX}{xe\TeX\xspace} + + +\newcommand{\dante}{DANTE~e.\,V\kern-0.15em.} + +\usepackage{hyperref} +\usepackage[]{url} +\hypersetup{% + colorlinks=true, % aktiviert farbige Referenzen + linkcolor = blue, % Linkfarbe blau + citecolor = blue, % cite-Farbe blau + urlcolor = blue, % cite-Farbe blau + pdfpagemode=UseNone, % PDF-Viewer startet ohne Inhaltsverzeichnis et.al. + pdfstartview=FitH} % PDF-Viewer benutzt beim Start bestimmte Seitenbreite + +\hypersetup{% + pdftitle={TeX Live Anleitung},% + pdfauthor={Uwe Ziegenhagen, ww.uweziegenhagen.de},% + pdfsubject={TeX Live },% + pdfkeywords={TeX, LaTeX, TeX Live}% +} + +\begin{document} + +\begin{titlepage} + +\begin{center} +\vspace*{3cm} + + \Huge Anleitung zu \TL\vspace*{1cm} + +\Large Version \tlcurrentyear + +\end{center} + +\vfill \noindent Karl Berry (Herausgeber) \\ +verantwortlich für die deutsche Ausgabe:\\ +Uwe Ziegenhagen, \href{mailto:ziegenhagen@gmail.com}{ziegenhagen@gmail.com} \\ +Köln, den \today +\end{titlepage} + +\tableofcontents + +\listoffigures + +\listoftables + + +% +% +%\section{Einleitung}\label{sec:intro} +%\subsection{\TL\ und die \TeX-Collection} + + +\chapter{Einleitung}\label{sec:intro} +\section{\TL und die \TL-Collection} + +Diese Anleitung beschreibt das \TL-System an sich, nicht die Arbeit mit \TeX/\LaTeX. + +Die {\TL} Distribution enthält \TeX/\LaTeX-Systeme für Linux, verschiedene \acro{UNIX}-Plattformen, {\MacOSX} und Windows. Sowohl \TL{} als auch die \TK{} sind durch das Engagement vieler Freiwilliger aus vielen \TeX-Vereinen entstanden. + +Wahrscheinlich haben Sie \TL{} auf einem von zwei Wegen bezogen, entweder +per direktem Download von \TL{} oder als Teil der \DVD{} \TK, die von +vielen \TeX-Vereinen (u.\,a. \dante) an ihre Mitglieder verschickt werden +und in Deutschland über die Fachbuchhandlung Lehmanns (\url{http://www.lob.de}) +vertrieben wird. Abschnitt~\ref{sec:tl-coll-dists} beschreibt kurz den +Inhalt der \TK-\DVD. + + + +{\TL} enthält lauf"|fähige Versionen von \TeX, \LaTeXe, \ConTeXt, \MF, \MP, {\BibTeX} und vielen +anderen Programmen, sowie eine umfassende Auswahl an Makros, Zeichensätzen und +Beschreibungen, die gemäß der Standard"=\TeX"=Verzeichnisstruktur (\TDS) abgelegt sind. + +Eine kurze Zusammenfassung der wesentlichen Änderungen der aktuellen \TL-Version +gegenüber der Vorgängerversion finden Sie im Abschnitt~\ref{sec:tlcurrent} auf +Seite~\pageref{sec:tlcurrent}. + +\section{Unterstützung verschiedener Betriebssysteme}\label{sec:os-support} + +\TL{} enthält direkt ausführbare Programme für viele Unix-basierte Betriebssysteme, insbesondere GNU/Linux und \MacOSX\ und Cygwin. Selbst wenn für Ihr Unix-System wider Erwarten keine ausführbaren Programme enthalten sind, sollten Sie in der Lage sein, aus den mitgelieferten Programm-Quellen ein funktionierendes \TeX-System zu kompilieren. + +Bezüglich Microsoft Windows werden Versionen ab Windows~XP unterstützt, frühere Versionen werden nicht unterstützt. Es existieren zwar keine 64-Bit-Ver\-sionen der Programme, allerdings sollten die 32-Bit-Programme problemlos auf 64-Bit-Systemen funktionieren. + +\section{Einsatzmöglichkeiten des \TL-Systems der \TeX\ Collection}\label{sec:basic} + +Sie können das \TL-System wahlweise von der \DVD oder über das +Internet (\url{http://tug.org/texlive/acquire.html}) installieren. +Der \prog{Net Installer} ist ein kleines Programm, +das die benötigten Teile aus dem Internet nachlädt. Dieser Weg bietet +sich an (eine schnelle und stabile Internetverbindung voraus gesetzt), +wenn Sie kein komplettes \TL{} installieren wollen, sondern Ihr System nur +aus bestimmten Paketen bestehen soll. + +Wenn Sie die \DVD{} besitzen (oder das ISO-Image der \DVD{} herunter +geladen haben -- dieses kann auf einigen Systemen sogar direkt als +virtuelles Medium \enquote{gemountet} werden), können Sie \TL{} nach +Wunsch auf Ihrer Festplatte installieren. Im Gegensatz zu früher ist +\TL{} nicht mehr direkt von der \DVD{} lauffähig. Sie können aber +eine portable Version z.\,B. auf einem USB-Stick installieren, wie im +Abschnitt~\ref{sec:portable-tl} beschrieben. + +Beide Methoden werden in den Abschnitten zur Installation beschrieben. +Hier daher nur die kurze Zusammenfassung: + +\begin{itemize} +\item Das Hauptinstallationsskript ist \cmdname{install-tl}. Es bietet +eine grafische Benutzeroberfläche (GUI) für die Standardinstallation +(den sogenannten \enquote{wizard mode}), einen Textmodus und eine grafische Oberfläche im Expertenmodus. +Unter Windows ist der grafische \enquote{wizard mode} der Standard, auf allen anderen +Systemen ist es der Textmodus. Durch die Optionen \code{-gui=wizard}, \code{-gui=text} und \code{-gui=perltk} können Sie gezielt auswählen, ob das Installationsprogramm +im ">wizard mode"<, Textmodus oder mit der grafischen Oberfläche im Expertenmodus +starten soll. +\item \TL installiert u.\,a. den ">\TL Manager"< mit dem Namen +\prog{tlmgr}. Auch dieser unterstützt Text- und GUI-Mode. Mit diesem +Programm können Sie einerseits Pakete von \TL installieren oder deinstallieren, +andererseits \TL konfigurieren. +\end{itemize} + +\section{\TL und Sicherheit} + +Nach bestem Wissen und Gewissen kann man sagen, dass die \TeX-Kernprogramme selbst sehr robust sind. Dieses Maß an Robustheit und Sicherheit wird jedoch möglicherweise nicht von allen Programmen erreicht, die Teil von \TL sind. Daher gilt für \TL das, was auch für alle anderen Programme gilt: Vorsicht bei der Verarbeitung von Quellcode, den man nicht genau kennt, zur maximalen Sicherheit sollte man in diesen Fällen die entsprechenden Dateien in einem neuen Unterverzeichnis verarbeiten. + +Die Sorge um die Sicherheit gilt vor allem für MS Windows, da Windows-Programme zuerst im aktuellen Verzeichnis suchen, egal wie Pfad-Angaben gesetzt sind. Theoretisch ermöglicht dies eine Reihe von Angriffsszenarien. Viele Sicherheitslücken in Programmen von \TL wurden geschlossen, andere bestehen auch weiterhin, besonders im Umgang mit Drittanbieter-Software. + +Aus diesem Grund empfehlen wir bei der Verarbeitung von unbekanntem Quellcode, auf das Vorhandensein von ausführbaren Dateien im Quellcode-Verzeichnis zu achten. Diese sollten nicht vorhanden sein und erst recht nicht durch die Verarbeitung von \TeX-Quellcode erzeugt worden sein. + +\TeX und seine Begleitprogramme können in Dateien schreiben, wenn ein Dokument übersetzt wird. Diese Funktion kann auch missbräuchlich eingesetzt werden. Daher ist bei der Verarbeitung von unbekannten Quellen die Nutzung eines neuen Unterverzeichnisses der sicherste Weg! + +\section{Hilfe zu \TeX, \LaTeX\ \& Co}\label{sec:help} + +Die \TeX-Gemeinschaft ist ebenso aktiv wie hilfsbereit, und es wird +praktisch jede ernst gemeinte Frage beantwortet. Diese Hilfe ist allerdings +nicht formal organisiert, sondern wird von Freiwilligen in ihrer +Freizeit geleistet. Es ist daher wichtig, dass Sie vor einer +Fragestellung Ihre \enquote{Hausaufgaben} erledigen. + + +Die folgende Liste stellt die leicht zugänglichen Hilfe-Quellen in der +empfohlenen Reihenfolge vor: + +\begin{description} +\item [Einführung:] Wenn Sie \TeX-Anfänger sind und eine englische Einführung in das System benötigen, sollten Sie \url{http://tug.org/begin.html} lesen. + +Für deutschsprachige \LaTeX-Anfänger ist die \enquote{\LaTeXe-Kurzbeschreibung} von großem Nutzen + (\OnCD{texmf-doc/doc/german/lshort-german/l2kurz.pdf}). + +\item [\TeX-\acro{FAQ}s:] + Die \TeX-\acro{FAQ} (im Deutschen \file{de-tex-faq} über + das Textsatzsystem TeX und Dante, die Deutschsprachige + Anwendervereinigung TeX e.V., ist ein riesiges Kompendium + mit Fragen (und Antworten) aller Art, von der einfachsten + Anfängerfrage bis zu Expertenwissen. + + Sie finden die deutschsprachige FAQ unter \url{http://www.dante.de/FAQ.html}. Des Weiteren existiert eine englischsprachige FAQ, die im Internet unter \url{http://www.tex.ac.uk/faq} verfügbar ist. + +Bitte schauen Sie bei auftretenden Problemen, insbesondere wenn Sie als Anfänger mit \TeX/\LaTeX\ arbeiten, zuerst diese beiden Möglichkeiten. + +\item [\TeX-Catalogue:] Wenn Sie auf der Suche nach einem bestimmten Paket, + Font, Programm u.\,ä. sind, empfiehlt sich ein Blick in den \TeX-Catalogue unter \url{http://www.ctan.org/tex-archive/help/Catalogue/catalogue.html}. Dieser Katalog enthält eine Liste aller verfügbaren \TeX-spezifischen Dinge. + +\item [\TeX-\acro{WWW}-Ressourcen:] Unter \url{http://tug.org/interest.html} finden Sie eine große Anzahl \TeX-spezifischer Links zu Büchern, Handbüchern und Artikeln zu allen Aspekten des \TeX-Systems. + +\item [Archive:] Ein Forum für die Hilfestellung sind die Usenet-News-Gruppen\footnote{Für eine Einführung zum Usenet siehe \url{http://de.wikipedia.org/wiki/Usenet}.} + \url{news:de.comp.text.tex} (Deutsch), \url{news:comp.text.tex} (Englisch) + und die Mailing-Liste \email{texhax@tug.org}. + + +In deren Archiven finden sich die Fragen und Antworten vieler Jahre. Ihre Suche können Sie in Google + beispielsweise mit \url{http://groups.google.de/group/de.comp.text.tex/topics} + starten -- oder auch in \url{http://tug.org/mail-archives/texhax} durchführen. + + Im Allgemeinen ist es recht erfolgversprechend, eine generelle Suche über Google + \url{http://www.google.de/} durchzuführen (entweder im Internet allgemein + oder in den o.\,g. News-Gruppen); dies insbesondere, wenn es sich um Fragen über + \PS/PDF, \cmdname{Ghostscript} u.\,ä. handelt. + +\item [Online-Foren:] Neben den bereits genannten Quellen gibt es Foren im Internet, in denen Sie Ihre Frage stellen können: \url{http://tex.stackexchange.com}, \url{http://golatex.de}, \url{http://mrunix.de/forums/forumdisplay.php?f=38} \\ sind nur einige, die Hilfe zu \TeX\ \& \LaTeX\ anbieten. + +Auch hier gilt: Je mehr Mühe Sie sich mit dem Stellen von Fragen geben, desto besser kann Ihnen geholfen werden. + +\item [Fragen stellen:] + Wenn Sie mit den oben aufgezeigten Möglichkeiten immer noch keine Antwort auf Ihre Frage gefunden haben, können Sie die Frage auch in einer News-Gruppe stellen (neudeutsch: \emph{posten}). Hier bietet sich für den deutschsprachigen Raum die News-Gruppe \url{news:de.comp.text.tex} an. + Benutzen Sie am besten für Anfragen Google + (\url{http://groups.google.de/group/de.comp.text.tex/topics}) + oder einen Newsreader. Fragen an die englischsprachige Gruppe + \url{news:comp.text.tex} + (bei Google: \url{http://groups.google.de/group/comp.text.tex/topics}) + sollten Sie bitte nur auf Englisch stellen. + + Zusätzlich existieren E-Mail-Listen, wobei hier die deutschsprachige Liste + \email{TeX-D-L@listserv.dfn.de} zu nennen ist (das englischsprachige Äquivalent + ist \email{texhax@tug.org}). Darüber hinaus bietet sich für Mitglieder + von Dante~e.V. der Beraterkreis an (\email{beraterkreis@dante.de}). + Wie Sie sich in die E-Mail-Liste \dirname{TeX-D-L} eintragen können, + finden Sie in der FAQ unter \enquote{1.3.2 Was ist TeX-D-L?}. + + Bevor Sie eine Frage absenden, lesen Sie \emph{bitte} die entsprechenden + Einträge der FAQ zum Thema \enquote{Wie stelle ich eine Frage in einer + Newsgroup, damit ich mit hoher Wahrscheinlichkeit eine Antwort bekomme?}, wie + z.\,B. \enquote{1.3.1 Was ist 'de.comp.text.tex'?} und \enquote{1.3.7 Was + sollte ich gelesen haben, bevor ich eine Frage in 'de.comp.text.tex' oder der + Diskussionsliste TeX-D-L stelle?}. + +\item [Mithilfe:] + Wenn Sie einen Fehler melden wollen oder Empfehlungen und Kommentare + zur \TL-Verteilung, -Installation oder -Dokumentation geben möchten, sollten Sie die + E-Mail-Liste \email{tex-live@tug.org} nutzen. + Korrekturen, Anmerkungen und Erweiterungen für die deutsche Ãœbersetzung können Sie auch + an \email{ziegenhagen@gmail.com} direkt senden. + + Fragen zu Programmen, die Sie in der {\TK} finden, sollten Sie besser auf + einer der oben genannten Mailing-Listen stellen oder direkt an den Programmautor + richten. +\end{description} + +\noindent Auf der anderen Seite können auch Sie mit Ihrem Wissen helfen. Die News-Gruppen +\url{news:de.comp.text.tex} (in Deutsch), \url{news:comp.text.tex} (in Englisch) und +die Mailing-Liste \email{TeX-D-L@listserv.dfn.de} (Deutsch) und \email{texhax@tug.org} (Englisch) +stehen allen offen. Wenn Sie also dort mitlesen, scheuen Sie sich nicht, Fragen, +zu denen Sie eine Antwort wissen, zu beantworten und damit anderen zu helfen. + +Falls Sie auf eine garantierte kommerzielle Unterstützung angewiesen sind oder eine solche +bevorzugen, sollten Sie die Finger komplett vom \TL-System lassen und in der Liste unter \url{http://tug.org/interest.html#vendors} nach einem geeigneten Händler suchen. + +\chapter{Ãœberblick zum \TL-System}\label{sec:overview-tl} + +In diesem Abschnitt beschreiben wir die Struktur und den Inhalt des \TL-Systems und der \TK-\DVD. + +\subsection[Die \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX]{Die \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX}\label{sec:tl-coll-dists} + +Die \DVD besteht aus: + +\begin{description} +\item[\TL] Ein komplettes \TeX-System, wahlweise zur Installation auf einer Festplatte oder einem Wechselmedium (USB-Stick). Die Homepage des \TL-Projektes finden Sie unter \url{http://tug.org/texlive/}. +\item[Mac\TeX] für \MacOSX. Dieses enthält das komplette \TL, bietet zusätzlich aber ein Installationsprogramm für Mac und einige Zusatzprogramme. Nähere Informationen finden Sie auf der Homepage von Mac\TeX{} unter \url{http://tug.org/mactex/}. +\item[pro\TeX{}t] basiert auf der \MIKTEX-Distribution für Windows. Es enthält noch einige Zusatzprogramme und stellt eine einfache Installationsanleitung bereit, die Schritt für Schritt den Weg zu einem kompletten \TeX-System beschreibt. Die Homepage von pro\TeX{}t findet sich unter \url{http://tug.org/protext}. +\item[CTAN] Weiterhin ist auf der \DVD{} ein Teil der \TeX-bezogenen Software enthalten, die sich +in CTAN, dem \emph{Comprehensive \TeX{} Archive Network} (\url{http://www.ctan.org}) befinden. +\item [\texttt{texmf-extra}] In diesem Verzeichnis befinden sich zusätzliche Pakete, die kein Teil von +\TL sind. +\end{description} + +\CTAN{}, \pkgname{protext} und \dirname{texmf-extra} unterliegen nicht denselben Lizenzregeln wie \TL. Daher können für Teile hieraus andere Lizenzbedingungen bezüglich einer Weiterverteilung oder +Modifikation gelten, die Sie unbedingt beachten sollten! + +\section{Basisverzeichnisse von \TL}\label{sec:tld} + +In diesem Abschnitt beschreiben wir die Basisverzeichnisse einer \TL-Installation. + +\begin{center} +\begin{tabular}{rp{0.8\textwidth}} +bin & ausführbare Programme des \TeX-Systems. Jeweils für die verschiedenen Rechnerplattformen + in Unterverzeichnissen zusammengefasst\\ +readme-*.dir & in diesen Verzeichnissen (!) befinden sich Text- bzw. HTML-Dateien + in verschiedenen Sprachen, die als schneller + Einstieg in \TL empfehlenswert sind.\\ +source & Quelldateien aller Programme inklusive der + \Webc-Quellen für die \TeX-Pakete\\ +texmf & Verzeichnisbaum für Programme mit zugehörigen Hilfsdateien und Anleitungen; enthält keine \TeX-Formate und Pakete (siehe \texttt{TEXMFMAIN} im nächsten Abschnitt).\\ +texmf-dist & Hauptbaum mit Formaten und Paketen (siehe \texttt{TEXMFDIST} im nächsten Abschnitt).\\ +tlpkg & Skripte, Programme und Daten die für die Installation benutzt werden, sowie einige Dinge, die speziell für Windows benötigt werden. + +\end{tabular} +\end{center} + +Zusätzlich zu den oben aufgeführten Verzeichnissen finden Sie +im Wurzelverzeichnis der Distribution +auch noch die Installationsskripte. + +Wenn Sie nach Dokumentation suchen, bietet Ihnen die Datei \OnCD{doc.html} wichtige Links. +Die Dokumentation für Programme (Handbücher, ">man~pages"<, \acro{GNU}-\acro{info}-Dateien) beispielsweise finden Sie +im Verzeichnis \OnCD{texmf/doc}. Ähnliches +gilt für die Dokumentation der \TeX-Pakete und -Formate im Verzeichnis \OnCD{texmf-dist/doc}. + +Benutzen Sie das Programm \cmdname{texdoc}, wenn Sie auf der Suche nach irgendeiner +Dokumentationsdatei sind. Hilfreich in diesem Zusammenhang könnte auch die Link-Sammlung \filename{doc.html} im Wurzelverzeichnis sein. + +Die Anleitung zu \TL ist in verschiedenen Sprachen verfügbar auf der \DVD verfügbar: +\begin{description} +\item[Deutsch:] \OnCD{texmf/doc/german/texlive-de/texlive-de} (dieses Dokument) +\item[Englisch:] \OnCD{texmf/doc/english/texlive-en/texlive-en} +\item[Französisch:] \OnCD{texmf/doc/french/texlive-fr/texlive-fr} +\item[Italienisch:] \OnCD{texmf/doc/italian/texlive-it/texlive-it} +\item[Polnisch:] \OnCD{texmf/doc/polish/texlive-pl/texlive-pl} +\item[Russisch:] \OnCD{texmf/doc/russian/texlive-ru/texlive-ru} +\item[Serbisch:] \OnCD{texmf/doc/serbian/texlive-sr/texlive-sr} +\item[Tschechisch/Slowakisch:] \OnCD{texmf/doc/czechslovak/texlive-cz/live} +\item[Chinesisch:] \OnCD{texmf/doc/chinese/texlive-zh-cn/texlive-zh-cn} +\end{description} + +\section{Ãœberblick über die vordefinierten texmf-Bäume}\label{sec:texmftrees} + + +Dieser Abschnitt listet die vordefinierten texmf-Bäume, die vom System benutzt +werden, und deren Bedeutung auf. Das Kommando \texttt{tlmgr~conf} +zeigt Ihnen die aktuellen Einstellungen dieser Variablen an. + +\begin{description} +\item [TEXMFMAIN] In diesem Baum befinden sich wichtige Teile des Systems, + wie Konfigurationsdateien, Hilfsprogramme und die Dokumentation. +\item [TEXMFDIST] In diesem Baum befinden sich die wesentlichen Makro-Pakete, + Fonts usw. Dieser Baum enthält systemunabhängige Daten, die prinzipiell + von jedem TDS-kompatiblem \TeX-System nutzbar sein sollten. +\item [TEXMFLOCAL] Dieser Baum ist für Ergänzungen oder Aktualisierungen + von Makros, Fonts etc. gedacht, die Administratoren für alle Nutzer + installieren. +\item [TEXMFHOME] In diesem Baum können einzelne Nutzer Ergänzungen oder + Aktualisierungen von Makros, Fonts etc. ablegen. Standardmäßig befindet + sich dieser Baum unterhalb von \verb+$HOME+, so dass andere Nutzer von + Änderungen hier nicht beeinflusst werden. +\item [TEXMFCONFIG] Dieser benutzerspezifische (!) Baum wird von den Hilfsprogrammen von \TeX{} + wie \verb+texconfig+, \verb+updmap+ und \verb+fmtutil+ verwendet. + Standardmäßig befindet sich dieser Baum unterhalb von \verb+$HOME+, + so dass andere Nutzer von Änderungen hier nicht beeinflusst werden. +\item [TEXMFSYSCONFIG] Systemweiter Baum, wird von den Hilfsprogrammen + \verb+texconfig-sys+, \verb+updmap-sys+ und \verb+fmtutil-sys+ + verwendet, so dass hier das Verhalten des \TL-Systems für alle Nutzer + beeinflusst werden kann. +\item [TEXMFSYSVAR] Dieser Baum wird von den systemweiten Hilfsprogrammen + wie \verb+texconfig-sys+, \verb+updmap-sys+ und \verb+fmtutil-sys+ + verwendet, um automatisch generierte Konfigurations-Dateien abzulegen. +\item [TEXMFVAR] Dieser benutzerspezifische Baum wird von Hilfsprogrammen wie \verb+texconfig+, + \verb+updmap+ und \verb+fmtutil+ benutzt, um automatisch generierte + Konfigurations-Dateien abzulegen. +\item [TEXMFCACHE] Dieser Baum wird von \ConTeXt\ Mk\acro{IV} genutzt, um Cache-Daten abzulegen. +\end{description} + +Der Standard der Verzeichnisstruktur von \TL sieht wie folgt aus: +\begin{description} + \item[Systemweites Wurzelverzeichnis] kann \TL{}-Versionen aus mehreren Jahren beinhalten: + \begin{description} + \item[2011] Eine Vorversion von \TL. + \item[2012] Die aktuelle Version. + \begin{description} + \item [bin] ~ + \begin{description} + \item [i386-linux] \GNU/Linux binaries + \item [...] + \item [universal-darwin] \MacOSX\ binaries + \item [win32] Windows binaries + \end{description} + \item [texmf\ \ \ \ \ \ \ ] Hierauf verweist \envname{TEXMFMAIN}. + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var\ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config \ \ ] \envname{TEXMFSYSCONFIG} + \end{description} + \item [texmf-local] \envname{TEXMFLOCAL}, dieses Verzeichnis gilt für alle installierten \TL-Versionen + (aktuelle Version und Vorgängerversion), so dass hier durchgeführte lokale Änderungen über die + Jahre hinweg erhalten bleiben. + \end{description} + \item[Home-Verzeichnis des Benutzers] + (\texttt{\$HOME} oder \texttt{\%USERPROFILE\%}): + \begin{description} + \item[.texlive2011] Vom Nutzer privat erzeugte Dateien und Konfigurationsdaten + der Vorversion. + \item[.texlive2012] Vom Nutzer privat erzeugte Dateien und Konfigurationsdaten + für die aktuelle Version von \TL. + \begin{description} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{description} + \item[texmf] \envname{TEXMFHOME} Persönliche Makros, Fonts usw. des Nutzers. + \end{description} +\end{description} + + +\section{\TeX\ Erweiterungen}\label{sec:tex-extensions} + + +Unter den \TeX-Systemen der {\TL} befinden sich verschiedene +\TeX"=Erweiterungen: + +\begin{description} +\item [\eTeX]\label{text:etex} stellt bei 100\%-iger Kompatibilität zum + ursprünglichen {\TeX} einen kleinen, aber mächtigen Satz neuer Befehle + bereit (für Makroexpansion, Character-Scanning, erweiterte Debug-Möglichkeiten u.\,a.). + Zusätzlich gibt es noch die \TeXXeT-Erweiterungen für den bidirektionalen Textsatz, + wie er beispielsweise im Arabischen gebraucht wird. + Im voreingestellten Modus ist {\eTeX} 100\%-ig kompatibel mit dem ">normalen"< \TeX. + Die Dokumentation zu {\eTeX} finden Sie in der Datei + \OnCD{texmf-dist/doc/etex/base/etex\textunderscore man.pdf}. +\item [pdf\TeX] enthält die \eTeX\ Erweiterungen und erlaubt -- neben der Ausgabe in PDF-Dateien -- auch die Erstellung von DVI-Dateien. Für die meisten \TeX-Formate (wie \prog{etex}, \prog{latex}, \prog{pdflatex}) wird tatsächlich pdf\TeX\ aufgerufen. Die Webseite von pdf\TeX\ lautet + \url{http://www.pdftex.org}. + +Die Dokumentation zu pdf\TeX{} finden Sie unter \OnCD{texmf-dist/doc/pdftex/ manual/pdftex-a.pdf}. + +\item [Lua\TeX] befindet sich noch in Entwicklung und ist als zukünftiger Nachfolger von pdf\TeX\ vorgesehen, zu dem es weitgehend abwärtskompatibel bleiben soll. Weiterhin soll es auch Aleph\footnote{\url{http://en.wikipedia.org/wiki/Omega_(TeX)}} ersetzen, auch wenn es nicht kompatibel dazu sein wird. Durch den enthaltenen Lua-Interpreter (siehe \url{http://www.lua.org/}) +können satztechnische Herausforderungen, die in \TeX{} selbst nur mühsam lösbar sind, einfach und elegant gelöst werden. + +Wird es unter dem Namen \filename{texlua} aufgerufen, verhält es sich wie ein eigenständiger Lua-Interpreter -- und wird als solcher in vielen Skripten von \TL bereits benutzt. Für weitere Informationen siehe \url{http://www.luatex.org} und \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [XeTeX] bietet die Unterstützung von Unicode-Zeichensätzen und Open\-Type-Schriften, mehr Informationen sind unter \url{http://tug.org/xetex} verfügbar. + +\item [OMEGA] (Omega) ist ein \TeX-System, das intern mit Unicode (16-Bit"=Unicode"=Zeichen) arbeitet und damit das gleichzeitige Arbeiten mit nahezu allen auf der Welt eingesetzten Schriften + und deren Zeichenkodierungen erlaubt. Außerdem werden über dynamisch + geladene, sogenannte \enquote{OMEGA~Translation~Processes} Transformationen zur Verfügung gestellt, die beliebige Eingaben vor der Bearbeitung durch {\TeX} nach bestimmten Regeln + umformen. Omega ist nicht länger als eigenständiges Programm Teil von \TL; es wird nur noch Aleph mitgeliefert. + +\item [$\aleph$] (Aleph) vereinigt die OMEGA- und \eTeX-Erweiterungen. Eine Minimaldokumentation finden Sie in \OnCD{texmf-dist/doc/aleph/base}. +\end{description} + +\section{Weitere Programme von \TL} + +\TL enthält eine ganze Reihe unterstützender Programme wie + + +\begin{description} +\item[\cmdname{bibtex}, \cmdname{bibtex8}] zum Verwalten von Bibliographien +\item[\cmdname{biber}], zum Verwalten von Bibliographien, soll \cmdname{bibtex} ablösen +\item[\cmdname{dviconcat}] Zusammenfügen von DVI-Dateien +\item[\cmdname{dvips}] Konversion von DVI in {\PS} +\item[\cmdname{dviselect}] Ausschneiden von Seiten aus DVI-Dateien +\item[\cmdname{dvipdfmx}] DVI-nach-PDF-Konverter (erzeugt auch \acro{CJK}-konformes PDF aus + DVI-Dateien mit OMEGA Erweiterungen) +\item[\cmdname{dvilj}] Druckertreiber für die HP-LaserJet"=Familie +\item[\cmdname{makeindex}, \cmdname{xindy}] Erzeugen eines Stichwortverzeichnisses +\item[\cmdname{mpost}] \MF-ähnliches Grafikprogramm +\item[\cmdname{psnup}, \cmdname{psselect}] \PS-Tools +\item[\cmdname{pdfjam}, \cmdname{pdfjoin}] \acro{PDF}-Tools +\item[\cmdname{tex4ht}] \TeX-nach-\HTML-Konvertierung +\item[\cmdname{texexec, texmfstart}] \ConTeXt- und PDF"=Prozessor +\item[\cmdname{xdvi}] DVI-Bildschirmausgabe im X-Window-System +\end{description} + +\section{Fonts in \TL}\label{sec:tl-fonts} + +\TL enthält eine Vielzahl qualitativ hochwertiger Vektorschriften. Weitere Informationen hierzu finden sich unter \url{http://tug.org/fonts} und auf dieser DVD unter \OnCD{texmf-dist/doc/fonts/free-math-font-survey/survey}. + +\chapter{Installation von \TL}\label{sec:install} + +\section{Das Installationsprogramm}\label{sec:inst-start} + +Zur Installation von \TL benötigen Sie die \TK-\DVD oder den \enquote{\TL{} Net Installer} aus dem Internet. + +\begin{description} +\item [Net Installer:] Verfügbar von \CTAN, unter +\dirname{systems/texlive/tlnet}; die URL +\url{http://mirror.ctan.org/systems/texlive/tlnet} leitet Sie automatisch +an einen nahe gelegenen Server des \CTAN-Netzwerks weiter. +Sie können entweder die Datei \filename{install-tl.zip} herunter laden, +die sowohl für Unix als auch Windows gedacht ist, +oder die deutlich kleinere Datei \filename{install-unx.tar.gz}, +die aber nur den Installer für Unix enthält. +Nach dem Auspacken finden Sie die Dateien \filename{install-tl} (Unix) +bzw.\ \filename{install-tl.bat} (Windows) im Verzeichnis \dirname{install-tl}. + +\item [\TeX{} Collection \DVD:] Hier finden Sie die Dateien \filename{install-tl} (Unix) +bzw.\ unter Windows \filename{install-tl.bat} im Verzeichnis \dirname{texlive} +der \DVD. Unter Windows startet beim Einlegen der DVD im Allgemeinen automatisch +ein Programm, bei dem Sie unter anderem das Installationsprogramm von \TL auswählen können. Die \DVD\ erhalten Sie als Mitglied eines \TeX-Vereins (wie \url{http://www.dante.de} für den deutschsprachigen Raum, von der Fachbuchhandlung Lehmanns (\url{http://www.lob.de}) oder international von der \TeX{} Users Group (\url{http://tug.org/store}). + +Alternativ können Sie das \ISO-Image der \TL aus dem Internet laden. Nach der Installation von der DVD sollten Sie die Internet-Aktualisierung aktivieren, für Details siehe Abschnitt \ref{sec:dvd-install-net-updates}. +\end{description} + +Egal welche Quelle verwendet wird, es wird der gleiche Installer genutzt. Der hauptsächliche Unterschied ist, dass man bei der Verwendung des Net-Installers die neuesten verfügbaren Pakete direkt aus dem Internet erhält. Bei der Verwendung von \DVD\ and \ISO\ Images erhält man den Stand des letzten Major Release. Zwischen zwei Major Releases gibt es keine Aktualisierung der \DVD\ oder \ISO\ Images. + +Die folgenden Abschnitte beschreiben die Installation für die einzelnen Betriebssysteme. + +\section{Unix} + +Im Folgenden werden die Eingaben des Benutzers nach dem Kommando-Prompt \samp{>} \Ucom{fett} dargestellt. + +Das Skript \filename{install-tl} ist ein Perl-Skript. Am Einfachsten starten +Sie es auf einem Unix-System in der Kommandozeile mit +\begin{alltt} +> \Ucom{cd /pfad/zum/installer} +> \Ucom{perl install-tl} +\end{alltt} + +(Sie können auch direkt \Ucom{perl /pfad/zum/installer/install-tl} eingeben. Wenn Ihre \DVD so gemountet ist, dass als ausführbar gekennzeichnete Skripte direkt gestartet werden können, können Sie im Verzeichnis des Installers auch direkt \Ucom{./install-tl} eingeben.) Eventuell müssen Sie Ihr Terminalfenster +größer machen, damit Sie den kompletten Text sehen (Abb.~\ref{fig:text-main}) + +Zum Installieren mit Hilfe einer Benutzeroberfläche (Abb.~\ref{fig:gui-main}) verwenden Sie + +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +Hierfür muss das \dirname{Perl/TK}-Modul mit \acro{XFT}-Unterstützung (diese ist bei \GNU/Linux in der Regel mit einkompiliert) auf Ihrem System installiert sein. + +Alle Optionen des Installationsprogramms werden mit +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} +angezeigt. + +\textbf{Wichtiger Hinweis zu den Zugriffsrechten unter Unix:} Ihre aktuelle Einstellung von \code{umask} wird bei der Installation von \TL berücksichtigt. Daher müssen Sie darauf achten, dass Sie hierfür einen sinnvollen Wert einstellen (z.\,B. \code{umask002}), wenn Ihre Installation auch durch andere Nutzer als Sie benutzt werden soll. Falls Sie unsicher sind, was dies bedeutet, schauen Sie bitte in die Anleitung zu \code{umask} (indem Sie das Kommando \code{man umask} eingeben oder im Internet danach suchen). + +\textbf{Besonderheit bei Cygwin:} Im Gegensatz zu anderen Unix-basierten +Systemen fehlen bei Cygwin im Allgemeinen einige Programme, die vom Installationsprogramm von \TL vorausgesetzt werden. Bitte lesen Sie den Abschnitt \ref{sec:cygwin}. + + +\section{MacOSX} + +Wie in Abschnitt~\ref{sec:tl-coll-dists} bereits erwähnt wurde, existiert mit Mac\TeX{} (\url{http://tug.org/mactex}) ein eigenes \TeX-System für \MacOSX. Dieses enthält ein komplettes \TL mit einem Installationsprogramm, das in Funktionalität und Aussehen der üblichen Installation von Software unter \MacOSX\ entspricht. Weiterhin sind einige Zusatzprogramme enthalten. + +Wenn Sie die \TK-\DVD besitzen, empfiehlt es sich daher, Mac\TeX{} zu verwenden. + +\section{Windows} + +Wenn Sie den \emph{Net Installer} verwenden, oder auf Ihrem System beim Einlegen der \DVD das Installationsprogramm nicht automatisch gestartet wurde, können Sie die Installation von \TL im Windows-Explorer durch einen Doppelklick auf \filename{install-tl.bat} (auf der \DVD befindet sich diese Datei im Verzeichnis \texttt{texlive}) starten. + +Falls Sie bei der Installation mehr Optionen benötigen (z.\,B. die Auswahl +spezifischer Paketgruppen), starten Sie stattdessen \filename{install-tl-advanced.bat}. + +Alternativ können Sie eine cmd-Eingabeaufforderung verwenden, dort in das Verzeichnis wechseln, in dem sich das Installationsprogramm befindet und + +\begin{alltt} +D:\bs{}texlive\bs{}> \Ucom{install-tl} +\end{alltt} + +eingeben -- \texttt{...>} kennzeichnet hierbei den Eingabeprompt. Ihre Eingabe ist \Ucom{\texttt{bold/fett}} dargestellt. + +Alternativ können Sie die Installation auch aus einem beliebigen Verzeichnis heraus starten: + +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} + +wobei wir hier annehmen, dass sich ihre \TK-\DVD im Laufwerk D: befindet. +Abb.~\ref{fig:wizard-w32} zeigt das grafische Installationsprogramm im +">wizard mode"<, das unter Windows standardmäßig verwendet wird. + +Zur Installation im Textmodus verwenden Sie: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +\noindent Alle vorhandenen Optionen, die beim Starten des Installationsprogramms verwendet werden können, werden +wie folgt angezeigt: + +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2012 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + platforms: 1 out of 19 + + installation scheme (scheme-full) + 84 collections out of 85, disk space required: 3091 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + options: + [ ] use letter size instead of A4 by default + ... + + set up for portable installation + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{Hauptmenü des Installationsprogramms (\GNU/Linux).}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\includegraphics[width={\linewidth}]{install-lnx-main} +\caption{Grafische Installation im Expertenmodus (\GNU/Linux).}\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\includegraphics[width={\linewidth}]{wizard-w32} +\caption{Wizard mode (Windows)}\label{fig:wizard-w32} +\end{figure} + +\section{Cygwin}\label{sec:cygwin} + +Das Installationsskript von \TL\ unterstützt nur Version~1.7 von Cygwin. +Bevor Sie mit der Installation von \TL\ beginnen, verwenden Sie das +Installationsprogramm von Cygwin (\filename{setup.exe}) um die Pakete +\filename{perl} und \filename{wget} gegebenenfalls nachzuinstallieren. +Wir empfehlen weiterhin die Installation folgender Cygwin-Pakete: + +\begin{description} +\item[fontconfig] für \XeTeX +\item[ghostscript] wird von verschiedenen Teilen von \TL\ benötigt +\item[libXaw7] für \code{xdvi} +\item[ncurses] damit der 'clear'-Befehl im Installer funktioniert +\end{description} + +\section{Installation im Textmodus} + +Abb.~\ref{fig:text-main} zeigt den Eingangsbildschirm des Installationsprogramms im Textmodus (Standard unter Unix). Dieser ist ein reiner Textmodus, was zur Folge hatt dass es keine Unterstützung zum Wandern durch die einzelnen Menüpunkte mit den Cursor-Tasten gibt. Alle Befehle wie zum Beispiel die Auswahl von Menüpunkten werden durch Eingabe der entsprechenden Befehle bzw.\ Menükürzel über die Tastatur eingegeben und dann durch Drücken von \emph{Enter} übernommen. Hierbei wird zwischen Groß- und Kleinschreibung unterschieden! + +Die Installation im Textmodus ist so spartanisch, weil dieser Modus überall funktionieren soll, selbst mit einer Basisinstallation von Perl (für Windows enthält\TL\ eine Minimalversion von Perl). + +\section{Installation mit Benutzeroberfläche im Expertenmodus} + +Abb.~\ref{fig:gui-main} zeigt die grafische Installation im Expertenmodus +unter GNU/Linux. Funktionell unterscheided sich dieser nicht wesentlich +vom Textmodus, außer dass natürlich mit +Menüs, Auswahlboxen etc. gearbeitet wird. + +Dieser Modus muss explizit mit +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} +gestartet werden. + + +\section{Installation mit einfacher Benutzeroberfläche (wizard mode)} + +Unter Windows wird automatisch diese einfache Form der Installation verwendet, +der so genannte ">wizard mode"< (Abb.~\ref{fig:wizard-w32}). Dieser zeichnet sich dadurch aus, dass er \TL\ komplett installiert und dabei vom Benutzer nur wenige Angaben gemacht werden müssen. Falls Sie eine individuell angepasste Version von \TL\ benötigen, verwenden Sie daher bitte einen der beiden anderen Installationsmodi. + +Um die Installation explizit im ">wizard mode"< zu starten (insbesondere unter +Unix), verwenden Sie: +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + + +\section{Benutzung des Installationsprogramms}\label{sec:runinstall} + +Das Installationsprogramm sollte (wenn Sie die vorherigen Abschnitte zum Aufbau von \TL und der verwendeten Verzeichnisstruktur gelesen haben) weitgehend selbsterklärend sein. Trotzdem wollen wir auf einige Punkte näher eingehen. + + +\section{Auswahl der Binaries (nur für Unix)}\label{sec:binary} + + +\begin{figure}[tb] +\begin{boxedverbatim} +Available platforms: +=============================================================================== + a [ ] alpha-linux DEC Alpha with GNU/Linux + b [ ] amd64-freebsd x86_64 with FreeBSD + c [ ] amd64-kfreebsd x86_64 with GNU/kFreeBSD + d [ ] armel-linux ARM with GNU/Linux + e [ ] i386-cygwin Intel x86 with Cygwin + f [ ] i386-freebsd Intel x86 with FreeBSD + g [ ] i386-kfreebsd Intel x86 with GNU/kFreeBSD + h [X] i386-linux Intel x86 with GNU/Linux + i [ ] i386-solaris Intel x86 with Solaris + j [ ] mips-irix SGI IRIX + k [ ] mipsel-linux mipsel with Linux + l [ ] powerpc-aix PowerPC with AIX + m [ ] powerpc-linux PowerPC 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 +\end{boxedverbatim} +\caption{Auswahlmenü für Binaries}\label{fig:bin-text} +\end{figure} + +\noindent Abb.~\ref{fig:bin-text} zeigt das Auswahlmenü für die Binaries der einzelnen Betriebssysteme im Textmodus. Im Allgemeinen sollte hier schon das richtige System ausgewählt sein. Sie können aber problemlos Binaries +für verschiedene Systeme parallel auswählen. Dies bietet sich an, wenn Ihre Installation auf verschiedenen Rechnern in einem heterogenen Netzwerk sichtbar ist und von dort aus benutzt werden soll. + +\section{Auswahl der zu installierenden Komponenten}\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Select a scheme: +=============================================================================== + a [X] full scheme (everything) + b [ ] medium scheme (small + more packages and languages) + c [ ] small scheme (basic + xetex, metapost, a few languages) + d [ ] basic scheme (plain and latex) + e [ ] minimal scheme (plain only) + f [ ] ConTeXt scheme + g [ ] GUST TeX Live scheme + h [ ] teTeX scheme (more than medium, but nowhere near full) + i [ ] XML scheme + j [ ] custom selection of collections +\end{boxedverbatim} +\caption{Menü zur Auswahl des Schemas}\label{fig:scheme-text} +\end{figure} + + +\noindent Abb.~\ref{fig:scheme-text} zeigt das Auswahlmenü für ein grundsätzliches Installationsschema der +\TL. Durch die Auswahl eines Schemas werden automatisch die Komponenten zur Installation ausgewählt, die +für das gewünschte Schema notwendig bzw.\ sinnvoll sind. Mit einer vollständigen Installation von \TL +(\emph{full scheme}) sind Sie auf der sicheren Seite, da hier einfach alles installiert wird. Sie können +aber auch eines der abgespeckten Schemas wie \emph{basic} (für ein sehr schlankes System), \emph{medium} +oder \emph{minimal} (dies empfiehlt sich aber nur für Testsysteme und weniger zum ernsthaften Arbeiten) +auswählen. Weiter stehen einige Schemas für spezielle Zwecke oder Sprachen zur Verfügung. + +\begin{figure}[tb] +\includegraphics[width=.7\linewidth]{stdcoll} +\caption{Menü zur Aus- oder Abwahl von Collections.}\label{fig:collections-gui} +\end{figure} + +Wenn Sie das Schema ausgewählt haben, können Sie dieses in den Menüpunkten \emph{standard collections} und +\emph{language collections} (s.\,Abb.~\ref{fig:collections-gui}, diesmal zur Abwechslung im GUI-Modus) +individuell nach Ihren Wünschen anpassen. + +Während das Schema nur den grundlegenden Funktionsumfang vorgibt, ist die Auswahl von Komponenten auf der +Ebene der \emph{Collections} viel feiner. Eine Collection besteht dabei aus mehreren Paketen zu einem Thema, +wobei jedes der Pakete aus bestimmten Makrodateien, Fontdateien usw. bestehen kann. + +Noch mehr Kontrolle über die Komponenten Ihres Systems haben Sie nach der Installation mit dem \TeX\ Live Manager (\prog{tlmgr}), das in Abschnitt~\ref{sec:tlmgr} beschrieben wird. Hier können Sie gezielt einzelne +Pakete installieren oder entfernen. + +\section{Verzeichnisse}\label{sec:directories} + + +Die Verzeichnisstruktur von \TL wurde bereits im Abschnitt~\ref{sec:texmftrees} auf S.~\pageref{sec:texmftrees} +beschrieben. Als Wurzelverzeichnis für \TL (\dirname{TEXDIR}) wird unter Windows +(|%SystemDrive%\texlive\2012|) und unter Unix (\dirname{/usr/local/texlive/2012}) angenommen. + +Prinzipiell können Sie diesen Pfad problemlos ändern, z.\,B. wenn Sie \TL als normaler Nutzer installieren +wollen und kein Schreibrecht in dem oben angegebenen Verzeichnis besitzen. + +Auf Wunsch können Sie \TL also auch in Ihrem Home-Verzeichnis installieren, wenn Sie sowieso der einzige +Verwender von \TL sind. Für Ihr Home-Verzeichnis können Sie den Pfad ">|~|"< verwenden und so +beispielsweise \TL nach |~/texlive/2012| installieren. + +Wir empfehlen Ihnen, die Jahreszahl im Verzeichnisnamen beizubehalten. So können Sie von Jahr zu Jahr +einfach die neue Version testen, ohne die alte zu entsorgen. Bei Bedarf können Sie einen symbolischen +Link (z.B. \dirname{/usr/local/texlive-cur}) verwenden, der jeweils auf das Verzeichnis der aktuellen +Version von \TL verweist. + +Wenn Sie die Einstellung \dirname{TEXDIR} im Installationsprogramm ändern, werden die Werte für +\dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} und +\dirname{TEXMFSYSCONFIG} automatisch angepasst. + +Das als \dirname{TEXMFHOME} bezeichnete Verzeichnis ist der Ort, in dem persönliche Makrodateien, +Schriften o.\,ä. abgelegt werden können. Vorgabewert ist |~/texmf|. Im Gegensatz zu \dirname{TEXDIR} +wird |~| hier nicht direkt zum Pfad des Home-Verzeichnisses aufgelöst, sondern unverändert in die +Konfigurationsdateien von \TL übernommen und erst zur Laufzeit aufgelöst. Somit kann jeder Nutzer +des Systems seinen komplett eigenen Pfad haben, der von \TL verwendet wird, und so nach Wunsch auch +eigene Konfigurationsänderungen durchführen. +Zur Laufzeit wird |~| unter Unix durch \dirname{\$HOME} und unter Windows durch \verb|%USERPROFILE%| ersetzt. + +Die Variable \dirname{TEXMFVAR} verweist auf das Verzeichnis mit benutzerspezifisch +erzeugten Konfigurationsdateien, z.\,B. den Konfigurations-Cache von \ConTeXt\ Mk\acro{IV}. + + + +\section{Optionen}\label{sec:options} + + +\begin{figure}[tbh] +\begin{boxedverbatim} +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: + after installation, get package updates from CTAN: [X] +\end{boxedverbatim} +\caption{Auswahlmenü für weitere Optionen (Unix).}\label{fig:options-text} +\end{figure} + +\noindent Abb.~\ref{fig:options-text} zeigt das Menü, in dem weitere Einstellungen für die Installation von +\TL möglich sind. Zur Erläuterung: +\begin{description} +\item[use letter size instead of A4 by default:] Verwendung von Letter anstatt DIN\,A4 als +Standard\-papier\-größe. Natürlich können Sie später unabhängig davon für einzelne Dokumente eine +beliebige Papiergröße wählen. + +\item[execution of restricted list of programs:] Ab \TL\ 2011 können bei einem +\TeX-Lauf standardmäßig einige externe Programme aufgerufen werden. Die (kurze) +Liste der erlaubten Programme wird in der Datei \filename{texmf.cnf} definiert. +Für weitere Informationen siehe Abschnitt~\ref{sec:2011news} über Neuerungen in +\TL\ 2011. + +\item[create format files:] Auch wenn das Erzeugen von Formatdateien für Makropakete, die Sie gar + nicht benötigen, Zeit und Platz kostet, empfehlen wir trotzdem, diese Option ausgewählt zu belassen. + Falls Sie diese Option abwählen, werden Formatdateien jeweils bei Bedarf erzeugt, und dann + im persönlichen \dirname{TEXMFVAR}-Baum des aktuellen Benutzers abgelegt. Dort liegende Formate werden allerdings + nicht automatisch neu generiert, wenn z.\,B. Programme oder Silbentrennmuster aktualisiert werden, so dass + im Extremfall nach einem Update Inkompatibilitäten entstehen können. + +\item[install font/macro \ldots\ tree:] Mit dieser Option können Sie + verhindern, dass die Dokumentation und die Quelldateien der Pakete + installiert werden. Wir raten aber, die Vorgabe zu übernehmen, also + die Dokumentation und Quelldateien zu installieren. + +\item[create symlinks in standard directories] (nur unter Unix): + Mit dieser Option können Sie symbolische Links für Programme und Dokumentation in den Standard\-verzeichnissen + Ihres Systems anlegen, so dass Sie Ihre Umgebungsvariablen \envname{PATH}, \envname{MANPATH} und + \envname{INFOPATH} nicht anpassen müssen. Natürlich benötigen Sie für diese Option Schreibrechte in + den entsprechenden Verzeichnissen. Hinweis: Diese Option ist nicht dazu gedacht, ein vorhandenes \TeX-System, das + z.\,B. als Teil Ihrer Linux-Distribution installiert wurde, zu überschreiben! Sie dient vielmehr dazu, + dass Links in Verzeichnissen angelegt werden, wo die Nutzer sie erwarten -- beispielsweise in + \dirname{/usr/local/bin} --, aber sich dort noch keine \TeX-Programme befinden. + +\item[after installation \dots{} CTAN:] Diese Option ist bei der Installation von DVD standardmäßig gesetzt. Sie sorgt dafür, dass nach der Installation Paket-Ak\-tuali\-sie\-rungen aus dem Internet geladen werden. Es gibt nur einen sinnvollen Grund, diese Option nicht zu aktivieren: wenn nur ein Untermenge von \TL\ installiert wurde und Pakete nach der Installation manuell hinzugefügt werden sollen. + +\end{description} + +\noindent Wenn Sie alle gewünschten Einstellungen für die Installation vorgenommen haben, können Sie im Hauptmenü nun ">I"< eintippen, um diese zu starten. Lesen Sie dann anschließend Abschnitt~\ref{sec:postinstall} für +eventuell notwendige Arbeiten zum Abschluss der Installation. + +\section{Kommandozeilenoptionen für die Installation}\label{sec:cmdline} + + +Nach Eingabe von +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +erhalten Sie eine Liste der vorhanden Kommando\-zeilen\-optionen. Sie können diese entweder mit |-| oder |--| +verwenden. Die wichtigsten sind: + +\begin{description} +\item[-gui] Installation im grafischen Modus. Hierfür muss unter Unix Perl/Tk (mit \acro{XFT}-Unterstützung) installiert sein + (\url{http://tug.org/texlive/distro.html#perltk}). Falls dies nicht der Fall ist, wird die Installation + im Textmodus durchgeführt. + +\item[-no-gui] Installation im Textmodus. Da dies unter Unix Standard ist, wirkt sich diese Option nur + unter Windows aus. Da die Installation zum Benutzen von \TL direkt von \DVD im grafischen Modus nicht + verfügbar ist, brauchen Sie in diesem Fall unbedingt den Textmodus. + +\item[-lang {\sl LL}] Sprache des Installationsprogramms als Sprach-Code in zwei Buchstaben (\textsl{LL}). + Derzeit werden unterstützt. Das Installationsprogramm versucht, die gewünschte Sprache anhand des + Systems herauszufinden. Falls dies scheitert oder die betreffende Sprache nicht verfügbar ist, wird als + Fallback-Sprache Englisch genutzt. + +\item[-in-place] Sollten Sie schon ein rsync, svn, oder eine andere Kopie von + \TL{} haben (siehe \url{http://tug.org/texlive/acquire-mirror.html}), dann wird diese Option genau das nutzen, was Sie schon haben und nur die notwendigen post-install Operationen durchführen. Eine Warnung: Die Datei \filename{tlpkg/texlive.tlpdb} kann dadurch überschrieben werden; machen Sie vorher gegebenenfalls eine Sicherheitskopie. Die Entfernung von Paketen muss auch manuell vorgenommen werden. + +Diese Option kann nicht über die Installer-Schnittstelle gesetzt werden. + +\item[-portable] Die Option \code{-portable} (\code{V} im Text-Installer oder die entsprechende Option im grafischen Installer); dient der Installation auf einem USB-Stick oder einer DVD-R. Siehe Abschnitt \ref{sec:portable-tl} für Informationen über die portable Installation von \TL. + +\item[-profile {\sl profile}] Das Installationsprogramm schreibt die ausgewählten Optionen in eine Datei + \filename{texlive.profile}. Mit dieser Option können + Sie eine bereits vorhandene Datei bei der Installation weiter verwenden, z.\,B. wenn Sie äquivalente + Installationen auf mehreren Rechnern realisieren wollen, ohne alle Auswahlschritte der Installation immer + wieder neu durchführen zu müssen. + +\item [-repository {\sl url/path}] zur Auswahl einer Installationsquelle, + für weitere Erläuterung siehe den nächsten Abschnitt. +\end{description} + + +\section{Die Option repository}\label{sec:location} + + +Als Standardquelle für die Installation wird ein \CTAN-Knoten verwendet, der automatisch von \url{http://mirror.ctan.org} ermittelt wird. + +Falls Sie eine andere Installationsquelle verwenden wollen, geben Sie eine neue Quelle an, die entweder mit \texttt{ftp:}, \texttt{http:} oder \texttt{file:/} beginnt oder ein Verzeichnispfad auf Ihrem System ist. +Falls Sie \texttt{http:} oder \texttt{ftp:} verwenden, werden ">\texttt{/}"<-Zeichen am Ende ignoriert. + +Sie können also z.\,B. einen bestimmten \CTAN-Knoten auswählen, so etwa +\url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +wobei Sie natürlich statt |ctan.example.org| einen echten Servernamen +verwenden und wahrscheinlich auch den Rest der URL anpassen müssen. +Eine Auflistung von \CTAN-Servern finden Sie unter \url{http://ctan.org/mirrors}. + +Falls Sie ein lokales Repository verwenden (also entweder direkt einen +Verzeichnispfad oder eine mit \texttt{file:/}-URL angeben), so werden +bevorzugt Archivdateien in einem Unterverzeichnis \dirname{archive} des +Repository verwendet, selbst wenn ausgepackte Dateien vorhanden sind. + +\section{Aufgaben im Anschluss an die Installation}\label{sec:postinstall} + +Je nach System kann es notwendig sein, dass im Anschluss an die Installation noch einige Kleinigkeiten erledigt werden müssen. + +\subsection{Windows} + +Benutzer von Windows sind hier in der glücklichen Position, dass das Installationsprogramm alles komplett erledigt haben sollte. + +\subsection{Unix, falls symbolische Links angelegt wurden} + +Wenn Sie bei der Installation angegeben haben, dass und wo symbolische Links angelegt werden sollten (s.\,Abschnitt~\ref{sec:options}), dann sollten hier auch keine Nacharbeiten mehr notwendig sein. + +\subsection{Umgebungsvariablen für Unix} +\label{sec:env} + +Das Verzeichnis mit den ausführbaren Programmen von \TL muss sich im Suchpfad des Systems befinden. +Jedes unterstützte System besitzt ein eigenes Verzeichnis unterhalb von \dirname{TEXDIR/bin}, deren +Namen Sie in Abb.~\ref{fig:bin-text} finden. + +Weiterhin können Sie die Verzeichnisse mit den Manual-Pages und Info-Dateien zu den entsprechenden +Suchpfaden für Dokumentation hinzufügen. + +Für Systeme mit einer Bourne-kompatiblen Shell wie \prog{bash} ist hier am Beispiel von GNU/Linux +aufgeführt, wie die Befehle zum Setzen der Umgebungsvariablen (z.\,B. in \filename{\$HOME/.profile}) +aussehen könnten: + +\begin{verbatim} +export PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH +export MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH +export INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{verbatim} + +\noindent Für \prog{csh} oder \prog{tcsh} erfolgt die Konfiguration in der Regel in der Datei~\filename{\$HOME/.cshrc} +und könnte so aussehen: + +\begin{verbatim} +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{verbatim} + +\subsection{Systemweites Setzen von Umgebungsvariablen} +\label{sec:envglobal} + + +Wenn Sie als Administrator die Umgebungsvariablen global für das gesamte System setzen wollen, +gehen wir davon aus, dass Sie sich mit der grundlegenden Systemadministration auskennen. + +Daher hier nur zwei Hinweise: + +\begin{enumerate} +\item Schauen Sie nach einer Datei +\filename{/etc/manpath.config}. Falls diese vorhanden ist, sollte es reichen, folgende Zeilen +hinzu zu fügen: + +\begin{verbatim} +MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man +\end{verbatim} + +\item Prüfen Sie, ob es auf Ihrem System eine Datei \filename{/etc/environment} gibt, in der die +systemweiten Umgebungsvariablen definiert werden. + +Zusätzlich wird ein symbolischer Link \code{man} im binary-Verzeichnis unter +Unix angelegt, der auf \dirname{texmf/doc/man} berweist. Einige Versionen von \code{man}, so z.\,B. unter \MacOSX, +finden so verlinkte Man-Pages automatisch, so dass hier keine spezielle +Konfiguration für die Man-Pages mehr erforderlich ist. + +\end{enumerate} + +\subsection{Internet-Updates nach der Installation von DVD} +\label{sec:dvd-install-net-updates} + + +Wenn Sie von DVD installiert haben, können Sie mittels des folgenden Befehls die Aktualisierung über das Internet aktivieren. Zuerst müssen Sie, wie im letzten Abschnitt beschrieben, den Suchpfad angepasst haben: + +\begin{alltt} +> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +\noindent Dadurch nutzt \cmdname{tlmgr} beim nächsten Update einen \CTAN\ Mirror. Sollte es Probleme bei der automatischen Wahl eines Mirror-Servers geben, kann ein bestimmter \CTAN\ Server von der unter \url{http://ctan.org/mirrors} verfügbaren Liste ausgewählt werden. Benutzen Sie diesen Pfad dann mit dem oben genannten Befehl. + +\subsection{Font configuration für xe\TeX}\label{sec:font-conf-xetex} + + +\XeTeX\ und Lua\TeX\ können nicht nur die Schriften in den \TeX\ Bäumen nutzen, sondern auch die auf dem System vorhandenen Fonts. Die Methoden, wie sie dies tun, ähneln sich, sind aber verschieden. + +Unter Windows sind die auf dem System vorhandenen Schriften automatisch nutzbar. Auf einem Unix/Linux System sind Anpassungen notwendig, damit die Schriften per Systemname und nicht nur Dateiname gefunden werden können. + +Hierfür wird bei der Installation des \filename{xetex} Pakets die Datei \filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf} +erzeugt. + +Um die mitgelieferten \TL-Schriften systemweit verwenden zu können, +gehen Sie bitte folgendermaßen vor: + +\begin{enumerate} +\item Kopieren Sie als root-User \filename{texlive-fontconfig.conf} nach +\dirname{/etc/fonts/conf.d/09-texlive.conf}. +\item Führen Sie \Ucom{fc-cache -fsv} aus. +\end{enumerate} + +\noindent Falls Ihnen als normaler Nutzer die entsprechenden Privilegien für die +obigen Schritte fehlen, können Sie die \TL-Schriften für sich selbst +als \XeTeX-Nutzer verwendbar machen: +\begin{enumerate} +\item Kopieren Sie \filename{texlive-fontconfig.conf} in das Unterverzeichnis + \filename{~/.fonts.conf}, wobei \filename{~} Ihr Home-Verzeichnis ist. +\item Führen Sie \Ucom{fc-cache -fv} aus. +\end{enumerate} + +Führen Sie \code{fc-list} aus, um eine Liste der Systemschriften mit hilfreichen Informationen zu erhalten. + +\subsection{Con\TeX t Mark IV} +\label{sec:context-mkiv} + +Sowohl das \enquote{alte} \ConTeXt{} (Mark \acro{II}) als auch das `neue' \ConTeXt{} (Mark \acro{IV}) sollten problemlos nach der \TL{} Installation funktionieren und brauchen keine besondere Aufmerksamkeit, sofern \verb+tlmgr+ für den Update-Prozess genutzt wird. + +Da \ConTeXt{} Mk\acro{IV} jedoch nicht die kpathsea-Bibliothek nutzt, ist +ein wenig manuelle Nacharbeit notwendig, wenn neue Dateien manuell installiert werden (also ohne die Nutzung von +\verb+tlmgr+). + +Nach einer jeden solchen Installation muss jeder Nutzer das das folgende Kommando ausführen, um den \ConTeXt{} Cache zu aktualisieren: + +\begin{verbatim} +context --generate +\end{verbatim} + +Die erzeugten Dateien werden in \code{TEXMFCACHE} gespeichert, dessen Standardwert \verb+TEXMSYSVAR;TEXMFVAR+ ist. + +\ConTeXt\ Mk\acro{IV} liest aus allen Pfaden, die in \verb+TEXMFCACHE+ aufgeführt sind und schreibt in die erste Pfadangabe, bei der Schreibrechte existieren. Im Fall identischer Cache-Daten hat der letzte gefundene Pfad Vorrang vor allen anderen Pfaden. + +Für weitere Informationen siehe +\url{http://wiki.contextgarden.net/Running_Mark_IV} und +\url{http://wiki.contextgarden.net/TeX_Live_2012}. + +\subsection{Integrieren lokaler bzw. nutzer-spezifischer Makros} +\label{sec:local-personal-macros} + +Wie bereits in Abschnitt~\ref{sec:texmftrees} erwähnt, ist der Verzeichnisbaum \dirname{TEXMFLOCAL} (im Normalfall \dirname{/usr/local/texlive/texmf-local} oder \verb|%SystemDrive%\texlive\texmf-local|) für lokale Ergänzungen wie Makros und Schriften gedacht, die anschließend allen Benutzern des Systems zur Verfügung stehen. Weiterhin können Benutzer den Verzeichnisbaum \dirname{TEXMFHOME} (im Normalfall \dirname{\$HOME/texmf} oder \verb|%USERPROFILE%\texmf|) für persönliche Ergänzungen verwenden, ohne dass andere Benutzer davon beeinflusst werden. + +Diese Verzeichnisse sollen über verschiedene Versionen von \TL hinweg identisch sein, so dass ein Update von \TL auf eine neue Version einfach möglich ist, ohne dass Sie Ihre lokalen Ergänzungen verlieren. Wir empfehlen Ihnen daher, von der vorgegebenen Verzeichnisstruktur nicht abzuweichen. + +Für beide oben genannte Verzeichnisbäume erwartet \TL eine Verzeichnisstruktur innerhalb des Baums, die dem \emph{\TeX{} Directory Standard} entspricht, wie er in \url{http://tug.org/tds} bzw. \filename{texmf/web2c/texmf.cnf} definiert ist. +So gehören Dokumentklassen für \LaTeX{} zum Beispiel in ein Verzeichnis +unterhalb von \dirname{TEXMFLOCAL/tex/latex} oder \dirname{TEXMFHOME/tex/latex}. + +Der Verzeichnisbaum \dirname{TEXMFLOCAL} wird zur Laufzeit nicht direkt nach Dateien durchsucht. Stattdessen wird eine Liste von Dateinamen verwendet, sich sich in einer Datei mit dem Namen~\filename{ls-R} befindet. Denken Sie also daran, nach Änderungen in diesem Baum diese Dateiliste zu aktualisieren. Dies tun Sie +entweder mit dem Befehl \cmdname{mktexlsr} oder über die Schaltfläche \emph{Reinit file database} in dem Konfigurationsreiter des \TeX\ Live Managers (GUI-Modus). + +\subsection{Integrieren von Schriften} + +Die Installation von Schriften, die nicht von \TL sind, ist eine recht komplexe Angelegenheit. Sie sollten sich bereits gut mit dem System auskennen, bevor Sie diese Aufgabe beginnen. Schauen Sie vielleicht vorher in Abschnitt~\ref{sec:tl-fonts} nach, welche Schriften bereits bei \TL mitgeliefert werden. + +Eine Alternative besteht im Benutzen von \XeTeX\ oder Lua\TeX\ (s.\,Abschnitt~\ref{sec:tex-extensions}), bei dem direkt alle vom Betriebssystem installierten Schriften verwendet werden können, ohne dass die Installation +einer \TeX-Unterstützung notwendig ist. + +Falls Sie wirklich weitere Schriften benötigen, finden Sie unter \url{http://tug.org/fonts/fontinstall.html} eine Beschreibung zur +Installation weiterer Schriften. + +\section{Testen der Installation} +\label{sec:test-install} + + +Nach der Installation von \TL wollen Sie es natürlich benutzen, um möglichst schöne Dokumente zu setzen. + +Dieser Abschnitt beschreibt, wie Sie prüfen können, ob Ihr \TL-System funktioniert. +Die folgenden Beispiele sind für Unix, sollten unter Windows und \MacOSX aber sehr ähnlich sein. Der Unterschied kann sein, dass Sie dort eventuell eine grafische Benutzeroberfläche verwenden. + +\begin{enumerate} + +\item Prüfen Sie, ob Sie das Programm \cmdname{tex} ausführen können: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live 2012) +kpathsea version 5.0.0 +Copyright 2011 D.E. Knuth. +... +\end{alltt} + +Erhalten Sie als Resultat statt der Versionsnummer die Meldung, dass der Befehl nicht gefunden wurde, +so haben Sie wahrscheinlich vergessen, das Verzeichnis mit den ausführbaren Programmen +in Ihren \envname{PATH} aufzunehmen, s.\,Abschnitt~\ref{sec:env} auf S.\,\pageref{sec:env}. + +\item Eine einfache \LaTeX{}-Datei übersetzen: +\begin{alltt} +> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-1.40.11-2.2 (TeX Live 2012) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} + +Falls dies schief geht, sind wahrscheinlich noch alte Umgebungsvariablen einer vorigen \TeX-Installation +übrig geblieben. Wir empfehlen, die Umgebungsvariablen, die sich auf \TeX{} beziehen, zu entfernen. +Für eine weitere Analyse können Sie \TeX{} anzeigen lassen, wo es bestimmte Dateien sucht, +siehe ">Fehlersuche"< auf Seite~\pageref{sec:debugging}. + +\item Ergebnis auf dem Bildschirm anschauen: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +Nun sollte +sich ein Vorschaufenster mit dem soeben gesetzten Beispieldokument öffnen, das die Grundlagen von +\LaTeX{} erläutert (und das Anfänger tatsächlich auch einmal lesen sollten). +Unter Unix muss ein X-Server laufen, damit \cmdname{xdvi} funktioniert; +falls dies nicht der Fall ist oder die Umgebungsvariable \envname{DISPLAY} falsch gesetzt ist, +erhalten Sie die Fehlermeldung \samp{Can't open display}. + +\item Eine \PS{}-Datei erzeugen: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Direkt eine \acro{PDF}-Datei erzeugen (statt \dvi{}): +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Eine \acro{PDF}-Datei anschauen: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Weder \cmdname{gv} noch \cmdname{xpdf} sind in \TL{} enthalten, daher müssen diese separat installiert +werden, siehe \url{http://www.gnu.org/software/gv} bzw. +\url{http://www.foolabs.com/xpdf}. +Sie können natürlich auch andere PDF-Viewer verwenden, beispielsweise den Adobe Reader, der allerdings unter Windows das Problem hat dass geöffnete PDF-Dateien +nicht überschrieben werden können, was zu Fehlern von pdf\TeX\ führt, wenn +Sie ein Dokument übersetzten wollen und vergessen haben, es vorher im +Acrobat Reader zu schließen. Unter Windows sollten Sie auch einmal +Sumatra PDF (\url{http://blog.kowalczyk.info/software/sumatrapdf}) ausprobieren. + +\item Weitere nützliche Test-Dateien außer +\filename{sample2e.tex}: + +\begin{description} +\item [small2e.tex] Einfachere Version von \filename{sample2e}, um den Fehler einzugrenzen, wenn Sie +beim Ãœbersetzen von \filename{sample2e} Probleme haben. +\item [testpage.tex] Hiermit können Sie prüfen, ob Ihr Drucker Ihren Ausdruck horizontal oder vertikal verschiebt. +\item [nfssfont.tex] Zum Testen von Fonts und Erzeugen von Schrifttabellen. +\item [testfont.tex] Erzeugen von Schrifttabellen, aber mit plain \TeX. +\item [story.tex] Das einfachste Testdokument von allen (in plain \TeX{}). +Geben Sie am Ende \samp{\bs bye} ein, wenn nach dem Aufruf von \samp{tex +story.tex} der \code{*} erscheint. +\end{description} + +\item Falls Sie das \filename{xetex}-Paket installiert haben, können Sie +das Verwenden von Systemschriften folgendermaßen testen: +\begin{alltt} ++> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} + +(Oder das gleiche für \filename{luatex}.) + +Falls Sie die Fehlermeldung ">Invalid fontname \glq Latin Modern +Roman\grq\dots"< erhalten, muss Ihr System so konfiguriert werden, dass +es die von \TL\ mitgelieferten Schriften findet (siehe Abschnitt~\ref{sec:font-conf-xetex}). +\end{enumerate} + + +\section{Hinweise auf weitere Software} + +In vielen Fällen ist die Installation weiterer Software sinnvoll: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} mit Zusatzpaketen von + \acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, für die Bearbeitung + und Umwandlung von Bildern in andere Formate, +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, ebenfalls für Bilder. + +\item[\TeX-Oberflächen] Es gibt eine breite Auswahl von Oberflächen bzw. + Editoren, die \TeX\ unterstützen, je nach persönlichem Geschmack des + Benutzers. Hier ist eine Auswahl, wobei einige davon nur für Windows verfügbar sind: + \begin{itemize} + \item \cmdname{GNU Emacs} gibt es auch für Windows, siehe + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs} mit Auc\TeX\ für Windows findet man auf der Homepage \url{http://www.gnu.org/software/auctex}. + \item \cmdname{Emacs} mit Auc\TeX\ für Windows findet man auf der Homepage \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} findet sich unter \url{http://www.ctan.org/support/LEd}. + \item \cmdname{SciTE} findet sich unter + \url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} ist Freie Software, verfügbar über + \url{http://www.xm1math.net/texmaker/}. + \item \cmdname{TexMakerX} \url{http://texmakerx.sourceforge.net/} + ist eine Version von \cmdname{Texmaker} mit zusätzlichen Features + \item \cmdname{TeXnicCenter} ist Freie Software, verfügbar über + \url{http://www.texniccenter.org} und als Teil von pro\TeX{}t. + \item \cmdname{TeXworks} ist Freie Software, verfügbar über + \url{http://tug.org/texworks}. Wird unter Windows und + \MacOSX\ als Teil von \TL\ mitinstalliert. + \item \cmdname{Vim} ist Freie Software, verfügbar über + \url{http://www.vim.org}. + \item \cmdname{WinShell} findet sich unter \url{http://www.winshell.de}. + \item \cmdname{WinEdt} ist Shareware, verfügbar über + \url{http://tug.org/winedt} oder \url{http://www.winedt.com}. + Bitte beachten Sie, dass es für Mitglieder von \dante\ ein + Lizenzabkommen mit WinEdt zu sehr günstigen Preisen gibt. + \end{itemize} +\end{description} +Für weitere Programme siehe \url{http://tug.org/interest.html}. + +\chapter{Installation für mehrere Maschinen oder Nutzer (Netz-Installation)} +\label{sec:sharedinstall} + +Bei \TL ist nicht nur vorgesehen, dass es von mehreren Benutzern auf einem System verwendet werden kann, sondern auch in einem Netzwerk. In der normalen Konfiguration von \TL werden nur relative und keine absoluten Pfade verwendet. Dies erkennt man an Einstellungen in der Datei \filename{\$TEXMFMAIN/web2c/texmf.cnf}, die Zeilen wie die folgenden enthält, in denen Verzeichnisse relativ zu den Verzeichnissen lokalisiert werden, +in denen sich die Programme befinden: + +\begin{verbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{verbatim} + +Daher ist es im Normalfall ausreichend, das Programm-Verzeichnis in den Suchpfad des Systems aufzunehmen, alles weitere bestimmt \TL dann automatisch. + +Daher ist es kein Problem, wenn das Grundverzeichnis von \TL als Netzlaufwerk eingebunden ist. Tatsächlich können Sie \TL\ sogar zunächst lokal installieren und dann auf ein Netzlaufwerk verschieben. + +Benutzer von Windows können ein Installationsskript namens \filename{w32client} +für eine Netzwerkinstallation von \url{http://tug.org/texlive/w32client.html} (siehe auch Abschnitt \ref{sec:sharedinstall}) herunterladen. Dieses nimmt die Einstellungen im Startmenü von Windows für das Verwenden von \TL über Netzwerk vor, weiterhin wird ein Skript zur Deinstallation mitgeliefert. Lesen Sie bitte die Beschreibung auf der angegebenen Webseite. + +\chapter{Portables \TL auf DVD oder USB-Stick}\label{sec:portable-tl} + +Wenn Sie \TL\ im portablen Modus verwenden wollen (z.\,B. auf einem Rechner, +auf dem Sie "`Gast"' sind), können Sie \TL\ mit der Option \optname{-portable} (bzw. der Option \code{V} im Text-Installer oder der entsprechenden Option im grafischen Installer) auf einem USB-Stick installieren (siehe Abschnitt \ref{sec:cmdline}). + +Um \TeX\ von dieser portablen Installation ausführen zu können, muss das entsprechenden Verzeichnis mit den Binaries dem Suchpfad hinzugefügt werden. Unter Windows kann man \filename{tl-tray-menu} im Stammverzeichnis der Installation doppelt klicken, um zwischen verschiedenen Aufgaben zu wählen. + +\medskip +\includegraphics[width=4cm]{tray-menu} +\smallskip + +\noindent Der Eintrag `More\ldots' erläutert, wie Sie dieses Menü anpassen können. + +\chapter{tlmgr: Installation verwalten}\label{sec:tlmgr} + + +\begin{figure}[tb] +\includegraphics[width=\linewidth]{tlmgr-gui} +\caption{\prog{tlmgr} im GUI-Modus. Hauptfenster nach dem Klicken auf ">Load"<.}\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] + \includegraphics[width=0.65\linewidth]{tlmgr-general-options} + \caption{\texttt{tlmgr} im GUI-Modus: Allgemeine Optionen} + \label{fig:tlmgr-general-options} +\end{figure} + +\begin{figure} +\includegraphics[width=0.65\linewidth]{tlmgr-paper-options} + \caption{\texttt{tlmgr} im GUI-Modus: Optionen zur Papiergröße} + \label{fig:tlmgr-paper-options} +\end{figure} + +Bei der Installation von \TL wird auch das Programm~\prog{tlmgr} installiert, mit dem Sie anschließend Ihr \TL-System verwalten können. Die hierfür bisher verwendeten Programme~\prog{updmap}, \prog{fmtutil} und \prog{texconfig} sind zwar noch vorhanden, aber inzwischen ist \prog{tlmgr} die vorgesehene Oberfläche zur Konfiguration von \TL. Mit \prog{tlmgr} können Sie folgende Aufgaben erledigen: + +\begin{itemize} +\item Verfügbare Schemas, Collections und Pakete installieren, aktualisieren, wieder + herstellen, sichern, deinstallieren, auf Wunsch mit + Berücksichtigung von Paketabhängigkeiten. +\item Suchen nach Paketen. +\item Anzeigen der Systeme, unter denen \TL läuft; (de)installieren von Binaries für weitere Systeme. +\item Anpassen der Installation, wie Ändern der Papiergröße oder des Quellverzeichnisses für Komponenten + (s.\,Abschnitt~\ref{sec:location}). +\end{itemize} + +\textit{Achtung:} \prog{tlmgr} ist für die Installation im portablen Modus (Abschnitt \ref{sec:portable-tl}) weder gedacht noch getestet. + +\section{tlmgr im grafischen Modus} + +\prog{tlmgr} im GUI-Modus (siehe Abbildung \ref{fig:tlmgr-gui}) wird durch +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} + +gestartet. Unter Windows finden Sie das Programm im Start menu: \texttt{Start}, \texttt{Programme}, \texttt{TeX Live 2012}, \texttt{TeX Live Manager}. Nach Klicken auf ">Load"< wird eine Liste aller verfügbaren und installierten (letztere durch ">(i)"< gekennzeichnet) angezeigt. Dies setzt voraus, dass das Verzeichnis, aus dem \TL die Pakete lädt, vorhanden bzw.\ erreichbar ist. + +Abb.~\ref{fig:tlmgr-general-options} und \ref{fig:tlmgr-paper-options} zeigen die Reiter zur allgemeinen Konfiguration von \TL\ und zur Einstellung der Papiergröße. + + +\section{Beispiel zur Verwendung von tlmgr über Kommandozeile} + + +Nachdem Sie \TL\ installiert haben, können Sie Ihr \TL-System auf den +neuesten Stand aktualisieren: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +Falls Sie vorher wissen wollen, was passiert, können Sie zunächst +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +oder (weniger ausführlich) +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} +verwenden. + +Das folgende Beispiel demonstriert, wie die Collection für \XeTeX\ installiert +wird, wobei sich die Installationsdateien in einem lokalen Verzeichnis +befinden: + +\begin{alltt} +\Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +Dies liefert die folgende Ausgabe: + +\begin{verbatim} +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/2012/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{verbatim} + +Wie man sieht, beachtet \prog{tlmgr} die Abhängigkeiten von Paketen und installiert im obigen Beispiel von \XeTeX{} benötigte Komponenten nach. Weiterhin werden automatisch im Anschluss die Dateilisten der Verzeichnisbäume aktualisiert und fehlende Formate generiert. + +Informationen zu einem Paket (oder einer Collection oder einem Schema) anzeigen: + +\begin{alltt} +Ucom{tlmgr show collection-latexextra} +\end{alltt} + +Hier erhält man folgende Ausgabe: + +\begin{verbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{verbatim} + +\noindent Die komplette Dokumentation finden Sie unter \url{http://tug.org/texlive/tlmgr.html} +oder mit +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + +\chapter{Hinweise zu Windows} +\label{sec:windows} + +Das Installationsprogramm von \TL\ läuft sowohl unter Windows als auch Unix. Dies war nur dadurch möglich, dass ältere Versionen von Windows nicht mehr unterstützt werden. Daher kann \TL\ nur noch ab Windows XP oder später installiert werden. + +\section{Windows-spezifische Dinge} +\label{sec:winfeatures} + + +Unter Windows kümmert sich das Installationsprogramm auch um folgende Dinge: +\begin{description} +\item[Menüs und Verknüpfungen.] Im Startmenü wird ein Menü ">\TL{}"< hinzu gefügt. Hier sind Einträge für + die grafischen Anwendungen (\prog{tlmgr}, \prog{texdoctk}, den PS\_View (\prog{psv}) PostScript-Previewer) + und einige Verknüpfungen zur Dokumentation vorhanden. Für PS\_View wird eine Verknüpfung auf dem + Desktop angelegt, auf die Sie \PS-Dateien per Drag~\& Drop ziehen können, um diese zu betrachten. +\item[Automatisches Setzen der Umgebungsvariablen.] Hierdurch ist das Setzen dieser Variablen + von Hand überflüssig geworden. +\item[Uninstaller.] Es wird ein Eintrag zum Entfernen von \TL in der Systemsteuerung im Punkt Software angelegt. + Alternativ können Sie \TL über die GUI \TeX\ Live Manager deinstallieren. +\item[Dateiverknüpfungen] Wenn diese Option aktiviert wird, werden \prog{TeXworks}, \prog{Dviout} + und \prog{PS\_view} entweder die Standard-Programme für die entsprechenden Dateitypen oder erhalten einen Eintrag im `Öffnen mit' Dialog. +\item[Bitmap nach eps Konverter] Verschiedene Bitmap-Formate erhalten einen Eintrag \cmdname{bitmap2eps} in ihr `Öffnen mit' Menü. Bitmap2eps ist ein einfaches Skript, das im Hintergrund \cmdname{sam2p} oder \cmdname{bmeps} aufruft. +\item[Automatische Pfad-Anpassung] Erfordert keine manuellen Anpassungen. +\end{description} + +\section{Zusätzlich enthaltene Programme unter Windows} + +Zusätzlich werden unter Windows einige Programme installiert, die unter Windows meist noch nicht verfügbar sind: + +\begin{description} +\item[Perl und Ghostscript.] Da Perl und Ghostscript für \TL sehr wichtig ist, werden diese unter Windows mitgeliefert und werden intern von \TL benutzt. Die in \TL enthaltenen Programme, die diese Komponenten benötigen, ">wissen"< wo sich diese befinden, ohne dass diese im System durch Umgebungsvariablen oder Einträge in der Registry sichtbar sind. Es handelt sich um für \TL abgespeckte + Versionen, die zu keinen Konflikten mit eventuell bereits vorhandenen Installationen von Perl und Ghostscript führen sollten. + +\item[PS\_View.] Weiterhin wird PS\_View installiert, ein neuer PostScript- und PDF-Viewer, der Freie Software ist, s.\,Abb.~\ref{fig:psview}. + +\begin{figure}[tb] +\includegraphics[width=.6\linewidth]{psview} +\caption{PS\_View: sogar sehr extreme Vergrößerungen sind möglich.}\label{fig:psview} +\end{figure} + +\item[dviout] Weiterhin wird \prog{dviout}, ein \acro{DVI}-Viewer installiert. +Wenn Sie am Anfang Dokumente mit \cmdname{dviout} anschauen, werden häufig noch Fonts generiert, da keine fertigen Fontdateien für den Bildschirm mitgeliefert werden. Je mehr Fonts generiert wurden, desto seltener müssen Schriften nachgeneriert werden, so dass dieser Effekt nach einiger Zeit nur noch selten +auftreten wird. Weitere Informationen finden Sie in der (sehr guten) Online-Hilfe. + +\item[TeXworks] \TeX{}works ist eine Oberfläche für \TeX\ mit Editor und + integriertem \acro{PDF}-Viewer. + +\item[Tools für die Kommandozeile.] Für einige unter Unix übliche Programme werden Portierungen für Windows + mitgeliefert. Dies sind z.\,B. \cmdname{gzip}, \cmdname{unzip} und einige Programme für die Kommandozeile aus der + \cmdname{xpdf}-Suite, wie \cmdname{pdfinfo} und \cmdname{pdffonts}. (Vom + \cmdname{xpdf}-Viewer selbst gibt es keine Version für Windows, aber der + Sumatra \acro{PDF}-Viewer basiert auf \cmdname{xpdf}: + \url{http://blog.kowalczyk.info/software/sumatrapdf}.) + \item[\texttt{fc-cache}, \texttt{fc-list} etc.] dienen \XeTeX{} zur effizienteren Benutzung von Schriften. Mit \prog{fc-list} können Sie die Namen der + verfügbaren Schriften anzeigen, die Sie dann unter \XeTeX\ mit dem + Kommando \texttt{font} benutzen können. Mit \prog{fc-cache} kann die Liste + der verfügbaren Schriften aktualisiert werden. +\end{description} + + +\section{Nutzerprofile unter Windows} +\label{sec:winhome} + +Das Gegenstück von Windows zum HOME-Verzeichnis unter Unix ist das +Verzeichnis \verb|%USERPROFILE%|. + +Unter Windows 7 oder Windows Vista liegt es meist in \verb|C:\Users\|, +unter Windows XP im Verzeichnis \verb|C:/Dokumente und Einstellungen/|. + +In der Datei \filename{texmf.cnf} und in \KPS{} allgemein wird \verb|~| +sowohl unter Unix und Windows korrekt aufgelöst. + +\section{Die Windows-Registry} +\label{sec:registry} + + +Windows verwaltet fast all seine Konfigurationseinstellungen in der Registry. Diese besteht aus einem hierarchisch aufgebauten Baum von Schlüsseln, wobei mehrere dieser Registry-Bäume existieren. Die wichtigsten sind \path{HKEY_CURRENT_USER} und \path{HKEY_LOCAL_MACHINE}, oft abgekürzt als \path{HKCU} bzw.\ \path{HKLM}. Der \path{HKCU}-Teil der Registry wird im Home-Verzeichnis des Benutzers gespeichert (siehe Abschnitt~\ref{sec:winhome}). \path{HKLM} liegt im +Normalfall in einem Unterverzeichnis des Windows-Verzeichnisses. + +In einigen Fällen sind Systeminformationen aus Umgebungsvariablen ersichtlich, in vielen anderen Fällen liegen diese Informationen aber in der Registry. + +\section{Windows Permissions} +\label{sec:winpermissions} + + +In neueren Versionen von Windows wird zwischen normalen Benutzern und +Administratoren unterschieden, wobei nur letztere freien Zugang auf +alle Teile des Betriebsystems haben. Im Gegensatz zu Unix ist es in der +Praxis allerdings häufig so, dass Benutzer zur Klasse der Administratoren +gehören und daher doch alle Freiheiten haben. Trotzdem haben wir einigen +Aufwand getrieben, damit \TL auch unter Windows ohne Administrator-Rechte +installiert werden kann. + +Falls der Benutzer, der \TL installiert, Administrator-Rechte besitzt, +kann \TL für alle Benutzer des Systems installiert werden, d.\,h. Verknüpfungen, +Menüs und Systemeinträge werden für alle Nutzer angelegt. Ansonsten werden diese +nur für den aktuellen Benutzer angelegt. + +Unabhängig davon wird grundsätzlich angenommen, dass das Wurzelverzeichnis +von \TL unter \verb|%SystemDrive%| liegen soll. Allerdings testet das +Installationsprogramm, ob dieses Verzeichnis für den aktuellen Benutzer +schreibbar ist. + +Ein Problem entsteht, wenn \TL ohne Administrator-Rechte installiert +wird und sich bereits ein \TeX{}-System im systemweiten Suchpfad +befindet. Windows benutzt zuerst den Suchpfad des Systems, erst dann +den spezifischen Suchpfad des Nutzers, so dass hier immer zuerst +das alte \TeX-System gefunden wird. Als Workaround wird hier eine +Verknüpfung mit einer Eingabeaufforderung erzeugt, in der das +Programmverzeichnis von \TL im Suchpfad vor den Standard\-such\-pfad +geschrieben wird. Dies bedeutet, dass in diesem Fall nur in einer +Eingabeaufforderung verfügbar ist, die über diese Verknüpfung gestartet +wird. Die Verknüpfung für \TeX{}works (falls Sie dieses installieren) +fügt ebenfalls automatisch \TL{} am Anfang des Suchpfades ein, so dass +es direkt benutzbar ist. + +Unter Windows Vista gibt es einen weiteren Fallstrick. Selbst wenn Sie als +Administrator angemeldet sind, müssen Sie Programme trotzdem explizit +mit Administratorrechten starten. Insofern ist es tatsächlich nicht sehr +sinnvoll, sich als Administrator anzumelden. Klicken Sie stattdessen +auf das gewünschte Programm (bzw. die gewünschte Verknüpfung) mit der +rechten Maustaste, damit Sie die Option erhalten, dieses mit +Administratorrechten auszuführen. + +\section{Erhöhen des maximal verfügbaren Speichers unter Windows und Cygwin} +\label{sec:cygwin-maxmem} + + +Unter Windows und Cygwin (s. Abschnitt \ref{sec:cygwin} für die Installation unter +Cygwin) kann es vorkommen, dass der den in \TL\ enthaltenen Programmen zur +Verfügung gestellte Speicher nicht ausreicht. Dies kann z.\,B. passieren, wenn +in \prog{asy} ein Array von 25 Millionen Gleitkommazahlen allokiert wird oder +ein Dokument mit umfangreichen Schriften mit Lua\TeX\ übersetzt wird. + +Für Cygwin ist die Erhöhung des Maximalspeichers im Cygwin-Hanbuch beschrieben +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +Unter Windows können Sie eine Datei \code{moremem.reg} mit folgenden vier +Zeilen anlegen: + +\begin{verbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{verbatim} + +Führen Sie dann als Administrator \code{regedit /s moremem.reg} aus. +(Falls der zur Verfügung stehende Speicher nur für den aktuellen Nutzer +erhöht werden soll, verwenden Sie stattdessen einfach \code{HKEY\_CURRENT\_USER}). + +\chapter{Anleitung zum Web2C-System} + +Web2C besteht aus einer Reihe von Programmen, die zusammen ein komplettes +\TeX-System darstellen. Dazu gehören natürlich \TeX, \MF, \MP, {\BibTeX} usw. + +Die erste Implementierung eines \TeX-Systems in der Programmiersprache C stammt von Tomas~Rokicki und datiert zurück in das Jahr 1987. Rokicki benutzte als Basis sog. Change-Files unter \acro{UNIX}, die ursprünglich von Howard~Trickey und Pavel~Curtis entwickelt wurden. Tim~Morgan hat dieses System, für das der Name Web-to-C\@ eingeführt wurde, gepflegt. 1990 hat Karl~Berry mit Unterstützung vieler Helfer die Weiterentwicklung übernommen und 1997 an Olaf~Weber weitergegeben, der es 2006 wieder an Karl zurück gab. + +Web2C läuft unter \acro{UNIX}, 32-bit-Versionen von Windows, \MacOSX{} +und auf weiteren Betriebssystemen. Es benutzt die +Original-Quelldateien von Donald E.~Knuth und weitere in der +Sprache \texttt{WEB} entwickelte Programme als Basis und übersetzt diese +in C-Quell-Code. Darüber hinaus bietet das System viele Makros und +Funktionen zur Nutzung der originalen \TeX-Software. Hier eine +Liste der Basisprogramme eines \TeX-Systems: + +\begin{description} +\item[bibtex] Verwalten von Bibliographien +\item[dvicopy] Umwandeln von virtuellen Zeichensätzen in DVI-Dateien +\item[dvitomp] DVI-nach-MPX-Konverter (\MP-Bilder) +\item[dvitype] Textanzeige aus DVI-Dateien +\item[gftodvi] Erzeugen von Prüfausgaben für Zeichensätze +\item[gftopk] Packen von Zeichensätzen +\item[gftype] Anzeige von Zeichensätzen als ASCII-Graphik +\item[mf] Zeichensatzerzeugung +\item[mft] formatierte Ausgabe von \MF-Quellen +\item[mpost] \MF-ähnliches Grafikprogramm +\item[patgen] Erzeugen von Trennmustern +\item[pktogf] Entpacken von Zeichensätzen +\item[pktype] Anzeige gepackter Zeichensätze +\item[pltotf] Umwandeln von Property-Listen in \file{.tfm}-Dateien +\item[pooltype] Anzeige der Bildschirmtexte eines WEB-Programms +\item[tangle] Konverter {\web} nach Pascal +\item[tex] \TeX-Programm +\item[tftopl] Umwandeln einer \file{.tfm}-Datei in eine Property-Liste +\item[vftovp] Umwandeln eines virtuellen Zeichensatzes in eine Property-Liste +\item[vptovf] Umwandeln einer Property-Liste in einen virtuellen Zeichensatz +\item[weave] \web-Code als \TeX-Dokumentation +\end{description} + +Die genaue Funktionsweise und die möglichen Parameter sind der +Beschreibung der jeweiligen Pakete bzw.\ der Web2C-Dokumentation zu entnehmen. +Trotzdem wird ein Ãœberblick über Zusammenspiel und Funktionsweise der +Web2C-Programme Ihnen sicherlich helfen, besser mit dem System zurechtzukommen. + +Zunächst verstehen alle Programme die grundlegenden Parameter der +\acro{GNU}-Software: + +\begin{description} +\item[\texttt{-{}-help}] kurzer Hilfstext +\item[\texttt{-{}-verbose}] ausführliche Ausgaben beim Programmablauf +\item[\texttt{-{}-version}] Ausgabe der Versionsnummer +\end{description} + +\noindent Die Programme des Web2C-Systems benutzen zum Lokalisieren der benötigten +Dateien im Dateisystem die \KPS-Bibliothek (\url{http://tug.org/kpathsea}). Diese Bibliothek optimiert und +beschleunigt den Suchprozess im Dateisystem. Ihre Arbeitsweise wird durch +einige Umgebungsvariablen und eine Kon"-fi"-gu"-ra"-tions"-da"-tei gesteuert. +Web2C~7.5 kann mehr als einen Dateibaum gleichzeitig verwalten und ermöglicht +somit die schon beschriebene \TL-Installation unter Verwendung der +{\DVD} mit der Ablage modifizierter Konfigurationsdateien +und zusätzlicher Zeichensätze in einem zweiten Dateibaum. Die Suche +nach Dateien wird durch die Analyse der Datei \file{ls-R} beschleunigt, +die in jedem Wurzelverzeichnis eines \TeX-Dateibaums vorhanden ist. +Sie enthält für jede Datei die genaue Position im Dateibaum relativ +zum Wurzelverzeichnis. + + +\section{Dateisuche mit der Kpathsea-Bibliothek} +\label{sec:kpathsea} + +Wir beschreiben zunächst den grundlegenden Suchmechanismus der \KPS-Bibliothek. + +Ein \emph{Suchpfad} ist eine durch Kommata oder Semikola getrennte Liste von +\emph{Pfadkomponenten}, die üblicherweise Verzeichnisnamen darstellen. +Ein Suchpfad kann sich aus vielen Komponenten zusammensetzen. Die Suche nach +einer Datei \samp{my-file} über den Suchpfad \samp{.:/dir} bewirkt, dass +{\KPS} jede Komponente nacheinander überprüft, also zunächst +\samp{./my-file} und dann \samp{/dir/my-file}. Als Ergebnis wird entweder die +erste gefundene Datei oder eine Liste aller passenden Dateien geliefert. + +Um auf allen Dateisystemen effizient arbeiten zu können, verwendet {\KPS} ggf. andere Datei-/""Verzeich"-nis-Separatoren als \samp{:} und \samp{/}. + +Beim Ãœberprüfen einer Pfadkomponente \var{p} überprüft {\KPS} zunächst, +ob eine Dateinamen"=Datenbank (siehe auch Dateinamen"=Datenbank auf +Seite~\pageref{sec:filename-database}) für die Pfadkomponente zuständig ist, +d.\,h. beispielsweise steht die Datenbank in einem Verzeichnis, das im Pfad +vor der zu überprüfenden Komponente \var{p} steht. In diesem Fall wird +zur Bestimmung der Position der gesuchten Datei die Datenbank herangezogen. + +Nur wenn keine passende Datenbank existiert oder wenn die Datei nicht +in der Datenbank gefunden wird, durchsucht {\KPS} das Dateisystem. Diese +zeitaufwändige Suche kann über die Spezifikation der Pfadkomponente \var{p} +mit dem Präfix \samp{!!}\ unterbunden werden. Zur Suche erzeugt {\KPS} eine +Liste der Verzeichnisse, die im Pfadelement enthalten sind, und durchsucht +jedes dieser Verzeichnisse nach der gesuchten Datei. + +Für Dateien kann auch ein Schalter \samp{file~must~exist} gesetzt werden (">Datei muss vorhanden sein"<). Wenn dieser Schalter nicht gesetzt ist und beispielsweise über das \TeX-Kommando \code{openin} eine VF-Datei wie \file{cmr10.vf} gelesen werden soll, wäre es falsch, nach dieser Datei zu suchen, weil es sie gar +nicht gibt. Speziell für neu installierte VF-Dateien sollten Sie also unbedingt die Dateinamen"=Datenbank (\cmdname{ls-R}) aktualisieren, weil die Dateien sonst nicht gelesen werden und kein Fehler angezeigt wird. Dieser Vorgang wiederholt sich für jede Komponente eines Suchpfades: zunächst wird die Datenbank +überprüft, danach ggf. das Dateisystem. Wird die Datei gefunden, +stoppt die Suche (normalerweise) und als Ergebnis wird der komplette Pfad zur +gesuchten Datei ausgegeben. + +Außer Verzeichnisnamen dürfen Pfadkomponenten für {\KPS} folgende +Elemente enthalten: (verschachtelte) Vorgaben, Umgebungsvariablen, +Werte aus der Konfigurationsdatei, Home-Verzeich"-nisse von +Benutzern und Startverzeichnisse für eine rekursive Suche. Diese +Elemente werden vor einer Dateisuche von {\KPS} in gewöhnliche +Verzeichnis- oder Dateinamen expandiert. Diese Expansion wird in +den folgenden Abschnitten erklärt, und zwar genau in der +Reihenfolge, wie die Elemente auch von {\KPS} bearbeitet werden. + +Beachten Sie, dass {\KPS} bei absoluten und explizit relativen Komponenten, +d.\,h. wenn die Komponente mit den Zeichen \samp{/}, \samp{./} oder +\samp{../} beginnt, nur überprüft, ob die Datei existiert. + +\begin{verbatim} +\begin{figure*}[tp] +\verbatiminput{../texlive-common/examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\end{verbatim} % xxxxx todo + +\subsection{Bestandteile von Pfadkomponenten} +\label{sec:path-expansion} + + +Ein Suchpfad kann aus vielen verschiedenen Bestandteilen aufgebaut werden. +Dies sind in der Reihenfolge, wie {\KPS} sie auswertet: + +\begin{enumerate} +\item + eine benutzerdefinierte Umgebungsvariable, z.\,B. \envname{TEXINPUTS}: + Wird an den Inhalt der Variablen ein Punkt und ein Programmname angehängt, wie + beispielsweise bei \envname{TEXINPUTS.latex}, hat diese Form Vorrang + vor den ">gewöhnlichen"< Variablen. +\item + Einträge aus programmspezifischen Konfigurationsdateien, + beispielsweise zum Programm \code{dvips} eine Zeile \code{S /a:/b} + in der Konfigurationsdatei \file{config.ps} +\item + Einträge aus der \KPS-Konfigurationsdatei \file{texmf.cnf}, + z.\,B. \code{TEXINPUTS=/c:/d} (siehe folgenden Text) +\item + Einstellung beim Ãœbersetzen der Programme +\end{enumerate} + +\noindent Unter Verwendung der Parameter zur Fehlersuche können Sie sich diese +Werte für einen Suchpfad auch anzeigen lassen. (Siehe dazu den Abschnitt +Fehlersuche auf Seite~\pageref{sec:debugging}.) + + +\subsection{Konfigurationsdateien} + +Die \KPS-Bibliothek liest zur Laufzeit die \emph{Konfigurationsdateien} mit den Namen \file{texmf.cnf}. Der zugehörige Suchpfad zum Auf"|finden dieser +Konfigurationsdateien steht in der Umgebungsvariablen \envname{TEXMFCNF} +(die Voreinstellung ist \file{texmf/web2c}). {\KPS} liest \emph{alle} +Dateien mit den Namen \file{texmf.cnf}, die es in diesem Suchpfad findet. +Die zuerst gelesenen Definitionen haben dabei Vorrang vor später gelesenen +Werten. Wenn der Suchpfad auf \dirname{.:\$TEXMF} steht, überschreiben die Einstellungen in \file{./texmf.cnf} diejenigen in \dirname{\$TEXMF/texmf.cnf}. + +Im Folgenden wird die Syntax der Datei \file{texmf.cnf} angegeben. +Konsultieren Sie zum besseren Verständnis beim Lesen die auf der +CD-ROM oder DVD enthaltene Konfigurationsdatei. + +\begin{itemize} +\item + Kommentare beginnen mit einem \code{\%} und erstrecken sich bis zum + Zeilenende. +\item + Leerzeilen werden überlesen. +\item + Ein \samp{\bs} am Zeilenende fasst die aktuelle mit der folgenden Zeile + zusammen. Leerraum in der Folgezeile wird \emph{nicht} überlesen. +\item + Sonstige Zeilen haben den folgenden Aufbau: + +\begin{alltt} + \var{Variable}[.\var{Programmname}] [=] \var{Wert} +\end{alltt}% + + Das Zeichen ">="< und umgebender Leerraum dürfen entfallen. +\item + Der Name von \var{Variable} kann alle Zeichen außer Leerzeichen, + \samp{=} und \samp{.} enthalten. Verwenden Sie am besten nur die Zeichen + \samp{A-Za-z\_}. +\item + Wenn das Suffix ">\code{.\var{Programmname}}"< angegeben wird, gilt die + Variable nur für das entsprechende Programm ">\var{Programmname}"< oder + ">\code{\var{Programmname}.exe}"<. Auf diese Weise können + beispielsweise verschiedene + \TeX-Formate mit unterschiedlichen Suchpfaden arbeiten. +\item + \texttt{\var{Wert}} darf alle Zeichen außer \texttt{\%} und \texttt{@} + enthalten. + Die Einschränkung der Werte auf bestimmte Programme über ein Suffix + ist nicht zulässig. Ein \samp{;} in \texttt{\var{Wert}} wird unter + \acro{UNIX} in \samp{:} umgewandelt. Dadurch ist die Verwendung der gleichen + Konfigurationsdateien für \acro{UNIX} und \acro{DOS}/""Windows"=Systeme möglich. +\item + Die Definitionen werden komplett eingelesen, bevor eine Expansion + stattfindet. Dadurch können Sie die Variable schon vor Ihrer Definition + referieren. +\end{itemize} + +Der Ausschnitt einer Konfigurationsdatei demonstriert diese +Möglichkeiten. + +\begin{verbatim} +\verbatiminput{../texlive-common/examples/ex5.tex} +Betrachten Sie Abbildung~\ref{fig:config-sample}. +\end{verbatim} % xxxx todo + +\subsection{Expansion von Pfadkomponenten} + +{\KPS} verwendet in Suchpfaden ähnliche Zeichen und Konstrukte wie +\acro{UNIX}-Shells. Beispielsweise wird die Definition +\verb|~$USER/{foo,bar}//baz| in alle Unterverzeichnisse von \file{foo} und +\file{bar} unterhalb vom Home-Verzeichnis von \dirname{\$USER} expandiert, +die eine Datei oder ein Unterverzeichnis namens \file{baz} enthalten. Der +Expansionsmechanismus wird im Folgenden erklärt. + +\subsection{Expansion der Voreinstellungen}\label{sec:default-expansion} + +Wenn der Suchpfad mit der höchsten Priorität (siehe hierzu ">Bestandteile von +Pfadkomponenten"< auf Seite~\pageref{sec:path-sources}) einen zusätzlichen +(vorangestellten, nachgestellten oder verdoppelten) Doppelpunkt enthält, +wird an dieser Stelle der Suchpfad eingefügt, der als nächstes in der +Hierarchie folgt. Auch bei diesem gilt dieselbe Regel. Wenn beispielsweise +die Umgebungsvariable + + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} + +gesetzt wird (hier: C-Shell) und in \file{texmf.cnf} die Variable +\code{TEXINPUTS} folgenden Wert erhält + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} + +dann lautet der Suchpfad schließlich: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Da es sinnlos wäre, denselben Pfad mehrfach einzufügen, wird die Ersetzung +nur einmal vorgenommen, und zwar in der Reihenfolge vorne, hinten und +Mitte. Mehrfach verdoppelte Doppelpunkte bleiben unverändert. + +\subsection{Expansion geschweifter Klammern} + + +Die Expansion geschweifter Klammern ist zur Definition mehrerer \TeX-Hierarchien sehr nützlich. Beispielsweise wird |v{a,b}w| zu |vaw:vbw|. Verschachtelungen sind dabei erlaubt. Diese Technik wird dazu benutzt, durch eine Zuweisung an +\code{\$TEXMF} verschiedene \TeX-Hierarchien einzuführen. Als Beispiel finden Sie in \file{texmf.cnf} folgende Definition (etwas gekürzt, tatsächlich ist es etwas komplexer): + +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} + +Eine Anwendung wie + +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} + +führt dann dazu, dass erst im aktuellen Verzeichnis gesucht wird, dann +im gesamten Dateibaum \code{\$TEXMFHOME/tex} und \code{\$TEXMFLOCAL/tex} +(auf der Festplatte) und schließlich im gesamten Dateibaum \dirname{\$TEXMFVAR/tex} sowie \code{\$TEXMFMAIN/tex} (nur in der Datenbank \file{ls-R}) durchsucht wird. Dadurch kann man bequem zwei parallel installierte \TeX-Hierarchien durchsuchen, beispielsweise eine unveränderliche auf \acro{CDROM}/{\DVD} und eine dynamisch angepasste auf Festplatte, in der neue Programmversionen und zusätzliche Zeichensätze installiert werden. Durch die Verwendung der Variablen \code{\$TEXMF} in allen Definitionen wird grundsätzlich zuerst der neuere Dateibaum durchsucht. + + +\subsection{Expansion von Unterverzeichnissen}\label{sec:subdirectory-expansion} + +Zwei oder mehrere aufeinanderfolgende Schrägstriche (\texttt{//}) in einer Pfadkomponente, die auf einen Verzeichnisnamen \var{d} folgen, werden expandiert zu allen Unterverzeichnissen von \var{d}. Dieser Vorgang findet rekursiv statt, wobei erst alle Verzeichnisse auf einer Ebene bearbeitet werden, dann deren Unterverzeichnisse, usw. Auf den jeweiligen Ebenen ist nicht beeinflussbar, in welcher Reihenfolge die Unterverzeichnisse bearbeitet werden. + +Wenn nach den Schrägstrichen Namen angegeben werden, dann werden nur +Unterverzeichnisse mit passenden Namen in die Suche einbezogen. Beispielsweise wird \code{/a//b} in die Pfade \file{/a/1/b}, \file{/a/2/b}, \file{/a/1/1/b} usw. expandiert, aber nicht zu \file{/a/b/c} oder \file{/a/1}. (Jeweils vorausgesetzt, dass die Verzeichnisse existieren.) + +Mehrere \code{//}-Konstruktionen innerhalb einer Pfadkomponente +sind zulässig, allerdings nicht am Pfadanfang. + + +\subsection{Liste der Sonderzeichen und ihre Bedeutung: eine Zusammenfassung} + + +Die folgende Zusammenfassung fasst alle Sonderzeichen zusammen, die in den +\KPS"=Konfigurationsdateien auftreten können: + +% ++++++++++++++++++++++++ %xxxx todo +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +% ++++++++++++++++++++++++ + +\begin{description} +\item[\CODE{:}] Trennzeichen für Pfadkomponenten; als erstes + oder letztes Zeichen im Pfad bewirkt es die + Expansion der Voreinstellungen. +\item[\CODE{;}] Trennzeichen für Pfadkomponenten für andere + Rechnerplattformen als \acro{UNIX} (Verwendung wie + ">\code{:}"<) +\item[\CODE{\$}] Expansion von Variableninhalten +\item[\CODE{\string~}] Home-Verzeichnis eines Benutzers (Tilde) +\item[\CODE{\char`\{...\char`\}}] Expansion geschweifter Klammern: + beispielsweise wird |a{1,2}b| zu |a1b:a2b|. +\item[\CODE{//}] Expansion von Unterverzeichnissen: tritt niemals + am Anfang einer Pfadkomponente auf. +\item[\CODE{\%}] Kommentar +\item[\CODE{\bs}] Konkatenation mit Folgezeile(n) +\item[\CODE{!!}] Einschränkung der Suche \emph{ausschließlich} auf die + Dateinamen"=Datenbank: Das Dateisystem wird \emph{nicht} + durchsucht! +\end{description} + + + +\section{Dateinamen-Datenbanken}\label{sec:filename-database} + +\KPS unternimmt etliche Anstrengungen, um den Zugriff auf Festplatte und +DVD zur Suche nach Dateien zu reduzieren. Auf \TeX-Systemen mit vielen Unterverzeichnissen kann die Suche in jedem möglichen Verzeichnis nach einer bestimmten Datei eine lange Zeit in Anspruch nehmen, besonders wenn einige Hundert Zeichensatzverzeichnisse durchforstet werden müssen. Um dieses Problem abzumildern, benutzt {\KPS} eine Art Datenbankdatei namens \file{ls-R}, die die Zuordnung von Dateinamen auf Verzeichnisse enthält. Dadurch muss nicht jedesmal die Festplatte durchsucht werden. + +Eine zweite Datenbank in der Datei \file{aliases} kann eine Zuordnung zwischen den Namen in \file{ls-R} und weiteren Namen vornehmen und so beispielsweise hilfreich bei der Umsetzung von \samp{8.3}-\acro{DOS}-Dateinamen auf die ">echten"<, aussagekräftigen Dateinamen zur Seite stehen. + +\subsection{Die ls-R-Datenbank}\label{sec:ls-R} + + +Wie schon öfters erwähnt, muss die Dateinamen"=Datenbank in der Datei +\file{ls-R} gespeichert sein. Sie sollten eine solche Datenbank für jede +\TeX-Hierarchie (normalerweise in \code{\$TEXMF}) Ihres Systems anlegen. +{\KPS} sucht die Datenbanken \file{ls-R} über den Pfad \code{TEXMFDBS}. + +Es wird empfohlen, die Pflege der \code{ls-R}-Dateien dem mitgelieferten +Skript \cmdname{mktexlsr} zu überlassen. Dieses Skript wird automatisch von den +verschiedenen \samp{mktex*}-Skripten aufgerufen. Das Skript ruft +grob gesagt den Befehl + +\begin{alltt} +cd /\var{your}/\var{texmf}/\var{root} && ls -LAR ./ >ls-R +\end{alltt} + +auf, falls das Kommando \code{ls} Ihres Rechners eine Ausgabe im richtigen +Format liefert. (So wie das \acro{GNU}-\code{ls}.) Wenn Sie ganz sichergehen +wollen, dass die Datenbank immer auf dem neuesten Stand ist, sollten Sie sie +in regelmäßigen Abständen mit Hilfe eines \cmdname{crontab}-Eintrags +aktualisieren lassen. Dadurch wird nach einer Installation eines +Pakets per Hand trotzdem sichergestellt, dass die Datenbank aktuell ist. + +Wenn eine Datei nicht über die Datenbank gefunden wird, sucht +{\KPS} normalerweise auf der Festplatte weiter. Wenn eine Pfadkomponente +mit \code{!!} beginnt, wird dagegen niemals die Festplatte durchsucht. + + +\subsection{kpsewhich: Dateisuche} +\label{sec:invoking-kpsewhich} + + +Mit dem Programm \cmdname{kpsewhich} können Sie unabhängig vom Aufruf +irgendeines \TeX-Programms nach Dateien in der \TeX-Hierarchie suchen +(als schnellere Alternative zu dem Befehl \cmdname{find}). Dies +wird von den verschiedenen \samp{mktex\dots}-Skripten bis zum +Exzess vorexerziert. + +\begin{alltt} +> \Ucom{kpsewhich \var{option}{\dots} \var{filename}{\dots}} +\end{alltt} + +Die Optionen werden entweder mit \samp{-} oder mit \samp{-{}-} eingeleitet. +Jede eindeutige Abkürzung ist zulässig. + +Argumente der Kommandozeile, die keine Optionen darstellen, werden als +Dateinamen interpretiert. Für jeden Dateinamen wird der erste passende +Pfad gemeldet. Um eine Liste aller passenden Pfade zu erhalten, müssen Sie +das \acro{UNIX}-Kommando \cmdname{find} aufrufen. + +Im Folgenden werden die häufiger benutzten Optionen beschrieben. + +\begin{description} +\item[\texttt{-{}-dpi=}\var{num}]\mbox{}\\ + Stellt die Auf"|lösung für die Suche nach Zeichensätzen + (nur \file{.gf} oder \file{.pk}) auf \var{num}\,dpi. Alternativ + kann die Option \code{-D} (kommt von dvips) benutzt werden. + Voreinstellung ist~600. +\item[\texttt{-{}-format=}\var{name}]\mbox{}\\ + Setzt das Format zur Suche auf \var{name}. Per Voreinstellung + versucht \cmdname{kpsewhich} das Format über den Dateinamen + zu erschließen. Bei Formaten ohne zugeordnete Namens\-endung wie den + zu {\MP} gehörenden Dateien und den Konfigurationsdateien zu + {dvips} müssen Sie den entsprechenden Namen so eingeben, wie er + \KPS{} bekannt ist. +\item[\texttt{-{}-mode=}\var{string}]\mbox{}\\ + Setzt für die Zeichensatzsuche den Generierungsmodus (betrifft nur + \file{.gf}- oder \file{.pk}-Dateien). Normalerweise werden alle + Zeichensätze gemeldet. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Es wird versucht, die Dateien notfalls durch eine Suche auf der + Festplatte zu finden. Normalerweise wird nur die \file{ls-R}-Datenbank + konsultiert. +\item[\texttt{-{}-path=}\var{string}]\mbox{}\\ + Sucht entlang des angegebenen Pfads statt des Standardpfads, + der auf Grund der Endung gewählt wird. Alle Expansionen sind + zulässig. Bei Verwendung der Option \texttt{-{}-path} darf nicht + die Option \texttt{-{}-format} angegeben werden. +\item[\texttt{-{}-progname=}\var{name}]\mbox{}\\ + Setzt den Programmnamen für die genauere Variablenspezifikation + über \code{.\var{Programmname}}. Voreinstellung ist \code{kpsewhich}. + +\item[\texttt{-{}-show-path=}\var{name}]\mbox{}\\ + Zeigt den Suchpfad für die angegebene Namens\-endung. Diese kann entweder + als Namens\-endung (\code{.pk}, \code{.vf}, usw.) oder als Name (wie bei der + Option \code{-{}-format}) spezifiziert werden. +\item[\texttt{-{}-debug=}\var{num}]\mbox{}\\ + Legt den Umfang für die Fehlersuche fest. +\end{description} + + +\subsection{Anwendungsbeispiele} +\label{sec:examples-of-use} + + +Wir schauen uns nun die Funktionsweise von {\KPS} anhand einiger Beispiele an. + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} + +Wir suchen unter den \TeX-Quelldateien nach der Datei \file{article.cls}. +Da die Namens\-endung \samp{.cls} eindeutig ist, müssen wir den Typ +\samp{.tex} nicht angeben. Die \samp{texmf-dist}-Hierarchie enthält die +Datei im Unterverzeichnis \dirname{tex/latex/base}. Ähnlich bereiten +die folgenden Beispiele auf Grund eindeutiger Namens\-endungen keine Probleme. + +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +Beim letzten Beispiel handelt es sich übrigens um eine \BibTeX-Literaturdatenbank für \textsl{TUGBoat}-Artikel. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} + +Zeichensatzdateien mit der Namens\-endung \samp{.pk} werden +von Anzeige- oder Druckaufbereitungsprogrammen wie dvips und +\cmdname{xdvi} verwendet. Nachdem wir aufgrund der Voreinstellung keine \file{.pk}-Dateien verwenden, sondern die PS-Type1-Zeichensätze, die auf der DVD enthalten sind, wird auch keine \file{.pk}-Datei angezeigt. + +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} + /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\end{alltt} +Für diesen Zeichensatz (Teil der \acro{IPA}-Fonts% +\footnote{\acro{IPA}: International Phonetic Alphabet} +von der Universität von Washington) liegen noch keine +Type1-Umsetzungen vor und \code{.pk}-Dateien müssen generiert werden. Da unser voreingestellter \MF-Modus \code{ljfour} eine Auf"|lösung von 600\,dpi besitzt, +finden wir (nachdem er schon einmal gebraucht und automatisch +erzeugt wurde) eine entsprechende Instanz dieses Zeichensatzes. + +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} + +Durch die Angabe ">\code{-dpi=300}"< interessieren wir uns nur +für Zeichensätze mit der Auf"|lösung 300\,dpi. Es wurde keiner gefunden. +Programme wie dvips oder \cmdname{xdvi} lassen einen solchen fehlenden +Zeichensatz durch den Aufruf des Skripts \cmdname{mktexpk} mit entsprechenden +Parametern automatisch erzeugen. + +Als nächstes wenden wir uns den Header- und Konfigurationsdateien +von dvips zu. + +Zunächst suchen wir nach der Konfiguration für die \TeX-Unterstützung, +dem Prolog \file{tex.pro}. Danach suchen wir die allgemeine Konfigurationsdatei +(\file{config.ps}) und schließlich die \PS-Zeichensatzzuordnungsdatei +\file{psfonts.map}. Dateien dieser Art haben seit der 2004er-Version der {\TL} ihre eigenen Suchpfade und einen neuen Aufbewahrungsort im \OnCD{texmf}-Baum. Da die Namens\-endung \code{.ps} nicht eindeutig ist, +müssen wir den gewünschten Typ (\code{dvips config}) +für die Datei \file{config.ps} spezifizieren. + +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +Jetzt suchen wir nach den Dateien für den \PS-Zeichensatz ">URW Times"<. +Nach dem Namensschema von Karl~Berry beginnen die Namen mit ">\texttt{utm}"<. +Zunächst suchen wir die Konfigurationsdatei, die den Namen der +Zeichensatzzuordnungsdatei enthält. + +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} + +Diese Datei enthält folgende Anweisung: + +\begin{alltt} + p +utm.map +\end{alltt} + +Die angegebene Datei \file{utm.map} wollen wir als nächstes suchen: + +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} + +Diese Zuordnungsdatei wird im Unterverzeichnis \file{urw} bei den +Hilfsdateien für dvips gefunden. Sie enthält die Dateinamen der +Type1-PS-Zeichensätze, die für URW Times benutzt werden. Ein +kleiner Auszug aus dieser Datei: + +\begin{alltt} + utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} + /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\end{alltt} + +Diese Beispiele sollten deutlich gemacht haben, wie leicht bestimmte Dateien +im \TeX-Dateibaum gefunden werden können. Dies ist sehr wichtig, wenn Sie +den Verdacht haben, dass eine falsche Version einer Datei verwendet wird: +Sie lassen sich einfach die verwendete Datei von \cmdname{kpsewhich} +anzeigen. + +\subsection{Fehlersuche} +\label{sec:debugging} + +\label{fig:dvipsdbga} +\label{fig:dvipsdbgb} +\label{fig:dvipsdbgc} + + +\section{Einstellungen zur Laufzeit} + +\chapter{Danksagungen} + +\chapter{Geschichtliches}\label{sec:history} + +\section{Vergangenheit} + +\section{2003} + +\section{2004} + +\section{2005} + +\section{2006--2007} + +\section{2008} + +\section{2009} + +\section{2010} + +\section{2011} + +\section{2012} + +\section{Gegenwart (\tlcurrentyear)}\label{tlcurrent} +\label{sec:tlcurrent} +\label{sec:2012news} + +\section{Zukunft} + + + + + +\end{document} + + + +\\label\{.*\} \ No newline at end of file diff --git a/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.css b/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.css new file mode 100644 index 00000000000..c60c4d99423 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.css @@ -0,0 +1,474 @@ + +/* start css.sty */ +.ec-lmri-12x-x-172{font-size:206%; font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmss-17{font-size:170%; font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmr-12{font-size:120%;} +.ec-lmtt-12{font-size:120%; font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmr-9{font-size:90%;} +.ec-lmri-9{font-size:90%; font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmri-9{ font-style:italic;} +.ec-lmtt-9{font-size:90%; font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-9{font-size:90%; font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmbx-9{ font-weight: bold;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmr-8{font-size:80%;} +.ec-lmtt-8{font-size:80%; font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmr-7{font-size:70%;} +.ec-lmtt-8x-x-87{font-size:69%; font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +p.noindent { text-indent: 0em } +td p.noindent { text-indent: 0em; margin-top:0em; } +p.nopar { text-indent: 0em; } +p.indent{ text-indent: 1.5em } +@media print {div.crosslinks {visibility:hidden;}} +a img { border-top: 0; border-left: 0; border-right: 0; } +center { margin-top:1em; margin-bottom:1em; } +td center { margin-top:0em; margin-bottom:0em; } +.Canvas { position:relative; } +img.math{vertical-align:middle;} +li p.indent { text-indent: 0em } +li p:first-child{ margin-top:0em; } +li p:last-child, li div:last-child { margin-bottom:0.5em; } +li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } +.enumerate1 {list-style-type:decimal;} +.enumerate2 {list-style-type:lower-alpha;} +.enumerate3 {list-style-type:lower-roman;} +.enumerate4 {list-style-type:upper-alpha;} +div.newtheorem { margin-bottom: 2em; margin-top: 2em;} +.obeylines-h,.obeylines-v {white-space: nowrap; } +div.obeylines-v p { margin-top:0; margin-bottom:0; } +.overline{ text-decoration:overline; } +.overline img{ border-top: 1px solid black; } +td.displaylines {text-align:center; white-space:nowrap;} +.centerline {text-align:center;} +.rightline {text-align:right;} +div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } +.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.fbox {display:table} +div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.minipage{width:100%;} +div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} +div.center div {text-align: left;} +div.flushright, div.flushright div.flushright {text-align: right;} +div.flushright div {text-align: left;} +div.flushleft {text-align: left;} +.underline{ text-decoration:underline; } +.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } +.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +.framebox-c {text-align:center;} +.framebox-l {text-align:left;} +.framebox-r {text-align:right;} +span.thank-mark{ vertical-align: super } +span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +.tabbing-right {text-align:right;} +span.TEX {letter-spacing: -0.125em; } +span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} +a span.TEX span.E {text-decoration: none; } +span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} +span.LATEX span.TEX{ position:relative; left: -0.4em; } +div.float, div.figure {margin-left: auto; margin-right: auto;} +div.float img {text-align:center;} +div.figure img {text-align:center;} +.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} +.marginpar p{margin-top:0.4em; margin-bottom:0.4em;} +table.equation {width:100%;} +.equation td{text-align:center; } +td.equation { margin-top:1em; margin-bottom:1em; } +td.equation-label { width:5%; text-align:center; } +td.eqnarray4 { width:5%; white-space: normal; } +td.eqnarray2 { width:5%; } +table.eqnarray-star, table.eqnarray {width:100%;} +div.eqnarray{text-align:center;} +div.array {text-align:center;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.pmatrix img{vertical-align:middle;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.bar-css {text-decoration:overline;} +img.cdots{vertical-align:middle;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +div.array {text-align:center;} +.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} +.index-item, .index-subitem, .index-subsubitem {display:block} +div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} +div.caption span.id{font-weight: bold; white-space: nowrap; } +h1.partHead{text-align: center} +p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} +.subparagraphHead, .likesubparagraphHead { font-weight: bold;} +.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} +.verse{white-space:nowrap; margin-left:2em} +div.maketitle {text-align:center;} +h2.titleHead{text-align:center;} +div.maketitle{ margin-bottom: 2em; } +div.author, div.date {text-align:center;} +div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } +div.author{white-space: nowrap;} +.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } +.abstract p {margin-left:5%; margin-right:5%;} +div.abstract {width:100%;} +.alltt P { margin-bottom : 0em; margin-top : 0em; } +.alltt { margin-bottom : 1em; margin-top : 1em; } +.figure img.graphics {margin-left:10%;} +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +div.longtable{text-align:center;} +.uline{ text-decoration:underline; } +.uuline{ text-decoration:underline; } +span.sout {text-decoration: line-through } +span.xout {text-decoration: line-through } +span.uwave {text-decoration:underline } +P.fancyvrb {white-space: nowrap; margin:0em;} +div#fancyvrb1{ border-top: solid 0.4pt; } +div#fancyvrb1{ border-left: solid 0.4pt; } +div#fancyvrb1{ border-bottom: solid 0.4pt; } +div#fancyvrb1{ border-right: solid 0.4pt; } +div#fancyvrb2{ border-top: solid 0.4pt; } +div#fancyvrb2{ border-left: solid 0.4pt; } +div#fancyvrb2{ border-bottom: solid 0.4pt; } +div#fancyvrb2{ border-right: solid 0.4pt; } +div#fancyvrb3{ border-top: solid 0.4pt; } +div#fancyvrb3{ border-left: solid 0.4pt; } +div#fancyvrb3{ border-bottom: solid 0.4pt; } +div#fancyvrb3{ border-right: solid 0.4pt; } +div#fancyvrb4{ border-top: solid 0.4pt; } +div#fancyvrb4{ border-left: solid 0.4pt; } +div#fancyvrb4{ border-bottom: solid 0.4pt; } +div#fancyvrb4{ border-right: solid 0.4pt; } +/* end css.sty */ + diff --git a/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.html b/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.html new file mode 100644 index 00000000000..19e8a7633d9 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.html @@ -0,0 +1,2192 @@ +Anleitung zu TE X Live + TE X Live 2012 + Karl Berry (Herausgeber) + http://tug.org/texlive/ + Verantwortlich für die deutsche Ausgabe + Uwe Ziegenhagen, ziegenhagen@gmail.com + (DANTE e. V.) + Juni 2012 + + + INHALTSVERZEICHNIS 2 + Inhaltsverzeichnis +1 Einleitung 4 + 1.1 TE X Live und die TE X-Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 + 1.2 Unterstützung verschiedener Betriebssysteme . . . . . . . . . . . . . . . . . . . . . . . . 4 + 1.3 Einsatzmöglichkeiten des TE X Live-Systems der TE X Collection . . . . . . . . . . . . . . 4 + 1.4 TE X Live und Sicherheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 + 1.5 Hilfe zu TE X, LATE X & Co . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 + 2 Überblick zum TE XLive-System 6 + 2.1 Die TE X Collection: TE X Live, proTE Xt, MacTE X . . . . . . . . . . . . . . . . . . . . . . 6 + 2.2 Basisverzeichnisse von TE X Live . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 + 2.3 Überblick über die vordefinierten texmf-Bäume . . . . . . . . . . . . . . . . . . . . . . . 7 + 2.4 TE X-Erweiterungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 + 2.5 Weitere Programme von TE X Live . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 + 2.6 Fonts in TE X Live . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 + 3 Installation von TE XLive 10 + 3.1 Das Installationsprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 + 3.1.1 Unix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 + 3.1.2 MacOSX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 + 3.1.3 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 + 3.1.4 Cygwin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 + 3.1.5 Installation im Textmodus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 + 3.1.6 Installation mit Benutzeroberfläche im Expertenmodus . . . . . . . . . . . . . . . 12 + 3.1.7 Installation mit einfacher Benutzeroberfläche (wizard mode) . . . . . . . . . . . . 12 + 3.2 Benutzung des Installationsprogramms . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 + 3.2.1 Auswahl der Binaries (nur für Unix) . . . . . . . . . . . . . . . . . . . . . . . . . 12 + 3.2.2 Auswahl der zu installierenden Komponenten . . . . . . . . . . . . . . . . . . . . 13 + 3.2.3 Verzeichnisse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 + 3.2.4 Optionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 + 3.3 Kommandozeilenoptionen für die Installation . . . . . . . . . . . . . . . . . . . . . . . . 17 + 3.3.1 Die Option repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 + 3.4 Aufgaben im Anschluss an die Installation . . . . . . . . . . . . . . . . . . . . . . . . . . 17 + 3.4.1 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 + 3.4.2 Unix, falls symbolische Links angelegt wurden . . . . . . . . . . . . . . . . . . . . 18 + 3.4.3 Umgebungsvariablen für Unix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 + 3.4.4 Systemweites Setzen von Umgebungsvariablen . . . . . . . . . . . . . . . . . . . . 18 + 3.4.5 Internet-Updates nach der Installation von DVD . . . . . . . . . . . . . . . . . . 18 + 3.4.6 Font configuration for XeTE X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 + 3.4.7 ConTE Xt Mark IV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 + 3.4.8 Integrieren lokaler bzw. nutzer-spezifischer Makros . . . . . . . . . . . . . . . . . 19 + 3.4.9 Integrieren von Schriften . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 + 3.5 Testen der Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 + 3.6 Hinweise auf weitere Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 + 4 Installation für mehrere Maschinen oder Nutzer (Netz-Installation) 22 + 5 Portables TE X Live auf DVD oder USB-Stick 22 + 6 tlmgr: Installation verwalten 23 + 6.1 tlmgr im grafischen Modus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 + 6.2 Beispiel zur Verwendung von tlmgr über Kommandozeile . . . . . . . . . . . . . . . . . . 24 + 7 Hinweise zu Windows 25 + 7.1 Windows-spezifische Dinge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 + 7.2 Zusätzlich enthaltene Programme unter Windows . . . . . . . . . . . . . . . . . . . . . . 26 + 7.3 Nutzerprofile unter Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 + 7.4 Die Windows-Registry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 + 7.5 Windows Permissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 + 7.6 Erhöhen des maximal verfügbaren Speichers unter Windows und Cygwin . . . . . . . . 27 + + + ABBILDUNGSVERZEICHNIS 3 + 8 Anleitung zum Web2C-System 28 + 8.1 Dateisuche mit der Kpathsea-Bibliothek . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 + 8.1.1 Bestandteile von Pfadkomponenten . . . . . . . . . . . . . . . . . . . . . . . . . . 29 + 8.1.2 Konfigurationsdateien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 + 8.1.3 Expansion von Pfadkomponenten . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 + 8.1.4 Expansion der Voreinstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 + 8.1.5 Expansion geschweifter Klammern . . . . . . . . . . . . . . . . . . . . . . . . . . 31 + 8.1.6 Expansion von Unterverzeichnissen . . . . . . . . . . . . . . . . . . . . . . . . . . 31 + 8.1.7 Liste der Sonderzeichen und ihre Bedeutung: eine Zusammenfassung . . . . . . . 31 + 8.2 Dateinamen-Datenbanken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 + 8.2.1 Die ls-R-Datenbank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 + 8.2.2 kpsewhich: Dateisuche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 + 8.2.3 Anwendungsbeispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 + 8.2.4 Fehlersuche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 + 8.3 Einstellungen zur Laufzeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 + 9 Danksagungen 38 + 10 Geschichtliches 39 + 10.1 Vergangenheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 + 10.2 2003 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 + 10.3 2004 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 + 10.4 2005 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 + 10.5 2006–2007 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 + 10.6 2008 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 + 10.7 2009 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 + 10.8 2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 + 10.9 2011 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 + 10.10Gegenwart (2012) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 + 10.11Zukunft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 + Abbildungsverzeichnis + 1 Hauptmenü des Installationsprogramms (GNU/Linux). . . . . . . . . . . . . . . . . . . . 12 + 2 Grafische Installation im Expertenmodus (GNU/Linux). . . . . . . . . . . . . . . . . . . 13 + 3 Wizard mode (Windows) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 + 4 Auswahlmenü für Binaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 + 5 Menü zur Auswahl des Schemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 + 6 Menü zur Aus- oder Abwahl von Collections. . . . . . . . . . . . . . . . . . . . . . . . . 16 + 7 Auswahlmenü für weitere Optionen (Unix). . . . . . . . . . . . . . . . . . . . . . . . . . 16 + 8 tlmgr im GUI-Modus. Hauptfenster nach dem Klicken auf »Load«. . . . . . . . . . . . . 23 + 9 tlmgr im GUI-Modus: Allgemeine Optionen . . . . . . . . . . . . . . . . . . . . . . . . . 24 + 10 tlmgr im GUI-Modus: Optionen zur Papiergröße . . . . . . . . . . . . . . . . . . . . . . 24 + 11 PS_View: sogar sehr extreme Vergrößerungen sind möglich. . . . . . . . . . . . . . . . . 26 + 12 Suche nach Konfigurationsdateien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 + 13 Suche nach Prologdateien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 + 14 Suche nach Font-Dateien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 + + + 1 EINLEITUNG 4 + 1 Einleitung +1.1 TE X Live und die TE X-Collection +Diese Anleitung beschreibt das TE X Live-System. Die TE X Live Distribution enthält TE X/LATE X- +Systeme für Linux, verschiedene UNIX-Plattformen, Mac OS X und Windows. + Wahrscheinlich haben Sie TE X Live auf einem von zwei Wegen bezogen, entweder per direktem +Download von TE X Live oder als Teil der DVD TE X Collection, die von vielen TE X-Vereinen (u. a. +DANTE e. V.) an ihre Mitglieder verschickt werden und in Deutschland über die Fachbuchhandlung +Lehmanns (http://www.lob.de) vertrieben wird. Abschnitt 2.1 beschreibt kurz den Inhalt der TE X +Collection-DVD. + Sowohl TE X Live als auch die TE X Collection sind durch das Engagement vieler Freiwilliger aus +vielen TE X-Vereinen entstanden. Im Übrigen beschränkt sich diese Anleitung auf TE X Live an sich. + TE X Live enthält lauffähige Versionen von TE X, LATE X2ε, ConTE Xt, METAFONT, MetaPost, BibTE X +und vielen anderen Programmen, sowie eine umfassende Auswahl an Makros, Zeichensätzen und Be- +schreibungen, die gemäß der Standard-TE X-Verzeichnisstruktur (TDS) abgelegt sind. + Eine kurze Zusammenfassung der wesentlichen Änderungen der aktuellen TE X Live-Version gegen- +über der Vorgängerversion finden Sie im Abschnitt 10.10 auf Seite 46. +1.2 Unterstützung verschiedener Betriebssysteme +TE X Live enthält direkt ausführbare Programme für viele Unix-basierte Betriebssysteme, insbesondere +GNU/Linux und Mac OS X und Cygwin. Selbst wenn für Ihr Unix-System wider Erwarten keine ausführ- +baren Programme enthalten sind, sollten Sie in der Lage sein, aus den mitgelieferten Programm-Quellen +ein funktionierendes TE X-System zu kompilieren. + Bezüglich Microsoft Windows werden Versionen ab Windows XP unterstützt. TE X Live ist unter +Windows 95/98, ME und NT nicht mehr lauffähig, Windows 2000 sollte funktionieren. Es existieren +zwar keine 64-Bit-Versionen der Programme, allerdings sollten die 32-Bit-Programme problemlos auf +64-Bit-Systemen funktionieren. +1.3 Einsatzmöglichkeiten des TE X Live-Systems der TE X Collection +Sie können das TE X Live-System wahlweise von der DVD oder über das Internet (http://tug.org/texlive/acquire.html) +installieren. Der Net Installer ist ein kleines Programm, das die benötigten Teile aus dem Internet +nachlädt. Dieser Weg bietet sich an (eine schnelle und stabile Internetverbindung voraus gesetzt), wenn +Sie kein komplettes TE X Live installieren wollen, sondern Ihr System nur aus bestimmten Paketen +bestehen soll. + Wenn Sie die DVD besitzen (oder das ISO-Image der DVD herunter geladen haben – dieses kann auf +einigen Systemen sogar direkt als virtuelles Medium “gemountet” werden), können Sie TE X Live nach +Wunsch auf Ihrer Festplatte installieren. Im Gegensatz zu früher ist TE X Live nicht mehr direkt von +der DVD lauffähig. Sie können aber eine portable Version z. B. auf einem USB-Stick installieren, wie im +Abschnitt 5 beschrieben. + Beide Methoden werden in den Abschnitten zur Installation beschrieben. Hier daher nur die kurze +Zusammenfassung: + ∙ Das Hauptinstallationsskript ist install-tl. Es bietet eine grafische Benutzeroberfläche (GUI) für + die Standardinstallation (den sogenannten “wizard mode”), einen Textmodus und eine grafische + Oberfläche im Expertenmodus. Unter Windows ist der grafische “wizard mode” der Standard, auf + allen anderen Systemen ist es der Textmodus. Durch die Optionen -gui=wizard, -gui=text und + -gui=perltk können Sie gezielt auswählen, ob das Installationsprogramm im »wizard mode«, + Textmodus oder mit der grafischen Oberfläche im Expertenmodus starten soll. + ∙ TE X Live installiert u. a. den »TE X Live Manager« mit dem Namen tlmgr. Auch dieser unter- + stützt Text- und GUI-Mode. Mit diesem Programm können Sie einerseits Pakete von TE X Live + installieren oder deinstallieren, andererseits TE X Live konfigurieren. +1.4 TE X Live und Sicherheit +Nach bestem Wissen und Gewissen kann man sagen, dass die TE X-Kernprogramme selbst sehr robust +sind. Dieses Maß an Robustheit und Sicherheit wird jedoch möglicherweise nicht von allen Programmen +erreicht, die Teil von TE X Live sind. Daher gilt für TE X Live das, was auch für alle anderen Programme + + + 1 EINLEITUNG 5 + gilt: Vorsicht bei der Verarbeitung von Quellcode, den man nicht genau kennt, zur maximalen Sicherheit + sollte man in diesen Fällen die entsprechenden Dateien in einem neuen Unterverzeichnis verarbeiten. + Die Sorge um die Sicherheit gilt vor allem für MS Windows, da Windows-Programme zuerst im + aktuellen Verzeichnis suchen, egal wie Pfad-Angaben gesetzt sind. Theoretisch ermöglicht dies eine + Reihe von Angriffsszenarien. Viele Sicherheitslücken in Programmen von TE X Live wurden geschlossen, + andere bestehen auch weiterhin, besonders im Umgang mit Drittanbieter-Software. + Aus diesem Grund empfehlen wir bei der Verarbeitung von unbekanntem Quellcode, auf das Vorhan- + densein von ausführbaren Dateien im Quellcode-Verzeichnis zu achten. Diese sollten nicht vorhanden + sein und erst recht nicht durch die Verarbeitung von TE X-Quellcode erzeugt worden sein. + TE X und seine Begleitprogramme können in Dateien schreiben, wenn ein Dokument übersetzt wird. + Diese Funktion kann auch missbräuchlich eingesetzt werden. Daher ist bei der Verarbeitung von unbe- + kannten Quellen die Nutzung eines neuen Unterverzeichnisses der sicherste Weg! +1.5 Hilfe zu TE X, LATE X & Co +Die TE X-Gemeinschaft ist ebenso aktiv wie hilfsbereit, und es wird praktisch jede ernst gemeinte Frage +beantwortet. Diese Hilfe ist allerdings nicht formal organisiert, sondern wird von Freiwilligen in ihrer +Freizeit geleistet. Es ist daher wichtig, dass Sie vor einer Fragestellung Ihre »Hausaufgaben« gemacht +haben. + Falls Sie auf eine garantierte kommerzielle Unterstützung angewiesen sind oder eine solche be- +vorzugen, sollten Sie die Finger komplett vom TE X Live-System lassen und in der Aufstellung unter +http://tug.org/interest.html#vendors nach einem geeigneten Händler suchen. + Die folgende Liste stellt die leicht zugänglichen Hilfe-Quellen in der empfohlenen Reihenfolge vor: + Einführung: + Wenn Sie TE X-Anfänger sind und eine englische Einführung in das System benötigen, sollten Sie + das WWW-Dokument http://tug.org/begin.html lesen. + Für deutschsprachige LATE X-Anfänger ist die »LATE X2ε-Kurzbeschreibung« von großem Nutzen + (texmf-doc/doc/german/lshort-german/l2kurz.pdf). + TE X-FAQs: + Die TE X-FAQ (im Deutschen de-tex-faq »Fragen und Antworten [FAQ] über das Textsatzsystem + TeX und DANTE, Deutschsprachige Anwendervereinigung TeX e.V.«) ist ein riesiges Kompendium + mit Fragen (und Antworten) aller Art, von der einfachsten Anfängerfrage bis zu Expertenwissen. + Sie finden die deutschsprachige FAQ unter http://www.dante.de/FAQ.html. + Des Weiteren existiert eine englischsprachige FAQ-Sammlung (texmf-dist/doc/generic/ + FAQ-en/html/index.html), die auch im Internet verfügbar ist (http://www.tex.ac.uk/faq). + Bitte nutzen Sie bei Problemen zuerst diese beiden Möglichkeiten. + TE X-Catalogue: + Wenn Sie auf der Suche nach einem bestimmten Paket, Font, Programm u. ä. sind, empfiehlt + sich ein Blick in den TE X-Catalogue. Dieser Katalog enthält eine Liste aller verfügbaren TE X- + spezifischen Dinge (siehe http://www.ctan.org/tex-archive/help/Catalogue/catalogue.html). + TE X-WWW-Ressourcen: + Im WWW-Dokument http://tug.org/interest.html finden Sie eine große Anzahl TE X- + spezifischer Links zu Büchern, Handbüchern und Artikeln zu allen Aspekten des TE X-Systems. + Archive: + Ein Forum für die Hilfestellung sind die Usenet-News-Gruppen news:de.comp.text.tex + (Deutsch), news:comp.text.tex (Englisch) und die Mailing-Liste texhax@tug.org. In deren + Archiven finden sich die Fragen und Antworten vieler Jahre. Ihre Suche können Sie in Google + beispielsweise mit http://groups.google.de/group/de.comp.text.tex/topics starten – oder + auch in http://tug.org/mail-archives/texhax/ durchführen. + Im Allgemeinen ist es recht erfolgversprechend, eine generelle Suche über Google http://www.google.de/ + durchzuführen (entweder im WWW allgemein oder in den News-Gruppen); dies insbesondere, + wenn es sich um Fragen über PostScript/PDF, Ghostscript u. ä. handelt. + Online-Foren: http://tex.stackexchange.com, http://golatex.de, http://mrunix.de/forums/forumdisplay.php?f=38 + sind nur einige Online-Foren, die Hilfe zu TE X & LATE X anbieten. + + + 2 ÜBERBLICK ZUM TE XLIVE-SYSTEM 6 + Auch hier gilt: Je mehr Mühe Sie sich mit dem Stellen von Fragen geben, desto besser kann Ihnen + geholfen werden. + Fragen stellen: + Wenn Sie mit den oben aufgezeigten Möglichkeiten immer noch keine Antwort auf + Ihre Frage gefunden haben, können Sie die Frage auch in einer News-Gruppe stel- + len (neudeutsch: posten). Hier bietet sich für den deutschsprachigen Raum die News- + Gruppe news:de.comp.text.tex an. Benutzen Sie am besten für Anfragen Google + (http://groups.google.de/group/de.comp.text.tex/topics) oder einen Newsreader. Fragen + an die englischsprachige Gruppe news:comp.text.tex (bei Google: http://groups.google.de/group/comp.text.tex/topics) + sollten Sie bitte nur auf Englisch stellen. + Zusätzlich existieren E-Mail-Listen, wobei hier die deutschsprachige Liste TeX-D-L@listserv.dfn.de + zu nennen ist (das englischsprachige Äquivalent ist texhax@tug.org). Darüber hinaus bietet sich + für Mitglieder von DANTE e.V. der Beraterkreis an (beraterkreis@dante.de). Wie Sie sich + in die E-Mail-Liste TeX-D-L eintragen können, finden Sie in der FAQ unter »1.3.2 Was ist + TeX-D-L?«. + Bevor Sie eine Frage absenden, lesen Sie bitte die entsprechenden Einträge der FAQ zum + Thema »Wie stelle ich eine Frage in einer Newsgroup, damit ich mit hoher Wahrscheinlichkeit + eine Antwort bekomme?«. So z. B. »1.3.1 Was ist ‘de.comp.text.tex’?« und »1.3.7 Was + sollte ich gelesen haben, bevor ich eine Frage in ‘de.comp.text.tex’ oder der + Diskussionsliste TeX-D-L stelle?« oder auch http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion. + Mithilfe: + Wenn Sie einen Fehler melden wollen oder Empfehlungen und Kommentare zur TE X Live- + Verteilung, -Installation oder -Dokumentation geben möchten, sollten Sie die E-Mail-Liste + tex-live@tug.org nutzen. Korrekturen, Anmerkungen und Erweiterungen für die deutsche + Übersetzung können Sie auch an cdrom@dante.de oder schriftlich an die Geschäftsstelle von + DANTE e.V. senden. + Fragen zu Programmen, die Sie in der TE X Collection finden, sollten Sie besser auf einer der oben + genannten Mailing-Listen stellen oder direkt an den Programmautor richten. + Auf der anderen Seite können auch Sie mit Ihrem Wissen helfen. Die News-Gruppen news:de.comp.text.tex + (in Deutsch), news:comp.text.tex (in Englisch) und die Mailing-Liste TeX-D-L@listserv.dfn.de + (Deutsch) und texhax@tug.org (Englisch) stehen allen offen. Wenn Sie also dort mitlesen, scheuen Sie + sich nicht, Fragen, zu denen Sie eine Antwort wissen, zu beantworten und damit anderen zu helfen. +2 Überblick zum TE X Live-System +In diesem Abschnitt beschreiben wir die Struktur und den Inhalt des TE X Live-Systems und der über- +geordneten TE X Collection-DVD. +2.1 Die TE X Collection: TE X Live, proTE Xt, MacTE X +Die DVD »TE X Collection« besteht aus: + TE X Live Ein komplettes TE X-System, wahlweise zur Installation auf einer Festplatte oder ei- + nem Wechselmedium (USB-Stick). Die Homepage des TE X Live-Projektes finden Sie unter + http://tug.org/texlive/. + MacTE X für Mac OS X. Dieses enthält das komplette TE X Live, bietet zusätzlich aber ein Installa- + tionsprogramm für Mac und einige Zusatzprogramme. Nähere Informationen finden Sie auf der + Homepage von MacTE X unter http://tug.org/mactex/. + proTE Xt basiert auf der MiKTE X-Distribution für Windows. Es enthält noch einige Zusatzpro- + gramme und stellt eine einfache Installationsanleitung bereit, die Schritt für Schritt den Weg + zu einem kompletten TE X-System beschreibt. Die Homepage von proTE Xt findet sich unter + http://tug.org/protext. + CTAN Weiterhin ist auf der DVD ein Ausschnitt der TE X-bezogenen Software enthalten, die sich in + CTAN, dem Comprehensive TE X Archive Network (http://www.ctan.org) befinden. + + + 2 ÜBERBLICK ZUM TE XLIVE-SYSTEM 7 + texmf-extra In diesem Verzeichnis befinden sich zusätzliche Pakete, die kein Teil von TE X Live sind. + CTAN, protext und texmf-extra unterliegen nicht denselben Lizenzregeln wie TE X Live. Daher + können für Teile hieraus andere Lizenzbedingungen bezüglich einer Weiterverteilung oder Modifikation + gelten, die Sie unbedingt beachten sollten! +2.2 Basisverzeichnisse von TE X Live +In diesem Abschnitt beschreiben wir die Basisverzeichnisse einer TE X Live-Installation. + bin ausführbare Programme des TE X-Systems. Jeweils für die verschiedenen Rech- + nerplattformen in Unterverzeichnissen zusammengefasst + readme-*.dir in diesen Verzeichnissen (!) befinden sich Text- bzw. HTML-Dateien in ver- + schiedenen Sprachen, die als schneller Einstieg in TE X Live empfehlenswert + sind. + source Quelldateien aller Programme inklusive der Web2C-Quellen für die TE X- + Pakete + texmf Verzeichnisbaum für Programme mit zugehörigen Hilfsdateien und Anleitun- + gen; enthält keine TE X-Formate und Pakete (siehe TEXMFMAIN im nächsten + Abschnitt). + texmf-dist Hauptbaum mit Formaten und Paketen (siehe TEXMFDIST im nächsten Ab- + schnitt). + tlpkg Skripte, Programme und Daten die für die Installation benutzt werden, sowie + einige Dinge, die speziell für Windows benötigt werden. +Zusätzlich zu den oben aufgeführten Verzeichnissen finden Sie im Wurzelverzeichnis der Distribution +auch noch die Installationsskripte. + Wenn Sie nach Dokumentation suchen, bietet Ihnen die Datei doc.html wichtige Links. Die Do- +kumentation für Programme (Handbücher, »man pages«, GNU-info-Dateien) beispielsweise finden Sie +im Verzeichnis texmf/doc. Ähnliches gilt für die Dokumentation der TE X-Pakete und -Formate im +Verzeichnis texmf-dist/doc. + Benutzen Sie das Programm texdoc, wenn Sie auf der Suche nach irgendeiner Dokumentationsdatei +sind. Hilfreich in diesem Zusammenhang könnte auch die Link-Sammlung doc.html im Wurzelverzeich- +nis sein. + Die Anleitung zu TE X Live ist in verschiedenen Sprachen verfügbar: + ∙ Tschechisch/Slowakisch: texmf/doc/czechslovak/texlive-cz/live + ∙ Deutsch: texmf/doc/german/texlive-de/texlive-de (dieses Dokument) + ∙ Englisch: texmf/doc/english/texlive-en/texlive-en + ∙ Französisch: texmf/doc/french/texlive-fr/texlive-fr + ∙ Italienisch: texmf/doc/italian/texlive-it/texlive-it + ∙ Polnisch: texmf/doc/polish/texlive-pl/texlive-pl + ∙ Russisch: texmf/doc/russian/texlive-ru/texlive-ru + ∙ Serbisch: texmf/doc/serbian/texlive-sr/texlive-sr + ∙ Chinesisch: texmf/doc/chinese/texlive-zh-cn/texlive-zh-cn +2.3 Überblick über die vordefinierten texmf-Bäume +Dieser Abschnitt listet die vordefinierten texmf-Bäume, die vom System benutzt werden, und deren +Bedeutung auf. Das Kommando tlmgr conf zeigt Ihnen die aktuellen Einstellungen dieser Variablen +an. + TEXMFMAIN In diesem Baum befinden sich wichtige Teile des Systems, wie Konfigurationsdateien, Hilfs- + programme und die Dokumentation. + TEXMFDIST In diesem Baum befinden sich die wesentlichen Makro-Pakete, Fonts usw. Dieser Baum ent- + hält systemunabhängige Daten, die prinzipiell von jedem TDS-kompatiblem TE X-System nutzbar + sein sollten. + TEXMFLOCAL Dieser Baum ist für Ergänzungen oder Aktualisierungen von Makros, Fonts etc. gedacht, + die Administratoren für alle Nutzer installieren. + + + 2 ÜBERBLICK ZUM TE XLIVE-SYSTEM 8 + TEXMFHOME In diesem Baum können einzelne Nutzer Ergänzungen oder Aktualisierungen von Makros, + Fonts etc. ablegen. Standardmäßig befindet sich dieser Baum unterhalb von $HOME, so dass andere + Nutzer von Änderungen hier nicht beeinflusst werden. + TEXMFCONFIG Dieser benutzerspezifische (!) Baum wird von den Hilfsprogrammen von TE X wie + texconfig, updmap und fmtutil verwendet. Standardmäßig befindet sich dieser Baum unterhalb + von $HOME, so dass andere Nutzer von Änderungen hier nicht beeinflusst werden. + TEXMFSYSCONFIG Systemweiter Baum, wird von den Hilfsprogrammen texconfig-sys, updmap-sys + und fmtutil-sys verwendet, so dass hier das Verhalten des TE X Live-Systems für alle Nutzer + beeinflusst werden kann. + TEXMFSYSVAR Dieser Baum wird von den systemweiten Hilfsprogrammen wie texconfig-sys, + updmap-sys und fmtutil-sys verwendet, um automatisch generierte Konfigurations-Dateien + abzulegen. + TEXMFVAR Dieser benutzerspezifische Baum wird von Hilfsprogrammen wie texconfig, updmap und + fmtutil benutzt, um automatisch generierte Konfigurations-Dateien abzulegen. + TEXMFCACHE Dieser Baum wird von ConTE Xt MkIV genutzt, um Cache-Daten abzulegen. + Der Standard der Verzeichnisstruktur von TE X Live sieht wie folgt aus: + Systemweites Wurzelverzeichnis kann TE X Live-Versionen aus mehreren Jahren beinhalten: + 2011 Eine Vorversion von TE X Live. + 2012 Die aktuelle Version. + bin + i386-linux GNU/Linux binaries + ... + universal-darwin Mac OS X binaries + win32 Windows binaries + texmf Hierauf verweist TEXMFMAIN. + texmf-dist TEXMFDIST + texmf-var TEXMFSYSVAR + texmf-config TEXMFSYSCONFIG + texmf-local TEXMFLOCAL, dieses Verzeichnis gilt für alle installierten TE X Live-Versionen (ak- + tuelle Version und Vorgängerversion), so dass hier durchgeführte lokale Änderungen über die + Jahre hinweg erhalten bleiben. + Home-Verzeichnis des Benutzers ($HOME oder %USERPROFILE%): + .texlive2011 Vom Nutzer privat erzeugte Dateien und Konfigurationsdaten der Vorversion. + .texlive2012 Vom Nutzer privat erzeugte Dateien und Konfigurationsdaten für die aktuelle + Version von TE X Live. + texmf-var TEXMFVAR + texmf-config TEXMFCONFIG + texmf TEXMFHOME Persönliche Makros, Fonts usw. des Nutzers. +2.4 TE X-Erweiterungen +Unter den TE X-Systemen der TE X Live befinden sich verschiedene TE X-Erweiterungen: + ε-TE X stellt bei 100%-iger Kompatibilität zum ursprünglichen TE X einen kleinen, aber mächtigen Satz + neuer Befehle bereit (für Makroexpansion, Character-Scanning, zusätzliche Klassen für »marks«, + erweiterte Debug-Möglichkeiten und andere). Zusätzlich gibt es noch die TE X--XE T-Erweiterungen + für den bidirektionalen Textsatz, wie er beispielsweise im Arabischen gebraucht wird. Im vorein- + gestellten Modus ist ε-TE X 100%-ig kompatibel mit dem »normalen« TE X. Die Dokumentation + zu ε-TE X finden Sie in der Datei texmf-dist/doc/etex/base/etex_man.pdf. + pdfTE X enthält die ε-TE X Erweiterungen und erlaubt – neben der Ausgabe in PDF-Dateien – auch + die Erstellung von DVI-Dateien. Für die meisten TE X-Formate (wie etex, latex, pdflatex) wird + tatsächlich pdfTE X aufgerufen. Die Webseite von pdfTE X lautet http://www.pdftex.org. Die + Dokumentation zu pdfTE X finden Sie unter texmf-dist/doc/pdftex/manual/pdftex-a.pdf. In + + + 2 ÜBERBLICK ZUM TE XLIVE-SYSTEM 9 + der Datei texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex finden Sie ein Anwen- + dungsbeispiel. Das LATE X-Paket hyperref besitzt die Option pdftex mit der Möglichkeit für aktive + Querverweise (Hypertext) in PDF-Dateien. + LuaTE X befindet sich noch in Entwicklung und ist als zukünftiger Nachfolger von pdfTE X vorgese- + hen, zu dem es weitgehend abwärtskompatibel bleiben soll. Weiterhin soll es auch Aleph ersetzen, + auch wenn es nicht kompatibel dazu sein wird. Durch den enthaltenen Lua-Interpreter (siehe + http://www.lua.org/) können Probleme, die in TE X selbst nur mühsam lösbar sind, einfach + und elegant gelöst werden. Wird es unter dem Namen texlua aufgerufen, verhält es sich wie ein + eigenständiger Lua-Interpreter – und wird als solcher in vielen Skripten von TE X Live bereits be- + nutzt. Für weitere Informationen siehe http://www.luatex.org/ und texmf-dist/doc/luatex/ + luatexref-t.pdf. + XeTeX bietet die Unterstützung von Unicode-Zeichensätzen und OpenType-Schriften durch diverse + zusätzliche Bibliotheken. Mehr Informationen sind unter http://tug.org/xetex verfügbar. + Ω (Omega) ist ein TE X-System, das intern mit Unicode (16-Bit-Unicode-Zeichen) arbeitet und da- + mit das gleichzeitige Arbeiten mit nahezu allen auf der Welt eingesetzten Schriften und deren + Zeichenkodierungen erlaubt. Außerdem werden über dynamisch geladene, sogenannte »Ω Transla- + tion Processes« (OTPs) Transformationen zur Verfügung gestellt, die beliebige Eingaben vor der + Bearbeitung durch TE X nach bestimmten Regeln umformen. Omega ist nicht länger als eigenstän- + diges Programm Teil von TE X Live; es wird nur noch Aleph mitgeliefert. + ℵ (Aleph) vereinigt die Ω- und ε-TE X-Erweiterungen. Eine Minimaldokumentation finden Sie in + texmf-dist/doc/aleph/base. +2.5 Weitere Programme von TE X Live +TE X Live enthält eine ganze Reihe unterstützender Programme wie + bibtex, bibtex8 Verwalten von Bibliographien + dviconcat Zusammenfügen von DVI-Dateien + dvips Konversion von DVI in PostScript + dviselect Ausschneiden von Seiten aus DVI-Dateien + dvipdfmx DVI-nach-PDF-Konverter (erzeugt auch CJK-konformes PDF aus DVI-Dateien mit Ω-Erwei- + terungen), als Alternative zu pdfTE X + dvilj Druckertreiber für die HP-LaserJet-Familie + makeindex, xindy Erzeugen eines Stichwortverzeichnisses + mpost METAFONT-ähnliches Grafikprogramm + psnup, psselect PostScript-Tools + pdfjam, pdfjoin PDF-Tools + tex4ht TE X-nach-HTML-Konvertierung + texexec, texmfstart ConTE Xt- und PDF-Prozessor + xdvi DVI-Bildschirmausgabe im X-Window-System +2.6 Fonts in TE X Live +TE X Live enthält eine Vielzahl qualitativ hochwertiger Vektorschriften. Weitere Informationen hier- +zu finden sich unter http://tug.org/fonts und texmf-dist/doc/fonts/free-math-font-survey/ +survey. + + + 3 INSTALLATION VON TE XLIVE 10 + 3 Installation von TE X Live +3.1 Das Installationsprogramm +Zur Installation von TE X Live benötigen Sie die TE X Collection-DVD oder den TE X Live Net Installer +aus dem Internet. +Net Installer: Verfügbar von CTAN, unter systems/texlive/tlnet; die URL http://mirror.ctan.org/systems/texlive/tlnet + leitet Sie automatisch an einen nahe gelegenen Server des CTAN-Netzwerks weiter. Sie können + entweder die Datei install-tl.zip herunter laden, die sowohl für Unix als auch Windows + gedacht ist, oder die deutlich kleinere Datei install-unx.tar.gz, die aber nur den Installer + für Unix enthält. Nach dem Auspacken finden Sie die Dateien install-tl (Unix) bzw. + install-tl.bat (Windows) im Verzeichnis install-tl. +TE X Collection DVD: Hier finden Sie die Dateien install-tl (Unix) bzw. install-tl.bat (Win- + dows) im Verzeichnis texlive der DVD. Unter Windows startet beim Einlegen der DVD im + Allgemeinen automatisch ein Programm, bei dem Sie unter anderem das Installationsprogramm + von TE X Live auswählen können. Die DVD erhalten Sie als Mitglied eines TE X-Vereins (wie + http://www.dante.de für den deutschsprachigen Raum, von der Fachbuchhandlung Lehmanns + (http://www.lob.de) oder international von der TE X Users Group (http://tug.org/store). + Alternativ können Sie das ISO-Image der TE X Live aus dem Internet laden. Nach der Installation + von der DVD können Sie die Internet-Aktualisierung aktivieren, für Details siehe Abschnitt 3.4.5. +Egal welche Quelle verwendet wird, es wird der gleiche Installer genutzt. Der hauptsächliche Unterschied +ist, dass man bei der Verwendung des Net-Installers die neuesten verfügbaren Pakete erhält. Bei der +Verwendung von DVD and ISO Images erhält man den Stand des letzten Major Release. Zwischen zwei +Major Releases gibt es keine Aktualisierung der DVD oder ISO Images. +Die folgenden Abschnitte beschreiben die Installation für die einzelnen Betriebssysteme. +3.1.1 Unix +Im Folgenden werden die Eingaben des Benutzers nach dem Kommando-Prompt ‘>’ fett dargestellt. + Das Skript install-tl ist ein Perl-Skript. Am Einfachsten starten Sie es auf einem Unix-System +in der Kommandozeile mit +> cd /pfad/zum/installer +> perl install-tl +(Sie können auch direkt perl /pfad/zum/installer/install-tl eingeben. Wenn Ihre DVD so ge- +mountet ist, dass als ausführbar gekennzeichnete Skripte direkt gestartet werden können, können Sie +im Verzeichnis des Installers auch direkt ./install-tl eingeben.) Eventuell müssen Sie Ihr Terminal- +fenster größer machen, damit Sie den kompletten Text sehen (Abb. 1) + Zum Installieren mit Hilfe einer Benutzeroberfläche (Abb. 2) verwenden Sie +> perl install-tl -gui +Hierfür muss das Perl/TK-Modul mit XFT-Unterstützung (diese ist bei GNU/Linux in der Regel mit +einkompiliert) auf Ihrem System installiert sein. + Alle Optionen des Installationsprogramms werden mit +> perl install-tl -help +angezeigt. + Wichtiger Hinweis zu den Zugriffsrechten unter Unix: Ihre aktuelle Einstellung von umask +wird bei der Installation von TE X Live berücksichtigt. Daher müssen Sie darauf achten, dass Sie hierfür +einen sinnvollen Wert einstellen (z. B. umask002), wenn Ihre Installation auch durch andere Nutzer als +Sie benutzt werden soll. Falls Sie unsicher sind, was dies bedeutet, schauen Sie bitte in die Anleitung +zu umask (indem Sie das Kommando man umask eingeben). + Besonderheit bei Cygwin: Im Gegensatz zu anderen Unix-basierten Systemen fehlen bei Cygwin +i. A. einige Programme, die vom Installationsprogramm von TE X Live vorausgesetzt werden. Bitte lesen +Sie den Abschnitt 3.1.4. + + + 3 INSTALLATION VON TE XLIVE 11 + 3.1.2 MacOSX +Wie in Abschnitt 2.1 bereits erwähnt wurde, existiert mit MacTE X (http://tug.org/mactex) ein eige- +nes TE X-System für Mac OS X. Dieses enthält ein komplettes TE X Live mit einem Installationsprogramm, +das in Funktionalität und Aussehen der üblichen Installation von Software unter Mac OS X entspricht. +Weiterhin sind einige Zusatzprogramme enthalten. + Wenn Sie die TE X Collection-DVD besitzen, empfiehlt es sich daher, MacTE X zu verwenden. +3.1.3 Windows +Wenn Sie den Net Installer verwenden, oder auf Ihrem System beim Einlegen der DVD das Installations- +programm nicht automatisch gestartet wurde, können Sie die Installation von TE X Live im Windows- +Explorer durch einen Doppelklick auf install-tl.bat (auf der DVD befindet sich diese Datei im +Verzeichnis texlive) starten. Falls Sie bei der Installation mehr Optionen benötigen (z. B. die Auswahl +spezifischer Paketgruppen), starten Sie stattdessen install-tl-advanced.bat. + Alternativ können Sie eine cmd-Eingabeaufforderung verwenden, dort in das Verzeichnis wechseln, +in dem sich das Installationsprogramm befindet und +D:\texlive\> install-tl +eingeben – ...> kennzeichnet hierbei den Eingabeprompt. Ihre Eingabe ist bold/fett dargestellt. + Alternativ können Sie die Installation auch aus einem beliebigen Verzeichnis heraus starten: +> D:\texlive\install-tl +wobei wir hier annehmen, dass sich ihre TE X Collection-DVD im Laufwerk D: befindet. Abb. 3 zeigt +das grafische Installationsprogramm im »wizard mode«, das unter Windows standardmäßig verwendet +wird. + Zur Installation im Textmodus verwenden Sie: +> install-tl -no-gui +Alle vorhandenen Optionen, die beim Starten des Installationsprogramms verwendet werden können, +werden wie folgt angezeigt: +> install-tl -help +3.1.4 Cygwin +Das Installationsskript von TE X Live unterstützt nur Version 1.7 von Cygwin. Bevor Sie mit der Instal- +lation von TE X Live beginnen, verwenden Sie das Installationsprogramm von Cygwin (setup.exe) um +die Pakete perl und wget gegebenenfalls nachzuinstallieren. Wir empfehlen weiterhin die Installation +folgender Cygwin-Pakete: + ∙ fontconfig [für XeTE X] + ∙ ghostscript [wird von verschiedenen Teilen von TE X Live benötigt] + ∙ libXaw7 [für xdvi] + ∙ ncurses [damit der ’clear’-Befehl im Installer funktioniert] +3.1.5 Installation im Textmodus +Abb. 1 zeigt den Eingangsbildschirm des Installationsprogramms im Textmodus (Standard unter Un- +ix). Dieser ist ein reiner Textmodus, was zur Folge hatt dass es keine Unterstützung zum Wandern +durch die einzelnen Menüpunkte mit den Cursor-Tasten gibt. Alle Befehle wie zum Beispiel die Aus- +wahl von Menüpunkten werden durch Eingabe der entsprechenden Befehle bzw. Menükürzel über die +Tastatur eingegeben und dann durch Drücken von Enter übernommen. Hierbei wird zwischen Groß- +und Kleinschreibung unterschieden! + Die Installation im Textmodus ist so spartanisch, weil dieser Modus überall funktionieren soll, selbst +mit einer Basisinstallation von Perl (für Windows enthältTE X Live eine Minimalversion von Perl). + + + 3 INSTALLATION VON TE XLIVE 12 + ______________________________________________________________________________________________________________________________________ + Installing TeX Live 2012 from: ... + Platform: i386-linux => ’Intel x86 with GNU/Linux’ + Distribution: inst (compressed) + ... + Detected platform: Intel x86 with GNU/Linux + + <B> platforms: 1 out of 19 + + <S> installation scheme (scheme-full) + 84 collections out of 85, disk space required: 3091 MB + + Customizing installation scheme: + <C> standard collections + <L> language collections + + <D> directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + <O> options: + [ ] use letter size instead of A4 by default + ... + + <V> set up for portable installation + + Actions: + <I> start installation to hard disk + <H> help + <Q> quit + Abbildung 1: Hauptmenü des Installationsprogramms (GNU/Linux). +3.1.6 Installation mit Benutzeroberfläche im Expertenmodus +Abb. 2 zeigt die grafische Installation im Expertenmodus unter GNU/Linux. Funktionell unterschei- +ded sich dieser nicht wesentlich vom Textmodus, außer dass natürlich mit Menüs, Auswahlboxen etc. +gearbeitet wird. + Dieser Modus muss explizit mit +> install-tl -gui=perltk +gestartet werden. +3.1.7 Installation mit einfacher Benutzeroberfläche (wizard mode) +Unter Windows wird automatisch diese einfache Form der Installation verwendet, der so genannte +»wizard mode« (Abb. 3). Dieser zeichnet sich dadurch aus, dass er TE X Live komplett installiert und +dabei vom Benutzer nur wenige Angaben gemacht werden müssen. Falls Sie eine individuell angepasste +Version von TE X Live benötigen, verwenden Sie daher bitte einen der beiden anderen Installationsmodi. + Um die Installation explizit im »wizard mode« zu starten (insbesondere unter Unix), verwenden Sie: +> install-tl -gui=wizard +3.2 Benutzung des Installationsprogramms +Das Installationsprogramm sollte (wenn Sie die vorherigen Abschnitte zum Aufbau von TE X Live und +der verwendeten Verzeichnisstruktur gelesen haben) weitgehend selbsterklärend sein. Trotzdem wollen +wir auf einige Punkte näher eingehen. +3.2.1 Auswahl der Binaries (nur für Unix) +Abb. 4 zeigt das Auswahlmenü für die Binaries der einzelnen Betriebssysteme im Textmodus. Im Allge- +meinen sollte hier schon das richtige System ausgewählt sein. Sie können aber problemlos Binaries für +verschiedene Systeme parallel auswählen. Dies bietet sich an, wenn Ihre Installation auf verschiedenen +Rechnern in einem heterogenen Netzwerk sichtbar ist und von dort aus benutzt werden soll. + + + 3 INSTALLATION VON TE XLIVE 13 + Abbildung 2: Grafische Installation im Expertenmodus (GNU/Linux). +3.2.2 Auswahl der zu installierenden Komponenten +Abb. 5 zeigt das Auswahlmenü für ein grundsätzliches Installationsschema der TE X Live. Durch die +Auswahl eines Schemas werden automatisch die Komponenten zur Installation ausgewählt, die für das +gewünschte Schema notwendig bzw. sinnvoll sind. Mit einer vollständigen Installation von TE X Live +(full scheme) sind Sie auf der sicheren Seite, da hier einfach alles installiert wird. Sie können aber auch +eines der abgespeckten Schemas wie basic (für ein sehr schlankes System), medium oder minimal (dies +empfiehlt sich aber nur für Testsysteme und weniger zum ernsthaften Arbeiten) auswählen. Weiter +stehen einige Schemas für spezielle Zwecke oder Sprachen zur Verfügung. + Wenn Sie das Schema ausgewählt haben, können Sie dieses in den Menüpunkten standard collections +und language collections (s. Abb. 6, diesmal zur Abwechslung im GUI-Modus) individuell nach Ihren +Wünschen anpassen. + Während das Schema nur den grundlegenden Funktionsumfang vorgibt, ist die Auswahl von Kom- +ponenten auf der Ebene der Collections viel feiner. Eine Collection besteht dabei aus mehreren Paketen +zu einem Thema, wobei jedes der Pakete aus bestimmten Makrodateien, Fontdateien usw. bestehen +kann. + Noch mehr Kontrolle über die Komponenten Ihres Systems haben Sie nach der Installation mit dem +TE X Live Manager (tlmgr), das in Abschnitt 6 beschrieben wird. Hier können Sie gezielt einzelne Pakete +installieren oder entfernen. + + + 3 INSTALLATION VON TE XLIVE 14 + Abbildung 3: Wizard mode (Windows) +3.2.3 Verzeichnisse +Die Verzeichnisstruktur von TE X Live wurde bereits im Abschnitt 2.3 auf S. 7 beschrieben. Als Wur- +zelverzeichnis für TE X Live (TEXDIR) wird unter Windows (%SystemDrive%\texlive\2012) und unter +Unix (/usr/local/texlive/2012) angenommen. + Prinzipiell können Sie diesen Pfad problemlos ändern, z. B. wenn Sie TE X Live als normaler Nutzer +installieren wollen und kein Schreibrecht in dem oben angegebenen Verzeichnis besitzen. + Auf Wunsch können Sie TE X Live also auch in Ihrem Home-Verzeichnis installieren, wenn Sie sowieso +der einzige Verwender von TE X Live sind. Für Ihr Home-Verzeichnis können Sie den Pfad »~« verwenden +und so beispielsweise TE X Live nach ~/texlive/2012 installieren. + Wir empfehlen Ihnen, die Jahreszahl im Verzeichnisnamen beizubehalten. So können Sie von Jahr +zu Jahr einfach die neue Version testen, ohne die alte zu entsorgen. Bei Bedarf können Sie einen symbo- +lischen Link (z.B. /usr/local/texlive-cur) verwenden, der jeweils auf das Verzeichnis der aktuellen +Version von TE X Live verweist. + Wenn Sie die Einstellung TEXDIR im Installationsprogramm ändern, werden die Werte für +TEXMFLOCAL, TEXMFSYSVAR und TEXMFSYSCONFIG automatisch angepasst. + Das als TEXMFHOME bezeichnete Verzeichnis ist der Ort, in dem persönliche Makrodateien, Schriften +o. ä. abgelegt werden können. Vorgabewert ist ~/texmf. Im Gegensatz zu TEXDIR wird ~ hier nicht +direkt zum Pfad des Home-Verzeichnisses aufgelöst, sondern unverändert in die Konfigurationsdateien +von TE X Live übernommen und erst zur Laufzeit aufgelöst. Somit kann jeder Nutzer des Systems +seinen komplett eigenen Pfad haben, der von TE X Live verwendet wird, und so nach Wunsch auch + + + 3 INSTALLATION VON TE XLIVE 15 + ______________________________________________________________________________________________________________________________________ + Available platforms: + =============================================================================== + a [ ] alpha-linux DEC Alpha with GNU/Linux + b [ ] amd64-freebsd x86_64 with FreeBSD + c [ ] amd64-kfreebsd x86_64 with GNU/kFreeBSD + d [ ] armel-linux ARM with GNU/Linux + e [ ] i386-cygwin Intel x86 with Cygwin + f [ ] i386-freebsd Intel x86 with FreeBSD + g [ ] i386-kfreebsd Intel x86 with GNU/kFreeBSD + h [X] i386-linux Intel x86 with GNU/Linux + i [ ] i386-solaris Intel x86 with Solaris + j [ ] mips-irix SGI IRIX + k [ ] mipsel-linux mipsel with Linux + l [ ] powerpc-aix PowerPC with AIX + m [ ] powerpc-linux PowerPC 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 + Abbildung 4: Auswahlmenü für Binaries + ______________________________________________________________________________________________________________________________________ + Select a scheme: + =============================================================================== + a [X] full scheme (everything) + b [ ] medium scheme (small + more packages and languages) + c [ ] small scheme (basic + xetex, metapost, a few languages) + d [ ] basic scheme (plain and latex) + e [ ] minimal scheme (plain only) + f [ ] ConTeXt scheme + g [ ] GUST TeX Live scheme + h [ ] teTeX scheme (more than medium, but nowhere near full) + i [ ] XML scheme + j [ ] custom selection of collections + Abbildung 5: Menü zur Auswahl des Schemas + eigene Konfigurationsänderungen durchführen. Zur Laufzeit wird ~ unter Unix durch $HOME und unter + Windows durch %USERPROFILE% ersetzt. + Die Variable TEXMFVAR verweist auf das Verzeichnis mit benutzerspezifisch erzeugten Konfigurati- + onsdateien, z. B. den Konfigurations-Cache von ConTE Xt MkIV. +3.2.4 Optionen +Abb. 7 zeigt das Menü, in dem weitere Einstellungen für die Installation von TE X Live möglich sind. +Zur Erläuterung: + use letter size instead of A4 by default: Verwendung von Letter anstatt DIN A4 als Standard- + papiergröße. Natürlich können Sie später unabhängig davon für einzelne Dokumente eine beliebige + Papiergröße wählen. + execution of restricted list of programs: Ab TE X Live 2011 können bei einem TE X-Lauf standard- + mäßig einige externe Programme aufgerufen werden. Die (kurze) Liste der erlaubten Programme + wird in der Datei texmf.cnf definiert. Für weitere Informationen siehe Abschnitt ?? über Neue- + rungen in TE X Live 2011. + create format files: Auch wenn das Erzeugen von Formatdateien für Makropakete, die Sie gar nicht + benötigen, Zeit und Platz kostet, empfehlen wir trotzdem, diese Option ausgewählt zu belassen. + Falls Sie diese Option abwählen, werden Formatdateien jeweils bei Bedarf erzeugt, und dann im + persönlichen TEXMFVAR-Baum des aktuellen Benutzers abgelegt. Dort liegende Formate werden + allerdings nicht automatisch neu generiert, wenn z. B. Programme oder Silbentrennmuster aktua- + lisiert werden, so dass im Extremfall nach einem Update Inkompatibilitäten entstehen können. + + + 3 INSTALLATION VON TE XLIVE 16 + Abbildung 6: Menü zur Aus- oder Abwahl von Collections. + ______________________________________________________________________________________________________________________________________ + <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: + <Y> after installation, get package updates from CTAN: [X] + Abbildung 7: Auswahlmenü für weitere Optionen (Unix). + install font/macro . . . tree: Mit dieser Option können Sie verhindern, dass die Dokumentation und + die Quelldateien der Pakete installiert werden. Wir raten aber, die Vorgabe zu übernehmen, also + die Dokumentation und Quelldateien zu installieren. + create symlinks in standard directories (nur unter Unix): Mit dieser Option können Sie symbo- + lische Links für Programme und Dokumentation in den Standardverzeichnissen Ihres Systems + anlegen, so dass Sie Ihre Umgebungsvariablen PATH, MANPATH und INFOPATH nicht anpassen müs- + sen. Natürlich benötigen Sie für diese Option Schreibrechte in den entsprechenden Verzeichnissen. + Hinweis: Diese Option ist nicht dazu gedacht, ein vorhandenes TE X-System, das z. B. als Teil Ih- + rer Linux-Distribution installiert wurde, zu überschreiben! Sie dient vielmehr dazu, dass Links in + Verzeichnissen angelegt werden, wo die Nutzer sie erwarten – beispielsweise in /usr/local/bin + –, aber sich dort noch keine TE X-Programme befinden. + after installation . . . CTAN: Diese Option ist bei der Installation von DVD standardmäßig ge- + setzt. Sie sorgt dafür, dass nach der Installation Paket-Aktualisierungen aus dem Internet geladen + werden. Es gibt nur einen sinnvollen Grund, diese Option nicht zu aktivieren: wenn nur ein Un- + termenge von TE X Live installiert wurde und Pakete nach der Installation manuell hinzugefügt + werden sollen. + Wenn Sie alle gewünschten Einstellungen für die Installation vorgenommen haben, können Sie im Haupt- + menü nun »I« eintippen, um diese zu starten. Lesen Sie dann anschließend Abschnitt 3.4 für eventuell + + + 3 INSTALLATION VON TE XLIVE 17 + notwendige Arbeiten zum Abschluss der Installation. +3.3 Kommandozeilenoptionen für die Installation +Nach Eingabe von +> install-tl -help +erhalten Sie eine Liste der vorhanden Kommandozeilenoptionen. Sie können diese entweder mit - oder +-- verwenden. Die wichtigsten sind: + -gui Installation im grafischen Modus. Hierfür muss unter Unix Perl/Tk (mit XFT-Unterstützung) + installiert sein (http://tug.org/texlive/distro.html#perltk). Falls dies nicht der Fall ist, + wird die Installation im Textmodus durchgeführt. + -no-gui Installation im Textmodus. Da dies unter Unix Standard ist, wirkt sich diese Option nur + unter Windows aus. Da die Installation zum Benutzen von TE X Live direkt von DVD im grafischen + Modus nicht verfügbar ist, brauchen Sie in diesem Fall unbedingt den Textmodus. + -lang LL Sprache des Installationsprogramms als Sprach-Code in zwei Buchstaben (LL). Derzeit + werden unterstützt. Das Installationsprogramm versucht, die gewünschte Sprache anhand des + Systems herauszufinden. Falls dies scheitert oder die betreffende Sprache nicht verfügbar ist, wird + als Fallback-Sprache Englisch genutzt. + -in-place Sollten Sie schon ein rsync, svn, oder eine andere Kopie von TE X Live haben (siehe + http://tug.org/texlive/acquire-mirror.html), dann wird diese Option genau das nutzen, + was Sie schon haben und nur die notwendigen post-install Operationen durchführen. Eine War- + nung: Die Datei tlpkg/texlive.tlpdb kann dadurch überschrieben werden; machen Sie vorher + gegebenenfalls eine Sicherheitskopie. Die Entfernung von Paketen muss auch manuell vorgenom- + men werden. + Diese Option kann nicht über die Installer-Schnittstelle gesetzt werden. + -portable Die Option -portable (V im Text-Installer oder die entsprechende Option im grafischen + Installer); dient der Installation auf einem USB-Stick oder einer DVD-R. Siehe Abschnitt 5 für + Informationen über die portable Installation von TE X Live. + -profile profile Das Installationsprogramm schreibt die ausgewählten Optionen in eine Datei + texlive.profile. Mit dieser Option können Sie eine bereits vorhandene Datei bei der Installati- + on weiter verwenden, z. B. wenn Sie äquivalente Installationen auf mehreren Rechnern realisieren + wollen, ohne alle Auswahlschritte der Installation immer wieder neu durchführen zu müssen. + -repository url/path zur Auswahl einer Installationsquelle, für weitere Erläuterung siehe den nächs- + ten Abschnitt. +3.3.1 Die Option repository +Als Standardquelle für die Installation wird ein CTAN-Knoten verwendet, der automatisch von +http://mirror.ctan.org ermittelt wird. + Falls Sie eine andere Installationsquelle verwenden wollen, geben Sie eine neue Quelle an, die ent- +weder mit ftp:, http: oder file:/ beginnt oder ein Verzeichnispfad auf Ihrem System ist. Falls Sie +http: oder ftp: verwenden, werden »/«-Zeichen am Ende ignoriert. + Sie können also z. B. einen bestimmten CTAN-Knoten auswählen, so etwa http://ctan.example.org/tex-archive/systems/texlive/tlnet/, +wobei Sie natürlich statt ctan.example.org einen echten Servernamen verwenden und wahrscheinlich +auch den Rest der URL anpassen müssen. Eine Auflistung von CTAN-Servern finden Sie unter +http://ctan.org/mirrors. + Falls Sie ein lokales Repository verwenden (also entweder direkt einen Verzeichnispfad oder eine +mit file:/-URL angeben), so werden bevorzugt Archivdateien in einem Unterverzeichnis archive des +Repository verwendet, selbst wenn ausgepackte Dateien vorhanden sind. +3.4 Aufgaben im Anschluss an die Installation +Je nach System kann es notwendig sein, dass im Anschluss an die Installation noch einige Kleinigkeiten +erledigt werden müssen. + + + 3 INSTALLATION VON TE XLIVE 18 + 3.4.1 Windows +Benutzer von Windows sind hier in der glücklichen Position, dass das Installationsprogramm alles +komplett erledigt haben sollte. +3.4.2 Unix, falls symbolische Links angelegt wurden +Wenn Sie bei der Installation angegeben haben, dass und wo symbolische Links angelegt werden sollten +(s. Abschnitt 3.2.4), dann sollten hier auch keine Nacharbeiten mehr notwendig sein. +3.4.3 Umgebungsvariablen für Unix +Das Verzeichnis mit den ausführbaren Programmen von TE X Live muss sich im Suchpfad des Systems +befinden. Jedes unterstützte System besitzt ein eigenes Verzeichnis unterhalb von TEXDIR/bin, deren +Namen Sie in Abb. 4 finden. + Weiterhin können Sie die Verzeichnisse mit den Manual-Pages und Info-Dateien zu den entsprechen- +den Suchpfaden für Dokumentation hinzufügen. + Für Systeme mit einer Bourne-kompatiblen Shell wie bash ist hier am Beispiel von GNU/Linux +aufgeführt, wie die Befehle zum Setzen der Umgebungsvariablen (z. B. in $HOME/.profile) aussehen +könnten: +export PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH +export MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH +export INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH +Für csh oder tcsh erfolgt die Konfiguration in der Regel in der Datei $HOME/.cshrc und könnte so +aussehen: +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +3.4.4 Systemweites Setzen von Umgebungsvariablen +Wenn Sie als Administrator die Umgebungsvariablen global für das gesamte System setzen wollen, gehen +wir davon aus, dass Sie sich mit der grundlegenden Systemadministration auskennen. + Daher hier nur zwei Hinweise: + 1. Schauen Sie nach einer Datei /etc/manpath.config. Falls diese vorhanden ist, sollte es reichen, + folgende Zeilen hinzu zu fügen: + MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man + 2. Prüfen Sie, ob es auf Ihrem System eine Datei /etc/environment gibt, in der die systemweiten + Umgebungsvariablen definiert werden. + Zusätzlich wird ein symbolischer Link man im binary-Verzeichnis unter Unix angelegt, der auf + texmf/doc/man berweist. Einige Versionen von man, so z. B. unter Mac OS X, finden so verlink- + te Man-Pages automatisch, so dass hier keine spezielle Konfiguration für die Man-Pages mehr + erforderlich ist. +3.4.5 Internet-Updates nach der Installation von DVD +Wenn Sie von DVD installiert haben, können Sie mittels des folgenden Befehls die Aktualisierung +über das Internet aktivieren. Zuerst müssen Sie, wie im letzten Abschnitt beschrieben, den Suchpfad +angepasst haben: +> tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet +Dadurch nutzt tlmgr beim nächsten Update einen CTAN Mirror. Sollte es Probleme bei der au- +tomatischen Wahl eines Mirror-Servers geben, kann ein bestimmter CTAN Server von der unter +http://ctan.org/mirrors verfügbaren Liste ausgewählt werden. Benutzen Sie diesen Pfad dann mit +dem oben genannten Befehl. + + + 3 INSTALLATION VON TE XLIVE 19 + 3.4.6 Font configuration for XeTE X +XeTE X und LuaTE X können nicht nur die Schriften in den TE X Bäumen nutzen, sondern auch die auf +dem System vorhandenen Fonts. Die Methoden, wie sie dies tun, ähneln sich, sind aber verschieden. + Unter Windows sind die auf dem System vorhandenen Schriften automatisch nutzbar. Auf einem +Unix/Linux System sind Anpassungen notwendig, damit die Schriften per Systemname und nicht nur +Dateiname gefunden werden können. + Hierfür wird bei der Installation des xetex Pakets die Datei TEXMFSYSVAR/fonts/conf/ +texlive-fontconfig.conf erzeugt. + Um die mitgelieferten TE X Live-Schriften systemweit verwenden zu können, gehen Sie bitte folgen- +dermaßen vor: + 1. Kopieren Sie als root-User texlive-fontconfig.conf nach /etc/fonts/conf.d/09-texlive. + conf. + 2. Führen Sie fc-cache -fsv aus. +Falls Ihnen als normaler Nutzer die entsprechenden Privilegien für die obigen Schritte fehlen, können +Sie die TE X Live-Schriften für sich selbst als XeTE X-Nutzer verwendbar machen: + 1. Kopieren Sie texlive-fontconfig.conf in das Unterverzeichnis ~/.fonts.conf, wobei ~ Ihr + Home-Verzeichnis ist. + 2. Führen Sie fc-cache -fv aus. + Führen Sie fc-list aus, um eine Liste der Systemschriften mit hilfreichen Informationen zu erhalten. +3.4.7 ConTE Xt Mark IV +Sowohl das ‘alte’ ConTE Xt (Mark II) als auch das ‘neue’ ConTE Xt (Mark IV) sollten problemlos nach +der TE X Live Installation funktionieren und brauchen keine besondere Aufmerksamkeit, sofern tlmgr +für den Update-Prozess genutzt wird. + Da ConTE Xt MkIV jedoch nicht die kpathsea-Bibliothek nutzt, ist ein wenig manuelle Nacharbeit +notwendig, wenn neue Dateien manuell installiert werden (also ohne die Nutzung von tlmgr). + Nach einer jeden solchen Installation muss jeder Nutzer das das folgende Kommando ausführen, um +den ConTE Xt Cache zu aktualisieren: +context --generate + Die erzeugten Dateien werden in TEXMFCACHE gespeichert, dessen Standardwert TEXMSYSVAR;TEXMFVAR +ist. + ConTE Xt MkIV liest aus allen Pfaden, die in TEXMFCACHE aufgeführt sind und schreibt in die erste +Pfadangabe, bei der Schreibrechte existieren. Im Fall identischer Cache-Daten hat der letzte gefundene +Pfad Vorrang vor allen anderen Pfaden. + Für weitere Informationen siehe http://wiki.contextgarden.net/Running_Mark_IV und +http://wiki.contextgarden.net/TeX_Live_2011. +3.4.8 Integrieren lokaler bzw. nutzer-spezifischer Makros +Wie bereits in Abschnitt 2.3 erwähnt, ist der Verzeichnisbaum TEXMFLOCAL (im Normalfall /usr/ +local/texlive/texmf-local oder %SystemDrive%\texlive\texmf-local) für lokale Ergänzungen +wie Makros und Schriften gedacht, die anschließend allen Benutzern des Systems zur Verfügung ste- +hen. Weiterhin können Benutzer den Verzeichnisbaum TEXMFHOME (im Normalfall $HOME/texmf oder +%USERPROFILE%\texmf) für persönliche Ergänzungen verwenden, ohne dass andere Benutzer davon be- +einflusst werden. Diese Verzeichnisse sollen über verschiedene Versionen von TE X Live hinweg identisch +sein, so dass ein Update von TE X Live auf eine neue Version einfach möglich ist, ohne dass Sie Ihre +lokalen Ergänzungen verlieren. Wir empfehlen Ihnen daher, von der vorgegebenen Verzeichnisstruktur +nicht abzuweichen. + Für beide oben genannte Verzeichnisbäume erwartet TE X Live eine Verzeichnisstruktur innerhalb +des Baums, die dem TE X Directory Standard entspricht, wie er in http://tug.org/tds bzw. texmf/ +web2c/texmf.cnf definiert ist. So gehören Dokumentklassen für LATE X zum Beispiel in ein Verzeichnis +unterhalb von TEXMFLOCAL/tex/latex oder TEXMFHOME/tex/latex. + Der Verzeichnisbaum TEXMFLOCAL wird zur Laufzeit nicht direkt nach Dateien durchsucht. Stattdes- +sen wird eine Liste von Dateinamen verwendet, sich sich in einer Datei mit dem Namen ls-R befindet. +Denken Sie also daran, nach Änderungen in diesem Baum diese Dateiliste zu aktualisieren. Dies tun +Sie entweder mit dem Befehl mktexlsr oder über die Schaltfläche Reinit file database in dem Konfigura- +tionsreiter des TE X Live Managers (GUI-Modus). + + + 3 INSTALLATION VON TE XLIVE 20 + 3.4.9 Integrieren von Schriften +Die Installation von Schriften, die nicht von TE X Live sind, ist eine recht komplexe Angelegenheit. Sie +sollten sich bereits gut mit dem System auskennen, bevor Sie diese Aufgabe beginnen. Schauen Sie +vielleicht vorher in Abschnitt 2.6 nach, welche Schriften bereits bei TE X Live mitgeliefert werden. + Eine Alternative besteht im Benutzen von XeTE X oder LuaTE X (s. Abschnitt 2.4), bei dem direkt +alle vom Betriebssystem installierten Schriften verwendet werden können, ohne dass die Installation +einer TE X-Unterstützung notwendig ist. + Falls Sie wirklich weitere Schriften benötigen, finden Sie unter http://tug.org/fonts/fontinstall.html +eine Beschreibung zur Installation weiterer Schriften. +3.5 Testen der Installation +Nach der Installation von TE X Live wollen Sie es natürlich benutzen, um möglichst schöne Dokumente +zu setzen. + Dieser Abschnitt beschreibt, wie Sie prüfen können, ob Ihr TE X Live-System funktioniert. Die folgen- +den Beispiele sind für Unix, sollten unter Windows und Mac OS X aber sehr ähnlich sein. Der Unterschied +kann sein, dass Sie dort eventuell eine grafische Benutzeroberfläche verwenden. + 1. Prüfen Sie, ob Sie das Programm tex ausführen können: + > tex --version + TeX 3.1415926 (TeX Live 2012) + kpathsea version 5.0.0 + Copyright 2011 D.E. Knuth. + ... + Erhalten Sie als Resultat statt der Versionsnummer die Meldung, dass der Befehl nicht gefunden + wurde, so haben Sie wahrscheinlich vergessen, das Verzeichnis mit den ausführbaren Programmen + in Ihren PATH aufzunehmen, s. Abschnitt 3.4.3 auf S. 18. + 2. Eine einfache LATE X-Datei übersetzen: + > latex sample2e.tex + pdfTeX 3.1415926-1.40.11-2.2 (TeX Live 2012) + ... + Output written on sample2e.dvi (3 pages, 7484 bytes). + Transcript written on sample2e.log. + Falls dies schief geht, sind wahrscheinlich noch alte Umgebungsvariablen einer vorigen TE X- + Installation übrig geblieben. Wir empfehlen, die Umgebungsvariablen, die sich auf TE X beziehen, + zu entfernen. Für eine weitere Analyse können Sie TE X anzeigen lassen, wo es bestimmte Dateien + sucht, siehe »Fehlersuche« auf Seite 35. + 3. Ergebnis auf dem Bildschirm anschauen: + > xdvi sample2e.dvi # Unix + > dviout sample2e.dvi # Windows + Nun sollte sich ein Vorschaufenster mit dem soeben gesetzten Beispieldokument öffnen, das die + Grundlagen von LATE X erläutert (und das Anfänger tatsächlich auch einmal lesen sollten). Unter + Unix muss ein X-Server laufen, damit xdvi funktioniert; falls dies nicht der Fall ist oder die Umge- + bungsvariable DISPLAY falsch gesetzt ist, erhalten Sie die Fehlermeldung ‘Can’t open display’. + 4. Eine PostScript-Datei erzeugen: + > dvips sample2e.dvi -o sample2e.ps + 5. Direkt eine PDF-Datei erzeugen (statt DVI): + > pdflatex sample2e.tex + + +3 INSTALLATION VON TE XLIVE 21 + 6. Eine PDF-Datei anschauen: + > gv sample2e.pdf + or: + > xpdf sample2e.pdf + Weder gv noch xpdf sind in TE X Live enthalten, daher müssen diese separat installiert werden, + siehe http://www.gnu.org/software/gv bzw. http://www.foolabs.com/xpdf. Sie können na- + türlich auch andere PDF-Viewer verwenden, beispielsweise den Adobe Reader, der allerdings unter + Windows das Problem hat dass geöffnete PDF-Dateien nicht überschrieben werden können, was + zu Fehlern von pdfTE X führt, wenn Sie ein Dokument übersetzten wollen und vergessen haben, + es vorher im Acrobat Reader zu schließen. Unter Windows sollten Sie auch einmal Sumatra PDF + (http://blog.kowalczyk.info/software/sumatrapdf) ausprobieren. + 7. Weitere nützliche Test-Dateien außer sample2e.tex: + small2e.tex Einfachere Version von sample2e, um den Fehler einzugrenzen, wenn Sie beim + Übersetzen von sample2e Probleme haben. + testpage.tex Hiermit können Sie prüfen, ob Ihr Drucker Ihren Ausdruck horizontal oder ver- + tikal verschiebt. + nfssfont.tex Zum Testen von Fonts und Erzeugen von Schrifttabellen. + testfont.tex Erzeugen von Schrifttabellen, aber mit plain TE X. + story.tex Das einfachste Testdokument von allen (in plain TE X). Geben Sie am Ende ‘\bye’ + ein, wenn nach dem Aufruf von ‘tex story.tex’ der * erscheint. + 8. Falls Sie das xetex-Paket installiert haben, können Sie das Verwenden von Systemschriften fol- + gendermaßen testen: + +> xetex opentype-info.tex + This is XeTeX, Version 3.1415926... + ... + Output written on opentype-info.pdf (1 page). + Transcript written on opentype-info.log. + (Oder das gleiche für luatex.) + Falls Sie die Fehlermeldung »Invalid fontname ‚Latin Modern Roman‘...« erhalten, muss Ihr + System so konfiguriert werden, dass es die von TE X Live mitgelieferten Schriften findet (siehe + Abschnitt 3.4.6). +3.6 Hinweise auf weitere Software +In vielen Fällen ist die Installation weiterer Software sinnvoll: +Ghostscript http://www.cs.wisc.edu/~ghost/ +Perl http://www.perl.org/ mit Zusatzpaketen von CPAN, http://www.cpan.org/ +ImageMagick http://www.imagemagick.com, für die Bearbeitung und Umwandlung von Bildern in + andere Formate, +NetPBM http://netpbm.sourceforge.net/, ebenfalls für Bilder. +TE X-Oberflächen Es gibt eine breite Auswahl von Oberflächen bzw. Editoren, die TE X unterstützen, + je nach persönlichem Geschmack des Benutzers. Hier ist eine Auswahl, wobei einige davon nur für + Windows verfügbar sind: + ∙ GNU Emacs gibt es auch für Windows, siehe http://www.gnu.org/software/emacs/windows/ntemacs.html. + ∙ Emacs mit AucTE X für Windows findet man auf der Homepage http://www.gnu.org/software/auctex. + ∙ Emacs mit AucTE X für Windows findet man auf der Homepage http://www.gnu.org/software/auctex. + ∙ LEd findet sich unter http://www.ctan.org/support/LEd. + ∙ SciTE findet sich unter http://www.scintilla.org/SciTE.html. + ∙ Texmaker ist Freie Software, verfügbar über http://www.xm1math.net/texmaker/. + + + 4 INSTALLATION FÜR MEHRERE MASCHINEN ODER NUTZER (NETZ-INSTALLATION) 22 + ∙ TexMakerX http://texmakerx.sourceforge.net/ ist eine Version von Texmaker mit zu- + sätzlichen Features + ∙ TeXnicCenter ist Freie Software, verfügbar über http://www.texniccenter.org und als Teil + von proTE Xt. + ∙ TeXworks ist Freie Software, verfügbar über http://tug.org/texworks. Wird unter Win- + dows und Mac OS X als Teil von TE X Live mitinstalliert. + ∙ Vim ist Freie Software, verfügbar über http://www.vim.org. + ∙ WinShell findet sich unter http://www.winshell.de. + ∙ WinEdt ist Shareware, verfügbar über http://tug.org/winedt oder http://www.winedt.com. + Bitte beachten Sie, dass es für Mitglieder von DANTE e. V. ein Lizenzabkommen mit WinEdt + zu sehr günstigen Preisen gibt. + Für weitere Programme siehe http://tug.org/interest.html. +4 Installation für mehrere Maschinen oder Nutzer (Netz- + Installation) +Bei TE X Live ist nicht nur vorgesehen, dass es von mehreren Benutzern auf einem System verwendet +werden kann, sondern auch in einem Netzwerk. In der normalen Konfiguration von TE X Live werden +nur relative und keine absoluten Pfade verwendet. Dies erkennt man an Einstellungen in der Datei +$TEXMFMAIN/web2c/texmf.cnf, die Zeilen wie die folgenden enthält, in denen Verzeichnisse relativ zu +den Verzeichnissen lokalisiert werden, in denen sich die Programme befinden: +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +Daher ist es im Normalfall ausreichend, das Programm-Verzeichnis in den Suchpfad des Systems auf- +zunehmen, alles weitere bestimmt TE X Live dann automatisch. + Daher ist es kein Problem, wenn das Grundverzeichnis von TE X Live als Netzlaufwerk eingebunden +ist. Tatsächlich können Sie TE X Live sogar zunächst lokal installieren und dann auf ein Netzlaufwerk +verschieben. + Benutzer von Windows können ein Installationsskript namens w32client für eine Netzwerkinstal- +lation von http://tug.org/texlive/w32client.html (siehe auch Abschnitt 4) herunterladen. Dieses +nimmt die Einstellungen im Startmenü von Windows für das Verwenden von TE X Live über Netzwerk +vor, weiterhin wird ein Skript zur Deinstallation mitgeliefert. Lesen Sie bitte die Beschreibung auf der +angegebenen Webseite. +5 Portables TE X Live auf DVD oder USB-Stick +Wenn Sie TE X Live im portablen Modus verwenden wollen (z. B. auf einem Rechner, auf dem Sie „Gast“ +sind), können Sie TE X Live mit der Option -portable (bzw. der Option V im Text-Installer oder der +entsprechenden Option im grafischen Installer) auf einem USB-Stick installieren (siehe Abschnitt 3.3). + Um TE X von dieser portablen Installation ausführen zu können, muss das entsprechenden Verzeichnis +mit den Binaries dem Suchpfad hinzugefügt werden. Unter Windows kann man tl-tray-menu im +Stammverzeichnis der Installation doppelt klicken, um zwischen verschiedenen Aufgaben zu wählen. + +Der Eintrag ‘More...’ erläutert, wie Sie dieses Menü anpassen können. + + + 6 TLMGR: INSTALLATION VERWALTEN 23 + Abbildung 8: tlmgr im GUI-Modus. Hauptfenster nach dem Klicken auf »Load«. +6 tlmgr: Installation verwalten +Bei der Installation von TE X Live wird auch das Programm tlmgr installiert, mit dem Sie anschließend +Ihr TE X Live-System verwalten können. Die hierfür bisher verwendeten Programme updmap, fmtutil +und texconfig sind zwar noch vorhanden, aber inzwischen ist tlmgr die vorgesehene Oberfläche zur +Konfiguration von TE X Live. Mit tlmgr können Sie folgende Aufgaben erledigen: + ∙ Verfügbare Schemas, Collections und Pakete installieren, aktualisieren, wieder herstellen, sichern, + deinstallieren, auf Wunsch mit Berücksichtigung von Paketabhängigkeiten. + ∙ Suchen nach Paketen. + ∙ Anzeigen der Systeme, unter denen TE X Live läuft; (de)installieren von Binaries für weitere Sys- + teme. + ∙ Anpassen der Installation, wie Ändern der Papiergröße oder des Quellverzeichnisses für Kompo- + nenten (s. Abschnitt 3.3.1). +Achtung: tlmgr ist für die Installation im portalen Modus (Abschnitt 5) weder gedacht noch getestet. +6.1 tlmgr im grafischen Modus +tlmgr im GUI-Modus (siehe Abbildung 8) wird durch + + + 6 TLMGR: INSTALLATION VERWALTEN 24 + Abbildung 9: tlmgr im GUI-Modus: Allgemeine Optionen + Abbildung 10: tlmgr im GUI-Modus: + Optionen zur Papiergröße + > tlmgr -gui + gestartet. Unter Windows finden Sie das Programm im Start menu: Start, Programme, TeX Live 2012, + TeX Live Manager. Nach Klicken auf »Load« wird eine Liste aller verfügbaren und installierten (letztere + durch »(i)« gekennzeichnet) angezeigt. Dies setzt voraus, dass das Verzeichnis, aus dem TE X Live die + Pakete lädt, vorhanden bzw. erreichbar ist. + Abb. 9 und 10 zeigen die Reiter zur allgemeinen Konfiguration von TE X Live und zur Einstellung + der Papiergröße. +6.2 Beispiel zur Verwendung von tlmgr über Kommandozeile +Nachdem Sie TE X Live installiert haben, können Sie Ihr TE X Live-System auf den neuesten Stand +aktualisieren: +> tlmgr update -all +Falls Sie vorher wissen wollen, was passiert, können Sie zunächst +> tlmgr update -all -dry-run +oder (weniger ausführlich) +> tlmgr update -list +verwenden. + Das folgende Beispiel demonstriert, wie die Collection für XeTE X installiert wird, wobei sich die +Installationsdateien in einem lokalen Verzeichnis befinden: +tlmgr -repository /local/mirror/tlnet install collection-xetex +Dies liefert die folgende Ausgabe: +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex + + + 7 HINWEISE ZU WINDOWS 25 + install: xetex-def + ... + running mktexlsr + mktexlsr: Updating /usr/local/texlive/2012/texmf/ls-R... + ... + running fmtutil-sys --missing + ... + Transcript written on xelatex.log. + fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed. + Wie man sieht, beachtet tlmgr die Abhängigkeiten von Paketen und installiert im obigen Beispiel + von XeTE X benötigte Komponenten nach. Weiterhin werden automatisch im Anschluss die Dateilisten + der Verzeichnisbäume aktualisiert und fehlende Formate generiert. + Informationen zu einem Paket (oder einer Collection oder einem Schema) anzeigen: + Ucomtlmgr show collection-latexextra + Hier erhält man folgende Ausgabe: + package: collection-latexextra + category: Collection + shortdesc: LaTeX supplementary packages + longdesc: A large collection of add-on packages for LaTeX. + installed: Yes + revision: 14675 + Die komplette Dokumentation finden Sie unter http://tug.org/texlive/tlmgr.html oder mit + > tlmgr -help +7 Hinweise zu Windows +Das Installationsprogramm von TE X Live läuft sowohl unter Windows als auch Unix. Dies war nur +dadurch möglich, dass ältere Versionen von Windows nicht mehr unterstützt werden. Daher kann TE X +Live nur noch ab Windows XP oder später installiert werden. +7.1 Windows-spezifische Dinge +Unter Windows kümmert sich das Installationsprogramm auch um folgende Dinge: + Menüs und Verknüpfungen. Im Startmenü wird ein Menü »TE X Live« hinzu gefügt. Hier sind Ein- + träge für die grafischen Anwendungen (tlmgr, texdoctk, den PS_View (psv) PostScript-Previewer) + und einige Verknüpfungen zur Dokumentation vorhanden. Für PS_View wird eine Verknüpfung + auf dem Desktop angelegt, auf die Sie PostScript-Dateien per Drag & Drop ziehen können, um + diese zu betrachten. + Automatisches Setzen der Umgebungsvariablen. Hierdurch ist das Setzen dieser Variablen von + Hand überflüssig geworden. + Uninstaller. Es wird ein Eintrag zum Entfernen von TE X Live in der Systemsteuerung im Punkt + Software angelegt. Alternativ können Sie TE X Live über die GUI TE X Live Manager deinstallieren. + Dateiverknüpfungen Wenn diese Option aktiviert wird, werden TeXworks, Dviout und PS_view ent- + weder die Standard-Programme für die entsprechenden Dateitypen oder erhalten einen Eintrag + im ‘Öffnen mit’ Dialog. + Bitmap nach eps Konverter Verschiedene Bitmap-Formate erhalten einen Eintrag bitmap2eps in ihr + ‘Öffnen mit’ Menü. Bitmap2eps ist ein einfaches Skript, das im Hintergrund sam2p oder bmeps + aufruft. + Automatische Pfad-Anpassung Erfordert keine manuellen Anpassungen. + + + 7 HINWEISE ZU WINDOWS 26 + Abbildung 11: PS_View: sogar sehr extreme Vergrößerungen sind möglich. +7.2 Zusätzlich enthaltene Programme unter Windows +Zusätzlich werden unter Windows einige Programme installiert, die unter Windows meist noch nicht +verfügbar sind: + Perl und Ghostscript. Da Perl und Ghostscript für TE X Live sehr wichtig ist, werden diese unter + Windows mitgeliefert und werden intern von TE X Live benutzt. Die in TE X Live enthaltenen + Programme, die diese Komponenten benötigen, »wissen« wo sich diese befinden, ohne dass diese im + System durch Umgebungsvariablen oder Einträge in der Registry sichtbar sind. Es handelt sich um + für TE X Live abgespeckte Versionen, die zu keinen Konflikten mit eventuell bereits vorhandenen + Installationen von Perl und Ghostscript führen sollten. + PS_View. Weiterhin wird PS_View installiert, ein neuer PostScript- und PDF-Viewer, der Freie + Software ist, s. Abb. 11. + dviout Weiterhin wird dviout, ein DVI-Viewer installiert. Wenn Sie am Anfang Dokumente mit dviout + anschauen, werden häufig noch Fonts generiert, da keine fertigen Fontdateien für den Bildschirm + mitgeliefert werden. Je mehr Fonts generiert wurden, desto seltener müssen Schriften nachge- + neriert werden, so dass dieser Effekt nach einiger Zeit nur noch selten auftreten wird. Weitere + Informationen finden Sie in der (sehr guten) Online-Hilfe. + TeXworks TE Xworks ist eine Oberfläche für TE X mit Editor und integriertem PDF-Viewer. + Tools für die Kommandozeile. Für einige unter Unix übliche Programme werden Portie- + rungen für Windows mitgeliefert. Dies sind z. B. gzip, unzip und einige Programme für + die Kommandozeile aus der xpdf-Suite, wie pdfinfo und pdffonts. (Vom xpdf-Viewer + selbst gibt es keine Version für Windows, aber der Sumatra PDF-Viewer basiert auf xpdf: + http://blog.kowalczyk.info/software/sumatrapdf.) + fc-cache, fc-list etc. dienen XeTE X zur effizienteren Benutzung von Schriften. Mit fc-list können + Sie die Namen der verfügbaren Schriften anzeigen, die Sie dann unter XeTE X mit dem Kommando + \font benutzen können. Mit fc-cache kann die Liste der verfügbaren Schriften aktualisiert werden. +7.3 Nutzerprofile unter Windows +Das Gegenstück von Windows zum HOME-Verzeichnis unter Unix ist das Verzeichnis %USERPROFILE%. + + + 7 HINWEISE ZU WINDOWS 27 + Unter Windows 7 oder Windows Vista liegt es meist in C:\Users\<username>, unter Windows XP + im Verzeichnis C:/Dokumente und Einstellungen/<username>. + In der Datei texmf.cnf und in Kpathsea allgemein wird ~ sowohl unter Unix und Windows korrekt + aufgelöst. +7.4 Die Windows-Registry +Windows verwaltet fast all seine Konfigurationseinstellungen in der Registry. Diese besteht aus einem +hierarchisch aufgebauten Baum von Schlüsseln, wobei mehrere dieser Registry-Bäume existieren. Die +wichtigsten sind HKEY_CURRENT_USER und HKEY_LOCAL_MACHINE, oft abgekürzt als HKCU bzw. HKLM. Der +HKCU-Teil der Registry wird im Home-Verzeichnis des Benutzers gespeichert (siehe Abschnitt 7.3). HKLM +liegt im Normalfall in einem Unterverzeichnis des Windows-Verzeichnisses. + In einigen Fällen sind Systeminformationen aus Umgebungsvariablen ersichtlich, in vielen anderen +Fällen liegen diese Informationen aber in der Registry. +7.5 Windows Permissions +In neueren Versionen von Windows wird zwischen normalen Benutzern und Administratoren unterschie- +den, wobei nur letztere freien Zugang auf alle Teile des Betriebsystems haben. Im Gegensatz zu Unix ist +es in der Praxis allerdings häufig so, dass Benutzer zur Klasse der Administratoren gehören und daher +doch alle Freiheiten haben. Trotzdem haben wir einigen Aufwand getrieben, damit TE X Live auch unter +Windows ohne Administrator-Rechte installiert werden kann. + Falls der Benutzer, der TE X Live installiert, Administrator-Rechte besitzt, kann TE X Live für alle +Benutzer des Systems installiert werden, d. h. Verknüpfungen, Menüs und Systemeinträge werden für +alle Nutzer angelegt. Ansonsten werden diese nur für den aktuellen Benutzer angelegt. + Unabhängig davon wird grundsätzlich angenommen, dass das Wurzelverzeichnis von TE X Live unter +%SystemDrive% liegen soll. Allerdings testet das Installationsprogramm, ob dieses Verzeichnis für den +aktuellen Benutzer schreibbar ist. + Ein Problem entsteht, wenn TE X Live ohne Administrator-Rechte installiert wird und sich bereits +ein TE X-System im systemweiten Suchpfad befindet. Windows benutzt zuerst den Suchpfad des Sys- +tems, erst dann den spezifischen Suchpfad des Nutzers, so dass hier immer zuerst das alte TE X-System +gefunden wird. Als Workaround wird hier eine Verknüpfung mit einer Eingabeaufforderung erzeugt, in +der das Programmverzeichnis von TE X Live im Suchpfad vor den Standardsuchpfad geschrieben wird. +Dies bedeutet, dass in diesem Fall nur in einer Eingabeaufforderung verfügbar ist, die über diese Ver- +knüpfung gestartet wird. Die Verknüpfung für TE Xworks (falls Sie dieses installieren) fügt ebenfalls +automatisch TE X Live am Anfang des Suchpfades ein, so dass es direkt benutzbar ist. + Unter Windows Vista gibt es einen weiteren Fallstrick. Selbst wenn Sie als Administrator ange- +meldet sind, müssen Sie Programme trotzdem explizit mit Administratorrechten starten. Insofern ist +es tatsächlich nicht sehr sinnvoll, sich als Administrator anzumelden. Klicken Sie stattdessen auf das +gewünschte Programm (bzw. die gewünschte Verknüpfung) mit der rechten Maustaste, damit Sie die +Option erhalten, dieses mit Administratorrechten auszuführen. +7.6 Erhöhen des maximal verfügbaren Speichers unter Windows und Cyg- + win +Unter Windows und Cygwin (s. Abschnitt 3.1.4 für die Installation unter Cygwin) kann es vorkommen, +dass der den in TE X Live enthaltenen Programmen zur Verfügung gestellte Speicher nicht ausreicht. +Dies kann z. B. passieren, wenn in asy ein Array von 25 Millionen Gleitkommazahlen allokiert wird oder +ein Dokument mit umfangreichen Schriften mit LuaTE X übersetzt wird. + Für Cygwin ist die Erhöhung des Maximalspeichers im Cygwin-Hanbuch beschrieben +(http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html). + Unter Windows können Sie eine Datei moremem.reg mit folgenden vier Zeilen anlegen: +Windows Registry Editor Version 5.00 +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 + Führen Sie dann als Administrator regedit /s moremem.reg aus. (Falls der zur Verfügung ste- +hende Speicher nur für den aktuellen Nutzer erhöht werden soll, verwenden Sie stattdessen einfach +HKEY_CURRENT_USER). + + + 8 ANLEITUNG ZUM WEB2C-SYSTEM 28 + 8 Anleitung zum Web2C-System +Web2C besteht aus einer Reihe von Programmen, die zusammen ein komplettes TE X-System darstellen. +Dazu gehören natürlich TE X, METAFONT, MetaPost, BibTE X usw. + Die erste Implementierung eines TE X-Systems in der Programmiersprache C stammt von Tomas Ro- +kicki und datiert zurück in das Jahr 1987. Rokicki benutzte als Basis sog. Change-Files unter UNIX, die +ursprünglich von Howard Trickey und Pavel Curtis entwickelt wurden. Tim Morgan hat dieses System, +für das der Name Web-to-C eingeführt wurde, gepflegt. 1990 hat Karl Berry mit Unterstützung vieler +Helfer die Weiterentwicklung übernommen und 1997 an Olaf Weber weitergegeben, der es 2006 wieder +an Karl zurück gab. + Web2C läuft unter UNIX, 32-bit-Versionen von Windows, Mac OS X und auf weiteren Betriebssyste- +men. Es benutzt die Original-Quelldateien von Donald E. Knuth und weitere in der Sprache WEB entwi- +ckelte Programme als Basis und übersetzt diese in C-Quell-Code. Darüber hinaus bietet das System viele +Makros und Funktionen zur Nutzung der originalen TE X-Software. Hier eine Liste der Basisprogramme +eines TE X-Systems: +bibtex Verwalten von Bibliographien +dvicopy Umwandeln von virtuellen Zeichensätzen in DVI-Dateien +dvitomp DVI-nach-MPX-Konverter (MetaPost-Bilder) +dvitype Textanzeige aus DVI-Dateien +gftodvi Erzeugen von Prüfausgaben für Zeichensätze +gftopk Packen von Zeichensätzen +gftype Anzeige von Zeichensätzen als ASCII-Graphik +mf Zeichensatzerzeugung +mft formatierte Ausgabe von METAFONT-Quellen +mpost METAFONT-ähnliches Grafikprogramm +patgen Erzeugen von Trennmustern +pktogf Entpacken von Zeichensätzen +pktype Anzeige gepackter Zeichensätze +pltotf Umwandeln von Property-Listen in .tfm-Dateien +pooltype Anzeige der Bildschirmtexte eines WEB-Programms +tangle Konverter WEB nach Pascal +tex TE X-Programm +tftopl Umwandeln einer .tfm-Datei in eine Property-Liste +vftovp Umwandeln eines virtuellen Zeichensatzes in eine Property-Liste +vptovf Umwandeln einer Property-Liste in einen virtuellen Zeichensatz +weave WEB-Code als TE X-Dokumentation + Die genaue Funktionsweise und die möglichen Parameter sind der Beschreibung der jeweiligen Pake- +te bzw. der Web2C-Dokumentation zu entnehmen. Trotzdem wird ein Überblick über Zusammenspiel +und Funktionsweise der Web2C-Programme Ihnen sicherlich helfen, besser mit dem System zurechtzu- +kommen. + Zunächst verstehen alle Programme die grundlegenden Parameter der GNU-Software: +--help kurzer Hilfstext +--verbose ausführliche Ausgaben beim Programmablauf + + + 8 ANLEITUNG ZUM WEB2C-SYSTEM 29 + --version Ausgabe der Versionsnummer + Die Programme des Web2C-Systems benutzen zum Lokalisieren der benötigten Dateien im Dateisystem + die Kpathsea-Bibliothek (http://tug.org/kpathsea). Diese Bibliothek optimiert und beschleunigt den + Suchprozess im Dateisystem. Ihre Arbeitsweise wird durch einige Umgebungsvariablen und eine Konfigu- + rationsdatei gesteuert. Web2C 7.5 kann mehr als einen Dateibaum gleichzeitig verwalten und ermöglicht + somit die schon beschriebene TE X Live-Installation unter Verwendung der DVD mit der Ablage modi- + fizierter Konfigurationsdateien und zusätzlicher Zeichensätze in einem zweiten Dateibaum. Die Suche + nach Dateien wird durch die Analyse der Datei ls-R beschleunigt, die in jedem Wurzelverzeichnis eines + TE X-Dateibaums vorhanden ist. Sie enthält für jede Datei die genaue Position im Dateibaum relativ + zum Wurzelverzeichnis. +8.1 Dateisuche mit der Kpathsea-Bibliothek +Wir beschreiben zunächst den grundlegenden Suchmechanismus der Kpathsea-Bibliothek. + Ein Suchpfad ist eine durch Kommata oder Semikola getrennte Liste von Pfadkomponenten, die +üblicherweise Verzeichnisnamen darstellen. Ein Suchpfad kann sich aus vielen Komponenten zusam- +mensetzen. Die Suche nach einer Datei ‘my-file’ über den Suchpfad ‘.:/dir’ bewirkt, dass Kpathsea +jede Komponente nacheinander überprüft, also zunächst ‘./my-file’ und dann ‘/dir/my-file’. Als +Ergebnis wird entweder die erste gefundene Datei oder eine Liste aller passenden Dateien geliefert. + Um auf allen Dateisystemen effizient arbeiten zu können, verwendet Kpathsea ggf. andere Datei-/ +Verzeichnis-Separatoren als ‘:’ und ‘/’. + Beim Überprüfen einer Pfadkomponente p überprüft Kpathsea zunächst, ob eine Dateinamen-Da- +tenbank (siehe auch Dateinamen-Datenbank auf Seite 32) für die Pfadkomponente zuständig ist, d. h. +beispielsweise steht die Datenbank in einem Verzeichnis, das im Pfad vor der zu überprüfenden Kom- +ponente p steht. In diesem Fall wird zur Bestimmung der Position der gesuchten Datei die Datenbank +herangezogen. + Nur wenn keine passende Datenbank existiert oder wenn die Datei nicht in der Datenbank gefunden +wird, durchsucht Kpathsea das Dateisystem. Diese zeitaufwändige Suche kann über die Spezifikation +der Pfadkomponente p mit dem Präfix ‘!!’ unterbunden werden. Zur Suche erzeugt Kpathsea eine Liste +der Verzeichnisse, die im Pfadelement enthalten sind, und durchsucht jedes dieser Verzeichnisse nach +der gesuchten Datei. + Für Dateien kann auch ein Schalter ‘file must exist’ gesetzt werden (»Datei muss vorhanden +sein«). Wenn dieser Schalter nicht gesetzt ist und beispielsweise über das TE X-Kommando \openin +eine VF-Datei wie cmr10.vf gelesen werden soll, wäre es falsch, nach dieser Datei zu suchen, weil es sie +gar nicht gibt. Speziell für neu installierte VF-Dateien sollten Sie also unbedingt die Dateinamen-Da- +tenbank (ls-R) aktualisieren, weil die Dateien sonst nicht gelesen werden und kein Fehler angezeigt wird. +Dieser Vorgang wiederholt sich für jede Komponente eines Suchpfades: zunächst wird die Datenbank +überprüft, danach ggf. das Dateisystem. Wird die Datei gefunden, stoppt die Suche (normalerweise) +und als Ergebnis wird der komplette Pfad zur gesuchten Datei ausgegeben. + Außer Verzeichnisnamen dürfen Pfadkomponenten für Kpathsea folgende Elemente enthalten: (ver- +schachtelte) Vorgaben, Umgebungsvariablen, Werte aus der Konfigurationsdatei, Home-Verzeichnisse +von Benutzern und Startverzeichnisse für eine rekursive Suche. Diese Elemente werden vor einer Datei- +suche von Kpathsea in gewöhnliche Verzeichnis- oder Dateinamen expandiert. Diese Expansion wird +in den folgenden Abschnitten erklärt, und zwar genau in der Reihenfolge, wie die Elemente auch von +Kpathsea bearbeitet werden. + Beachten Sie, dass Kpathsea bei absoluten und explizit relativen Komponenten, d. h. wenn die +Komponente mit den Zeichen ‘/’, ‘./’ oder ‘../’ beginnt, nur überprüft, ob die Datei existiert. +8.1.1 Bestandteile von Pfadkomponenten +Ein Suchpfad kann aus vielen verschiedenen Bestandteilen aufgebaut werden. Dies sind in der Reihen- +folge, wie Kpathsea sie auswertet: + 1. eine benutzerdefinierte Umgebungsvariable, z. B. TEXINPUTS: Wird an den Inhalt der Variablen + ein Punkt und ein Programmname angehängt, wie beispielsweise bei TEXINPUTS.latex, hat diese + Form Vorrang vor den »gewöhnlichen« Variablen. + 2. Einträge aus programmspezifischen Konfigurationsdateien, beispielsweise zum Programm dvips + eine Zeile ‘S /a:/b’ in der Konfigurationsdatei config.ps + + +8 ANLEITUNG ZUM WEB2C-SYSTEM 30 + 3. Einträge aus der Kpathsea-Konfigurationsdatei texmf.cnf, z. B. ‘TEXINPUTS=/c:/d’ (siehe fol- + genden Text) + 4. Einstellung beim Übersetzen der Programme +Unter Verwendung der Parameter zur Fehlersuche können Sie sich diese Werte für einen Suchpfad auch +anzeigen lassen. (Siehe dazu den Abschnitt Fehlersuche auf Seite 35.) +8.1.2 Konfigurationsdateien +Die Kpathsea-Bibliothek liest zur Laufzeit die Konfigurationsdateien mit den Namen texmf.cnf. Der +zugehörige Suchpfad zum Auffinden dieser Konfigurationsdateien steht in der Umgebungsvariablen +TEXMFCNF (die Voreinstellung ist texmf/web2c). Kpathsea liest alle Dateien mit den Namen texmf.cnf, +die es in diesem Suchpfad findet. Die zuerst gelesenen Definitionen haben dabei Vorrang vor später gele- +senen Werten. Wenn der Suchpfad auf .:\$TEXMF steht, überschreiben die Einstellungen in ./texmf.cnf +diejenigen in \$TEXMF/texmf.cnf. + Im Folgenden wird die Syntax der Datei texmf.cnf angegeben. Konsultieren Sie zum besseren +Verständnis beim Lesen die auf der CDROM oder DVD enthaltene Konfigurationsdatei. + ∙ Kommentare beginnen mit einem ‘%’ und erstrecken sich bis zum Zeilenende. + ∙ Leerzeilen werden überlesen. + ∙ Ein ‘\’ am Zeilenende fasst die aktuelle mit der folgenden Zeile zusammen. Leerraum in der + Folgezeile wird nicht überlesen. + ∙ Sonstige Zeilen haben den folgenden Aufbau: + Variable[.Programmname] [=] Wert + Das Zeichen »=« und umgebender Leerraum dürfen entfallen. + ∙ Der Name von Variable kann alle Zeichen außer Leerzeichen, ‘=’ und ‘.’ enthalten. Verwenden Sie + am besten nur die Zeichen ‘A-Za-z_’. + ∙ Wenn das Suffix ».Programmname« angegeben wird, gilt die Variable nur für das entsprechende + Programm »Programmname« oder »Programmname.exe«. Auf diese Weise können beispielsweise + verschiedene TE X-Formate mit unterschiedlichen Suchpfaden arbeiten. + ∙ Wert darf alle Zeichen außer % und @ enthalten. Die Einschränkung der Werte auf bestimmte + Programme über ein Suffix ist nicht zulässig. Ein ‘;’ in Wert wird unter UNIX in ‘:’ umgewandelt. + Dadurch ist die Verwendung der gleichen Konfigurationsdateien für UNIX und DOS/Windows- + Systeme möglich. + ∙ Die Definitionen werden komplett eingelesen, bevor eine Expansion stattfindet. Dadurch können + Sie die Variable schon vor Ihrer Definition referieren. + Der Ausschnitt einer Konfigurationsdatei demonstriert diese Möglichkeiten. +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 Expansion von Pfadkomponenten +Kpathsea verwendet in Suchpfaden ähnliche Zeichen und Konstrukte wie UNIX-Shells. Beispielsweise +wird die Definition ~$USER/{foo,bar}//baz in alle Unterverzeichnisse von foo und bar unterhalb +vom Home-Verzeichnis von \$USER expandiert, die eine Datei oder ein Unterverzeichnis namens baz +enthalten. Der Expansionsmechanismus wird im Folgenden erklärt. + + + 8 ANLEITUNG ZUM WEB2C-SYSTEM 31 + 8.1.4 Expansion der Voreinstellungen +Wenn der Suchpfad mit der höchsten Priorität (siehe hierzu »Bestandteile von Pfadkomponenten« auf +Seite 29) einen zusätzlichen (vorangestellten, nachgestellten oder verdoppelten) Doppelpunkt enthält, +wird an dieser Stelle der Suchpfad eingefügt, der als nächstes in der Hierarchie folgt. Auch bei diesem +gilt dieselbe Regel. Wenn beispielsweise die Umgebungsvariable +> setenv TEXINPUTS /home/karl: + gesetzt wird (hier: C-Shell) und in texmf.cnf die Variable TEXINPUTS folgenden Wert erhält + .:$TEXMF//tex + dann lautet der Suchpfad schließlich: + /home/karl:.:$TEXMF//tex + Da es sinnlos wäre, denselben Pfad mehrfach einzufügen, wird die Ersetzung nur einmal vorgenom- +men, und zwar in der Reihenfolge vorne, hinten und Mitte. Mehrfach verdoppelte Doppelpunkte bleiben +unverändert. +8.1.5 Expansion geschweifter Klammern +Die Expansion geschweifter Klammern ist zur Definition mehrerer TE X-Hierarchien sehr nützlich. Bei- +spielsweise wird v{a,b}w zu vaw:vbw. Verschachtelungen sind dabei erlaubt. Diese Technik wird dazu +benutzt, durch eine Zuweisung an $TEXMF verschiedene TE X-Hierarchien einzuführen. Als Beispiel finden +Sie in texmf.cnf folgende Definition (etwas gekürzt, tatsächlich ist es etwas komplexer): + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} + Eine Anwendung wie + TEXINPUTS = .;$TEXMF/tex// +führt dann dazu, dass erst im aktuellen Verzeichnis gesucht wird, dann im gesamten Dateibaum +$TEXMFHOME/tex und $TEXMFLOCAL/tex (auf der Festplatte) und schließlich im gesamten Dateibaum +\$TEXMFVAR/tex sowie $TEXMFMAIN/tex (nur in der Datenbank ls-R) durchsucht wird. Dadurch kann +man bequem zwei parallel installierte TE X-Hierarchien durchsuchen, beispielsweise eine unveränderliche +auf CDROM/DVD und eine dynamisch angepasste auf Festplatte, in der neue Programmversionen +und zusätzliche Zeichensätze installiert werden. Durch die Verwendung der Variablen $TEXMF in allen +Definitionen wird grundsätzlich zuerst der neuere Dateibaum durchsucht. +8.1.6 Expansion von Unterverzeichnissen +Zwei oder mehrere aufeinanderfolgende Schrägstriche (//) in einer Pfadkomponente, die auf einen Ver- +zeichnisnamen d folgen, werden expandiert zu allen Unterverzeichnissen von d. Dieser Vorgang findet +rekursiv statt, wobei erst alle Verzeichnisse auf einer Ebene bearbeitet werden, dann deren Unterver- +zeichnisse, usw. Auf den jeweiligen Ebenen ist nicht beeinflussbar, in welcher Reihenfolge die Unterver- +zeichnisse bearbeitet werden. + Wenn nach den Schrägstrichen Namen angegeben werden, dann werden nur Unterverzeichnisse mit +passenden Namen in die Suche einbezogen. Beispielsweise wird ‘/a//b’ in die Pfade /a/1/b, /a/2/b, +/a/1/1/b usw. expandiert, aber nicht zu /a/b/c oder /a/1. (Jeweils vorausgesetzt, dass die Verzeich- +nisse existieren.) + Mehrere ‘//’-Konstruktionen innerhalb einer Pfadkomponente sind zulässig, allerdings nicht am +Pfadanfang. +8.1.7 Liste der Sonderzeichen und ihre Bedeutung: eine Zusammenfassung +Die folgende Zusammenfassung fasst alle Sonderzeichen zusammen, die in den Kpathsea-Konfigurati- +onsdateien auftreten können: +: Trennzeichen für Pfadkomponenten; als erstes oder letztes Zeichen im Pfad bewirkt es die + Expansion der Voreinstellungen. + + + 8 ANLEITUNG ZUM WEB2C-SYSTEM 32 + ; Trennzeichen für Pfadkomponenten für andere Rechnerplattformen als UNIX (Verwendung wie + »:«) + $ Expansion von Variableninhalten + ~ Home-Verzeichnis eines Benutzers (Tilde) + {...} Expansion geschweifter Klammern: beispielsweise wird a{1,2}b zu a1b:a2b. + // Expansion von Unterverzeichnissen: tritt niemals am Anfang einer Pfadkomponente auf. + % Kommentar + \ Konkatenation mit Folgezeile(n) + !! Einschränkung der Suche ausschließlich auf die Dateinamen-Datenbank: Das Dateisystem wird + nicht durchsucht! +8.2 Dateinamen-Datenbanken +Kpathsea unternimmt etliche Anstrengungen, um den Zugriff auf Festplatte und CDROM/DVD zur +Suche nach Dateien zu reduzieren. Auf TE X-Systemen mit vielen Unterverzeichnissen kann die Suche +in jedem möglichen Verzeichnis nach einer bestimmten Datei eine lange Zeit in Anspruch nehmen, +besonders wenn einige Hundert Zeichensatzverzeichnisse durchforstet werden müssen. Um dieses Pro- +blem abzumildern, benutzt Kpathsea eine Art Datenbankdatei namens ls-R, die die Zuordnung von +Dateinamen auf Verzeichnisse enthält. Dadurch muss nicht jedesmal die Festplatte durchsucht werden. + Eine zweite Datenbank in der Datei aliases kann eine Zuordnung zwischen den Namen in ls-R +und weiteren Namen vornehmen und so beispielsweise hilfreich bei der Umsetzung von ‘8.3’-DOS- +Dateinamen auf die »echten«, aussagekräftigen Dateinamen zur Seite stehen. +8.2.1 Die ls-R-Datenbank +Wie schon öfters erwähnt, muss die Dateinamen-Datenbank in der Datei ls-R gespeichert sein. Sie +sollten eine solche Datenbank für jede TE X-Hierarchie (normalerweise in $TEXMF) Ihres Systems anlegen. +Kpathsea sucht die Datenbanken ls-R über den Pfad TEXMFDBS. + Es wird empfohlen, die Pflege der ls-R-Dateien dem mitgelieferten Skript mktexlsr zu überlassen. +Dieses Skript wird automatisch von den verschiedenen ‘mktex*’-Skripten aufgerufen. Das Skript ruft +grob gesagt den Befehl +cd /your/texmf/root && ls -LAR ./ >ls-R + auf, falls das Kommando ls Ihres Rechners eine Ausgabe im richtigen Format liefert. (So wie das +GNU-ls.) Wenn Sie ganz sichergehen wollen, dass die Datenbank immer auf dem neuesten Stand ist, +sollten Sie sie in regelmäßigen Abständen mit Hilfe eines crontab-Eintrags aktualisieren lassen. Dadurch +wird nach einer Installation eines Pakets per Hand trotzdem sichergestellt, dass die Datenbank aktuell +ist. + Wenn eine Datei nicht über die Datenbank gefunden wird, sucht Kpathsea normalerweise auf der +Festplatte weiter. Wenn eine Pfadkomponente mit ‘!!’ beginnt, wird dagegen niemals die Festplatte +durchsucht. +8.2.2 kpsewhich: Dateisuche +Mit dem Programm kpsewhich können Sie unabhängig vom Aufruf irgendeines TE X-Programms nach +Dateien in der TE X-Hierarchie suchen (als schnellere Alternative zu dem Befehl find). Dies wird von den +verschiedenen ‘mktex...’-Skripten bis zum Exzess vorexerziert. +> kpsewhich option... filename... + Die Optionen werden entweder mit ‘-’ oder mit ‘--’ eingeleitet. Jede eindeutige Abkürzung ist +zulässig. + Argumente der Kommandozeile, die keine Optionen darstellen, werden als Dateinamen interpretiert. +Für jeden Dateinamen wird der erste passende Pfad gemeldet. Um eine Liste aller passenden Pfade zu +erhalten, müssen Sie das UNIX-Kommando find aufrufen. + Im Folgenden werden die häufiger benutzten Optionen beschrieben. + + + 8 ANLEITUNG ZUM WEB2C-SYSTEM 33 + --dpi=num + Stellt die Auflösung für die Suche nach Zeichensätzen (nur .gf oder .pk) auf num dpi. Alternativ + kann die Option -D (kommt von dvips) benutzt werden. Voreinstellung ist 600. + --format=name + Setzt das Format zur Suche auf name. Per Voreinstellung versucht kpsewhich das Format über den + Dateinamen zu erschließen. Bei Formaten ohne zugeordnete Namensendung wie den zu MetaPost + gehörenden Dateien und den Konfigurationsdateien zu dvips müssen Sie den entsprechenden Na- + men so eingeben, wie er Kpathsea bekannt ist. + --mode=string + Setzt für die Zeichensatzsuche den Generierungsmodus (betrifft nur .gf- oder .pk-Dateien). Nor- + malerweise werden alle Zeichensätze gemeldet. + --must-exist + Es wird versucht, die Dateien notfalls durch eine Suche auf der Festplatte zu finden. Normalerweise + wird nur die ls-R-Datenbank konsultiert. + --path=string + Sucht entlang des angegebenen Pfads statt des Standardpfads, der auf Grund der Endung gewählt + wird. Alle Expansionen sind zulässig. Bei Verwendung der Option --path darf nicht die Option + --format angegeben werden. + --progname=name + Setzt den Programmnamen für die genauere Variablenspezifikation über ‘.Programmname’. Vor- + einstellung ist ‘kpsewhich’. + --show-path=name + Zeigt den Suchpfad für die angegebene Namensendung. Diese kann entweder als Namensendung + (‘.pk’, ‘.vf’, usw.) oder als Name (wie bei der Option --format) spezifiziert werden. + --debug=num + Legt den Umfang für die Fehlersuche fest. +8.2.3 Anwendungsbeispiele +Wir schauen uns nun die Funktionsweise von Kpathsea anhand einiger Beispiele an. +> kpsewhich article.cls + /usr/local/texmf-dist/tex/latex/base/article.cls + Wir suchen unter den TE X-Quelldateien nach der Datei article.cls. Da die Namensendung ‘.cls’ +eindeutig ist, müssen wir den Typ ‘.tex’ nicht angeben. Die ‘texmf-dist’-Hierarchie enthält die Datei +im Unterverzeichnis tex/latex/base. Ähnlich bereiten die folgenden Beispiele auf Grund eindeutiger +Namensendungen keine Probleme. +> 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 + Beim letzten Beispiel handelt es sich übrigens um eine BibTE X-Literaturdatenbank für TUGBoat- +Artikel. +> kpsewhich cmr10.pk + + +8 ANLEITUNG ZUM WEB2C-SYSTEM 34 + Zeichensatzdateien mit der Namensendung ‘.pk’ werden von Anzeige- oder Druckaufbereitungspro- + grammen wie dvips und xdvi verwendet. Nachdem wir aufgrund der Voreinstellung keine .pk-Dateien + verwenden, sondern die PostScript-Type 1-Zeichensätze, die auf der CDROM/DVD enthalten sind, wird + auch keine .pk-Datei angezeigt. + > kpsewhich wsuipa10.pk + /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk + Für diesen Zeichensatz (Teil der IPA-Fonts1 von der Universität von Washington) liegen noch kei- + ne Type 1-Umsetzungen vor und ‘.pk’-Dateien müssen generiert werden. Da unser voreingestellter + METAFONT-Modus ‘ljfour’ eine Auflösung von 600 dpi besitzt, finden wir (nachdem er schon einmal + gebraucht und automatisch erzeugt wurde) eine entsprechende Instanz dieses Zeichensatzes. + > kpsewhich -dpi=300 wsuipa10.pk + Durch die Angabe »-dpi=300« interessieren wir uns nur für Zeichensätze mit der Auflösung 300 dpi. + Es wurde keiner gefunden. Programme wie dvips oder xdvi lassen einen solchen fehlenden Zeichensatz + durch den Aufruf des Skripts mktexpk mit entsprechenden Parametern automatisch erzeugen. + Als nächstes wenden wir uns den Header- und Konfigurationsdateien von dvips zu. Zunächst suchen + wir nach der Konfiguration für die TE X-Unterstützung, dem Prolog tex.pro. Danach suchen wir die + allgemeine Konfigurationsdatei (config.ps) und schließlich die PostScript-Zeichensatzzuordnungsdatei + psfonts.map. Dateien dieser Art haben seit der 2004er-Version der TE X Live ihre eigenen Suchpfade + und einen neuen Aufbewahrungsort im texmf-Baum. Da die Namensendung ‘.ps’ nicht eindeutig ist, + müssen wir den gewünschten Typ (‘dvips config’) für die Datei config.ps spezifizieren. + > 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 + Jetzt suchen wir nach den Dateien für den PostScript-Zeichensatz »URW Times«. Nach dem Na- + mensschema von Karl Berry beginnen die Namen mit »utm«. Zunächst suchen wir die Konfigurations- + datei, die den Namen der Zeichensatzzuordnungsdatei enthält. + > kpsewhich --format="dvips config" config.utm + /usr/local/texmf-dist/dvips/psnfss/config.utm + Diese Datei enthält folgende Anweisung: + p +utm.map + Die angegebene Datei utm.map wollen wir als nächstes suchen: + > kpsewhich utm.map + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map + Diese Zuordnungsdatei wird im Unterverzeichnis urw bei den Hilfsdateien für dvips gefunden. Sie + enthält die Dateinamen der Type 1-PostScript-Zeichensätze, die für URW Times benutzt werden. Ein + kleiner Auszug aus dieser Datei: + 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 + Wenn wir jetzt beispielsweise nach dem Zeichensatz Times Regular (utmr8a.pfb) suchen, finden wir + ihn im Verzeichnis texmf unter den Type 1-Zeichensätzen: +__________________________________ + 1IPA: International Phonetic Alphabet + + + 8 ANLEITUNG ZUM WEB2C-SYSTEM 35 + > kpsewhich utmr8a.pfb + /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb + Diese Beispiele sollten deutlich gemacht haben, wie leicht bestimmte Dateien im TE X-Dateibaum + gefunden werden können. Dies ist sehr wichtig, wenn Sie den Verdacht haben, dass eine falsche Version + einer Datei verwendet wird: Sie lassen sich einfach die verwendete Datei von kpsewhich anzeigen. +8.2.4 Fehlersuche +Manchmal ist wichtig, bis ins Detail nachzuvollziehen, wie ein Programm eine bestimmte Datei findet. +Zu diesem Zweck bietet die Kpathsea-Bibliothek verschiedene Stufen für den Umfang der Fehlersuche +an. + 1 stat-Aufrufe (Überprüfung, ob Datei existiert); mit einer aktuellen ls-R-Datenbank sollten Sie + fast keine Meldungen erhalten. + 2 Zugriffe auf Suchlisten (wie ls-R-Datenbanken, Zuordnungsdateien (.map), Konfigurationsdatei- + en) + 4 Öffnen und Schließen von Dateien + 8 Auflisten der voreingestellten Pfade für Extensionen + 16 Verzeichnisliste für jede Pfadkomponente (nur bei Festplattenzugriff) + 32 Suchaktionen nach Dateien + 64 Werte von Variablen. + Durch die Angabe von ‘-1’ setzen Sie alle Stufen gleichzeitig. Für eine effiziente Fehlersuche sollten +Sie sich auf die wichtigsten Ausgaben beschränken. + Für dvips gibt es einen ähnlichen Mechanismus zur Erzeugung von Analysemeldungen, um herauszu- +finden, warum bestimmte Dateien geöffnet wurden bzw. wo vielleicht das Problem liegt, wenn Dateien +nicht gefunden werden. + Da fast alle Programme die Kpathsea-Bibliothek benutzen, können Sie die gewünschte Stufe auch +über die Umgebungsvariable KPATHSEA_DEBUG einstellen, indem Sie einen der Werte oder eine additive +Kombination spezifizieren. + Anmerkung für Windows-Benutzer: Es ist nicht einfach, alle Meldungen in eine Datei umzulenken. +Für die Fehlersuche jedoch ist die folgende (temporäre!) Vereinbarung sinnvoll: + SET KPATHSEA_DEBUG_OUTPUT=err.log + Wir betrachten als Beispiel eine kleine LATE X-Quelldatei mit dem Namen hello-world.tex mit +folgendem Inhalt: + \documentclass{article} + \begin{document} + Hello World! + \end{document} + Diese Datei verwendet nur einen Zeichensatz, nämlich cmr10. Wir sehen uns jetzt einmal genau +an, wie dvips die PostScript-Datei erzeugt. Da wir die Type 1-Variante der Computer-Modern-Roman- +Zeichensätze verwenden wollen, haben wir die Option -Pcms verwendet. +> dvips -d4100 hello-world -Pcms -o + Hier haben wir als Stufe zur Fehlersuche eine Kombination der Stufe 4 von dvips (siehe dvips- +Handbuch, texmf/doc/html/dvips/dvips\_toc.html?). Die Ausgabe sieht ungefähr so wie in Abbil- +dung 12 dargestellt aus (die Ausgabe wurde für einen besseren Überblick etwas umgestaltet). + Zunächst sucht dvips (bzw. Kpathsea) seine Konfigurationsdateien, nämlich texmf.cnf (das die Pfa- +de der anderen Dateien enthält), dann die Dateinamen-Datenbank ls-R (zur Optimierung der Suche) +und die Datei aliases, mit deren Hilfe für eine Datei mehrere Namen vereinbart werden können, z. B. +um die kurzen ‘8.3’-DOS-Namen mit aussagefähigen, langen Namen zu assoziieren. Danach wird die +allgemeine dvips-Konfigurationsdatei config.ps, anschließend die benutzerspezifische Konfigurations- +datei .dvipsrc (wird hier nicht gefunden) gesucht. Als letztes sucht dvips die Zuordnungsdatei für +Computer-Modern-PostScript-Zeichensätze config.cms (bedingt durch die Option -Pcms beim Aufruf +von dvips). Diese Datei enthält die Dateinamen der Listen, die die Zuordnung zwischen Dateinamen +und Zeichensatznamen herstellen. + + + 8 ANLEITUNG ZUM WEB2C-SYSTEM 36 + 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 + Abbildung 12: Suche nach Konfigurationsdateien + 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 + Abbildung 13: Suche nach Prologdateien + 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] + Abbildung 14: Suche nach Font-Dateien + > more /usr/local/texmf/dvips/cms/config.cms + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map + dvips versucht, diese Dateien und zusätzlich die allgemeine Zeichensatzzuordnungstabelle + psfonts.map zu laden, die immer konsultiert wird; der letzte Teil von Abschnitt 8.2.3 erklärt diese + Tabellen genauer. + Jetzt erfolgt die normale Startmeldung von dvips: + dvips(k) 5.94a +kpathsea version +Copyright (C) 2003 Radical Eye Software. +... + Danach wird nach texc.pro gesucht: + + + 8 ANLEITUNG ZUM WEB2C-SYSTEM 37 + 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 + Dann gibt dvips Datum und Uhrzeit aus und meldet den Dateinamen der erzeugten PostScript-Datei + hello-world.ps. Jetzt wird die Zeichensatzdatei cmr10 benötigt, die dvips als »resident« meldet. + TeX output 1998.02.26:1204’ -> hello-world.ps + Defining font () cmr10 at 10.0pt + Font cmr10 <CMR10> is resident. + Es geht weiter mit cmr10.tfm und einigen weiteren Prologdateien, deren Ausgaben wir hier weglas- + sen. Letztlich wird die Type 1-Zeichensatzdatei cmr10.pfb gesucht (und gefunden) und in die Ausga- + bedatei integriert (siehe letzte Zeile). + 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 Einstellungen zur Laufzeit +Zu den willkommenen Erweiterungen von Web2C zählt die Möglichkeit, zur Laufzeit einige Speicher- +größen über die Datei texmf.cnf anpassen zu können (insbesondere die Größe einiger Stacks). Eine +ausführliche Liste der veränderbaren Parameter finden Sie in der Datei texmf.cnf. Die wichtigsten +Werte sind: + main_memory + Arbeitsspeicher für TE X, METAFONT und MetaPost in Worten: Für jede Einstellung muss eine + eigene Format-Datei erstellt werden. Allerdings können Sie mehrere Versionen von TE X unter + verschiedenen Namen erzeugen und in der Konfigurationsdatei jeweils eigene Einträge vorsehen. + Hier gibt es ein Monster-TE X namens ‘hugetex’ mit der zugehörigen Format-Datei hugetex.fmt, + wobei der spezielle Wert der Variablen main_memory dann aus der Datei texmf.cnf gelesen wird. + extra_mem_bot + Extraspeicher für »große« TE X-Datenstrukturen wie Boxen, Glue, Breakpoints, usw.: Besonders + bei Anwendung von PI CTE X sollte dieser Wert erhöht werden. + font_mem_size + Anzahl der Worte für Speicherung von Zeichensatzinformationen: Entspricht ungefähr dem + Speicherbedarf der gelesenen TFM-Dateien. + hash_extra + Zusätzlicher Platz für Suchlisten: In der Hauptliste können ca. 10000 Einträge verwaltet werden. + Bei einem Buch mit vielen Querverweisen reicht dieser Platz unter Umständen nicht aus. Die + Voreinstellung für hash_extra ist 50000. + Natürlich sind diese Parameter kein Ersatz für eine wirklich dynamische Speicherverwaltung. Mit der +gegenwärtigen Version von TE X ist dieses Konzept aber nur extrem schwer zu implementieren; darum +stellt dieses Verfahren eine praktikable Lösung dar. + + + 9 DANKSAGUNGEN 38 + 9 Danksagungen +Die TE X Live ist eine gemeinsame Arbeit faktisch aller TE X Users Groups. + Die Entwicklung des vorliegende TE X Live-Release wurde von Karl Berry geleitet; die übrigen Haupt- +Mitarbeiter sind im Folgenden aufgelistet. + ∙ Den englisch-, deutsch-, niederländisch-, und polnisch-sprachigen TE X-Anwendervereinigungen + (TUG, DANTE e.V., NTG, and GUST), die zusammen die technische und administrative Infrastruk- + tur zur Verfügung stellen. Wir würden uns freuen, wenn Sie bei einer der Anwendervereinigungen + Mitglied werden. + ∙ Dem CTAN Team, insbesondere Robin Fairbairns, Jim Hefferon, und Rainer Schöpf, das die TE X + Live-CD-Images und die Infrastruktur für Paketupdates zur Verfügung stellt, von denen TE X Live + abhängt. + ∙ John Bowman, der viele Änderungen an dem Grafikprogramm Asymptote vornam, damit es als + Teil von TE X Live arbeitet. + ∙ Peter Breitenlohner und dem ε-TE XTeam für den stabilen Grundstock zu TE Xs Zukunft, und + Peter speziell für wertvolle Hilfe zum Verwenden von GNU autotools in TE X Live; + ∙ Jin-Hwan Cho und allen Mitgliedern des DVIPDFMx-Teams für deren exzellentes Programm und + Mithilfe bei Konfigurationsfragen. + ∙ Thomas Esser, der mit dem exzellenten teTE X die Basis für dieses TE X Live schuf; + ∙ Michel Goossens, als Coautor der englischen Original-Dokumentation; + ∙ Eitan Gurari, mit dessen TE X4ht die HTML-Version dieser Anleitung erstellt wurde und der + unermüdlich daran gearbeitet hat, es auf Zuruf zu verbessern. Eitan Gurari verstarb leider im + Juni 2009, diese Anleitung ist seinem Andenken gewidmet. + ∙ Hans Hagen, für zahlreiche Tests und Aktivitäten, damit ConTE Xt (http://pragma-ade.com) ein + Teil von TE X Live sein kann; + ∙ Hàn Thê´ Thành, Martin Schröder und das pdfTE X-Team (http://pdftex.org), die die Arbeiten + zur Erweiterung der Möglichkeiten von TE X fortgesetzt haben; + ∙ Taco Hoekwater, für neue Entwicklungen von MetaPost und (Lua)TE X (http://luatex.org), + und ebenfalls für die Unterstützung beim ConTE Xt-Teil von TE X Live, Weiterentwicklungen von + Kpathsea und vieles mehr; + ∙ Klaus Höppner u. a. für die Betreuung dieses Dokuments + ∙ Paweł Jackowski für das Installationsprogramm tlpm für Windows, Tomasz Łuczak für tlpmgui in + früheren Versionen von TE X Live; + ∙ Akira Kakuto, für Windows-Programme im Rahmen seines W32TEX Distribution (http://www.32tex.org/); + ∙ Jonathan Kew für die Entwicklung von XeTE X und die Zeit und Mühe, es in TE X Live zu in- + tegrieren, sowie für die erste Version des MacTE X-Installers, und für das von uns als Oberfläche + empfohlene TE Xworks; + ∙ Dick Koch für die Betreuung von MacTE X (http://tug.org/mactex); + ∙ Reinhard Kotucha, für die Unterstützung bei der Infrastruktur von TE X Live und das Installati- + onsprogramm, für seine Windows-Untersuchungen, für das getnonfreefonts Script, und vieles + mehr; + ∙ Siep Kroonenberg, für wertvolle Beiträge zur Infrastruktur von TE X Live 2008 und den Installer, + insbesondere unter Windows, und für einen Großteil der Arbeit, die Dokumentation dafür zu + schreiben; + ∙ Heiko Oberdiek für das Paket epstopdf (und viele weitere), für die Kompression der riesigen + Datenmengen von pst-geo, so dass sie in TE X Live passten, und natürlich für seine Arbeit an + hyperref. + + + 10 GESCHICHTLICHES 39 + ∙ Petr Olsak, der das tschechische und slowakische Material sehr sorgfältig er- und überarbeitet hat; + ∙ Toshio Oshima, für den dviout-Previewer für Windows; + ∙ Manuel Pégourié-Gonnard, für die Mithilfe beim Aktualisieren von Paketen, der Dokumentation + und Arbeit an texdoc; + ∙ Fabrice Popineau für die erste Windows-Version von TE X Live und Mithilfe bei der französischen + Dokumentation; + ∙ Norbert Preining, Hauptkoordinator für TE X Live-Infrastruktur und den Installer, für die Ko- + ordination der Debian Version von TE X Live (zusammen mit Frank Küster), und die daraus + resultierenden Verbesserungsvorschläge; + ∙ Sebastian Rahtz für die Erfindung von TE X Live und die langjährige Leitung des Projekts; + ∙ Phil Taylor, der die BitTorrent-Downloads eingeführt hat; + ∙ Tomasz Trzeciak für seine Hilfe mit Windows; + ∙ Vladimir Volovich für viele substanzielle Mithilfe, und dafür, dass er es möglich gemacht hat, xindy + in TE X Live aufzunehmen; + ∙ Staszek Wawrykiewicz, der Haupttester für alles, was mit TE X zusammen hängt, Koordinator der + polnischen Beiträge, Windows-Installation und mehr; + ∙ Olaf Weber für die Geduld beim Pflegen von Web2C; + ∙ Gerben Wierda für das Erstellen und Pflegen des ursprünglichen Mac OS X-Teils und für viele + Integrations- und Testarbeiten; + ∙ Graham Williams, dessen Arbeit das Makro- und Paketverzeichnis möglich gemacht hat. + Lauffähige Programme: Alan Braslau (amd64-kfreebsd, i386-kfreebsd), Peter Breitenlohner + (x86_64-linux), Karl Berry (i386-linux, sparc-linux), Ken Brown (i386-cygwin), Akira Kakuto (win32), + Dick Koch (universal-darwin, x86_64-darwin), Nikola Lečić (amd64-freebsd, i386-freebsd), Norbert Prei- + ning (alpha-linux), Jukka Salmi (i386-netbsd), Thomas Schmitz (powerpc-linux), Apostolos Syropoulos + (i386-solaris, x86_64-solaris), Vladimir Volovich (powerpc-aix, sparc-solaris), Olaf Weber (mips-irix). + Informationen dazu, wie Binaries für TE X Live erzeugt werden, finden sich unter http://tug.org/texlive/build.html. + Übersetzungen der Dokumentation: + ∙ Boris Veytsman (Russisch) + ∙ Jjgod Jiang, Jinsong Zhao, Yue Wang, & Helin Gai (Chinesisch) + ∙ Klaus Höppner (Deutsch) + ∙ Manuel Pégourié-Gonnard (Französisch) + ∙ Marco Pallante (Italienisch) + ∙ Nikola Lečić (Serbisch) + ∙ Petr Sojka & Jan Busa (Tschechisch/Slowakisch), + ∙ Staszek Wawrykiewicz (Polnisch). + Natürlich haben wir am meisten Donald Knuth zu danken, einmal dafür, dass er TE X erfand und + dann dafür, dass er es der Welt schenkte. +10 Geschichtliches +Diese Ausgabe der TE X Live ist in Zusammenarbeit der TE X Users Group (TUG), der UKTUG, der fran- +zösischen TE X-Vereinigung GUTenberg und der deutschsprachigen TE X-Anwendervereinigung (DANTE +e. V.) unter Mithilfe der niederländischen, tschechischen/slowakischen, indischen, polnischen und russi- +schen TE X-Benutzergruppen entstanden. + + + 10 GESCHICHTLICHES 40 + 10.1 Vergangenheit +Die niederländische TE X-Benutzergruppe hatte Ende 1993 mit der Produktion der 4AllTE X-CDROM +für MS-DOS die Diskussion angeregt, eine einzige CDROM für alle Rechnersysteme zu entwickeln. Zum +damaligen Zeitpunkt war dieses Ziel zu hoch gesteckt, doch immerhin entstand aus dieser Diskussion +nicht nur die sehr erfolgreiche 4AllTE X-CDROM, sondern auch die TUG-Arbeitsgruppe zur Definition der +TE X Directory Structure TDS, die die zur Arbeit mit TE X notwendigen und hilfreichen Dateien in eine +konsistente und handhabbare Verzeichnisstruktur einbettet. Das »Final Draft«-Dokument, das diese +Verzeichnisstruktur festlegt, wurde in der Dezember-Ausgabe 1995 der TUGBoat veröffentlicht. Schon +frühzeitig war den Beteiligten klar, dass eine CDROM auf der Basis der TDS sehr zu begrüßen wäre. +Die TE X Live-CDROM war das direkte Resultat der Beratungen der TDS-Arbeitsgruppe. Außerdem hat +der Erfolg der 4AllTE X-CDROM klargemacht, dass ein ähnliches System auch für UNIX-Benutzer eine +Erleichterung darstellen würde. Dies war der zweite Beweggrund für die TE X Live-CDROM. + Im Herbst 1995 wurde das Projekt, eine TDS-basierte UNIX-CDROM zu entwickeln, in Angriff ge- +nommen. Sehr schnell stießen die Verantwortlichen auf das teTE X-System von Thomas Esser als idealen +Ausgangspunkt für diese Arbeit, weil es verschiedene Rechnerplattformen unterstützte und für die Ar- +beit mit verschiedenen Dateisystemen vorgesehen war. Anfang 1996 wurde in Zusammenarbeit mit +Thomas Esser ernsthaft mit der Arbeit begonnen und im Mai 1996 die erste Ausgabe der CDROM +veröffentlicht. + Anfang 1997 stellte Karl Berry eine neue Version seines Web2C-TE X-Systems vor, das schon na- +hezu alle Ausstattungsmerkmale aufwies, die Thomas Esser mit teTE X verwirklicht hatte. Die TUG +entschied sich daraufhin, die zweite Version der CDROM auf der Basis von Web2C unter Verwendung +des Installations-Skripts texconfig aus dem teTE X-Paket zu entwickeln. + Die dritte Ausgabe basierte auf der inzwischen von Olaf Weber gepflegten und weiter entwickelten +Web2C Version 7.2; TE X Live unterstützte fast alle Eigenschaften der zur selben Zeit entstandenen +neuen Version von teTE X. + Die vierte Ausgabe folgte demselben Schema, indem ihr neue Versionen von teTE X und Web2C (7.5) +zugrunde lagen. Fast die gesamte CDROM wurde einer kritischen Überprüfung unterzogen, wobei be- +sonders darauf geachtet wurde, dass doppelte Dateien entfernt wurden und die Einordnung der Pakete +konsistent erfolgte. Zudem enthielt diese Ausgabe ein komplettes Windows-Setup. + Für die fünfte Ausgabe im März 2000 wurden wiederum große Teile der CDROM ersetzt, wobei +Hunderte von überarbeiteten Paketen aufgenommen wurden. Ω, pdfTE X und Teile der TE X-Support- +Programme (hier insbesondere xdvi, dvips und tex4ht) lagen in neuer Version vor. Die Hauptänderung bei +der TE X Live 5 betraf die ‘non-free’-Software. Alles auf dieser CDROM war nun in Übereinstimmung +mit den Debian Free Software Guidelines (http://www.debian.org/intro/free). Wir haben unser +Bestes versucht, die Lizenzbedingungen aller Pakete zu überprüfen, sind aber dankbar, wenn wir auf +Fehler hingewiesen werden. + Die sechste Ausgabe der TE X Live vom Juli/August 2001 enthielt die neuesten Versionen aller +Pakete und Programme. Das neue Installationskonzept stellte die größte Änderung dar: Der Benutzer +konnte nun viel genauer gewünschte bzw. nicht erwünschte Sammlungen und Pakete auswählen. Dabei +wurden die sprachspezifischen Sammlungen komplett überarbeitet, so dass sie jetzt automatisch nicht +nur Makros, Fonts usw. installierten, sondern zusätzlich die notwendigen Einträge in language.dat +vornahmen. + Die siebte Ausgabe vom Mai 2002 enthält als größte Änderungen Mac OS X und wieder unzählige +Updates aller Pakete und Programme. Ein wesentliches Ziel war zudem die Wiedererstellung einer ge- +meinsamen Quelle mit teTE X, um das Auseinanderlaufen seit TE X Live 5 und TE X Live 6 zu korrigieren. +10.2 2003 +Im Jahr 2003 war die Flut von Updates und neuen Paketen so groß geworden, dass wir feststellen +mussten: »TE X Live passt nicht mehr auf eine einzelne CDROM«. Und so wurde sie in drei verschiedene +Distributionen aufgeteilt (siehe Abschnitt 2.1 auf Seite 6). Des Weiteren: + ∙ Auf Wunsch des LATE X-Teams wurde der Standard für latex und pdflatex verändert; beide benutzen + nun ε-TE X als Basis (siehe Seite 8). + ∙ Die neuen »Latin Modern Fonts« wurden aufgenommen (und werden zur Benutzung empfohlen). + ∙ Der Support für Alpha-OSF wurde aufgegeben (den HPUX-Support hatte es schon zuvor ereilt), + da niemand mehr in der Lage war, neue Binaries zu kompilieren. + + + 10 GESCHICHTLICHES 41 + ∙ Das Setup für Windows wurde grundlegend überarbeitet. Zum ersten Mal wurde eine integrierte + Umgebung eingeführt, die auf XEmacs basiert. + ∙ Wichtige Hilfsprogramme für Windows (Perl, Ghostscript, ImageMagick, Ispell) werden nun im + TE X Live-Verzeichnis installiert. + ∙ Die von dvips, dvipdfm und pdftex benutzten Font-Mapfiles werden vom neuen Programm updmap + generiert und in texmf/fonts/map installiert. + ∙ TE X, METAFONT und MetaPost geben nun die meisten 8-Bit-Input-Zeichen (Position 32 und + oberhalb) unverändert aus in (\write)-Files, Logfiles und auf dem Terminal. Das bedeutet, dass + sie nicht mit der ^^-Notierung übersetzt ausgegeben werden. Auf der TE X Live 7 war diese Über- + setzung abhängig von der locale-Einstellung des Systems; nun beeinflussen locale-Einstellung nicht + TE Xs Programmverhalten. Falls Sie aus irgendwelchen Gründen die ^^-Ausgabe benötigen, müs- + sen Sie in Ihrem System die Datei texmf/web2c/cp8bit.tcx umbenennen (zukünftige Versionen + werden eine sauberere Schnittstelle zur Kontrolle dieses Verhaltens anbieten). + ∙ Die Dokumentation wurde grundlegend überarbeitet. + ∙ Zum Abschluss einigten wir uns auf eine neue Edition-Nummerierung. Ab diesem Jahr trägt die + TE X Live statt einer fortlaufenden Nummer die Jahreszahl: TE X Live 2003. +10.3 2004 + ∙ Wenn Sie lokal installierte Zeichensätze mit ihren eigenen .map- oder (weniger wahrscheinlich) + .enc-Dateien benutzen, müssen Sie möglicherweise diese Dateien verschieben. + Nach den .map-Dateien wird jetzt in den fonts/map-Unterverzeichnissen im TEXFONTMAPS-Pfad + gesucht (in jedem texmf-Baum). Gleichzeitig werden .enc-Dateien jetzt in den fonts/enc- + Unterverzeichnissen entlang des ENCFONTS-Pfads gesucht. Das Programm updmap versucht, bei + problematischen Dateien zu warnen. + Informationen darüber, wie das gehandhabt wird, und zusätzliche Informationen finden Sie unter + http://tug.org/texlive/mapenc.html. + ∙ Die TE X Collection wurde für all diejenigen, die diese Implementierung Web2C vorziehen, um eine + MiKTE X-basierte und installierbare CDROM erweitert. Siehe dazu auch Abschnitt 2 auf Seite 6. + ∙ In der TE X Live wurde der umfangreiche texmf-Baum früherer Versionen durch drei Teilbäume + ersetzt: texmf, texmf-dist und texmf-doc. Siehe dazu Abschnitt 2.2 auf Seite 7 und die README- + Dateien in den drei Zweigen. + ∙ Alle TE X-relevanten Eingabedateien sind jetzt in den tex-Unterverzeichnissen der texmf*-Bäume + zusammengefasst und nicht mehr in den parallelen Verzeichnissen tex, etex, pdftex, pdfetex, + usw. Siehe dazu texmf-dist/doc/generic/tds/tds.html#Extensions. + ∙ Hilfs-Skripte, die der Anwender nicht selbst aufruft, werden jetzt in den neuen scripts- + Unterverzeichnissen der texmf*-Bäume aufbewahrt. Nach ihnen kann per ‘kpsewhich + -format=texmfscripts’ gesucht werden. Wenn Sie Programme einsetzen, die solche Skripte auf- + rufen, müssen sie angepasst werden. Siehe dazu texmf-dist/doc/generic/tds/tds.html#Scripts. + ∙ (Fast) alle Formate interpretieren – an Stelle einer Übersetzung durch die ^^-Notation – mittels des + »translation files« cp227.tcx die meisten Zeichen als direkt ausgebbar. Insbesondere werden die + Zeichen an den Positionen 32–256, zusätzlich TAB, VT (vertical tab; vertikaler Tab) und FF (form + feed; Seitenvorschub), als druckbar angesehen und daher nicht übersetzt. Ausnahmen sind plain + TE X, bei dem nur die Zeichen an den Positionen 32–127 druckbar sind, ConTE Xt (mit druckbaren + Zeichen an den Positionen 0–255) und die Ω-verwandten Formate. Dieses voreingestellte Verhalten + ist (fast) identisch mit dem in TE X Live 2003; es ist aber jetzt klarer und mit umfangreicheren + Anpassungsmöglichkeiten implementiert. Siehe dazu texmf/doc/web2c/web2c.html#TCX-files. + Anmerkung: Da TE X byte-orientiert ist, können bei einer Unicode-Eingabe (2-Byte-Zeichen) im + Kontext von Fehlermeldungen Folgen von 1-Byte-Zeichen ausgegeben werden. + + + 10 GESCHICHTLICHES 42 + ∙ pdfetex ist jetzt die voreingestellte »Engine« für alle Formate mit Ausnahme von (plain-)tex + selbst (natürlich generiert es DVI-Code, wenn es als latex, usw. aufgerufen wird.). Das bedeutet + unter vielen anderen Dingen, dass die mikrotypographischen Fähigkeiten von pdftex wie auch die + Erweiterungen von ε-TE X in LATE X, ConTE Xtusw. zur Verfügung stehen (texmf-dist/doc/etex/ + base/). + Das bedeutet, dass es wichtiger denn je ist, das Paket ifpdf zu benutzen (es arbeitet sowohl mit + plain TE X als auch mit LATE X), da der einfache Test, ob \pdfoutput oder ein anderer TE X- + Grundbefehl (primitive) definiert ist, nicht verlässlich genug ist für die Entscheidung, ob eine + PDF-Ausgabe erzeugt wird. Wir haben das rückwärts-kompatibel gemacht, so gut wir das dieses + Jahr konnten; nächstes Jahr aber soll \pdfoutput so beschaffen sein, dass dieser Befehl auch dann + definiert ist, wenn DVI-Code erzeugt wird. + ∙ pdfTE X (http://pdftex.org/) hat viele neue Besonderheiten: + – Die Befehle \pdfmapfile und \pdfmapline ermöglichen einen Font-Map-Support innerhalb + eines Dokuments. + – Mikrotypografische Zeichensatz-Expansion (font expansion) kann jetzt viel leichter benutzt + werden http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html. + – Alle Parameter, die früher in der speziellen Konfigurationsdatei pdftex.cfg definiert wur- + den, müssen jetzt mit Hilfe von pdfTE X-Grundbefehlen gesetzt werden, typischerweise in + pdftexconfig.tex; die Konfigurationsdatei pdftex.cfg wird nicht länger unterstützt. Jede + schon bestehende Format-Datei (.fmt) muss neu erstellt werden, wenn pdftexconfig.tex + geändert wird. + – Für zusätzliche Informationen siehe das pdfTE X-Handbuch: texmf-dist/doc/pdftex/ + manual. + ∙ Der Grundbefehl \input in tex (mf und mpost) akzeptiert jetzt doppelte Anführungszeichen und + andere Spezialzeichen. Typische Beispiele: + \input "filename with spaces" % plain + \input{"filename with spaces"} % latex + Für zusätzliche Informationen siehe das Web2C-Handbuch: texmf/doc/web2c. + ∙ encTE X wird jetzt in Web2C und damit auch in allen TE X-Programmen unterstützt. Dazu wird + beim Generieren neuer Formate die Option -enc benutzt. encTE X unterstützt allgemein die Um- + kodierung der Ein- und Ausgabe und ermöglicht eine volle Unicode-Unterstützung (in UTF-8). + Siehe texmf-dist/doc/generic/enctex/ und http://www.olsak.net/enctex.html. + ∙ Aleph (ℵ), eine neue »Engine«, die ε-TE X und Ω vereinigt, ist verfügbar. Ein bisschen Information + darüber finden Sie in texmf-dist/doc/aleph/base und http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph. + Das LATE X-basierte Aleph-Format heißt lamed. + ∙ Das neueste LATE X-Release enthält eine neue Version der LPPL2, die jetzt eine offiziell von Debian + anerkannte Lizenz ist. Zusammen mit anderen Updates finden Sie Informationen dazu in den + ltnews-Dateien in texmf-dist/doc/latex/base. + ∙ dvipng – ein neues Programm zum Konvertieren von DVI-Dateien in PNG-Bilddateien, ist Be- + standteil von TE X Live. Siehe texmf/doc/man/man1/dvipng.1. + ∙ Auf Vorschlag des Autors (Claudio Beccari) haben wir das Paket cbgreek auf einen »mit- + telgroßen« Satz von Fonts reduziert. Herausgenommen wurden die »invisible«, Outline- + und »Transparency«-Fonts, die relativ selten benutzt werden – denn wir benötigen den + Platz. In seinem vollen Umfang ist das Paket natürlich weiterhin auf CTAN verfügbar + (http://www.ctan.org/tex-archive/fonts/greek/cb/). + ∙ oxdvi wurde entfernt; benutzen Sie jetzt xdvi. + ∙ Die ini- und vir-Befehle (Links) für tex, mf and mpost sind nicht mehr länger verfügbar, so auch + initex. Das ist kein richtiger Verlust, da die ini-Funktionalität schon seit mehreren Jahren über + den Aufrufparameter -ini zur Verfügung steht. +__________________________________ + 2LPPL: LaTeX Project Public License + + + 10 GESCHICHTLICHES 43 + ∙ Die Unterstützung der Plattform i386-openbsd wurde entfernt. Da das Paket tetex im BSD-Ports- + System zur Verfügung steht und Binaries für GNU/Linux and FreeBSD erhältlich sind, erschien + es sinnvoll, die Zeit der Freiwilligen besser zu nutzen. + ∙ Zumindest auf sparc-solaris müssen Sie ggf. die Environment-Variable LD_LIBRARY_PATH setzen, + um die t1utils-Programme laufen lassen zu können. Ursache dafür ist, dass die Programme mit + C++ kompiliert wurden und dass es keinen Standard-Platz für Laufzeit-Bibliotheken gibt (das + ist zwar auch im Jahre 2004 nicht neu, wurde aber bisher nicht dokumentiert.) Unter mips-irix + werden die MIPSpro-7.4-Laufzeit-Bibliotheken benötigt. +10.4 2005 +Im Jahr 2005 gab es – wie üblich – viele aktualisierte Pakete und Programme. Die Struktur des Systems +blieb weitgehend gleich, mit folgenden Ausnahmen: + ∙ Die neuen Skripte texconfig-sys, updmap-sys und fmtutil-sys für die systemweite Konfiguration + des Systems wurden hinzugefügt. Die Skripte texconfig, updmap und fmtutil modifizieren nun die + Konfiguration für einen einzelnen Nutzer unter \$HOME/.texlive2005. + ∙ Analog spezifizieren die Pfade TEXMFCONFIG und TEXMFSYSCONFIG nun, wo die Konfigurationsda- + teien gefunden werden (für einen einzelnen Nutzer bzw. systemweit). Möglicherweise müssen Sie + daher vorhandene eigene Versionen von fmtutil.cnf oder updmap.cfg in die entsprechenden Pfa- + de verschieben. Alternativ können Sie TEXMFCONFIG und TEXMFSYSCONFIG in der Datei texmf.cnf + umdefinieren, dass diese auf die Speicherorte Ihrer eigenen Konfigurationsdateien verweisen. Siehe + Abschnitt 2.3 auf Seite 7. + ∙ Im letzten Jahr wurden für die Programme, die DVI als Ausgabeformat erzeugen, die Primi- + tive wie PDFoutput auf undefiniert gesetzt, obwohl immer pdfetex verwendet wurde. In die- + sem Jahr wurde dies wie angekündigt nicht mehr getan. Falls in Dokumenten nun die Abfrage + \ifxPDFoutput\undefined zum Test benutzt wird, ob PDF oder DVI erzeugt wird, müssen die- + se geändert werden! Benutzen Sie das Paket ifpdf.sty, das auch mit dem geänderten Verhalten + funktioniert, oder orientieren Sie sich an dessen Code. + ∙ Im letzten Jahr wurden die Formate so geändert, dass sie Zeichen als 8-bit ausgeben. Die neue + TCX-Datei empty.tcx eröffnet nun einen einfachen Weg, die originale Ausgabe mit ^^-Notation + zu erhalten, wenn Sie es wünschen: + latex --translate-file=empty.tcx yourfile.tex + ∙ Das Programm dvipdfmx für die Konvertierung von DVI nach PDF ist neu hinzugekommen. Dies + ist eine aktiv gepflegte Erweiterung von dvipdfm, das zwar noch verfügbar ist, aber als obsolet + angesehen werden kann. + ∙ Ebenso sind die Programme pdfopen und pdfclose neu hinzugekommen. Diese erlauben ein Reload + von PDF-Dateien im Acrobat Reader, ohne diesen neu starten zu müssen (andere PDF-Viewer + wie xpdf, gv oder gsview hatten damit nie Probleme). + ∙ Aus Konsistenzgründen wurden die Variablen HOMETEXMF und VARTEXMF in TEXMFHOME bzw. + TEXMFSYSVAR umbenannt. Weiterhin existiert TEXMFVAR für einen Baum, der spezifisch für einen + einzelnen Nutzer ist. +10.5 2006–2007 +Der wichtigeste Neuzuwachs in der Ausgabe 2006–2007 von TE X Live war das XeTE X Programm, +verfügbar durch die xetex und xelatex Programme; siehe http://scripts.sil.org/xetex. + Auch MetaPost erhielt ein bemerkenswertes Update, mit weiteren geplannten Änderungen +(http://tug.org/metapost/articles), ebenso pdfTE X (http://tug.org/applications/pdftex). + Das (plain) tex-Programm liest nicht mehr erste Zeilen mit %& um das Format zu bestimmen. Es +ist ein reines Knuth-TE X. (LATE X und alle anderen Formate lesen weiterhin %&-Zeilen). + Weiters wurden wie üblich hunderte von Paketen und Programmen auf einen neueren Stand gebracht. +Für weiter Updates wenden Sie sich bitte an CTAN (http://www.ctan.org). + Die Entwicklungsumgebung wurde auf Subversion umgestellt, was ein Webinterface für den Ent- +wicklungsbaum beisteuerte. Dieses Webinterface ist von der Homepage verlinkt. Obwohl dieser Umstieg + + + 10 GESCHICHTLICHES 44 + in der Distribution nicht zu erkennen ist, erwarten wir uns ein stabiles Fundament für die Entwicklung + in den nächsten Jahren. + Schließlich hat im Mai 2006 Thomas Esser das Ende seiner Entwicklung von teTE X + (http://tug.org/tetex) angekündigt. Als Konsequenz ist das Interesse an TE X Live, besonders unter + den GNU/Linux-Distributoren angestiegen. (TE X Live bietet nun ein tetex-Installationsschema, dass + annähernd den Umfang von teTE X umfasst.) Wir hoffen dass dies schlussendlich zu einer Verbesserung + der TE X-Umgebung für jederman führt. +10.6 2008 +Die komplette Infrastruktur von TE X Live wurde 2008 neu entwickelt. Die gesamten Daten, die für +die Installation benötigt werden, finden sich nun in einer einzigen Textdatei mit dem Namen tlpkg/ +texlive.tlpdb. + Dies ermöglicht es unter anderem, ein Update einer installierten Version von TE X Live über das +Internet durchzuführen, was für MiKTE X schon seit Jahren möglich ist. Wir planen regelmäßige Updates +bereitzustellen, wenn Pakete auf CTAN aktualisiert werden oder neu erscheinen. + Als neues Programm ist LuaTE X (http://luatex.org) enthalten, das neben neuen Möglichkei- +ten innerhalb des Satzsystems eine hervorragende Skriptsprache zur Verfügung stellt, die inner- und +außerhalb von TE X benutzt werden kann. + Die Unterstützung von TE X Live für Windows und Unix ist mittlerweile praktisch äquivalent. Die +meisten Perl- und Lua-Skripte können nun auch unter Windows verwendet werden, da innerhalb von +TE X Live Perl integriert ist. + Das neue tlmgr-Programm (Abschnitt 6) ist eine komplette Oberfläche zum Verwalten von TE X Live +nach der Installation. Es ermöglicht das Aktualisieren von Paketen, die Neugenerierung von Formatda- +teien, Fontmaps und die Konfiguration der TE X-Unterstützung für verschiedene Sprachen. + Nach der Einführung von tlmgr sind die Funktionen von texconfig zur Konfiguration von Formatda- +teien und Trennmustern deaktiviert worden. + Der Index-Prozessor xindy (http://xindy.sourceforge.net/) ist nun für die meisten Betriebssys- +teme integriert. + Das Programm kpsewhich kann nun alle Fundstellen für eine gesuchte Datei anzeigen (Option –all) +oder die Suche auf ein bestimmtes Verzeichnis einschränken (Option –subdir). + Das Programm dvipdfmx kann nun Informationen über die Bounding Box liefern, was über die +Kommandozeile mit dem Befehl extractbb aufgerufen werden kann; dies war die letzte Funktion von +dvipdfm, die noch nicht in dvipdfmx vorhanden war. + Die Font-Aliasnamen Times-Roman, Helvetica usw. wurden abgeschafft. + Das Makro-Format platex wurde entfernt, um den Namenskonflikt mit dem japanischen platex auf +zu lösen; Unterstützung für polnisch wird nun vom Paket polski zur Verfügung gestellt. + Die WEB string pool files wurden in die Programme einkompiliert, um Updates zu vereinfachen. + Und abschließend sind die Änderungen von Donald Knuth in seinem TE X tuneup of 2008 in TE X +Live eingearbeitet, http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf. +10.7 2009 +Das Standardausgabeformat für Lua(LA )TE X ist nun PDF. Hier entfalten die Erweiterungen von +Lua(LA )TE X, wie die Unterstützung von OpenType, ihre volle Wirkung. Die neuen Programme +dviluatex bzw. dvilualatex erzeugen wie früher DVI als Ausgabeformat. Die Homepage von LuaTE X +finden Sie unter http://luatex.org. + Nach Rücksprache mit den Autoren von Omega wurden Omega und das Format Lambda entfernt. +Die aktuelle Version von Aleph und Lamed ist weiterhin in TE X Live enthalten, zusammen mit einigen +Hilfsprogrammen von Omega. + Eine neue Version der AMS Type 1-Fonts wird von TE X Live mitgeliefert, inklusive der +Computer Modern-Schriften. Donald Knuth hat in den letzten Jahren die Gestalt einiger +Zeichen in den Metafont-Quellen geändert, diese wurden übernommen. Weiterhin wurde das +so genannte Hinting verbessert. Die Euler-Schriften wurden kürzlich ebenfalls sorgsam über- +arbeitet (siehe http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf). In al- +len Fällen blieben die Fontmetriken unverändert. Mehr zu den AMS-Fonts finden Sie unter +http://www.ams.org/tex/amsfonts.html. + Die neue TE X-Oberfläche TE Xworks ist für Windows enthalten, analog zu MacTE X. Für andere Syste- +me oder weitere Informationen beachten Sie bitte die Webseite http://tug.org/texworks. TE Xworks + + + 10 GESCHICHTLICHES 45 + ist eine Cross-Plattform-Anwendung, die von dem Editor Mac OS X inspiriert wurde, und somit eine + einfach zu bedienende Oberfläche für TE X bietet. + Das Grafikprogramm Asymptote ist für verschiedene System enthalten. Es bietet eine textbasierte + Beschreibungssprache für Zeichnungen, nicht unähnlich zu MetaPost, aber mit Unterstützung für 3D + und weiteren Vorteilen. Die Homepage befindet sich unter http://asymptote.sourceforge.net. + Das bisher enthaltene eigenständige Programm dvipdfm wurde durch dvipdfmx ersetzt, das beim + Aufruf als dvipdfm in einem Kompatibilitätsmodus läuft. dvipdfmx unterstützt CJK (Chinesich, Japa- + nisch, Koreanisch) und enthält viele Korrekturen und Verbesserungen gegenüber dem alten dvipdfm. + Die Homepage zu DVIPDFMx finden Sie unter http://project.ktug.or.kr/dvipdfmx. + Für cygwin und i386-netbsd werden nun ausführbare Programme mitgeliefert, während einige andere + BSD-Derivate nicht mehr dabei sind. Es wird empfohlen, dass Nutzer von OpenBSD bzw. FreeBSD + TE X über den Paketmanager ihres Systems installieren, da sich gezeigt hat, dass die Bereitstellung von + Binaries, die für mehrere Versionen funktionieren, sehr problematisch ist. + Einige weitere, aber kleine Änderungen: Wir verwenden nun zur Datenkompression xz als stabi- + le Alternative zu lzma (http://tukaani.org/xz/); Dollarzeichen sind in Dateinamen erlaubt, solan- + ge sich zusammen mit den Dollarzeichen kein bekannter Variablenname ergibt; die Kpathsea ist nun + multi-threaded (was von MetaPost verwendet wird); der gesamte Build von TE X Live basiert nun auf + Automake. + Und zum Abschluss: Alle Releases von TE X Live, mit Zusatzmaterial wie den DVD-Labeldrucken, + sind unter ftp://tug.org/historic/systems/texlive verfügbar. +10.8 2010 +Seit 2010 werden PDF-Dateien nach PDF Version 1.5 erzeugt, was eine stärkere Komprimierung der +Dateien ermöglicht. Dies gilt für alle TE X-Kompiler mit dem Ausgabeformat PDF und dvipdfmx. Mit +dem LATE X-Paket pdf14 wird wieder PDF 1.4 erzeugt, alternativ kann \pdfminorversion=4 verwendet +werden. + pdf(LA )TE X konvertiert nun automatisch bei Bedarf unter Verwendung des Paketes epstopdf EPS- +Dateien (Encapsulated PostScript) nach PDF, wenn die Konfigurationsdatei graphics.cfg geladen +wurde und das Ausgabeformat PDF ist. Standardmäßig sollen auf keinen Fall bereits vorhandene (evtl. +mühsam anderweitig erzeugte) PDF-Dateien überschrieben werden. Die automatische Umwandlung +kann komplett abgeschaltet werden, indem am Anfang der LATE X-Datei (vor \documentclass!) die +Zeile \newcommand{\DoNotLoadEpstopdf}{} (oder \def...) eingefügt wird und so das Laden von +epstopdf unterdrückt wird. Für weitere Informationen schauen Sie bitte in die Anleitung des epstopdf- +Pakets (http://ctan.org/pkg/epstopdf-pkg). + Eine wichtige, damit zusammen hängende Änderung ist die Beschränkung des \write18-Befehls von +TE X (das zum Aufruf externer Programme dient) auf einige wenige Programme in der Standardkonfi- +guration von TE X Live. Diese sind z. B. epstopdf, makeindex und bibtex. Konkret wird die Auswahl +zulässiger Programme in der Datei texmf.cnf festgelegt. In Umgebungen, wo aus Sicherheitsgründen +der Aufruf externer Anwendungen über \write18 komplett unterbunden werden soll, kann dies direkt +bei der Installation eingestellt werden (siehe Abschnitt 3.2.4 oder nachträglich in texmf.cnf geändert +werden. + Weiterhin werden BibTE X und Makeindex nun daran (analog zu TE X selbst) gehindert, ihre Ausga- +bedateien in beliebige Verzeichnisse zu schreiben, damit erlaubt werden konnte, dass sie über \write18 +gestartet werden. Falls dies geändert werden soll, muss entweder die Variable TEXMFOUTPUT gesetzt oder +die Konfigurationseinstellung openout_any geändert werden. + XeTE X unterstützt nun wie pdfTE X optischen Randausgleich. + tlmgr speichert eine Sicherheitskopie von aktualisierten Paketen (tlmgr option autobackup 1), so +dass ein fehlerhaftes Update mit tlmgr restore rückgängig gemacht werden kann. Falls Sie hierfür +nicht genug Platz haben, kann dies mit tlmgr +option autobackup 0 abgeschaltet werden. + Neu enthaltene Programme: pTE X und verwandte Programme zum japanischen Schriftsatz, das Pro- +gramm BibTE XU für ein Unicode-fähiges BibTE X, das Programm chktex (http://baruch.ev-en.org/proj/chktex) +zum Überprüfen von (LA )TE X-Dokumenten, dvisvgm (http://dvisvgm.sourceforge.net) zum Kon- +vertieren von DVI nach SVG. + Neu unterstützte Systeme: amd64-freebsd, amd64-kfreebsd, i386-freebsd, i386-kfreebsd, +x86_64-darwin, x86_64-solaris. + Eine Änderung in TE X Live 2009, die nicht dokumentiert wurde: Zahlreiche TE X4ht-bezogene Pro- +gramme fielen weg, hierfür gibt es nun das Programm mk4ht. + Abschließend kann TE X Live nicht mehr direkt von der DVD ausgeführt werden. Eine einzelne DVD +inst nicht mehr groß genug. Als Nebeneffekt sollte die Installation von der DVD schneller als früher sein. + + + 10 GESCHICHTLICHES 46 + 10.9 2011 +In TE X Live gab es relativ wenige Neuerungen. Die Binaries für Mac OS X (universal-darwin und +x86_64-darwin) laufen nur noch unter Mac OS X Versionen ab Leopard; Panther und Tiger werden +nicht mehr unterstützt. + Das biber Programm für die Bearbeitung von Bibliografien wird für die gängigen Plattformen +mitgeliefert, seine Entwicklung ist eng an die Entwicklung des biblatex Pakets geknüpft, das die Art +und Weise, in der LATE X Bibliografien verwaltet, komplett neu implementiert. + MetaPost (mpost) erzeugt oder nutzt keine .mem Dateien mehr. Benötigte Dateien wie plain.mp +werden einfach bei jedem Lauf gelesen. Grund hierfür ist die Tatsache, dass MetaPost auch als Bibliothek +unterstützt wird, eine weitere –wenn auch eher unsichtbare– Änderung. + Die Implementierung von updmap in Perl, bisher nur unter Windows genutzt, wurde überarbeitet +und wird jetzt von allen Plattformen verwandt. Abgesehen von einer deutlichen Steigerung der Ge- +schwindigkeit sollte kein Nutzer davon etwas merken. +10.10 Gegenwart (2012) +tlmgr unterstützt Updates von verschiedenen Netzwerk-Repositories. Siehe dazu den Abschnitt zu +multiplen Repositories in der tlmgr help Ausgabe. + Der Parameter \XeTeXdashbreakstate wird standardmäßig für xetex und xelatex auf ’1’ gesetzt. +Dies erlaubt Zeilenumbrüche nach em-dashes und en-dashes und war seit jeher das Standardverhalten +von TE X, LATE X, LuaTE X, etc. Für perfekte Zeilenumbruch-Kompatibilität bei existierenden Dokument +muss daher \XeTeXdashbreakstate explizit auf ’0’ gesetzt werden. + Die Ausgabedateien von pdftex und dvips, neben anderen, dürfen jetzt größer als 2 GB werden. + Die 35 Standard-Postscript Fonts werden standardmäßig in der Ausgabe von dvips ausgegeben, da +es so viele verschiedene Versionen von ihnen gibt. + Im ’Restricted Execution’ Modus ist mpost standardmäßig erlaubt. + Eine texmf.cnf Datei wird auch in ../texmf-local, wie zum Beispiel /usr/local/texlive/ +texmf-local/web2c/texmf.cnf, gefunden, falls sie dort existiert. + Das updmap Skript liest updmap.cfg pro Verzeichnisbaum anstelle einer globalen Datei. Diese Ände- +rung sollte komplett unsichtbar sein, sofern die updmap.cfg Dateien nicht manuell bearbeitet wurden. +Die Ausgabe von updmap –help hat mehr zum Thema. + Plattformen: armel-linux und mipsel-linux wurden hinzugefügt; sparc-linux und i386-netbsd +sind nicht länger Teil der Haupt-Distribution. Sie können aber in Form spezieller Binaries von +http://tug.org/texlive/custom-bin.html heruntergeladen werden. +10.11 Zukunft +TE X Live ist nicht perfekt! – und wird es auch nie sein. Wir planen Neuauflagen zu produzieren, die +umfangreichere Hilfstexte, mehr Hilfsprogramme, mehr Installationshilfen und (natürlich) den ständig +verbesserten und überprüften Satz der Makros und Zeichensätze enthalten. Diese Arbeit wird von +Freiwilligen in ihrer knappen Freizeit geleistet. Viel Arbeit steht noch an. Wenn Sie uns helfen können, +zögern Sie keine Sekunde, sich bei uns zu melden. + Verbesserungen, Anregungen und Erweiterungen für künftige Ausgaben der TE X Collection senden +Sie bitte an: + tex-live@tug.org + http://tug.org/texlive/ + Neue Versionen, Anmerkungen und zusätzliches Material werden über die CTAN-Server im +Verzeichnis info/texlive zur Verfügung gestellt. Im WWW können Sie sich über die Adresse +http://www.tug.org/tex-live/ informieren und die Bestellformalitäten einsehen. + + + diff --git a/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.pdf b/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.pdf new file mode 100644 index 00000000000..d29778c129c Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.pdf differ diff --git a/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.tex b/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.tex new file mode 100644 index 00000000000..45dd7f6d42e --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-de/texlive-de.tex @@ -0,0 +1,3328 @@ +% $Id$ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +%\pdfoutput=0 +\documentclass{article} +\def\Status{1} +\ifnum\Status=1 + % Create A4 pdf + \pdfpageheight297mm + \pdfpagewidth210mm +\fi + +\let\tldocgerman=1 % for live4ht.cfg +\usepackage{ngerman} +\usepackage{tex-live} +\usepackage[utf8]{inputenc} % translators: use your preferred encodings. +\usepackage[]{csquotes} +\usepackage[T1]{fontenc} +\usepackage[printonlyused]{acronym} + +\def\dante{DANTE~e.\,V\kern-0.15em.} +\begin{document} + +\title{% + {\huge \textit{Anleitung zu \TL{}}\\\smallskip}% + {\LARGE \textsf{\TL{} 2012}}% +} + + +\author{Karl Berry (Herausgeber) \\[3mm] + \url{http://tug.org/texlive/}\\[12mm] + \small{\textit{Verantwortlich für die deutsche Ausgabe}}\\[3mm] + \small{Uwe Ziegenhagen, \email{ziegenhagen@gmail.com}} \\ + \small{(\dante)} \\[3mm] + } +\date{Juni 2012} + + +\maketitle +\thispagestyle{empty} + +\newpage + +\begin{multicols}{2} + \tableofcontents + \listoffigures +\end{multicols} + +%\renewcommand{\Status}{0} +%\typeout{Status is \Status} + +\clearpage + +% ============================================================== +\section{Einleitung}\label{sec:intro} +\subsection{\TL\ und die \TeX-Collection} + +Diese Anleitung beschreibt das \TL-System. Die {\TL} Distribution enthält +\TeX/\LaTeX-Systeme für Linux, verschiedene \acro{UNIX}-Plattformen, {\MacOSX} +und Windows. + +Wahrscheinlich haben Sie \TL{} auf einem von zwei Wegen bezogen, entweder +per direktem Download von \TL{} oder als Teil der \DVD{} \TK, die von +vielen \TeX-Vereinen (u.\,a. \dante) an ihre Mitglieder verschickt werden +und in Deutschland über die Fachbuchhandlung Lehmanns (\url{http://www.lob.de}) +vertrieben wird. Abschnitt~\ref{sec:tl-coll-dists} beschreibt kurz den +Inhalt der \TK-\DVD. + +Sowohl \TL{} als auch die \TK{} sind durch das Engagement vieler Freiwilliger aus vielen \TeX-Vereinen entstanden. Im Ãœbrigen +beschränkt sich diese Anleitung auf \TL{} an sich. + +{\TL} enthält lauf"|fähige Versionen von \TeX, \LaTeXe, \ConTeXt, \MF, \MP, {\BibTeX} und vielen +anderen Programmen, sowie eine umfassende Auswahl an Makros, Zeichensätzen und +Beschreibungen, die gemäß der Standard"=\TeX"=Verzeichnisstruktur (\TDS) abgelegt sind. + +Eine kurze Zusammenfassung der wesentlichen Änderungen der aktuellen \TL-Version +gegenüber der Vorgängerversion finden Sie im Abschnitt~\ref{sec:tlcurrent} auf +Seite~\pageref{sec:tlcurrent}. + +\htmlanchor{platforms} +\subsection{Unterstützung verschiedener Betriebssysteme} +\label{sec:os-support} +\TL{} enthält direkt ausführbare Programme für viele Unix-basierte +Betriebssysteme, insbesondere GNU/Linux und \MacOSX\ und Cygwin. +Selbst wenn für Ihr Unix-System wider Erwarten keine ausführbaren Programme +enthalten sind, sollten Sie in der Lage sein, aus den mitgelieferten Programm-Quellen +ein funktionierendes \TeX-System zu kompilieren. + +Bezüglich Microsoft Windows werden Versionen ab Windows~XP unterstützt. +\TL{} ist unter Windows 95/98, ME und NT nicht mehr lauffähig, Windows 2000 +sollte funktionieren. Es existieren zwar keine 64-Bit-Versionen der Programme, +allerdings sollten die 32-Bit-Programme problemlos auf +64-Bit-Systemen funktionieren. + +% ------------------------------------------------------------- +\subsection{Einsatzmöglichkeiten des \TL-Systems der \TK}\label{sec:basic} + +Sie können das \TL-System wahlweise von der \DVD{} oder über das +Internet (\url{http://tug.org/texlive/acquire.html}) installieren. +Der \emph{Net Installer} ist ein kleines Programm, +das die benötigten Teile aus dem Internet nachlädt. Dieser Weg bietet +sich an (eine schnelle und stabile Internetverbindung voraus gesetzt), +wenn Sie kein komplettes \TL{} installieren wollen, sondern Ihr System nur +aus bestimmten Paketen bestehen soll. + +Wenn Sie die \DVD{} besitzen (oder das ISO-Image der \DVD{} herunter +geladen haben -- dieses kann auf einigen Systemen sogar direkt als +virtuelles Medium \enquote{gemountet} werden), können Sie \TL{} nach +Wunsch auf Ihrer Festplatte installieren. Im Gegensatz zu früher ist +\TL{} nicht mehr direkt von der \DVD{} lauffähig. Sie können aber +eine portable Version z.\,B. auf einem USB-Stick installieren, wie im +Abschnitt~\ref{sec:portable-tl} beschrieben. + +Beide Methoden werden in den Abschnitten zur Installation beschrieben. +Hier daher nur die kurze Zusammenfassung: + +\begin{itemize*} +\item Das Hauptinstallationsskript ist \cmdname{install-tl}. Es bietet +eine grafische Benutzeroberfläche (GUI) für die Standardinstallation +(den sogenannten \enquote{wizard mode}), einen Textmodus und eine grafische Oberfläche im Expertenmodus. +Unter Windows ist der grafische \enquote{wizard mode} der Standard, auf allen anderen +Systemen ist es der Textmodus. Durch die Optionen \code{-gui=wizard}, \code{-gui=text} und \code{-gui=perltk} können Sie gezielt auswählen, ob das Installationsprogramm +im ">wizard mode"<, Textmodus oder mit der grafischen Oberfläche im Expertenmodus +starten soll. +\item \TL installiert u.\,a. den ">\TL Manager"< mit dem Namen +\prog{tlmgr}. Auch dieser unterstützt Text- und GUI-Mode. Mit diesem +Programm können Sie einerseits Pakete von \TL installieren oder deinstallieren, +andererseits \TL konfigurieren. +\end{itemize*} + + +\subsection{\TL\ und Sicherheit} + +Nach bestem Wissen und Gewissen kann man sagen, dass die \TeX-Kernprogramme selbst sehr robust sind. Dieses Maß an Robustheit und Sicherheit wird jedoch möglicherweise nicht von allen Programmen erreicht, die Teil von \TL\ sind. Daher gilt für \TL\ das, was auch für alle anderen Programme gilt: Vorsicht bei der Verarbeitung von Quellcode, den man nicht genau kennt, zur maximalen Sicherheit sollte man in diesen Fällen die entsprechenden Dateien in einem neuen Unterverzeichnis verarbeiten. + +Die Sorge um die Sicherheit gilt vor allem für MS Windows, da Windows-Programme zuerst im aktuellen Verzeichnis suchen, egal wie Pfad-Angaben gesetzt sind. Theoretisch ermöglicht dies eine Reihe von Angriffsszenarien. Viele Sicherheitslücken in Programmen von \TL\ wurden geschlossen, andere bestehen auch weiterhin, besonders im Umgang mit Drittanbieter-Software. + +Aus diesem Grund empfehlen wir bei der Verarbeitung von unbekanntem Quellcode, auf das Vorhandensein von ausführbaren Dateien im Quellcode-Verzeichnis zu achten. Diese sollten nicht vorhanden sein und erst recht nicht durch die Verarbeitung von \TeX-Quellcode erzeugt worden sein. + +\TeX\ und seine Begleitprogramme können in Dateien schreiben, wenn ein Dokument übersetzt wird. Diese Funktion kann auch missbräuchlich eingesetzt werden. Daher ist bei der Verarbeitung von unbekannten Quellen die Nutzung eines neuen Unterverzeichnisses der sicherste Weg! + +% ------------------------------------------------------------- +\subsection{Hilfe zu \TeX, \LaTeX\ \& Co}\label{sec:help} + +Die \TeX-Gemeinschaft ist ebenso aktiv wie hilfsbereit, und es wird +praktisch jede ernst gemeinte Frage beantwortet. Diese Hilfe ist allerdings +nicht formal organisiert, sondern wird von Freiwilligen in ihrer +Freizeit geleistet. Es ist daher wichtig, dass Sie vor einer +Fragestellung Ihre ">Hausaufgaben"< gemacht haben. + +Falls Sie auf eine garantierte kommerzielle Unterstützung angewiesen sind oder eine solche +bevorzugen, sollten Sie die Finger komplett vom \TL-System lassen und +in der Aufstellung unter \url{http://tug.org/interest.html#vendors} nach +einem geeigneten Händler suchen. + +Die folgende Liste stellt die leicht zugänglichen Hilfe-Quellen in der +empfohlenen Reihenfolge vor: + +\begin{description} +\item [Einführung:]\mbox{}\\ + Wenn Sie \TeX-Anfänger sind und eine englische Einführung in das System benötigen, + sollten Sie das \acro{WWW}-Dokument \url{http://tug.org/begin.html} lesen. + + Für deutschsprachige \LaTeX-Anfänger ist die ">\LaTeXe-Kurzbeschreibung"< von großem Nutzen + (\OnCD{texmf-doc/doc/german/lshort-german/l2kurz.pdf}). + +\item [\TeX-\acro{FAQ}s:]\mbox{}\\ + Die \TeX-\acro{FAQ} (im Deutschen + \file{de-tex-faq} ">\emph{Fragen und Antworten [\acro{FAQ}] über + das Textsatzsystem TeX und \acro{DANTE}, Deutschsprachige + Anwendervereinigung TeX e.V.}"<) ist ein riesiges Kompendium + mit Fragen (und Antworten) aller Art, von der einfachsten + Anfängerfrage bis zu Expertenwissen. + % Sie ist Bestandteil + % des \TL-Systems (\OnCD{texmf-doc/doc/german/FAQ-de/}) und umfasst zur + % Zeit 182~Seiten als PDF-Datei (\OnCD{texmf-doc/doc/german/FAQ-de/de-tex-faq.pdf}). + % Darüber hinaus ist die + % \acro{FAQ} als \HTML-Datei (\OnCD{texmf-doc/doc/german/FAQ-de/html/index.html}) + % und als durchsuchbare Textdatei + % (\OnCD{texmf-doc/doc/german/FAQ-de/text/index.html}) enthalten. + % Im Internet finden Sie die \acro{FAQ} unter + Sie finden die deutschsprachige \acro{FAQ} unter + \url{http://www.dante.de/FAQ.html}. + + Des Weiteren existiert eine englischsprachige \acro{FAQ}-Sammlung + (\OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html}), die auch im Internet verfügbar ist + (\url{http://www.tex.ac.uk/faq}). + + Bitte nutzen Sie bei Problemen zuerst diese beiden Möglichkeiten. + +\item [\TeX-Catalogue:]\mbox{}\\ + Wenn Sie auf der Suche nach einem bestimmten Paket, + Font, Programm u.\,ä. sind, empfiehlt sich ein Blick in den + \TeX-Catalogue. Dieser Katalog enthält eine Liste aller verfügbaren + \TeX-spezifischen Dinge (siehe + % \OnCD{texmf-doc/doc/english/catalogue} oder + \url{http://www.ctan.org/tex-archive/help/Catalogue/catalogue.html}). + +\item [\TeX-\acro{WWW}-Ressourcen:]\mbox{}\\ + Im \acro{WWW}-Dokument \url{http://tug.org/interest.html} finden Sie eine große Anzahl \TeX-spezifischer + Links zu Büchern, Handbüchern und Artikeln zu allen Aspekten des \TeX-Systems. + +\item [Archive:]\mbox{}\\ + Ein Forum für die Hilfestellung sind die Usenet-News-Gruppen + \url{news:de.comp.text.tex} (Deutsch), \url{news:comp.text.tex} (Englisch) + und die Mailing-Liste \email{texhax@tug.org}. In deren Archiven finden + sich die Fragen und Antworten vieler Jahre. Ihre Suche können Sie in Google + beispielsweise mit \url{http://groups.google.de/group/de.comp.text.tex/topics} + starten -- oder auch in \url{http://tug.org/mail-archives/texhax/} durchführen. + + Im Allgemeinen ist es recht erfolgversprechend, eine generelle Suche über Google + \url{http://www.google.de/} durchzuführen (entweder im \emph{WWW} allgemein + oder in den \emph{News-Gruppen}); dies insbesondere, wenn es sich um Fragen über + \PS/PDF, \cmdname{Ghostscript} u.\,ä. handelt. + +\item [Online-Foren:] \url{http://tex.stackexchange.com}, \url{http://golatex.de}, \url{http://mrunix.de/forums/forumdisplay.php?f=38} sind nur einige Online-Foren, die Hilfe zu \TeX\ \& \LaTeX\ anbieten. + +Auch hier gilt: Je mehr Mühe Sie sich mit dem Stellen von Fragen geben, desto besser kann Ihnen geholfen werden. + +\item [Fragen stellen:]\mbox{}\\ + Wenn Sie mit den oben aufgezeigten Möglichkeiten immer noch keine + Antwort auf Ihre Frage gefunden haben, können Sie die Frage auch in einer + News-Gruppe stellen (neudeutsch: \emph{posten}). Hier bietet sich für + den deutschsprachigen Raum die News-Gruppe \url{news:de.comp.text.tex} an. + Benutzen Sie am besten für Anfragen Google + (\url{http://groups.google.de/group/de.comp.text.tex/topics}) + oder einen Newsreader. Fragen an die englischsprachige Gruppe + \url{news:comp.text.tex} + (bei Google: \url{http://groups.google.de/group/comp.text.tex/topics}) + sollten Sie bitte nur auf Englisch stellen. + + Zusätzlich existieren E-Mail-Listen, wobei hier die deutschsprachige Liste + \email{TeX-D-L@listserv.dfn.de} zu nennen ist (das englischsprachige Äquivalent + ist \email{texhax@tug.org}). Darüber hinaus bietet sich für Mitglieder + von \acro{DANTE}~e.V. der Beraterkreis an (\email{beraterkreis@dante.de}). + Wie Sie sich in die E-Mail-Liste \dirname{TeX-D-L} eintragen können, + finden Sie in der \acro{FAQ} unter ">\texttt{1.3.2 Was ist TeX-D-L?}"<. + + Bevor Sie eine Frage absenden, lesen Sie \emph{bitte} die entsprechenden + Einträge der \acro{FAQ} zum Thema ">\emph{Wie stelle ich eine Frage in einer + Newsgroup, damit ich mit hoher Wahrscheinlichkeit eine Antwort bekomme?}"<. So + z.\,B. ">\texttt{1.3.1 Was ist `de.comp.text.tex'?}"< und ">\texttt{1.3.7 Was + sollte ich gelesen haben, bevor ich eine Frage in `de.comp.text.tex' oder der + Diskussionsliste TeX-D-L stelle?}"< oder auch + \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + +\item [Mithilfe:]\mbox{}\\ + Wenn Sie einen Fehler melden wollen oder Empfehlungen und Kommentare + zur \TL-Verteilung, -Installation oder -Dokumentation geben möchten, sollten Sie die + E-Mail-Liste \email{tex-live@tug.org} nutzen. + Korrekturen, Anmerkungen und Erweiterungen für die deutsche Ãœbersetzung können Sie auch + an \email{cdrom@dante.de} oder schriftlich an die Geschäftsstelle von + \acro{DANTE}~e.V. senden. + + Fragen zu Programmen, die Sie in der {\TK} finden, sollten Sie besser auf + einer der oben genannten Mailing-Listen stellen oder direkt an den Programmautor + richten. +\end{description} + +\noindent Auf der anderen Seite können auch Sie mit Ihrem Wissen helfen. Die News-Gruppen +\url{news:de.comp.text.tex} (in Deutsch), \url{news:comp.text.tex} (in Englisch) und +die Mailing-Liste \email{TeX-D-L@listserv.dfn.de} (Deutsch) und \email{texhax@tug.org} (Englisch) +stehen allen offen. Wenn Sie also dort mitlesen, scheuen Sie sich nicht, Fragen, +zu denen Sie eine Antwort wissen, zu beantworten und damit anderen zu helfen. + +% ============================================================== +\section[Ãœberblick zum \protect\TeX Live-System]{Ãœberblick zum \TL-System} +\label{sec:overview-tl} +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. + +In diesem Abschnitt beschreiben wir die Struktur und den Inhalt des \TL-Systems und der übergeordneten \TK-\DVD. + +% ------------------------------------------------------------- +\subsection[Die \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX]% +{Die \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX}\label{sec:tl-coll-dists} + +Die \DVD ">\TK"< besteht aus: +\begin{description} +\item[\TL] Ein komplettes \TeX-System, wahlweise zur Installation auf einer Festplatte oder einem Wechselmedium (USB-Stick). Die Homepage des \TL-Projektes finden Sie unter \url{http://tug.org/texlive/}. +\item[Mac\TeX] für \MacOSX. Dieses enthält das komplette \TL, bietet zusätzlich aber ein Installationsprogramm +für Mac und einige Zusatzprogramme. Nähere Informationen finden Sie auf der Homepage von Mac\TeX{} unter +\url{http://tug.org/mactex/}. +\item[pro\TeX{}t] basiert auf der \MIKTEX-Distribution für Windows. Es enthält noch einige Zusatzprogramme und +stellt eine einfache Installationsanleitung bereit, die Schritt für Schritt den Weg zu einem kompletten +\TeX-System beschreibt. Die Homepage von pro\TeX{}t findet sich unter \url{http://tug.org/protext}. +\item[CTAN] Weiterhin ist auf der \DVD{} ein Ausschnitt der \TeX-bezogenen Software enthalten, die sich +in CTAN, dem \emph{Comprehensive \TeX{} Archive Network} (\url{http://www.ctan.org}) befinden. +\item [\texttt{texmf-extra}] In diesem Verzeichnis befinden sich zusätzliche Pakete, die kein Teil von +\TL sind. +\end{description} + +\CTAN{}, \pkgname{protext} und \dirname{texmf-extra} unterliegen nicht denselben Lizenzregeln wie \TL. +Daher können für Teile hieraus andere Lizenzbedingungen bezüglich einer Weiterverteilung oder +Modifikation gelten, die Sie unbedingt beachten sollten! + +% ------------------------------------------------------------- +\subsection{Basisverzeichnisse von \TL}\label{sec:tld} + +In diesem Abschnitt beschreiben wir die Basisverzeichnisse einer \TL-Installation. + +\begin{center} +%% \begin{longtable}{@{}>{\ttfamily}lp{.63\hsize}@{}} +%% \hline +%% \rm +%% Verzeichnis & Inhalt \\ +%% \hline +%% \endfirsthead +%% \rm +%% Verzeichnis & Inhalt \\ +%% \hline +%% \endhead +%% \hline +%% \endfoot +\begin{tabular}{@{}>{\ttfamily}lp{.75\linewidth}@{}} +bin & ausführbare Programme des \TeX-Systems. Jeweils für die verschiedenen Rechnerplattformen + in Unterverzeichnissen zusammengefasst\\ +readme-*.dir & in diesen Verzeichnissen (!) befinden sich Text- bzw. HTML-Dateien + in verschiedenen Sprachen, die als schneller + Einstieg in \TL empfehlenswert sind.\\ +source & Quelldateien aller Programme inklusive der + \Webc-Quellen für die \TeX-Pakete\\ +texmf & Verzeichnisbaum für Programme mit zugehörigen Hilfsdateien und Anleitungen; enthält keine \TeX-Formate + und Pakete (siehe \texttt{TEXMFMAIN} im nächsten Abschnitt).\\ +texmf-dist & Hauptbaum mit Formaten und Paketen (siehe \texttt{TEXMFDIST} im nächsten Abschnitt).\\ +tlpkg & Skripte, Programme und Daten die für die Installation benutzt werden, sowie einige Dinge, die speziell für Windows benötigt werden. +%%\end{longtable} +\end{tabular} +\end{center} +% +Zusätzlich zu den oben aufgeführten Verzeichnissen finden Sie +im Wurzelverzeichnis der Distribution +auch noch die Installationsskripte. + +Wenn Sie nach Dokumentation suchen, bietet Ihnen die Datei \OnCD{doc.html} wichtige Links. +Die Dokumentation für Programme (Handbücher, ">man~pages"<, \acro{GNU}-\acro{info}-Dateien) beispielsweise finden Sie +im Verzeichnis \OnCD{texmf/doc}. Ähnliches +gilt für die Dokumentation der \TeX-Pakete und -Formate im Verzeichnis \OnCD{texmf-dist/doc}. + +Benutzen Sie das Programm \cmdname{texdoc}, wenn Sie auf der Suche nach irgendeiner +Dokumentationsdatei sind. Hilfreich in diesem Zusammenhang könnte auch die Link-Sammlung \filename{doc.html} im +Wurzelverzeichnis sein. + +Die Anleitung zu \TL ist in verschiedenen Sprachen verfügbar: +\begin{itemize*} +\item{Tschechisch/Slowakisch:} \OnCD{texmf/doc/czechslovak/texlive-cz/live} +\item{Deutsch:} \OnCD{texmf/doc/german/texlive-de/texlive-de} (dieses Dokument) +\item{Englisch:} \OnCD{texmf/doc/english/texlive-en/texlive-en} +\item{Französisch:} \OnCD{texmf/doc/french/texlive-fr/texlive-fr} +\item{Italienisch:} \OnCD{texmf/doc/italian/texlive-it/texlive-it} +\item{Polnisch:} \OnCD{texmf/doc/polish/texlive-pl/texlive-pl} +\item{Russisch:} \OnCD{texmf/doc/russian/texlive-ru/texlive-ru} +\item{Serbisch:} \OnCD{texmf/doc/serbian/texlive-sr/texlive-sr} +\item{Chinesisch:} \OnCD{texmf/doc/chinese/texlive-zh-cn/texlive-zh-cn} +\end{itemize*} + +% ------------------------------------------------------------- +\subsection{Ãœberblick über die vordefinierten texmf-Bäume} +\label{sec:texmftrees} + +Dieser Abschnitt listet die vordefinierten texmf-Bäume, die vom System benutzt +werden, und deren Bedeutung auf. Das Kommando \texttt{tlmgr~conf} +zeigt Ihnen die aktuellen Einstellungen dieser Variablen an. + +\begin{ttdescription} +\item [TEXMFMAIN] In diesem Baum befinden sich wichtige Teile des Systems, + wie Konfigurationsdateien, Hilfsprogramme und die Dokumentation. +\item [TEXMFDIST] In diesem Baum befinden sich die wesentlichen Makro-Pakete, + Fonts usw. Dieser Baum enthält systemunabhängige Daten, die prinzipiell + von jedem TDS-kompatiblem \TeX-System nutzbar sein sollten. +\item [TEXMFLOCAL] Dieser Baum ist für Ergänzungen oder Aktualisierungen + von Makros, Fonts etc. gedacht, die Administratoren für alle Nutzer + installieren. +\item [TEXMFHOME] In diesem Baum können einzelne Nutzer Ergänzungen oder + Aktualisierungen von Makros, Fonts etc. ablegen. Standardmäßig befindet + sich dieser Baum unterhalb von \verb+$HOME+, so dass andere Nutzer von + Änderungen hier nicht beeinflusst werden. +\item [TEXMFCONFIG] Dieser benutzerspezifische (!) Baum wird von den Hilfsprogrammen von \TeX{} + wie \verb+texconfig+, \verb+updmap+ und \verb+fmtutil+ verwendet. + Standardmäßig befindet sich dieser Baum unterhalb von \verb+$HOME+, + so dass andere Nutzer von Änderungen hier nicht beeinflusst werden. +\item [TEXMFSYSCONFIG] Systemweiter Baum, wird von den Hilfsprogrammen + \verb+texconfig-sys+, \verb+updmap-sys+ und \verb+fmtutil-sys+ + verwendet, so dass hier das Verhalten des \TL-Systems für alle Nutzer + beeinflusst werden kann. +\item [TEXMFSYSVAR] Dieser Baum wird von den systemweiten Hilfsprogrammen + wie \verb+texconfig-sys+, \verb+updmap-sys+ und \verb+fmtutil-sys+ + verwendet, um automatisch generierte Konfigurations-Dateien abzulegen. +\item [TEXMFVAR] Dieser benutzerspezifische Baum wird von Hilfsprogrammen wie \verb+texconfig+, + \verb+updmap+ und \verb+fmtutil+ benutzt, um automatisch generierte + Konfigurations-Dateien abzulegen. +\item [TEXMFCACHE] Dieser Baum wird von \ConTeXt\ Mk\acro{IV} genutzt, um Cache-Daten abzulegen. +\end{ttdescription} + +\noindent +Der Standard der Verzeichnisstruktur von \TL sieht wie folgt aus: +\begin{description} + \item[Systemweites Wurzelverzeichnis] kann \TL{}-Versionen aus mehreren Jahren beinhalten: + \begin{ttdescription} + \item[2011] Eine Vorversion von \TL. + \item[2012] Die aktuelle Version. + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] \GNU/Linux binaries + \item [...] + \item [universal-darwin] \MacOSX\ binaries + \item [win32] Windows binaries + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] Hierauf verweist \envname{TEXMFMAIN}. + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var\ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config \ \ ] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, dieses Verzeichnis gilt für alle installierten \TL-Versionen + (aktuelle Version und Vorgängerversion), so dass hier durchgeführte lokale Änderungen über die + Jahre hinweg erhalten bleiben. + \end{ttdescription} + \item[Home-Verzeichnis des Benutzers] + (\texttt{\$HOME} oder \texttt{\%USERPROFILE\%}): + \begin{ttdescription} + \item[.texlive2011] Vom Nutzer privat erzeugte Dateien und Konfigurationsdaten + der Vorversion. + \item[.texlive2012] Vom Nutzer privat erzeugte Dateien und Konfigurationsdaten + für die aktuelle Version von \TL. + \begin{ttdescription} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} Persönliche Makros, Fonts usw. des Nutzers. + \end{ttdescription} +\end{description} + +% ------------------------------------------------------------- +\subsection{\protect\TeX-Erweiterungen}\label{sec:tex-extensions} + +Unter den \TeX-Systemen der {\TL} befinden sich verschiedene +\TeX"=Erweiterungen: + +\begin{description} +\item [\eTeX]\label{text:etex} stellt bei 100\%-iger Kompatibilität zum + ursprünglichen {\TeX} einen kleinen, aber mächtigen Satz neuer Befehle + bereit (für Makroexpansion, Character-Scanning, zusätzliche + Klassen für ">marks"<, erweiterte Debug-Möglichkeiten und andere). + Zusätzlich gibt es noch die \TeXXeT-Erweiterungen für den bidirektionalen Textsatz, + wie er beispielsweise im Arabischen gebraucht wird. + Im voreingestellten Modus ist {\eTeX} 100\%-ig kompatibel mit dem ">normalen"< \TeX. + Die Dokumentation zu {\eTeX} finden Sie in der Datei + \OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. +\item [pdf\TeX] enthält die \eTeX\ Erweiterungen und erlaubt -- neben der Ausgabe in PDF-Dateien -- auch die Erstellung von DVI-Dateien. Für die meisten \TeX-Formate (wie \prog{etex}, \prog{latex}, \prog{pdflatex}) wird tatsächlich pdf\TeX\ aufgerufen. Die Webseite von pdf\TeX\ lautet + \url{http://www.pdftex.org}. + Die Dokumentation zu pdf\TeX{} finden Sie unter + \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}. + In der Datei + \OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex} finden + Sie ein Anwendungsbeispiel. Das \LaTeX"=Paket \pkgname{hyperref} + besitzt die Option \optname{pdftex} mit der Möglichkeit + für aktive Querverweise (Hypertext) in PDF-Dateien. +\item [Lua\TeX] befindet sich noch in Entwicklung + und ist als zukünftiger Nachfolger von pdf\TeX\ vorgesehen, + zu dem es weitgehend abwärtskompatibel bleiben soll. + Weiterhin soll es auch Aleph ersetzen, auch wenn es nicht kompatibel + dazu sein wird. + Durch den enthaltenen Lua-Interpreter (siehe \url{http://www.lua.org/}) + können Probleme, die in \TeX{} selbst nur mühsam lösbar sind, + einfach und elegant gelöst werden. + Wird es unter dem Namen \filename{texlua} aufgerufen, + verhält es sich wie ein eigenständiger Lua-Interpreter + -- und wird als solcher in vielen Skripten von \TL bereits benutzt. + Für weitere Informationen siehe \url{http://www.luatex.org/} und + \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. +\item [XeTeX] bietet die Unterstützung von Unicode-Zeichensätzen und + OpenType-Schriften durch diverse zusätzliche Bibliotheken. + Mehr Informationen sind unter \url{http://tug.org/xetex} + verfügbar. +\item [\OMEGA] (Omega) ist ein \TeX-System, das intern mit Unicode + (16-Bit"=Unicode"=Zeichen) arbeitet und damit das gleichzeitige + Arbeiten mit nahezu allen auf der Welt eingesetzten Schriften + und deren Zeichenkodierungen erlaubt. Außerdem werden über dynamisch + geladene, sogenannte ">{\OMEGA}~Translation~Processes"< (\acro{OTP}s) + Transformationen zur Verfügung gestellt, die beliebige Eingaben + vor der Bearbeitung durch {\TeX} nach bestimmten Regeln + umformen. Omega ist nicht länger als eigenständiges Programm Teil + von \TL; es wird nur noch Aleph mitgeliefert. +\item [$\aleph$] (Aleph) vereinigt die \OMEGA- und \eTeX-Erweiterungen. + Eine Minimaldokumentation finden Sie in \OnCD{texmf-dist/doc/aleph/base}. +\end{description} + +%\clearpage + +% ------------------------------------------------------------- +\subsection{Weitere Programme von \TL} + +{\TL} enthält eine ganze Reihe unterstützender Programme wie + +\smallskip + +\begin{description} +\item[\cmdname{bibtex}, \cmdname{bibtex8}] Verwalten von Bibliographien +\item[\cmdname{dviconcat}] Zusammenfügen von \dvi-Dateien +\item[\cmdname{dvips}] Konversion von {\dvi} in {\PS} +\item[\cmdname{dviselect}] Ausschneiden von Seiten aus \dvi-Dateien +\item[\cmdname{dvipdfmx}] \dvi-nach-PDF-Konverter (erzeugt auch + \acro{CJK}-konformes PDF aus + \dvi-Dateien mit \OMEGA"=Erweiterungen), als Alternative + zu pdf\TeX +\item[\cmdname{dvilj}] Druckertreiber für die HP-LaserJet"=Familie +\item[\cmdname{makeindex}, \cmdname{xindy}] Erzeugen eines Stichwortverzeichnisses +\item[\cmdname{mpost}] \MF-ähnliches Grafikprogramm +\item[\cmdname{psnup}, \cmdname{psselect}] \PS-Tools +\item[\cmdname{pdfjam}, \cmdname{pdfjoin}] \acro{PDF}-Tools +\item[\cmdname{tex4ht}] \TeX-nach-\HTML-Konvertierung +\item[\cmdname{texexec, texmfstart}] \ConTeXt- und PDF"=Prozessor +\item[\cmdname{xdvi}] \dvi-Bildschirmausgabe im X-Window-System +\end{description} + +\subsection{Fonts in \protect\TL} +\label{sec:tl-fonts} + +\TL{} enthält eine Vielzahl qualitativ hochwertiger Vektorschriften. Weitere Informationen hierzu finden sich unter \url{http://tug.org/fonts} und \OnCD{texmf-dist/doc/fonts/free-math-font-survey/survey}. + +% ============================================================== +\section[Installation von \TeX Live]{Installation von \protect\TL} +\label{sec:install} + +\subsection{Das Installationsprogramm} +\label{sec:inst-start} + +Zur Installation von \TL benötigen Sie die \TK{}-\DVD{} oder den \emph{\TL{} Net Installer} aus dem Internet. + +\begin{description} +\item [Net Installer:] Verfügbar von \CTAN, unter +\dirname{systems/texlive/tlnet}; die URL +\url{http://mirror.ctan.org/systems/texlive/tlnet} leitet Sie automatisch +an einen nahe gelegenen Server des \CTAN-Netzwerks weiter. +Sie können entweder die Datei \filename{install-tl.zip} herunter laden, +die sowohl für Unix als auch Windows gedacht ist, +oder die deutlich kleinere Datei \filename{install-unx.tar.gz}, +die aber nur den Installer für Unix enthält. +Nach dem Auspacken finden Sie die Dateien \filename{install-tl} (Unix) +bzw.\ \filename{install-tl.bat} (Windows) im Verzeichnis \dirname{install-tl}. + +\item [\TeX{} Collection \DVD:] Hier finden Sie die Dateien \filename{install-tl} (Unix) +bzw.\ \filename{install-tl.bat} (Windows) im Verzeichnis \dirname{texlive} +der \DVD. Unter Windows startet beim Einlegen der DVD im Allgemeinen automatisch ein Programm, bei dem Sie unter anderem das Installationsprogramm von \TL auswählen können. Die \DVD\ erhalten Sie als Mitglied eines \TeX-Vereins +(wie \url{http://www.dante.de} für den deutschsprachigen Raum, von der Fachbuchhandlung Lehmanns +(\url{http://www.lob.de}) oder international von der \TeX{} Users Group +(\url{http://tug.org/store}). + +Alternativ können Sie das \ISO-Image der \TL aus dem Internet laden. Nach der Installation von der DVD können Sie die Internet-Aktualisierung aktivieren, für Details siehe Abschnitt \ref{sec:dvd-install-net-updates}. +\end{description} + +\noindent Egal welche Quelle verwendet wird, es wird der gleiche Installer genutzt. Der hauptsächliche Unterschied ist, dass man bei der Verwendung des Net-Installers die neuesten verfügbaren Pakete erhält. Bei der Verwendung von \DVD\ and \ISO\ Images erhält man den Stand des letzten Major Release. Zwischen zwei Major Releases gibt es keine Aktualisierung der \DVD\ oder \ISO\ Images. + +\noindent Die folgenden Abschnitte beschreiben die Installation für die einzelnen Betriebssysteme. + +\subsubsection{Unix} + +\noindent +Im Folgenden werden die Eingaben des +Benutzers nach dem Kommando-Prompt \samp{>} \Ucom{fett} dargestellt. + +Das Skript \filename{install-tl} ist ein Perl-Skript. Am Einfachsten starten +Sie es auf einem Unix-System in der Kommandozeile mit +\begin{alltt} +> \Ucom{cd /pfad/zum/installer} +> \Ucom{perl install-tl} +\end{alltt} +(Sie können auch direkt \Ucom{perl /pfad/zum/installer/install-tl} eingeben. Wenn Ihre +\DVD so gemountet ist, dass als ausführbar gekennzeichnete Skripte direkt gestartet werden +können, können Sie im Verzeichnis des Installers auch direkt +\Ucom{./install-tl} eingeben.) Eventuell müssen Sie Ihr Terminalfenster +größer machen, damit Sie den kompletten Text sehen (Abb.~\ref{fig:text-main}) + +Zum Installieren mit Hilfe einer Benutzeroberfläche (Abb.~\ref{fig:gui-main}) verwenden Sie +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} +Hierfür muss das \dirname{Perl/TK}-Modul mit \acro{XFT}-Unterstützung (diese ist bei \GNU/Linux in der Regel mit einkompiliert) auf Ihrem System installiert sein. + +Alle Optionen des Installationsprogramms werden mit +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} +angezeigt. + +\textbf{Wichtiger Hinweis zu den Zugriffsrechten unter Unix:} Ihre aktuelle Einstellung von \code{umask} +wird bei der Installation von \TL{} berücksichtigt. Daher müssen Sie darauf achten, dass Sie hierfür +einen sinnvollen Wert einstellen (z.\,B. \code{umask002}), wenn Ihre Installation auch durch andere Nutzer +als Sie benutzt werden soll. Falls Sie unsicher sind, was dies bedeutet, schauen Sie bitte in die Anleitung +zu \code{umask} (indem Sie das Kommando \code{man umask} eingeben). + +\textbf{Besonderheit bei Cygwin:} Im Gegensatz zu anderen Unix-basierten +Systemen fehlen bei Cygwin i.\,A. einige Programme, die vom Installationsprogramm +von \TL\ vorausgesetzt werden. Bitte lesen Sie den Abschnitt \ref{sec:cygwin}. + +\subsubsection{MacOSX} + +Wie in Abschnitt~\ref{sec:tl-coll-dists} bereits erwähnt wurde, existiert mit Mac\TeX{} (\url{http://tug.org/mactex}) ein eigenes \TeX-System für \MacOSX. Dieses enthält ein +komplettes \TL mit einem Installationsprogramm, das in Funktionalität und Aussehen der üblichen Installation von Software unter \MacOSX\ entspricht. Weiterhin sind einige Zusatzprogramme enthalten. + +Wenn Sie die \TK-\DVD besitzen, empfiehlt es sich daher, Mac\TeX{} zu verwenden. + +\subsubsection{Windows} + +Wenn Sie den \emph{Net Installer} verwenden, oder auf Ihrem System beim Einlegen der \DVD das +Installationsprogramm nicht automatisch gestartet wurde, können Sie die Installation von +\TL im Windows-Explorer durch einen Doppelklick auf \filename{install-tl.bat} (auf der \DVD befindet +sich diese Datei im Verzeichnis \texttt{texlive}) starten. +Falls Sie bei der Installation mehr Optionen benötigen (z.\,B. die Auswahl +spezifischer Paketgruppen), starten Sie stattdessen \filename{install-tl-advanced.bat}. + +Alternativ können Sie eine cmd-Eingabeaufforderung verwenden, dort in das Verzeichnis wechseln, +in dem sich das Installationsprogramm befindet und +\begin{alltt} +D:\bs{}texlive\bs{}> \Ucom{install-tl} +\end{alltt} +eingeben -- \texttt{...>} kennzeichnet hierbei den Eingabeprompt. Ihre Eingabe ist \Ucom{\texttt{bold/fett}} dargestellt. + +Alternativ können Sie die Installation auch aus einem beliebigen Verzeichnis heraus starten: +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +wobei wir hier annehmen, dass sich ihre \TK-\DVD im Laufwerk D: befindet. +Abb.~\ref{fig:wizard-w32} zeigt das grafische Installationsprogramm im +">wizard mode"<, das unter Windows standardmäßig verwendet wird. + +Zur Installation im Textmodus verwenden Sie: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +\noindent Alle vorhandenen Optionen, die beim Starten des Installationsprogramms verwendet werden können, werden +wie folgt angezeigt: +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2012 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + platforms: 1 out of 19 + + installation scheme (scheme-full) + 84 collections out of 85, disk space required: 3091 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + options: + [ ] use letter size instead of A4 by default + ... + + set up for portable installation + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{Hauptmenü des Installationsprogramms (\GNU/Linux).}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth} +\caption{Grafische Installation im Expertenmodus (\GNU/Linux).}\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth,trim=0 4 0 0,clip} +\caption{Wizard mode (Windows)}\label{fig:wizard-w32} +\end{figure} + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +Das Installationsskript von \TL\ unterstützt nur Version~1.7 von Cygwin. +Bevor Sie mit der Installation von \TL\ beginnen, verwenden Sie das +Installationsprogramm von Cygwin (\filename{setup.exe}) um die Pakete +\filename{perl} und \filename{wget} gegebenenfalls nachzuinstallieren. +Wir empfehlen weiterhin die Installation folgender Cygwin-Pakete: +\begin{itemize*} +\item \filename{fontconfig} [für \XeTeX] +\item \filename{ghostscript} [wird von verschiedenen Teilen von \TL\ benötigt] +\item \filename{libXaw7} [für \code{xdvi}] +\item \filename{ncurses} [damit der 'clear'-Befehl im Installer funktioniert] +\end{itemize*} + + +\subsubsection{Installation im Textmodus} + +Abb.~\ref{fig:text-main} zeigt den Eingangsbildschirm des Installationsprogramms im Textmodus (Standard unter Unix). +Dieser ist ein reiner Textmodus, was zur Folge hatt dass es keine Unterstützung zum Wandern durch die +einzelnen Menüpunkte mit den Cursor-Tasten gibt. Alle Befehle wie zum Beispiel die Auswahl von Menüpunkten werden +durch Eingabe der entsprechenden Befehle bzw.\ Menükürzel über die Tastatur eingegeben und +dann durch Drücken von \emph{Enter} übernommen. Hierbei wird zwischen Groß- und Kleinschreibung +unterschieden! + +Die Installation im Textmodus ist so spartanisch, weil dieser Modus überall funktionieren soll, selbst mit einer Basisinstallation von Perl (für Windows enthält\TL\ eine Minimalversion von Perl). + +\subsubsection{Installation mit Benutzeroberfläche im Expertenmodus} + +Abb.~\ref{fig:gui-main} zeigt die grafische Installation im Expertenmodus +unter GNU/Linux. Funktionell unterscheided sich dieser nicht wesentlich +vom Textmodus, außer dass natürlich mit +Menüs, Auswahlboxen etc. gearbeitet wird. + +Dieser Modus muss explizit mit +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} +gestartet werden. + +\subsubsection{Installation mit einfacher Benutzeroberfläche (\emph{wizard mode})} + +Unter Windows wird automatisch diese einfache Form der Installation verwendet, +der so genannte ">wizard mode"< (Abb.~\ref{fig:wizard-w32}). Dieser zeichnet sich dadurch aus, dass er +\TL\ komplett installiert und dabei vom Benutzer nur wenige Angaben gemacht +werden müssen. Falls Sie eine individuell angepasste Version von \TL\ benötigen, +verwenden Sie daher bitte einen der beiden anderen Installationsmodi. + +Um die Installation explizit im ">wizard mode"< zu starten (insbesondere unter +Unix), verwenden Sie: +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + + +\subsection{Benutzung des Installationsprogramms} +\label{sec:runinstall} + +Das Installationsprogramm sollte (wenn Sie die vorherigen Abschnitte zum Aufbau von \TL und der +verwendeten Verzeichnisstruktur gelesen haben) weitgehend selbsterklärend sein. Trotzdem wollen wir +auf einige Punkte näher eingehen. + +\subsubsection{Auswahl der Binaries (nur für Unix)} +\label{sec:binary} + +\begin{figure}[tb] +\begin{boxedverbatim} +Available platforms: +=============================================================================== + a [ ] alpha-linux DEC Alpha with GNU/Linux + b [ ] amd64-freebsd x86_64 with FreeBSD + c [ ] amd64-kfreebsd x86_64 with GNU/kFreeBSD + d [ ] armel-linux ARM with GNU/Linux + e [ ] i386-cygwin Intel x86 with Cygwin + f [ ] i386-freebsd Intel x86 with FreeBSD + g [ ] i386-kfreebsd Intel x86 with GNU/kFreeBSD + h [X] i386-linux Intel x86 with GNU/Linux + i [ ] i386-solaris Intel x86 with Solaris + j [ ] mips-irix SGI IRIX + k [ ] mipsel-linux mipsel with Linux + l [ ] powerpc-aix PowerPC with AIX + m [ ] powerpc-linux PowerPC 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 +\end{boxedverbatim} +\caption{Auswahlmenü für Binaries}\label{fig:bin-text} +\end{figure} + +\noindent Abb.~\ref{fig:bin-text} zeigt das Auswahlmenü für die Binaries der einzelnen Betriebssysteme im Textmodus. +Im Allgemeinen sollte hier schon das richtige System ausgewählt sein. Sie können aber problemlos Binaries +für verschiedene Systeme parallel auswählen. Dies bietet sich an, wenn Ihre Installation auf verschiedenen +Rechnern in einem heterogenen Netzwerk sichtbar ist und von dort aus benutzt werden soll. + +\subsubsection{Auswahl der zu installierenden Komponenten} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Select a scheme: +=============================================================================== + a [X] full scheme (everything) + b [ ] medium scheme (small + more packages and languages) + c [ ] small scheme (basic + xetex, metapost, a few languages) + d [ ] basic scheme (plain and latex) + e [ ] minimal scheme (plain only) + f [ ] ConTeXt scheme + g [ ] GUST TeX Live scheme + h [ ] teTeX scheme (more than medium, but nowhere near full) + i [ ] XML scheme + j [ ] custom selection of collections +\end{boxedverbatim} +\caption{Menü zur Auswahl des Schemas}\label{fig:scheme-text} +\end{figure} + +\noindent Abb.~\ref{fig:scheme-text} zeigt das Auswahlmenü für ein grundsätzliches Installationsschema der +\TL. Durch die Auswahl eines Schemas werden automatisch die Komponenten zur Installation ausgewählt, die +für das gewünschte Schema notwendig bzw.\ sinnvoll sind. Mit einer vollständigen Installation von \TL +(\emph{full scheme}) sind Sie auf der sicheren Seite, da hier einfach alles installiert wird. Sie können +aber auch eines der abgespeckten Schemas wie \emph{basic} (für ein sehr schlankes System), \emph{medium} +oder \emph{minimal} (dies empfiehlt sich aber nur für Testsysteme und weniger zum ernsthaften Arbeiten) +auswählen. Weiter stehen einige Schemas für spezielle Zwecke oder Sprachen zur Verfügung. + +\begin{figure}[tb] +\tlpng{stdcoll}{.7\linewidth,trim=0 4 0 0,clip} +\caption{Menü zur Aus- oder Abwahl von Collections.}\label{fig:collections-gui} +\end{figure} + +Wenn Sie das Schema ausgewählt haben, können Sie dieses in den Menüpunkten \emph{standard collections} und +\emph{language collections} (s.\,Abb.~\ref{fig:collections-gui}, diesmal zur Abwechslung im GUI-Modus) +individuell nach Ihren Wünschen anpassen. + +Während das Schema nur den grundlegenden Funktionsumfang vorgibt, ist die Auswahl von Komponenten auf der +Ebene der \emph{Collections} viel feiner. Eine Collection besteht dabei aus mehreren Paketen zu einem Thema, +wobei jedes der Pakete aus bestimmten Makrodateien, Fontdateien usw. bestehen kann. + +Noch mehr Kontrolle über die Komponenten Ihres Systems haben Sie nach der Installation mit dem \TeX\ Live Manager (\prog{tlmgr}), das in Abschnitt~\ref{sec:tlmgr} beschrieben wird. Hier können Sie gezielt einzelne +Pakete installieren oder entfernen. + +\subsubsection{Verzeichnisse} +\label{sec:directories} + +Die Verzeichnisstruktur von \TL wurde bereits im Abschnitt~\ref{sec:texmftrees} auf S.~\pageref{sec:texmftrees} +beschrieben. Als Wurzelverzeichnis für \TL (\dirname{TEXDIR}) wird unter Windows +(|%SystemDrive%\texlive\2012|) und unter Unix (\dirname{/usr/local/texlive/2012}) angenommen. + +Prinzipiell können Sie diesen Pfad problemlos ändern, z.\,B. wenn Sie \TL als normaler Nutzer installieren +wollen und kein Schreibrecht in dem oben angegebenen Verzeichnis besitzen. + +Auf Wunsch können Sie \TL also auch in Ihrem Home-Verzeichnis installieren, wenn Sie sowieso der einzige +Verwender von \TL sind. Für Ihr Home-Verzeichnis können Sie den Pfad ">|~|"< verwenden und so +beispielsweise \TL nach |~/texlive/2012| installieren. + +Wir empfehlen Ihnen, die Jahreszahl im Verzeichnisnamen beizubehalten. So können Sie von Jahr zu Jahr +einfach die neue Version testen, ohne die alte zu entsorgen. Bei Bedarf können Sie einen symbolischen +Link (z.B. \dirname{/usr/local/texlive-cur}) verwenden, der jeweils auf das Verzeichnis der aktuellen +Version von \TL verweist. + +Wenn Sie die Einstellung \dirname{TEXDIR} im Installationsprogramm ändern, werden die Werte für +\dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} und +\dirname{TEXMFSYSCONFIG} automatisch angepasst. + +Das als \dirname{TEXMFHOME} bezeichnete Verzeichnis ist der Ort, in dem persönliche Makrodateien, +Schriften o.\,ä. abgelegt werden können. Vorgabewert ist |~/texmf|. Im Gegensatz zu \dirname{TEXDIR} +wird |~| hier nicht direkt zum Pfad des Home-Verzeichnisses aufgelöst, sondern unverändert in die +Konfigurationsdateien von \TL übernommen und erst zur Laufzeit aufgelöst. Somit kann jeder Nutzer +des Systems seinen komplett eigenen Pfad haben, der von \TL verwendet wird, und so nach Wunsch auch +eigene Konfigurationsänderungen durchführen. +Zur Laufzeit wird |~| unter Unix durch \dirname{$HOME} und unter Windows durch \verb|%USERPROFILE%| ersetzt. + +Die Variable \dirname{TEXMFVAR} verweist auf das Verzeichnis mit benutzerspezifisch +erzeugten Konfigurationsdateien, z.\,B. den Konfigurations-Cache von \ConTeXt\ Mk\acro{IV}. + +\subsubsection{Optionen} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: + after installation, get package updates from CTAN: [X] +\end{boxedverbatim} +\caption{Auswahlmenü für weitere Optionen (Unix).}\label{fig:options-text} +\end{figure} + +\noindent Abb.~\ref{fig:options-text} zeigt das Menü, in dem weitere Einstellungen für die Installation von +\TL möglich sind. Zur Erläuterung: +\begin{description} +\item[use letter size instead of A4 by default:] Verwendung von Letter anstatt DIN\,A4 als +Standard\-papier\-größe. Natürlich können Sie später unabhängig davon für einzelne Dokumente eine +beliebige Papiergröße wählen. + +\item[execution of restricted list of programs:] Ab \TL\ 2011 können bei einem +\TeX-Lauf standardmäßig einige externe Programme aufgerufen werden. Die (kurze) +Liste der erlaubten Programme wird in der Datei \filename{texmf.cnf} definiert. +Für weitere Informationen siehe Abschnitt~\ref{sec:2011news} über Neuerungen in +\TL\ 2011. + +\item[create format files:] Auch wenn das Erzeugen von Formatdateien für Makropakete, die Sie gar + nicht benötigen, Zeit und Platz kostet, empfehlen wir trotzdem, diese Option ausgewählt zu belassen. + Falls Sie diese Option abwählen, werden Formatdateien jeweils bei Bedarf erzeugt, und dann + im persönlichen \dirname{TEXMFVAR}-Baum des aktuellen Benutzers abgelegt. Dort liegende Formate werden allerdings + nicht automatisch neu generiert, wenn z.\,B. Programme oder Silbentrennmuster aktualisiert werden, so dass + im Extremfall nach einem Update Inkompatibilitäten entstehen können. + +\item[install font/macro \ldots\ tree:] Mit dieser Option können Sie + verhindern, dass die Dokumentation und die Quelldateien der Pakete + installiert werden. Wir raten aber, die Vorgabe zu übernehmen, also + die Dokumentation und Quelldateien zu installieren. + +\item[create symlinks in standard directories] (nur unter Unix): + Mit dieser Option können Sie symbolische Links für Programme und Dokumentation in den Standard\-verzeichnissen + Ihres Systems anlegen, so dass Sie Ihre Umgebungsvariablen \envname{PATH}, \envname{MANPATH} und + \envname{INFOPATH} nicht anpassen müssen. Natürlich benötigen Sie für diese Option Schreibrechte in + den entsprechenden Verzeichnissen. Hinweis: Diese Option ist nicht dazu gedacht, ein vorhandenes \TeX-System, das + z.\,B. als Teil Ihrer Linux-Distribution installiert wurde, zu überschreiben! Sie dient vielmehr dazu, + dass Links in Verzeichnissen angelegt werden, wo die Nutzer sie erwarten -- beispielsweise in + \dirname{/usr/local/bin} --, aber sich dort noch keine \TeX-Programme befinden. + +\item[after installation \dots{} CTAN:] Diese Option ist bei der Installation von DVD standardmäßig gesetzt. Sie sorgt dafür, dass nach der Installation Paket-Aktualisierungen aus dem Internet geladen werden. Es gibt nur einen sinnvollen Grund, diese Option nicht zu aktivieren: wenn nur ein Untermenge von \TL\ installiert wurde und Pakete nach der Installation manuell hinzugefügt werden sollen. + +\end{description} + +\noindent Wenn Sie alle gewünschten Einstellungen für die Installation vorgenommen +haben, können Sie im Hauptmenü nun ">I"< eintippen, um diese zu starten. +Lesen Sie dann anschließend Abschnitt~\ref{sec:postinstall} für +eventuell notwendige Arbeiten zum Abschluss der Installation. + +\subsection{Kommandozeilenoptionen für die Installation} +\label{sec:cmdline} + +Nach Eingabe von +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +erhalten Sie eine Liste der vorhanden Kommando\-zeilen\-optionen. Sie können diese entweder mit |-| oder |--| +verwenden. Die wichtigsten sind: + +\begin{ttdescription} +\item[-gui] Installation im grafischen Modus. Hierfür muss unter Unix Perl/Tk (mit \acro{XFT}-Unterstützung) installiert sein + (\url{http://tug.org/texlive/distro.html#perltk}). Falls dies nicht der Fall ist, wird die Installation + im Textmodus durchgeführt. + +\item[-no-gui] Installation im Textmodus. Da dies unter Unix Standard ist, wirkt sich diese Option nur + unter Windows aus. Da die Installation zum Benutzen von \TL direkt von \DVD im grafischen Modus nicht + verfügbar ist, brauchen Sie in diesem Fall unbedingt den Textmodus. + +\item[-lang {\sl LL}] Sprache des Installationsprogramms als Sprach-Code in zwei Buchstaben (\textsl{LL}). + Derzeit werden unterstützt. Das Installationsprogramm versucht, die gewünschte Sprache anhand des + Systems herauszufinden. Falls dies scheitert oder die betreffende Sprache nicht verfügbar ist, wird als + Fallback-Sprache Englisch genutzt. + +\htmlanchor{opt-in-place} +\item[-in-place] Sollten Sie schon ein rsync, svn, oder eine andere Kopie von + \TL{} haben (siehe \url{http://tug.org/texlive/acquire-mirror.html}), dann wird diese Option genau das nutzen, was Sie schon haben und nur die notwendigen post-install Operationen durchführen. Eine Warnung: Die Datei \filename{tlpkg/texlive.tlpdb} kann dadurch überschrieben werden; machen Sie vorher gegebenenfalls eine Sicherheitskopie. Die Entfernung von Paketen muss auch manuell vorgenommen werden. + +Diese Option kann nicht über die Installer-Schnittstelle gesetzt werden. + +\item[-portable] Die Option \code{-portable} (\code{V} im Text-Installer oder die entsprechende Option im grafischen Installer); dient der Installation auf einem USB-Stick oder einer DVD-R. Siehe Abschnitt \ref{sec:portable-tl} für Informationen über die portable Installation von \TL. + +\item[-profile {\sl profile}] Das Installationsprogramm schreibt die ausgewählten Optionen in eine Datei + \filename{texlive.profile}. Mit dieser Option können + Sie eine bereits vorhandene Datei bei der Installation weiter verwenden, z.\,B. wenn Sie äquivalente + Installationen auf mehreren Rechnern realisieren wollen, ohne alle Auswahlschritte der Installation immer + wieder neu durchführen zu müssen. + +\item [-repository {\sl url/path}] zur Auswahl einer Installationsquelle, + für weitere Erläuterung siehe den nächsten Abschnitt. +\end{ttdescription} + +\subsubsection{Die Option \optname{repository}} +\label{sec:location} + +Als Standardquelle für die Installation wird ein \CTAN-Knoten verwendet, der automatisch von \url{http://mirror.ctan.org} ermittelt wird. + +Falls Sie eine andere Installationsquelle verwenden wollen, geben Sie eine neue Quelle an, die entweder mit \texttt{ftp:}, \texttt{http:} oder \texttt{file:/} beginnt oder ein Verzeichnispfad auf Ihrem System ist. +Falls Sie \texttt{http:} oder \texttt{ftp:} verwenden, werden ">\texttt{/}"<-Zeichen am Ende ignoriert. + +Sie können also z.\,B. einen bestimmten \CTAN-Knoten auswählen, so etwa +\url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +wobei Sie natürlich statt |ctan.example.org| einen echten Servernamen +verwenden und wahrscheinlich auch den Rest der URL anpassen müssen. +Eine Auflistung von \CTAN-Servern finden Sie unter \url{http://ctan.org/mirrors}. + +Falls Sie ein lokales Repository verwenden (also entweder direkt einen +Verzeichnispfad oder eine mit \texttt{file:/}-URL angeben), so werden +bevorzugt Archivdateien in einem Unterverzeichnis \dirname{archive} des +Repository verwendet, selbst wenn ausgepackte Dateien vorhanden sind. + +\subsection{Aufgaben im Anschluss an die Installation} +\label{sec:postinstall} + +Je nach System kann es notwendig sein, dass im Anschluss an die Installation noch einige Kleinigkeiten +erledigt werden müssen. + +\subsubsection{Windows} +Benutzer von Windows sind hier in der glücklichen Position, dass das Installationsprogramm alles komplett +erledigt haben sollte. + +\subsubsection{Unix, falls symbolische Links angelegt wurden} + +Wenn Sie bei der Installation angegeben haben, dass und wo symbolische Links angelegt werden sollten +(s.\,Abschnitt~\ref{sec:options}), dann sollten hier auch keine Nacharbeiten mehr notwendig sein. + +\subsubsection{Umgebungsvariablen für Unix} +\label{sec:env} + +Das Verzeichnis mit den ausführbaren Programmen von \TL muss sich im Suchpfad des Systems befinden. +Jedes unterstützte System besitzt ein eigenes Verzeichnis unterhalb von \dirname{TEXDIR/bin}, deren +Namen Sie in Abb.~\ref{fig:bin-text} finden. + +Weiterhin können Sie die Verzeichnisse mit den Manual-Pages und Info-Dateien zu den entsprechenden +Suchpfaden für Dokumentation hinzufügen. + +Für Systeme mit einer Bourne-kompatiblen Shell wie \prog{bash} ist hier am Beispiel von GNU/Linux +aufgeführt, wie die Befehle zum Setzen der Umgebungsvariablen (z.\,B. in \filename{$HOME/.profile}) +aussehen könnten: + +\begin{sverbatim} +export PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH +export MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH +export INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{sverbatim} + +\noindent Für \prog{csh} oder \prog{tcsh} erfolgt die Konfiguration in der Regel in der Datei~\filename{$HOME/.cshrc} +und könnte so aussehen: + +\begin{sverbatim} +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{sverbatim} + +\subsubsection{Systemweites Setzen von Umgebungsvariablen} +\label{sec:envglobal} + +Wenn Sie als Administrator die Umgebungsvariablen global für das gesamte System setzen wollen, +gehen wir davon aus, dass Sie sich mit der grundlegenden Systemadministration auskennen. + +Daher hier nur zwei Hinweise: + +\begin{enumerate} +\item Schauen Sie nach einer Datei +\filename{/etc/manpath.config}. Falls diese vorhanden ist, sollte es reichen, folgende Zeilen +hinzu zu fügen: + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man +\end{sverbatim} + +\item Prüfen Sie, ob es auf Ihrem System eine Datei \filename{/etc/environment} gibt, in der die +systemweiten Umgebungsvariablen definiert werden. + +Zusätzlich wird ein symbolischer Link \code{man} im binary-Verzeichnis unter +Unix angelegt, der auf \dirname{texmf/doc/man} berweist. Einige Versionen von \code{man}, so z.\,B. unter \MacOSX, +finden so verlinkte Man-Pages automatisch, so dass hier keine spezielle +Konfiguration für die Man-Pages mehr erforderlich ist. + +\end{enumerate} + + +\subsubsection{Internet-Updates nach der Installation von DVD} +\label{sec:dvd-install-net-updates} + +Wenn Sie von DVD installiert haben, können Sie mittels des folgenden Befehls die Aktualisierung über das Internet aktivieren. Zuerst müssen Sie, wie im letzten Abschnitt beschrieben, den Suchpfad angepasst haben: + +\begin{alltt} +> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +\noindent Dadurch nutzt \cmdname{tlmgr} beim nächsten Update einen \CTAN\ Mirror. Sollte es Probleme bei der automatischen Wahl eines Mirror-Servers geben, kann ein bestimmter \CTAN\ Server von der unter \url{http://ctan.org/mirrors} verfügbaren Liste ausgewählt werden. Benutzen Sie diesen Pfad dann mit dem oben genannten Befehl. + +\htmlanchor{xetexfontconfig} +\htmlanchor{sysfontconfig} +\subsubsection{Font configuration for \XeTeX} +\label{sec:font-conf-xetex} + +\XeTeX\ und Lua\TeX\ können nicht nur die Schriften in den \TeX\ Bäumen nutzen, sondern auch die auf dem System vorhandenen Fonts. Die Methoden, wie sie dies tun, ähneln sich, sind aber verschieden. + +Unter Windows sind die auf dem System vorhandenen Schriften automatisch nutzbar. Auf einem Unix/Linux System sind Anpassungen notwendig, damit die Schriften per Systemname und nicht nur Dateiname gefunden werden können. + +Hierfür wird bei der Installation des \filename{xetex} Pakets die Datei \filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf} +erzeugt. + +Um die mitgelieferten \TL-Schriften systemweit verwenden zu können, +gehen Sie bitte folgendermaßen vor: +\begin{enumerate*} +\item Kopieren Sie als root-User \filename{texlive-fontconfig.conf} nach +\dirname{/etc/fonts/conf.d/09-texlive.conf}. +\item Führen Sie \Ucom{fc-cache -fsv} aus. +\end{enumerate*} + +\noindent Falls Ihnen als normaler Nutzer die entsprechenden Privilegien für die +obigen Schritte fehlen, können Sie die \TL-Schriften für sich selbst +als \XeTeX-Nutzer verwendbar machen: +\begin{enumerate*} +\item Kopieren Sie \filename{texlive-fontconfig.conf} in das Unterverzeichnis + \filename{~/.fonts.conf}, wobei \filename{~} Ihr Home-Verzeichnis ist. +\item Führen Sie \Ucom{fc-cache -fv} aus. +\end{enumerate*} + +Führen Sie \code{fc-list} aus, um eine Liste der Systemschriften mit hilfreichen Informationen zu erhalten. + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context-mkiv} + +Sowohl das `alte' \ConTeXt{} (Mark \acro{II}) als auch das `neue' \ConTeXt{} +(Mark \acro{IV}) sollten problemlos nach der \TL{} Installation funktionieren und +brauchen keine besondere Aufmerksamkeit, sofern \verb+tlmgr+ für den Update-Prozess +genutzt wird. + +Da \ConTeXt{} Mk\acro{IV} jedoch nicht die kpathsea-Bibliothek nutzt, ist +ein wenig manuelle Nacharbeit notwendig, wenn neue Dateien manuell installiert werden (also ohne die Nutzung von +\verb+tlmgr+). + +Nach einer jeden solchen Installation muss jeder Nutzer das das folgende Kommando ausführen, um den \ConTeXt{} Cache zu aktualisieren: + +\begin{sverbatim} +context --generate +\end{sverbatim} + +Die erzeugten Dateien werden in \code{TEXMFCACHE} gespeichert, dessen Standardwert \verb+TEXMSYSVAR;TEXMFVAR+ ist. + +\ConTeXt\ Mk\acro{IV} liest aus allen Pfaden, die in \verb+TEXMFCACHE+ aufgeführt sind und schreibt in die erste Pfadangabe, bei der Schreibrechte existieren. Im Fall identischer Cache-Daten hat der letzte gefundene Pfad Vorrang vor allen anderen Pfaden. + + +Für weitere Informationen siehe +\url{http://wiki.contextgarden.net/Running_Mark_IV} und +\url{http://wiki.contextgarden.net/TeX_Live_2011}. + +\subsubsection{Integrieren lokaler bzw.\ nutzer-spezifischer Makros} +\label{sec:local-personal-macros} + +Wie bereits in Abschnitt~\ref{sec:texmftrees} erwähnt, ist der Verzeichnisbaum \dirname{TEXMFLOCAL} (im +Normalfall \dirname{/usr/local/texlive/texmf-local} oder \verb|%SystemDrive%\texlive\texmf-local|) +für lokale Ergänzungen wie Makros und Schriften gedacht, die anschließend allen Benutzern des Systems zur +Verfügung stehen. Weiterhin können Benutzer den Verzeichnisbaum \dirname{TEXMFHOME} (im Normalfall +\dirname{$HOME/texmf} oder \verb|%USERPROFILE%\texmf|) für persönliche Ergänzungen verwenden, ohne +dass andere Benutzer davon beeinflusst werden. +Diese Verzeichnisse sollen über verschiedene Versionen von \TL hinweg identisch sein, so dass ein +Update von \TL auf eine neue Version einfach möglich ist, ohne dass Sie Ihre lokalen Ergänzungen +verlieren. Wir empfehlen Ihnen daher, von der vorgegebenen Verzeichnisstruktur nicht abzuweichen. + +Für beide oben genannte Verzeichnisbäume erwartet \TL eine Verzeichnisstruktur innerhalb des Baums, die +dem \emph{\TeX{} Directory Standard} entspricht, wie er in \url{http://tug.org/tds} bzw. +\filename{texmf/web2c/texmf.cnf} definiert ist. +So gehören Dokumentklassen für \LaTeX{} zum Beispiel in ein Verzeichnis +unterhalb von \dirname{TEXMFLOCAL/tex/latex} oder \dirname{TEXMFHOME/tex/latex}. + +Der Verzeichnisbaum \dirname{TEXMFLOCAL} wird zur Laufzeit nicht direkt nach Dateien durchsucht. +Stattdessen wird eine Liste von Dateinamen verwendet, sich sich in einer Datei mit dem Namen~\filename{ls-R} +befindet. Denken Sie also daran, nach Änderungen in diesem Baum diese Dateiliste zu aktualisieren. Dies tun Sie +entweder mit dem Befehl \cmdname{mktexlsr} oder über die Schaltfläche \emph{Reinit file database} in +dem Konfigurationsreiter des \TeX\ Live Managers (\GUI-Modus). + +\subsubsection{Integrieren von Schriften} +Die Installation von Schriften, die nicht von \TL sind, ist eine recht komplexe Angelegenheit. Sie sollten +sich bereits gut mit dem System auskennen, bevor Sie diese Aufgabe beginnen. Schauen Sie vielleicht +vorher in Abschnitt~\ref{sec:tl-fonts} nach, welche Schriften bereits bei \TL mitgeliefert werden. + +Eine Alternative besteht im Benutzen von \XeTeX\ oder Lua\TeX\ (s.\,Abschnitt~\ref{sec:tex-extensions}), bei dem +direkt alle vom Betriebssystem installierten Schriften verwendet werden können, ohne dass die Installation +einer \TeX-Unterstützung notwendig ist. + +Falls Sie wirklich weitere Schriften benötigen, finden Sie unter +\url{http://tug.org/fonts/fontinstall.html} eine Beschreibung zur +Installation weiterer Schriften. + + + +\subsection{Testen der Installation} +\label{sec:test-install} + +Nach der Installation von \TL wollen Sie es natürlich benutzen, um möglichst schöne Dokumente zu setzen. + +Dieser Abschnitt beschreibt, wie Sie prüfen können, ob Ihr \TL-System funktioniert. +Die folgenden Beispiele sind für Unix, sollten unter Windows und \MacOSX aber sehr ähnlich sein. Der Unterschied kann sein, dass Sie dort eventuell eine grafische Benutzeroberfläche verwenden. + +\begin{enumerate} + +\item Prüfen Sie, ob Sie das Programm \cmdname{tex} ausführen können: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live 2012) +kpathsea version 5.0.0 +Copyright 2011 D.E. Knuth. +... +\end{alltt} + +Erhalten Sie als Resultat statt der Versionsnummer die Meldung, dass der Befehl nicht gefunden wurde, +so haben Sie wahrscheinlich vergessen, das Verzeichnis mit den ausführbaren Programmen +in Ihren \envname{PATH} aufzunehmen, s.\,Abschnitt~\ref{sec:env} auf S.\,\pageref{sec:env}. + +\item Eine einfache \LaTeX{}-Datei übersetzen: +\begin{alltt} +> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-1.40.11-2.2 (TeX Live 2012) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} + +Falls dies schief geht, sind wahrscheinlich noch alte Umgebungsvariablen einer vorigen \TeX-Installation +übrig geblieben. Wir empfehlen, die Umgebungsvariablen, die sich auf \TeX{} beziehen, zu entfernen. +Für eine weitere Analyse können Sie \TeX{} anzeigen lassen, wo es bestimmte Dateien sucht, +siehe ">Fehlersuche"< auf Seite~\pageref{sec:debugging}. + +\item Ergebnis auf dem Bildschirm anschauen: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +Nun sollte +sich ein Vorschaufenster mit dem soeben gesetzten Beispieldokument öffnen, das die Grundlagen von +\LaTeX{} erläutert (und das Anfänger tatsächlich auch einmal lesen sollten). +Unter Unix muss ein X-Server laufen, damit \cmdname{xdvi} funktioniert; +falls dies nicht der Fall ist oder die Umgebungsvariable \envname{DISPLAY} falsch gesetzt ist, +erhalten Sie die Fehlermeldung \samp{Can't open display}. + +\item Eine \PS{}-Datei erzeugen: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Direkt eine \acro{PDF}-Datei erzeugen (statt \dvi{}): +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Eine \acro{PDF}-Datei anschauen: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Weder \cmdname{gv} noch \cmdname{xpdf} sind in \TL{} enthalten, daher müssen diese separat installiert +werden, siehe \url{http://www.gnu.org/software/gv} bzw. +\url{http://www.foolabs.com/xpdf}. +Sie können natürlich auch andere PDF-Viewer verwenden, beispielsweise den Adobe Reader, der allerdings unter Windows das Problem hat dass geöffnete PDF-Dateien +nicht überschrieben werden können, was zu Fehlern von pdf\TeX\ führt, wenn +Sie ein Dokument übersetzten wollen und vergessen haben, es vorher im +Acrobat Reader zu schließen. Unter Windows sollten Sie auch einmal +Sumatra PDF (\url{http://blog.kowalczyk.info/software/sumatrapdf}) ausprobieren. + +\item Weitere nützliche Test-Dateien außer +\filename{sample2e.tex}: + +\begin{ttdescription} +\item [small2e.tex] Einfachere Version von \filename{sample2e}, um den Fehler einzugrenzen, wenn Sie +beim Übersetzen von \filename{sample2e} Probleme haben. +\item [testpage.tex] Hiermit können Sie prüfen, ob Ihr Drucker Ihren Ausdruck horizontal oder vertikal verschiebt. +\item [nfssfont.tex] Zum Testen von Fonts und Erzeugen von Schrifttabellen. +\item [testfont.tex] Erzeugen von Schrifttabellen, aber mit plain \TeX. +\item [story.tex] Das einfachste Testdokument von allen (in plain \TeX{}). +Geben Sie am Ende \samp{\bs bye} ein, wenn nach dem Aufruf von \samp{tex +story.tex} der \code{*} erscheint. +\end{ttdescription} + +\item Falls Sie das \filename{xetex}-Paket installiert haben, können Sie +das Verwenden von Systemschriften folgendermaßen testen: +\begin{alltt} ++> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} + +(Oder das gleiche für \filename{luatex}.) + +Falls Sie die Fehlermeldung ">Invalid fontname \glq Latin Modern +Roman\grq\dots"< erhalten, muss Ihr System so konfiguriert werden, dass +es die von \TL\ mitgelieferten Schriften findet (siehe Abschnitt~\ref{sec:font-conf-xetex}). +\end{enumerate} + +\subsection{Hinweise auf weitere Software} +In vielen Fällen ist die Installation weiterer Software sinnvoll: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} mit Zusatzpaketen von + \acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, für die Bearbeitung + und Umwandlung von Bildern in andere Formate, +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, ebenfalls für Bilder. + +\item[\TeX-Oberflächen] Es gibt eine breite Auswahl von Oberflächen bzw. + Editoren, die \TeX\ unterstützen, je nach persönlichem Geschmack des + Benutzers. Hier ist eine Auswahl, wobei einige davon nur für Windows verfügbar sind: + \begin{itemize*} + \item \cmdname{GNU Emacs} gibt es auch für Windows, siehe + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs} mit Auc\TeX\ für Windows findet man auf der Homepage \url{http://www.gnu.org/software/auctex}. + \item \cmdname{Emacs} mit Auc\TeX\ für Windows findet man auf der Homepage \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} findet sich unter \url{http://www.ctan.org/support/LEd}. + \item \cmdname{SciTE} findet sich unter + \url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} ist Freie Software, verfügbar über + \url{http://www.xm1math.net/texmaker/}. + \item \cmdname{TexMakerX} \url{http://texmakerx.sourceforge.net/} + ist eine Version von \cmdname{Texmaker} mit zusätzlichen Features + \item \cmdname{TeXnicCenter} ist Freie Software, verfügbar über + \url{http://www.texniccenter.org} und als Teil von pro\TeX{}t. + \item \cmdname{TeXworks} ist Freie Software, verfügbar über + \url{http://tug.org/texworks}. Wird unter Windows und + \MacOSX\ als Teil von \TL\ mitinstalliert. + \item \cmdname{Vim} ist Freie Software, verfügbar über + \url{http://www.vim.org}. + \item \cmdname{WinShell} findet sich unter \url{http://www.winshell.de}. + \item \cmdname{WinEdt} ist Shareware, verfügbar über + \url{http://tug.org/winedt} oder \url{http://www.winedt.com}. + Bitte beachten Sie, dass es für Mitglieder von \dante\ ein + Lizenzabkommen mit WinEdt zu sehr günstigen Preisen gibt. + \end{itemize*} +\end{description} +Für weitere Programme siehe \url{http://tug.org/interest.html}. + +\htmlanchor{tlsharedinstall} +\section{Installation für mehrere Maschinen oder Nutzer (Netz-Installation)} +\label{sec:sharedinstall} + +Bei \TL ist nicht nur vorgesehen, dass es von mehreren Benutzern auf einem System verwendet werden kann, +sondern auch in einem Netzwerk. In der normalen Konfiguration von \TL werden nur relative und keine absoluten +Pfade verwendet. Dies erkennt man an Einstellungen in der Datei \filename{$TEXMFMAIN/web2c/texmf.cnf}, +die Zeilen wie die folgenden enthält, in denen Verzeichnisse relativ zu den Verzeichnissen lokalisiert werden, +in denen sich die Programme befinden: + +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +Daher ist es im Normalfall ausreichend, +das Programm-Verzeichnis in den Suchpfad des Systems aufzunehmen, +alles weitere bestimmt \TL dann automatisch. + +Daher ist es kein Problem, wenn das Grundverzeichnis von \TL als Netzlaufwerk eingebunden ist. Tatsächlich +können Sie \TL\ sogar zunächst lokal installieren und dann auf ein Netzlaufwerk verschieben. + +Benutzer von Windows können ein Installationsskript namens \filename{w32client} +für eine Netzwerkinstallation von \url{http://tug.org/texlive/w32client.html} (siehe auch Abschnitt \ref{sec:sharedinstall}) +herunterladen. Dieses nimmt die Einstellungen im Startmenü von Windows +für das Verwenden von \TL über Netzwerk vor, weiterhin wird ein Skript zur +Deinstallation mitgeliefert. Lesen Sie bitte die Beschreibung auf der +angegebenen Webseite. + +\htmlanchor{tlportable} +\section{Portables \protect\TL{} auf DVD oder USB-Stick} +\label{sec:portable-tl} + +Wenn Sie \TL\ im portablen Modus verwenden wollen (z.\,B. auf einem Rechner, +auf dem Sie "`Gast"' sind), können Sie \TL\ mit der Option \optname{-portable} (bzw. der Option \code{V} +im Text-Installer oder der entsprechenden Option im grafischen Installer) auf einem USB-Stick installieren (siehe Abschnitt \ref{sec:cmdline}). + +Um \TeX\ von dieser portablen Installation ausführen zu können, muss das entsprechenden Verzeichnis mit den Binaries dem Suchpfad hinzugefügt werden. Unter Windows kann man \filename{tl-tray-menu} im Stammverzeichnis der Installation doppelt klicken, um zwischen verschiedenen Aufgaben zu wählen. + +\medskip +\tlpng{tray-menu}{4cm} +\smallskip + +\noindent Der Eintrag `More\ldots' erläutert, wie Sie dieses Menü anpassen können. + +\htmlanchor{tlmgr} +\section{\cmdname{tlmgr}: Installation verwalten} +\label{sec:tlmgr} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} im \GUI-Modus. Hauptfenster nach dem Klicken auf ">Load"<.}\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\hbox to \hsize{% + \vtop{\hsize=.59\linewidth + \null % make figures align at the top + \tlpng{tlmgr-general-options}{\hsize} + \caption{\texttt{tlmgr} im \GUI-Modus: Allgemeine Optionen} + \label{fig:tlmgr-general-options} + } + \hfil + \vtop{\hsize=.39\linewidth + \null + \tlpng{tlmgr-paper-options}{\hsize} + \caption{\texttt{tlmgr} im \GUI-Modus: Optionen zur Papiergröße} + \label{fig:tlmgr-paper-options} + } +} +\end{figure} + +Bei der Installation von \TL wird auch das Programm~\prog{tlmgr} installiert, mit dem Sie anschließend +Ihr \TL-System verwalten können. Die hierfür bisher verwendeten Programme~\prog{updmap}, +\prog{fmtutil} und \prog{texconfig} sind zwar noch vorhanden, aber inzwischen +ist \prog{tlmgr} die vorgesehene Oberfläche zur Konfiguration von \TL. +Mit \prog{tlmgr} können Sie folgende Aufgaben erledigen: +\begin{itemize*} +\item Verfügbare Schemas, Collections und Pakete installieren, aktualisieren, wieder + herstellen, sichern, deinstallieren, auf Wunsch mit + Berücksichtigung von Paketabhängigkeiten. +\item Suchen nach Paketen. +\item Anzeigen der Systeme, unter denen \TL läuft; (de)installieren von Binaries für weitere Systeme. +\item Anpassen der Installation, wie Ändern der Papiergröße oder des Quellverzeichnisses für Komponenten + (s.\,Abschnitt~\ref{sec:location}). +\end{itemize*} +\textit{Achtung:} \prog{tlmgr} ist für die Installation im portalen Modus (Abschnitt \ref{sec:portable-tl}) weder gedacht noch getestet. + +\subsection{\cmdname{tlmgr} im grafischen Modus} +\prog{tlmgr} im \GUI-Modus (siehe Abbildung \ref{fig:tlmgr-gui}) wird durch +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +gestartet. Unter Windows finden Sie das Programm im Start menu: \texttt{Start}, \texttt{Programme}, +\texttt{TeX Live 2012}, \texttt{TeX Live Manager}. Nach Klicken auf ">Load"< +wird eine Liste aller verfügbaren und installierten (letztere durch ">(i)"< gekennzeichnet) angezeigt. Dies +setzt voraus, dass das Verzeichnis, aus dem \TL die Pakete lädt, vorhanden bzw.\ erreichbar ist. + +Abb.~\ref{fig:tlmgr-general-options} und \ref{fig:tlmgr-paper-options} zeigen die Reiter zur allgemeinen Konfiguration von \TL\ und zur Einstellung der Papiergröße. + +\subsection{Beispiel zur Verwendung von \cmdname{tlmgr} über Kommandozeile} + +Nachdem Sie \TL\ installiert haben, können Sie Ihr \TL-System auf den +neuesten Stand aktualisieren: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +Falls Sie vorher wissen wollen, was passiert, können Sie zunächst +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +oder (weniger ausführlich) +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} +verwenden. + +Das folgende Beispiel demonstriert, wie die Collection für \XeTeX\ installiert +wird, wobei sich die Installationsdateien in einem lokalen Verzeichnis +befinden: + +\begin{alltt} +\Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +Dies liefert die folgende Ausgabe: +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2012/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} + +Wie man sieht, beachtet \prog{tlmgr} die Abhängigkeiten von Paketen und installiert im obigen +Beispiel von \XeTeX{} benötigte Komponenten nach. Weiterhin werden automatisch im Anschluss +die Dateilisten der Verzeichnisbäume aktualisiert und fehlende Formate generiert. + +Informationen zu einem Paket (oder einer Collection oder einem Schema) anzeigen: +\begin{alltt} +Ucom{tlmgr show collection-latexextra} +\end{alltt} + +\noindent Hier erhält man folgende Ausgabe: +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +\noindent Die komplette Dokumentation finden Sie unter \url{http://tug.org/texlive/tlmgr.html} +oder mit +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + + +\section{Hinweise zu Windows} +\label{sec:windows} + +Das Installationsprogramm von \TL\ läuft sowohl unter Windows als auch Unix. Dies war nur dadurch möglich, +dass ältere Versionen von Windows nicht mehr unterstützt werden. Daher kann \TL\ nur noch ab Windows XP oder +später installiert werden. + + +\subsection{Windows-spezifische Dinge} +\label{sec:winfeatures} + +Unter Windows kümmert sich das Installationsprogramm auch um folgende Dinge: +\begin{description} +\item[Menüs und Verknüpfungen.] Im Startmenü wird ein Menü ">\TL{}"< hinzu gefügt. Hier sind Einträge für + die grafischen Anwendungen (\prog{tlmgr}, \prog{texdoctk}, den PS\_View (\prog{psv}) PostScript-Previewer) + und einige Verknüpfungen zur Dokumentation vorhanden. Für PS\_View wird eine Verknüpfung auf dem + Desktop angelegt, auf die Sie \PS-Dateien per Drag~\& Drop ziehen können, um diese zu betrachten. +\item[Automatisches Setzen der Umgebungsvariablen.] Hierdurch ist das Setzen dieser Variablen + von Hand überflüssig geworden. +\item[Uninstaller.] Es wird ein Eintrag zum Entfernen von \TL in der Systemsteuerung im Punkt Software angelegt. + Alternativ können Sie \TL über die GUI \TeX\ Live Manager deinstallieren. +\item[Dateiverknüpfungen] Wenn diese Option aktiviert wird, werden \prog{TeXworks}, \prog{Dviout} + und \prog{PS\_view} entweder die Standard-Programme für die entsprechenden Dateitypen oder erhalten einen Eintrag im `Öffnen mit' Dialog. +\item[Bitmap nach eps Konverter] Verschiedene Bitmap-Formate erhalten einen Eintrag \cmdname{bitmap2eps} in ihr `Öffnen mit' Menü. Bitmap2eps ist ein einfaches Skript, das im Hintergrund \cmdname{sam2p} oder \cmdname{bmeps} aufruft. +\item[Automatische Pfad-Anpassung] Erfordert keine manuellen Anpassungen. + +\end{description} + +\subsection{Zusätzlich enthaltene Programme unter Windows} + +Zusätzlich werden unter Windows einige Programme installiert, die unter Windows meist noch nicht verfügbar +sind: +\begin{description} +\item[Perl und Ghostscript.] Da Perl und Ghostscript für \TL sehr wichtig ist, werden diese + unter Windows mitgeliefert und werden intern von \TL benutzt. Die in \TL enthaltenen Programme, die + diese Komponenten benötigen, ">wissen"< wo sich diese befinden, ohne dass diese im System durch + Umgebungsvariablen oder Einträge in der Registry sichtbar sind. Es handelt sich um für \TL abgespeckte + Versionen, die zu keinen Konflikten mit eventuell bereits vorhandenen Installationen von Perl und Ghostscript + führen sollten. +\item[PS\_View.] Weiterhin wird PS\_View installiert, ein neuer PostScript- und PDF-Viewer, der Freie Software ist, + s.\,Abb.~\ref{fig:psview}. +\begin{figure}[tb] +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: sogar sehr extreme Vergrößerungen sind möglich.}\label{fig:psview} +\end{figure} +\item[dviout] Weiterhin wird \prog{dviout}, ein \acro{DVI}-Viewer installiert. +Wenn Sie am Anfang Dokumente mit \cmdname{dviout} anschauen, werden häufig noch Fonts generiert, da +keine fertigen Fontdateien für den Bildschirm mitgeliefert werden. Je mehr Fonts generiert wurden, desto +seltener müssen Schriften nachgeneriert werden, so dass dieser Effekt nach einiger Zeit nur noch selten +auftreten wird. Weitere Informationen finden Sie in der (sehr guten) Online-Hilfe. + +\item[TeXworks] \TeX{}works ist eine Oberfläche für \TeX\ mit Editor und + integriertem \acro{PDF}-Viewer. + +\item[Tools für die Kommandozeile.] Für einige unter Unix übliche Programme werden Portierungen für Windows + mitgeliefert. Dies sind z.\,B. \cmdname{gzip}, \cmdname{unzip} und einige Programme für die Kommandozeile aus der + \cmdname{xpdf}-Suite, wie \cmdname{pdfinfo} und \cmdname{pdffonts}. (Vom + \cmdname{xpdf}-Viewer selbst gibt es keine Version für Windows, aber der + Sumatra \acro{PDF}-Viewer basiert auf \cmdname{xpdf}: + \url{http://blog.kowalczyk.info/software/sumatrapdf}.) + \item[\texttt{fc-cache}, \texttt{fc-list} etc.] dienen \XeTeX{} zur effizienteren Benutzung von Schriften. Mit \prog{fc-list} können Sie die Namen der + verfügbaren Schriften anzeigen, die Sie dann unter \XeTeX\ mit dem + Kommando \cs{font} benutzen können. Mit \prog{fc-cache} kann die Liste + der verfügbaren Schriften aktualisiert werden. + +\end{description} + +\subsection{Nutzerprofile unter Windows} +\label{sec:winhome} + +Das Gegenstück von Windows zum HOME-Verzeichnis unter Unix ist das +Verzeichnis \verb|%USERPROFILE%|. + +Unter Windows 7 oder Windows Vista liegt es meist in \verb|C:\Users\|, +unter Windows XP im Verzeichnis \verb|C:/Dokumente und Einstellungen/|. + +In der Datei \filename{texmf.cnf} und in \KPS{} allgemein wird \verb|~| +sowohl unter Unix und Windows korrekt aufgelöst. + +\subsection{Die Windows-Registry} +\label{sec:registry} + +Windows verwaltet fast all seine Konfigurationseinstellungen in der +Registry. Diese besteht aus einem hierarchisch aufgebauten Baum +von Schlüsseln, wobei mehrere dieser Registry-Bäume existieren. +Die wichtigsten sind \path{HKEY_CURRENT_USER} und \path{HKEY_LOCAL_MACHINE}, +oft abgekürzt als \path{HKCU} bzw.\ \path{HKLM}. +Der \path{HKCU}-Teil der Registry wird im Home-Verzeichnis des Benutzers +gespeichert (siehe Abschnitt~\ref{sec:winhome}). \path{HKLM} liegt im +Normalfall in einem Unterverzeichnis des Windows-Verzeichnisses. + +In einigen Fällen sind Systeminformationen aus Umgebungsvariablen +ersichtlich, in vielen anderen Fällen liegen diese Informationen +aber in der Registry. + +\subsection{Windows Permissions} +\label{sec:winpermissions} + +In neueren Versionen von Windows wird zwischen normalen Benutzern und +Administratoren unterschieden, wobei nur letztere freien Zugang auf +alle Teile des Betriebsystems haben. Im Gegensatz zu Unix ist es in der +Praxis allerdings häufig so, dass Benutzer zur Klasse der Administratoren +gehören und daher doch alle Freiheiten haben. Trotzdem haben wir einigen +Aufwand getrieben, damit \TL auch unter Windows ohne Administrator-Rechte +installiert werden kann. + +Falls der Benutzer, der \TL installiert, Administrator-Rechte besitzt, +kann \TL für alle Benutzer des Systems installiert werden, d.\,h. Verknüpfungen, +Menüs und Systemeinträge werden für alle Nutzer angelegt. Ansonsten werden diese +nur für den aktuellen Benutzer angelegt. + +Unabhängig davon wird grundsätzlich angenommen, dass das Wurzelverzeichnis +von \TL unter \verb|%SystemDrive%| liegen soll. Allerdings testet das +Installationsprogramm, ob dieses Verzeichnis für den aktuellen Benutzer +schreibbar ist. + +Ein Problem entsteht, wenn \TL ohne Administrator-Rechte installiert +wird und sich bereits ein \TeX{}-System im systemweiten Suchpfad +befindet. Windows benutzt zuerst den Suchpfad des Systems, erst dann +den spezifischen Suchpfad des Nutzers, so dass hier immer zuerst +das alte \TeX-System gefunden wird. Als Workaround wird hier eine +Verknüpfung mit einer Eingabeaufforderung erzeugt, in der das +Programmverzeichnis von \TL im Suchpfad vor den Standard\-such\-pfad +geschrieben wird. Dies bedeutet, dass in diesem Fall nur in einer +Eingabeaufforderung verfügbar ist, die über diese Verknüpfung gestartet +wird. Die Verknüpfung für \TeX{}works (falls Sie dieses installieren) +fügt ebenfalls automatisch \TL{} am Anfang des Suchpfades ein, so dass +es direkt benutzbar ist. + +Unter Windows Vista gibt es einen weiteren Fallstrick. Selbst wenn Sie als +Administrator angemeldet sind, müssen Sie Programme trotzdem explizit +mit Administratorrechten starten. Insofern ist es tatsächlich nicht sehr +sinnvoll, sich als Administrator anzumelden. Klicken Sie stattdessen +auf das gewünschte Programm (bzw. die gewünschte Verknüpfung) mit der +rechten Maustaste, damit Sie die Option erhalten, dieses mit +Administratorrechten auszuführen. + +\subsection{Erhöhen des maximal verfügbaren Speichers unter Windows und Cygwin} +\label{sec:cygwin-maxmem} + +Unter Windows und Cygwin (s. Abschnitt \ref{sec:cygwin} für die Installation unter +Cygwin) kann es vorkommen, dass der den in \TL\ enthaltenen Programmen zur +Verfügung gestellte Speicher nicht ausreicht. Dies kann z.\,B. passieren, wenn +in \prog{asy} ein Array von 25 Millionen Gleitkommazahlen allokiert wird oder +ein Dokument mit umfangreichen Schriften mit Lua\TeX\ übersetzt wird. + +Für Cygwin ist die Erhöhung des Maximalspeichers im Cygwin-Hanbuch beschrieben +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +Unter Windows können Sie eine Datei \code{moremem.reg} mit folgenden vier +Zeilen anlegen: +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +Führen Sie dann als Administrator \code{regedit /s moremem.reg} aus. +(Falls der zur Verfügung stehende Speicher nur für den aktuellen Nutzer +erhöht werden soll, verwenden Sie stattdessen einfach \code{HKEY\_CURRENT\_USER}). + +% ============================================================== +% don't use \Webc so the \uppercase in the headline works. +\section[Anleitung zum Web2C-System]{Anleitung zum \Webc-System} + +{\Webc} besteht aus einer Reihe von Programmen, die zusammen ein komplettes +\TeX-System darstellen. Dazu gehören natürlich \TeX, +\MF, \MP, {\BibTeX} usw. + +Die erste Implementierung eines \TeX-Systems +in der Programmiersprache C stammt von Tomas~Rokicki und datiert zurück in das +Jahr 1987. Rokicki benutzte als Basis sog. Change-Files unter \acro{UNIX}, die ursprünglich von +Howard~Trickey und Pavel~Curtis entwickelt wurden. Tim~Morgan hat dieses +System, für das der Name Web-to-C\@ eingeführt wurde, gepflegt. +1990 hat Karl~Berry mit Unterstützung vieler Helfer die Weiterentwicklung +übernommen und 1997 an Olaf~Weber weitergegeben, der es 2006 wieder an +Karl zurück gab. + +\Webc{} läuft unter \acro{UNIX}, 32-bit-Versionen von Windows, \MacOSX{} +und auf weiteren Betriebssystemen. Es benutzt die +Original-Quelldateien von Donald E.~Knuth und weitere in der +Sprache {\web} entwickelte Programme als Basis und übersetzt diese +in C-Quell-Code. Darüber hinaus bietet das System viele Makros und +Funktionen zur Nutzung der originalen \TeX-Software. Hier eine +Liste der Basisprogramme eines \TeX-Systems: + +\begin{description} +%\renewcommand{\makelabel}[1]{\descriptionlabel{\mdseries\cmdname{#1}}} +\item[bibtex] Verwalten von Bibliographien +\item[dvicopy] Umwandeln von virtuellen Zeichensätzen in DVI-Dateien +\item[dvitomp] DVI-nach-MPX-Konverter (\MP-Bilder) +\item[dvitype] Textanzeige aus DVI-Dateien +\item[gftodvi] Erzeugen von Prüfausgaben für Zeichensätze +\item[gftopk] Packen von Zeichensätzen +\item[gftype] Anzeige von Zeichensätzen als ASCII-Graphik +\item[mf] Zeichensatzerzeugung +\item[mft] formatierte Ausgabe von \MF-Quellen +\item[mpost] \MF-ähnliches Grafikprogramm +\item[patgen] Erzeugen von Trennmustern +\item[pktogf] Entpacken von Zeichensätzen +\item[pktype] Anzeige gepackter Zeichensätze +\item[pltotf] Umwandeln von Property-Listen in \file{.tfm}-Dateien +\item[pooltype] Anzeige der Bildschirmtexte eines WEB-Programms +\item[tangle] Konverter {\web} nach Pascal +\item[tex] \TeX-Programm +\item[tftopl] Umwandeln einer \file{.tfm}-Datei in eine Property-Liste +\item[vftovp] Umwandeln eines virtuellen Zeichensatzes in eine Property-Liste +\item[vptovf] Umwandeln einer Property-Liste in einen virtuellen Zeichensatz +\item[weave] \web-Code als \TeX-Dokumentation +\end{description} + +Die genaue Funktionsweise und die möglichen Parameter sind der +Beschreibung der jeweiligen Pakete bzw.\ der \Webc-Dokumentation zu entnehmen. +Trotzdem wird ein Überblick über Zusammenspiel und Funktionsweise der +\Webc-Programme Ihnen sicherlich helfen, besser mit dem System zurechtzukommen. + +Zunächst verstehen alle Programme die grundlegenden Parameter der +\acro{GNU}-Software: + +\begin{description} +\item[\texttt{-{}-help}] kurzer Hilfstext +\item[\texttt{-{}-verbose}] ausführliche Ausgaben beim Programmablauf +\item[\texttt{-{}-version}] Ausgabe der Versionsnummer +\end{description} + +\noindent Die Programme des \Webc-Systems benutzen zum Lokalisieren der benötigten +Dateien im Dateisystem die \KPS-Bibliothek (\url{http://tug.org/kpathsea}). Diese Bibliothek optimiert und +beschleunigt den Suchprozess im Dateisystem. Ihre Arbeitsweise wird durch +einige Umgebungsvariablen und eine Kon"-fi"-gu"-ra"-tions"-da"-tei gesteuert. +\Webc~7.5 kann mehr als einen Dateibaum gleichzeitig verwalten und ermöglicht +somit die schon beschriebene \TL-Installation unter Verwendung der +{\DVD} mit der Ablage modifizierter Konfigurationsdateien +und zusätzlicher Zeichensätze in einem zweiten Dateibaum. Die Suche +nach Dateien wird durch die Analyse der Datei \file{ls-R} beschleunigt, +die in jedem Wurzelverzeichnis eines \TeX-Dateibaums vorhanden ist. +Sie enthält für jede Datei die genaue Position im Dateibaum relativ +zum Wurzelverzeichnis. + +% ------------------------------------------------------------- +\subsection[Dateisuche mit der Kpathsea-Bibliothek]{Dateisuche mit der \protect\KPS-Bibliothek} +\label{sec:kpathsea} + +Wir beschreiben zunächst den grundlegenden Suchmechanismus der \KPS-Bibliothek. + +Ein \emph{Suchpfad} ist eine durch Kommata oder Semikola getrennte Liste von +\emph{Pfadkomponenten}, die üblicherweise Verzeichnisnamen darstellen. +Ein Suchpfad kann sich aus vielen Komponenten zusammensetzen. Die Suche nach +einer Datei \samp{my-file} über den Suchpfad \samp{.:/dir} bewirkt, dass +{\KPS} jede Komponente nacheinander überprüft, also zunächst +\samp{./my-file} und dann \samp{/dir/my-file}. Als Ergebnis wird entweder die +erste gefundene Datei oder eine Liste aller passenden Dateien geliefert. + +Um auf allen Dateisystemen effizient arbeiten zu können, verwendet {\KPS} ggf. andere +Datei-/""Verzeich"-nis-Separatoren als \samp{:} und \samp{/}. + +Beim Überprüfen einer Pfadkomponente \var{p} überprüft {\KPS} zunächst, +ob eine Dateinamen"=Datenbank (siehe auch Dateinamen"=Datenbank auf +Seite~\pageref{sec:filename-database}) für die Pfadkomponente zuständig ist, +d.\,h. beispielsweise steht die Datenbank in einem Verzeichnis, das im Pfad +vor der zu überprüfenden Komponente \var{p} steht. In diesem Fall wird +zur Bestimmung der Position der gesuchten Datei die Datenbank herangezogen. + +Nur wenn keine passende Datenbank existiert oder wenn die Datei nicht +in der Datenbank gefunden wird, durchsucht {\KPS} das Dateisystem. Diese +zeitaufwändige Suche kann über die Spezifikation der Pfadkomponente \var{p} +mit dem Präfix \samp{!!}\ unterbunden werden. Zur Suche erzeugt {\KPS} eine +Liste der Verzeichnisse, die im Pfadelement enthalten sind, und durchsucht +jedes dieser Verzeichnisse nach der gesuchten Datei. + +Für Dateien kann auch ein Schalter \samp{file~must~exist} gesetzt +werden (">Datei muss vorhanden sein"<). Wenn dieser Schalter nicht +gesetzt ist und beispielsweise über das \TeX-Kommando +\cs{openin} eine VF-Datei wie \file{cmr10.vf} gelesen werden +soll, wäre es falsch, nach dieser Datei zu suchen, weil es sie gar +nicht gibt. Speziell für neu installierte VF-Dateien sollten Sie +also unbedingt die Dateinamen"=Datenbank (\cmdname{ls-R}) +aktualisieren, weil die Dateien sonst nicht gelesen werden und +kein Fehler angezeigt wird. Dieser Vorgang wiederholt sich für jede +Komponente eines Suchpfades: zunächst wird die Datenbank +überprüft, danach ggf. das Dateisystem. Wird die Datei gefunden, +stoppt die Suche (normalerweise) und als Ergebnis wird der komplette Pfad zur +gesuchten Datei ausgegeben. + +Außer Verzeichnisnamen dürfen Pfadkomponenten für {\KPS} folgende +Elemente enthalten: (verschachtelte) Vorgaben, Umgebungsvariablen, +Werte aus der Konfigurationsdatei, Home-Verzeich"-nisse von +Benutzern und Startverzeichnisse für eine rekursive Suche. Diese +Elemente werden vor einer Dateisuche von {\KPS} in gewöhnliche +Verzeichnis- oder Dateinamen expandiert. Diese Expansion wird in +den folgenden Abschnitten erklärt, und zwar genau in der +Reihenfolge, wie die Elemente auch von {\KPS} bearbeitet werden. + +Beachten Sie, dass {\KPS} bei absoluten und explizit relativen Komponenten, +d.\,h. wenn die Komponente mit den Zeichen \samp{/}, \samp{./} oder +\samp{../} beginnt, nur überprüft, ob die Datei existiert. + +\ifSingleColumn +\else + +\begin{figure*}[tp] +\verbatiminput{../texlive-common/examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +% .............................................................. +\subsubsection{Bestandteile von Pfadkomponenten}\label{Path-sources} +\label{sec:path-sources} + +Ein Suchpfad kann aus vielen verschiedenen Bestandteilen aufgebaut werden. +Dies sind in der Reihenfolge, wie {\KPS} sie auswertet: + +\begin{enumerate} +\item + eine benutzerdefinierte Umgebungsvariable, z.\,B. \envname{TEXINPUTS}: + Wird an den Inhalt der Variablen ein Punkt und ein Programmname angehängt, wie + beispielsweise bei \envname{TEXINPUTS.latex}, hat diese Form Vorrang + vor den ">gewöhnlichen"< Variablen. +\item + Einträge aus programmspezifischen Konfigurationsdateien, + beispielsweise zum Programm {\dvips} eine Zeile \samp{S /a:/b} + in der Konfigurationsdatei \file{config.ps} +\item + Einträge aus der \KPS-Konfigurationsdatei \file{texmf.cnf}, + z.\,B. \samp{TEXINPUTS=/c:/d} (siehe folgenden Text) +\item + Einstellung beim Übersetzen der Programme +\end{enumerate} + +\noindent Unter Verwendung der Parameter zur Fehlersuche können Sie sich diese +Werte für einen Suchpfad auch anzeigen lassen. (Siehe dazu den Abschnitt +Fehlersuche auf Seite~\pageref{sec:debugging}.) + +% .............................................................. +\subsubsection{Konfigurationsdateien} + +%\tolerance=3500 +Die \KPS-Bibliothek liest zur Laufzeit die \emph{Konfigurationsdateien} mit den Namen +\file{texmf.cnf}. Der zugehörige Suchpfad zum Auf"|finden dieser +Konfigurationsdateien steht in der Umgebungsvariablen \envname{TEXMFCNF} +(die Voreinstellung ist \file{texmf/web2c}). {\KPS} liest \emph{alle} +Dateien mit den Namen \file{texmf.cnf}, die es in diesem Suchpfad findet. +Die zuerst gelesenen Definitionen haben dabei Vorrang vor später gelesenen +Werten. +Wenn der Suchpfad auf \dirname{.:\$TEXMF} steht, überschreiben die Einstellungen +in \file{./texmf.cnf} diejenigen in \dirname{\$TEXMF/texmf.cnf}. + +%\tolerance=1500 + +Im Folgenden wird die Syntax der Datei \file{texmf.cnf} angegeben. +Konsultieren Sie zum besseren Verständnis beim Lesen die auf der +{\acro{CDROM}} oder {\DVD} enthaltene Konfigurationsdatei. +%, die ab Seite~\pageref{app:texmf.cnf} im Anhang dieser Anleitung +% abgedruckt ist. + +\begin{itemize} +\item + Kommentare beginnen mit einem \samp{\%} und erstrecken sich bis zum + Zeilenende. +\item + Leerzeilen werden überlesen. +\item + Ein \samp{\bs} am Zeilenende fasst die aktuelle mit der folgenden Zeile + zusammen. Leerraum in der Folgezeile wird \emph{nicht} überlesen. +\item + Sonstige Zeilen haben den folgenden Aufbau: + +\begin{alltt} + \var{Variable}[.\var{Programmname}] [=] \var{Wert} +\end{alltt}% + + Das Zeichen ">="< und umgebender Leerraum dürfen entfallen. +\item + Der Name von \var{Variable} kann alle Zeichen außer Leerzeichen, + \samp{=} und \samp{.} enthalten. Verwenden Sie am besten nur die Zeichen + \samp{A-Za-z\_}. +\item + Wenn das Suffix ">\code{.\var{Programmname}}"< angegeben wird, gilt die + Variable nur für das entsprechende Programm ">\var{Programmname}"< oder + ">\code{\var{Programmname}.exe}"<. Auf diese Weise können + beispielsweise verschiedene + \TeX-Formate mit unterschiedlichen Suchpfaden arbeiten. +\item + \texttt{\var{Wert}} darf alle Zeichen außer \texttt{\%} und \texttt{@} + enthalten. + Die Einschränkung der Werte auf bestimmte Programme über ein Suffix + ist nicht zulässig. Ein \samp{;} in \texttt{\var{Wert}} wird unter + \acro{UNIX} in \samp{:} umgewandelt. Dadurch ist die Verwendung der gleichen + Konfigurationsdateien für \acro{UNIX} und \acro{DOS}/""Windows"=Systeme möglich. +\item + Die Definitionen werden komplett eingelesen, bevor eine Expansion + stattfindet. Dadurch können Sie die Variable schon vor Ihrer Definition + referieren. +\end{itemize} + +Der Ausschnitt einer Konfigurationsdatei demonstriert diese +Möglichkeiten. +\ifSingleColumn +\verbatiminput{../texlive-common/examples/ex5.tex} +\else +Betrachten Sie Abbildung~\ref{fig:config-sample}. +\fi + +% .............................................................. +\subsubsection{Expansion von Pfadkomponenten} +\label{sec:path-expansion} + +{\KPS} verwendet in Suchpfaden ähnliche Zeichen und Konstrukte wie +\acro{UNIX}-Shells. Beispielsweise wird die Definition +\verb|~$USER/{foo,bar}//baz| in alle Unterverzeichnisse von \file{foo} und +\file{bar} unterhalb vom Home-Verzeichnis von \dirname{\$USER} expandiert, +die eine Datei oder ein Unterverzeichnis namens \file{baz} enthalten. Der +Expansionsmechanismus wird im Folgenden erklärt. + +% .............................................................. +\subsubsection{Expansion der Voreinstellungen} +\label{sec:default-expansion} + +Wenn der Suchpfad mit der höchsten Priorität (siehe hierzu ">Bestandteile von +Pfadkomponenten"< auf Seite~\pageref{sec:path-sources}) einen zusätzlichen +(vorangestellten, nachgestellten oder verdoppelten) Doppelpunkt enthält, +wird an dieser Stelle der Suchpfad eingefügt, der als nächstes in der +Hierarchie folgt. Auch bei diesem gilt dieselbe Regel. Wenn beispielsweise +die Umgebungsvariable + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} + +gesetzt wird (hier: C-Shell) und in \file{texmf.cnf} die Variable +\code{TEXINPUTS} folgenden Wert erhält + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} + +dann lautet der Suchpfad schließlich: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Da es sinnlos wäre, denselben Pfad mehrfach einzufügen, wird die Ersetzung +nur einmal vorgenommen, und zwar in der Reihenfolge vorne, hinten und +Mitte. Mehrfach verdoppelte Doppelpunkte bleiben unverändert. + +% .............................................................. +\subsubsection{Expansion geschweifter Klammern} + +Die Expansion geschweifter Klammern ist zur Definition mehrerer +\TeX-Hierarchien sehr nützlich. Beispielsweise wird |v{a,b}w| +zu |vaw:vbw|. Verschachtelungen sind dabei erlaubt. +Diese Technik wird dazu benutzt, durch eine Zuweisung an +\code{\$TEXMF} verschiedene \TeX-Hierarchien einzuführen. +Als Beispiel finden Sie in \file{texmf.cnf} folgende Definition +(etwas gekürzt, tatsächlich ist es etwas komplexer): +%(Zeile 75): %%%% to be checked !!!! checked&corrected vrws 01.06.05 + +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} + +Eine Anwendung wie + +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +führt dann dazu, dass erst im aktuellen Verzeichnis gesucht wird, dann +im gesamten Dateibaum \code{\$TEXMFHOME/tex} und \code{\$TEXMFLOCAL/tex} +(auf der Festplatte) und +schließlich im gesamten Dateibaum \dirname{\$TEXMFVAR/tex} sowie +\code{\$TEXMFMAIN/tex} (nur in der Datenbank \file{ls-R}) +durchsucht wird. Dadurch kann man bequem +zwei parallel installierte \TeX-Hierarchien durchsuchen, +beispielsweise eine unveränderliche auf \acro{CDROM}/{\DVD} und eine dynamisch +angepasste auf Festplatte, in der neue Programmversionen und zusätzliche +Zeichensätze installiert werden. Durch die Verwendung der Variablen +\code{\$TEXMF} in allen Definitionen wird grundsätzlich zuerst der +neuere Dateibaum durchsucht. + +% .............................................................. +\subsubsection{Expansion von Unterverzeichnissen} +\label{sec:subdirectory-expansion} + +Zwei oder mehrere aufeinanderfolgende Schrägstriche (\texttt{//}) in +einer Pfadkomponente, die auf einen Verzeichnisnamen \var{d} folgen, +werden expandiert zu allen Unterverzeichnissen von \var{d}. Dieser +Vorgang findet rekursiv statt, wobei erst alle Verzeichnisse auf +einer Ebene bearbeitet werden, dann deren Unterverzeichnisse, usw. +Auf den jeweiligen Ebenen ist nicht beeinflussbar, in welcher +Reihenfolge die Unterverzeichnisse bearbeitet werden. + +Wenn nach den Schrägstrichen Namen angegeben werden, dann werden nur +Unterverzeichnisse mit passenden Namen in die Suche einbezogen. +Beispielsweise wird \samp{/a//b} in die Pfade \file{/a/1/b}, +\file{/a/2/b}, \file{/a/1/1/b} usw. expandiert, aber nicht +zu \file{/a/b/c} oder \file{/a/1}. +(Jeweils vorausgesetzt, dass die Verzeichnisse existieren.) + +Mehrere \samp{//}-Konstruktionen innerhalb einer Pfadkomponente +sind zulässig, allerdings nicht am Pfadanfang. + +% .............................................................. +\subsubsection{Liste der Sonderzeichen und ihre Bedeutung: eine Zusammenfassung} + +Die folgende Zusammenfassung fasst alle Sonderzeichen zusammen, die in den +\KPS"=Konfigurationsdateien auftreten können: + +% ++++++++++++++++++++++++ +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +% ++++++++++++++++++++++++ + +\begin{description} +\item[\CODE{:}] Trennzeichen für Pfadkomponenten; als erstes + oder letztes Zeichen im Pfad bewirkt es die + Expansion der Voreinstellungen. +\item[\CODE{;}] Trennzeichen für Pfadkomponenten für andere + Rechnerplattformen als \acro{UNIX} (Verwendung wie + ">\code{:}"<) +\item[\CODE{\$}] Expansion von Variableninhalten +\item[\CODE{\string~}] Home-Verzeichnis eines Benutzers (Tilde) +\item[\CODE{\char`\{...\char`\}}] Expansion geschweifter Klammern: + beispielsweise wird |a{1,2}b| zu |a1b:a2b|. +\item[\CODE{//}] Expansion von Unterverzeichnissen: tritt niemals + am Anfang einer Pfadkomponente auf. +\item[\CODE{\%}] Kommentar +\item[\CODE{\bs}] Konkatenation mit Folgezeile(n) +\item[\CODE{!!}] Einschränkung der Suche \emph{ausschließlich} auf die + Dateinamen"=Datenbank: Das Dateisystem wird \emph{nicht} + durchsucht! +\end{description} + +% ------------------------------------------------------------- +\subsection{Dateinamen"=Datenbanken} +\label{sec:filename-database} + +{\KPS} unternimmt etliche Anstrengungen, um den Zugriff auf Festplatte und +\acro{CDROM}/{\DVD} zur Suche nach Dateien zu reduzieren. Auf \TeX-Systemen mit +vielen Unterverzeichnissen kann die Suche in jedem möglichen Verzeichnis +nach einer bestimmten Datei eine lange Zeit in Anspruch nehmen, besonders +wenn einige Hundert Zeichensatzverzeichnisse durchforstet werden müssen. +Um dieses Problem abzumildern, benutzt {\KPS} eine Art Datenbankdatei +namens \file{ls-R}, die die Zuordnung von Dateinamen auf Verzeichnisse +enthält. Dadurch muss nicht jedesmal die Festplatte durchsucht werden. + +Eine zweite Datenbank in der Datei \file{aliases} kann eine Zuordnung +zwischen den Namen in \file{ls-R} und weiteren Namen vornehmen und so +beispielsweise hilfreich bei der Umsetzung von \samp{8.3}-\acro{DOS}-Dateinamen +auf die ">echten"<, aussagekräftigen Dateinamen zur Seite stehen. + +% .............................................................. +\subsubsection{Die \texttt{ls-R}-Datenbank} +\label{sec:ls-R} + +Wie schon öfters erwähnt, muss die Dateinamen"=Datenbank in der Datei +\file{ls-R} gespeichert sein. Sie sollten eine solche Datenbank für jede +\TeX-Hierarchie (normalerweise in \code{\$TEXMF}) Ihres Systems anlegen. +{\KPS} sucht die Datenbanken \file{ls-R} über den Pfad \code{TEXMFDBS}. + +Es wird empfohlen, die Pflege der \code{ls-R}-Dateien dem mitgelieferten +Skript \cmdname{mktexlsr} zu überlassen. Dieses Skript wird automatisch von den +verschiedenen \samp{mktex*}-Skripten aufgerufen. Das Skript ruft +grob gesagt den Befehl + +\begin{alltt} +cd /\var{your}/\var{texmf}/\var{root} && ls -LAR ./ >ls-R +\end{alltt} + +auf, falls das Kommando \code{ls} Ihres Rechners eine Ausgabe im richtigen +Format liefert. (So wie das \acro{GNU}-\code{ls}.) Wenn Sie ganz sichergehen +wollen, dass die Datenbank immer auf dem neuesten Stand ist, sollten Sie sie +in regelmäßigen Abständen mit Hilfe eines \cmdname{crontab}-Eintrags +aktualisieren lassen. Dadurch wird nach einer Installation eines +Pakets per Hand trotzdem sichergestellt, dass die Datenbank aktuell ist. + +Wenn eine Datei nicht über die Datenbank gefunden wird, sucht +{\KPS} normalerweise auf der Festplatte weiter. Wenn eine Pfadkomponente +mit \samp{!!} beginnt, wird dagegen niemals die Festplatte durchsucht. + +% .............................................................. +\subsubsection{\cmdname{kpsewhich}: Dateisuche} +\label{sec:invoking-kpsewhich} + +Mit dem Programm \cmdname{kpsewhich} können Sie unabhängig vom Aufruf +irgendeines \TeX-Programms nach Dateien in der \TeX-Hierarchie suchen +(als schnellere Alternative zu dem Befehl \cmdname{find}). Dies +wird von den verschiedenen \samp{mktex\dots}-Skripten bis zum +Exzess vorexerziert. + +\begin{alltt} +> \Ucom{kpsewhich \var{option}{\dots} \var{filename}{\dots}} +\end{alltt} + +Die Optionen werden entweder mit \samp{-} oder mit \samp{-{}-} eingeleitet. +Jede eindeutige Abkürzung ist zulässig. + +Argumente der Kommandozeile, die keine Optionen darstellen, werden als +Dateinamen interpretiert. Für jeden Dateinamen wird der erste passende +Pfad gemeldet. Um eine Liste aller passenden Pfade zu erhalten, müssen Sie +das \acro{UNIX}-Kommando \cmdname{find} aufrufen. + +Im Folgenden werden die häufiger benutzten Optionen beschrieben. + +\begin{description} +\item[\texttt{-{}-dpi=}\var{num}]\mbox{}\\ + Stellt die Auf"|lösung für die Suche nach Zeichensätzen + (nur \file{.gf} oder \file{.pk}) auf \var{num}\,dpi. Alternativ + kann die Option \optname{-D} (kommt von \dvips) benutzt werden. + Voreinstellung ist~600. +\item[\texttt{-{}-format=}\var{name}]\mbox{}\\ + Setzt das Format zur Suche auf \var{name}. Per Voreinstellung + versucht \cmdname{kpsewhich} das Format über den Dateinamen + zu erschließen. Bei Formaten ohne zugeordnete Namens\-endung wie den + zu {\MP} gehörenden Dateien und den Konfigurationsdateien zu + {\dvips} müssen Sie den entsprechenden Namen so eingeben, wie er + \KPS{} bekannt ist. +\item[\texttt{-{}-mode=}\var{string}]\mbox{}\\ + Setzt für die Zeichensatzsuche den Generierungsmodus (betrifft nur + \file{.gf}- oder \file{.pk}-Dateien). Normalerweise werden alle + Zeichensätze gemeldet. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Es wird versucht, die Dateien notfalls durch eine Suche auf der + Festplatte zu finden. Normalerweise wird nur die \file{ls-R}-Datenbank + konsultiert. +\item[\texttt{-{}-path=}\var{string}]\mbox{}\\ + Sucht entlang des angegebenen Pfads statt des Standardpfads, + der auf Grund der Endung gewählt wird. Alle Expansionen sind + zulässig. Bei Verwendung der Option \texttt{-{}-path} darf nicht + die Option \texttt{-{}-format} angegeben werden. +\item[\texttt{-{}-progname=}\var{name}]\mbox{}\\ + Setzt den Programmnamen für die genauere Variablenspezifikation + über \samp{.\var{Programmname}}. Voreinstellung ist \samp{kpsewhich}. +\item[\texttt{-{}-show-path=}\var{name}]\mbox{}\\ + Zeigt den Suchpfad für die angegebene Namens\-endung. Diese kann entweder + als Namens\-endung (\samp{.pk}, \samp{.vf}, usw.) oder als Name (wie bei der + Option \optname{-{}-format}) spezifiziert werden. +\item[\texttt{-{}-debug=}\var{num}]\mbox{}\\ + Legt den Umfang für die Fehlersuche fest. +\end{description} + +% .............................................................. +\subsubsection{Anwendungsbeispiele} +\label{sec:examples-of-use} + +Wir schauen uns nun die Funktionsweise von {\KPS} anhand einiger Beispiele an. + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} + +Wir suchen unter den \TeX-Quelldateien nach der Datei \file{article.cls}. +Da die Namens\-endung \samp{.cls} eindeutig ist, müssen wir den Typ +\samp{.tex} nicht angeben. Die \samp{texmf-dist}-Hierarchie enthält die +Datei im Unterverzeichnis \dirname{tex/latex/base}. Ähnlich bereiten +die folgenden Beispiele auf Grund eindeutiger Namens\-endungen keine Probleme. + +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +Beim letzten Beispiel handelt es sich übrigens um eine \BibTeX-Literaturdatenbank +für \textsl{TUGBoat}-Artikel. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} + +Zeichensatzdateien mit der Namens\-endung \samp{.pk} werden +von Anzeige- oder Druckaufbereitungsprogrammen wie {\dvips} und +\cmdname{xdvi} verwendet. Nachdem wir aufgrund der Voreinstellung keine \file{.pk}-Dateien verwenden, +sondern die \PS-\TypeI-Zeichensätze, die auf der \acro{CDROM}/{\DVD} enthalten +sind, wird auch keine \file{.pk}-Datei angezeigt. + +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +Für diesen Zeichensatz (Teil der \acro{IPA}-Fonts% +\footnote{\acro{IPA}: International Phonetic Alphabet} +von der Universität von Washington) liegen noch keine +\TypeI-Umsetzungen vor und \samp{.pk}-Dateien müssen generiert werden. Da unser voreingestellter \MF-Modus +\samp{ljfour} eine Auf"|lösung von 600\,dpi besitzt, +finden wir (nachdem er schon einmal gebraucht und automatisch +erzeugt wurde) eine entsprechende Instanz dieses Zeichensatzes. + +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} + +Durch die Angabe ">\optname{-dpi=300}"< interessieren wir uns nur +für Zeichensätze mit der Auf"|lösung 300\,dpi. Es wurde keiner gefunden. +Programme wie {\dvips} oder \cmdname{xdvi} lassen einen solchen fehlenden +Zeichensatz durch den Aufruf des Skripts \cmdname{mktexpk} mit entsprechenden +Parametern automatisch erzeugen. + +Als nächstes wenden wir uns den Header- und Konfigurationsdateien +von {\dvips} zu. +Zunächst suchen wir nach der Konfiguration für die \TeX-Unterstützung, +dem Prolog \file{tex.pro}. Danach suchen wir die allgemeine Konfigurationsdatei +(\file{config.ps}) und schließlich die \PS-Zeichensatzzuordnungsdatei +\file{psfonts.map}. Dateien dieser Art haben seit der 2004er-Version der {\TL} ihre eigenen Suchpfade und einen neuen Aufbewahrungsort im \OnCD{texmf}-Baum. Da die Namens\-endung \samp{.ps} nicht eindeutig ist, +müssen wir den gewünschten Typ (\samp{dvips config}) +für die Datei \file{config.ps} spezifizieren. + +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +Jetzt suchen wir nach den Dateien für den \PS-Zeichensatz ">URW Times"<. +Nach dem Namensschema von Karl~Berry beginnen die Namen mit ">\texttt{utm}"<. +Zunächst suchen wir die Konfigurationsdatei, die den Namen der +Zeichensatzzuordnungsdatei enthält. + +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} + +Diese Datei enthält folgende Anweisung: + +\begin{alltt} + p +utm.map +\end{alltt} + +Die angegebene Datei \file{utm.map} wollen wir als nächstes suchen: + +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} + +Diese Zuordnungsdatei wird im Unterverzeichnis \file{urw} bei den +Hilfsdateien für {\dvips} gefunden. Sie enthält die Dateinamen der +\TypeI-\PS-Zeichensätze, die für URW Times benutzt werden. Ein +kleiner Auszug aus dieser Datei: + +\begin{alltt} + utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +Diese Beispiele sollten deutlich gemacht haben, wie leicht bestimmte Dateien +im \TeX-Dateibaum gefunden werden können. Dies ist sehr wichtig, wenn Sie +den Verdacht haben, dass eine falsche Version einer Datei verwendet wird: +Sie lassen sich einfach die verwendete Datei von \cmdname{kpsewhich} +anzeigen. + +% .............................................................. +\subsubsection{Fehlersuche} +\label{sec:debugging} + +Manchmal ist wichtig, bis ins Detail nachzuvollziehen, wie ein Programm eine +bestimmte Datei findet. Zu diesem Zweck bietet die \KPS-Bibliothek verschiedene +Stufen für den Umfang der Fehlersuche an. + +\begin{itemize} +\item[\texttt{\ 1}] \code{stat}-Aufrufe (Überprüfung, ob Datei + existiert); mit einer aktuellen \file{ls-R}-Datenbank sollten Sie fast + keine Meldungen erhalten. +\item[\texttt{\ 2}] Zugriffe auf Suchlisten (wie \file{ls-R}-Datenbanken, + Zuordnungsdateien (\texttt{.map}), Konfigurationsdateien) +\item[\texttt{\ 4}] Öffnen und Schließen von Dateien +\item[\texttt{\ 8}] Auf"|listen der voreingestellten Pfade für Extensionen +\item[\texttt{16}] Verzeichnisliste für jede Pfadkomponente (nur bei Festplattenzugriff) +\item[\texttt{32}] Suchaktionen nach Dateien +\item[\texttt{64}] Werte von Variablen. +\end{itemize} + +Durch die Angabe von \samp{-1} setzen Sie alle Stufen gleichzeitig. +Für eine effiziente Fehlersuche sollten Sie sich auf die wichtigsten +Ausgaben beschränken. + +Für {\dvips} gibt es einen ähnlichen Mechanismus zur Erzeugung +von Analysemeldungen, um herauszufinden, warum bestimmte Dateien geöffnet +wurden bzw.\ wo vielleicht das Problem liegt, wenn Dateien nicht gefunden +werden. + +Da fast alle Programme die \KPS-Bibliothek benutzen, können Sie die +gewünschte Stufe auch über die Umgebungsvariable \envname{KPATHSEA\_DEBUG} +einstellen, indem Sie einen der Werte oder eine additive Kombination +spezifizieren. + +Anmerkung für Windows-Benutzer: Es ist nicht einfach, alle Meldungen in eine Datei umzulenken. Für die Fehlersuche +jedoch ist die folgende (temporäre!) Vereinbarung sinnvoll: + +\indent\texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log} + +Wir betrachten als Beispiel eine kleine \LaTeX-Quelldatei mit dem Namen +\file{hello-world.tex} mit folgendem Inhalt: + +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} + +Diese Datei verwendet nur einen Zeichensatz, nämlich \file{cmr10}. Wir sehen uns +jetzt einmal genau an, wie {\dvips} die \PS-Datei erzeugt. +Da wir die \TypeI-Variante der Computer-Modern-Roman-Zeichensätze +verwenden wollen, haben wir die Option \optname{-Pcms} verwendet. + +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} + +Hier haben wir als Stufe zur Fehlersuche eine Kombination der Stufe~\code{4} von +{\dvips} (siehe \dvips-Handbuch, +\dirname{texmf/doc/html/dvips/dvips\_toc.html}?). +%\ifSingleColumn +%We get something +%like the following (we have rearranged the output for easier display): +%\begin{alltt}\small +%\input{examples/ex6.tex} +%\end{alltt} +%\else +Die Ausgabe sieht ungefähr so wie in +Abbildung~\ref{fig:dvipsdbga} dargestellt aus (die Ausgabe wurde für einen besseren Überblick +etwas umgestaltet). + +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Suche nach Konfigurationsdateien}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Suche nach Prologdateien}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Suche nach Font-Dateien}\label{fig:dvipsdbgc} +\end{figure*} + +Zunächst sucht {\dvips} (bzw.\ \KPS) seine Konfigurationsdateien, +nämlich \file{texmf.cnf} (das die Pfade der anderen Dateien enthält), +dann die Dateinamen"=Datenbank \file{ls-R} (zur Optimierung der Suche) +und die Datei \file{aliases}, mit deren Hilfe für eine Datei +mehrere Namen vereinbart werden können, z.\,B. um die kurzen +\samp{8.3}-\acro{DOS}-Namen mit aussagefähigen, langen Namen zu assoziieren. +Danach wird die allgemeine \dvips-Konfigurationsdatei +\file{config.ps}, anschließend die benutzerspezifische Konfigurationsdatei +\file{.dvipsrc} (wird hier \emph{nicht} gefunden) gesucht. +Als letztes sucht {\dvips} die Zuordnungsdatei für +Computer-Modern-{\PS}"=Zeichensätze \file{config.cms} (bedingt durch die +Option \optname{-Pcms} beim Aufruf von \dvips). Diese +Datei enthält die Dateinamen der Listen, die die Zuordnung zwischen +Dateinamen und Zeichensatznamen herstellen. + +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} + +{\dvips} versucht, diese Dateien und zusätzlich die +allgemeine Zeichensatzzuordnungstabelle \file{psfonts.map} zu +laden, die immer konsultiert wird; der letzte Teil von +Abschnitt~\ref{sec:examples-of-use} erklärt diese Tabellen genauer. + +Jetzt erfolgt die normale Startmeldung von \dvips: + +\begin{alltt}\ifSingleColumn +dvips(k) 5.94a +kpathsea version +Copyright (C) 2003 Radical Eye Software. +... +\else\small{}dvips(k) 5.94a +kpathsea version +Copyright (C) 2003 Radical Eye Software. +... +\fi\end{alltt}% decided to accept slight overrun in tub case +\ifSingleColumn +Danach wird nach \file{texc.pro} gesucht: + +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Danach wird nach \file{texc.pro} gesucht (siehe Abbildung~\ref{fig:dvipsdbgb}). +\fi +Dann gibt {\dvips} Datum und Uhrzeit aus und meldet den Dateinamen +der erzeugten \PS-Datei \file{hello-world.ps}. Jetzt wird die +Zeichensatzdatei \file{cmr10} benötigt, die {\dvips} als +">resident"< meldet. + +\enlargethispage{1ex} +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} + +Es geht weiter mit \file{cmr10.tfm} und einigen weiteren Prologdateien, +deren Ausgaben wir hier weglassen. Letztlich wird die \TypeI-Zeichensatzdatei +\file{cmr10.pfb} gesucht (und gefunden) und in die Ausgabedatei integriert +(siehe letzte Zeile). + +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +% ------------------------------------------------------------- +\subsection{Einstellungen zur Laufzeit} + +Zu den willkommenen Erweiterungen von {\Webc} zählt die Möglichkeit, +zur Laufzeit einige Speicher"-größen über die Datei \file{texmf.cnf} anpassen +zu können (insbesondere die Größe einiger Stacks). Eine ausführliche Liste +der veränderbaren Parameter finden Sie in der Datei \file{texmf.cnf}. +Die wichtigsten Werte sind: + +\begin{description} +\item[\texttt{main\_memory}]\mbox{}\\ + Arbeitsspeicher für \TeX, {\MF} und {\MP} in Worten: Für jede Einstellung + muss eine eigene Format-Datei erstellt werden. Allerdings können Sie + mehrere Versionen von {\TeX} unter verschiedenen Namen erzeugen und + in der Konfigurationsdatei jeweils eigene Einträge vorsehen. Hier gibt + es ein Monster-{\TeX} namens \samp{hugetex} mit der zugehörigen Format-Datei + \file{hugetex.fmt}, wobei der spezielle Wert der + Variablen \texttt{main\_memory} dann + aus der Datei \file{texmf.cnf} gelesen wird. +\item[\texttt{extra\_mem\_bot}]\mbox{}\\ + Extraspeicher für ">große"< \TeX-Datenstrukturen wie Boxen, Glue, + Breakpoints, usw.: Besonders bei Anwendung von {\PiCTeX} sollte dieser + Wert erhöht werden. +\item[\texttt{font\_mem\_size}]\mbox{}\\ + Anzahl der Worte für Speicherung von Zeichensatzinformationen: Entspricht + ungefähr dem Speicherbedarf der gelesenen \acro{TFM}-Dateien. +\item[\texttt{hash\_extra}]\mbox{}\\ + Zusätzlicher Platz für Suchlisten: In der Hauptliste können + ca. 10000~Einträge verwaltet werden. Bei einem Buch mit vielen Querverweisen + reicht dieser Platz unter Umständen nicht aus. + Die Voreinstellung für \texttt{hash\_extra} ist \texttt{50000}. +\end{description} + +Natürlich sind diese Parameter kein Ersatz für eine wirklich dynamische +Speicherverwaltung. Mit der gegenwärtigen Version von {\TeX} ist dieses +Konzept aber nur extrem schwer zu implementieren; darum stellt dieses +Verfahren eine praktikable Lösung dar. + +\begin{comment} +%\clearpage +% ============================================================== +\section{Installation von {\TeX} auf einer neuen \acro{UNIX}-Plattform} + +Wenn Sie eine Rechnerplattform einsetzen, für die wir keine Binärdateien +zur Verfügung gestellt haben, müssen Sie {\TeX} und die zugehörigen +Programme mit Hilfe der Quell-Codes selbst übersetzen. Das ist gar nicht so +schwer, wie es klingt. Alles, was Sie brauchen, finden Sie auf der {\DVD} +im Verzeichnis \texttt{source}. + +Zunächst sollten Sie jedoch die von {\TeX} benötigten Dateien durch +eine Installation ohne Binärdateien auf die Festplatte kopieren bzw. +durch ">Mounten"< der {\DVD} verfügbar machen. + +% ------------------------------------------------------------- +\subsection{Voraussetzungen} + +Zum Übersetzen von {\TeX} und allen weiteren benötigten +Programmen benötigen Sie ca. 100\,MB Festplattenkapazität. +Dazu kommen ein \acro{ANSI}-C-Compiler, \cmdname{make} sowie +ein Scanner- und Parser-Generator. Die \acro{GNU}-Programme +(\cmdname{gcc}, \acro{GNU}-\cmdname{make}, \cmdname{m4}, +\cmdname{flex} und \cmdname{bison}) sind praxiserprobt +und auf den meisten Plattformen verfügbar. Eventuell können +Sie auch andere C-Compiler oder \cmdname{make}-Programme einsetzen, +doch dann sollten Sie sich wirklich gut mit Ihrem System auskennen, +wenn es Schwierigkeiten während des Übersetzungsprozesses gibt. +Der Befehl \cmdname{uname} muss einen gültigen Namen liefern. + +% ------------------------------------------------------------- +\subsection{Konfiguration} + +\begin{itemize} +\item Beginnen Sie mit einer ganz normalen \TL-Installation auf +Festplatte (siehe Abschnitt~\ref{sec:install-disk} auf +Seite~\pageref{sec:install-disk}). Das Installieren der +fertigen Binaries können Sie getrost überspringen. + +\item Dann entpacken Sie das komprimierte Archiv (\cmdname{tar}) in +\dirname{source} auf Ihre Festplatte und wechseln in dieses Verzeichnis. + +\item Legen Sie einen Pfad fest, unter dem das \TeX-System +installiert werden soll. Natürlich sollte das derselbe Pfad sein, +den Sie schon zum Kopieren der Daten verwendet haben +(z.\,B. \dirname{/usr/local} oder \dirname{/usr/local/TeX}). +\end{itemize} + +Die automatische Systemerkennung und -anpassung wird durch +\textsf{configure} mit folgendem Aufruf gestartet: + +\begin{alltt} +> \Ucom{./configure -prefix=/usr/local/TeX} +\end{alltt} + +Bei der Option \optname{prefix} geben Sie das Verzeichnis an, in dem sich die +bereits kopierten \TL-Dateien befinden; +dieses Verzeichnis wird weiter strukturiert (\dirname{\$TEXDIR} +ist dabei das Installationsverzeichnis): + + +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{\$TEXDIR/man} & Anleitungen im + \acro{UNIX}-\cmdname{man}-Format\\ + \dirname{\$TEXDIR/share/texmf} & \TeX-Daten mit Zeichensätzen, + Makros, usw.\\ + \dirname{\$TEXDIR/info} & Anleitungen im + \acro{GNU}-\cmdname{info}-Format\\ + \dirname{\$TEXDIR/bin/\$PLATFORM} & ausführbare Programme\\ +\end{tabular} +%$ + +Wenn Sie wollen, können Sie ">\dirname{share/}"< als Namensbestandteil +von \OnCD{texmf} weglassen, da sowohl +\dirname{\$TEXDIR/share/texmf} als auch \dirname{\$TEXDIR/texmf} +automatisch von \cmdname{configure} erkannt werden. Sollten Sie ein anderes +Verzeichnis vorziehen, müssen Sie dieses \cmdname{configure} mit dem +Kommandozeilenparameter \optname{-{}-datadir} mitteilen. + +Wenn Sie die erkannte Plattform nicht als \dirname{\$PLATFORM} im +Pfad der ausführbaren Programme haben wollen, sondern z.\,B. +direkt in \dirname{\$TEXDIR/bin} installieren wollen, verwenden Sie +die Option \optname{-{}-disable-multiplatform}. + +Zum Weglassen spezieller \TeX-Systeme wie {\OMEGA} oder {\eTeX} gibt +es eine Reihe von Optionen, die Sie durch die Eingabe von +\samp{./configure --help} angezeigt bekommen. + +% ------------------------------------------------------------- +\subsection{Aufruf von \cmdname{make}} + +Vergewissern Sie sich, dass die Shell-Variable \envname{noclobber} nicht +gesetzt ist und geben + +\begin{alltt} +> \Ucom{make world} +\end{alltt} + +ein. Jetzt können Sie sich entspannt zurücklehnen oder wie ein +{\TeX}ie sagt: |\relax|. + +Eine gute Idee ist auch das Speichern der Meldungen beim +Übersetzen durch das Anlegen eines Protokolls: + +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Nehmen Sie nicht fälschlicherweise nach dem Durchlauf von \cmdname{make} +an, dass alles gut gegangen ist, sondern vergewissern sich durch eine +Kontrolle des Protokolls. (\acro{GNU} \cmdname{make} zeigt Fehler +z.\,B. immer mit der Zeichenkette ">\texttt{***}"< an.) +Außerdem sollten Sie sich vergewissern, dass alle ausführbaren +Programme auch erzeugt wurden: + +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} + +Das Ergebnis sollte über 200 liegen (Sie können die exakte Zahl +mit der Anzahl der lauf"|fähigen Programme [Binaries] im Verzeichnis \OnCD{bin} vergleichen). +Der Aufruf \samp{make~world} ist übrigens äquivalent zu +\samp{make~all~install~strip}. + +Wenn für den Aufruf von \samp{make~install} besondere +Systemverwalterrechte notwendig sein sollten, können Sie die +Anweisung \samp{make~world} auch in zwei Durchgängen absetzen: + +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +Nachdem Sie Ihre Binaries installiert haben, sollten Sie die normalen +Installationsnacharbeiten durchführen, die im Abschnitt~\ref{sec:postinstall} +auf Seite~\pageref{sec:postinstall} beschrieben sind. + +Wenn Sie lauf"|fähige Programme erstellt haben und diese Anderen zur Verfügung stellen wollen, sollten Sie uns kontaktieren. Wir würden uns freuen, sie auf den \TL-\acro{WWW}-Seiten anzubieten. +\end{comment} + +% ============================================================== +\htmlanchor{ack} +\section{Danksagungen} + +Die {\TL} ist eine gemeinsame Arbeit faktisch aller {\TeX} Users +Groups. + +Die Entwicklung des vorliegende \TL-Release wurde von Karl~Berry geleitet; +die übrigen Haupt-Mitarbeiter sind im Folgenden aufgelistet. + +\begin{itemize} +\item Den englisch-, deutsch-, niederländisch-, und polnisch-sprachigen + \TeX-Anwendervereinigun\-gen (\acro{TUG}, \acro{DANTE} e.V., + \acro{NTG}, and \acro{GUST}), + die zusammen die technische und administrative Infrastruktur + zur Verfügung stellen. Wir würden uns freuen, wenn Sie bei einer der + Anwendervereinigungen Mitglied werden. +\item Dem \acro{CTAN} Team, insbesondere Robin Fairbairns, Jim Hef{}feron, + und Rainer Schöpf, das die \TL{}-CD-Images und die Infrastruktur + für Paketupdates zur Verfügung stellt, von denen \TL{} abhängt. +\item John Bowman, der viele Änderungen an dem Grafikprogramm Asymptote + vornam, damit es als Teil von \TL\ arbeitet. +\item Peter Breitenlohner und dem \eTeX\-Team für den stabilen Grundstock zu {\TeX}s Zukunft, und Peter speziell für wertvolle Hilfe zum Verwenden + von GNU autotools in \TL; +\item Jin-Hwan Cho und allen Mitgliedern des DVIPDFM$x$-Teams für deren + exzellentes Programm und Mithilfe bei Konfigurationsfragen. +\item Thomas~Esser, der mit dem exzellenten {\teTeX} die Basis + für dieses {\TL} schuf; +\item Michel~Goossens, als Coautor der englischen Original-Dokumentation; +\item Eitan~Gurari, mit dessen {\TeX4ht} die \HTML-Version dieser + Anleitung erstellt wurde und der unermüdlich daran gearbeitet + hat, es auf Zuruf zu verbessern. Eitan~Gurari verstarb leider im Juni + 2009, diese Anleitung ist seinem Andenken gewidmet. +\item Hans Hagen, für zahlreiche Tests und Aktivitäten, damit \ConTeXt{} + (\url{http://pragma-ade.com}) ein Teil von \TL sein kann; +\item \Thanh, Martin~Schröder und das pdf\TeX-Team (\url{http://pdftex.org}), + die die Arbeiten zur Erweiterung der Möglichkeiten von + {\TeX} fortgesetzt haben; +\item Taco Hoekwater, für neue Entwicklungen von MetaPost und (Lua)\TeX\ + (\url{http://luatex.org}), und ebenfalls für die Unterstützung beim + \ConTeXt-Teil von \TL, Weiterentwicklungen von Kpathsea und vieles mehr; +\item Klaus Höppner u.\,a. für die Betreuung dieses Dokuments +\item Pawe{\l} Jackowski für das Installationsprogramm \cmdname{tlpm} für + Windows, + Tomasz {\L}uczak für \cmdname{tlpmgui} in früheren Versionen von \TL; +\item Akira Kakuto, für Windows-Programme im Rahmen seines + \acro{W32TEX} Distribution + (\url{http://www.32tex.org/}); + +\item Jonathan Kew für die + Entwicklung von Xe\TeX{} und die Zeit und Mühe, es in \TL{} zu + integrieren, sowie für die erste Version des Mac\TeX-Installers, + und für das von uns als Oberfläche empfohlene \TeX works; + +\item Dick Koch für die Betreuung von Mac\TeX\ (\url{http://tug.org/mactex}); + + +\item Reinhard Kotucha, für die Unterstützung bei der Infrastruktur von + \TL{} und das Installationsprogramm, für seine Windows-Untersuchungen, für das \texttt{getnonfreefonts} + Script, und vieles mehr; + +\item Siep Kroonenberg, für wertvolle Beiträge zur Infrastruktur von + \TL\,2008 und den Installer, insbesondere unter Windows, und für einen + Großteil der Arbeit, die Dokumentation dafür zu schreiben; + +\item Heiko Oberdiek für das Paket \pkgname{epstopdf} (und viele weitere), + für die Kompression der riesigen Datenmengen von \pkgname{pst-geo}, + so dass sie in \TL\ passten, und natürlich für seine Arbeit an + \pkgname{hyperref}. + +\item Petr~Olsak, der das tschechische und slowakische Material sehr sorgfältig er- und überarbeitet hat; + +\item Toshio Oshima, für den \cmdname{dviout}-Previewer für Windows; + +\item Manuel P\'egouri\'e-Gonnard, für die Mithilfe beim Aktualisieren + von Paketen, der Dokumentation und Arbeit an \cmdname{texdoc}; + +\item Fabrice Popineau für die erste Windows-Version von \TL und Mithilfe + bei der französischen Dokumentation; + +\item Norbert Preining, Hauptkoordinator für \TL{}-Infrastruktur und + den Installer, für die Koordination der Debian Version von \TL{} + (zusammen mit Frank Küster), und die daraus resultierenden + Verbesserungsvorschläge; + +\item Sebastian Rahtz für die Erfindung von \TL und die langjährige + Leitung des Projekts; + +\item Phil Taylor, der die BitTorrent-Downloads eingeführt hat; + +\item Tomasz Trzeciak für seine Hilfe mit Windows; + +\item Vladimir Volovich für viele substanzielle Mithilfe, und dafür, dass + er es möglich gemacht hat, \cmdname{xindy} in \TL aufzunehmen; + +\item Staszek~Wawrykiewicz, der Haupttester für alles, was mit {\TeX} zusammen hängt, Koordinator der polnischen + Beiträge, Windows-Installation und mehr; + +\item Olaf~Weber für die Geduld beim Pflegen von \Webc; +\item Gerben~Wierda für das Erstellen und Pflegen des ursprünglichen \MacOSX-Teils und für viele Integrations- und Testarbeiten; +\item Graham~Williams, dessen Arbeit das Makro- und Paketverzeichnis möglich gemacht hat. +\end{itemize} + +\textbf{Lauf"|fähige Programme:} +Alan Braslau (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}), +Peter Breitenlohner (\pkgname{x86\_64-linux}), +Karl Berry (\pkgname{i386-linux}, \pkgname{sparc-linux}), +Ken Brown (\pkgname{i386-cygwin}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}), +Nikola Le\v{c}i\'c (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +Norbert Preining (\pkgname{alpha-linux}), +Jukka Salmi (\pkgname{i386-netbsd}), +Thomas Schmitz (\pkgname{powerpc-linux}), +Apostolos Syropoulos (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix}). + +Informationen dazu, wie Binaries für \TL{} erzeugt werden, +finden sich unter \url{http://tug.org/texlive/build.html}. + +\textbf{Übersetzungen der Dokumentation:} + +\begin{itemize*} +\item Boris Veytsman (Russisch) +\item Jjgod Jiang, Jinsong Zhao, Yue Wang, \& Helin Gai (Chinesisch) +\item Klaus Höppner (Deutsch) +\item Manuel P\'egouri\'e-Gonnard (Französisch) +\item Marco Pallante (Italienisch) +\item Nikola Le\v{c}i\'c (Serbisch) +\item Petr~Sojka \& Jan~Busa (Tschechisch/""Slowakisch), +\item Staszek~Wawrykiewicz (Polnisch). +\end{itemize*} + +Natürlich haben wir am meisten Donald~Knuth zu danken, einmal dafür, dass er {\TeX} erfand und dann dafür, dass er es +der Welt schenkte. + +% ------------------------------------------------------------- +\section{Geschichtliches}\label{sec:history} + +Diese Ausgabe der {\TL} ist in Zusammenarbeit der \TeX{} Users Group (\acro{TUG}), der +\acro{UKTUG}, der französischen \TeX-Vereinigung GUTenberg +und der deutschsprachigen \TeX-Anwendervereinigung (DANTE e.\,V.) +unter Mithilfe der niederländischen, tschechischen/""slowakischen, +indischen, polnischen und russischen \TeX-Benutzergruppen +entstanden. + +\subsection{Vergangenheit} + +Die niederländische \TeX-Benutzergruppe hatte Ende 1993 mit der +Produktion der 4All\TeX-{\acro{CDROM}} für \acro{MS-DOS} die Diskussion angeregt, +eine einzige {\acro{CDROM}} für alle Rechnersysteme zu entwickeln. Zum +damaligen Zeitpunkt war dieses Ziel zu hoch gesteckt, doch immerhin +entstand aus dieser Diskussion nicht nur die sehr erfolgreiche +4All\TeX-{\acro{CDROM}}, sondern auch die \acro{TUG}-Arbeitsgruppe zur Definition +der {\TeX} Directory Structure \TDS, die die zur Arbeit mit {\TeX} +notwendigen und hilfreichen Dateien in eine konsistente und +handhabbare Verzeichnisstruktur einbettet. Das ">Final~Draft"<-Dokument, +das diese Verzeichnisstruktur festlegt, wurde in der Dezember-Ausgabe +1995 der TUGBoat veröffentlicht. Schon frühzeitig war den Beteiligten +klar, dass eine {\acro{CDROM}} auf der Basis der {\TDS} sehr zu begrüßen wäre. +Die \TL-{\acro{CDROM}} war das direkte Resultat der Beratungen der +\TDS-Arbeitsgruppe. Außerdem hat der Erfolg der 4All\TeX-{\acro{CDROM}} +klargemacht, dass ein ähnliches System auch für \acro{UNIX}-Benutzer eine +Erleichterung darstellen würde. Dies war der zweite Beweggrund für +die \TL-\acro{CDROM}. + +Im Herbst 1995 wurde das Projekt, eine \TDS-basierte \acro{UNIX}-{\acro{CDROM}} +zu entwickeln, in Angriff genommen. Sehr schnell stießen die +Verantwortlichen auf das \teTeX-System von Thomas~Esser als +idealen Ausgangspunkt für diese Arbeit, weil es verschiedene +Rechnerplattformen unterstützte und für die Arbeit mit verschiedenen +Dateisystemen vorgesehen war. Anfang 1996 wurde in Zusammenarbeit +mit Thomas~Esser ernsthaft mit der Arbeit begonnen und im Mai~1996 +die erste Ausgabe der {\acro{CDROM}} veröffentlicht. + +Anfang 1997 stellte +Karl~Berry eine neue Version seines \Webc-\TeX-Systems vor, das +schon nahezu alle Ausstattungsmerkmale aufwies, die Thomas~Esser +mit {\teTeX} verwirklicht hatte. Die \acro{TUG} entschied sich daraufhin, +die zweite Version der {\acro{CDROM}} auf der Basis von {\Webc} unter +Verwendung des Installations-Skripts \cmdname{texconfig} aus dem +\teTeX-Paket zu entwickeln. + +Die dritte Ausgabe basierte auf der +inzwischen von Olaf~Weber gepflegten und weiter entwickelten +{\Webc}~Version~7.2; {\TL} unterstützte fast alle Eigenschaften +der zur selben Zeit entstandenen neuen Version von \teTeX. + +Die vierte Ausgabe folgte demselben Schema, indem ihr neue +Versionen von {\teTeX} und {\Webc}~(7.5) zugrunde lagen. +Fast die gesamte {\acro{CDROM}} wurde einer kritischen Überprüfung +unterzogen, wobei besonders darauf geachtet wurde, dass doppelte +Dateien entfernt wurden und die Einordnung der Pakete konsistent +erfolgte. Zudem enthielt diese Ausgabe ein komplettes Windows-Setup. + +Für die fünfte Ausgabe im März~2000 wurden wiederum große Teile der +{\acro{CDROM}} ersetzt, wobei Hunderte von überarbeiteten Paketen aufgenommen +wurden. {\OMEGA}, {pdf\TeX} und Teile der \TeX-Support-Programme (hier +insbesondere \cmdname{xdvi}, \cmdname{dvips} und \cmdname{tex4ht}) +lagen in neuer Version vor. +Die Hauptänderung bei der \TL\,5 betraf die \samp{non-free}-Software. +Alles auf dieser {\acro{CDROM}} war nun in Übereinstimmung mit den \emph{Debian +Free Software Guidelines} (\url{http://www.debian.org/intro/free}). +Wir haben unser Bestes versucht, die Lizenzbedingungen aller Pakete +zu überprüfen, sind aber dankbar, wenn wir auf Fehler hingewiesen werden. + +Die sechste Ausgabe der {\TL} vom Juli/August~2001 +enthielt die neuesten Versionen aller Pakete und Programme. +Das neue Installationskonzept stellte die größte Änderung dar: +Der Benutzer konnte nun viel genauer +gewünschte bzw.\ nicht erwünschte Sammlungen +und Pakete auswählen. Dabei wurden die sprachspezifischen Sammlungen +komplett überarbeitet, so dass sie jetzt automatisch nicht nur +Makros, Fonts usw. installierten, sondern zusätzlich die notwendigen +Einträge in \file{language.dat} vornahmen. + +Die siebte Ausgabe vom Mai~2002 enthält als größte +Änderungen {\MacOSX} und wieder unzählige Updates aller Pakete und Programme. +Ein wesentliches Ziel war zudem die Wiedererstellung einer gemeinsamen +Quelle mit {\teTeX}, um das Auseinanderlaufen seit \TL\,5 und \TL\,6 +zu korrigieren. + +\subsection{2003} + +Im Jahr 2003 war die Flut von Updates und neuen Paketen so groß geworden, +dass wir feststellen mussten: ">{\TL} passt nicht mehr auf eine einzelne +\acro{CDROM}"<. Und so wurde sie in drei verschiedene Distributionen aufgeteilt +(siehe Abschnitt~\ref{sec:tl-coll-dists} auf Seite~\pageref{sec:tl-coll-dists}). +Des Weiteren: + +\begin{itemize} +\item Auf Wunsch des \LaTeX-Teams wurde der Standard für \cmdname{latex} + und \cmdname{pdflatex} verändert; beide benutzen nun {\eTeX} als Basis + (siehe Seite~\pageref{text:etex}). +\item Die neuen ">Latin Modern Fonts"< wurden aufgenommen (und werden + zur Benutzung empfohlen). +\item Der Support für Alpha-\acro{OSF} wurde aufgegeben (den + \acro{HPUX}-Support hatte es schon zuvor ereilt), da + niemand mehr in der Lage war, neue Binaries zu kompilieren. +\item Das Setup für Windows wurde grundlegend überarbeitet. + Zum ersten Mal wurde eine integrierte Umgebung eingeführt, + die auf \cmdname{XEmacs} basiert. +\item Wichtige Hilfsprogramme für Windows (Perl, Ghost\-script, + Image\-Magick, Ispell) werden nun im \TL-Verzeichnis + installiert. +\item Die von \cmdname{dvips}, \cmdname{dvipdfm} und \cmdname{pdftex} + benutzten Font-Mapfiles werden vom neuen Programm + \cmdname{updmap} generiert und in \dirname{texmf/fonts/map} + installiert. +\item \TeX, {\MF} und {\MP} geben nun die meisten 8"~Bit-Input"~Zeichen (Position 32 und oberhalb) unverändert + aus in (\verb|\write|)-Files, Logfiles und auf dem Terminal. + Das bedeutet, dass sie \emph{nicht} mit der \verb|^^|-Notierung + übersetzt ausgegeben werden. Auf der \TL\,7 war diese + Übersetzung abhängig von der \cmdname{locale}-Einstellung des + Systems; nun beeinflussen \cmdname{locale}-Einstellung nicht + {\TeX}s Programmverhalten. Falls Sie aus irgendwelchen + Gründen die \verb|^^|-Ausgabe benötigen, müssen Sie in Ihrem System + die Datei \file{texmf/web2c/cp8bit.tcx} umbenennen + (zukünftige Versionen werden eine sauberere Schnittstelle zur + Kontrolle dieses Verhaltens anbieten). +\item Die Dokumentation wurde grundlegend überarbeitet. +\item Zum Abschluss einigten wir uns auf eine neue Edition-Nummerierung. + Ab diesem Jahr trägt die {\TL} statt einer fortlaufenden Nummer + die Jahreszahl: \TL~2003. +\end{itemize} + +\subsection{2004} + +\begin{itemize} +\item Wenn Sie lokal installierte Zeichensätze mit ihren eigenen \filename{.map}- oder (weniger wahrscheinlich) + \filename{.enc}-Dateien benutzen, müssen Sie möglicherweise diese Dateien verschieben. + + Nach den \filename{.map}-Dateien wird jetzt in den \dirname{fonts/map}-Unterverzeichnissen im + \envname{TEXFONTMAPS}-Pfad gesucht (in jedem \filename{texmf}-Baum). + Gleichzeitig werden \filename{.enc}-Dateien jetzt in den \dirname{fonts/enc}-Unterverzeichnissen entlang des + \envname{ENCFONTS}-Pfads gesucht. Das Programm \cmdname{updmap} versucht, bei problematischen Dateien zu warnen. + + Informationen darüber, wie das gehandhabt wird, und zusätzliche Informationen finden Sie unter + \url{http://tug.org/texlive/mapenc.html}. + +\item Die \TK\ wurde für all diejenigen, die diese Implementierung {\Webc} vorziehen, um eine \MIKTEX-basierte und + installierbare {\acro{CDROM}} erweitert. Siehe dazu auch Abschnitt~\ref{sec:overview-tl} auf + Seite~\pageref{sec:overview-tl}. + +\item In der {\TL} wurde der umfangreiche \dirname{texmf}-Baum früherer Versionen durch drei Teilbäume ersetzt: + \OnCD{texmf}, \OnCD{texmf-dist} und \OnCD{texmf-doc}. Siehe dazu Abschnitt~\ref{sec:tld} auf + Seite~\pageref{sec:tld} und die \filename{README}-Dateien in den drei Zweigen. + +\item Alle \TeX-relevanten Eingabedateien sind jetzt in den \dirname{tex}-Unterverzeichnissen der + \dirname{texmf*}-Bäume zusammengefasst und nicht mehr in den parallelen Verzeichnissen \dirname{tex}, + \dirname{etex}, \dirname{pdftex}, \dirname{pdfetex}, usw. Siehe dazu + \CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions}{\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}. + +\item Hilfs-Skripte, die der Anwender nicht selbst aufruft, werden jetzt in den \mbox{neuen} + \dirname{scripts}-Unterverzeichnissen der \dirname{texmf*}-Bäume aufbewahrt. Nach ihnen kann per + \samp{kpsewhich -format=texmfscripts} gesucht werden. Wenn Sie Programme einsetzen, die solche Skripte aufrufen, müssen + sie angepasst werden. Siehe dazu \CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}. + +\item (Fast) alle Formate interpretieren -- an Stelle einer Übersetzung durch die \verb|^^|-Notation -- mittels + des ">translation files"< \filename{cp227.tcx} die meisten Zeichen als direkt ausgebbar. Insbesondere werden + die Zeichen an den Positionen 32--256, zusätzlich \acro{TAB}, \acro{VT} (vertical tab; vertikaler Tab) und + \acro{FF} (form feed; Seitenvorschub), als druckbar angesehen und daher nicht übersetzt. Ausnahmen sind + plain \TeX, bei dem nur die Zeichen an den Positionen 32--127 druckbar sind, {\ConTeXt} (mit druckbaren Zeichen an + den Positionen 0--255) und die \OMEGA-verwandten Formate. Dieses voreingestellte Verhalten ist (fast) identisch + mit dem in \TL\,2003; es ist aber jetzt klarer und mit umfangreicheren Anpassungsmöglichkeiten implementiert. + Siehe dazu \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. + + \textbf{Anmerkung:} Da {\TeX} byte-orientiert ist, können bei einer Unicode-Eingabe (2-Byte-Zeichen) im Kontext + von Fehlermeldungen Folgen von 1-Byte-Zeichen ausgegeben werden. + +\item \cmdname{pdfetex} ist jetzt die voreingestellte ">Engine"< für alle Formate mit Ausnahme von + \mbox{(plain-)\cmdname{tex}} selbst (natürlich generiert es \dvi-Code, wenn es als \cmdname{latex}, usw. + aufgerufen wird.). Das bedeutet unter vielen anderen Dingen, dass die mikrotypographischen Fähigkeiten von + \cmdname{pdftex} + wie auch die Erweiterungen von {\eTeX} in \LaTeX, \ConTeXt usw. zur Verfügung stehen + (\OnCD{texmf-dist/doc/etex/base/}). + + Das bedeutet, dass es \emph{wichtiger denn je} ist, das Paket \pkgname{ifpdf} zu benutzen (es arbeitet sowohl mit + {plain \TeX} als auch mit \LaTeX), da der einfache Test, ob \cs{pdfoutput} oder ein anderer \TeX-Grundbefehl + (primitive) definiert ist, nicht verlässlich genug ist für die Entscheidung, ob eine PDF-Ausgabe erzeugt wird. + Wir haben das rückwärts-kompatibel gemacht, so gut wir das dieses Jahr konnten; nächstes Jahr aber soll + \cs{pdfoutput} so beschaffen sein, dass dieser Befehl auch dann definiert ist, wenn {\dvi}-Code erzeugt wird. + +\item pdf\TeX\ (\url{http://pdftex.org/}) hat viele neue Besonderheiten: + \begin{itemize} + \item Die Befehle \cs{pdfmapfile} und \cs{pdfmapline} ermöglichen einen Font"~Map-Support innerhalb eines + Dokuments. + \item Mikrotypografische Zeichensatz-Expansion (font expansion) kann jetzt viel leichter benutzt werden + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html}. + \item Alle Parameter, die früher in der speziellen Konfigurationsdatei \filename{pdftex.cfg} definiert wurden, + müssen jetzt mit Hilfe von pdf\TeX-Grundbefehlen gesetzt werden, typischerweise in + \filename{pdftexconfig.tex}; die Konfigurationsdatei \filename{pdftex.cfg} wird nicht länger unterstützt. + Jede schon bestehende Format-Datei (\filename{.fmt}) muss neu erstellt werden, wenn + \filename{pdftexconfig.tex} geändert wird. + \item Für zusätzliche Informationen siehe das pdf\TeX-Handbuch: \OnCD{texmf-dist/doc/pdftex/manual}. + \end{itemize} + +\item Der Grundbefehl \cs{input} in \cmdname{tex} (\cmdname{mf} und \cmdname{mpost}) akzeptiert jetzt doppelte + Anführungszeichen und andere Spezialzeichen. Typische Beispiele: + +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} + + Für zusätzliche Informationen siehe das \Webc-Handbuch: \OnCD{texmf/doc/web2c}. + +\item enc\TeX\ wird jetzt in {\Webc} und damit auch in allen \TeX-Programmen unterstützt. Dazu wird \emph{beim + Generieren neuer Formate} die Option \optname{-enc} benutzt. enc\TeX\ unterstützt allgemein die Umkodierung der + Ein- und Ausgabe und ermöglicht eine volle Unicode-Unterstützung (in \acro{UTF}-8). + Siehe \OnCD{texmf-dist/doc/generic/enctex/} und \url{http://www.olsak.net/enctex.html}. + +\item Aleph (\ensuremath{\aleph}), eine neue ">Engine"<, die {\eTeX} und {\OMEGA} vereinigt, ist verfügbar. Ein bisschen + Information darüber finden Sie in \OnCD{texmf-dist/doc/aleph/base} und + \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. Das \LaTeX-basierte Aleph-Format heißt + \cmdname{lamed}. + +\item Das neueste \LaTeX-Release enthält eine neue Version der \acro{LPPL}% + \footnote{LPPL: LaTeX Project Public License}, + die jetzt eine offiziell von Debian anerkannte Lizenz ist. Zusammen mit anderen Updates finden Sie Informationen + dazu in den \filename{ltnews}-Dateien in \OnCD{texmf-dist/doc/latex/base}. + +\item \cmdname{dvipng} -- ein neues Programm zum Konvertieren von \dvi-Dateien in \acro{PNG}-Bilddateien, ist + Bestandteil von \TL. Siehe \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item Auf Vorschlag des Autors (Claudio~Beccari) haben wir das Paket \pkgname{cbgreek} auf einen ">mittelgroßen"< Satz + von Fonts reduziert. Herausgenommen wurden die ">invisible"<, Outline- und ">Transparency"<-Fonts, + die relativ selten benutzt werden -- denn wir benötigen den Platz. In seinem vollen Umfang ist das Paket natürlich + weiterhin auf \acro{CTAN} verfügbar (\url{http://www.ctan.org/tex-archive/fonts/greek/cb/}). + +\item \cmdname{oxdvi} wurde entfernt; benutzen Sie jetzt \cmdname{xdvi}. + +\item Die \cmdname{ini}- und \cmdname{vir}-Befehle (Links) für \cmdname{tex}, \cmdname{mf} and \cmdname{mpost} sind + nicht mehr länger verfügbar, so auch \cmdname{initex}. Das ist kein richtiger Verlust, da die + \cmdname{ini}-Funktionalität schon seit mehreren Jahren über den Aufrufparameter \optname{-ini} zur Verfügung + steht. + +\item Die Unterstützung der Plattform \cmdname{i386-openbsd} wurde entfernt. Da das Paket \pkgname{tetex} im + \acro{BSD}-Ports-System zur Verfügung steht und Binaries für \acro{GNU}/""Linux and Free\acro{BSD} erhältlich sind, + erschien es sinnvoll, die Zeit der Freiwilligen besser zu nutzen. + +\item Zumindest auf \cmdname{sparc-solaris} müssen Sie ggf. die En"-viron"-ment-Variable \envname{LD\_LIBRARY\_PATH} + setzen, um die \pkgname{t1utils}-Programme laufen lassen zu können. Ursache dafür ist, dass die Programme mit C++ + kompiliert wurden und dass es keinen Standard-Platz für Laufzeit-Bibliotheken gibt (das ist zwar auch im Jahre + 2004 nicht neu, wurde aber bisher nicht dokumentiert.) Unter \cmdname{mips-irix} werden die + \acro{MIPS}pro-7.4-Laufzeit-Bibliotheken benötigt. +\end{itemize} + +\subsection{2005} + +Im Jahr 2005 gab es -- wie üblich -- viele aktualisierte Pakete und +Programme. Die Struktur des Systems blieb weitgehend gleich, mit folgenden +Ausnahmen: + +\begin{itemize} +\item Die neuen Skripte \cmdname{texconfig-sys}, \cmdname{updmap-sys} und + \cmdname{fmtutil-sys} für die systemweite Konfiguration des Systems wurden + hinzugefügt. Die Skripte \cmdname{texconfig}, \cmdname{updmap} und + \cmdname{fmtutil} modifizieren nun die Konfiguration für einen einzelnen + Nutzer unter \dirname{\$HOME/.texlive2005}. +\item Analog spezifizieren die Pfade \envname{TEXMFCONFIG} und + \envname{TEXMFSYSCONFIG} nun, wo die Konfigurationsdateien gefunden + werden (für einen einzelnen Nutzer bzw.\ systemweit). Möglicherweise + müssen Sie daher vorhandene eigene Versionen von + \filename{fmtutil.cnf} oder \filename{updmap.cfg} in die entsprechenden + Pfade verschieben. Alternativ können Sie \envname{TEXMFCONFIG} und + \envname{TEXMFSYSCONFIG} in der Datei \filename{texmf.cnf} umdefinieren, + dass diese auf die Speicherorte Ihrer eigenen Konfigurationsdateien + verweisen. Siehe Abschnitt~\ref{sec:texmftrees} auf Seite~\pageref{sec:texmftrees}. +\item Im letzten Jahr wurden für die Programme, die DVI als Ausgabeformat + erzeugen, die Primitive wie \verb|PDFoutput| auf undefiniert gesetzt, + obwohl immer \cmdname{pdfetex} verwendet wurde. In diesem Jahr wurde dies + wie angekündigt nicht mehr getan. Falls in Dokumenten nun die Abfrage + \verb|\ifxPDFoutput\undefined| zum Test benutzt wird, ob PDF oder DVI + erzeugt wird, müssen diese geändert werden! Benutzen Sie das Paket + \pkgname{ifpdf.sty}, das auch mit dem geänderten Verhalten funktioniert, + oder orientieren Sie sich an dessen Code. +\item Im letzten Jahr wurden die Formate so geändert, dass sie Zeichen + als 8-bit ausgeben. Die neue TCX-Datei \filename{empty.tcx} eröffnet nun + einen einfachen Weg, die originale Ausgabe mit \verb|^^|-Notation zu + erhalten, wenn Sie es wünschen: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} +\item Das Programm \cmdname{dvipdfmx} für die Konvertierung von DVI nach + PDF ist neu hinzugekommen. Dies ist eine aktiv gepflegte Erweiterung von + \cmdname{dvipdfm}, das zwar noch verfügbar ist, aber als obsolet angesehen + werden kann. +\item Ebenso sind die Programme \cmdname{pdfopen} und \cmdname{pdfclose} neu + hinzugekommen. Diese erlauben ein Reload von PDF-Dateien im Acrobat Reader, + ohne diesen neu starten zu müssen (andere PDF-Viewer wie \cmdname{xpdf}, + \cmdname{gv} oder \cmdname{gsview} hatten damit nie Probleme). +\item Aus Konsistenzgründen wurden die Variablen \envname{HOMETEXMF} und + \envname{VARTEXMF} in \envname{TEXMFHOME} bzw.\ \envname{TEXMFSYSVAR} + umbenannt. Weiterhin existiert \envname{TEXMFVAR} für einen Baum, der + spezifisch für einen einzelnen Nutzer ist. +\end{itemize} + +\subsection{2006--2007} +\label{tlcurrent} + +Der wichtigeste Neuzuwachs in der Ausgabe 2006--2007 von \TL{} war das Xe\TeX{} +Programm, verfügbar durch die \texttt{xetex} und \texttt{xelatex} +Programme; siehe \url{http://scripts.sil.org/xetex}. + +Auch MetaPost erhielt ein bemerkenswertes Update, mit weiteren geplannten +Änderungen (\url{http://tug.org/metapost/articles}), ebenso pdf\TeX{} +(\url{http://tug.org/applications/pdftex}). + +Das (plain) \texttt{tex}-Programm liest nicht mehr erste Zeilen mit +\texttt{\%\&} um das Format zu bestimmen. Es ist ein reines Knuth-\TeX. +(\LaTeX\ und alle anderen Formate lesen weiterhin \texttt{\%\&}-Zeilen). + +Weiters wurden wie üblich hunderte von Paketen und Programmen auf einen +neueren Stand gebracht. Für weiter Updates wenden Sie sich bitte an +\acro{CTAN} (\url{http://www.ctan.org}). + +Die Entwicklungsumgebung wurde auf Subversion umgestellt, was ein Webinterface +für den Entwicklungsbaum beisteuerte. Dieses Webinterface ist von der +Homepage verlinkt. Obwohl dieser Umstieg in der Distribution nicht zu +erkennen ist, erwarten wir uns ein stabiles Fundament für die Entwicklung +in den nächsten Jahren. + +Schließlich hat im Mai~2006 Thomas Esser das Ende seiner Entwicklung von +te\TeX{} (\url{http://tug.org/tetex}) angekündigt. Als Konsequenz ist das +Interesse an \TL{}, besonders unter den \acro{GNU}/Linux-Distributoren +angestiegen. (\TL{} bietet nun ein \texttt{tetex}-Installationsschema, dass +annähernd den Umfang von te\TeX{} umfasst.) Wir hoffen dass dies +schlussendlich zu einer Verbesserung der \TeX-Umgebung für jederman führt. + +\subsection{2008} + +Die komplette Infrastruktur von \TL wurde 2008 neu entwickelt. Die +gesamten Daten, die für die Installation benötigt werden, finden sich +nun in einer einzigen Textdatei mit dem Namen \filename{tlpkg/texlive.tlpdb}. + +Dies ermöglicht es unter anderem, ein Update einer installierten Version +von \TL über das Internet durchzuführen, was für MiK\TeX{} schon seit +Jahren möglich ist. Wir planen regelmäßige Updates bereitzustellen, +wenn Pakete auf \CTAN{} aktualisiert werden oder neu erscheinen. + +Als neues Programm ist Lua\TeX\ (\url{http://luatex.org}) enthalten, +das neben neuen Möglichkeiten innerhalb des Satzsystems eine +hervorragende Skriptsprache zur Verfügung stellt, die inner- und +außerhalb von \TeX{} benutzt werden kann. + +Die Unterstützung von \TL für Windows und Unix ist mittlerweile praktisch +äquivalent. Die meisten Perl- und Lua-Skripte können nun auch unter +Windows verwendet werden, da innerhalb von \TL Perl integriert ist. + +Das neue \cmdname{tlmgr}-Programm (Abschnitt~\ref{sec:tlmgr}) ist +eine komplette Oberfläche zum Verwalten von \TL nach der Installation. +Es ermöglicht das Aktualisieren von Paketen, die Neugenerierung von +Formatdateien, Fontmaps und die Konfiguration der \TeX-Unterstützung +für verschiedene Sprachen. + +Nach der Einführung von \cmdname{tlmgr} sind die Funktionen von +\cmdname{texconfig} zur Konfiguration von Formatdateien und +Trennmustern deaktiviert worden. + +Der Index-Prozessor \cmdname{xindy} (\url{http://xindy.sourceforge.net/}) +ist nun für die meisten Betriebssysteme integriert. + +Das Programm \cmdname{kpsewhich} kann nun alle Fundstellen für eine +gesuchte Datei anzeigen (Option \optname{--all}) oder die Suche +auf ein bestimmtes Verzeichnis einschränken (Option \optname{--subdir}). + +Das Programm \cmdname{dvipdfmx} kann nun Informationen über die +Bounding Box liefern, was über die Kommandozeile mit dem Befehl +\cmdname{extractbb} aufgerufen werden kann; dies war die letzte +Funktion von \cmdname{dvipdfm}, die noch nicht in \cmdname{dvipdfmx} +vorhanden war. + +Die Font-Aliasnamen \filename{Times-Roman}, \filename{Helvetica} usw. +wurden abgeschafft. + +Das Makro-Format \pkgname{platex} wurde entfernt, um den Namenskonflikt +mit dem japanischen \pkgname{platex} auf zu lösen; Unterstützung +für polnisch wird nun vom Paket \pkgname{polski} zur Verfügung gestellt. + +Die \web{} string pool files wurden in die Programme einkompiliert, +um Updates zu vereinfachen. + +Und abschließend sind die Änderungen von Donald Knuth in seinem +\emph{\TeX\ tuneup of 2008} in \TL eingearbeitet, +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + +\subsection{2009} + +Das Standardausgabeformat für Lua\AllTeX\ ist nun PDF. Hier entfalten die +Erweiterungen von Lua\AllTeX, wie die Unterstützung von OpenType, +ihre volle Wirkung. Die neuen Programme \code{dviluatex} bzw. +\code{dvilualatex} erzeugen wie früher DVI als Ausgabeformat. +Die Homepage von Lua\TeX\ finden Sie unter \url{http://luatex.org}. + +Nach Rücksprache mit den Autoren von Omega wurden Omega und das +Format Lambda entfernt. Die aktuelle Version von Aleph und Lamed ist +weiterhin in \TL\ enthalten, zusammen mit einigen Hilfsprogrammen von +Omega. + +Eine neue Version der AMS \TypeI-Fonts wird von \TL\ mitgeliefert, +inklusive der Computer Modern-Schriften. Donald Knuth hat in den letzten +Jahren die Gestalt einiger Zeichen in den Metafont-Quellen geändert, diese +wurden übernommen. Weiterhin wurde das so genannte Hinting verbessert. +Die Euler-Schriften wurden kürzlich ebenfalls sorgsam überarbeitet +(siehe \url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). +In allen Fällen blieben die Fontmetriken unverändert. Mehr zu den +AMS-Fonts finden Sie unter \url{http://www.ams.org/tex/amsfonts.html}. + +Die neue \TeX-Oberfläche \TeX{}works ist für Windows enthalten, analog +zu Mac\TeX. Für andere Systeme oder weitere Informationen beachten Sie +bitte die Webseite \url{http://tug.org/texworks}. \TeX{}works ist +eine Cross-Plattform-Anwendung, die von dem Editor \MacOSX\ inspiriert +wurde, und somit eine einfach zu bedienende Oberfläche für \TeX\ bietet. + +Das Grafikprogramm Asymptote ist für verschiedene System enthalten. Es +bietet eine textbasierte Beschreibungssprache für Zeichnungen, nicht +unähnlich zu MetaPost, aber mit Unterstützung für 3D und weiteren +Vorteilen. Die Homepage befindet sich unter \url{http://asymptote.sourceforge.net}. + +Das bisher enthaltene eigenständige Programm \code{dvipdfm} wurde durch +\code{dvipdfmx} ersetzt, das beim Aufruf als \code{dvipdfm} in einem +Kompatibilitätsmodus läuft. \code{dvipdfmx} unterstützt \acro{CJK} +(Chinesich, Japanisch, Koreanisch) und enthält viele Korrekturen und +Verbesserungen gegenüber dem alten \code{dvipdfm}. Die Homepage zu +DVIPDFMx finden Sie unter \url{http://project.ktug.or.kr/dvipdfmx}. + +Für \pkgname{cygwin} und \pkgname{i386-netbsd} werden nun ausführbare +Programme mitgeliefert, während einige andere BSD-Derivate nicht mehr +dabei sind. Es wird empfohlen, dass Nutzer von OpenBSD bzw. FreeBSD +\TeX\ über den Paketmanager ihres Systems installieren, da sich gezeigt +hat, dass die Bereitstellung von Binaries, die für mehrere Versionen +funktionieren, sehr problematisch ist. + +Einige weitere, aber kleine Änderungen: Wir verwenden nun zur Datenkompression +\pkgname{xz} als stabile Alternative zu \pkgname{lzma} (\url{http://tukaani.org/xz/}); Dollarzeichen sind in Dateinamen erlaubt, solange sich zusammen +mit den Dollarzeichen kein bekannter Variablenname ergibt; die Kpathsea +ist nun multi-threaded (was von MetaPost verwendet wird); der gesamte +Build von \TL\ basiert nun auf Automake. + +Und zum Abschluss: Alle Releases von \TL, mit Zusatzmaterial wie den +DVD-Labeldrucken, sind unter \url{ftp://tug.org/historic/systems/texlive} +verfügbar. +% ------------------------------------------------------------- +\subsection{2010} + +Seit 2010 werden PDF-Dateien nach PDF Version 1.5 erzeugt, was eine +stärkere Komprimierung der Dateien ermöglicht. Dies gilt für alle +\TeX-Kompiler mit dem Ausgabeformat PDF und \code{dvipdfmx}. +Mit dem \LaTeX-Paket \pkgname{pdf14} wird wieder PDF 1.4 erzeugt, +alternativ kann |\pdfminorversion=4| verwendet werden. + +pdf\AllTeX\ konvertiert nun \emph{automatisch} bei Bedarf unter +Verwendung des Paketes \pkgname{epstopdf} + EPS-Dateien (Encapsulated PostScript) nach PDF, wenn +die Konfigurationsdatei \code{graphics.cfg} geladen wurde und das +Ausgabeformat PDF ist. Standardmäßig sollen auf keinen Fall bereits +vorhandene (evtl. mühsam anderweitig erzeugte) PDF-Dateien überschrieben +werden. Die automatische Umwandlung kann komplett abgeschaltet werden, +indem am Anfang der \LaTeX-Datei (vor \cs{documentclass}!) die Zeile +|\newcommand{\DoNotLoadEpstopdf}{}| (oder |\def...|) eingefügt wird und +so das Laden von \code{epstopdf} unterdrückt wird. Für weitere Informationen +schauen Sie bitte in die Anleitung des \pkgname{epstopdf}-Pakets +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +Eine wichtige, damit zusammen hängende Änderung ist die Beschränkung +des \cs{write18}-Befehls von \TeX\ (das zum Aufruf externer Programme +dient) auf einige wenige Programme in der Standardkonfiguration von +\TL. Diese sind z.\,B. \code{epstopdf}, \code{makeindex} und \code{bibtex}. +Konkret wird die Auswahl zulässiger Programme in der Datei \code{texmf.cnf} +festgelegt. In Umgebungen, wo aus Sicherheitsgründen der Aufruf externer +Anwendungen über \cs{write18} komplett unterbunden werden soll, kann dies +direkt bei der Installation eingestellt werden (siehe Abschnitt~\ref{sec:options} +oder nachträglich in \code{texmf.cnf} geändert werden. + +Weiterhin werden \BibTeX\ und Makeindex nun daran (analog zu \TeX\ selbst) +gehindert, ihre Ausgabedateien in beliebige Verzeichnisse zu schreiben, +damit erlaubt werden konnte, dass sie über \cs{write18} gestartet +werden. Falls dies geändert werden soll, muss entweder die Variable +\envname{TEXMFOUTPUT} gesetzt oder die Konfigurations"-einstellung +|openout_any| geändert werden. + +\XeTeX\ unterstützt nun wie pdf\TeX\ optischen Randausgleich. + +\prog{tlmgr} speichert eine Sicherheitskopie von aktualisierten Paketen +(\code{tlmgr option autobackup 1}), so dass ein fehlerhaftes Update mit +\code{tlmgr restore} rückgängig gemacht werden kann. Falls Sie hierfür +nicht genug Platz haben, kann dies mit \code{tlmgr ++option autobackup 0} abgeschaltet werden. + +Neu enthaltene Programme: p\TeX\ und verwandte Programme zum +japanischen Schriftsatz, das Programm \BibTeX{}U für ein Unicode-fähiges +\BibTeX, das Programm \prog{chktex} (\url{http://baruch.ev-en.org/proj/chktex}) +zum Überprüfen von \AllTeX-Dokumenten, \prog{dvisvgm} (\url{http://dvisvgm.sourceforge.net}) zum Konvertieren von DVI nach SVG. + +Neu unterstützte Systeme: \code{amd64-freebsd}, +\code{amd64-kfreebsd}, \code{i386-freebsd}, \code{i386-kfreebsd}, +\code{x86\_64-darwin}, \code{x86\_64-solaris}. + +Eine Änderung in \TL{} 2009, die nicht dokumentiert wurde: Zahlreiche +\TeX4ht-bezogene Programme fielen weg, hierfür gibt es nun das Programm +\code{mk4ht}. + +Abschließend kann \TL\ nicht mehr direkt von der \DVD\ ausgeführt werden. +Eine einzelne \DVD\ inst nicht mehr groß genug. Als Nebeneffekt sollte die +Installation von der \DVD\ schneller als früher sein. + +\subsection{2011} + +In \TL\ gab es relativ wenige Neuerungen. Die Binaries für Mac OS X (\code{universal-darwin} und \code{x86\textunderscore 64-darwin}) laufen nur noch unter Mac OS X Versionen ab Leopard; Panther und Tiger werden nicht mehr unterstützt. + +Das \code{biber} Programm für die Bearbeitung von Bibliografien wird für die gängigen Plattformen mitgeliefert, seine Entwicklung ist eng an die Entwicklung des \code{biblatex} Pakets geknüpft, das die Art und Weise, in der \LaTeX\ Bibliografien verwaltet, komplett neu implementiert. + +MetaPost (\code{mpost}) erzeugt oder nutzt keine \code{.mem} Dateien mehr. Benötigte Dateien wie \code{plain.mp} werden einfach bei jedem Lauf gelesen. Grund hierfür ist die Tatsache, dass MetaPost auch als Bibliothek unterstützt wird, eine weitere --wenn auch eher unsichtbare-- Änderung. + +Die Implementierung von \code{updmap} in Perl, bisher nur unter Windows genutzt, wurde überarbeitet und wird jetzt von allen Plattformen verwandt. Abgesehen von einer deutlichen Steigerung der Geschwindigkeit sollte kein Nutzer davon etwas merken. + +\htmlanchor{news} +\subsection{Gegenwart (2012)} +\label{sec:tlcurrent} +\label{sec:2012news} + +\code{tlmgr} unterstützt Updates von verschiedenen Netzwerk-Repositories. Siehe dazu den Abschnitt zu multiplen Repositories in der \code{tlmgr help} Ausgabe. + +Der Parameter \cs{XeTeXdashbreakstate} wird standardmäßig für \code{xetex} und \code{xelatex} auf '1' gesetzt. Dies erlaubt Zeilenumbrüche nach em-dashes und en-dashes und war seit jeher das Standardverhalten von \TeX, \LaTeX, Lua\TeX, etc. Für perfekte Zeilenumbruch-Kompatibilität bei existierenden Dokument muss daher \cs{XeTeXdashbreakstate} explizit auf '0' gesetzt werden. + +Die Ausgabedateien von \code{pdftex} und \code{dvips}, neben anderen, dürfen jetzt größer als 2 GB werden. + +Die 35 Standard-Postscript Fonts werden standardmäßig in der Ausgabe von \code{dvips} ausgegeben, da es so viele verschiedene Versionen von ihnen gibt. + +Im 'Restricted Execution' Modus ist \code{mpost} standardmäßig erlaubt. + +Eine \code{texmf.cnf} Datei wird auch in \filename{../texmf-local}, +wie zum Beispiel \filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf}, gefunden, falls sie dort existiert. + +Das \code{updmap} Skript liest \code{updmap.cfg} pro Verzeichnisbaum anstelle einer globalen Datei. Diese Änderung sollte komplett unsichtbar sein, sofern die \code{updmap.cfg} Dateien nicht manuell bearbeitet wurden. Die Ausgabe von \code{updmap --help} hat mehr zum Thema. + +Plattformen: \pkgname{armel-linux} und \pkgname{mipsel-linux} wurden hinzugefügt; \pkgname{sparc-linux} und \pkgname{i386-netbsd} sind nicht länger Teil der Haupt-Distribution. Sie können aber in Form spezieller Binaries von \url{http://tug.org/texlive/custom-bin.html} heruntergeladen werden. + +\subsection{Zukunft} + +\emph{{\TL} ist nicht perfekt! -- und wird es auch nie sein.} Wir planen +Neuauf"|lagen zu produzieren, die umfangreichere +Hilfstexte, mehr Hilfsprogramme, mehr Installationshilfen und (natürlich) +den ständig verbesserten und überprüften Satz der Makros und Zeichensätze +enthalten. Diese Arbeit wird von Freiwilligen in ihrer knappen Freizeit +geleistet. Viel Arbeit steht noch an. Wenn Sie uns helfen können, +zögern Sie keine Sekunde, sich bei uns zu melden. + +Verbesserungen, Anregungen und Erweiterungen für künftige Ausgaben +der {\TK} senden Sie bitte an:\hfill\null + +\begin{quote} +\email{tex-live@tug.org}\\ +\url{http://tug.org/texlive/} +\end{quote} + +Neue Versionen, Anmerkungen und zusätzliches Material werden über +die \CTAN-Server im Verzeichnis \dirname{info/texlive} zur Verfügung gestellt. +Im \acro{WWW} können Sie sich über die Adresse +\url{http://www.tug.org/tex-live/} informieren und die Bestellformalitäten +einsehen. + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/Makefile b/Master/texmf-dist/doc/texlive/texlive-en/Makefile new file mode 100644 index 00000000000..abdadf166d8 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/Makefile @@ -0,0 +1,34 @@ +# $Id$ +# Makefile for TeX Live documentation. Public domain. +doc = texlive-en + +all: pdf html + +env = TEXINPUTS=../texlive-common:../texlive-en:; export TEXINPUTS; + +pdf: + rm -f *.aux *.toc *.lof *.lot *.xref* *.tmp *.out + $(env) pdflatex '\nonstopmode\def\Status{1}\input $(doc)' + $(env) pdflatex '\nonstopmode\def\Status{1}\input $(doc)' + $(env) pdflatex '\nonstopmode\def\Status{1}\input $(doc)' + $(env) pdflatex '\nonstopmode\def\Status{1}\input $(doc)' + +html: + rm -f *.aux *.toc *.lof *.lot *.xref* *.tmp *.out *.4tc +# this sequence is equivalent to running "ht latex $(doc)". We do it +# this way so we can \def\Status for the \ifcase in tex-live.sty. + $(env) latex '\nonstopmode\def\Status{2}\input $(doc)' + $(env) latex '\nonstopmode\def\Status{2}\input $(doc)' + $(env) latex '\nonstopmode\def\Status{2}\input $(doc)' + $(env) latex '\nonstopmode\def\Status{2}\input $(doc)' + $(env) tex4ht $(doc) + $(env) t4ht $(doc) + +clean: + rm -f *.aux *.log *.blg *.toc *.out *.lot tex4ht.ps *.4* + rm -f *.xref* *.lg *.idv *.out *.otc *.tmp tmp.* + rm -f $(doc).dvi $(doc).ps + +realclean: clean + rm -f $(doc).pdf + rm -f *.html *.htm $(doc).css *.gif *.jpg diff --git a/Master/texmf-dist/doc/texlive/texlive-en/README b/Master/texmf-dist/doc/texlive/texlive-en/README new file mode 100644 index 00000000000..dc5fb6b124d --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/README @@ -0,0 +1,5 @@ +$Id$ +TeX Live documentation. This file is public domain. + +We only generate the documentation in PDF and HTML formats -- see the +Makefile. This saves us having to have the images in EPS format too. diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/bv-live.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/bv-live.tex new file mode 100644 index 00000000000..ad044e568cb --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/bv-live.tex @@ -0,0 +1,84 @@ +% this is the baskerville version of the live documentation +\providecommand{\Status}{3} + +\setcounter{errorcontextlines}{999} +\documentclass{article} +\advance\textwidth by 1in +\advance\oddsidemargin by -1in +\advance\evensidemargin by -1in +\newsavebox{\warnbox} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\setcounter{tocdepth}{2} +\pretolerance=1000 +\tolerance=1500 +\hbadness=3000 +\vbadness=3000 +\hyphenpenalty=400 +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +\def\eTeX{$\varepsilon$-\TeX} +%\def\CTAN{\textsc{ctan}} +%\def\TUB{\textsc{tub}} +\def\Dash{---} +\def\hyph{-} +%\def\TeXXeT{\TeX-XeT} +\def\OMEGA{$\Omega$} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +%\def\cs#1{\mbox{\normalfont\ttfamily\bs#1}} +\def\La{La} +\let\textsl\textit +\let\sl\it +\let\slfamily\itfamily +\def\ttdefault{cmtt} +\usepackage{tex-live} +\begin{document} +%\author{Sebastian Rahtz\\ +%\texttt{s.rahtz@elsevier.co.uk}\\ +%Michel Goossens\\ +%\texttt{m.goossens@cern.ch}} +%\title{The \protect\TeX\ Live Guide, 3rd edition} +%\date{March 1998} + +\BASKyear{1998} +\BASKmonth{April} +\BASKvol{8} +\BASKno{2} +\BASKed*{Robin Fairbairns} +\BASKfonts{Y\&Y European Modern} +\makeBSKtitle + +\input editorial +\ifbaskerville +\end{multicols} +%\vfill\Dings\vfill +\fi +\clearpage + +\begin{center} + \LARGE The \TeX\ Live Guide, 3rd edition +\end{center} +\title{\TeX\ Live Guide, 3rd edition} + +\ifbaskerville\begin{multicols}{2}\fi +\tableofcontents +\listoftables +\ifbaskerville +\end{multicols} +\Dings +\fi + +\input tex-live +\appendix + +\Dings + +\input live-app + +\vfill\Dings\vfill +\clearpage +\input sec +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/bvoutln.sty b/Master/texmf-dist/doc/texlive/texlive-en/archive/bvoutln.sty new file mode 100644 index 00000000000..92f19fd027b --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/bvoutln.sty @@ -0,0 +1,193 @@ +% extracts of baskerville.cls for use with the tex-live documentation +% when we're producing a bv issue with it. + +% **************************************** +% * PAGE LAYOUT * +% **************************************** +% +% SIDE MARGINS: +\oddsidemargin -2.5pc \evensidemargin -2.5pc +\marginparwidth 4pc % don't use marginal notes... +\marginparsep 0.5pc % ...in the UK TUG newsletter + +% VERTICAL SPACING: +\topmargin -3pc +\headheight 12\p@ +\headsep 15\p@ +\topskip 10\p@ +\footskip 15\p@ + +% DIMENSION OF TEXT: + +\textheight 250mm % height of text on a page (A4 paper) +\textwidth 180mm % total width of a page +\columnseprule 0.5\p@ % width of line in the inter-column gutter +\columnsep 10mm % space between columns +\tolerance 9999 % make those columns justify + +% FOOTNOTES: +\footnotesep 6\p@ +\skip\footins 19.5\p@ plus 12\p@ \@minus 1\p@ + +% FLOATS: +\floatsep 12\p@ plus 5.5\p@ \@minus 1\p@ +\textfloatsep 15\p@ plus 4.5\p@ \@minus 3\p@ +\intextsep 12\p@ plus 5.5\p@ \@minus 2\p@ +\dblfloatsep 12\p@ plus 5.5\p@ \@minus 2\p@ +\dbltextfloatsep 15\p@ plus 4.5\p@ \@minus 3\p@ +\@fptop 0\p@ plus 0fil +\@fpsep 12\p@ plus 0fil +\@fpbot 0\p@ plus 3fil +\@dblfptop 0\p@ plus 0fil +\@dblfpsep 12\p@ plus 0fil +\@dblfpbot 0\p@ plus 3fil +\marginparpush 5\p@ + +% **************************************** +% * TITLES AND ABSTRACT * +% **************************************** +% + +%% Volume Number (ie Year - 1990) +\def\BASKvol#1{\gdef\BASK@vol{#1}} +\BASKvol{?} + +%% Issue Number (ie Month/2, roughly) +\def\BASKno#1{\gdef\BASK@no{#1}} +\BASKno{?} + +% Editor, Star form for Guest editor +\def\BASKed{\@ifstar{\BASK@ed{Guest }}{\BASK@ed{}}} +\def\BASK@ed#1#2{\gdef\BASK@editor{#1Editor: #2}} +\BASKed{????????} + +%% Year (4 digits) +\def\BASKyear#1{\gdef\thisyear{#1}} +\BASKyear{????} + +% Month (as a Word) +\def\BASKmonth#1{\gdef\thismonth{#1}} +\BASKmonth{?????} + +\def\makeBSKtitle{\par + \begingroup + \vspace*{-\headheight}% + \@maketitle + \bigskip\hrule\bigskip + \thispagestyle{plain} + \endgroup + \let\maketitle\relax + \let\@maketitle\relax +} +\newbox\BSKbox +\def\@maketitle{% + \centerline{\BASK@titleline}% + \medskip + \hbox to \textwidth{\bfseries The Annals of the UK \TeX\ Users + Group\hfill \BASK@editor\hfill Vol.~\BASK@vol\ No.~\BASK@no}% + \smallskip\hbox to \textwidth{\bfseries ISSN 1354--5930 + \hfill \thismonth\ \thisyear}% + \medskip + \noindent\ignorespaces + \BASK@headparone} + +% The Journal title command. +% You probably only want to change this if you want to use a design-size +% font rather than let \scaletowidth scale for some special issue. +\def\BASKtitle#1{\gdef\BASK@titleline{#1}} +\let\scaletowidth=\resizebox% added by Sean K. Harbour for Textures +\BASKtitle{% + \fontfamily{mbvx}\bfseries + \scaletowidth{\textwidth}{!}{% modified by Sean K. Harbour + B\,a\,s\,k\,e\,r\,v\,i\,l\,l\,e}} + + +% The first paragraph. Needs to be reset if a special issue used a +% different font set. +\def\BASKheadparone#1{\gdef\BASK@headparone{#1}} +\BASKheadparone{% +This issue of \BV\ is set in \@BASKfonts, and printed on a Xerox Docutech. Production and distribution is +undertaken in Cambridge by Robin Fairbairns. } + + +\def\BASKfonts#1{\gdef\@BASKfonts{#1}} +\BASKfonts{Monotype Baskerville, with Computer Modern Typewriter for + literal text} + +% +% for \Dings +\RequirePackage{pifont} +% +% available for inter-article dinglines +% +\def\Dings{\nopagebreak{\footnotesize\dingline{167}}} + +% +% hack representation of appendices +\let\BV@@appendix\appendix +\renewcommand{\appendix}{\BV@@appendix + \renewcommand\@seccntformat[1]{\@ifundefined{@seccnt@##1}% + {\csname the##1\endcsname\quad}% + {\csname @seccnt@##1\endcsname}} + \newcommand\@seccnt@section{Appendix~\thesection~} +} + +% +% page styles +% +% \ps@empty defined in LATEX.TEX +% +\def\ps@plain{\let\@mkboth\markboth + \def\@oddhead{} + \def\@evenhead{} + \def\@oddfoot{\rm \hfil --\thepage--\hfil} + \def\@evenfoot{\rm \hfil --\thepage--\hfil} +} +\def\ps@headings{\let\@mkboth\markboth + \def\@oddhead{\hfill\emph{\@title}\hfill} + \def\@oddfoot{\rm \hfil --\thepage--\hfil} + \def\@evenhead{\it Baskerville \hfill + Volume \BASK@vol, Number \BASK@no} + \def\@evenfoot{\rm \hfil --\thepage--\hfil} +} + +% +% allow setting of pagehead title +\def\title{\@ifnextchar [{\@titletwo}{\@titleone}} +\def\@titletwo[#1]#2{\gdef\@title{#1}\gdef\@longtitle{#2}} +\def\@titleone#1{\gdef\@title{#1}\gdef\@longtitle{#1}} + +% +% more exciting page parameters +\@twosidetrue +\pagestyle{headings} + +\providecommand{\ukt}{UK \acro{TUG}} + +\newcommand{\standardtitles}{% + \def\section{%\typeout{** section!}% + \@startsection {section}{1}{\z@} + {-12\p@ \@plus -6\p@ \@minus -.1\p@} + {6\p@} + {\raggedright\large\bfseries}} + \def\subsection{\@startsection{subsection}{2}{\z@} + {-4\p@ \@plus -2\p@ \@minus -.1\p@} + {0.1\p@ \@plus 2\p@} + {\raggedright\normalsize\itshape}} + \def\subsubsection{\@startsection{subsubsection}{3}{\z@} + {-6\p@ \@plus -3\p@ \@minus -1\p@} + {0.1\p@ \@plus 2\p@} + {\raggedright\normalsize\it}} + \def\paragraph{\@startsection{paragraph}{4}{\z@} + {12\p@ \@plus 2.25\p@ \@minus -1\p@} + {-0.5em} + {\normalsize\bfseries}} + \def\subparagraph{\@startsection{subparagraph}{5}{\z@} + {12\p@ \@plus 2.25\p@ \@minus 1\p@} + {-0.5em} + {\normalsize\it}} + \setcounter{secnumdepth}{-1} +} + +\endinput + diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/changemail b/Master/texmf-dist/doc/texlive/texlive-en/archive/changemail new file mode 100644 index 00000000000..dd792a25f78 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/changemail @@ -0,0 +1,24 @@ +s/J.Smart@ed.ac.uk/??/ +s/gerd@uni-koblenz.de/??/ +s/Meijer@rulfsw.fsw.LeidenUniv.nl/??/ +s/wl@gnu.org/xlwy01@uxp1.hrz.uni-dortmund.de/ +s/weissert@SJUPHIL.SJU.EDU/Tom@Weissert.net/ +s/mehlich@informatik.uni-muenchen.de/mmehlich@semdesigns.com/ +s/eijkhout@math.ucla.edu/victor@eijkhout.net/ +s/ca_rowley@vax.acs.open.ac.uk/c.a.rowley@open.ac.uk/ +s/B.Jackowski@gust.s.org.pl/B.Jackowski@gust.org.pl/ +s/P.Pianowski@gusts.org.pl/P.Pianowski@gust.org.pl/ +s/mittelbach@mzdmza.zdv.uni-mainz.de/Frank.Mittelbach@Uni-Mainz.de/ +s/mcjones@pa.dec.com/paul.mcjones@acm.org/ +s/h.harders@tu-bs.de/Harald.Harders@dlr.de/ +s/pwilson@cme.nist.gov/peter.r.wilson@boeing.com/ +s/wikner@ariel.nac.ac.za/wikner@nac.ac.za/ +s/vitus@agropc.msk.su/vitus@ice.ru/ +s/greg@bic.mni.mcgill.ca/gward@python.net/ +s/mittelbach@mzdmza.zdv.uni-mainz.de/frank.mittelbach@latex-project.org/ +s/fbraun@rz.uni-potsdam.de/fbraun@atdot.org/ +s/david@dcarlisle.demon.co.uk/david.carlisle@latex-project.org/ +s/davidc@nag.co.uk/david.carlisle@latex-project.org/ +s/rf@cl.cam.ac.uk/rf10@cam.ac.uk/ +s/robin.fairbairns@cl.cam.ac.uk/rf10@cam.ac.uk/ +s/robin@lsl.co.uk/rf10@cam.ac.uk/ \ No newline at end of file diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/l.pl b/Master/texmf-dist/doc/texlive/texlive-en/archive/l.pl new file mode 100644 index 00000000000..d74f313a5cc --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/l.pl @@ -0,0 +1,44 @@ +require "status.pl"; +require "texlive.pl"; +while (<>) { + chop; + s/,$//; + if (/^\@TeXIndex/) + { + ($nam) = /^\@TeXIndex.(.*)/; + print "\@TeXIndex\{$nam"; + $Status=1; + $Texlive=1; + $Modified=0; + } + elsif (/^ *modified/) { s/, *$//; $mod=$_; } + elsif (/^ *status/) { $Status=0; + if ($L{$nam}) + { print ",\n status\t= \{$L{$nam}\}"; + $Modified=1;} + else { print ",\n$_"; } + } + elsif (/^ *texlive/) { $Texlive=0; + if ($texlive{$nam} ne "") + { print ",\n texlive\t= \{$texlive{$nam}\}"; + $Modified=1;} + } + elsif (/^}/) { + if ($Status) { + print ",\n status\t= \{unknown\}"; + } + if ($Texlive && $texlive{$nam} ne "") + { print ",\n texlive\t= \{$texlive{$nam}\},\n"; } + if ($Modified) + { print ",\n modified\t= {1999/03/26 10:00:00 }\n"; } + elsif ($M{$nam} ne "") + { print ",\n modified\t= \{$M{$nam}\}\n"; } + else + {print ",\n$mod\n"; } + print "}\n"; + } + + elsif (/= {/) { print ",\n$_"; } + else { print "\n$_"; } + } + diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2003.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2003.tex new file mode 100644 index 00000000000..55c1551a628 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2003.tex @@ -0,0 +1,3937 @@ +% $Id$ +% change history (started May 13th 2002) +% 2003/09/06: fixes from Staszek +% 2003/09/05: touched by Karl +% 2003/09/04: fixes from Staszek and Fabrice +% 2003/09/01: fixes from Volker +% 2003/08/24: win32 updates, by Fabrice +% 2003/08/12: fixes from Christer Gustafsson . +% 2003/07/07: substantial revisions by karl. +% 2002/05/25: remove mention of sizes, and bsr-interpolated; add Gutenberg +% 2002/05/18: win32 updates, by Fabrice +% 2002/05/14: corrected example files, other small errors noted by Volker +% 2002/05/13: added tex-langafrican to list of collections +% +\documentclass{article} +\usepackage{tex-live} +% +% +\begin{document} + +\title{{\huge\textsf{\TK{} 2003}}\\[3mm] + The \protect\TeXLive{} Guide} +\date{September 2003} + +\author{Sebastian Rahtz, editor \\[3mm] + \email{tex-live@tug.org}\\ + \url{http://tug.org/texlive/}\\[10mm] +\ifnum \Status=2 + \includegraphics[bb=0 0 824 741]{../pictures/front.jpg} \\[5mm] +\else + \includegraphics[width=.5\linewidth]{../pictures/front} \\[5mm] +\fi + \small \textit{Documentation contacts:}\\[3mm] + \small \begin{tabular}{lcr} + Czech/Slovak & Petr Sojka & \email{sojka@fi.muni.cz} \\ + & Janka Chleb\'\i kov\'a & \email{chlebikj (at) dcs.fmph.uniba.sk} \\ + English & Karl Berry & \email{karl@freefriends.org} \\ + French & Fabrice Popineau & \email{fabrice.popineau@supelec.fr} \\ + German & Volker RW Schaa & \email{volker@dante.de} \\ + Polish & Staszek Wawrykiewicz & \email{staw@gust.org.pl} \\ + Russian & Boris Veytsman & \email{borisv@lk.net} \\ + \end{tabular} + } + +% comes out too close to the toc, and we know it's page one anyway. +\thispagestyle{empty} + +\maketitle +\newpage + +\begin{multicols}{2} +\tableofcontents +\listoftables +\end{multicols} + +\section{Introduction} +\label{sec:intro} + +This document describes the main features of the \TeXLive{} software +distribution\Dash a \TeX{} and \LaTeX{} distribution for Linux and other +Unix flavors, \MacOSX, and (32-bit) Windows systems. (Warning: it is +not especially useful for older Mac or \acro{MS-DOS} systems.) It +includes precompiled binaries for \TeX{}, \LaTeXe{}, \MF, \MP, +\BibTeX{} and many other programs; an extensive collection of +macros, fonts and documentation; and support for typesetting in many +different scripts from around the~world. + +For the 2003 release, the last update of packages and programs was made +on September 3, 2003. For newer versions, please consult \acro{CTAN}, +\url{http://www.ctan.org}. + +For a brief summary of the major changes in this edition of \TeXLive{}, +see section~\ref{sec:history} on p.~\pageref{sec:history}. + + +\subsection{Basic usage of \protect\TeXLive{}} +\label{sec:basic} + +You can use \TeXLive{} in three principal ways: + +\begin{enumerate} + +\item You can run \TeXLive{} directly from the distribution media +(except for the \pkgname{inst} distribution; see +section~\ref{sec:multiple-dist} on p.~\pageref{sec:multiple-dist}). +This takes almost no disk space, as you might expect, and gives you +immediate access to everything in \TeXLive{}. Of course performance +will be worse than running on local disk, but you may well find it +acceptable. + +\item You can install all or part of \TeXLive{} to a local disk. This +is the most common use of \TeXLive. You will need a minimum of 120 +megabytes, 360 megabytes for a recommended system, and 800 megabytes for +a full system. + +\item You can integrate a particular package or collection into your +existing \TeX{} system, either a \TeXLive{} system you installed earlier +or a different system. + +\end{enumerate} + +\noindent All of these are described in detail in the \acro{OS}-specific +installation sections. + + +\subsection{Getting help} +\label{sec:help} + +The \TeX{} community is both active and friendly, and virtually all +serious questions end up getting answered. However, the support is +informal, done by volunteers and casual readers, so it's especially +important that you do your homework before asking. (If you prefer +commercial-style support, you can forego \TeXLive{} completely and +purchase a vendor's system; see +\url{http://tug.org/interest.html#vendors} for a list.) + +Here is a list of resources, approximately in the order we recommend +using them: + +\begin{description} +\item [\TeX{} \acro{FAQ}] The \TeX{} \acro{FAQ} is a huge compendium of +answers to all sorts of questions, from the most basic to the most +arcane. It is included on \TeXLive{} in \OnCD{FAQ/english}, and is +available on the Internet through \url{http://faq.tug.org}. Please +check here first. + +\item [\TeX{} Catalogue] If you are specifically looking for a package, +font, program, etc., the \TeX{} Catalogue is the place to look. It is a +huge list of all \TeX{}-related items. See +\OnCD{texmf/doc/html/catalogue}, or +\url{http://www.ctan.org/tex-archive/help/Catalogue/catalogue.html}. + +\item [\TeX{} Web Resources] This web page has many \TeX{}-related +links, in particular for numerous books, manuals, and articles on all +aspects of the system: \url{http://tug.org/interest.html}. + +\item [support archives] The two principal forums for support are the +Usenet newsgroup \url{news:comp.text.tex} and the mailing list +\email{texhax@tug.org}. So, their archives have thousands of past +questions and answers for your searching pleasure. See +\url{http://groups.google.com/groups?group=comp.text.tex} and +\url{http://tug.org/mail-archives/texhax}, respectively. A query on a +general web search engine, such as \url{http://google.com}, never hurts. + +\item [posting questions] If you cannot find an answer, you can post to +\dirname{comp.text.tex} through Google or your newsreader, or through +email to \email{texhax@tug.org}. But before you post, \emph{please} +read this \acro{FAQ} entry for advice on asking questions in such a way +that you're most likely to get an answer: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + +\item [\TeXLive{} support] If you want to report a bug or have +suggestions or comments on the \TeXLive{} distribution, installation, or +documentation, the mailing list is \email{tex-live@tug.org}. However, +if your question is about how to use a particular program included in +\TeXLive{}, you are better off writing to that program's maintainer or +mailing list. + +\end{description} + +The other side of the coin is helping others who have questions. Both +\dirname{comp.text.tex} and \code{texhax} are open to anyone, so feel +free to join, start reading, and help out where you can. Welcome to +\TeX{}! + + +\section{Structure of \protect\TeXLive} +\label{sec:struct-tl} + +The main two installation scripts for Unix and \MacOSX{} are +\texttt{install-tl.sh} and \texttt{install-pkg.sh}. We discuss them +in section \ref{sec:unix-install} on p.~\pageref{sec:unix-install}. +Here, we describe the structure and contents of \TeXLive{}. + + +\subsection{Multiple distributions: \protect\pkgname{live}, + \protect\pkgname{inst}, \protect\pkgname{demo}} +\label{sec:multiple-dist} + +As of 2003, space limitations of \acro{CD-ROM} format have forced us to +divide \TeXLive{} into three distributions, as follows. + +\begin{description} + +\item [live] a complete, runnable system on \acro{DVD}; it is too large +for \acro{CD-ROM}. (The \DVD{} also includes a snapshot of the \CTAN{} +repository, completely independent of \TeXLive{}.) + +\item [inst(allable)] a complete system on \CD; in order to make it fit, +we had to compress everything we could. Therefore, it is not possible +to run \TeX\ directly from the installable \CD, you have to install it to +disk (hence its name). Installation is described in subsequent sections. + +\item [demo] a live system runnable directly from \CD; in order to make +this fit, we omitted the very large collection of \acro{CJK} (Chinese, +Japanese, Korean) language support, support for typesetting music, some +less-commonly used fonts, and included executables only for Linux, +\MacOSX, and Windows systems. + +\end{description} + +\noindent You can tell which type of distribution you're in by looking +for a \texttt{00\var{type}.TL} file in this top-level directory. + + +\subsection{Top level directories} + +Here is a brief listing and description of the top level directories in +the \TeXLive{} distribution. + +\smallskip +\begin{tabular}{>{\ttfamily}lp{.8\hsize}} +bin & The \TeX{} system programs, arranged by platform. \\ +Books & Examples from some of the books about \TeX\ (see + \filename{Books/README}). \\ +FAQ & Current versions of major FAQ collections. \\ +info & A few manuals in \acro{GNU} Info format, where available. \\ +\MacOSX & Supporting software for \MacOSX (see + section~\ref{sec:mac-install} on p.~\pageref{sec:mac-install}). \\ +man & Unix man pages. \\ +source & The source of all programs, including the main \Webc{} + \TeX{} and \MF{} distributions. These are stored in a + \cmdname{bzip2}-compressed tar archive. \\ +support & assorted auxiliary packages and programs. These are + \emph{not} installed by default. This includes + \cmdname{Ghostscript}, \cmdname{netpbm}, and assorted editors and + \TeX\ shells. \\ +texmf & root of installed packages, fonts, config files, etc. \\ +usergrps & Material about a few of the \TeX\ user groups. (Visit + \url{http://tug.org/usergroups.html} for a current list.) \\ +xemtex & The \cmdname{XEmacs} editor and other support programs for + Windows (see section~\ref{sec:win-xemtex} on p.~\pageref{sec:win-xemtex}). + These programs generally come pre-installed on Unix systems, or are + at least easy to compile. \\ +\end{tabular} + + +\subsection{Extensions to \TeX} +\label{sec:tex-extensions} + +\TeXLive{} contains three extended versions of \TeX: + +\begin{description} + +\item [\eTeX] adds a small but powerful set of new primitives +\label{text:etex} +(related to macro expansion, character scanning, classes of marks, +additional debugging features, and more) and the \TeXXeT{} extensions +for bidirectional typesetting. In default mode, \eTeX{} is 100\% +compatible with ordinary \TeX. See +\OnCD{texmf/doc/etex/base/etex_man.pdf}. \eTeX{} is now the default for +\LaTeX{} and pdf\LaTeX{}. + +\item [pdf\TeX] writes Acrobat PDF format as well as \dvi{}. The +\LaTeX{} \pkgname{hyperref} package has an option `\optname{pdftex}' +which turns on all the program features. See +\OnCD{texmf/doc/pdftex/pdftex-l.pdf} and +\OnCD{texmf/doc/pdftex/base/example.tex}. + +\item [\OMEGA\ (Omega)] based on Unicode (16-bit characters), thus +supports working with almost all the world's scripts simultaneously. It +also supports so-called `\OMEGA{} Translation Processes' (\acro{OTP}s), +for performing complex transformations on arbitrary input. See +\OnCD{texmf/doc/omega/base/doc-1.8.tex} (not completely up-to-date). + +\end{description} + + +\subsection{Other notable programs in \protect\TeXLive} + +Here are a few other commonly-used programs included in \TeXLive{}: + +\begin{cmddescription} + +\item [bibtex] bibliography support. + +\item [makeindex] index support. + +\item [dvips] convert \dvi{} to \PS{}. + +\item [xdvi] \dvi{} previewer for the X Window System. + +\item [dvilj] HP LaserJet driver. + +\item [dv2dt, dt2dv] convert \dvi{} to/from plain text. + +\item [dviconcat, dviselect] cut and paste pages +from \dvi{} files. + +\item [dvipdfm] convert \dvi{} to PDF, an alternative approach +to pdf\TeX\ (mentioned above). See the \pkgname{ps4pdf} and +\pkgname{pdftricks} packages for still more alternatives. + +\item [psselect, psnup, \ldots] \PS{} +utilities. + +\item [lacheck] \LaTeX{} syntax checker. + +\item [texexec] Con\TeX{}t and PDF processor. + +\item [tex4ht] \TeX{} to HTML converter. + +\end{cmddescription} + + +\section{Unix installation} +\label{sec:unix-install} + +As introduced in section~\ref{sec:basic} on p.~\pageref{sec:basic}, +\TeXLive{} has three principal uses: + +\begin{enumerate} +\item Run directly from media. +\item Install to disk. +\item Integrate a particular package or collection into your existing +\TeX{} installation. +\end{enumerate} + +\noindent The following sections describes the Unix-specific procedures +for each of these. + +\ifSingleColumn \begin{figure}[ht]\noindent \fi +\begin{warningbox} +\textbf{Warning: } The \TK{} \CD{}s and \DVD{} are in ISO 9660 (High Sierra) +format, \emph{with} Rock Ridge (and Joliet, for Windows) +extensions. Therefore, in order to take full advantage of the \TK{} +under Unix, your system needs to be able to use the Rock Ridge +extensions. Please consult the documentation for your \cmdname{mount} +command to see how to do this. If you have several different machines +on a local network, you may be able to mount the \CD{}s on one which +does support Rock Ridge, and use this with the others. + +\leavevmode\quad Linux, Free\acro{BSD}, Sun, \acro{SGI} and +Alpha systems should be able to use the \CD{}s without problems. We +would appreciate receiving detailed advice from users on other systems +who succeed, for future versions of this documentation. + +\leavevmode\quad +The discussion below assumes you have been able to mount +the \CD{}s with full Rock Ridge compatibility. +\end{warningbox} +\ifSingleColumn\end{figure}\fi + + +% +\subsection{Running \protect\TeXLive{} directly from media (Unix)} + +\def\runlive{% text repeated in windows section +It is possible to use the \TeX{} system directly from the \pkgname{demo} +\CD{} or the \pkgname{live} \DVD{}, without installing the distribution +to disk. (Thus the name `\TeXLive', in fact.) It is \emph{not} +possible to run \TeX{} directly from the \pkgname{inst} \CD (see +section~\ref{sec:multiple-dist} on p.~\pageref{sec:multiple-dist}). +} + +Only Linux, \MacOSX, and Windows binaries are included on the demo \CD; +if you want to run live on other Unix systems, you'll need to use the +\DVD. + +\def\startinst{% repeated in other subsections +To start, we must mount the \CD{} or \DVD{}, with Rock Ridge extensions +enabled. The exact command to do this varies from system to system; the +following works under Linux, except the name of the device +(\filename{/dev/cdrom}, here) may vary. (All our examples will use +\texttt{>} as the shell prompt; user input is \underline{underlined}.) +\begin{alltt} +> \Ucom{mount -t iso9660 /dev/cdrom /mnt/cdrom} +\end{alltt} + +\noindent Change the current directory to the mount point: +\begin{alltt} +> \Ucom{cd /mnt/cdrom} +\end{alltt} + +\noindent Under \MacOSX, the directory is typically under +\dirname{/Volumes}, and the media will be mounted automatically. +} + +\startinst + +Run the installation script \filename{install-tl.sh}: +\begin{alltt} +> \Ucom{sh install-tl.sh} +Welcome to TeX Live... +\end{alltt} + +\def\firstinstcommand{% +\noindent After various greeting messages and a list of the main menu +options, the installation will ask you to enter a command. Do this by +typing the desired character and hitting return; don't type the angle +brackets. Either uppercase or lowercase is ok; we'll use lowercase in +our examples. +} +\firstinstcommand + +For running live, our first command will be \Ucom{d} and then the +subcommand \Ucom{1} to set directories. Even in this case, we must +choose a directory on the local disk to place files that the \TeX{} +system itself generates, such as fonts and formats, and also to provide +a place for updated configuration files, if need be. We'll use +\dirname{/usr/local/texmf-local} in this example. (If the default value +of \dirname{/usr/TeX} works for you, then you can skip this step.) +\begin{alltt} +Enter command: \Ucom{d} +Current directories setup: +<1> TEXDIR: /usr/TeX +... +Enter command: \Ucom{1} +New value for TEXDIR [/usr/TeX]: \Ucom{/usr/local/texmf-local} +... +Enter command: \Ucom{r} +\end{alltt} + +\noindent Back at the main menu, our second and last command is +\Ucom{r}, to set up for running live off the media without installing +to disk: +\begin{alltt} +Enter command: \Ucom{r} +Preparing destination directories... +... +Welcome to the TeX Live system! +> +\end{alltt} + +\noindent And we are back at the system prompt, as shown. + +Next, it is necessary to alter two environment variables: +\envname{PATH}, to an architecture-dependent value (so that we can run +the programs), and \envname{VARTEXMF}, to the value specified above. See +table~\ref{tab:archlist} for a list of the architecture names for the +different systems, and whether they are available on the \pkgname{demo} +\CD. All systems are available in the \pkgname{inst} and \pkgname{live} +distributions. (In addition to the version-specific names listed here, +there are generic names without the version numbers. For instance, +\dirname{sparc-solaris} links to \dirname{sparc-solaris2.7}. The +generic names can be used to protect against the version numbers +changing in the future, if you wish.) + +\def\runtexconfig{% +After the main installation has completed, and environment variables +have been set, the next step is to run \cmdname{texconfig} to customize +your installation for your needs. This is explained in +section~\ref{sec:texconfig}, p.~\pageref{sec:texconfig}. +} +\runtexconfig + +\begin{table*}[ht] +\caption{Supported system architectures.} +\label{tab:archlist} +\begin{tabular}{>{\ttfamily}lll} +alpha-linux & HP Alpha Linux & \\ +alphaev5-osf4.0d & HP Alphaev5 OSF & \\ +%hppa2.0-hpux10.20 & HP9000 HPUX 10.20 & \\ +i386-freebsd4.8 & Intel x86 FreeBSD & \\ +i386-linux & Intel x86 GNU/Linux & demo \CD\\ +i386-openbsd3.3 & Intel x86 OpenBSD & \\ +i386-solaris2.8 & Intel x86 Solaris & \\ +mips-irix6.5 & SGI IRIX & \\ +powerpc-aix4.3.3.0 & IBM RS/6000 AIX & \\ +powerpc-darwin6.3 & \MacOSX & demo \CD\\ +sparc-solaris2.7 & Sun Sparc Solaris & \\ +sparc64-linux & Sun Sparc Linux & \\ +win32 & Windows (32-bit) & demo \CD\\ +\hline +\end{tabular} +\end{table*} + +\label{text:path} +The syntax for setting the environment variables, and the initialization +file to put them in, depends on the shell you use. If you use a +Bourne-compatible shell (\cmdname{sh}, \cmdname{bash}, \cmdname{ksh}, et +al.), put the following into your \filename{$HOME/.profile} file: +\begin{alltt} +PATH=/mnt/cdrom/bin/\Ucom{\emph{archname}}:$PATH; export PATH +VARTEXMF=/usr/local/texmf-local/texmf-var; export VARTEXMF +\end{alltt} + +\noindent For C shell-compatible shells (csh, tcsh), put the following +into your \filename{$HOME/.cshrc} file: +\begin{alltt} +setenv PATH /mnt/cdrom/bin/\Ucom{\emph{archname}}:$PATH +setenv VARTEXMF /usr/local/texmf-local/texmf-var +\end{alltt} + +\def\donewithinst{% +\noindent Then log out, log back in, and test your installation +(see section~\ref{sec:test-install} on p.~\pageref{sec:test-install}). +} +\donewithinst + +\def\ifindoubt{% +If in doubt, please ask any local system gurus to help you with +problems; for example, the way to mount the \TeXLive{} media, which +directory or directories to use, and precise details of the changes to +your personal initialization files can and do vary from site to site. +} +\ifindoubt + + +% +\subsection{Installing \protect\TeXLive{} to disk} +\label{sec:unix-install-disk} + +It is possible, indeed typical, to install the \TeX{} system from the +\TeXLive{} to disk. This can be done either from the \pkgname{live} +\DVD, or the \pkgname{inst} \CD. It can also be done from the +\pkgname{demo} \CD, if you don't need the omitted packages or systems. +(See section~\ref{sec:multiple-dist} on p.~\pageref{sec:multiple-dist} +for an explanation of the different distributions.) + +\startinst + +Run the installation script \filename{install-tl.sh}: +\begin{alltt} +> \Ucom{sh install-tl.sh} +Welcome to TeX Live... +\end{alltt} + +\firstinstcommand + +Here is an introductory list of the options in the main menu. The order +in which you select the options makes little difference, except that +\Ucom{i} must be last. It's reasonable to go through them in the +order presented~here. + +% apparently here.sty [H] doesn't support table*. +\begin{table}[H] +\caption{Main menu options for the installation.} +\label{tab:main-menu-options} +\begin{tabular}{>{\ttfamily}ll} +p & The system you are running on.\\ +b & The architectures to install binaries for.\\ +s & The base installation scheme to use (minimal, recommended, + full, etc.)\\ +c & Override the installation scheme for individual collections.\\ +l & Override for language collections.\\ +d & Directories in which to install.\\ +o & General options.\\ +i & Perform the installation.\\ +\end{tabular} +\end{table} + +Here are further details on each option. + +\textbf{\optname{p} -- Current platform.} Since the installation script +automatically guesses which platform you're running on, this is +generally unnecessary to override. It's there in case the automatic +detection fails. + +\textbf{\optname{b} -- Binary architectures.} By default, only the +binaries for your current platform will be installed. From this menu, +you can select installation of binaries for other architectures as well +(or not install the current platforms). This is often useful if you +are sharing a \TeX\ tree across a network of heterogenous machines. For +a list of the supported architectures, see table~\ref{tab:archlist}, +p.~\pageref{tab:archlist}. + +\textbf{\optname{s} -- Base installation scheme.} From this menu, you +can choose an overall common set of packages. The default is a +recommended set for typical needs, but you can also choose a basic set +to conserve disk space, or a full set to get absolutely everything. The +\pkgname{Live} scheme is used for creating the \TeXLive{} +\pkgname{demo} distribution itself, and isn't generally useful to select +for a particular site. There are also specific sets for Omega and +\acro{XML} users. + +\textbf{\optname{c} -- Individual collections.} From this menu, you can +override the basic scheme's choice of which collections to install. +Each collection\Dash TeX macro files, Metafont font families, and so +on\Dash consists of several packages. In this menu, selection letters +are case-sensitive. + +\textbf{\optname{l} -- Language collections}. This menu has the same +basic functionality as \Ucom{c}, to override collection choices. In +this case, the collections are specifically for different languages. +Selection letters are case-sensitive here. Here is a list of the +language collections in \TeXLive: + +% xx really should generate list from texmf/tpm/collection/tex-lang* +% a la install-tl.sh. +\begin{tabbing} +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \kill + (some) African scripts \> + Armenian \> + Chinese,Japanese,Korean \> +Croatian \\ + Cyrillic \> + Czech/Slovak \> + Danish \> +Dutch \\ + Finnish \> + French \> + German \> +Greek \\ + Hungarian \> + Indic \> + Italian \> +Latin \\ + Manju \> + Mongolian \> + Norwegian \> +Polish \\ + Portuguese \> + Spanish \> + Swedish \> +Tibetan \\ + \acro{UK} English \> +Vietnamese \\ +\end{tabbing} + +\noindent Language collections typically includes fonts, macros, +hyphenation patterns, and other support files. (For instance, +\pkgname{frenchle.sty} is installed if you select the \optname{French} +collection.) In addition, installing a language collection will alter +the \filename{language.dat} configuration file controlling which +hyphenations are loaded. + +\textbf{\optname{d} -- Installation directories}. Three directories can +be changed here: +\label{text:instdir} + +\begin{ttdescription} +\item [TEXDIR] By default, the top-level directory under which +everything else will be installed. The default value is +\dirname{/usr/TeX}, and is often changed. For example, changing to a +value such as \dirname{/usr/local/texlive2003} would make it possible to +keep different releases of \TeXLive{} separate. You may then wish to +make \dirname{/usr/local/texlive} a symbolic link, after testing the new +release. + +Under \MacOSX, the usual frontends look for \TeX{} in +\dirname{/usr/local/teTeX}, so you may wish to install \TeXLive{} there. + +\item [TEXMFLOCAL] This tree is where the \TeX{} system scripts install +non-version-specific files, primarily fonts. The default value is +\dirname{TEXDIR/texmf-local}. It's also the recommended location to put +any local packages or configuration settings. Therefore, it's desirable +to change it to a location independent of the current \TeXLive{} +release; for example, \dirname{/usr/local/texmf-local}. + +\item [VARTEXMF] This tree is where the scripts install files that +\emph{are} version-specific, primarily format files and the +configuration files which are modified by \cmdname{texconfig} (see +section~\ref{sec:texconfig}, p.~\pageref{sec:texconfig}). The default +value is \dirname{TEXDIR/texmf-var}, and there's generally no reason to +change it. + +\end{ttdescription} + +\textbf{\optname{o} - General options.} From this menu, you can select +three general options affecting the installation: + +\begin{ttdescription} +\item [a] Specify an alternate directory for generated fonts. +The default is to use the \envname{VARTEXMF} tree, as explained above. +Setting this is useful if you plan to mount the main tree read-only, and +therefore another location (perhaps machine-specific) must be used for +dynamically created fonts. + +\item [l] Create symbolic links for the binaries, man pages, +and/or \acro{GNU} Info files in other locations. For example, you may +wish to make the man pages available under \dirname{/usr/local/man} and +the Info files available under \dirname{/usr/local/info}. (Of course +you need appropriate privileges to write in the specified directories.) + +\item [d] Skip installation of the font/macro documentation tree. +This is useful to save space, or if you've previously installed the +documentation elsewhere. + +\item [s] Skip installation of the main font/macro source +tree. This is useful if you are arranging to share that tree between +machines and/or architectures in some other way, such as \acro{NFS} or +\cmdname{automount}. + +\end{ttdescription} + +\textbf{i - Perform installation.} When you're satisfied with your +configuration options, enter \Ucom{i} to actually do the installation +from the media to your chosen locations. + +The last step is to include the architecture-specific subdirectory of +\dirname{TEXDIR/bin} in your +\envname{PATH}, so the newly-installed programs can be found. The +architecture names are listed in table~\ref{tab:archlist}, +p.~\pageref{tab:archlist}, or you can simply list the directory +\dirname{TEXDIR/bin}. + +The syntax for doing this, and the initialization file to put it in, +depends on the shell you use. If you use a Bourne-compatible shell +(\cmdname{sh}, \cmdname{bash}, \cmdname{ksh}, et al.), put the following +into your \filename{$HOME/.profile} file: +\begin{alltt} +PATH=/\Ucom{\emph{TEXDIR}}/bin/\Ucom{\emph{archname}}:$PATH; export PATH +\end{alltt} + +\noindent For C shell-compatible shells (\cmdname{csh}, \cmdname{tcsh}), +put the following into your \filename{$HOME/.cshrc} file: +\begin{alltt} +setenv PATH /\Ucom{\emph{TEXDIR}}/bin/\Ucom{\emph{archname}}:$PATH +\end{alltt} + +\runtexconfig + +Here is a brief annotated example which selects a full installation, +with binaries for the current system only, with directory changes as +recommended above. The prompts and \acro{RETURN} keys are omitted for +brevity. + +\begin{alltt} +> \Ucom{sh install-tl.sh} +\Ucom{s} \Ucom{b} \Ucom{r} # scheme, full, return to main +\Ucom{d} # change directories +\Ucom{1} \Ucom{/usr/local/texlive2003} # top-level dir +\Ucom{2} \Ucom{/usr/local/texmf-local} # TEXMFLOCAL outside TEXDIR +\Ucom{r} # return to main +\Ucom{i} # perform installation +> \Ucom{texconfig} ... +# New PATH, assuming Linux: +> \Ucom{PATH=/usr/local/texlive2003/bin/i386-linux:$PATH; export PATH} +\end{alltt} + +\ifindoubt + + +% +\subsection{Installing individual packages to disk} + +You can add individual packages or collections from the current +distribution to an existing non-\TeXLive{} setup, or an earlier +\TeXLive{} installation. You can do this from the \pkgname{demo} \CD{} +or the \pkgname{live} \DVD{}, but \emph{not} from the \pkgname{inst} +\CD. (See section~\ref{sec:multiple-dist} on +p.~\pageref{sec:multiple-dist}.) + +\startinst + +Run the installation script \filename{install-pkg.sh} (not +\filename{install-tl.sh}, which is intended for complete installations +only): +\begin{alltt} +> \Ucom{sh install-pkg.sh \emph{options}} +\end{alltt} + +This first set of options controls what gets read: + +\begin{ttdescription} +\item [-{}-package=\emph{pkgname}] The individual package to work on. + +\item [-{}-collection=\emph{colname}] The individual collection to work on. + +\item [-{}-nodoc] Exclude documentation files from the operation. + +\item [-{}-nosrc] Exclude source files from the operation. + +\item [-{}-cddir=\emph{dir}] Source directory to read from; defaults +to the current directory. If you followed the instructions above, that +will be the distribution directory, and won't need to be changed. + +\item [-{}-listdir=\emph{dir}] The so-called `lists' directory within +\emph{cddir} from which to read the package information. The default is +\texttt{\emph{cddir}/texmf/tpm/lists}; the only reason to change it is +if you're making changes to \TeXLive{} yourself. + +\end{ttdescription} + +What actually happens is controlled by the following options. If +neither of these are specified, the default action is to install the +selected files. The main destination tree is found by expanding +\envname{\$TEXMFMAIN} with \cmdname{kpsewhich}. You can override it by +setting either the environment variable \envname{TEXMFMAIN} or +\envname{TEXMF}. + +\begin{ttdescription} +\item [-{}-listonly] List the files that would be installed, but don't +actually install anything. + +\item [-{}-archive=\emph{tarfile}] Instead of installing the files into +the \TeX{} system, make a \cmdname{tar} archive. + +\end{ttdescription} + +Additional options: + +\begin{ttdescription} + +\item [-{}-config] After installation, run \code{texconfig init}. + +\item [-{}-nohash] After installation, don't run \cmdname{mktexlsr} to +rebuild the filename database. + +\item [-{}-verbose] Give more information as the script runs. + +\end{ttdescription} + +Here are some usage examples: + +\begin{enumerate} + +\item To see the files in the package \pkgname{fancyhdr} without +installing it: + +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=fancyhdr --listonly} +\else> \Ucom{sh install-pkg.sh --package=fancyhdr \bs} +> \Ucom{--listonly} +\fi{} +texmf/doc/latex/fancyhdr/README +texmf/doc/latex/fancyhdr/fancyhdr.dvi +texmf/doc/latex/fancyhdr/fancyhdr.pdf +... +\end{alltt} + +\item Install the \LaTeX{} package \pkgname{natbib}: +\begin{alltt} +> \Ucom{sh install-pkg.sh --package=natbib} +\end{alltt} + +\item Install the \LaTeX{} package \pkgname{alg} without source files or +documentation: +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=alg --nosrc --nodoc} +\else> \Ucom{sh install-pkg.sh -{}-package=alg \bs} +> \Ucom{-{}-nosrc -{}-nodoc} +\fi\end{alltt} + +\item Install all the packages in the collection of additional +plain \TeX\ macros: +\begin{alltt} +> \Ucom{sh install-pkg.sh --collection=tex-plainextra} +\end{alltt} + +\item Write all files in the \pkgname{pstricks} package to a +\cmdname{tar} file in \path|/tmp|: +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=pstricks --archive=/tmp/pstricks.tar} +\else +> \Ucom{sh install-pkg.sh -{}-package=pstricks \bs} +> \Ucom{-{}-archive=/tmp/pstricks.tar} +\fi\end{alltt} + +\end{enumerate} + +\ifindoubt + + +% +\section{Post-installation} +\label{sec:postinstall} + +After the main installation is done, for any operating system, the +remaining steps are to configure the system for your local needs, and +perform some basic tests. + +Another sort of post-installation is to acquire packages, fonts, or +programs that were not included in \TeXLive{}. The basic idea is to +install such additions in the \envname{TEXMFLOCAL} tree (if you +installed to disk), or \envname{VARTEXMF} (if you are running live). +See ``Installation directories'' on p.~\pageref{text:instdir}. + +Unfortunately, the details can vary widely, and so we do not attempt to +address them here. Please see +\url{http://www.ctan.org/tex-archive/info/beginlatex/html/chapter5.html#pkginst} +for a good description, and +\url{http://www.ctan.org/tex-archive/info/Type1fonts} for font creation +and installation information in particular. + + +\subsection{The \protect\cmdname{texconfig} program} +\label{sec:texconfig} + +At any time after installation, you can and should use the program +\cmdname{texconfig} to configure the system to fit your local needs. It +is installed in the architecture-specific subdirectory +\texttt{TEXDIR/bin/\emph{arch}} along with everything else. + +If you run it without arguments, it will enter full-screen mode and +allow you to view and change options interactively. + +You can also run it with various command-line options. Here are some of +the most commonly used: + +\begin{ttdescription} + +\item [texconfig dvips paper letter] Set default paper size for +\cmdname{dvips} to be letter-size. + +\item [texconfig xdvi us] Likewise, for \cmdname{xdvi}. + +\item [texconfig rehash] Update all the \TeX{} system filename databases. + +\item [texconfig faq] Show the \teTeX{} \acro{FAQ}. +(See also the main \TeX{} \acro{FAQ} in the \dirname{FAQ} subdirectory +of \TeXLive.) + +\item [texconfig help] Output help information. + +\end{ttdescription} + +Of course, \cmdname{texconfig} only supports changing a few of the many +options and configuration parameters in a \TeX{} system. The main +configuration file for the base \Webc{} programs is named +\filename{texmf.cnf}. You can find its location by running +\samp{kpsewhich texmf.cnf}; it contains many comments explaining the +default settings and useful alternatives. + + +\subsection{Testing the installation} +\label{sec:test-install} + +After installing \TeXLive{} as best you can, you naturally want to test +it out, so you can start creating beautiful documents and/or fonts. + +This section gives some basic procedures for testing that the new system +is functional. We described the Unix commands; under \MacOSX{} and +Windows, you're more likely to run the tests through a graphical +interface, but the principles are the same. + +\begin{enumerate} + +\item Make sure that you can run the \cmdname{tex} program in the first +place: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX (Web2c 7.5.2) 3.141592 +kpathsea version 3.5.2 +Copyright (C) 1997-2003 D.E. Knuth. +... +\end{alltt} +If this comes back with `command not found' instead of version and +copyright information, most likely you don't have the correct +\dirname{bin} subdirectory in your \envname{PATH}. See +the environment-setting information on p.~\pageref{text:path}. + +\item Process a basic \LaTeX{} file: +\begin{alltt} +> \Ucom{latex sample2e.tex} +>TeX (Web2c 7.5.2) 3.141592 +... +Output written on sample2e.dvi (3 pages, 7256 bytes). +Transcript written on sample2e.log. +\end{alltt} +If this fails to find \filename{sample2e.tex} or other files, perhaps +you have interference from old environment variables or configuration +files. For a deep analysis, you can always ask \TeX{} to report on +exactly what it is searching for, and finding; see ``Debugging actions'' +on page~\pageref{Debugging}. + +\item Preview the result online: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} +\end{alltt} +Under Windows, the analogous command is \cmdname{windvi}. You should +see a new window with a nice document explaining some of the basics of +\LaTeX{}. (Well worth reading, if you're new to the system.) You do +have to be running under X for \cmdname{xdvi} to work; if you're not, or +your \envname{DISPLAY} environment variable is set incorrectly, you'll +get an error \samp{Can't open display}. + +\item Create a \PS{} file for printing or display: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Create a \acro{PDF} file instead of \dvi{}; this processes the +\filename{.tex} file and writes \acro{PDF} directly: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Preview the \acro{PDF} file: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Unfortunately neither \cmdname{gv} nor \cmdname{xpdf} are currently +included in \TeXLive{}, so you must install them separately. See +\url{http://wwwthep.physik.uni-mainz.de/~plass/gv} and +\url{http://www.foolabs.com/xpdf}, respectively. + +\item Other standard test files you may find useful: + +\begin{ttdescription} +\item [docstrip.tex] Produce \TeX{} source or documentation from a +\samp{.dtx} file. +\item [small2e.tex] A simpler document than \filename{sample2e}, to +reduce the input size if you're having troubles. +\item [testpage.tex] Test if your printer introduces any offsets. +\item [nfssfont.tex] For printing font tables and tests. +\item [testfont.tex] Also for font tables, but using plain \TeX{}. +\item [story.tex] The most canonical (plain) \TeX{} test file of all. +You must type \samp{\bs bye} to the \code{*} prompt after \samp{tex +story.tex}. +\end{ttdescription} +You can process these in the same way as we did with +\filename{sample2e.tex}. + +\end{enumerate} + +If you are new to \TeX{}, or otherwise need help with actually +constructing \TeX{} or \LaTeX{} documents, please visit +\url{http://tug.org/begin.html}. We especially recommend the +\textsl{Formatting Information} manual by Peter Flynn, available at +\url{http://www.ctan.org/tex-archive/documentation/beginlatex}. + + +\section{\MacOSX{} installation} +\label{sec:mac-install} + +\TeXLive{} supports \MacOSX, but no prior Macintosh versions. (If you +are running an older Mac version, you can view the files by installing +the Joliet system extension available from +\url{http://www.tempel.org/joliet}; however, the \TeXLive{} binaries +will not run.) + +Installation of \TeX{} under \MacOSX{} can be done in two ways: + +\begin{enumerate} +\item With the \filename{install*} scripts, as with Unix. +\item With the \cmdname{i-Installer} included in +\filename{MacOSX/II2.dmg}. +\end{enumerate} + +\noindent Each of these is described in a following section. + +In addition, typical use of \TeX{} under \MacOSX\ goes through a +\emph{frontend}. This is also described below. + + +\subsection{\protect\cmdname{i-Installer}: Internet installation} +\label{sec:i-Installer} + +The \cmdname{i-Installer} is included in the \TeXLive{} distribution as +an alternative to normal installation. It does not use the contents of +the \TeXLive{} distribution at all; instead, the system (approximately +70 megabytes) is downloaded over the Internet. + +One advantage of \cmdname{i-Installer} is that it makes updates +relatively painless. If you are interested, please see the +\cmdname{i-Installer} \TeX{} home page at \url{http://www.rna.nl/tex.html}. + +To use it, mount \filename{./MacOSX/II2.dmg}. Read the documentation, +launch it, and install at least \emph{TeX Foundation} and \emph{TeX +Programs}. The first will finish without configuration, as soon as the +second is installed you will be presented with a graphical interface to +setting up your \TeX{} system. + +The \cmdname{i-Installer} distribution uses the \teTeX{} \dirname{texmf} +tree with some additions. Due to differences between \TeXLive{} and +\teTeX{} you cannot update a \TeXLive{} installation with an +\cmdname{i-Installer} \emph{TeX Programs} i-Package. + + +\subsection{\protect\cmdname{install*.sh}: \protect\TeXLive{} installation} + +In order to run the installation scripts under \MacOSX, you need to have +the \cmdname{bash} shell installed. If you are running \MacOSX~10.2 +or later, you have \cmdname{bash}, and can proceed. If you're running +an earlier \MacOSX{} version, however, the default shell is +\cmdname{zsh}, which won't work; please see the +subsection~\ref{sec:mac-bash} (p.~\pageref{sec:mac-bash}) below for +instructions on installing bash \cmdname{bash}. + +Once you have \cmdname{bash}, the Unix installation documentation in the +previous section can be followed. See section~\ref{sec:unix-install} on +p.~\pageref{sec:unix-install}; \MacOSX-specific notes are included where +needed. + + +\subsection{\MacOSX{} frontends} + +Using \TeX{} on a Macintosh typically goes through a front end program, +comprising an execution shell, editor, previewer, and other facilities. +Here are the principal frontends: + +\begin{cmddescription} +\item [TeXShop] Included in \TeXLive{} as +\filename{./MacOSX/texshop.dmg}. See +\url{http://www.uoregon.edu/~koch/texshop/texshop.html}. + +\item [ITeXMac] Included in \TeXLive{} as +\filename{./MacOSX/iTeXMac-*.dmg}. See +\url{http://itexmac.sourceforge.net}. + +\item [Mac-emacs] A port of Emacs to \MacOSX{}, integrating +\pkgname{AucTeX}. See \url{http://www.cs.man.ac.uk/~franconi/mac-emacs}. + +\end{cmddescription} + +The frontends use \dirname{/usr/local/teTeX} as the default location; +therefore, you must either install \TeXLive{} there, or change the +configuration of the frontend. + + +\subsection{\cmdname{bash} installation for older \MacOSX{} versions} +\label{sec:mac-bash} + +\MacOSX{} versions 10.1 and earlier do not include \cmdname{bash} by +default, and the default shell does not run the \TeXLive{} installation +scripts properly. This section explains how to install \cmdname{bash}. + +First, check if bash is already installed. `Launch Terminal' +(\filename{/Applications/utilities/Terminal}) and type \code{rehash; +which bash}. If the answer is a filename (for example, +\code{/bin/bash}), then \cmdname{bash} is already installed, and you're done +here; go back to the main installation instructions. +If the answer is \code{bash: command not found}, proceed here. + +There are two ways to install \cmdname{bash} if you need it\Dash via the +\acro{GUI} or via command line. + +To install via \acro{GUI}, double-click the \filename{MacOSX/bash.dmg} +file in \TeXLive{}. The disk image (volume) will be mounted. Then +start the \cmdname{i-Installer} application on that volume. You will be +asked to authenticate; if you have never seen that before, you might not +have enough privileges to install. Just enter your own user name and +password. Hit install. Bash will be installed on your system. + +To install via command line: +\begin{enumerate} +\item ensure you have admin privileges: log in as the +\code{admin} user, the System Administrator, a user with Admin +privileges, using \cmdname{sudo}, etc. + +\item copy \filename{MacOSX/bash.tar.gz} from the \TeXLive{} +distribution to your home directory. + +\item Launch Terminal, and run: +\begin{alltt} +(cd /usr/local/; sudo tar xvzf ~/bash.tar.gz) +\end{alltt} +You'll be asked for your password, and then \cmdname{bash} will be +installed. + +\item Quit Terminal. + +\end{enumerate} + +After using either installation method, be sure to recheck that +\cmdname{bash} is installed with \code{rehash; which bash} in a new +Terminal window. + + +\section{Windows installation} +\label{sec:win-install} + +\TeXLive{} can be installed on systems running Windows 9x, \acro{ME}, +\acro{NT}, \acro{2K} or \acro{XP}. Older versions of Windows (3.1x) +and \acro{MS-DOS} are not supported. + +It is necessary to have your Windows set up so that it uses the +Microsoft Joliet extensions for reading \CD{}s; simply look at the \CD{} +in Explorer and see whether it shows long, mixed-case, file names. If it +does not, you must install the Joliet extensions. + +The Windows \TeX{} system included in \TeXLive{} is no more and no less +than the \fpTeX{} distribution. It includes a \texttt{dvi} previewer, +\textsf{Windvi}, which is similar in usage to the established Unix +\textsf{xdvi}. The documentation can be found in +\OnCD{texmf/doc/html/windvi/windvi.html}. + +\subsection{The \texttt{TeXLive.exe} program} + +\begin{figure*} + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.7\textwidth]{../pictures/Welcome-to-TeXLive} + \else + \ifnum \Status=2 + \includegraphics[bb=0 0 551 534]{../pictures/Welcome-to-TeXLive.jpg} + \else + \includegraphics[width=.7\textwidth]{../pictures/Welcome-to-TeXLive} + \fi + \fi + \end{center} + \caption{``Welcome to \TeXLive'' window}\label{graph:welcome} +\end{figure*} + +If your computer is configured to let the \CD{} autostart, then a dialog +box with a menu bar will popup on the screen, and you will have several +choices from there: + +\begin{itemize} +\item Install \TeX{} on your hard disk +\item Do maintenance on your \TeX{} system. +\item Remove the \TeX{} system. +\item Use \TeX{} off the \TeXLive{} \CD{} or \DVD{}. +\item Browse documentation: \TeXLive{} documentation, TUG web + pages, \fpTeX web pages. +\item Run the \cmdname{TeXdocTK} application to find specific documentation. +\end{itemize} + +If your \CD{} does not autostart, you can explicitly run the program +by double clicking on \path|bin/win32/TeXLive.exe| on the \CD{} from +the explorer window. + +\subsection{Running \protect\TeXLive{} directly from media (Windows)} + +\runlive + +To run live under Windows, from the menu, chose \verb|Explore CD-Rom|, then +\verb|Run TeX off CD-Rom|. This will launch the \cmdname{XEmacs} editor. + +%% To run live under Windows, do the following: + +%% \begin{enumerate} +%% \item from the menu, chose \verb|Explore CD-Rom|, then +%% \verb|Run TeX off CD-Rom|, that will launch the \cmdname{XEmacs} editor. + +%% This program needs to be a \TeX{} oriented editor. It must be able +%% to run the \TeX{} compiler, previewer and any other needed tool. If +%% you don't have one already installed on your system, you can install +%% one from the \CD{}, details section~{\ref{sec:texlive-install}}. + +%% \emph{There is no way we can guess if the program you will +%% select is actually a text editor, so be careful}. +%% Here is a list of frequently used \TeX{} editors: +%% \begin{center} +%% \begin{tabular}[H]{ll} +%% GNU Emacs & \path|c:\Program Files\NTEmacs\bin\runemacs.exe| \\ +%% XEmacs & \path|c:\Program Files\XEmacs\XEmacs-21.2\i586-pc-win32\xemacs.exe| \\ +%% WinShell & \path|c:\Program Files\WinShell\WinShell.exe| \\ +%% WinEdt & \path|c:\Program Files\WinEdt Team\WinEdt\WinEdt.exe|\\ +%% TeXnicCenter & \path|c:\Program Files\TeXnicCenter\TEXCNTR.exe| +%% \end{tabular} +%% \end{center} +%% The program +%% selected will be memorized as the editor to use for future runs. + +%% \item from the menu, chose \verb|Explore CD-Rom|, then +%% \verb|Run TeX off CD-Rom|. The environment will be modified, a small +%% temporary directory created and some configuration files copied +%% there. Then, the selected editor selected will be launched, and you +%% will be able to type in some text, let \TeX{} typeset it and the +%% view it or print it. + +%% If Ghostscript is not detected on your machine, you will be warned +%% that rendering your DVI files might fail. You can install it from +%% the \path|Install|, \path|Support| menu item. See +%% section~\ref{sec:texlive-install} for details. + +%% \item you can select a different text editor any time you want. + +%% \item if you chose \verb|Cleanup CD-Rom setup|, everything \TeX{} +%% needed will be removed, comprised the selection of your text +%% editor, but not the extra packages you may have downloaded and +%% installed. If you installed \cmdname{WinShell} or \cmdname{NTEmacs}, +%% they won't be removed. +%% \end{enumerate} + +XEmacs startup file will set the environment variables needed. XEmacs will also +setup a temporary \acro{TDS} compliant texmf tree in the temporary area of your +computer. It is needed to store files that may be built on the fly, such as +\path|pk| bitmap fonts, or format files. Configuration files are copied from +the \CD{} to this texmf tree, so that you can edit them if needed. The +\path|ls-R| database is computed for this texmf tree. The AUC-\TeX{} mode will +be entered Whenever you will visit or create a \TeX{} file, providing all the +bells and whistles for \TeX{} support XEmacs is capable of. + +If you run 'M-x shell' within XEmacs, then you will have access to all the TeXLive +tools from the command line provided by XEmacs. + +\smallskip {\small\noindent \textbf{[For advanced users:]} You can also + use the small batch file \path|mkloctex.bat| to be called in a + directory \path|bin\win32| of the \CD. From the Start menu select + `Run', then browse the \acro{CD} drive and select + \path|mkloctex.bat|. Before starting it, you should add two parameters + separated by a space: the letter of your \acro{CD} drive and the + letter of the drive where you want to install the \TeX\ directory. + The whole line should read, e.g., \verb+d:\bin\win32\mkloctex.bat d c+. + When installation is complete, please read carefully the information + on screen. If you are running Windows 9x/\acro{ME}, then you will have to + restart Windows.} + +\subsection{Support packages for Windows} +\label{sec:win-xemtex} + +To be complete, a \TeXLive installation needs support packages that are not +commonly found on a Windows machine. +Many scripts are written using the Perl language. Some important tools require +the Ghostscript \PS{} interpreter to render or to convert files. A graphic +file toolbox is also needed in some cases. Last but not least, a \TeX-oriented +editor makes it easy to type in your \TeX{} files. + +All these tools are quite easy to find for Windows, but in order to try to make +your life even easier, we have put such a set of tools on \TeXLive: +\begin{itemize} +\item \cmdname{Ghostscript} 7.07 +\item a minimal \cmdname{Perl} 5.8, sufficient to run all the \TeXLive{} +Perl scripts +\item a subset of \cmdname{ImageMagick} 5.5.6 +\item the \cmdname{ISpell} checker +\item \cmdname{XEmacs} 21.5.14 with a selection of packages to support +\TeX{} typesetting. +\end{itemize} + +These packages should be installed only all at once. The bundle is +known as the \XEmTeX{} bundle. + +If you didn't install \XEmTeX{}, \cmdname{Perl} and \cmdname{Ghostscript} are +installed anyway if they are not detected on your machine. This is because they are +required by many important tools. The \envname{PERL5LIB} and \verb|GS_LIB| +environment variables will be set too. + +When you are under +\cmdname{XEmacs}, the tools provided shadow any other version you might +have installed previously. The point here is that \path|TeXSetup.exe| +will not install anything outside of the \TeXLive location, neither will +it run foreign installers, nor will it try to autodetect installed +products using unreliable rules of thumb. The \XEmTeX{} bundle is +standalone and is meant to evolve in the future. The reference site is +\url{http://www.fptex.org/xemtex/}. + +If you don't want to install this bundle, then you are on your own to +install the required tools to complete your \TeXLive{} system. Here is a +list of places to get those tools: + +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.activestate.com/} (but you might need some + supplementary packages from CPAN: \url{http://www.cpan.org/}) +\item[ImageMagick] \url{http://www.imagemagick.com} +\item[NetPBM] alternatively, you could use NetPBM instead of ImageMagick to + process or convert your graphic files. NetPBM home page is + \url{http://netpbm.sourceforge.net/} +\item[\TeX-oriented editors] There is a wide choice, and it is a matter of the + user's taste. Here is a selection: + \begin{itemize} + \item \cmdname{GNU Emacs} is available natively under Windows, the + reference url is + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html} + \item \cmdname{XEmacs} is available natively under Windows, the + reference url is \url{http://www.xemacs.org/} + \item \cmdname{WinShell} is available on \TeXLive in the \path|support| + directory, the reference url is \url{http://www.winshell.de} + \item \cmdname{WinEdt} is shareware available from \url{http://www.winedt.com} + \item TeXnicCenter is available from + \url{http://www.toolscenter.org/products/texniccenter/} + \item \cmdname{Vim} is available on \TeXLive{} in the + \path|support\vim| directory and the + reference site is \url{http://www.vim.org} + \item \cmdname{SciTE} is available from \url{http://www.scintilla.org/SciTE.html} + \end{itemize} +\end{description} + +You might want to install other tools that are not free\footnote{Not +free, that is, in the sense of freedom to modify and redistribute, +following Debian's guidelines. This does not mean you can't acquire +them for no money.} and therefore not included on \TeXLive{}, such as +\cmdname{GSView}, the \cmdname{Ghostscript} companion to more +conveniently view PS/PDF files. \cmdname{GSView} is available from +\url{http://www.cs.wisc.edu/~ghost/gsview/} or any \acro{CTAN} site. + +%% \subsection{Installing editors or support packages} +%% \label{sec:texlive-install} + +%% You can use the \path|TeXSetup.exe| program to install a +%% single (not \TeX{}-dependent) package. This might be an editor +%% such as \cmdname{WinShell} or \cmdname{NTEmacs}, +%% or a support package like \cmdname{NetPBM} +%% (graphics formats conversion) or \cmdname{Ghostscript}. + +%% Some of the packages are not free, or not with the same meaning as for +%% the rest of the \CD{}. These packages have been made available through +%% the Internet. You need to enable an Internet connection in order to +%% install them. Chosing the \path|Enable Internet access| subitem will +%% search your system for an active Internet connection, or start one if +%% possible. \emph{If your computer is not connected to the Internet, +%% then the timeout might be long, 30s or more}. So try to enable it +%% only if you know you have a connection. + +%% Only a few packages are available from the \CD{}, but the most +%% important of them: \cmdname{NTEmacs} and \cmdname{WinShell} for the +%% editors, \cmdname{Ghostscript} and \cmdname{NetPBM} for the other +%% support packages. \cmdname{NetPBM} is needed for running \TeX{}4ht. + +%% The downloadable packages are sometimes huge: \cmdname{Perl} is 10Mb, +%% \cmdname{XEmacs} is 50Mb, so be warned that it can take a lot of time +%% to install such things. \path|TeXSetup.exe| does not yet provide an +%% estimation of the time needed to complete the download. + +%% When installing these packages, \path|TeXSetup| is working in +%% unattended mode. However, the programs that have their own installer +%% like WinEdt or Ghostscript for example will require human interaction. + +%% Those packages who have no specific installer will be unpacked and configured +%% for your system. You will be required to select some directory where +%% they will be installed. The directory to select should be the root +%% directory of the whole installation. Assuming you want to install +%% NTEmacs and NetPBM, the archive files already contain the +%% \path|NTEmacs\| and \path|NetPBM\| part, so the directory you have to +%% select is something like \path|c:\Local| or \path|c:\Program Files|. + +\subsection{Installing \TeXLive{} to disk} + +\textbf{Warning: Win9x users must ensure they have enough environment + space before undertaking installation. The \cmdname{TeXSetup.exe} + program won't change the environment size for them. A few environment + variables will be created and it is possible you run out of + environment space. Add "SHELL=COMMAND.COM /E:4096 /P" in the + config.sys file in order to increase your environment size.} + +Installation is started by letting the media autostart. The program run +is \path|TeXSetup.exe| if you are using the inst disk. If you are using +the live or the demo disk, you will have to select the item +\path|TeXLive Software| from the menu, then the subitem \path|Install on +Hard Disk|. This will invoke \path|TeXSetup.exe|. You can also find it +in the \path|bin/win32| directory and run it, if the autostart fails for +any reason. \path|TeXSetup.exe| is a Windows wizard and it will display +several pages while running. + +\begin{description} +\item[Welcome Page] + You can choose a \emph{quick} installation from + here. In this case, the installation will run without any human + assistance from beginning to end, with all the default settings + (Figure~\ref{graph:setup-src}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). If you have enough privileges (administrator or power user + rights) under a Windows version where this is applicable, then you can + decide to install the \TeXLive{} for all users or for yourself only by + checking the appropriate box. + For installing the whole \XEmTeX{} bundle (XEmacs, Ghost\-script, + Perl, ImageMagick and Ispell) you can check \emph{Install XEmTeX + Support} box. + \begin{figure*}[!htb] + The \cmdname{TeXSetup} Wizard\hfill + Source directories for the \TeXLive{} files + + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{../pictures/setup-wizard.jpg}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/source-for-texlive.jpg} + \else + \ifnum \Status=2 +\includegraphics[bb=0 0 506 403]{../pictures/setup-wizard.jpg} +\includegraphics[bb=0 0 506 403]{../pictures/source-for-texlive.jpg} + \else + \includegraphics[width=.48\textwidth]{../pictures/setup-wizard}% + \hfill% + \includegraphics[width=.48\textwidth]{../pictures/source-for-texlive} + \fi + \fi + \caption{The \TeXLive{} setup wizard}\label{graph:setup-src} + \end{center} +\end{figure*} +\item[Source Page] + This page is a bit complex. It will allow you to select two source + directories for your \TeXLive{} system + (Figure~\ref{graph:setup-src}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). You will need a \emph{local + source directory} and possibly a \emph{remote source directory}. + +Why do we need both these directories? The files consisting of the +\TeXLive{} system are on the \CD{}, of course, but some other useful +packages are not, either because of space lacking or because their +license was not compatible with \TeXLive{}. You need to enable Internet +downloading if you want to install these packages that are marked with a +specific ``remote'' icon. + + However, don't panic: the default parameters of the setup will allow + you to install a full system using the \CD{} only. Simply, you won't + have \file{WinEdt} (for example), but you will be able to install it + later. + + So you can take your files from: + \begin{itemize} + \item the \CD{} or any similar flat tree of files, available through + some standard directory (this means the \CD{} can be mounted on + some remote machine and be made available through network + sharing), + \item a set of \file{.zip} files (this is the case when you are + installing from the demo \CD{} or the \fpTeX{} distribution), + \item the Internet; in this case, the program takes care of + downloading the \file{.zip} files it needs for you. + \end{itemize} + This option is available only if you enable Internet file + downloading in the right part of the page. You also need to + configure this Internet access by selecting to connect either using + Internet Explorer~5 \file{wininet.dll}, or using a direct connection (\texttt{ftp}, + \texttt{http}). +% or using a proxy server. +% Last, you can be assisted in defining the \emph{local source +% directory} and \emph{remote source directory} which will be used +% to copy the files onto your hard disk. The \texttt{browse} buttons +% allow to select a directory for the former, and an url among a list +% of mirrors for the latter. +\item[Root Page] + On this page, you will tell where you want the files to be + installed (Figure~\ref{graph:root-schm}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). Only the root directory really matters, the other ones + are set according to the root one. You may want to make + \path|$TEXMFEXTRA| point to some TDS compliant directory with other + \TeX{} files or assign a different value to + \path|$HOMETEXMF|, which is set by default to whatever Windows think + is your `HOME' location. +\begin{figure*}[!htb] + Root and directories\hfill% + Scheme selection + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.46\textwidth]{../pictures/root-of-installation.jpg}\hfill% + \includegraphics[width=.46\textwidth]{../pictures/scheme-selection.jpg} + \else + \ifnum \Status=2 +\includegraphics[bb=0 0 506 403]{../pictures/root-of-installation.jpg} +\includegraphics[bb=0 0 506 403]{../pictures/scheme-selection.jpg} + \else + \includegraphics[width=.46\textwidth]{../pictures/root-of-installation}% + \hfill% + \includegraphics[width=.46\textwidth]{../pictures/scheme-selection} + \fi + \fi + \caption{\TeXLive-Setup: Root and directories / Schemes}\label{graph:root-schm} + \end{center} +\end{figure*} +\item[Get TPM Page] + This page does not require any manual intervention. The \file{.tpm} + files which describe collections and packages are retrieved + (possibly from the Internet), unzipped if needed and parsed. +\item[Schemes Page] + On this page, you will select the global scheme of your + installation (Figure~\ref{graph:root-schm}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). A scheme is a large set of files targeted at some kind + of usage. There are 3 generic schemes for basic, recommended and + full installation. The other ones are devoted to LUGs (what GUST or + GUTenberg propose for their members) or applications (XML and + \TeX{}). + When a scheme is selected, it is still possible to refine the + selection by checking the appropriate box. If doing so, you will be + presented the packages page to change your selection, else you will + jump to the review page. +\item[Packages Page] + Collections and packages are presented in a tree form + (Figure~\ref{graph:win32-support}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). The links + in the tree are dependency links. Collections \emph{depend on} + packages and maybe other collections, and it is the same for each + package. You can select any package or collection individually, but + your request will be granted only if the object is not requested by + another one which is selected. For example, you can't deselect + \texttt{tex-basic} without deselecting all the collections that + request it. + + The \texttt{tex-xemtex} collection displayed on the picture is Win32 specific. It + holds a number of bonus packages (Figure~\ref{graph:win32-support}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ) which can be installed + automatically and individually: Ghostscript (the \PS{} + interpreter), XEmacs editor preconfigured for \TeX{}, tools like Perl, + ImageMagick, Ispell. \emph{None of these packages are selected by + default}. + + On this page, you also have the information about disk space + needed, for each object, and for the set of those who are selected, + and also the disk space available on the partition selected for the + installation. Last, you can choose to install or not the + documentation files and source files associated with each package. +\item[Review Page] + You will find there a summary of your choices + (Figure~\ref{graph:review}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). It is still possible to + go back to change them. +\begin{figure*}[!htb] + Packages Page\hfill% + Win32 Support + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{../pictures/package-selection}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/win32-support} + \else + \ifnum \Status=2 +\includegraphics[bb=0 0 506 403]{../pictures/package-selection.jpg}\hfill% +\includegraphics[bb=0 0 506 403]{../pictures/win32-support.jpg} + \else + \includegraphics[width=.48\textwidth]{../pictures/package-selection}% + \hfill% + \includegraphics[width=.48\textwidth]{../pictures/win32-support} + \fi + \fi + \end{center} + \caption{Packages Page / Win32 goodies} + \label{graph:win32-support} +\end{figure*} +\item[Files Copy Page] + The selected files are copied on your hard disk (Figure~\ref{graph:file-copy}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). All the files not + yet available on your local disk are first downloaded from the + remote source directory on the Internet. Then every package is + unpacked (if \path|.zip| files), or copied from the \CD{}. +\item[Configuration Page] Several packages need some configuration + step to make them usable (Figure~\ref{graph:configuration}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). Also the \TeXLive{} system needs some post-processing step + (format files generation, ls-R databases generation, environment + variables, etc.). All these operations are done there, some of them + can be lengthy. +\begin{figure*}[!htb] + \textbf{Review Page}\hfill% + \textbf{File Copy Page} + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{../pictures/review-settings}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/file-copy} + \else + \ifnum \Status=2 + \includegraphics[bb=0 0 506 403]{../pictures/review-settings.jpg}\hfill% + \includegraphics[bb=0 0 506 403]{../pictures/file-copy.jpg} + \else + \includegraphics[width=.48\textwidth]{../pictures/review-settings}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/file-copy}% + \fi + \fi + \end{center} + \caption{Review Page / File Copy Page} + \label{graph:review}\label{graph:file-copy} +\end{figure*} +\item[Final Page] The installation being over, you may want to display + the Windows specific documentation (HTML format) and / or the log + file of the setup process (Figure~\ref{graph:final} + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). If it is needed (Win9x/WinME), you will + be asked to reboot your computer. +\end{description} + +\begin{figure*}[!htb] + \textbf{Configuration Page}\hfill% + \textbf{Final Page} + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{../pictures/configuration}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/congratulations} + \else + \ifnum \Status=2 + \includegraphics[bb=0 0 506 403]{../pictures/configuration.jpg}\hfill% + \includegraphics[bb=0 0 506 403]{../pictures/congratulations.jpg} + \else + \includegraphics[width=.48\textwidth]{../pictures/configuration}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/congratulations}% + \fi + \fi + \end{center} + \caption{Configuration Page / Final page} +\label{graph:configuration}\label{graph:final} +\end{figure*} + +Please be aware that the choice of cluster size on DOS disk +partitions can radically affect the size of your \TeX\ +installation. The support tree has hundreds of small files, and it is +not unusual for a complete installation to take up to four times the +amount of space used on the \CD. + + +\section{Windows maintenance and post-installation} + +\subsection{What's different in Windows?} + +The Windows version of \Webc{} has some specific features that should be +pointed out. + +\begin{description} +\item[\KPS{}] The hash-tables that \KPS{} builds are quite large for + the \TeXLive{}. In order to cut down the starting time of any + \KPS{}-enabled program, these hash-tables have been put in shared + memory. This way, when you chain the execution of several such + programs, like \path|tex| calling \path|mpost| calling \path|tex|, + the overhead when starting each of the subprograms is + reduced. This change is hidden to the user, except if you set the + debug flag of kpathsea to the \path|-1| value: you will then trace + access to the shared memory, which is not what you want (it is + accessed very often!). What is useful in a log trace of the shared + memory access is still to be defined, so the situation might evolve + in the future. +\item[\cmdname{kpsecheck}] This command provides some options that did + not fit well into \cmdname{kpsewhich}. It will allow you to list all + the files that occur multiple times across your texmf trees. This + could be handy, but most of the time you will also get unwanted + output (like dozens of \path|README| files)\footnote{It is noticeable + that all these files result in clashes inside the \KPS{}-hashing + mechanism; fortunately, \KPS{} never looks for these files.}. For + this reason, you can combine the \path|-multiple-occurences| with 2 + other options for including or excluding any filename that match + some pattern (you can request for several patterns). + + The \cmdname{kpsecheck} command will also report the status of shared + memory: in use or not used. That might be useful to know because if + the status reported is \samp{in use}, that means one or several + processes are working, and the effect of any \cmdname{mktexlsr} + command will be delayed until the next time where no \KPS{} linked + process will be running. + + Last, this same command will report about the location it thinks + Ghostscript can be found. Under Win32, for many programs, it is + easier to use the Ghostscript dll, and find it by using the + Ghostscript registry key than to change the \path|PATH|, which has a + limited length anyway. +\item[\Webc{}] The engines have a few more options than in Unix + \Webc{}, and one option with a different behaviour: + \begin{itemize} +%% \item the \path|-fmt| option behaves differently. Previously and +%% with the regular \Webc{} distribution, this option has 2 different +%% meanings when you are in ``ini'' or ``vir'' mode. Under Win32, it +%% has the same meaning: preload the format file specified with the +%% argument. The meaning of building a format of such name in ini +%% mode is obtained by the new \path|-job-name| option. +%% \item \path|-job-name| option: allows to set the name of the file +%% resulting from the compilation process. In normal mode, it will +%% change the base name of all files produced (\path|.dvi|, +%% \path|.aux|, etc.), while in ini mode, it will set the name of +%% the format file written. + \item \path|-halt-on-error| stop the compilation at the first error. + \item \path|-job-time| set the job time to the same timestamp as the + file given in argument. +\item \path|-oem| use the DOS codepage for console output. + \item \path|-output-directory| allow to write all the output files in the + specified directory. + \item \path|-time-statistics| print statistics about the job run + time. It is to be noted that Win9x not being a true multitasking + operating system, it has no reliable timer for short periods, so + the value printed is an approximation. Under NT/2K/XP, the result + is quite accurate with user time and system time values allocated + for this run. For Unix + users: the \path|time| command is not usually available to Windows + users. + \end{itemize} +\end{description} + +\subsection{Adding packages to your installation} + +You will find an option in the \guiseq{TeXLive} menu (or go to +\guiseq{Start\arw Programs \arw TeXLive \arw Add TeX package} menu) to +run \file{TeXSetup.exe} in maintenance mode. The steps are almost the +same as in the initial installation. + +We'll discuss differences below, but first, whatever changes you make, +\textbf{do not forget to rebuild the ls-R database files}. Otherwise, +your new files will not be found. You can do this either via the +\acro{GUI} (\guiseq{Start \arw Programs \arw TeXLive \arw Maintenance +\arw Rebuild ls-R}), or manually running the \file{mktexlsr} command. + +The main difference is in the packages selection page. In maintenance +mode, the list of installed packages is compared to the list of packages +available from your source directories. Packages that are not installed +will be displayed in green, out of date packages will be displayed in +red and up-to-date, installed packages are displayed in black. + +This way, you can choose to add or upgrade components, either from +\TeXLive{} or from the Internet, where you are likely to find some more +recent version of your packages. + +It is up to you to select which packages you want to install. The rest +of the process is similar to the first installation. + +If you want to add files that are not provided by the \TeXLive{} (or +\fpTeX{}) distribution, it is recommended to put them in the +\path|$TEXMFLOCAL| directory. This way, you will be safe against +upgrades of the \TeXLive{} software. + +The directory pointed to by \path|$TEXMFLOCAL| is initially empty. If, +for example, you want to add the support file for the Maple symbolic +computation program, you will have to put the style files in:\\ +\path|c:\Program Files\TeXLive\texmf-local\tex\latex\maple\|\\ and the +documentation files in:\\ \path|c:\Program +Files\TeXLive\texmf-local\doc\latex\maple\| + +\subsection{Uninstalling \protect\TeXLive{}} + +The uninstall procedure is available either from the \file{TeXLive.exe} +program, from the \path|TeXLive| menu or from the control panel +(\guiseq{Start \arw Control Panel, Add/Remove Programs}). This procedure +will cleanup your hard disk of most of the \TeXLive{} files. However, +\TeX{} is a system that is creating files and there is no mechanism to +keep track of all of them. Moreover, Win32 support packages have their +own uninstall procedure, which you will have to run separately (provided +you want to get rid of them). Last, the files you may have stored in +\path|$TEXMFLOCAL| won't be removed. So, even if the vast majority of +files are automatically removed by the uninstall procedure, you will +have to do some manual cleanup to actually remove all of them. + +\subsection{Running \texttt{TeXSetup.exe} from the command line} + +The \path|TeXSetup.exe| program has a number of other useful +options. You can get the list by running: +\begin{verbatim} +c:\>TeXSetup --help +\end{verbatim} + +Here is the description: +\begin{description} +\item[\path|--automatic-reboot|] reboot without waiting user + confirmation once installation is over; +\item[\path|--dry-run|] do nothing, just log everything that will be + done without this option; +\item[\path|--quick|] use the recommended installation and default + directories, ask nothing up to rebooting; +\item[\path|--with-xemtex|] selects the \XEmTeX{} bundle; +\item[\path|--net-method (=ie5/direct)|] enable to download components with + restricted licenses from the Internet (either using direct + connection of Internet Explorer 5 DLLs): you need to have an available + network connection and some of the packages are huge; +\item[\path|--remote-source-directory |] this is the base url for the remote packages; +\item[\path|--local-source-directory

|] by default, \path|TeXSetup.exe| + will guess the root directory of the set of files you want it to act on, if you ever + upgrade \path|TeXSetup.exe|, you won't be able to copy the new version + onto your \CD{}, so you will need to use this option to specify the + root of the \CD{}; +\item[\path|--installation-directory |] this is the root of your + installation, all files will be copied under this location. The + default value is \verb+c:\Program Files\TeXLive+; +\item[\path|--texmfmain-directory |] +\item[\path|--texmflocal-directory |] +\item[\path|--texmfextra-directory |] +\item[\path|--texmfhome-directory |] +\item[\path|--vartexmf-directory |] +\item[\path|--vartexfonts-directory |] these are the directories + used to configure the location of your files. They map directly to + the \path|texmf.cnf| variables. +\item[\path|--with-source-files(=yes/no)|] copy the source files + for \TeX{} packages, default value is no; +\item[\path|--with-documentation-files(=yes/no)|] copy documentation files for \TeX{} + packages. Default value is yes. Beware: this is only documentation about specific + packages, general documentation will be installed anyway; +\item[\path|--program-folder |] the name of the folder under + which you will find the menus; +\item[\path|--add-package |] this is used to add or update a specific + package after a first regular installation; +\item[\path|--scheme |] install the named scheme instead of the + default \path|texlive-recommended| scheme; +\item[\path|--maintenance|] mostly the same as \path|--add-package| + without specifying a package to add; +\item[\path|--uninstall|] this option will remove anything \TeX{} related coming from + the \CD{}, which means there can be files left if you added style + files or format files, and also that supplementary tools will not be + removed. This option is still a bit crude in this release; +\item[\path|--help|] this option opens up a box with the list of options. +\end{description} + +\subsection{Network installation} + +\KPS{} knows about UNC names, so you can use them to get your TEXMF +tree from the network. But there is better than this. +All the support files and configuration files, everything except the files in the +\path|bin/win32| are shareable with a \teTeX{} or Unix \TeXLive{} installation. That means +you can use Samba either to mount from an NT server to a Unix +workstation or the converse. Several strategies are possible: +\begin{itemize} +\item Put everything on the server. Just add each set of files for the os and +architecture you want to use in the \path|bin| directory. That means +for example \path|bin/win32| and \path|bin/i386-linux|. Next configure +your main variables. You can use UNC names to +point to the right directories under Win32. +\item Install a local copy for the binaries and format files. In this + case, assign \path|$TEXMFMAIN| to the main \path|texmf| tree that + will be accessed remotely. Set \path|$VARTEXMF| to be a local + directory which will hold local configuration files and on-the-fly + generated files. +\end{itemize} + +\subsection{Personal configurations} + +\subsubsection{Dvips} + +The configuration file for dvips can be found in\\ +\verb+C:\Program Files\TeXLive\texmf-var\dvips\config\config.ps+\\ +You may open it with any editor + %(\cmdname{WinShell} will do fine) + and change some parameters: + +\begin{description} +\item [fonts] you can change the default printer \MF{} mode or printer + resolution in case \cmdname{dvips} needs to generate PK fonts. By default it + is configured to use Type~1 versions of the CM fonts, so it should + not call \cmdname{mktexpk} too often; +\item[printer] you can tell dvips where you want to print by default. If + the \optname{o} option is not followed by a printer name, then a + \file{.ps} \PS{} file is written. You can give dvips a printer + name such as: +\begin{verbatim} +o lpt1: +% o | lpr -S server -P myprinter +% o \\server\myprinter +\end{verbatim} +\item[paper] Next, you might want + to change the paper size from European (A4) to US letter + by making the US letter the first paper size mentioned in the file. + Scroll to the group of lines beginning with \code{@}. Move + the appropriate lines so that this section begins with the lines:\\ +\hspace*{1em} @ letterSize 8.5in 11in\\ +\hspace*{1em} @ letter 8.5in 11in\\ +\hspace*{1em} @+ \%\%BeginPaperSize: Letter\\ +\hspace*{1em} @+ letter\\ +\hspace*{1em} @+ \%\%EndPaperSize +\end{description} + +The current \TeXLive{} distribution implements the procedure of making +always up-to-date fontmaps files for Dvips and Pdftex. This is done by +the \cmdname{updmap} program during installation, as well as during any +font package addition. If you add new packages by hand, edit the file +\verb+updmap.cfg+ in \path|$VARTEXMF/web2c|. + +\subsubsection{Pdftex} + +If you use the program pdf{}latex to write \acro{PDF} format directly, +and you are using \acro{US} letter-size paper, edit the file +\verb+C:\Program Files\TeXLive\texmf-var\pdftex\config\pdftex.cfg+ and +change \samp{page\_width} and \samp{page\_height}. These entries should read: +\begin{alltt} +page_width 8.5 true in +page_height 11 true in +\end{alltt} +Save the file and exit the editor. + +\subsubsection{GSView} +GSView is now distributed under the Aladdin License, and therefore is no longer included in +\TeXLive{}. + +If you may want to change the page size to US letter size. If so, open +GSView from the \guiseq{Start} menu, and select \guiseq{Media\arw Letter}. + +Also, there are menu settings that are supposed to give you the most +readable screen image. On \guiseq{Media \arw Display Settings}, set both +\optname{Text Alpha} and \optname{Graphics Alpha} to 4~bits. + +Note that the installation process has set all \code{.ps} and +\code{.eps} files to automatically open with \cmdname{GSView}. + +For printing instructions, see section~\ref{printing} below. + +\subsubsection{WinDvi} +\label{sub:windvi} + +The \file{TeXSetup.exe} program takes care of associating the files +with the \file{.dvi} extension with \file{Windvi}. + +Open it with \guiseq{Start\arw Programs\arw TeXLive\arw DVI Viewer}. + +You can set it for US letter-size paper by going to \guiseq{View\arw +Options\arw Papertype} and selecting US (8.5\verb+"+ x 11\verb+"+) (and +then \optname{OK}. Exit \cmdname{windvi}. + +You can change other parameters from there as well, such as the ability +to execute system commands specified by the document (disabled by +default for security reasons). Also, the first time you view any .dvi +file, you may find the magnification too large. Zoom out until you get +an appropriate size. + +%There are two important parameters related to printing that can't yet +%be set from the dialog boxes, namely the resolution and the \MF{} mode +%for the printer. You can set them once for all by specifying them on +%the command line: +%\begin{verbatim} +%c:\>windvi -p 360 -mfmode canonbjc foo.dvi +%\end{verbatim} +%When you will exit Windvi, these parameters will be stored in the +%configuration file. The available modes are found in this file:\\ +%\path|c:\Program Files\TeXLive\texmf\metafont\misc\modes.mf| + +All configuration settings for \cmdname{Windvi} are stored in a file +named \path|windvi.cnf| file. You can find it by running this command at +the prompt: +\begin{verbatim} +c:\>kpsewhich --expand-var $HOME/windvi.cnf +\end{verbatim} + +Should you have problems with \cmdname{Windvi}, please remove the configuration +file and test your problem against a vanilla configuration. + +\subsection{Testing} + +For generic verification procedures, see section~\ref{sec:test-install} +on p.~\pageref{sec:test-install}. This section describes +Windows-specific tests. + +Open the file \verb+sample2e.tex+ in your editor (Xemacs, WinShell), +found in \path|C:\Local\TeX\texmf\tex\latex\base|. The \LaTeX\ source +should appear on the screen. Process it by clicking on the +\guiseq{Command\arw LaTeX} menu (XEmacs) or \LaTeX\ icon on the toolbar +(WinShell), then view it by clicking on the \guiseq{Command\arw View DVI} +menu (XEmacs) or Preview (Windvi) icon (WinShell). + +At first, when you preview files with Windvi, it will create fonts because +screen fonts were not installed. After a while, you will have created most +of the fonts you use, and you will rarely see the font-creation window. + +\textbf{Hint for the future:} If a \LaTeX\ run stops because \LaTeX\ +cannot find a file, you can press Ctrl-z to quit. + + +\subsection{Printing} +\label{printing} + +It is possible to print from Windvi. In this case, printing will be done +using the Windows unified printer driver. By definition, it is +compatible with all printers. However, there is some drawback: it can +generate some huge spool files, and some (older) versions of Windows +just don't like them. The advantage is that you can use features like +embedding BMP or WMF images. You also need to make sure that the printer +parameters are correctly set (subsection~\ref{sub:windvi}), else you +will get scaled printing (printing at 600\dpi{} on a 300\dpi{} printer +will give you only one quadrant of your page). + + +Printing is faster and more reliable if you run \cmdname{dvips} to make +a \filename{.ps} file and then print from \cmdname{GSView}. In +\cmdname{GSview}, select \guiseq{File\arw Print\ldots}. A \guiseq{Print} +window will appear. + +If you are using a \PS{} printer, \textit{be sure to select +\guiseq{\PS{} Printer}}. This is done in the \guiseq{Print Method} box +at the bottom left of the \guiseq{Print} window. You can then select any +of the printers that you have previously installed. If you fail to +check the box for \optname{\PS{} Printer}, printing will not work. + +If you will be using your own non-\PS{} printer, select +\guiseq{Ghostscript device} in the \guiseq{Print Method} box, then click +on the button to the right labelled \guiseq{djet500} and select your +printer type from the list that pops up. (In the older version of +\cmdname{GSView}, make sure \optname{\PS{} Printer} is \textit{not} +selected, then select your printer type from the \guiseq{Device} list.) + +%If you use \cmdname{WinShell} and a \PS{} printer, probably the +%most convenient way to print is to add an icon to the \cmdname{WinShell} +%toolbar that invokes dvips in a way that sends the output directly to a +%default printer. For detailed instructions on how to do this, see +%the next section. + +%% \subsection{\cmdname{WinShell}} +%% \label{winshell:more} + +%% \subsubsection{Configuring \cmdname{WinShell}} +%% \label{sec:winshell} + +%% Start this program from the Start menu or from the Desktop shortcut. +%% Go to \guiseq{Options \arw Program Calls}. + +%% \begin{itemize}\itemsep 0pt +%% \item In the DVIWin tab, if the filename is \filename{yap}, replace it +%% with \filename{windvi.exe}. +%% \item In the Ghostview tab, make sure it gives the correct path for +%% gsview32.exe:\\ +%% \hspace*{1em} \verb+C:\ghostgum\gsview\gsview32.exe+ (for 3.6, the +%% current version)\\ +%% or \\ +%% \hspace*{1em} \verb+C:\gstools\gsview\gsview32.exe+ (for the older +%% version) + +%% \end{itemize} + +%% Click \guiseq{OK}. + +%% Note that the install process sets all files with the \texttt{.tex} +%% extension to open with \cmdname{WinShell}. Unless you plan to use another editor +%% (such as WinEdt or Emacs), this is appropriate. + +%% Unfortunately, \cmdname{WinShell} does not have a spell-checking +%% feature. However, if you have installed the \path|tex-extrabin| +%% collection, your installation includes \cmdname{Ispell} (a spell +%% checking program found on most Unix systems). The executable is in your +%% PATH so \verb+ispell.exe+ will be found if you invoke it from a DOS +%% window. If you installed documentation, look at \path|C:\Program +%% Files\TeXLive\texmf\doc\html\manpages\ispell.html|for information on +%% Ispell. (Otherwise, you can find \verb+ispell.html+ on the CD.) If you +%% rely on spell checking, you may want to add an Ispell icon to +%% \cmdname{WinShell}. See subsection~\ref{winshell:ispell} of this +%% document for how to do that. + +%% For an excellent commercial (but inexpensive) spelling checker, +%% see \url{http://www.microspell.com}. + +%% \cmdname{WinShell} also has on-line help, which you can access via the +%% $\textbf{\underbar{?}}$ on the menu bar. + +%% Other information about using \cmdname{WinShell} can be found in +%% section \ref{winshell:more} on p.~\pageref{winshell:more}. + + +%% \subsubsection{Installing Bug Fixes} + +%% \cmdname{WinShell}'s author (\href{mailto:idb@winshell.de}{Ingo de Boer}, +%% thanks to him) sometimes releases beta versions of the next \cmdname{WinShell} +%% version which are also bug fixes. You can grab them from +%% \url{http://www.winshell.de}. Usually they are \file{.zip} files that +%% only require to be unpacked in \cmdname{WinShell} directory (\path|c:\Program +%% Files\WinShell| by default), either using WinZip or a similar tool, or +%% by using \file{unzip} on the command line. If you got some +%% \file{winshellbugfix.zip} file and that you saved it in the \cmdname{WinShell} +%% directory, then you need to run: +%% \begin{verbatim} +%% c:\>cd c:\"Program Files"\WinShell +%% c:\>c:\local\bin\unzip winshellbugfix.zip +%% \end{verbatim} +%% Say \optname{yes} if you are asked if some files should be overwritten. The +%% \path|unzip.exe| programme can be found in the +%% \path|support/gnu-utils| package. If you +%% do not have it on your machine, you can use any archiver tool like +%% WinZip to achieve the same effect. + +%% \subsubsection{The \cmdname{Project} feature: organizing many files} + +%% If your document is split into several files (for example a thesis), +%% look into \cmdname{WinShell}'s \cmdname{Project} feature. From the +%% \guiseq{Project} menu, you give the project a name (e.g., \code{Thesis}), +%% supply the name of the main (or root) file, and then \code{add} other +%% files. These filenames display on the left of the screen where you can +%% double click the names to view and switch between them. Clicking the +%% \guiseq{\LaTeX} icon always processes the main file. + +%% Note the icons on the toolbar for toggling the project space (on the left) +%% and the log space (at the bottom). If you are not using the Project +%% feature, you may want to toggle off the space on the left, using the full +%% screen width to display your file. + +%% \subsubsection{Printing from \cmdname{WinShell} to a \PS{} Printer} +%% \label{winshell:print} + +%% The Dvips icon on the \cmdname{WinShell} toolbar puts the \PS{} output +%% in a file, which you can then view with GSView and print from there if +%% you choose. However, it's convenient to add a \cmdname{WinShell} +%% ``program call'' to dvips which sends the output directly to a +%% designated \PS{} printer. The steps below show how to do this for the +%% printer \optname{vclw}; you should substitute the name of your most +%% frequently-used printer. +%% \begin{enumerate} +%% \item Make the program aware of the printer: +%% \begin{itemize} + +%% \item Open \cmdname{WinShell}, go to \guiseq{Options\arw Program +%% Calls\arw User defined}. + +%% \item Click on \guiseq{Tool 1} in the list on the right and fill in the +%% fields to the left as follows:\vspace{-6pt} +%% \begin{quote} +%% Name: \verb+Print+\\ +%% exe file: \verb+dvips+\\ +%% cmd-line: \verb+ -D600 %m -o vclw+\\ +%% Uncheck the box for \guiseq{DVIPS first} +%% \end{quote}%\vspace{-12pt} +%% \item Click \guiseq{OK} +%% \end{itemize} +%% \item Add \guiseq{Print} to the toolbar: +%% \begin{itemize} +%% \item Go to \guiseq{Options\arw View\arw Customize}. +%% \item In the \guiseq{Category} box, select \guiseq{User-Programs}. +%% \item Select \guiseq{Print} and drag it to the toolbar, placing it just to +%% the right of the \cmdname{GSView} icon. +%% \item You then have a choice of \guiseq{Image only}, \guiseq{Text only}, +%% or \guiseq{Image and Text}. The easiest is to select \guiseq{Text only} +%% and click \guiseq{OK}. You should then see \guiseq{Print} on the +%% toolbar. (If you prefer, you can select \guiseq{Image only\arw Edit}, +%% and edit the displayed picture to your satisfaction.) +%% \end{itemize} +%% \end{enumerate} +%% Now, to print a \LaTeX\ document, just click on the \guiseq{Print} icon +%% to send to your selected printer. To use a different printer, you will +%% need to click on the \guiseq{Dvips} icon to print to a file. Then click +%% on the \cmdname{GSView} icon and use \cmdname{GSView} to send to any +%% printer you have installed on your \acro{PC}. + +%% \subsubsection{Adding Ispell to \cmdname{WinShell}} +%% \label{winshell:ispell} +%% \begin{enumerate} +%% \item Add Ispell to User Tools: +%% \begin{itemize} +%% \item Open \cmdname{WinShell}, go to \guiseq{Options\arw Program +%% Calls\arw User defined}. +%% \item In the list on the right, click on \guiseq{Tool~1} (or +%% \guiseq{Tool~2} if you have already used \guiseq{Tool~1}) and fill in +%% the fields to the left as follows:\vspace{-6pt} +%% \begin{quote} +%% Name: \verb+Ispell+\\ +%% exe file: \verb+ispell+\\ +%% cmd-line: \verb+ -t -d american %c.tex+\\ +%% Uncheck the boxes for \guiseq{LaTeX first} and \guiseq{DVIPS first} +%% \end{quote} +%% \item Click \guiseq{OK}. +%% \end{itemize} + +%% \item Add Ispell to the toolbar: +%% \begin{itemize}\itemsep 0pt +%% \item Go to \guiseq{Options\arw View\arw Customize}. +%% \item In the \guiseq{Category} box, select \guiseq{User-Programs}. +%% \item Select \guiseq{Ispell} and drag it to the toolbar, placing it just to +%% the right of the \cmdname{GSView} icon (or the last icon you added). +%% \item You then have a choice of `\guiseq{mage only}, \guiseq{Text only}, +%% or \guiseq{Image and Text}. The easiest is to select \guiseq{Text only} +%% and click \guiseq{OK}. You should then see \guiseq{Ispell} on the +%% toolbar. (If you prefer, you can select \guiseq{Image only\arw Edit}, +%% and edit the displayed picture to your satisfaction.) +%% \end{itemize} +%% \end{enumerate} +%% Now, when you have a \LaTeX\ document open, you can click on +%% \guiseq{Ispell} to perform spell checking. Ispell will open another +%% window and display the first misspelled word on the left with the +%% filename on the right. Below that you will see the context in which the +%% misspelling appears; often several suggestions for replacements are also +%% displayed. To replace the word, enter the number corresponding to the +%% desired replacement. Other possible responses are listed below; for +%% example, you can press the space bar to ignore the misspelled word. For +%% more information on Ispell, read the manual page: +%% \verb+C:\Program Files\TeXLive\texmf\doc\html\manpages\ispell.html+. + +%% Note that when you replace a word, you will not see the correction in +%% your \cmdname{WinShell} window until you close the file (click the +%% \guiseq{X} in the upper right corner) and then open it again (use the +%% \guiseq{File} menu). + +\subsection{Tips and tricks for Win32} + +\subsubsection{Different flavors of Win32} + +What we call Win32 is not an operating system by itself. It is a large +set of functions (around 12,000 in the header files of the Microsoft +\acro{SDK}) that you can use to write programs for different operating +systems of the Windows family. + +Windows comes in different flavors: +\begin{itemize} +\item Win95, Win98 and Win\acro{ME}, which \emph{are not true multitasking, + multithreading} environments. They are the latest\Dash and hopefully + last\Dash metamorphosis of \acro{DOS}. This can be more or less proven + by the fact that when booting, the PC will load the \path|command.com| + interpreter, and if you stop the boot process at this point, you can + ask for the current (\acro{DOS}) version and it will answer something + like \samp{MS-DOS 7.0} (at least for the old versions of Win9x). +\item Windows \acro{NT}, which is a new operating system written from + scratch, capable of true multitasking behaviour, and including many + high level features. +\item Windows 2000, based on \acro{NT}, with all the bells and + whistles of Win98. +\item Windows \acro{XP}, which comes with Personal and Pro flavors. This is + the last step in merging both lines of products (Win9x based and + \acro{NT} based). \acro{XP} is based on \acro{NT}. +\end{itemize} + +Win9x are able to run 32~bits programs and 16~bits programs +concurrently. But the operating system by itself is not entirely +written in 32~bits mode, and does not support memory protection: 16bits +applications can overwrite parts of the operating system memory! Some +parts of the system like the \acro{GDI} (Graphical Device Interface) +manage limited resources like bitmaps, fonts, pens and so on for the set +of all programs that run concurrently. All the bitmaps headers available +at the same time can't amount for more than 64kB. This explains the +performance tool and the fact that you can put your system on his knees +by making intensive use of graphic objects for example. + +NT, 2K and XP do not suffer from these limitations, and neither from +other Win9x limitations. They are true multitasking environments, with +protected memory. They are much more responsive than Win9x because +of better memory management, better file system and so on. + +\subsubsection{Command line prompt} + +You may wonder, ``Why would I need to use a command line prompt when +I have Windows?'' + +Good question. The problem is of very general nature. Not all operations +can be done easily using only a \acro{GUI}. Command line gives you +programming power\Dash assuming a clever command interpreter. + +But the problem here is more fundamental: \TeX{} is \emph{a batch} +tool. Not an interactive one. \TeX{} needs to compute the best +layout for each page, resolve cross-references and so on. This can be +done only by a global processing of the document. It is not (yet) a +task that can be done interactively. + +This means that you should use \TeX{} from a command line. In fact the +situation is not so bad. There is an advantage to write command line +tools for complex processing: they are better debugged, because they are +independent of any \acro{GUI} problems, and \acro{GUI} tools can be +designed to interface to the command line tools. This is the case for +\TeX{}, where you will mostly interact with it through a \acro{GUI} text +editor. + +However, you may need to use the command line prompt in a number of +situations. One is when you are having difficulties and want to debug +your setup. + +\begin{description} + \item[Win9x] You can open a command line prompt by looking either for + the \acro{MS-DOS} icon in the \guiseq{Start\arw Programs} menu, + or by choosing \guiseq{Start\arw Run} menu typing in + \path|command.com| as the progrm name. + \item[NT, 2K, XP] You can open a command line prompt by looking for + \guiseq{Command Prompt} in the \guiseq{Start\arw Accessories} menu. + You can also choose \guiseq{Start\arw Run} and type in + \path|cmd.exe|, which is the name of the brand new command + interpreter for \acro{NT} (thus, it is untrue to call this a + \emph{DOS} box!). +\end{description} + +These locations may change across different Windows versions. + + +\subsubsection{Path separators} + +The Win32 API understands both \path|/| and \path|\| characters as PATH +separators. But the command interpreters do not! So whenever a path name +is used programmatically, you can use both separators, and even mix them +up in the same path name. But on the command line, you must type +\path|\| as path separator. The reason is compatibility: the command +processor used \samp{/} to introduce arguments to commands. + +All this to say: do not be surprised to read path names written using +the Unix convention; \fpTeX{} is a port of \Webc, and aims to be compatible +across platforms. For this reason, all the configuration files that +need to specify path names use the Unix convention. + +\subsubsection{File systems} +\label{sec:clusters} + +The worst feature of Win9x with regard to \TeX{} is probably the +so-called FAT file system. \TeX{} uses many many small files, with size +around 1--3kB. The \acro{FAT} file system is old, and predates by +decades the multi-gigabytes hard disks we have today. As a result, it +cannot manage efficiently the tens of thousands of \TeX{} files found in +\TeXLive{}. The \acro{FAT} file system allocates a minimum of 32kB for +\emph{any} file on a huge partition. It means that \TeX{} will use much +more disk space than it actually needs. + +The other, more modern, file systems available, \acro{FAT32} and +\acro{NTFS}, do not have this drawback. They manage clusters of 4kB +only. (You can lower the limit to 512 bytes on \acro{NTFS}.) + +\subsubsection{How to add some directory to your PATH} + +There are pairs of variables and values which behave much like global +variables inside your programs. The set of those variables is called the +environment. Each program is initialized with a copy of the +environment when it is run. It can request and change the +value of any variable. The changes happen in the copy of the +environment, and is not at all propagated to the other running +programs. + +Your PATH is a special environment variable used to search for +programs you want to run. +There is a different procedure to change it for Win9x, WinME and NT/2K/XP: + +\begin{description} +\item[Windows 95/98] Edit your \path|autoexec.bat|. In this file should be a line + starting with \texttt{PATH=} and followed by a list of directories separated + by \path|;|. Please add the directory with the executables in this line. + After this, this line could look as follows: +\begin{verbatim} +PATH=c:\windows;c:\windows\system;c:\"Program Files"\TeXLive\bin\win32 +\end{verbatim} +\item[Windows ME] You need to run the special program + \path|c:\windows\system\msconfig.exe| to be able to change any + environment variable. From this program, select the `Environment' + tab, and then add or modify the variable you want. You will be asked to reboot the + machine upon any change. +\item[Windows NT/2K/XP] + Click left on \guiseq{Start \arw Settings \arw Control Panel}. Now the + window with the control panel icons opens. Double click on System. The + System Properties window opens. Click on the tab \textsf{Environment} + or look for a button named \guiseq{Environment Variables} among the + dialog boxes. Now you can change the environment variables for your + user account. Note: There are also displayed the environment settings + for the system. Normally, you can't change the system variables + unless you have administrator rights on your machine. If you want to + change the \texttt{PATH} for all users, you will have to contact your + system administrator or be the system administrator yourself\Dash in + the latter case you should know what you are doing. + + If there is already a \texttt{PATH} setting for your user account, + left click on \texttt{PATH}. In the field \textsf{Variable} appears + \texttt{PATH} while the field Value shows the current setting of + \texttt{PATH} as a list of directories separated by \path|;|. Add + the directory where the executables are located (e.g. + \path|c:\Program Files\TeXLive\bin\win32|). If there isn't a \texttt{PATH} variable + for your user account, simply click in the field Variable and type + in \texttt{PATH}, click in the field \textsf{Value} + and type in the directory with the executables. Important: Click on + the \textsf{Apply} button before clicking \textsf{Ok}, otherwise the + changes to \texttt{PATH} won't apply to your system. Be careful when + changing the environment settings. +\end{description} + +The best way to be sure that a variable has been properly set is to +open a console and type: +\begin{verbatim} +set VARIABLE +\end{verbatim} +which should return the corresponding value. + +\subsubsection{\TeX{} engines} + +If you have a look at the \Webc{} documentation, you will read that all +the various \TeX{} derived programs use the same base engine. For +example, \path|tex.exe| and \path|latex.exe| are exact copies of the +same program, but each one will use a different format file, based on +its calling name. + +Under Unix, this feature is implemented through \emph{symbolic +links}. It saves up a bit of disk space, because some engines are +used with many different format files. + +The Win32 API does not know about file links. So to save up almost +the same amount of memory, all the \TeX{} base engines have been put +in DLLs (\emph{Dynamic Linked Library}). This means that you will have +the following layout: +\begin{alltt} +13/05/2002 17:06 3 584 latex.exe +13/05/2002 17:06 266 240 tex.dll +13/05/2002 17:06 3 584 tex.exe +\end{alltt} +and the \path|latex.exe| file is nothing but a rough copy of +\path|tex.exe| using the same core \path|tex.dll|. +The same trick has been used for the \path|mktex*.exe| family of programs which are +linked to the \path|mktex.dll| library. + +In fact, a generic tool called \path|lnexe.exe| is provided to build the +equivalent of Unix hard links for executable files only under Win32. + +\subsection{In case of problems} +\label{sec:troubleshooting} + +\subsubsection{What to do if \texttt{latex} does not find your files?} + +\begin{itemize} + +\item \cmdname{kpsewhich} is the tool of choice to debug any +problem. Unfortunately, \cmdname{kpsewhich} outputs debug information +to stderr, and the Windows console does not know how to redirect stderr +to a file\footnote{Well, NT and Win2k consoles know how to do that. But +the trick will work for any console.}. For diagnostic purposes you can +temporarily set an environment variable (in a \acro{DOS} box): + +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=err.log +\end{verbatim} +You can also set the debug level: +\begin{verbatim} +SET KPATHSEA_DEBUG=-1 +\end{verbatim} + +If you want to redirect stderr to stdout, which is not possible +Windows, then do: +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=con: +\end{verbatim} +This way you can capture both stdout and stderr in the same file. + +\item Assuming the installation has been done in \path|c:/Program Files/TeXLive|, check + the following values: \\ + {\small + \begin{tabular}{ll} + \path|kpsewhich -expand-path $SELFAUTOPARENT| & \path|c:/Program Files/TeXLive| \\ + \path|kpsewhich -expand-path $TEXMF| & \path|c:/Program Files/TeXLive/texmf| \\ + \path|kpsewhich -expand-path $TEXMFCNF| & + \path|.;c:/Program Files/TeXLive/texmf/web2c;| \\ + & \path|c:/Program Files/TeXLive/bin/win32;| \\ + & \path|c:/Program Files/TeXLive/bin;| \\ + & \path|c:/Program Files/TeXLive| \\ + \path|kpsewhich -expand-var $TEXINPUTS| & \path|.;c:/Program Files/TeXLive/texmf/tex//| + \end{tabular} +} +\item If you have other \TeX{}-related values already set in your + environment, please, remove them. They are overriding the ones in + texmf.cnf. +\item Check the values from:\\ +{\small + \begin{tabular}{ll} + \texttt{kpsewhich cmr10.tfm} & \path|c:/Program Files/TeXLive/texmf/fonts/tfm/public/cm/cmr10.tfm|\\ + \texttt{kpsewhich latex.fmt}& \path|c:/Program Files/TeXLive/texmf/web2c/latex.fmt| + \end{tabular} +} +\item At this point, if everything is correct, \TeX{} and friends + should work. If it is not the case, you will need to play with + the \path|-debug=n| option from \path|kpsewhich|, and check back all + the values. Try to identify and report the problem. +\end{itemize} + +\subsubsection{What to do if your setup still does not work as expected?} + +Here are several questions to investigate: + +\begin{enumerate} +\item Is \file{tex.exe} in my \path|PATH|? + +\item Is the \path|TEXMFCNF| variable correctly set to +\path|c:/Program Files/TeXLive/texmf-var/web2c| (default value)? + +\item Are there any errors in the log file generated by the +\file{TeXSetup.exe} program? You can find this by searching for the +string \samp{Error}. + +\item Are there any relevant bug fixes at \url{http://tug.org/texlive/}? +(Unlikely, but it doesn't hurt to check.) + +\item Check the web pages at +\url{http://www.fptex.org/}, or consider subscribing to the \fpTeX{} +mailing list, via \url{http://tug.org/mailman/listinfo/fptex}. + +\end{enumerate} + + +The \TeXLive{} software consists of hundreds and programs and tens of +thousands of files, all from varying sources. So it is quite difficult to +predict all possible causes for problems. Nevertheless, we will do our +best to help you. (see section~\ref{sec:help} on p.~\pageref{sec:help}.) + + +\subsection{Compiling the source files} + +You have the whole set of source files, in the +\path|source/source.tar.bz2| archive available in the distribution together with +a patch file for Win32. To +be able to compile the whole distribution for Windows, you will need: + +\begin{itemize} +\item Windows 2K/XP +\item Microsoft Visual Studio .Net 2003 +\item a set of Unix tools (\texttt{sed}, + \texttt{grep}, \texttt{gawk}, etc.) and also Perl, Flex and Bison, +\item to adjust the paths in the + \path|win32/make/common.mak| file according to your installation +\item to adjust the paths in the Perl script file + \path|win32/perl/build.pl|, +\item run the compilation from the \path|mswin32/| directory using this + command: +\begin{verbatim} +c:\texlive\source\mswin32>perl ./perl/build.pl --install --log=install.log +\end{verbatim} +\end{itemize} + +There is a lot of work to do to make this process easier and cleaner. + +\subsection{Where to get more information} + +The Windows \TeX{} system included on \TeXLive{} is also known as +\fpTeX. The packaging differs, but \fpTeX{} is no more no less than the +current \TeXLive\ release for Windows. + +The \fpTeX{} home page is \url{http://www.fptex.org}. + +The current \fpTeX release is available from any \CTAN site in +\url{htp://www.ctan.org/tex-archive/systems/win32/fptex}. + +The main ftp site for \fpTeX\ is \url{ftp://ftp.dante.de/pub/fptex/} +from where beta versions of \fpTeX\ and additionnal tools are available. +This main site is (partially) mirrored daily by all \CTAN{} sites at +\path|systems/win32/fptex|. + +The \TeX{} Users Group is kindly hosting a mailing list dedicated to +\fpTeX. It is used for announcements, bug reports, enhancement requests, +and general discussion about \fpTeX. To subscribe, visit +\url{http://tug.org/mailman/listinfo/fptex}. The mailing list +address is \email{fptex@tug.org}. + + +\section{A user's guide to \protect\Webc{}} + +\Webc{} is an integrated collection of \TeX-related programs: \TeX{} +itself, \MF{}, \MP, \BibTeX{}, etc. It is the heart of \TeXLive{}. + +A bit of history: The original implementation was by Tomas Rokicki who, +in 1987, developed a first \TeX{}-to-C system adapting change files +under Unix, which were primarily the work of Howard Trickey and Pavel +Curtis. Tim Morgan became the maintainer of the system, and during this +period the name changed to Web-to-C\@. In 1990, Karl Berry took over +the work, assisted by dozens of additional contributors, and in 1997 he +handed the baton to Olaf Weber. + +The \Webc{} system runs on Unix, 32-bit Windows systems, \MacOSX{}, and +other operating systems. It uses Knuth's original sources for \TeX{} and +other basic programs written in \web{} and translates them into C source +code. The core \TeX{} programs are: + +\begin{cmddescription} +\item[bibtex] Maintaining bibliographies. +\item[dmp] \cmdname{troff} to MPX (\MP{} pictures). +\item[dvicopy] Expands virtual font references in \dvi{} files. +\item[dvitomp] \dvi{} to MPX (MetaPost pictures). +\item[dvitype] \dvi{} to human-readable text. +\item[gftodvi] Generic font proofsheets. +\item[gftopk] Generic to packed fonts. +\item[gftype] GF to human-readable text. +\item[makempx] \MP{} label typesetting. +\item[mf] Creating typeface families. +\item[mft] Prettyprinting \MF{} source. +\item[mpost] Creating technical diagrams. +\item[mpto] MetaPost label extraction. +\item[newer] Compare modification times. +\item[patgen] Creating hyphenation patterns. +\item[pktogf] Packed to generic fonts. +\item[pktype] PK to human-readable text. +\item[pltotf] Plain text property list to TFM. +\item[pooltype] Display \web{} pool files. +\item[tangle] \web{} to Pascal. +\item[tex] Typesetting. +\item[tftopl] TFM to plain text property list. +\item[vftovp] Virtual font to virtual property list. +\item[vptovf] Virtual property list to virtual font. +\item[weave] \web{} to \TeX. +\end{cmddescription} + +\noindent The precise functions and syntax of these programs are +described in the documentation of the individual packages and of \Webc{} +itself. However, knowing a few principles governing the whole family of +programs will help you take advantage of your \Webc{} installation. + +All programs honor these standard \acro{GNU} options: +\begin{ttdescription} +\item[-{}-help] print basic usage summary. +\item[-{}-verbose] print detailed progress report. +\item[-{}-version] print version information, then exit. +\end{ttdescription} + +For locating files the \Webc{} programs use the path searching library +\KPS{}. This library uses a combination of environment variables and a +configuration files to optimize searching the (huge) collection of +\TeX{} files. \Webc{} can look at more than one directory tree +simultaneously, which is useful in maintaining \TeX's standard +distribution and local extensions in two distinct trees. To speed up +file searches the root of each tree has a file \file{ls-R}, containing +an entry showing the name and relative pathname for all files under that +root. + +\subsection{\protect\KPS\ path searching} + +Let us first describe the generic path searching mechanism of the \KPS{} +library. + +We call a \emph{search path} a colon- or semicolon\hyph sepa\-rated list +of \emph{path elements}, which are basically directory names. A +search path can come from (a combination of) many sources. To look up +a file \samp{my-file} along a path \samp{.:/dir}, \KPS{} checks each +element of the path in turn: first \file{./my-file}, then +\file{/dir/my-file}, returning the first match (or possibly all +matches). + +In order to adapt optimally to all operating systems' conventions, on +non-Unix systems \KPS{} can use filename separators different from +colon (\samp{:}) and slash (\samp{/}). + +To check a particular path element \var{p}, \KPS{} first checks if a +prebuilt database (see ``Filename data\-base'' on +page~\pageref{Filename-database}) applies to \var{p}, i.e., if the database +is in a directory that is a prefix of \var{p}. If so, the path +specification is matched against the contents of the database. + +If the database does not exist, or does not apply to this path +element, or contains no matches, the filesystem is searched (if this +was not forbidden by a specification starting with \samp{!!}\ and if +the file being searched for must exist). \KPS{} constructs the list +of directories that correspond to this path element, and then checks +in each for the file being sought. + +The ``file must exist'' condition comes into play with \samp{.vf} files and +input files read by \TeX's \cs{openin} command. Such files may not +exist (e.g., \file{cmr10.vf}), and so it would be wrong to search the +disk for them. Therefore, if you fail to update \file{ls-R} when you +install a new \samp{.vf} file, it will never be found. +Each path element is checked in turn: first the database, then the +disk. If a match is found, the search stops and the result is +returned. + +Although the simplest and most common path element is a directory +name, \KPS{} supports additional features in search paths: layered +default values, environment variable names, config file values, users' +home directories, and recursive subdirectory searching. Thus, we say +that \KPS{} \emph{expands} a path element, meaning it transforms all +the specifications into basic directory name or names. This is +described in the following sections in the same order as it takes +place. + +Note that if the filename being searched for is absolute or explicitly +relative, i.e., starts with \samp{/} or \samp{./} or \samp{../}, +\KPS{} simply checks if that file exists. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{../examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Path sources} +\label{Path-sources} + +A search path can come from many sources. In the order in which +\KPS{} uses them: + +\begin{enumerate} +\item + A user-set environment variable, for instance, \envname{TEXINPUTS}\@. + Environment variables with a period and a program name appended + override; e.g., if \samp{latex} is the name of the program being run, + then \envname{TEXINPUTS.latex} will override \envname{TEXINPUTS}. +\item + A program-specific configuration file, for exam\-ple, a line + \samp{S /a:/b} in \cmdname{dvips}'s \file{config.ps}. +\item A \KPS{} configuration file \file{texmf.cnf}, containing a line like + \samp{TEXINPUTS=/c:/d} (see below). +\item The compile-time default. +\end{enumerate} +\noindent You can see each of these values for a given +search path by using the debugging options (see ``Debugging actions'' +on page~\pageref{Debugging}). + +\subsubsection{Config files} + +\begingroup\tolerance=3500 +\KPS{} reads \emph{runtime configuration files} named \file{texmf.cnf} +for search path and other definitions. The search path used to look +for these files is named \envname{TEXMFCNF} (by default such a file lives +in the \file{texmf/web2c} subdirectory). \emph{All} +\file{texmf.cnf} files in the search path will be read and definitions +in earlier files override those in later files. Thus, with a search +path of \verb|.:$TEXMF|, values from \file{./texmf.cnf} override those +from \verb|$TEXMF/texmf.cnf|. +\endgroup + +\begin{itemize} +\item + Comments start with \code{\%} and continue to the end of the line. +\item + Blank lines are ignored. +\item + A \bs{} at the end of a line acts as a continuation character, + i.e., the next line is appended. Whitespace at the beginning of + continuation lines is not ignored. +\item + Each remaining line has the form: +\begin{alltt} + \emph{variable}[.\emph{progname}] [=] \emph{value} +\end{alltt}% + where the \samp{=} and surrounding whitespace are optional. +\item + The \ttvar{variable} name may contain any character other + than whitespace, \samp{=}, or \samp{.}, but sticking to + \samp{A-Za-z\_} is safest. +\item + If \samp{.\var{progname}} is present, the definition only + applies if the program that is running is named + \texttt{\var{progname}} or \texttt{\var{progname}.exe}. This allows + different flavors of \TeX{} to have different search paths, for + example. +\item \var{value} may contain any characters except + \code{\%} and \samp{@}. The + \code{\$\var{var}.\var{prog}} feature is not available on the + right-hand side; instead, you must use an additional variable. A + \samp{;}\ in \var{value} is translated to \samp{:}\ if + running under Unix; this is useful to be able to have a single + \file{texmf.cnf} for Unix, \acro{MS-DOS} and Windows systems. +\item + All definitions are read before anything is expanded, so + variables can be referenced before they are defined. +\end{itemize} +A configuration file fragment illustrating most of these points is +\ifSingleColumn +shown below: + +\verbatiminput{../examples/ex5.tex} +\else +shown in Figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Path expansion} +\label{Path-expansion} + + +\KPS{} recognizes certain special characters and constructions in +search paths, similar to those available in Unix shells. As a +general example, the complex path, +\verb+~$USER/{foo,bar}//baz+, expands to all subdirectories under +directories \file{foo} and \file{bar} in \texttt{\$USER}'s home +directory that contain a directory or file \file{baz}. These +expansions are explained in the sections below. +%$ +\subsubsection{Default expansion} +\label{Default-expansion} + +\tolerance=2500 +If the highest-priority search path (see ``Path sources'' on +page~\pageref{Path-sources}) contains an \emph{extra colon} (i.e., +leading, trailing, or doubled), \KPS{} inserts at that point the +next-highest-prio\-rity search path that is defined. If that inserted +path has an extra colon, the same happens with the next highest. For +example, given an environment variable setting + +\tolerance=1500 + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +and a \code{TEXINPUTS} value from \file{texmf.cnf} of + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +then the final value used for searching will be: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Since it would be useless to insert the default value in more than one +place, \KPS{} changes only one extra \samp{:}\ and leaves any others in +place: it checks first for a leading \samp{:}, then a trailing +\samp{:}, then a doubled \samp{:}. + +\subsubsection{Brace expansion} + +A useful feature is brace expansion, which means that, for instance, +\verb+v{a,b}w+ expands to \verb+vaw:vbw+. Nesting is allowed. +This can be used to implement multiple \TeX{} hierarchies, by +assigning a brace list to \code{\$TEXMF}. +For example, in \file{texmf.cnf}, you find +the following definition: +\begin{verbatim} + TEXMF = {$HOMETEXMF,$TEXMFLOCAL,!!$VARTEXMF,!!$TEXMFMAIN} +\end{verbatim} +Using this you can then write something like +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +which means that, after looking in the current directory, the +\code{\$HOMETEXMF/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$VARTEXMF/tex} +and \code{\$TEXMFMAIN/tex} trees \emph{only}) will be searched (the +last two use using \file{ls-R} data base files). It is a convenient +way for running two parallel \TeX{} structures, one ``frozen'' (on a +\CD, for instance) and the other being continuously updated with new +versions as they become available. By using the \code{\$TEXMF} +variable in all definitions, one is sure to always search the +up-to-date tree first. + +\subsubsection{Subdirectory expansion} +\label{Subdirectory-expansion} + +Two or more consecutive slashes in a path element following a directory +\var{d} is replaced by all subdirectories of \var{d}: first those +subdirectories directly under \var{d}, then the subsubdirectories under +those, and so on. At each level, the order in which the directories are +searched is \emph{unspecified}. + +If you specify any filename components after the \samp{//}, only +subdirectories with matching components are included. For example, +\samp{/a//b} expands into directories \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, and so on, but not \file{/a/b/c} or \file{/a/1}. + +Multiple \samp{//} constructs in a path are possible, but +\samp{//} at the beginning of a path is ignored. + +\subsubsection{List of special characters and their meaning: a summary} + +The following list summarises the meaning of special characters +in \KPS{} configuration files. + +\newcommand{\CODE}[1]{\makebox[2.5em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Separator in path specification; at the beginning or + the end of a path it substitutes the default path expansion. +\item[\CODE{;}] Separator on non-Unix systems (acts like \code{:}). +\item[\CODE{\$}] Variable expansion. +\item[\CODE{\string~}] Represents the user's home directory. +\item[\CODE{\char`\{\dots\char`\}}] Brace expansion. +\item[\CODE{//}] Subdirectory expansion (can occur anywhere in + a path, except at its beginning). +\item[\CODE{\%}] Start of comment. +\item[\CODE{\bs}] Continuation character (allows multi-line entries). +\item[\CODE{!!}] Search \emph{only} database to locate file, \emph{do + not} search the disk. +\end{ttdescription} + + +\subsection{Filename databases} +\label{Filename-database} + +\KPS{} goes to some lengths to minimize disk accesses for searches. +Nevertheless, at installations with enough directories, searching each +possible directory for a given file can take an excessively long time +(this is especially true if many hundreds of font directories have to +be traversed.) Therefore, \KPS{} can use an externally-built plain text +``database'' file named \file{ls-R} that maps files to directories, +thus avoiding the need to exhaustively search the disk. + +A second database file \file{aliases} allows you to give additional +names to the files listed in \file{ls-R}. This can be helpful to +confirm to \acro{DOS} 8.3 filename conventions in source files. + +\subsubsection{The filename database} +\label{ls-R} + +As explained above, the name of the main filename database must be +\file{ls-R}. You can put one at the root of each \TeX{} hierarchy in +your installation that you wish to be searched (\code{\$TEXMF} by +default); most sites have only one hierarchy. \KPS{} looks for +\file{ls-R} files along the \code{TEXMFDBS} path. + +The recommended way to create and maintain \samp{ls-R} is to run the +\code{mktexlsr} script included with the distribution. It is invoked +by the various \samp{mktex}\dots\ scripts. In principle, this script +just runs the command +\begin{alltt} +cd \var{/your/texmf/root} && ls -LAR ./ >ls-R +\end{alltt} +presuming your system's \code{ls} produces the right output format +(\acro{GNU}'s \code{ls} is all right). To ensure that the database is always +up-to-date, it is easiest to rebuild it regularly via \code{cron}, so +that for changes in the installed files\Dash perhaps after installing or +updating a \LaTeX{} package\Dash the file \file{ls-R} is automatically +updated. + +If a file is not found in the database, by default \KPS{} goes ahead +and searches the disk. If a particular path element begins with +\samp{!!}, however, \emph{only} the database will be searched for that +element, never the disk. + + +\subsubsection{kpsewhich: Standalone path searching} +\label{Invoking-kpsewhich} + +The \texttt{kpsewhich} program exercises path searching independent of any +particular application. This can be useful as a sort of \code{find} +program to locate files in \TeX{} hierarchies (this is used heavily in +the distributed \samp{mktex}\dots\ scripts). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +The options specified in \ttvar{option} start with either \samp{-} +or \samp{-{}-}, and any unambiguous abbreviation is accepted. + +\KPS{} looks up each non-option argument on the command line as a +filename, and returns the first file found. There is no option to +return all the files with a particular name (you can run the Unix +\samp{find} utility for that). + +The more important options are described next. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Set the resolution to \ttvar{num}; this only affects \samp{gf} + and \samp{pk} lookups. \samp{-D} is a synonym, for compatibility + with \cmdname{dvips}. Default is 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Set the format for lookup to \ttvar{name}. By default, the + format is guessed from the filename. For formats which do not have + an associated unambiguous suffix, such as \MP{} support files and + \cmdname{dvips} configuration files, you have to specify the name as + found in the first column of Table~\ref{tab:kpathsea}, which lists + currently recognized names, a description, possible file extensions, + and associated environment variables. +\end{ttdescription} + + +\def\KpathKey#1#2#3#4#5{% name, number, description, variables, + % suffixes +\SetRowColor#1 & #3 & #4 & #5\\} +\def\HEAD#1{\multicolumn{1}{l}{\emph{#1}}} +% +\begin{small} +% a footnoterule immediately under a bottom-of-page rule looks dead +% silly, so we suppress it +\renewcommand\footnoterule{\relax} +% +\begin{longtable}{@{}% + >{\ttfamily}P{.16\textwidth}% Col.1 + P{.3\textwidth}% Col 2 + >{\ttfamily\footnotesize}P{.29\textwidth}% Col 3 + >{\ttfamily}P{.14\textwidth}% Col 4 +@{}} +\caption{Kpathsea file types.}\label{tab:kpathsea}\\ +\emph{Name} & \HEAD{Description} & \HEAD{Variables} +& \HEAD{Suffixes}\\ +\hline +\endfirsthead +\multicolumn{3}{l}{Kpathsea file types \emph{continued}}\\ +\emph{Name} & \HEAD{Description} & \HEAD{Variables} +& \HEAD{Suffixes}\\ +\hline +\noalign{\vspace{2pt}} +\endhead +\mbox{}\\ +\hline +\endfoot +\KpathKey + {afm} + {4} + {Adobe font metrics} + {AFMFONTS} + {.afm} +\KpathKey + {base} + {5} + {Metafont memory dump} + {MFBASES, TEXMFINI} + {.base} +\KpathKey + {bib} + {6} + {\BibTeX{} bibliography source} + {BIBINPUTS, TEXBIB} + {.bib} +\KpathKey + {} + {2} + {bitmap fonts} + {GLYPHFONTS, TEXFONTS} + {} +\KpathKey + {bst} + {7} + {\BibTeX{} style files} + {BSTINPUTS} + {.bst} +\KpathKey + {cnf} + {8} + {Runtime configuration files} + {TEXMFCNF} + {.cnf} +\KpathKey + {dvips config} + {34} + {\textsf{dvips} configuration files, e.g., \file{config.ps} + and \file{psfonts.map}} + {TEXCONFIG} + {.map} +\KpathKey + {fmt} + {10} + {\TeX{} memory dump} + {TEXFORMATS, TEXMFINI} + {.fmt, .efmt, .efm} +\KpathKey + {gf} + {0} + {generic font bitmap} + {GFFONTS} + {.gf} +\KpathKey + {graphic/figure} + {25} + {Encapsulated \PS{} figures} + {TEXPICTS, TEXINPUTS} + {.eps, .epsi} +\KpathKey + {ist} + {35} + {\textsf{makeindex} style files} + {TEXINDEXSTYLE, INDEXSTYLE} + {.ist} +\KpathKey + {ls-R} + {9} + {Filename databases} + {TEXMFDBS} + {} +\KpathKey + {map} + {11} + {Fontmaps} + {TEXFONTMAPS} + {.map} +\KpathKey + {mem} + {12} + {MetaPost memory dump} + {MPMEMS, TEXMFINI} + {.mem} +\KpathKey + {mf} + {13} + {Metafont source} + {MFINPUTS} + {.mf} +\KpathKey + {mfpool} + {14} + {Metafont program strings} + {MFPOOL, TEXMFINI} + {.pool} +\KpathKey + {mft} + {15} + {MFT style file} + {MFTINPUTS} + {.mft} +\KpathKey + {} + {41} + {miscellaneous fonts} + {MISCFONTS} + {} +\KpathKey + {mp} + {16} + {MetaPost source} + {MPINPUTS} + {.mp} +\KpathKey + {mppool} + {17} + {MetaPost program strings} + {MPPOOL, TEXMFINI} + {.pool} +\KpathKey + {MetaPost support} + {18} + {MetaPost support files, used by DMP} + {MPSUPPORT} + {} +\KpathKey + {ocp} + {19} + {\OMEGA{} compiled process files} + {OCPINPUTS} + {.ocp} +\KpathKey + {ofm} + {20} + {\OMEGA{} font metrics} + {OFMFONTS, TEXFONTS} + {.ofm, .tfm} +\KpathKey + {opl} + {21} + {\OMEGA{} property lists} + {OPLFONTS, TEXFONTS} + {.opl} +\KpathKey + {otp} + {22} + {\OMEGA{} translation process files} + {OTPINPUTS} + {.otp} +\KpathKey + {ovf} + {23} + {\OMEGA{} virtual fonts} + {OVFFONTS, TEXFONTS} + {.ovf} +\KpathKey + {ovp} + {24} + {\OMEGA{} virtual property lists} + {OVPFONTS, TEXFONTS} + {.ovp} +\KpathKey + {pk} + {1} + {packed bitmap fonts} + {\emph{program}FONTS \textrm{(\texttt{\emph{program}} being + \textsmaller{\cmdname{XDVI}}, + etc.)}, PKFONTS, TEXPKS, GLYPHFONTS, TEXFONTS} + {.pk} +\KpathKey + {\PS{} header} + {30} + {downloadable \PS{}} + {TEXPSHEADERS, PSHEADERS} + {.pro, .enc} +\KpathKey + {tex} + {26} + {\TeX{} source} + {TEXINPUTS} + {.tex, .cls, .sty, .clo, .def} +\KpathKey + {TeX system documentation} + {27} + {Documentation files for the \TeX{} system} + {TEXDOCS} + {} +\KpathKey + {TeX system sources} + {29} + {Source files for the \TeX{} system} + {TEXSOURCES} + {} +\KpathKey + {texpool} + {28} + {\TeX{} program strings} + {TEXPOOL, TEXMFINI} + {.pool} +\KpathKey + {tfm} + {3} + {\TeX{} font metrics} + {TFMFONTS, TEXFONTS} + {.tfm} +\KpathKey + {Troff fonts} + {31} + {Troff fonts, used by DMP} + {TRFONTS} + {} +\KpathKey + {truetype fonts} + {36} + {TrueType outline fonts} + {TTFONTS} + {.ttf, .ttc} +\KpathKey + {Type~1 fonts} + {32} + {Type 1 \PS{} outline fonts} + {T1FONTS, T1INPUTS, TEXPSHEADERS, DVIPSHEADERS} + {.pfa, .pfb} +\KpathKey + {type42 fonts} + {37} + {Type 42 \PS{} outline fonts} + {T42FONTS} + {} +\KpathKey + {vf} + {33} + {virtual fonts} + {VFFONTS, TEXFONTS} + {.vf} +\KpathKey + {web2c files} + {38} + {\Webc{} support files} + {WEB2C} + {} +\KpathKey + {other text files} + {39} + {text files used by `\textsf{foo}'} + {FOOINPUTS} + {} +\KpathKey + {other binary files} + {40} + {binary files used by `\textsf{foo}'} + {FOOINPUTS} + {} +\end{longtable} +\end{small} + + +\begin{multicols}{2} + + The last two entries in Table~\ref{tab:kpathsea} are special + cases, where the paths and environment variables depend on the name + of the program: the variable name is constructed by converting the + program name to upper case, and then appending \texttt{INPUTS}. + + The environment variables are set by default in the configuration + file \file{texmf.cnf}. It is only when you want to override one or + more of the values specified in that file that you might want to set + them explicitly in your execution environment. + + The \samp{-{}-format} and \samp{-{}-path} options are mutually + exclusive. + +\begin{ttdescription} + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Set the mode name to \ttvar{string}; this only affects \samp{gf} + and \samp{pk} lookups. No default: any mode will be found. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Do everything possible to find the files, notably including + searching the disk. By default, only the \file{ls-R} database is + checked, in the interest of efficiency. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Search along the path \ttvar{string} (colon-separated as usual), + instead of guessing the search path from the filename. \samp{//} and + all the usual expansions are supported. The options \samp{-{}-path} + and \samp{-{}-format} are mutually exclusive. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Set the program name to \texttt{\var{name}}. + This can affect the search paths via the \texttt{.\var{progname}} + feature. + The default is \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + shows the path used for file lookups of file type \texttt{\var{name}}. + Either a filename extension (\code{.pk}, \code{.vf}, etc.) or a + name can be used, just as with \samp{-{}-format} option. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + sets the debugging options to \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Examples of use} +\label{SExamplesofuse} + +Let us now have a look at \KPS{} in action. Here's a straightforward search: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} +/usr/local/texmf/tex/latex/base/article.cls +\end{alltt} +We are looking for the file \file{article.cls}. Since the \samp{.cls} +suffix is unambiguous we do not need to specify that we want to look for a +file of type \optname{tex} (\TeX{} source file directories). We find it in +the subdirectory \file{tex/latex/base} below the \samp{TEXMF} root +directory. Similarly, all of the following are found without problems +thanks to their unambiguous suffix. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +The latter is a \BibTeX{} bibliography database for \textsl{TUGBoat} articles. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Font bitmap glyph files of type \file{.pk} are used by display +programs like \cmdname{dvips} and \cmdname{xdvi}. Nothing is returned in +this case since there are no pre-generated Computer Modern \samp{.pk} +files on our system (since we use the Type~1 versions included in \TeXLive{}). +\begin{alltt} +> \Ucom{kpsewhich ecrm1000.pk} +\ifSingleColumn /usr/local/texmf/fonts/pk/ljfour/jknappen/ec/ecrm1000.600pk +\else +/usr/local/texmf/fonts/pk/ljfour/jknappen/ +... ec/ecrm1000.600pk +\fi\end{alltt} +For the extended Computer Modern files we had to generate \samp{.pk} +files, and since the default \MF{} mode on our installation is +\texttt{ljfour} with a base resolution of 600\dpi{} (dots per inch), +this instantiation is returned. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 ecrm1000.pk} +\end{alltt} +In this case, when specifying that we are interested in a resolution +of 300\dpi{} (\texttt{-dpi=300}) we see that no such font is available on +the system. In fact, a program like \cmdname{dvips} or \cmdname{xdvi} would +go off and actually build the \texttt{.pk} files at the required +resolution using the script \cmdname{mktexpk}. + +Next we turn our attention to \cmdname{dvips}'s header and configuration +files. We first look at one of the commonly used files, the general +prolog \file{tex.pro} for \TeX{} support, before turning our attention +to the generic configuration file (\file{config.ps}) and the +\PS{} font map \file{psfonts.map}. As the \samp{.ps} suffix is +ambiguous we have to specify explicitly which type we are considering +(\optname{dvips config}) for the file \texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/dvips/base/psfonts.map +\end{alltt} + +We now take a closer look at the \acro{URW} Times \PS{} support +files. The prefix for these in the standard font naming scheme is +\samp{utm}. The first file we look at is the configuration file, +which contains the name of the map file: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} +/usr/local/texmf/dvips/psnfss/config.utm +\end{alltt} +The contents of that file is +\begin{alltt} + p +utm.map +\end{alltt} +which points to the file \file{utm.map}, which we want to +locate next. +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" utm.map} +/usr/local/texmf/dvips/psnfss/utm.map +\end{alltt} +This map file defines the file names of the Type~1 \PS{} fonts in +the URW collection. Its contents look like (we only show part of the +lines): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf/fonts/type1/urw/utm/utmr8a.pfb +\else /usr/local/texmf/fonts/type1/ +...urw/utm/utmr8a.pfb +\fi\end{alltt} + +It should be evident from these few examples how you can easily locate +the whereabouts of a given file. This is especially important if you +suspect that the wrong version of a file is picked up somehow, since +\cmdname{kpsewhich} will show you the first file encountered. + +\subsubsection{Debugging actions} +\label{Debugging} + +Sometimes it is necessary to investigate how a program resolves file +references. To make this practical, \KPS{} offers various levels of +debugging output: + +\begin{ttdescription} +\item[\texttt{\ 1}] \texttt{stat} calls (disk lookups). When running + with an up-to-date \file{ls-R} database this should almost give no + output. +\item[\texttt{\ 2}] References to hash tables (such as the \file{ls-R} + database, map files, configuration files). +\item[\texttt{\ 4}] File open and close operations. +\item[\texttt{\ 8}] General path information for file types + searched by \KPS. This is useful to find out where a particular + path for the file was defined. +\item[\texttt{16}] Directory list for each path element (only relevant + for searches on disk). +\item[\texttt{32}] File searches. +\end{ttdescription} +A value of \texttt{-1} will set all the above options; in practice, +this is usually the most convenient value touse. + +Similarly, with the \cmdname{dvips} program, by setting a combination of +debug switches, one can follow in detail where files are being picked up +from. Alternatively, when a file is not found, the debug trace shows in +which directories the program looks for the given file, so that one can +get an indication what the problem~is. + +Generally speaking, as most programs call the \KPS{} library +internally, one can select a debug option by using the +\envname{KPATHSEA\_DEBUG} environment variable, and setting it to (a +combination of) values as described in the above list. + +(Note for Windows users: it is not easy to redirect +all messages to a file in this system. For diagnostic purposes +you can temporarily \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Let us consider, as an example, a small \LaTeX{} source file, +\file{hello-world.tex}, which contains the following input. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +This little file only uses the font \file{cmr10}, so let us look +how \cmdname{dvips} prepares the \PS{} file (we want to use the Type~1 +version of the Computer Modern fonts, hence the option \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In this case we have combined \cmdname{dvips}'s debug class 4 (font +paths) with \KPS's path element expansion (see \cmdname{dvips} Reference +Manual, \OnCD{texmf/doc/html/dvips/dvips_toc.html}). +The output (slightly rearranged) appears in +Figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{../examples/ex6a.tex} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\input{../examples/ex6b.tex} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\input{../examples/ex6c.tex} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} starts by locating its working files. First, +\file{texmf.cnf} is found, which gives the definitions of the search +paths for the other files, then the file database \file{ls-R} (to +optimize file searching) and the file \file{aliases}, which makes it +possible to declare several names (e.g., a short \acro{DOS}-like 8.3 and +a more natural longer version) for the same file. Then \cmdname{dvips} +goes on to find the generic configuration file \file{config.ps} +before looking for the customization file \file{.dvipsrc} (which, in +this case is \emph{not found}). Finally, \cmdname{dvips} locates the +config file for the Computer Modern \PS{} fonts \file{config.cms} +(this was initiated with the \texttt{-Pcms} option on the \cmdname{dvips} +command). This file contains the list of the map files which +define the relation between the \TeX{}, \PS{} and file system +names of the fonts. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} thus goes on to find all these files, plus the generic +map file \file{psfonts.map}, which is always loaded (it contains +declarations for commonly used \PS{} fonts; see the last part of +Section \ref{SExamplesofuse} for more details about \PS{} map +file handling). + +At this point \cmdname{dvips} identifies itself to the user: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Then it goes on to look for the prolog file \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Then it goes on to look for the prolog file \file{texc.pro} (see +Figure~\ref{fig:dvipsdbgb}). +\fi + +After having found the file in question, \cmdname{dvips} outputs +date and time, and informs us that it will generate the +file \file{hello-world.ps}, then that it needs the font file +\file{cmr10}, and that the latter is declared as ``resident'' (no +bitmaps needed): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Now the search is on for the file \file{cmr10.tfm}, which is found, +then a few more prolog files (not shown) are referenced, and finally +the Type~1 instance \file{cmr10.pfb} of the font is located and +included in the output file (see last line). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Runtime options} + +Another useful feature of \Webc{} is its possibility to control a number +of memory parameters (in particular, array sizes) via the runtime file +\file{texmf.cnf} read by \KPS{}. The memory settings can be found in +Part 3 of that file in the \TeXLive{} distribution. The more important +are: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + Total words of memory available, for + \TeX{}, \MF{} and \MP. You must make a new format file for each + different setting. For instance, you could generate a ``huge'' + version of \TeX{}, and call the format file \texttt{hugetex.fmt}. + Using the standard way of specifying the program name used by \KPS{}, + the particular value of the \texttt{main\_memory} variable will then + be read from \file{texmf.cnf} (compare the generic value + and the huge one instantiated by \texttt{hugetex}, + etc.). +\item[\texttt{extra\_mem\_bot}] + Extra space for ``large'' \TeX{} data structures: + boxes, glue, breakpoints, etc. Especially useful if you use + \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Number of words for font information available for \TeX. This + is more or less the total size of all TFM files read. +\item[\texttt{hash\_extra}] + Additional space for the hash table of control sequence names. + Approximately 10,000 control sequences can be stored in the main + hash table; if you have a large book with numerous cross-references, + this might not be enough. You can see that both the + \cmdname{hugetex} and \cmdname{pdflatex} program invocations ask for + an extra 15,000 control sequences (the default value of + \texttt{hash\_extra} is zero). +\end{ttdescription} + +\noindent Of course, this facility is no substitute for truly dynamic +arrays and memory allocation, but since this is extremely difficult to +implement in the present \TeX{} source, these runtime parameters provide +a practical compromise allowing some flexibility. + + +\section{Building on a new Unix platform} + +If you have a platform for which we have not created executables, you +will need to compile \TeX{} and friends from scratch. This is not as +hard as it sounds. What you need is all in the directory \texttt{source} +in the distribution. + +\subsection{Prerequisites} + +You will need at least 100 megabytes of disk space to compile all of +\TeX{} and its support programs. You'll also need an \acro{ANSI} C +compiler, a \cmdname{make} utility, a lexical scanner, and a parser +generator. We recommend the \acro{GNU} version of these programs +(\cmdname{gcc}, \acro{GNU} \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). You may be able to work with other C compilers and +\cmdname{make} programs, but you will need a good understanding of +building Unix programs to sort out problems. + +Also, the command \texttt{uname} must return a sensible value. + + +\subsection{Configuration} + +To begin, perform a normal installation of \TeXLive{} to your disk (see +section~\ref{sec:unix-install-disk} on +p.~\pageref{sec:unix-install-disk}). You may wish to skip installing +any of the prebuilt binaries. + +Then, unpack the source from the compressed \texttt{tar} file in the +directory \dirname{source} to your disk and change directory to where +you placed it. + +Next, run \cmdname{configure} with a command line like this: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +The \optname{-prefix} directory is the one where you installed the +support tree; the directory layout will be as follows (where \$TEXDIR +stands for the directory you chose): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & main tree with fonts,\\ + & \qquad macros, etc\\ + \dirname{$TEXDIR/man} & Unix manual pages\\ + \dirname{$TEXDIR/info} & \acro{GNU} style Info manuals\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaries\\ +\end{tabular} +%$ + +If you want to leave out the \dirname{$PLATFORM} directory level, +i.e., put the binaries directly into \dirname{$TEXDIR/bin}, specify +the \verb|--disable-multiplatform| option to \cmdname{configure}. + +Have a look at the output of \verb|./configure --help| for more +options you can use. For example, you can skip building of \OMEGA{} and +\eTeX{}. + + +\subsection{Running \cmdname{make}} + +Make sure the shell variable or option \texttt{noclobber} is not set. +Then, run the main \cmdname{make} like this: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +and relax\ldots + +Alternatively, you want to log all the output, as in: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Before you believe that everything went ok, please check the log file +for errors: \acro{GNU} \cmdname{make} always uses the string \samp{***} +whenever a command fails. Also, check if all the programs were built: + +\begin{alltt} +> \Ucom{cd \emph{TEXDIR}/bin/\emph{archname}} +> \Ucom{ls | wc} +\end{alltt} +The result should be over 200 (you can check the exact number with the +\dirname{bin} directory contents in the distribution). + +If you need special privileges for \texttt{make install}, you can +separate the \samp{make world} into two different runs, like this: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +After you've installed your new binaries, you should follow the normal +post-installation procedures, given in section~\ref{sec:postinstall} +on p.~\pageref{sec:postinstall}. + + +\section{Last words} + +This edition of \TeXLive{} is edited by Sebastian Rahtz, with the major +contributors being Fabrice Popineau, who has worked away unceasingly at +the Windows part of the package (especially the setup!)\ and contributed +in many different ways with ideas, advice and code, and Staszek +Wawrykiewicz, who provided great testing feedback, and co-ordinated the +Polish contributions. + +Kaja Christiansen performed a vital role in endless recompilations on +assorted Unix platforms. Vladimir Volovich did great work on cleaning +the source and making other improvements, while Gerben Wierda did all +the work for \MacOSX. + +\subsection{Acknowledgements} + +\TeXLive{} is a joint effort by virtually all \TeX{} Users Groups. In +particular, we are very grateful for past and present help from: + +\begin{itemize} + +\item The German-speaking \TeX{} Users (\acro{DANTE} e.V.), who provide +the hardware the \TeXLive{} source repository; and Rainer Sch\"opf and +Reinhard Zierke who look after it. \acro{DANTE} president Volker Schaa +coordinated production with the Lehmann's Bookstore +(\url{http://www.lob.de}). + +\item The Perforce corporation (\url{http://www.perforce.com}), for providing +a free copy of their excellent change management system, which we use to +manage. + +\item Karl Berry, who provided the original \Webc{} distribution, and +has continued to give invaluable advice, encouragement, and help. + +\item Mimi Burbank, who arranged access at the Florida State University +School of Computational Science and Information Technology to a slew of +different computers to compile \TeX{} on, and acted as an essential +guinea-pig whenever asked. + +\item Thomas Esser, without whose marvellous \teTeX{} package \TeXLive{} +would certainly not exist, and whose continual help makes it a better +product. + +\item Michel Goossens, who co-authored the documentation. + +\item Eitan Gurari, whose \TeX4ht was used to create the \HTML{} +version of this documentation, and who worked tirelessly to improve +it at short notice. + +\item Petr Olsak, who coordinated and checked all the Czech and Slovak +material very carefully. + +\item Olaf Weber, for his patient assembly and maintenance of Web2c. + +\item Graham Williams, on whose work the catalogue of packages depends. + +\end{itemize} + +In addition, Gerhard Wilhelms, Volker Schaa, Fabrice Popineau, Janka +Chleb\'\i{}kov\'a, Staszek Wawrykiewicz, Erik Frambach, and Ulrik Vieth +kindly translated documentation at various times into their respective +languages, checked other documentation, and provided very welcome +feedback. + + +\subsection{Release history} +\label{sec:history} + +Discussion began in late 1993 when the Dutch \TeX{} Users Group was +starting work on its 4All\TeX{} \CD{} for \acro{MS-DOS} users, and it +was hoped at that time to issue a single, rational, \CD{} for all +systems. This was too ambitious a target for the time, but it did spawn +not only the very successful 4All\TeX{} \CD{}, but also the \acro{TUG} +Technical Council working group on a \emph{\TeX{} Directory Structure} +(\url{http://tug.org/tds}), which specified how to create consistent and +manageable collections of \TeX{} support files. A complete draft of the +\TDS{} was published in the December 1995 issue of \textsl{TUGboat}, and +it was clear from an early stage that one desirable product would be a +model structure on \CD{}. The distribution you now have is a very direct +result of the working group's deliberations. It was also clear that the +success of the 4All\TeX{} \CD{} showed that Unix users would benefit +from a similarly easy system, and this is the other main strand of +\TeXLive. + +We first undertook to make a new Unix-based \TDS{} \CD{} in the autumn +of 1995, and quickly identified Thomas Esser's \teTeX{} as the ideal +setup, as it already had multi-platform support and was built with +portability across file systems in mind. Thomas agreed to help, and work +began seriously at the start of 1996. The first edition was released in +May 1996. At the start of 1997, Karl Berry completed a major new release +of Web2c, which included nearly all the features which Thomas Esser had +added in \teTeX, and we decided to base the 2nd edition of the \CD{} on +the standard \Webc, with the addition of \teTeX's \texttt{texconfig} +script. The 3rd edition of the \CD{} was based on a major revision of +\Webc, 7.2, by Olaf Weber; at the same time, a new revision of \teTeX +was being made, and \TeXLive{} included almost all of its features. The +4th edition followed the same pattern, using a new version of \teTeX, +and a new release of \Webc{} (7.3). The system now included a complete +Windows setup. + +For the 5th edition (March 2000) many parts of the \CD{} were revised +and checked, updating hundreds of packages. Package details were stored +in XML files. But the major change for \TeX\ Live 5 was that all +non-free software was removed. Everything in \TeXLive{} is now intended +to be compatible with the Debian Free Software Guidelines +(\url{http://www.debian.org/intro/free}); we have done our best to check +the license conditions of all packages, but we would very much +appreciate hearing of any mistakes. + +The 6th edition (July 2001) had much more material updated. The major +change was a new install concept: the user could select a more exact set +of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, +etc., but also prepares an appropriate \texttt{language.dat}. + +The 7th edition of 2002 had the notable addition of \MacOSX{} support, +and the usual myriad of updates to all sorts of packages and +programs. An important goal was integration of the source back with +\teTeX, to correct the drift apart in versions~5 and~6. + +In 2003, with the continuing flood of updates and additions, we found +that \TeXLive{} had grown so large it could no longer be contained on a +single \CD, so we split it into three different distributions (see +section~\ref{sec:multiple-dist} on p.~\pageref{sec:multiple-dist}). In +addition: + +\begin{itemize} +\item At the request of the \LaTeX{} team, we changed the standard + \cmdname{latex} and \cmdname{pdflatex} commands to now use \eTeX{} (see + p.~\pageref{text:etex}). +\item The new Latin Modern fonts were included (and are recommended). +\item Support for Alpha \acro{OSF} was removed + (\acro{HPUX} support was removed previously), since no one had (or + volunteered) hardware available on which to compile new binaries. +\item Windows setup was substantially changed; for the first time + an integrated environment based on XEmacs was introduced. +\item Important supplementary programs for Windows + (Perl, Ghost\-script, Image\-Magick, Ispell) are now installed + in the \TeXLive{} installation directory. +\item Font map files used by \cmdname{dvips}, \cmdname{dvipdfm} + and \cmdname{pdftex} are now generated by the new program + \cmdname{updmap} and installed into \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{}, and \MP{} now, by default, output 8-bit input + characters as themselves in output (e.g., \verb|\write|) files, + log files, and the terminal, i.e., \emph{not} translated using the + \verb|^^| notation. In \TeXLive{}~7, this translation was + dependent on the system locale settings; now, locale settings do + not influence the \TeX{} programs' behavior. If for some reason + you need the \verb|^^| output, rename the file + \verb|texmf/web2c/cp8bit.tcx|. (Future releases will have cleaner + ways to control this.) +\item This documentation was substantially revised. +\item Finally, since the edition numbers had grown unwieldy, + the version is now simply identified by the year: \TeXLive{} 2003. +\end{itemize} + + +\subsection{Future releases} + +\emph{\TeXLive{} is not perfect!} (And never will be.) We intend to +continue to release new versions yearly, and would like to provide more +help material, more utilities, more installation programs, and (of +course) an ever-improved and checked tree of macros and fonts. This work +is all done by hard-pressed volunteers in their limited spare time, and +a great deal remains to be done. If you can help, don't hesitate to put +your name forward! + +Please send corrections, suggestions, and offers of help to:\hfill\null +\begin{quote} +Sebastian Rahtz \ / \ 7 Stratfield Road \ / \ Oxford OX2 7BG \ / \ UK \\ +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Happy \TeX'ing!} + +\end{multicols} +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2004.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2004.tex new file mode 100644 index 00000000000..10e50ee5832 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2004.tex @@ -0,0 +1,3854 @@ +% $Id$ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +\documentclass{article} +\let\tldocenglish=1 % for live4ht.cfg +\usepackage{tex-live} +\begin{document} + +\title{% + {\huge \textit{The \protect\TL{} Guide}\\\strut} + {\LARGE \textsf{\TK{} 2004}} +} + +\author{Sebastian Rahtz \& Karl Berry, editors \\[3mm] + \url{http://tug.org/texlive/} + } + +\date{November 2004} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +\listoftables +\end{multicols} + +\section{Introduction} +\label{sec:intro} + +This document describes the main features of the \TL{} software +distribution\Dash a \TeX{} and \LaTeX{} distribution for Linux and other +Unix flavors, \MacOSX, and (32-bit) Windows systems. (Warning: it is +not especially useful for older Mac or \acro{MS-DOS} systems.) + +\TL{} includes precompiled binaries for \TeX{}, \LaTeXe{}, \MF, \MP, +\BibTeX{} and many other programs; an extensive collection of macros, +fonts and documentation; and support for typesetting in many different +scripts from around the world. It is part of the even larger \TK{} +(briefly described below in section~\ref{sec:struct-tl}, +\p.\pageref{sec:struct-tl}), a cooperative effort by the \TeX\ user +groups. + +For newer versions of the packages included here, please check +\acro{CTAN}: \url{http://www.ctan.org} + +For a brief summary of the major changes in this edition of \TL{}, +see section~\ref{sec:history} (\p.\pageref{sec:history}). + + +\subsection{Basic usage of \protect\TL{}} +\label{sec:basic} + +You can use \TL{} in three principal ways: + +\begin{enumerate} + +\item You can run \TL{} directly from the \DVD +(see section~\ref{sec:multiple-dist}, \p.\pageref{sec:multiple-dist}). +This takes almost no disk space, as you might expect, and gives you +immediate access to everything in \TL{}. Of course performance +will be worse than running on local disk, but you may well find it +acceptable. + +\item You can install all or part of \TL{} to a local disk. This +is the most common use of \TL. You will need (approximately) a +minimum of 100 megabytes, 310 megabytes for a recommended system, and +730 megabytes for a full system. + +\item You can integrate a particular package or collection into your +existing \TeX{} system, either a \TL{} system you installed +earlier, or a different system. + +\end{enumerate} + +\noindent All of these are described in detail in the \acro{OS}-specific +installation sections following, but here is a quick start: + +\begin{itemize*} + +\item The main installation script for Unix and \MacOSX{} is +\texttt{install-tl.sh}; + +\item The single package installation script is \texttt{install-pkg.sh}. + +\item Unfortunately, this version of \TL{} has no Windows installer, due +to technical difficulties. See section~\ref{sec:win-install} below +for more information. + +\end{itemize*} + + +\subsection{Getting help} +\label{sec:help} + +The \TeX{} community is both active and friendly, and virtually all +serious questions end up getting answered. However, the support is +informal, done by volunteers and casual readers, so it's especially +important that you do your homework before asking. (If you prefer +guaranteed commercial support, you can forego \TL{} completely and +purchase a vendor's system; \url{http://tug.org/interest.html#vendors} +has a list.) + +Here is a list of resources, approximately in the order we recommend +using them: + +\begin{description} +\item [Getting Started] If you are new to \TeX, the web page +\url{http://tug.org/begin.html} gives a brief introduction to the system. + +\item [\TeX{} \acro{FAQ}] The \TeX{} \acro{FAQ} is a huge compendium of +answers to all sorts of questions, from the most basic to the most +arcane. It is included on \TL{} in \OnCD{texmf-doc/doc/english/FAQ-en}, and is +available on the Internet through \url{http://www.tex.ac.uk/faq}. +Please check here first. + +\item [\TeX{} Catalogue] If you are looking for a specific package, +font, program, etc., the \TeX{} Catalogue is the place to look. It is a +huge list of all \TeX{}-related items. See +\OnCD{texmf-doc/doc/english/catalogue}, or +\url{http://www.ctan.org/tex-archive/help/Catalogue}. + +\item [\TeX{} Web Resources] The web page +\url{http://tug.org/interest.html} has many \TeX{}-related links, in +particular for numerous books, manuals, and articles on all aspects of +the system. + +\item [support archives] The two principal support forums are the +Usenet newsgroup \url{news:comp.text.tex} and the mailing list +\email{texhax@tug.org}. Their archives have years of past +questions and answers for your searching pleasure, via +\url{http://groups.google.com/groups?group=comp.text.tex} and +\url{http://tug.org/mail-archives/texhax}, respectively. And a general web +search, for example on \url{http://google.com}, never hurts. + +\item [asking questions] If you cannot find an answer, you can post to +\dirname{comp.text.tex} through Google or your newsreader, or to +\email{texhax@tug.org} through email. But before you post, +\emph{please} read this \acro{FAQ} entry for advice on asking questions +in such a way that you're most likely to get an answer: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + +\item [\TL{} support] If you want to report a bug or have +suggestions or comments on the \TL{} distribution, installation, or +documentation, the mailing list is \email{tex-live@tug.org}. However, +if your question is about how to use a particular program included in +\TL{}, you are better off writing to that program's maintainer or +mailing list. + +\end{description} + +The other side of the coin is helping others who have questions. Both +\dirname{comp.text.tex} and \code{texhax} are open to anyone, so feel +free to join, start reading, and help out where you can. Welcome to +\TeX{}! + + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{Structure of \protect\TeX\protect\ Live} +\label{sec:struct-tl} + +This section describes the structure and contents of \TL{} and the +\TK{} of which it is a part. + +\subsection{Multiple distributions: \protect\pkgname{live}, + \protect\pkgname{inst}, + \protect\pkgname{protext}} +\label{sec:multiple-dist} + +Space limitations of \acro{CD-ROM} format have forced us to divide +\TK{} into several distributions, as follows. + +\begin{description} + +\item [live] A complete system on \acro{DVD}; it is too large +for \acro{CD}. It can be run live or installed to disk. It also +includes a snapshot of the \CTAN{} repository, entirely independent of +\TL{}, as well as assorted other packages in a +\texttt{texmf-extra} directory. + +Unfortunately, this release of \TL{} does not include a Windows +installer, due to technical difficulties. (We hope there will be an +installer again in a few months.) Therefore, when the \DVD{} is mounted +on Windows, the setup program offers to start the \pkgname{protext} +installation (see below), and also mentions \CTAN{} and \TL{}, which are +in subdirectories of the top level of the \DVD{}. + +\CTAN{} and \texttt{texmf-extra} do not follow the same copying +conditions as \TL{}, so be careful when redistributing or +modifying. + +\item [inst(allable)] A complete system on \CD; in order to make this fit, +the packages and programs are compressed. Therefore, it is not possible +to run \TeX\ directly from the installable \CD, you have to install it +to disk (hence its name). Furthermore, it can only be installed on Unix +(including Linux, \MacOSX, etc.)\ systems, not Windows, although a set +of experimental Windows binaries is included (for sharing across +platforms). Installation is described in subsequent sections. + +\item [protext] An enhancement of the \MIKTEX\ system, for Windows. +\ProTeXt\ adds a few extra tools to \MIKTEX, and simplifies +installation. It is entirely independent of \TL{}, and has its own +installation instructions. It can be run live, or installed to disk. +The \ProTeXt\ home page is \url{http://tug.org/protext}. + +\ProTeXt\ is provided as both the top level of the \pkgname{live} \DVD\ +and on its own \CD\ (for those who cannot use the \DVD). + +\end{description} + +\noindent You can tell which type of distribution you're in by looking +for a \texttt{00\var{type}.TL} file at the top of the \TL{} directory. +This file also contains the \TL{} release date. + +Naturally, each user group chooses what to distribute, at its own +discretion. (\acro{TUG} is sending all three discs above to all of its +members.) + + +\subsection{Top level directories} +\label{sec:tld} + +Here is a brief listing and description of the top level directories in +the \TL{} distribution. This has changed considerably in 2004: the +single \texttt{texmf} tree has been split into several smaller trees. + +Also, on the \pkgname{live} \DVD, the entire \TL{} hierarchy is in a +subdirectory \dirname{texlive2004}, not at the top level of the disc. + +\smallskip +\begingroup + \renewcommand{\arraystretch}{1.3} % open up interrow spacing +\begin{tabular}{>{\ttfamily}lp{.78\hsize}} +bin & The \TeX{} system programs, arranged by platform. \\ +MacOSX & Supporting software for \MacOSX (see + section~\ref{sec:mac-install}, \p.\pageref{sec:mac-install}). \\ +source & The source of all programs, including the main \Webc{} + \TeX{} and \MF{} distributions. These are stored in a + \cmdname{bzip2}-compressed tar archive. \\ +support & Assorted auxiliary packages and programs. These are + \emph{not} installed automatically. This includes + assorted editors and \TeX\ shells. \\ +texmf & Tree for the programs, along with their support files and + documentation. Does not include \TeX\ formats and packages. \\ +texmf-dist & The main tree of formats and packages. \\ +texmf-doc & Tree for self-contained pure documentation, with no other + installed files.\hfil\break Arranged by language. \\ +texmf-var & Tree for files automatically generated and stored. \\ +xemtex & The \cmdname{XEmacs} editor and other support programs for + Windows. + These programs generally come pre-installed on Unix systems, or are + at least easy to compile. \\ +\end{tabular} +\endgroup + +\smallskip + +In addition to the directories above, the installation scripts and +\filename{README} files (in various languages) are at the top level of +the distribution. + +The (new) \dirname{texmf-doc} directory contains only documentation, but +it does not contain all the documentation. The documentation for the +programs (manuals, man pages, Info files) is in \dirname{texmf/doc}, +since the programs are in \dirname{texmf}. Similarly, the documentation +for \TeX\ packages and formats is in \dirname{texmf-dist/doc}. You can +use the \cmdname{texdoc} or \cmdname{texdoctk} programs to find any +documentation wherever it's located. The comprehensive links in the +top-level file \OnCD{doc.html} may also be helpful. + + +\subsection{Extensions to \protect\TeX} +\label{sec:tex-extensions} + +\TL{} contains several extended versions of \TeX: + +\begin{description} + +\item [\eTeX] adds a small but powerful set of new primitives +\label{text:etex} (related to macro expansion, character scanning, +classes of marks, additional debugging features, and more) and the +\TeXXeT{} extensions for bidirectional typesetting. In default mode, +\eTeX{} is 100\% compatible with ordinary \TeX. See +\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] writes Acrobat \acro{PDF} format as well as \dvi{}. The +\LaTeX{} \pkgname{hyperref} package has an option `\optname{pdftex}' +which turns on all the program features. See +\OnCD{texmf/doc/pdftex/manual/pdftex-a.pdf} (A4 paper) or +\OnCD{texmf/doc/pdftex/manual/pdftex-l.pdf} (letter paper), and +\OnCD{texmf/doc/pdftex/examples/example.tex}. + +\item [pdfe\TeX] combines the pdf\TeX\ and \eTeX\ extensions. This is +the default program for all formats except plain \TeX. +See above for documentation. + +\item [\OMEGA\ (Omega)] is based on Unicode (16-bit characters), thus +supports working with almost all the world's scripts simultaneously. It +also supports so-called `\OMEGA{} Translation Processes' (\acro{OTP}s), +for performing complex transformations on arbitrary input. See +\OnCD{texmf-dist/doc/omega/base/doc-1.8.tex} (not completely up-to-date). + +\item [Aleph] combines the \OMEGA\ and \eTeX\ extensions. +See \OnCD{texmf-dist/doc/aleph/base} for some minimal documentation. + +\end{description} + + +\subsection{Other notable programs in \protect\TL} + +Here are a few other commonly-used programs included in \TL{}: + +\begin{cmddescription} + +\item [bibtex] bibliography support. + +\item [makeindex] index support. + +\item [dvips] convert \dvi{} to \PS{}. + +\item [xdvi] \dvi{} previewer for the X Window System. + +\item [dvilj] \dvi{} drive for the HP LaserJet family. + +\item [dv2dt, dt2dv] convert \dvi{} to/from plain text. + +\item [dviconcat, dviselect] cut and paste pages +from \dvi{} files. + +\item [dvipdfm] convert \dvi{} to \acro{PDF}, an alternative approach +to pdf\TeX\ (mentioned above). See the \pkgname{ps4pdf} and +\pkgname{pdftricks} packages for still more alternatives. + +\item [psselect, psnup, \ldots] \PS{} +utilities. + +\item [lacheck] \LaTeX{} syntax checker. + +\item [texexec] Con\TeX{}t and \acro{PDF} processor. + +\item [tex4ht] \TeX{} to \acro{HTML} converter. + +\end{cmddescription} + + +\section{Unix installation} +\label{sec:unix-install} + +As introduced in section~\ref{sec:basic} (\p.\pageref{sec:basic}), +\TL{} has three principal uses: + +\begin{enumerate} +\item Run directly from media. +\item Install to disk. +\item Integrate a particular package or collection into your existing +\TeX{} installation. +\end{enumerate} + +\noindent The following sections describes the Unix-specific procedures +for each of these. + +\ifSingleColumn \begin{figure}[ht]\noindent \fi +\begin{warningbox} +\textbf{Warning: } The \TK{} \CD{}s and \DVD{} are in ISO 9660 (High Sierra) +format, \emph{with} Rock Ridge (and Joliet, for Windows) +extensions. Therefore, in order to take full advantage of the \TK{} +under Unix, your system needs to be able to use the Rock Ridge +extensions. Please consult the documentation for your \cmdname{mount} +command to see how to do this. If you have several different machines +on a local network, you may be able to mount the \CD{}s on one which +does support Rock Ridge, and use this with the others. + +\leavevmode\quad Linux, \acro{BSD}, Sun, and \acro{SGI} +systems should be able to use the \CD{}s without problems. We +would appreciate receiving detailed advice from users on other systems +who succeed, for future versions of this documentation. + +\leavevmode\quad +The discussion below assumes you have been able to mount +the \CD{}s with full Rock Ridge compatibility. +\end{warningbox} +\ifSingleColumn\end{figure}\fi + + +% +\subsection{Running \protect\TL{} directly from media (Unix)} + +\def\runlive{% text repeated in windows section +It is possible to use the \TeX{} system directly from the \pkgname{live} +\DVD{}, without installing the distribution to disk. (Thus the name +\TeX\ `Live', in fact.) It is \emph{not} possible to run \TeX{} +directly from the other \CD s (see section~\ref{sec:multiple-dist}, +\p.\pageref{sec:multiple-dist}). +} + +\def\startinst{% repeated in other subsections +To start, you mount the \CD{} or \DVD{}, with Rock Ridge extensions +enabled. The exact command to do this varies from system to system; the +following works under Linux, except the name of the device +(\filename{/dev/cdrom}, here) may vary. (All our examples will use +\texttt{>} as the shell prompt; user input is +\Ucom{\texttt{underlined}}.) +\begin{alltt} +> \Ucom{mount -t iso9660 /dev/cdrom /mnt/cdrom} +\end{alltt} + +\noindent Change the current directory to the mount point: +\begin{alltt} +> \Ucom{cd /mnt/cdrom} +\end{alltt} + +\noindent Under \MacOSX, the directory is typically under +\dirname{/Volumes}, and the media will be mounted automatically. + +Run the installation script \filename{install-tl.sh}: +\begin{alltt} +> \Ucom{sh install-tl.sh}\\ +Welcome to TeX Live... +\end{alltt} + +\noindent After various greeting messages and a list of the main menu +options, the installation will ask you to enter a command. Do this by +typing the desired character and hitting return; don't type the angle +brackets. Either uppercase or lowercase is ok; we'll use lowercase in +our examples. +} + +\runlive +\startinst + +For running live, our first command will be \Ucom{d} and then the +subcommand \Ucom{1} to set directories. Even in this case, we must +choose a directory on the local disk to place files that the \TeX{} +system itself generates, such as fonts and formats, and also to provide +a place for updated configuration files, if need be. We'll use +\dirname{/usr/local/texmf-local} in this example. (If the default value +of \dirname{/usr/TeX} works for you, then you can skip this step.) +\begin{alltt} +Enter command: \Ucom{d} +Current directories setup: +<1> TEXDIR: /usr/TeX +... +Enter command: \Ucom{1} +New value for TEXDIR [/usr/TeX]: \Ucom{/usr/local/texmf-local} +... +Enter command: \Ucom{r} +\end{alltt} + +\noindent Back at the main menu, our second and last command is +\Ucom{r}, to set up for running live off the media without installing +to disk: +\begin{alltt} +Enter command: \Ucom{r} +Preparing destination directories... +... +Welcome to TeX Live! +> +\end{alltt} + +\noindent And we are back at the system prompt, as shown. + +Next, it is necessary to alter two environment variables: +\envname{PATH}, to an architecture-dependent value (so that we can run +the programs), and \envname{VARTEXMF}, to the value specified above. See +table~\ref{tab:archlist} for a list of the architecture names for the +different systems. + + +\def\textruntexconfig{% +After the main installation has completed, and environment variables +have been set, the last step is to run \cmdname{texconfig} to customize +your installation for your needs. This is explained in +section~\ref{sec:texconfig}, \p.\pageref{sec:texconfig}. +} +\textruntexconfig + +\begin{table*}[ht] +\caption[Supported system architectures.]{Supported system +architectures. In addition to the version-specific names listed here, +there are generic names without the version numbers. For instance, +\texttt{sparc-solaris} links to \texttt{sparc-solaris2.7}. The generic +names can be used to protect against the version numbers changing in the +future, if you wish.} +\label{tab:archlist} +\begin{tabular}{>{\ttfamily}ll} +alpha-linux & HP Alpha GNU/Linux \\ +%alphaev5-osf4.0d & HP Alphaev5 OSF \\ +%hppa2.0-hpux10.20 & HP9000 HPUX 10.20 \\ +i386-freebsd4.10 & Intel x86 FreeBSD \\ +i386-linux & Intel x86 GNU/Linux \\ +%i386-openbsd3.3 & Intel x86 OpenBSD \\ +%i386-solaris2.8 & Intel x86 Solaris \\ +mips-irix6.5 & SGI IRIX \\ +powerpc-aix4.3.3.0 & IBM RS/6000 AIX \\ +powerpc-darwin6.8 & \MacOSX \\ +sparc-solaris2.7 & Sun Sparc Solaris \\ +sparc64-linux & Sun Sparc GNU/Linux \\ +win32 & Windows (32-bit) \\ +x86\_64-linux & Intel/AMD 64-bit GNU/Linux \\ +\hline +\end{tabular} +\end{table*} + +\label{text:path} +The syntax for setting the environment variables, and the initialization +file to put them in, depends on the shell you use. If you use a +Bourne-compatible shell (\cmdname{sh}, \cmdname{bash}, \cmdname{ksh}, et +al.), put the following into your \filename{$HOME/.profile} file: +\begin{alltt} +PATH=/mnt/cdrom/bin/\var{archname}:$PATH; export PATH +VARTEXMF=/usr/local/texmf-local/texmf-var; export VARTEXMF +\end{alltt} + +\noindent For C shell-compatible shells (\cmdname{csh}, \cmdname{tcsh}), +put the following into your \filename{$HOME/.cshrc} file: +\begin{alltt} +setenv PATH /mnt/cdrom/bin/\var{archname}:$PATH +setenv VARTEXMF /usr/local/texmf-local/texmf-var +\end{alltt} + +\noindent Then log out, log back in, and test your installation +(see section~\ref{sec:test-install}, \p.\pageref{sec:test-install}). + +\def\textifindoubt{% +If in doubt, please ask any local system gurus to help you with +problems; for example, the way to mount the \TL{} media, which +directory or directories to use, and precise details of the changes to +your personal initialization files can and do vary from site to site. +} +\textifindoubt + + +% +\subsection{Installing \protect\TeX\protect\ Live to disk} +\label{sec:unix-install-disk} + +It is possible, indeed typical, to install the \TeX{} system from the +\TL{} to disk. This can be done either from any of the \TK{} discs. +(See section~\ref{sec:multiple-dist}, \p.\pageref{sec:multiple-dist}, +for an explanation of the different distributions.) + +\startinst + +Table~\ref{tab:main-menu-options} briefly lists the options in the main +menu. The order in which you select the options makes little +difference, except that \Ucom{i} must be last. It's reasonable to go +through them in the order presented here. + +% apparently here.sty [H] doesn't support table*. +\begin{table}[H] +\caption{Main menu options for the installation.} +\label{tab:main-menu-options} +\begin{tabular}{>{\ttfamily}ll} +p & The platform you are running on.\\ +b & The architectures for which to install binaries.\\ +s & The base installation scheme to use (minimal, recommended, + full, etc.)\\ +c & Override the base scheme for individual collections.\\ +l & Override for language collections.\\ +d & Directories in which to install.\\ +o & Other options.\\ +i & Perform the installation.\\ +\end{tabular} +\end{table} + +Here are further details on each option. + +\textbf{\optname{p} -- Current platform.} Since the installation script +automatically guesses which platform you're running on, it is generally +unnecessary to use this option. It's there in case you need to override +the automatic detection. + +\textbf{\optname{b} -- Binary architectures.} By default, only the +binaries for your current platform will be installed. From this menu, +you can select installation of binaries for other architectures as well +(or not install the current platforms). This can be useful if you are +sharing a \TeX\ tree across a network of heterogenous machines. For a +list of the supported architectures, see table~\ref{tab:archlist}, +\p.\pageref{tab:archlist}. + +\textbf{\optname{s} -- Base installation scheme.} From this menu, you +can choose an overall common set of packages, called a ``scheme''. The +default \optname{recommended} scheme suffices for typical needs, but you +can also choose the \optname{basic} scheme if you are low on disk space, +or \optname{full} to get absolutely everything. There are also specific +sets for Omega and \acro{XML}. + +\textbf{\optname{c} -- Individual collections.} From this menu, you can +override the base scheme's set of collections to install. Collections +are one level lower than schemes\Dash collections consist of +one or more packages, where packages (the lowest level grouping in \TL) +contain the actual \TeX\ macro files, font families, and so on. +In this menu, selection letters are case-sensitive. + +\textbf{\optname{l} -- Language collections}. This menu has the same +basic purpose as \Ucom{c}, to override the base scheme. In this case, +the collections are specifically for different languages. Selection +letters are case-sensitive here. Here is a list of the language +collections in \TL: + +% xx really should generate list from texmf/tpm/collection/tex-lang* +% a la install-tl.sh. +\begin{tabbing} +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \kill +(some) African scripts \> +Arabic \> +Armenian \> +Chinese\,Japanese\,Korean \\ +Croatian \> +Cyrillic \> +Czech/Slovak \> +Danish \\ +Dutch \> +Finnish \> +French \> +German \\ +Greek \> +Hungarian \> +Indic \> +Italian \\ +Latin \> +Manju \> +Mongolian \> +Norwegian \\ +Polish \> +Portuguese \> +Spanish \> +Swedish \\ +Tibetan \> +\acro{UK} English \> +Vietnamese \\ +\end{tabbing} + +\noindent Language collections typically include fonts, macros, +hyphenation patterns, and other support files. (For instance, +\pkgname{frenchle.sty} is installed if you select the \optname{French} +collection.) In addition, installing a language collection will alter +the \filename{language.dat} configuration file controlling which +hyphenation patterns are loaded. + +\textbf{\optname{d} -- Installation directories}. Three directories can +be changed here: +\label{text:instdir} + +\begin{ttdescription} +\item [TEXDIR] The top-level directory under which +everything else will be installed. The default value is +\dirname{/usr/TeX}, and is often changed. For example, changing to a +value such as \dirname{/usr/local/texlive2003} would make it possible to +keep different releases of \TL{} separate. (You may then wish to make +\dirname{/usr/local/texlive} a symbolic link, after testing the new +release.) + +Under \MacOSX, the usual frontends look for \TeX{} in +\dirname{/usr/local/teTeX}, so you may wish to install \TL{} there. + +\item [TEXMFLOCAL] This tree is where the \TeX{} system (not as part of +installation, but rather over time) puts non-version-specific files, +primarily fonts. The default value is \dirname{TEXDIR/texmf-local}. +However, it's also the recommended location to put any local packages or +configuration settings. Therefore, it's desirable to change it to a +location independent of the current \TL{} release; for example, +\dirname{/usr/local/texmf-local}. + +\item [VARTEXMF] This tree is where the system puts files that +\emph{are} version-specific, primarily format files and the +configuration files which are modified by \cmdname{texconfig} (see +section~\ref{sec:texconfig}, \p.\pageref{sec:texconfig}). The default +value is \dirname{TEXDIR/texmf-var}, and there's generally no reason to +change it. + +\end{ttdescription} + +\textbf{\optname{o} -- Other options.} From this menu, you can select +the following general options: + +\begin{ttdescription} +\item [a] Specify an alternate directory for generated fonts. +The default is to use the \envname{VARTEXMF} tree, as explained above. +Setting this is useful if you plan to mount the main tree read-only, and +therefore you need another location (perhaps host-specific) for +dynamically created fonts. + +\item [l] Create symbolic links for the binaries, man pages, +and\slash or \acro{GNU} Info files in other locations. For example, you may +wish to make the man pages available under \dirname{/usr/local/man} and +the Info files available under \dirname{/usr/local/info}. (Of course +you need appropriate privileges to write in the specified directories.) + +It is not advisable to overwrite a \TeX\ system that came with your +system with this option. It's intended more for having the links in +standard directories known to users, such as \dirname{/usr/local/bin}, +which don't already contain any \TeX\ files. + +\item [d] Skip installation of the font/macro documentation tree. +This is useful if you need to save space, or if you've previously +installed the documentation elsewhere. + +\item [s] Skip installation of the main font/macro source +tree. This is useful if you are arranging to share that tree between +machines and\slash or architectures in some other way, such as \acro{NFS}. + +\end{ttdescription} + +\textbf{i -- Perform installation.} When you're satisfied with your +configuration options, enter \Ucom{i} to actually do the installation +from the media to your chosen locations. + +% text is similar to above, but no VARTEXMF, so we have to write out. +After the installation completes, your next step is to include the +architecture-specific subdirectory of \dirname{TEXDIR/bin} in your +\envname{PATH}, so the newly-installed programs can be found. The +architecture names are listed in table~\ref{tab:archlist}, +\p.\pageref{tab:archlist}, or you can simply list the directory +\dirname{TEXDIR/bin}. + +The syntax for doing this, and the initialization file to use, depends +on your shell. If you use a Bourne-compatible shell (\cmdname{sh}, +\cmdname{bash}, \cmdname{ksh}, et al.), put the following into your +\filename{$HOME/.profile} file: + +\begin{alltt} +PATH=/mnt/cdrom/bin/\var{archname}:$PATH; export PATH +\end{alltt} + +\noindent For C shell-compatible shells (\cmdname{csh}, \cmdname{tcsh}), +put the following into your \filename{$HOME/.cshrc} file: +\begin{alltt} +setenv PATH /mnt/cdrom/bin/\var{archname}:$PATH +\end{alltt} + +\textruntexconfig + +Here is a brief annotated example which selects a full installation, +with binaries for the current system only, with directory changes as +recommended above. The prompts and \acro{RETURN}s are omitted for +brevity. + +\begin{alltt} +> \Ucom{sh install-tl.sh} +\Ucom{s} \Ucom{b} \Ucom{r} # scheme, full, return to main +\Ucom{d} # change directories +\Ucom{1} \Ucom{/usr/local/texlive2003} # top-level dir +\Ucom{2} \Ucom{/usr/local/texmf-local} # TEXMFLOCAL outside TEXDIR +\Ucom{r} # return to main +\Ucom{i} # perform installation +> \Ucom{texconfig} ... +# New PATH, with Linux as the example: +> \Ucom{PATH=/usr/local/texlive2003/bin/i386-linux:$PATH; export PATH} +\end{alltt} + +\textifindoubt + + +% +\subsection{Installing individual packages to disk} + +You can add individual packages or collections from the current +distribution to an existing non-\TL{} setup, or an earlier +\TL{} installation. + +\startinst + +Run the installation script \filename{install-pkg.sh} (not +\filename{install-tl.sh}, which is intended for complete installations +only): +\begin{alltt} +> \Ucom{sh install-pkg.sh \var{options}} +\end{alltt} + +The first set of options controls what gets read: + +\begin{ttdescription} +\item [-{}-package=\var{pkgname}] The individual package to work on. + +\item [-{}-collection=\var{colname}] The individual collection to work on. + +\item [-{}-nodoc] Exclude documentation files from the operation. + +\item [-{}-nosrc] Exclude source files from the operation. + +\item [-{}-cddir=\var{dir}] Source directory to read from; defaults +to the current directory. If you followed the instructions above, that +will be the distribution directory, and won't need to be changed. + +\item [-{}-listdir=\var{dir}] The so-called `lists' directory within +\var{cddir} from which to read the package information. The only +reason to change the default is if you're making changes to \TL{} +yourself. + +\end{ttdescription} + +What actually happens is controlled by the following options. If +neither of these are specified, the default action is to install the +selected files. The main destination tree is found by expanding +\envname{\$TEXMFMAIN} with \cmdname{kpsewhich}. You can override it by +setting either the environment variable \envname{TEXMFMAIN} or +\envname{TEXMF}. + +\begin{ttdescription} +\item [-{}-listonly] List the files that would be installed, but don't +actually install anything. + +\item [-{}-archive=\var{tarfile}] Instead of installing the files into +the \TeX{} system, make a \cmdname{tar} archive. + +\end{ttdescription} + +Additional options: + +\begin{ttdescription} + +\item [-{}-config] After installation, run \code{texconfig init}. + +\item [-{}-nohash] After installation, don't run \cmdname{mktexlsr} to +rebuild the filename database. + +\item [-{}-verbose] Give more information as the script runs. + +\end{ttdescription} + +Here are some usage examples: + +\begin{enumerate} + +\item To see the files in the package \pkgname{fancyhdr} without +installing it: + +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=fancyhdr --listonly} +\else> \Ucom{sh install-pkg.sh --package=fancyhdr \bs} +> \Ucom{--listonly} +\fi{} +texmf/doc/latex/fancyhdr/README +texmf/doc/latex/fancyhdr/fancyhdr.dvi +texmf/doc/latex/fancyhdr/fancyhdr.pdf +... +\end{alltt} + +\item Install the \LaTeX{} package \pkgname{natbib}: +\begin{alltt} +> \Ucom{sh install-pkg.sh --package=natbib} +\end{alltt} + +\item Install the \LaTeX{} package \pkgname{alg} without source files or +documentation: +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=alg --nosrc --nodoc} +\else> \Ucom{sh install-pkg.sh -{}-package=alg \bs} +> \Ucom{-{}-nosrc -{}-nodoc} +\fi\end{alltt} + +\item Install all the packages in the collection of additional +plain \TeX\ macros: +\begin{alltt} +> \Ucom{sh install-pkg.sh --collection=tex-plainextra} +\end{alltt} + +\item Write all files in the \pkgname{pstricks} package to a +\cmdname{tar} file in \path|/tmp|: +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=pstricks --archive=/tmp/pstricks.tar} +\else +> \Ucom{sh install-pkg.sh -{}-package=pstricks \bs} +> \Ucom{-{}-archive=/tmp/pstricks.tar} +\fi\end{alltt} + +\end{enumerate} + +\textifindoubt + + +% +\section{Post-installation} +\label{sec:postinstall} + +After the main installation is done, for any operating system, the +remaining steps are to configure the system for your local needs, and +perform some basic tests. + +Another sort of post-installation is to acquire packages, fonts, or +programs that were not included in \TL{}. The basic idea is to +install such additions in the \envname{TEXMFLOCAL} tree (if you +installed to disk), or \envname{VARTEXMF} (if you are running live). +See the ``Installation directories'' option on \p.\pageref{text:instdir}. + +Unfortunately, the details can and do vary widely, and so we do not attempt to +address them here. Here are some external links to descriptions: +\begin{itemize*} +\item +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=instpackages} +\item +\url{http://www.ctan.org/installationadvice} +\item +\url{http://www.ctan.org/tex-archive/info/beginlatex/html/chapter5.html#pkginst} +\item +\url{http://www.ctan.org/tex-archive/info/Type1fonts} for font creation +and installation information in particular. +\end{itemize*} + + +\subsection{The \protect\cmdname{texconfig} program} +\label{sec:texconfig} + +At any time after installation, you can and should use the program +\cmdname{texconfig} to configure the system to fit your local needs. It +is installed in the architecture-specific subdirectory +\texttt{TEXDIR/bin/\var{arch}} along with everything else. + +If you run it without arguments, it will enter full-screen mode and +allow you to view and change options interactively. + +You can also run it with various command-line options. Here are some of +the most common (a \TL{} installation is configured for the A4 paper +size by default): + +\begin{ttdescription} + +\item [texconfig paper letter] Set default paper size for +various programs and drivers (\cmdname{pdftex}, \cmdname{dvips}, +\cmdname{dvipdfm}, \cmdname{xdvi}) to be \acro{US} letter. The other +allowable size is \optname{a4}, which is the default. + +\item [texconfig localsetup] Verify that paths are set ok. + +\item [texconfig rehash] Update all the \TeX{} system filename databases. + +\item [texconfig faq] Show the \teTeX{} \acro{FAQ}. +(See also the main \TeX{} \acro{FAQ} in \OnCD{texmf-doc/doc/english/FAQ-en}.) + +\item [texconfig help] Output help information for \cmdname{texconfig}. + +\end{ttdescription} + +Of course, \cmdname{texconfig} can only support changing a few of the +many options and configuration parameters in a \TeX{} system. The main +configuration file for the base \Webc{} programs is named +\filename{texmf.cnf}. You can find its location by running +\samp{kpsewhich texmf.cnf}; it contains many comments explaining the +default settings and useful alternatives. + + +\subsection{Testing the installation} +\label{sec:test-install} + +After installing \TL{} as best you can, you naturally want to test +it out, so you can start creating beautiful documents and\slash or fonts. + +This section gives some basic procedures for testing that the new system +is functional. We give Unix commands; under \MacOSX{} and Windows, +you're more likely to run the tests through a graphical interface, but +the principles are the same. + +\begin{enumerate} + +\item Make sure that you can run the \cmdname{tex} program in the first +place: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.141592 (Web2C 7.5.3) +kpathsea version 3.5.3 +Copyright (C) 1997-2004 D.E. Knuth. +... +\end{alltt} +If this comes back with `command not found' instead of version and +copyright information, most likely you don't have the correct +\dirname{bin} subdirectory in your \envname{PATH}. See +the environment-setting information on \p.\pageref{text:path}. + +\item Process a basic \LaTeX{} file: +\begin{alltt} +> \Ucom{latex sample2e.tex} +This is pdfeTeXk, Version 3.141592... +... +Output written on sample2e.dvi (3 pages, 7496 bytes). +Transcript written on sample2e.log. +\end{alltt} +If this fails to find \filename{sample2e.tex} or other files, perhaps +you have interference from old environment variables or configuration +files. For a deep analysis, you can always ask \TeX{} to report on +exactly what it is searching for, and finding; see ``Debugging actions'' +on page~\pageref{Debugging}. + +\item Preview the result online: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} +\end{alltt} +(Under Windows, the analogous command is \cmdname{windvi}.) You should +see a new window with a nice document explaining some of the basics of +\LaTeX{}. (Well worth reading, by the way if you're new to the system.) +You do have to be running under X for \cmdname{xdvi} to work; if you're +not, or your \envname{DISPLAY} environment variable is set incorrectly, +you'll get an error \samp{Can't open display}. + +\item Create a \PS{} file for printing or display: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Create a \acro{PDF} file instead of \dvi{}; this processes the +\filename{.tex} file and writes \acro{PDF} directly: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Preview the \acro{PDF} file: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Unfortunately neither \cmdname{gv} nor \cmdname{xpdf} are currently +included in \TL{}, so you must install them separately. See +\url{http://wwwthep.physik.uni-mainz.de/~plass/gv} and +\url{http://www.foolabs.com/xpdf}, respectively. + +\item Other standard test files you may find useful: + +\begin{ttdescription} +\item [small2e.tex] A simpler document than \filename{sample2e}, to +reduce the input size if you're having troubles. +\item [testpage.tex] Test if your printer introduces any offsets. +\item [nfssfont.tex] For printing font tables and tests. +\item [testfont.tex] Also for font tables, but using plain \TeX{}. +\item [story.tex] The most canonical (plain) \TeX{} test file of all. +You must type \samp{\bs bye} to the \code{*} prompt after \samp{tex +story.tex}. +\end{ttdescription} +You can process these in the same way as we did with +\filename{sample2e.tex}. + +\end{enumerate} + +If you are new to \TeX{}, or otherwise need help with actually +constructing \TeX{} or \LaTeX{} documents, please visit +\url{http://tug.org/begin.html}. We especially recommend the +\textsl{Formatting Information} manual by Peter Flynn, available at +\url{http://www.ctan.org/tex-archive/documentation/beginlatex}. + + +\section{\MacOSX{} installation} +\label{sec:mac-install} + +\TL{} supports \MacOSX, but no prior Macintosh versions. (If you +are running an older Mac version, you can view the files by installing +the Joliet system extension available from +\url{http://www.tempel.org/joliet}; however, the \TL{} binaries +will not run.) + +Installation of \TeX{} under \MacOSX{} can be done in two ways: + +\begin{enumerate} +\item With the \filename{install*} scripts, as with Unix. +\item With the \cmdname{i-Installer} included in +\filename{MacOSX/II2.dmg}. +\end{enumerate} + +\noindent Each of these is described in a following section. + +In addition, \TeX{} under \MacOSX\ typically uses a ``frontend''. This +is also described below. + + +\subsection{\protect\cmdname{i-Installer}: Internet installation} +\label{sec:i-Installer} + +The \cmdname{i-Installer} is included in the \TL{} distribution as +an alternative to normal installation. It does not use the contents of +the \TL{} distribution at all; instead, the system (approximately +70 megabytes) is downloaded over the Internet. + +One advantage of \cmdname{i-Installer} is that it makes updates +relatively painless. If you are interested, please see the +\cmdname{i-Installer} \TeX{} home page at \url{http://www.rna.nl/tex.html}. + +To use it, mount \filename{./MacOSX/II2.dmg}. Read the documentation, +launch it, and install at least \texttt{TeX Foundation} and \texttt{TeX +Programs}. The first will finish without configuration, as soon as the +second is installed you will be presented with a graphical interface to +setting up your \TeX{} system. + +The \cmdname{i-Installer} distribution uses the \teTeX{} \dirname{texmf} +tree with some additions. Due to differences between \TL{} and +\teTeX{} you cannot update a \TL{} installation with an +\cmdname{i-Installer} \texttt{TeX Programs} i-Package. + + +\subsection{\protect\cmdname{install*.sh}: \protect\TL{} installation} + +In order to run the installation scripts under \MacOSX, you need to have +the \cmdname{bash} shell installed. If you are running \MacOSX~10.2 +or later, you have \cmdname{bash}, and can proceed. If you're running +an earlier \MacOSX{} version, however, the default shell is +\cmdname{zsh}, which won't work; you'll need to get \cmdname{bash} from +the Internet, or more likely upgrade your system. + +Once you have \cmdname{bash}, the Unix installation documentation in the +previous section can be followed. See section~\ref{sec:unix-install} on +\p.\pageref{sec:unix-install}; \MacOSX-specific notes are included there +where needed. + + +\subsection{\MacOSX{} frontends} + +Using \TeX{} on a Macintosh typically goes through a front end program, +comprising an execution shell, editor, previewer, and other facilities, +with a graphical interface. Here are the principal frontends: + +\begin{cmddescription} +\item [TeXShop] Included in \TL{} as \filename{./MacOSX/texshop.dmg}. + \\See \url{http://www.uoregon.edu/~koch/texshop/texshop.html}. + +\item [ITeXMac] Included in \TL{} as \filename{./MacOSX/iTM-*.dmg}. + \\See \url{http://itexmac.sourceforge.net}. + +\item [Mac-emacs] A port of Emacs to \MacOSX{}, integrating \pkgname{AucTeX}. + \\See \url{http://www.cs.man.ac.uk/~franconi/mac-emacs}. + +\end{cmddescription} + +The frontends use \dirname{/usr/local/teTeX} as the default location; +therefore, you must either install \TL{} there, or change the +configuration of the frontend. + + +\section{Windows installation} +\label{sec:win-install} + +Unfortunately, this release of \TL{} does not include a Windows +installer, due to technical difficulties. We hope that an installer +will be available again in a few months. (It is being completely +rewritten to use standard Microsoft libraries, instead of the homegrown +\filename{TeXSetup.exe}.) + +A set of experimental Windows binaries is included, nevertheless. You +can install them with the Unix \filename{install-tl.sh} script: select +the \optname{win32} system from the \optname{S} option of the top-level +menu. The \pkgname{XEmacs} package is not included, however, due to +space. + +(Meanwhile, if you are an experienced Windows programmer and would like +to help with the project, email us!) + + +\begin{comment} +\TL{} can be installed on systems running Windows 9x, \acro{ME}, +\acro{NT}, \acro{2K} or \acro{XP}. Older versions of Windows (3.1x) +and \acro{MS-DOS} are not supported. + +It is necessary to have your Windows set up so that it uses the +Microsoft Joliet extensions for reading \CD{}s; simply look at the \CD{} +in Explorer and see whether it shows long, mixed-case, file names. If it +does not, you must install the Joliet extensions. + +The Windows \TeX{} system included in \TL{} is no more and no less +than the \fpTeX{} distribution. It includes a \texttt{dvi} previewer, +\textsf{Windvi}, which is similar in usage to the established Unix +\textsf{xdvi}. The documentation can be found in +\OnCD{texmf/doc/html/windvi/windvi.html}. + +\subsection{The \texttt{TeXLive.exe} program} + +\begin{figure*} + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.7\textwidth]{pictures/Welcome-to-TeXLive} + \else + \ifnum \Status=2 + \includegraphics[bb=0 0 551 534]{pictures/Welcome-to-TeXLive.jpg} + \else + \includegraphics[width=.7\textwidth]{pictures/Welcome-to-TeXLive} + \fi + \fi + \end{center} + \caption{``Welcome to \TL'' window}\label{graph:welcome} +\end{figure*} + +If your computer is configured to let the \CD{} autostart, then a dialog +box with a menu bar will popup on the screen, and you will have several +choices from there: + +\begin{itemize*} +\item Install \TeX{} on your hard disk +\item Do maintenance on your \TeX{} system. +\item Remove the \TeX{} system. +\item Use \TeX{} off the \TL{} \CD{} or \DVD{}. +\item Browse documentation: \TL{} documentation, TUG web + pages, \fpTeX web pages. +\item Run the \cmdname{TeXdocTK} application to find specific documentation. +\end{itemize*} + +If your \CD{} does not autostart, you can explicitly run the program +by double clicking on \path|bin/win32/TeXLive.exe| on the \CD{} from +the explorer window. + +\subsection{Running \protect\TL{} directly from media (Windows)} + +\runlive + +To run live under Windows, from the menu, chose \verb|Explore CD-Rom|, then +\verb|Run TeX off CD-Rom|. This will launch the \cmdname{XEmacs} editor. + +XEmacs startup file will set the environment variables needed. XEmacs will also +setup a temporary \acro{TDS} compliant texmf tree in the temporary area of your +computer. It is needed to store files that may be built on the fly, such as +\path|pk| bitmap fonts, or format files. Configuration files are copied from +the \CD{} to this texmf tree, so that you can edit them if needed. The +\path|ls-R| database is computed for this texmf tree. The AUC-\TeX{} mode will +be entered Whenever you will visit or create a \TeX{} file, providing all the +bells and whistles for \TeX{} support XEmacs is capable of. + +If you run 'M-x shell' within XEmacs, then you will have access to all the TeXLive +tools from the command line provided by XEmacs. + +\smallskip {\small\noindent \textbf{[For advanced users:]} You can also + use the small batch file \path|mkloctex.bat| to be called in a + directory \path|bin\win32| of the \CD. From the Start menu select + `Run', then browse the \acro{CD} drive and select + \path|mkloctex.bat|. Before starting it, you should add two parameters + separated by a space: the letter of your \acro{CD} drive and the + letter of the drive where you want to install the \TeX\ directory. + The whole line should read, e.g., \verb+d:\bin\win32\mkloctex.bat d c+. + When installation is complete, please read carefully the information + on screen. If you are running Windows 9x/\acro{ME}, then you will have to + restart Windows.} + +\subsection{Support packages for Windows} +\label{sec:win-xemtex} + +To be complete, a \TL installation needs support packages that are not +commonly found on a Windows machine. +Many scripts are written using the Perl language. Some important tools require +the Ghostscript \PS{} interpreter to render or to convert files. A graphic +file toolbox is also needed in some cases. Last but not least, a \TeX-oriented +editor makes it easy to type in your \TeX{} files. + +All these tools are quite easy to find for Windows, but in order to try to make +your life even easier, we have put such a set of tools on \TL: +\begin{itemize*} +\item \cmdname{Ghostscript} 7.07 +\item a minimal \cmdname{Perl} 5.8, sufficient to run all the \TL{} +Perl scripts +\item a subset of \cmdname{ImageMagick} 5.5.6 +\item the \cmdname{ISpell} checker +\item \cmdname{XEmacs} 21.5.14 with a selection of packages to support +\TeX{} typesetting. +\end{itemize*} + +These packages should be installed only all at once. The bundle is +known as the \XEmTeX{} bundle. + +If you didn't install \XEmTeX{}, \cmdname{Perl} and \cmdname{Ghostscript} are +installed anyway if they are not detected on your machine. This is because they are +required by many important tools. The \envname{PERL5LIB} and \verb|GS_LIB| +environment variables will be set too. + +When you are under +\cmdname{XEmacs}, the tools provided shadow any other version you might +have installed previously. The point here is that \path|TeXSetup.exe| +will not install anything outside of the \TL location, neither will +it run foreign installers, nor will it try to autodetect installed +products using unreliable rules of thumb. The \XEmTeX{} bundle is +standalone and is meant to evolve in the future. The reference site is +\url{http://www.fptex.org/xemtex/}. + +If you don't want to install this bundle, then you are on your own to +install the required tools to complete your \TL{} system. Here is a +list of places to get those tools: + +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.activestate.com/} (but you might need some + supplementary packages from CPAN: \url{http://www.cpan.org/}) +\item[ImageMagick] \url{http://www.imagemagick.com} +\item[NetPBM] alternatively, you could use NetPBM instead of ImageMagick to + process or convert your graphic files. NetPBM home page is + \url{http://netpbm.sourceforge.net/} +\item[\TeX-oriented editors] There is a wide choice, and it is a matter of the + user's taste. Here is a selection: + \begin{itemize*} + \item \cmdname{GNU Emacs} is available natively under Windows, the + reference url is + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html} + \item \cmdname{XEmacs} is available natively under Windows, the + reference url is \url{http://www.xemacs.org/} + \item \cmdname{WinShell} is available on \TL in the \path|support| + directory, the reference url is \url{http://www.winshell.de} + \item \cmdname{WinEdt} is shareware available from \url{http://www.winedt.com} + \item TeXnicCenter is available from\\ + \url{http://www.toolscenter.org} + \item \cmdname{Vim} is available on \TL{} in the + \path|support\vim| directory and the + reference site is \url{http://www.vim.org} + \item \cmdname{SciTE} is available from \url{http://www.scintilla.org/SciTE.html} + \end{itemize*} +\end{description} + +You might want to install other tools that are not free\footnote{Not +free, that is, in the sense of freedom to modify and redistribute, +following free software guidelines. This does not mean you can't acquire +them for no money.} and therefore not included on \TL{}, such as +\cmdname{GSView}, the \cmdname{Ghostscript} companion to more +conveniently view PS/PDF files. \cmdname{GSView} is available from +\url{http://www.cs.wisc.edu/~ghost/gsview/} or any \acro{CTAN} site. + +\subsection{Installing \protect\TeX\protect\ Live to disk} + +\textbf{Warning: Win9x users must ensure they have enough environment + space before undertaking installation. The \cmdname{TeXSetup.exe} + program won't change the environment size for them. A few environment + variables will be created and it is possible you run out of + environment space. Add \texttt{SHELL=COMMAND.COM /E:4096 /P} in the + config.sys file in order to increase your environment size.} + +Installation is started by letting the media autostart. The program run +is \path|TeXSetup.exe| if you are using the inst disk. If you are using +the live or the demo disk, you will have to select the item +\path|TeXLive Software| from the menu, then the subitem \path|Install on +Hard Disk|. This will invoke \path|TeXSetup.exe|. You can also find it +in the \path|bin/win32| directory and run it, if the autostart fails for +any reason. \path|TeXSetup.exe| is a Windows wizard and it will display +several pages while running. + +\begin{description} +\item[Welcome Page] + You can choose a \emph{quick} installation from + here. In this case, the installation will run without any human + assistance from beginning to end, with all the default settings + (Figure~\ref{graph:setup-src}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). If you have enough privileges (administrator or power user + rights) under a Windows version where this is applicable, then you can + decide to install the \TL{} for all users or for yourself only by + checking the appropriate box. + For installing the whole \XEmTeX{} bundle (XEmacs, Ghost\-script, + Perl, ImageMagick and Ispell) you can check \emph{Install XEmTeX + Support} box. + \begin{figure*}[!htb] + The \cmdname{TeXSetup} Wizard\hfill + Source directories for the \TL{} files + + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{pictures/setup-wizard.jpg}\hfill% + \includegraphics[width=.48\textwidth]{pictures/source-for-texlive.jpg} + \else + \ifnum \Status=2 +\includegraphics[bb=0 0 506 403]{pictures/setup-wizard.jpg} +\includegraphics[bb=0 0 506 403]{pictures/source-for-texlive.jpg} + \else + \includegraphics[width=.48\textwidth]{pictures/setup-wizard}% + \hfill% + \includegraphics[width=.48\textwidth]{pictures/source-for-texlive} + \fi + \fi + \caption{The \TL{} setup wizard}\label{graph:setup-src} + \end{center} +\end{figure*} +\item[Source Page] + This page is a bit complex. It will allow you to select two source + directories for your \TL{} system + (Figure~\ref{graph:setup-src}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). You will need a \emph{local + source directory} and possibly a \emph{remote source directory}. + +Why do we need both these directories? The files consisting of the +\TL{} system are on the \CD{}, of course, but some other useful +packages are not, either because of space lacking or because their +license was not compatible with \TL{}. You need to enable Internet +downloading if you want to install these packages that are marked with a +specific ``remote'' icon. + + However, don't panic: the default parameters of the setup will allow + you to install a full system using the \CD{} only. Simply, you won't + have \file{WinEdt} (for example), but you will be able to install it + later. + + So you can take your files from: + \begin{itemize} + \item the \CD{} or any similar flat tree of files, available through + some standard directory (this means the \CD{} can be mounted on + some remote machine and be made available through network + sharing), + \item a set of \file{.zip} files (this is the case when you are + installing from the demo \CD{} or the \fpTeX{} distribution), + \item the Internet; in this case, the program takes care of + downloading the \file{.zip} files it needs for you. + \end{itemize} + This option is available only if you enable Internet file + downloading in the right part of the page. You also need to + configure this Internet access by selecting to connect either using + Internet Explorer~5 \file{wininet.dll}, or using a direct connection (\texttt{ftp}, + \texttt{http}). +% or using a proxy server. +% Last, you can be assisted in defining the \emph{local source +% directory} and \emph{remote source directory} which will be used +% to copy the files onto your hard disk. The \texttt{browse} buttons +% allow to select a directory for the former, and an url among a list +% of mirrors for the latter. +\item[Root Page] + On this page, you will tell where you want the files to be + installed (Figure~\ref{graph:root-schm}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). Only the root directory really matters, the other ones + are set according to the root one. You may want to make + \path|$TEXMFEXTRA| point to some TDS compliant directory with other + \TeX{} files or assign a different value to + \path|$HOMETEXMF|, which is set by default to whatever Windows think + is your `HOME' location. +\begin{figure*}[!htb] + Root and directories\hfill% + Scheme selection + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.46\textwidth]{pictures/root-of-installation.jpg}\hfill% + \includegraphics[width=.46\textwidth]{pictures/scheme-selection.jpg} + \else + \ifnum \Status=2 +\includegraphics[bb=0 0 506 403]{pictures/root-of-installation.jpg} +\includegraphics[bb=0 0 506 403]{pictures/scheme-selection.jpg} + \else + \includegraphics[width=.46\textwidth]{pictures/root-of-installation}% + \hfill% + \includegraphics[width=.46\textwidth]{pictures/scheme-selection} + \fi + \fi + \caption{\TL-Setup: Root and directories / Schemes}\label{graph:root-schm} + \end{center} +\end{figure*} +\item[Get TPM Page] + This page does not require any manual intervention. The \file{.tpm} + files which describe collections and packages are retrieved + (possibly from the Internet), unzipped if needed and parsed. +\item[Schemes Page] + On this page, you will select the global scheme of your + installation (Figure~\ref{graph:root-schm}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). A scheme is a large set of files targeted at some kind + of usage. There are 3 generic schemes for basic, recommended and + full installation. The other ones are devoted to LUGs (what GUST or + GUTenberg propose for their members) or applications (XML and + \TeX{}). + When a scheme is selected, it is still possible to refine the + selection by checking the appropriate box. If doing so, you will be + presented the packages page to change your selection, else you will + jump to the review page. +\item[Packages Page] + Collections and packages are presented in a tree form + (Figure~\ref{graph:win32-support}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). The links + in the tree are dependency links. Collections \emph{depend on} + packages and maybe other collections, and it is the same for each + package. You can select any package or collection individually, but + your request will be granted only if the object is not requested by + another one which is selected. For example, you can't deselect + \texttt{tex-basic} without deselecting all the collections that + request it. + + The \texttt{tex-xemtex} collection displayed on the picture is Win32 specific. It + holds a number of bonus packages (Figure~\ref{graph:win32-support}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ) which can be installed + automatically and individually: Ghostscript (the \PS{} + interpreter), XEmacs editor preconfigured for \TeX{}, tools like Perl, + ImageMagick, Ispell. \emph{None of these packages are selected by + default}. + + On this page, you also have the information about disk space + needed, for each object, and for the set of those who are selected, + and also the disk space available on the partition selected for the + installation. Last, you can choose to install or not the + documentation files and source files associated with each package. +\item[Review Page] + You will find there a summary of your choices + (Figure~\ref{graph:review}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). It is still possible to + go back to change them. +\begin{figure*}[!htb] + Packages Page\hfill% + Win32 Support + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{pictures/package-selection}\hfill% + \includegraphics[width=.48\textwidth]{pictures/win32-support} + \else + \ifnum \Status=2 +\includegraphics[bb=0 0 506 403]{pictures/package-selection.jpg}\hfill% +\includegraphics[bb=0 0 506 403]{pictures/win32-support.jpg} + \else + \includegraphics[width=.48\textwidth]{pictures/package-selection}% + \hfill% + \includegraphics[width=.48\textwidth]{pictures/win32-support} + \fi + \fi + \end{center} + \caption{Packages Page / Win32 goodies} + \label{graph:win32-support} +\end{figure*} +\item[Files Copy Page] + The selected files are copied on your hard disk (Figure~\ref{graph:file-copy}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). All the files not + yet available on your local disk are first downloaded from the + remote source directory on the Internet. Then every package is + unpacked (if \path|.zip| files), or copied from the \CD{}. +\item[Configuration Page] Several packages need some configuration + step to make them usable (Figure~\ref{graph:configuration}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). Also the \TL{} system needs some post-processing step + (format files generation, ls-R databases generation, environment + variables, etc.). All these operations are done there, some of them + can be lengthy. +\begin{figure*}[!htb] + \textbf{Review Page}\hfill% + \textbf{File Copy Page} + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{pictures/review-settings}\hfill% + \includegraphics[width=.48\textwidth]{pictures/file-copy} + \else + \ifnum \Status=2 + \includegraphics[bb=0 0 506 403]{pictures/review-settings.jpg}\hfill% + \includegraphics[bb=0 0 506 403]{pictures/file-copy.jpg} + \else + \includegraphics[width=.48\textwidth]{pictures/review-settings}\hfill% + \includegraphics[width=.48\textwidth]{pictures/file-copy}% + \fi + \fi + \end{center} + \caption{Review Page / File Copy Page} + \label{graph:review}\label{graph:file-copy} +\end{figure*} +\item[Final Page] The installation being over, you may want to display + the Windows specific documentation (HTML format) and / or the log + file of the setup process (Figure~\ref{graph:final} + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). If it is needed (Win9x/WinME), you will + be asked to reboot your computer. +\end{description} + +\begin{figure*}[!htb] + \textbf{Configuration Page}\hfill% + \textbf{Final Page} + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{pictures/configuration}\hfill% + \includegraphics[width=.48\textwidth]{pictures/congratulations} + \else + \ifnum \Status=2 + \includegraphics[bb=0 0 506 403]{pictures/configuration.jpg}\hfill% + \includegraphics[bb=0 0 506 403]{pictures/congratulations.jpg} + \else + \includegraphics[width=.48\textwidth]{pictures/configuration}\hfill% + \includegraphics[width=.48\textwidth]{pictures/congratulations}% + \fi + \fi + \end{center} + \caption{Configuration Page / Final page} +\label{graph:configuration}\label{graph:final} +\end{figure*} + +Please be aware that the choice of cluster size on DOS disk +partitions can radically affect the size of your \TeX\ +installation. The support tree has hundreds of small files, and it is +not unusual for a complete installation to take up to four times the +amount of space used on the \CD. + +\end{comment} + + +\section{Windows maintenance and post-installation} + +Although this version of \TL{} cannot be installed on Windows, enough of +this section is relevant to existing installations or cross-mounted +installations that it seemed worth leaving in. + +It will be thoroughly updated when a complete \TL{} Windows distribution +is released. For now, please ignore references to +\filename{TeXSetup.exe}, etc. + + +\subsection{What's different in Windows?} + +The Windows version of \Webc{} has some specific features that should be +pointed out. + +\begin{description} +\item[\KPS{}] The hash-tables that \KPS{} builds are quite large for + the \TL{}. In order to cut down the starting time of any + \KPS{}-enabled program, these hash-tables have been put in shared + memory. This way, when you chain the execution of several such + programs, like \path|tex| calling \path|mpost| calling \path|tex|, + the overhead when starting each of the subprograms is + reduced. This change is hidden to the user, except if you set the + debug flag of kpathsea to the \path|-1| value: you will then trace + access to the shared memory, which is not what you want (it is + accessed very often!). What is useful in a log trace of the shared + memory access is still to be defined, so the situation might evolve + in the future. +\item[\cmdname{kpsecheck}] This command provides some options that did + not fit well into \cmdname{kpsewhich}. It will allow you to list all + the files that occur multiple times across your texmf trees. This + could be handy, but most of the time you will also get unwanted + output (like dozens of \path|README| files)\footnote{It is noticeable + that all these files result in clashes inside the \KPS{}-hashing + mechanism; fortunately, \KPS{} never looks for these files.}. For + this reason, you can combine the \path|-multiple-occurrences| with 2 + other options for including or excluding any filename that match + some pattern (you can request for several patterns). + + The \cmdname{kpsecheck} command will also report the status of shared + memory: in use or not used. That might be useful to know because if + the status reported is \samp{in use}, that means one or several + processes are working, and the effect of any \cmdname{mktexlsr} + command will be delayed until the next time where no \KPS{} linked + process will be running. + + Last, this same command will report about the location it thinks + Ghostscript can be found. Under Win32, for many programs, it is + easier to use the Ghostscript dll, and find it by using the + Ghostscript registry key than to change the \path|PATH|, which has a + limited length anyway. +\item[\Webc{}] The engines have a few more options than in Unix + \Webc{}, and one option with a different behavior: + \begin{itemize} + \item \path|-halt-on-error| stop the compilation at the first error. + \item \path|-job-time| set the job time to the same timestamp as the + file given in argument. +\item \path|-oem| use the DOS codepage for console output. + \item \path|-output-directory| allow to write all the output files in the + specified directory. + \item \path|-time-statistics| print statistics about the job run + time. It is to be noted that Win9x not being a true multitasking + operating system, it has no reliable timer for short periods, so + the value printed is an approximation. Under NT/2K/XP, the result + is quite accurate with user time and system time values allocated + for this run. For Unix + users: the \path|time| command is not usually available to Windows + users. + \end{itemize} +\end{description} + +\subsection{Adding packages to your installation} + +You will find an option in the \guiseq{TeXLive} menu (or go to +\guiseq{Start\arw Programs \arw TeXLive \arw Add TeX package} menu) to +run \file{TeXSetup.exe} in maintenance mode. The steps are almost the +same as in the initial installation. + +We'll discuss differences below, but first, whatever changes you make, +\textbf{do not forget to rebuild the ls-R database files}. Otherwise, +your new files will not be found. You can do this either via the +\acro{GUI} (\guiseq{Start \arw Programs \arw TeXLive \arw Maintenance +\arw Rebuild ls-R}), or manually running the \file{mktexlsr} command. + +The main difference is in the packages selection page. In maintenance +mode, the list of installed packages is compared to the list of packages +available from your source directories. Packages that are not installed +will be displayed in green, out of date packages will be displayed in +red and up-to-date, installed packages are displayed in black. + +This way, you can choose to add or upgrade components, either from +\TL{} or from the Internet, where you are likely to find some more +recent version of your packages. + +It is up to you to select which packages you want to install. The rest +of the process is similar to the first installation. + +If you want to add files that are not provided by the \TL{} (or +\fpTeX{}) distribution, it is recommended to put them in the +\path|$TEXMFLOCAL| directory. This way, you will be safe against +upgrades of the \TL{} software. + +The directory pointed to by \path|$TEXMFLOCAL| is initially empty. If, +for example, you want to add the support file for the Maple symbolic +computation program, you will have to put the style files in:\\ +\path|c:\Program Files\TeXLive\texmf-local\tex\latex\maple\|\\ and the +documentation files in:\\ \path|c:\Program +Files\TeXLive\texmf-local\doc\latex\maple\| + +\subsection{Uninstalling \protect\TL{}} + +The uninstall procedure is available either from the \file{TeXLive.exe} +program, from the \path|TeXLive| menu or from the control panel +(\guiseq{Start \arw Control Panel, Add/Remove Programs}). This procedure +will cleanup your hard disk of most of the \TL{} files. However, +\TeX{} is a system that is creating files and there is no mechanism to +keep track of all of them. Moreover, Win32 support packages have their +own uninstall procedure, which you will have to run separately (provided +you want to get rid of them). Last, the files you may have stored in +\path|$TEXMFLOCAL| won't be removed. So, even if the vast majority of +files are automatically removed by the uninstall procedure, you will +have to do some manual cleanup to actually remove all of them. + +\subsection{Running \texttt{TeXSetup.exe} from the command line} + +The \path|TeXSetup.exe| program has a number of other useful +options. You can get the list by running: +\begin{verbatim} +c:\>TeXSetup --help +\end{verbatim} + +Here is the description: +\begin{description} +\item[\path|--automatic-reboot|] reboot without waiting user + confirmation once installation is over; +\item[\path|--dry-run|] do nothing, just log everything that will be + done without this option; +\item[\path|--quick|] use the recommended installation and default + directories, ask nothing up to rebooting; +\item[\path|--with-xemtex|] selects the \XEmTeX{} bundle; +\item[\path|--net-method (=ie5/direct)|] enable to download components with + restricted licenses from the Internet (either using direct + connection of Internet Explorer 5 DLLs): you need to have an available + network connection and some of the packages are huge; +\item[\path|--remote-source-directory |] this is the base url for the remote packages; +\item[\path|--local-source-directory |] by default, \path|TeXSetup.exe| + will guess the root directory of the set of files you want it to act on, if you ever + upgrade \path|TeXSetup.exe|, you won't be able to copy the new version + onto your \CD{}, so you will need to use this option to specify the + root of the \CD{}; +\item[\path|--installation-directory |] this is the root of your + installation, all files will be copied under this location. The + default value is \verb+c:\Program Files\TL+; +\item[\path|--texmfmain-directory |] +\item[\path|--texmflocal-directory |] +\item[\path|--texmfextra-directory |] +\item[\path|--texmfhome-directory |] +\item[\path|--vartexmf-directory |] +\item[\path|--vartexfonts-directory |] these are the directories + used to configure the location of your files. They map directly to + the \path|texmf.cnf| variables. +\item[\path|--with-source-files(=yes/no)|] copy the source files + for \TeX{} packages, default value is no; +\item[\path|--with-documentation-files(=yes/no)|] copy documentation files for \TeX{} + packages. Default value is yes. Beware: this is only documentation about specific + packages, general documentation will be installed anyway; +\item[\path|--program-folder |] the name of the folder under + which you will find the menus; +\item[\path|--add-package |] this is used to add or update a specific + package after a first regular installation; +\item[\path|--scheme |] install the named scheme instead of the + default \path|texlive-recommended| scheme; +\item[\path|--maintenance|] mostly the same as \path|--add-package| + without specifying a package to add; +\item[\path|--uninstall|] this option will remove anything \TeX{} related coming from + the \CD{}, which means there can be files left if you added style + files or format files, and also that supplementary tools will not be + removed. This option is still a bit crude in this release; +\item[\path|--help|] this option opens up a box with the list of options. +\end{description} + +\subsection{Network installation} + +\KPS{} knows about UNC names, so you can use them to get your TEXMF +tree from the network. But there is better than this. +All the support files and configuration files, everything except the files in the +\path|bin/win32| are shareable with a \teTeX{} or Unix \TL{} installation. That means +you can use Samba either to mount from an NT server to a Unix +workstation or the converse. Several strategies are possible: +\begin{itemize} +\item Put everything on the server. Just add each set of files for the os and +architecture you want to use in the \path|bin| directory. That means +for example \path|bin/win32| and \path|bin/i386-linux|. Next configure +your main variables. You can use UNC names to +point to the right directories under Win32. +\item Install a local copy for the binaries and format files. In this + case, assign \path|$TEXMFMAIN| to the main \path|texmf| tree that + will be accessed remotely. Set \path|$VARTEXMF| to be a local + directory which will hold local configuration files and on-the-fly + generated files. +\end{itemize} + +\subsection{Personal configurations} + +\subsubsection{Dvips} + +The configuration file for dvips can be found in\\ +\verb+C:\Program Files\TeXLive\texmf-var\dvips\config\config.ps+\\ +You may open it with any editor + %(\cmdname{WinShell} will do fine) + and change some parameters: + +\begin{description} +\item [fonts] you can change the default printer \MF{} mode or printer + resolution in case \cmdname{dvips} needs to generate PK fonts. By default it + is configured to use Type~1 versions of the CM fonts, so it should + not call \cmdname{mktexpk} too often; +\item[printer] you can tell dvips where you want to print by default. If + the \optname{o} option is not followed by a printer name, then a + \file{.ps} \PS{} file is written. You can give dvips a printer + name such as: +\begin{verbatim} +o lpt1: +% o | lpr -S server -P myprinter +% o \\server\myprinter +\end{verbatim} +\item[paper] Next, you might want + to change the paper size from European (A4) to US letter + by making the US letter the first paper size mentioned in the file. + Scroll to the group of lines beginning with \code{@}. Move + the appropriate lines so that this section begins with the lines:\\ +\hspace*{1em} @ letterSize 8.5in 11in\\ +\hspace*{1em} @ letter 8.5in 11in\\ +\hspace*{1em} @+ \%\%BeginPaperSize: Letter\\ +\hspace*{1em} @+ letter\\ +\hspace*{1em} @+ \%\%EndPaperSize +\end{description} + +The current \TL{} distribution implements the procedure of making +always up-to-date fontmaps files for Dvips and Pdftex. This is done by +the \cmdname{updmap} program during installation, as well as during any +font package addition. If you add new packages by hand, edit the file +\verb+updmap.cfg+ in \path|$VARTEXMF/web2c|. + +\subsubsection{Pdftex} + +If you use the program pdf{}latex to write \acro{PDF} format directly, +and you are using \acro{US} letter-size paper, edit the file +\verb+C:\Program Files\TeXLive\texmf-var\tex\generic\config\pdftexconfig.tex+ and +change \samp{\bs pdfpagewidth} and \samp{\bs pdfpageheight}. These entries should read: +\begin{alltt} +\bs{}pdfpagewidth=8.5 true in +\bs{}pdfpageheight=11 true in +\end{alltt} +Save the file and exit the editor. + +\subsubsection{GSView} +GSView is now distributed under the Aladdin License, and therefore is no longer included in +\TL{}. + +If you may want to change the page size to US letter size. If so, open +GSView from the \guiseq{Start} menu, and select \guiseq{Media\arw Letter}. + +Also, there are menu settings that are supposed to give you the most +readable screen image. On \guiseq{Media \arw Display Settings}, set both +\optname{Text Alpha} and \optname{Graphics Alpha} to 4~bits. + +Note that the installation process has set all \code{.ps} and +\code{.eps} files to automatically open with \cmdname{GSView}. + +For printing instructions, see section~\ref{printing} below. + +\subsubsection{WinDvi} +\label{sub:windvi} + +The \file{TeXSetup.exe} program takes care of associating the files +with the \file{.dvi} extension with \file{Windvi}. + +Open it with \guiseq{Start\arw Programs\arw TeXLive\arw DVI Viewer}. + +You can set it for US letter-size paper by going to \guiseq{View\arw +Options\arw Papertype} and selecting US (8.5\verb+"+ x 11\verb+"+) (and +then \optname{OK}. Exit \cmdname{windvi}. + +You can change other parameters from there as well, such as the ability +to execute system commands specified by the document (disabled by +default for security reasons). Also, the first time you view any .dvi +file, you may find the magnification too large. Zoom out until you get +an appropriate size. + +%There are two important parameters related to printing that can't yet +%be set from the dialog boxes, namely the resolution and the \MF{} mode +%for the printer. You can set them once for all by specifying them on +%the command line: +%\begin{verbatim} +%c:\>windvi -p 360 -mfmode canonbjc foo.dvi +%\end{verbatim} +%When you will exit Windvi, these parameters will be stored in the +%configuration file. The available modes are found in this file:\\ +%\path|c:\Program Files\TeXLive\texmf\metafont\misc\modes.mf| + +All configuration settings for \cmdname{Windvi} are stored in a file +named \path|windvi.cnf| file. You can find it by running this command at +the prompt: +\begin{verbatim} +c:\>kpsewhich --expand-var $HOME/windvi.cnf +\end{verbatim} + +Should you have problems with \cmdname{Windvi}, please remove the configuration +file and test your problem against a vanilla configuration. + +\subsection{Testing} + +For generic verification procedures, see section~\ref{sec:test-install} +(\p.\pageref{sec:test-install}). This section describes +Windows-specific tests. + +Open the file \verb+sample2e.tex+ in your editor (Xemacs, WinShell), +found in \path|C:\Local\TeX\texmf\tex\latex\base|. The \LaTeX\ source +should appear on the screen. Process it by clicking on the +\guiseq{Command\arw LaTeX} menu (XEmacs) or \LaTeX\ icon on the toolbar +(WinShell), then view it by clicking on the \guiseq{Command\arw View DVI} +menu (XEmacs) or Preview (Windvi) icon (WinShell). + +At first, when you preview files with Windvi, it will create fonts because +screen fonts were not installed. After a while, you will have created most +of the fonts you use, and you will rarely see the font-creation window. + +\textbf{Hint for the future:} If a \LaTeX\ run stops because \LaTeX\ +cannot find a file, you can press Ctrl-z to quit. + + +\subsection{Printing} +\label{printing} + +It is possible to print from Windvi. In this case, printing will be done +using the Windows unified printer driver. By definition, it is +compatible with all printers. However, there is some drawback: it can +generate some huge spool files, and some (older) versions of Windows +just don't like them. The advantage is that you can use features like +embedding BMP or WMF images. You also need to make sure that the printer +parameters are correctly set (subsection~\ref{sub:windvi}), else you +will get scaled printing (printing at 600\dpi{} on a 300\dpi{} printer +will give you only one quadrant of your page). + + +Printing is faster and more reliable if you run \cmdname{dvips} to make +a \filename{.ps} file and then print from \cmdname{GSView}. In +\cmdname{GSview}, select \guiseq{File\arw Print\ldots}. A \guiseq{Print} +window will appear. + +If you are using a \PS{} printer, \textit{be sure to select +\guiseq{\PS{} Printer}}. This is done in the \guiseq{Print Method} box +at the bottom left of the \guiseq{Print} window. You can then select any +of the printers that you have previously installed. If you fail to +check the box for \optname{\PS{} Printer}, printing will not work. + +If you will be using your own non-\PS{} printer, select +\guiseq{Ghostscript device} in the \guiseq{Print Method} box, then click +on the button to the right labelled \guiseq{djet500} and select your +printer type from the list that pops up. (In the older version of +\cmdname{GSView}, make sure \optname{\PS{} Printer} is \textit{not} +selected, then select your printer type from the \guiseq{Device} list.) + +\subsection{Tips and tricks for Win32} + +\subsubsection{Different flavors of Win32} + +What we call Win32 is not an operating system by itself. It is a large +set of functions (around 12,000 in the header files of the Microsoft +\acro{SDK}) that you can use to write programs for different operating +systems of the Windows family. + +Windows comes in different flavors: +\begin{itemize} +\item Win95, Win98 and Win\acro{ME}, which \emph{are not true multitasking, + multithreading} environments. They are the latest\Dash and hopefully + last\Dash metamorphosis of \acro{DOS}. This can be more or less proven + by the fact that when booting, the PC will load the \path|command.com| + interpreter, and if you stop the boot process at this point, you can + ask for the current (\acro{DOS}) version and it will answer something + like \samp{MS-DOS 7.0} (at least for the old versions of Win9x). +\item Windows \acro{NT}, which is a new operating system written from + scratch, capable of true multitasking behavior, and including many + high level features. +\item Windows 2000, based on \acro{NT}, with all the bells and + whistles of Win98. +\item Windows \acro{XP}, which comes with Personal and Pro flavors. This is + the last step in merging both lines of products (Win9x based and + \acro{NT} based). \acro{XP} is based on \acro{NT}. +\end{itemize} + +Win9x are able to run 32~bits programs and 16~bits programs +concurrently. But the operating system by itself is not entirely +written in 32~bits mode, and does not support memory protection: 16bits +applications can overwrite parts of the operating system memory! Some +parts of the system like the \acro{GDI} (Graphical Device Interface) +manage limited resources like bitmaps, fonts, pens and so on for the set +of all programs that run concurrently. All the bitmaps headers available +at the same time can't amount for more than 64kB. This explains the +performance tool and the fact that you can put your system on his knees +by making intensive use of graphic objects for example. + +NT, 2K and XP do not suffer from these limitations, and neither from +other Win9x limitations. They are true multitasking environments, with +protected memory. They are much more responsive than Win9x because +of better memory management, better file system and so on. + +\subsubsection{Command line prompt} + +You may wonder, ``Why would I need to use a command line prompt when +I have Windows?'' + +Good question. The problem is of very general nature. Not all operations +can be done easily using only a \acro{GUI}. Command line gives you +programming power\Dash assuming a clever command interpreter. + +But the problem here is more fundamental: \TeX{} is \emph{a batch} +tool. Not an interactive one. \TeX{} needs to compute the best +layout for each page, resolve cross-references and so on. This can be +done only by a global processing of the document. It is not (yet) a +task that can be done interactively. + +This means that you should use \TeX{} from a command line. In fact the +situation is not so bad. There is an advantage to write command line +tools for complex processing: they are better debugged, because they are +independent of any \acro{GUI} problems, and \acro{GUI} tools can be +designed to interface to the command line tools. This is the case for +\TeX{}, where you will mostly interact with it through a \acro{GUI} text +editor. + +However, you may need to use the command line prompt in a number of +situations. One is when you are having difficulties and want to debug +your setup. + +\begin{description} + \item[Win9x] You can open a command line prompt by looking either for + the \acro{MS-DOS} icon in the \guiseq{Start\arw Programs} menu, + or by choosing \guiseq{Start\arw Run} menu typing in + \path|command.com| as the progrm name. + \item[NT, 2K, XP] You can open a command line prompt by looking for + \guiseq{Command Prompt} in the \guiseq{Start\arw Accessories} menu. + You can also choose \guiseq{Start\arw Run} and type in + \path|cmd.exe|, which is the name of the brand new command + interpreter for \acro{NT} (thus, it is untrue to call this a + \emph{DOS} box!). +\end{description} + +These locations may change across different Windows versions. + + +\subsubsection{Path separators} + +The Win32 API understands both \path|/| and \path|\| characters as PATH +separators. But the command interpreters do not! So whenever a path name +is used programmatically, you can use both separators, and even mix them +up in the same path name. But on the command line, you must type +\path|\| as path separator. The reason is compatibility: the command +processor used \samp{/} to introduce arguments to commands. + +All this to say: do not be surprised to read path names written using +the Unix convention; \fpTeX{} is a port of \Webc, and aims to be compatible +across platforms. For this reason, all the configuration files that +need to specify path names use the Unix convention. + +\subsubsection{File systems} +\label{sec:clusters} + +The worst feature of Win9x with regard to \TeX{} is probably the +so-called FAT file system. \TeX{} uses very many small files, with size +around 1--3kB. The \acro{FAT} file system is old, and predates by +decades the multi-gigabytes hard disks we have today. As a result, it +cannot manage efficiently the tens of thousands of \TeX{} files found in +\TL{}. The \acro{FAT} file system allocates a minimum of 32kB for +\emph{any} file on a huge partition. It means that \TeX{} will use much +more disk space than it actually needs. + +The other, more modern, file systems available, \acro{FAT32} and +\acro{NTFS}, do not have this drawback. They manage clusters of 4kB +only. (You can lower the limit to 512 bytes on \acro{NTFS}.) + +\subsubsection{How to add some directory to your PATH} + +There are pairs of variables and values which behave much like global +variables inside your programs. The set of those variables is called the +environment. Each program is initialized with a copy of the +environment when it is run. It can request and change the +value of any variable. The changes happen in the copy of the +environment, and is not at all propagated to the other running +programs. + +Your PATH is a special environment variable used to search for +programs you want to run. +There is a different procedure to change it for Win9x, WinME and NT/2K/XP: + +\begin{description} +\item[Windows 95/98] Edit your \path|autoexec.bat|. In this file should be a line + starting with \texttt{PATH=} and followed by a list of directories separated + by \path|;|. Please add the directory with the executables in this line. + After this, this line could look as follows: +\begin{verbatim} +PATH=c:\windows;c:\windows\system;c:\"Program Files"\TL\bin\win32 +\end{verbatim} +\item[Windows ME] You need to run the special program + \path|c:\windows\system\msconfig.exe| to be able to change any + environment variable. From this program, select the `Environment' + tab, and then add or modify the variable you want. You will be asked to reboot the + machine upon any change. +\item[Windows NT/2K/XP] + Click left on \guiseq{Start \arw Settings \arw Control Panel}. Now the + window with the control panel icons opens. Double click on System. The + System Properties window opens. Click on the tab \textsf{Environment} + or look for a button named \guiseq{Environment Variables} among the + dialog boxes. Now you can change the environment variables for your + user account. Note: There are also displayed the environment settings + for the system. Normally, you can't change the system variables + unless you have administrator rights on your machine. If you want to + change the \texttt{PATH} for all users, you will have to contact your + system administrator or be the system administrator yourself\Dash in + the latter case you should know what you are doing. + + If there is already a \texttt{PATH} setting for your user account, + left click on \texttt{PATH}. In the field \textsf{Variable} appears + \texttt{PATH} while the field Value shows the current setting of + \texttt{PATH} as a list of directories separated by \path|;|. Add + the directory where the executables are located (e.g. + \path|c:\Program Files\TeXLive\bin\win32|). If there isn't a \texttt{PATH} variable + for your user account, simply click in the field Variable and type + in \texttt{PATH}, click in the field \textsf{Value} + and type in the directory with the executables. Important: Click on + the \textsf{Apply} button before clicking \textsf{Ok}, otherwise the + changes to \texttt{PATH} won't apply to your system. Be careful when + changing the environment settings. +\end{description} + +The best way to be sure that a variable has been properly set is to +open a console and type: +\begin{verbatim} +set VARIABLE +\end{verbatim} +which should return the corresponding value. + +\subsubsection{\TeX{} engines} + +If you have a look at the \Webc{} documentation, you will read that all +the various \TeX{} derived programs use the same base engine. For +example, \path|tex.exe| and \path|latex.exe| are exact copies of the +same program, but each one will use a different format file, based on +its calling name. + +Under Unix, this feature is implemented through \emph{symbolic +links}. It saves up a bit of disk space, because some engines are +used with many different format files. + +The Win32 API does not know about file links. So to save up almost +the same amount of memory, all the \TeX{} base engines have been put +in DLLs (\emph{Dynamic Linked Library}). This means that you will have +the following layout: +\begin{alltt} +13/05/2002 17:06 3 584 latex.exe +13/05/2002 17:06 266 240 tex.dll +13/05/2002 17:06 3 584 tex.exe +\end{alltt} +and the \path|latex.exe| file is nothing but a rough copy of +\path|tex.exe| using the same core \path|tex.dll|. +The same trick has been used for the \path|mktex*.exe| family of programs which are +linked to the \path|mktex.dll| library. + +In fact, a generic tool called \path|lnexe.exe| is provided to build the +equivalent of Unix hard links for executable files only under Win32. + +\subsection{In case of problems} +\label{sec:troubleshooting} + +\subsubsection{What to do if \texttt{latex} does not find your files?} + +\begin{itemize} + +\item \cmdname{kpsewhich} is the tool of choice to debug any +problem. Unfortunately, \cmdname{kpsewhich} outputs debug information +to stderr, and the Windows console does not know how to redirect stderr +to a file\footnote{Well, NT and Win2k consoles know how to do that. But +the trick will work for any console.}. For diagnostic purposes you can +temporarily set an environment variable (in a \acro{DOS} box): + +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=err.log +\end{verbatim} +You can also set the debug level: +\begin{verbatim} +SET KPATHSEA_DEBUG=-1 +\end{verbatim} + +If you want to redirect stderr to stdout, which is not possible +Windows, then do: +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=con: +\end{verbatim} +This way you can capture both stdout and stderr in the same file. + +\item Assuming the installation has been done in \path|c:/Program Files/TeXLive|, check + the following values: \\ + {\small + \begin{tabular}{ll} + \path|kpsewhich -expand-path $SELFAUTOPARENT| & \path|c:/Program Files/TeXLive| \\ + \path|kpsewhich -expand-path $TEXMF| & \path|c:/Program Files/TeXLive/texmf| \\ + \path|kpsewhich -expand-path $TEXMFCNF| & + \path|.;c:/Program Files/TeXLive/texmf/web2c;| \\ + & \path|c:/Program Files/TeXLive/bin/win32;| \\ + & \path|c:/Program Files/TeXLive/bin;| \\ + & \path|c:/Program Files/TeXLive| \\ + \path|kpsewhich -expand-var $TEXINPUTS| & \path|.;c:/Program Files/TeXLive/texmf/tex//| + \end{tabular} +} +\item If you have other \TeX{}-related values already set in your + environment, please, remove them. They are overriding the ones in + texmf.cnf. +\item Check the values from:\\ +{\small + \begin{tabular}{ll} + \texttt{kpsewhich cmr10.tfm} & \path|c:/Program Files/TeXLive/texmf/fonts/tfm/public/cm/cmr10.tfm|\\ + \texttt{kpsewhich latex.fmt}& \path|c:/Program Files/TeXLive/texmf/web2c/latex.fmt| + \end{tabular} +} +\item At this point, if everything is correct, \TeX{} and friends + should work. If it is not the case, you will need to play with + the \path|-debug=n| option from \path|kpsewhich|, and check back all + the values. Try to identify and report the problem. +\end{itemize} + +\subsubsection{What to do if your setup still does not work as expected?} + +Here are several questions to investigate: + +\begin{enumerate} +\item Is \file{tex.exe} in my \path|PATH|? + +\item Is the \path|TEXMFCNF| variable correctly set to +\path|c:/Program Files/TeXLive/texmf-var/web2c| (default value)? + +\item Are there any errors in the log file generated by the +\file{TeXSetup.exe} program? You can find this by searching for the +string \samp{Error}. + +\item Are there any relevant bug fixes at \url{http://tug.org/texlive/}? +(Unlikely, but it doesn't hurt to check.) + +\item Check the web pages at +\url{http://www.fptex.org/}, or consider subscribing to the \fpTeX{} +mailing list, via \url{http://tug.org/mailman/listinfo/fptex}. + +\end{enumerate} + + +The \TL{} software consists of hundreds of programs and tens of +thousands of files, all from varying sources. So it is quite difficult to +predict all possible causes for problems. Nevertheless, we will do our +best to help you. (See section~\ref{sec:help}, \p.\pageref{sec:help}.) + + +\subsection{Compiling the source files} + +The whole set of source files is available in the distribution as the +\path|source/source.tar.bz2| archive, together with a separate source +archive for Windows. To be able to compile the whole distribution for +Windows, you will need: + +\begin{itemize*} +\item Windows 2K/XP +\item Microsoft Visual Studio .Net 2003 +\item a set of Unix tools (\texttt{sed}, + \texttt{grep}, \texttt{gawk}, etc.) and also Perl, Flex and Bison, +\item to adjust the paths in the + \path|win32/make/common.mak| file according to your installation +\item to adjust the paths in the Perl script file + \path|win32/perl/build.pl|, +\item run the compilation from the \path|mswin32/| directory using this + command: +\begin{verbatim} +c:\texlive\source\mswin32>perl ./perl/build.pl --install --log=install.log +\end{verbatim} +\end{itemize*} + +There is a lot of work to do to make this process easier and cleaner. + +\subsection{Where to get more information} + +The Windows \TeX{} system included on \TL{} is also known as +\fpTeX. The packaging differs, but \fpTeX{} is no more no less than the +current \TL\ release for Windows. + +The \fpTeX{} home page is \url{http://www.fptex.org}. + +The current \fpTeX release is available from any \CTAN site in +\url{htp://www.ctan.org/tex-archive/systems/win32/fptex}. + +The main ftp site for \fpTeX\ is \url{ftp://ftp.dante.de/pub/fptex/} +from where beta versions of \fpTeX\ and additionnal tools are available. +This main site is (partially) mirrored daily by all \CTAN{} sites at +\path|systems/win32/fptex|. + +The \TeX{} Users Group is kindly hosting a mailing list dedicated to +\fpTeX. It is used for announcements, bug reports, enhancement requests, +and general discussion about \fpTeX. To subscribe, visit +\url{http://tug.org/mailman/listinfo/fptex}. The mailing list +address is \email{fptex@tug.org}. + + +% don't use \Webc so the \uppercase in the headline works. +\section{A user's guide to Web2C} + +\Webc{} is an integrated collection of \TeX-related programs: \TeX{} +itself, \MF{}, \MP, \BibTeX{}, etc. It is the heart of \TL{}. + +A bit of history: The original implementation was by Tomas Rokicki who, +in 1987, developed a first \TeX{}-to-C system based on change files +under Unix, which were primarily the original work of Howard Trickey and +Pavel Curtis. Tim Morgan became the maintainer of the system, and +during this period the name changed to Web-to-C\@. In 1990, Karl Berry +took over the work, assisted by dozens of additional contributors, and +in 1997 he handed the baton to Olaf Weber. + +The \Webc{} system runs on Unix, 32-bit Windows systems, \MacOSX{}, and +other operating systems. It uses Knuth's original sources for \TeX{} and +other basic programs written in \web{} and translates them into C source +code. The core \TeX{} programs are: + +\begin{cmddescription} +\item[bibtex] Maintaining bibliographies. +\item[dmp] \cmdname{troff} to MPX (\MP{} pictures). +\item[dvicopy] Expands virtual font references in \dvi{} files. +\item[dvitomp] \dvi{} to MPX (MetaPost pictures). +\item[dvitype] \dvi{} to human-readable text. +\item[gftodvi] Generic font proofsheets. +\item[gftopk] Generic to packed fonts. +\item[gftype] GF to human-readable text. +\item[makempx] \MP{} label typesetting. +\item[mf] Creating typeface families. +\item[mft] Prettyprinting \MF{} source. +\item[mpost] Creating technical diagrams. +\item[mpto] MetaPost label extraction. +\item[newer] Compare modification times. +\item[patgen] Creating hyphenation patterns. +\item[pktogf] Packed to generic fonts. +\item[pktype] PK to human-readable text. +\item[pltotf] Plain text property list to TFM. +\item[pooltype] Display \web{} pool files. +\item[tangle] \web{} to Pascal. +\item[tex] Typesetting. +\item[tftopl] TFM to plain text property list. +\item[vftovp] Virtual font to virtual property list. +\item[vptovf] Virtual property list to virtual font. +\item[weave] \web{} to \TeX. +\end{cmddescription} + +\noindent The precise functions and syntax of these programs are +described in the documentation of the individual packages and of \Webc{} +itself. However, knowing a few principles governing the whole family of +programs will help you take advantage of your \Webc{} installation. + +All programs honor these standard \acro{GNU} options: +\begin{ttdescription} +\item[-{}-help] print basic usage summary. +\item[-{}-verbose] print detailed progress report. +\item[-{}-version] print version information, then exit. +\end{ttdescription} + +For locating files the \Webc{} programs use the path searching library +\KPS{}. This library uses a combination of environment variables and a +configuration files to optimize searching the (huge) collection of +\TeX{} files. \Webc{} can look at more than one directory tree +simultaneously, which is useful in maintaining \TeX's standard +distribution and local extensions in two distinct trees. To speed up +file searches the root of each tree has a file \file{ls-R}, containing +an entry showing the name and relative pathname for all files under that +root. + +\subsection{Kpathsea path searching} + +Let us first describe the generic path searching mechanism of the \KPS{} +library. + +We call a \emph{search path} a colon- or semicolon\hyph sepa\-rated list +of \emph{path elements}, which are basically directory names. A +search path can come from (a combination of) many sources. To look up +a file \samp{my-file} along a path \samp{.:/dir}, \KPS{} checks each +element of the path in turn: first \file{./my-file}, then +\file{/dir/my-file}, returning the first match (or possibly all +matches). + +In order to adapt optimally to all operating systems' conventions, on +non-Unix systems \KPS{} can use filename separators different from +colon (\samp{:}) and slash (\samp{/}). + +To check a particular path element \var{p}, \KPS{} first checks if a +prebuilt database (see ``Filename data\-base'' on +page~\pageref{Filename-database}) applies to \var{p}, i.e., if the database +is in a directory that is a prefix of \var{p}. If so, the path +specification is matched against the contents of the database. + +If the database does not exist, or does not apply to this path +element, or contains no matches, the filesystem is searched (if this +was not forbidden by a specification starting with \samp{!!}\ and if +the file being searched for must exist). \KPS{} constructs the list +of directories that correspond to this path element, and then checks +in each for the file being sought. + +The ``file must exist'' condition comes into play with \samp{.vf} files and +input files read by \TeX's \cs{openin} command. Such files may not +exist (e.g., \file{cmr10.vf}), and so it would be wrong to search the +disk for them. Therefore, if you fail to update \file{ls-R} when you +install a new \samp{.vf} file, it will never be found. +Each path element is checked in turn: first the database, then the +disk. If a match is found, the search stops and the result is +returned. + +Although the simplest and most common path element is a directory +name, \KPS{} supports additional features in search paths: layered +default values, environment variable names, config file values, users' +home directories, and recursive subdirectory searching. Thus, we say +that \KPS{} \emph{expands} a path element, meaning it transforms all +the specifications into basic directory name or names. This is +described in the following sections in the same order as it takes +place. + +Note that if the filename being searched for is absolute or explicitly +relative, i.e., starts with \samp{/} or \samp{./} or \samp{../}, +\KPS{} simply checks if that file exists. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Path sources} +\label{Path-sources} + +A search path can come from many sources. In the order in which +\KPS{} uses them: + +\begin{enumerate} +\item + A user-set environment variable, for instance, \envname{TEXINPUTS}\@. + Environment variables with a period and a program name appended + override; e.g., if \samp{latex} is the name of the program being run, + then \envname{TEXINPUTS.latex} will override \envname{TEXINPUTS}. +\item + A program-specific configuration file, for exam\-ple, a line + \samp{S /a:/b} in \cmdname{dvips}'s \file{config.ps}. +\item A \KPS{} configuration file \file{texmf.cnf}, containing a line like + \samp{TEXINPUTS=/c:/d} (see below). +\item The compile-time default. +\end{enumerate} +\noindent You can see each of these values for a given +search path by using the debugging options (see ``Debugging actions'' +on page~\pageref{Debugging}). + +\subsubsection{Config files} + +\begingroup\tolerance=3500 +\KPS{} reads \emph{runtime configuration files} named \file{texmf.cnf} +for search path and other definitions. The search path used to look +for these files is named \envname{TEXMFCNF} (by default such a file lives +in the \file{texmf/web2c} subdirectory). \emph{All} +\file{texmf.cnf} files in the search path will be read and definitions +in earlier files override those in later files. Thus, with a search +path of \verb|.:$TEXMF|, values from \file{./texmf.cnf} override those +from \verb|$TEXMF/texmf.cnf|. +\endgroup + +\begin{itemize} +\item + Comments start with \code{\%} and continue to the end of the line. +\item + Blank lines are ignored. +\item + A \bs{} at the end of a line acts as a continuation character, + i.e., the next line is appended. Whitespace at the beginning of + continuation lines is not ignored. +\item + Each remaining line has the form: +\begin{alltt} + \var{variable}[.\var{progname}] [=] \var{value} +\end{alltt}% + where the \samp{=} and surrounding whitespace are optional. +\item + The \ttvar{variable} name may contain any character other + than whitespace, \samp{=}, or \samp{.}, but sticking to + \samp{A-Za-z\_} is safest. +\item + If \samp{.\var{progname}} is present, the definition only + applies if the program that is running is named + \texttt{\var{progname}} or \texttt{\var{progname}.exe}. This allows + different flavors of \TeX{} to have different search paths, for + example. +\item \var{value} may contain any characters except + \code{\%} and \samp{@}. The + \code{\$\var{var}.\var{prog}} feature is not available on the + right-hand side; instead, you must use an additional variable. A + \samp{;}\ in \var{value} is translated to \samp{:}\ if + running under Unix; this is useful to be able to have a single + \file{texmf.cnf} for Unix, \acro{MS-DOS} and Windows systems. +\item + All definitions are read before anything is expanded, so + variables can be referenced before they are defined. +\end{itemize} +A configuration file fragment illustrating most of these points is +\ifSingleColumn +shown below: + +\verbatiminput{examples/ex5.tex} +\else +shown in Figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Path expansion} +\label{Path-expansion} + + +\KPS{} recognizes certain special characters and constructions in +search paths, similar to those available in Unix shells. As a +general example, the complex path, +\verb+~$USER/{foo,bar}//baz+, expands to all subdirectories under +directories \file{foo} and \file{bar} in \texttt{\$USER}'s home +directory that contain a directory or file \file{baz}. These +expansions are explained in the sections below. +%$ +\subsubsection{Default expansion} +\label{Default-expansion} + +\tolerance=2500 +If the highest-priority search path (see ``Path sources'' on +page~\pageref{Path-sources}) contains an \emph{extra colon} (i.e., +leading, trailing, or doubled), \KPS{} inserts at that point the +next-highest-prio\-rity search path that is defined. If that inserted +path has an extra colon, the same happens with the next highest. For +example, given an environment variable setting + +\tolerance=1500 + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +and a \code{TEXINPUTS} value from \file{texmf.cnf} of + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +then the final value used for searching will be: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Since it would be useless to insert the default value in more than one +place, \KPS{} changes only one extra \samp{:}\ and leaves any others in +place. It checks first for a leading \samp{:}, then a trailing +\samp{:}, then a doubled \samp{:}. + +\subsubsection{Brace expansion} + +A useful feature is brace expansion, which means that, for instance, +\verb+v{a,b}w+ expands to \verb+vaw:vbw+. Nesting is allowed. +This can be used to implement multiple \TeX{} hierarchies, by +assigning a brace list to \code{\$TEXMF}. +For example, in \file{texmf.cnf}, you find +the following definition: +\begin{verbatim} + TEXMF = {$HOMETEXMF,$TEXMFLOCAL,!!$VARTEXMF,!!$TEXMFMAIN} +\end{verbatim} +Using this you can then write something like +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +which means that, after looking in the current directory, the +\code{\$HOMETEXMF/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$VARTEXMF/tex} +and \code{\$TEXMFMAIN/tex} trees \emph{only}) will be searched (the +last two use using \file{ls-R} data base files). It is a convenient +way for running two parallel \TeX{} structures, one ``frozen'' (on a +\CD, for instance) and the other being continuously updated with new +versions as they become available. By using the \code{\$TEXMF} +variable in all definitions, one is sure to always search the +up-to-date tree first. + +\subsubsection{Subdirectory expansion} +\label{Subdirectory-expansion} + +Two or more consecutive slashes in a path element following a directory +\var{d} is replaced by all subdirectories of \var{d}: first those +subdirectories directly under \var{d}, then the subsubdirectories under +those, and so on. At each level, the order in which the directories are +searched is \emph{unspecified}. + +If you specify any filename components after the \samp{//}, only +subdirectories with matching components are included. For example, +\samp{/a//b} expands into directories \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, and so on, but not \file{/a/b/c} or \file{/a/1}. + +Multiple \samp{//} constructs in a path are possible, but +\samp{//} at the beginning of a path is ignored. + +\subsubsection{List of special characters and their meaning: a summary} + +The following list summarizes the special characters in \KPS{} +configuration files. + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Separator in path specification; at the beginning or + the end of a path it substitutes the default path expansion.\par +\item[\CODE{;}] Separator on non-Unix systems (acts like \code{:}). +\item[\CODE{\$}] Variable expansion. +\item[\CODE{\string~}] Represents the user's home directory. +\item[\CODE{\char`\{...\char`\}}] Brace expansion. +\item[\CODE{//}] Subdirectory expansion (can occur anywhere in + a path, except at its beginning). +\item[\CODE{\%}] Start of comment. +\item[\CODE{\bs}] Continuation character (allows multi-line entries). +\item[\CODE{!!}] Search \emph{only} database to locate file, \emph{do + not} search the disk. +\end{ttdescription} + + +\subsection{Filename databases} +\label{Filename-database} + +\KPS{} goes to some lengths to minimize disk accesses for searches. +Nevertheless, at installations with enough directories, searching each +possible directory for a given file can take an excessively long time +(this is especially true if many hundreds of font directories have to +be traversed.) Therefore, \KPS{} can use an externally-built plain text +``database'' file named \file{ls-R} that maps files to directories, +thus avoiding the need to exhaustively search the disk. + +A second database file \file{aliases} allows you to give additional +names to the files listed in \file{ls-R}. This can be helpful to +confirm to \acro{DOS} 8.3 filename conventions in source files. + +\subsubsection{The filename database} +\label{ls-R} + +As explained above, the name of the main filename database must be +\file{ls-R}. You can put one at the root of each \TeX{} hierarchy in +your installation that you wish to be searched (\code{\$TEXMF} by +default); most sites have only one hierarchy. \KPS{} looks for +\file{ls-R} files along the \code{TEXMFDBS} path. + +The recommended way to create and maintain \samp{ls-R} is to run the +\code{mktexlsr} script included with the distribution. It is invoked +by the various \samp{mktex}\dots\ scripts. In principle, this script +just runs the command +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +presuming your system's \code{ls} produces the right output format +(\acro{GNU} \code{ls} is all right). To ensure that the database is +always up-to-date, it is easiest to rebuild it regularly via +\code{cron}, so that it is automatically updated when the installed +files change, such as after installing or updating a \LaTeX{} package. + +If a file is not found in the database, by default \KPS{} goes ahead +and searches the disk. If a particular path element begins with +\samp{!!}, however, \emph{only} the database will be searched for that +element, never the disk. + + +\subsubsection{kpsewhich: Standalone path searching} +\label{Invoking-kpsewhich} + +The \texttt{kpsewhich} program exercises path searching independent of any +particular application. This can be useful as a sort of \code{find} +program to locate files in \TeX{} hierarchies (this is used heavily in +the distributed \samp{mktex}\dots\ scripts). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +The options specified in \ttvar{option} start with either \samp{-} +or \samp{-{}-}, and any unambiguous abbreviation is accepted. + +\KPS{} looks up each non-option argument on the command line as a +filename, and returns the first file found. There is no option to +return all the files with a particular name (you can run the Unix +\samp{find} utility for that). + +The more important options are described next. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Set the resolution to \ttvar{num}; this only affects \samp{gf} + and \samp{pk} lookups. \samp{-D} is a synonym, for compatibility + with \cmdname{dvips}. Default is 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Set the format for lookup to \ttvar{name}. By default, the + format is guessed from the filename. For formats which do not have + an associated unambiguous suffix, such as \MP{} support files and + \cmdname{dvips} configuration files, you have to specify the name as + found in the first column of table~\ref{tab:kpathsea}, which lists + currently recognized names, a description, possible file extensions, + and associated environment variables. +\end{ttdescription} + + +\def\KpathKey#1#2#3#4#5{% name, number, description, variables, + % suffixes +\SetRowColor#1 & #3 & #4 & #5\\} +\def\HEAD#1{\multicolumn{1}{l}{\emph{#1}}} +% +\begin{small} +% a footnoterule immediately under a bottom-of-page rule looks dead +% silly, so we suppress it +\renewcommand\footnoterule{\relax} +% +\begin{longtable}{@{}% + >{\ttfamily}P{.16\textwidth}% Col.1 + P{.3\textwidth}% Col 2 + >{\ttfamily\footnotesize}P{.29\textwidth}% Col 3 + >{\ttfamily}P{.14\textwidth}% Col 4 +@{}} +\caption{Kpathsea file types.}\label{tab:kpathsea}\\ +\emph{Name} & \HEAD{Description} & \HEAD{Variables} +& \HEAD{Suffixes}\\ +\hline +\endfirsthead +\multicolumn{3}{l}{Kpathsea file types \emph{continued}}\\ +\emph{Name} & \HEAD{Description} & \HEAD{Variables} +& \HEAD{Suffixes}\\ +\hline +\noalign{\vspace{2pt}} +\endhead +\mbox{}\\ +\hline +\endfoot +\KpathKey + {afm} + {4} + {Adobe font metrics} + {AFMFONTS} + {.afm} +\KpathKey + {base} + {5} + {Metafont memory dump} + {MFBASES, TEXMFINI} + {.base} +\KpathKey + {bib} + {6} + {\BibTeX{} bibliography source} + {BIBINPUTS, TEXBIB} + {.bib} +\KpathKey + {} + {2} + {bitmap fonts} + {GLYPHFONTS, TEXFONTS} + {} +\KpathKey + {bst} + {7} + {\BibTeX{} style files} + {BSTINPUTS} + {.bst} +\KpathKey + {cnf} + {8} + {Runtime configuration files} + {TEXMFCNF} + {.cnf} +\KpathKey + {dvips config} + {34} + {\textsf{dvips} configuration files, e.g., \file{config.ps}} + {TEXCONFIG} + {} +\KpathKey + {enc} + {34} + {Font encoding files} + {ENCFONTS} + {.enc} +\KpathKey + {fmt} + {10} + {\TeX{} memory dump} + {TEXFORMATS, TEXMFINI} + {.fmt, .efmt, .efm} +\KpathKey + {gf} + {0} + {generic font bitmap} + {GFFONTS} + {.gf} +\KpathKey + {graphic/figure} + {25} + {Encapsulated \PS{} figures} + {TEXPICTS, TEXINPUTS} + {.eps, .epsi} +\KpathKey + {ist} + {35} + {\textsf{makeindex} style files} + {TEXINDEXSTYLE, INDEXSTYLE} + {.ist} +\KpathKey + {ls-R} + {9} + {Filename databases} + {TEXMFDBS} + {} +\KpathKey + {map} + {11} + {Fontmaps} + {TEXFONTMAPS} + {.map} +\KpathKey + {mem} + {12} + {MetaPost memory dump} + {MPMEMS, TEXMFINI} + {.mem} +\KpathKey + {mf} + {13} + {Metafont source} + {MFINPUTS} + {.mf} +\KpathKey + {mfpool} + {14} + {Metafont program strings} + {MFPOOL, TEXMFINI} + {.pool} +\KpathKey + {mft} + {15} + {MFT style file} + {MFTINPUTS} + {.mft} +\KpathKey + {} + {41} + {miscellaneous fonts} + {MISCFONTS} + {} +\KpathKey + {mp} + {16} + {MetaPost source} + {MPINPUTS} + {.mp} +\KpathKey + {mppool} + {17} + {MetaPost program strings} + {MPPOOL, TEXMFINI} + {.pool} +\KpathKey + {MetaPost support} + {18} + {MetaPost support files, used by DMP} + {MPSUPPORT} + {} +\KpathKey + {ocp} + {19} + {\OMEGA{} compiled process files} + {OCPINPUTS} + {.ocp} +\KpathKey + {ofm} + {20} + {\OMEGA{} font metrics} + {OFMFONTS, TEXFONTS} + {.ofm, .tfm} +\KpathKey + {opl} + {21} + {\OMEGA{} property lists} + {OPLFONTS, TEXFONTS} + {.opl} +\KpathKey + {otp} + {22} + {\OMEGA{} translation process files} + {OTPINPUTS} + {.otp} +\KpathKey + {ovf} + {23} + {\OMEGA{} virtual fonts} + {OVFFONTS, TEXFONTS} + {.ovf} +\KpathKey + {ovp} + {24} + {\OMEGA{} virtual property lists} + {OVPFONTS, TEXFONTS} + {.ovp} +\KpathKey + {pdftex config} + {18} + {\textsf{pdftex} configuration files} + {PDFTEXCONFIG} + {} +\KpathKey + {pk} + {1} + {packed bitmap fonts} + {\var{program}FONTS \textrm{(\texttt{\var{program}} being + \textsmaller{\cmdname{XDVI}}, + etc.)}, PKFONTS, TEXPKS, GLYPHFONTS, TEXFONTS} + {.pk} +\KpathKey + {\PS{} header} + {30} + {downloadable \PS{}} + {TEXPSHEADERS, PSHEADERS} + {.pro, .enc} +\KpathKey + {tex} + {26} + {\TeX{} source} + {TEXINPUTS} + {.tex, .cls, .sty, .clo, .def} +\KpathKey + {texmfscripts} + {20} + {Scripts distributed in the \file{texmf} tree} + {TEXMFSCRIPTS} + {} +\KpathKey + {TeX system documentation} + {27} + {Documentation files for the \TeX{} system} + {TEXDOCS} + {} +\KpathKey + {TeX system sources} + {29} + {Source files for the \TeX{} system} + {TEXSOURCES} + {} +\KpathKey + {texpool} + {28} + {\TeX{} program strings} + {TEXPOOL, TEXMFINI} + {.pool} +\KpathKey + {tfm} + {3} + {\TeX{} font metrics} + {TFMFONTS, TEXFONTS} + {.tfm} +\KpathKey + {Troff fonts} + {31} + {Troff fonts, used by DMP} + {TRFONTS} + {} +\KpathKey + {truetype fonts} + {36} + {TrueType outline fonts} + {TTFONTS} + {.ttf, .ttc} +\KpathKey + {Type~1 fonts} + {32} + {Type 1 \PS{} outline fonts} + {T1FONTS, T1INPUTS, TEXPSHEADERS, DVIPSHEADERS} + {.pfa, .pfb} +\KpathKey + {type42 fonts} + {37} + {Type 42 \PS{} outline fonts} + {T42FONTS} + {} +\KpathKey + {vf} + {33} + {virtual fonts} + {VFFONTS, TEXFONTS} + {.vf} +\KpathKey + {web2c files} + {38} + {\Webc{} support files} + {WEB2C} + {} +\KpathKey + {other text files} + {39} + {text files used by `\textsf{foo}'} + {FOOINPUTS} + {} +\KpathKey + {other binary files} + {40} + {binary files used by `\textsf{foo}'} + {FOOINPUTS} + {} +\end{longtable} +\end{small} + + +\begin{multicols}{2} + + The last two entries in table~\ref{tab:kpathsea} are special + cases, where the paths and environment variables depend on the name + of the program: the variable name is constructed by converting the + program name to upper case, and then appending \texttt{INPUTS}. + + The environment variables are set by default in the configuration + file \file{texmf.cnf}. It is only when you want to override one or + more of the values specified in that file that you might want to set + them explicitly in your execution environment. + + The \samp{-{}-format} and \samp{-{}-path} options are mutually + exclusive. + +\begin{ttdescription} + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Set the mode name to \ttvar{string}; this only affects \samp{gf} + and \samp{pk} lookups. No default: any mode will be found. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Do everything possible to find the files, notably including + searching the disk. By default, only the \file{ls-R} database is + checked, in the interest of efficiency. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Search along the path \ttvar{string} (colon-separated as usual), + instead of guessing the search path from the filename. \samp{//} and + all the usual expansions are supported. The options \samp{-{}-path} + and \samp{-{}-format} are mutually exclusive. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Set the program name to \texttt{\var{name}}. + This can affect the search paths via the \texttt{.\var{progname}} + feature. + The default is \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + shows the path used for file lookups of file type \texttt{\var{name}}. + Either a filename extension (\code{.pk}, \code{.vf}, etc.) or a + name can be used, just as with \samp{-{}-format} option. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + sets the debugging options to \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Examples of use} +\label{SExamplesofuse} + +Let us now have a look at \KPS{} in action. Here's a straightforward search: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +We are looking for the file \file{article.cls}. Since the \samp{.cls} +suffix is unambiguous we do not need to specify that we want to look for a +file of type \optname{tex} (\TeX{} source file directories). We find it in +the subdirectory \file{tex/latex/base} below the \samp{texmf-dist} \TL\ +directory. Similarly, all of the following are found without problems +thanks to their unambiguous suffix. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +That last is a \BibTeX{} bibliography database for \textsl{TUGBoat} articles. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Font bitmap glyph files of type \file{.pk} are used by display +programs like \cmdname{dvips} and \cmdname{xdvi}. Nothing is returned in +this case since there are no pre-generated Computer Modern \samp{.pk} +files in \TL{}\Dash the Type~1 variants are used by default. +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} + +For these fonts (a phonetic alphabet from the University of Washington) +we had to generate \samp{.pk} files, and since the default \MF{} mode on +our installation is \texttt{ljfour} with a base resolution of 600\dpi{} +(dots per inch), this instantiation is returned. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +In this case, when specifying that we are interested in a resolution +of 300\dpi{} (\texttt{-dpi=300}) we see that no such font is available on +the system. A program like \cmdname{dvips} or \cmdname{xdvi} would +go off and actually build the required \texttt{.pk} files +using the script \cmdname{mktexpk}. + +Next we turn our attention to \cmdname{dvips}'s header and configuration +files. We first look at one of the commonly used files, the general +prolog \file{tex.pro} for \TeX{} support, before turning our attention +to the generic configuration file (\file{config.ps}) and the \PS{} font +map \file{psfonts.map}\Dash as of 2004, map and encoding files have +their own search paths and new location in \dirname{texmf} trees. As +the \samp{.ps} suffix is ambiguous we have to specify explicitly which +type we are considering (\optname{dvips config}) for the file +\texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +We now take a closer look at the \acro{URW} Times \PS{} support +files. The prefix for these in the standard font naming scheme is +\samp{utm}. The first file we look at is the configuration file, +which contains the name of the map file: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +The contents of that file is +\begin{alltt} + p +utm.map +\end{alltt} +which points to the file \file{utm.map}, which we want to +locate next. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +This map file defines the file names of the Type~1 \PS{} fonts in +the URW collection. Its contents look like (we only show part of the +lines): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +It should be evident from these examples how you can easily locate the +whereabouts of a given file. This is especially important if you suspect +that the wrong version of a file is picked up somehow, since +\cmdname{kpsewhich} will show you the first file encountered. + +\subsubsection{Debugging actions} +\label{Debugging} + +Sometimes it is necessary to investigate how a program resolves file +references. To make this practical, \KPS{} offers various levels of +debugging output: + +\begin{ttdescription} +\item[\texttt{\ 1}] \texttt{stat} calls (disk lookups). When running + with an up-to-date \file{ls-R} database this should almost give no + output. +\item[\texttt{\ 2}] References to hash tables (such as \file{ls-R} + databases, map files, configuration files). +\item[\texttt{\ 4}] File open and close operations. +\item[\texttt{\ 8}] General path information for file types + searched by \KPS. This is useful to find out where a particular + path for the file was defined. +\item[\texttt{16}] Directory list for each path element (only relevant + for searches on disk). +\item[\texttt{32}] File searches. +\end{ttdescription} +A value of \texttt{-1} will set all the above options; in practice, +this is usually the most convenient. + +Similarly, with the \cmdname{dvips} program, by setting a combination of +debug switches, one can follow in detail where files are being picked up +from. Alternatively, when a file is not found, the debug trace shows in +which directories the program looks for the given file, so that one can +get an indication what the problem~is. + +Generally speaking, as most programs call the \KPS{} library +internally, one can select a debug option by using the +\envname{KPATHSEA\_DEBUG} environment variable, and setting it to (a +combination of) values as described in the above list. + +(Note for Windows users: it is not easy to redirect +all messages to a file in this system. For diagnostic purposes +you can temporarily \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Let us consider, as an example, a small \LaTeX{} source file, +\file{hello-world.tex}, which contains the following input. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +This little file only uses the font \file{cmr10}, so let us look +how \cmdname{dvips} prepares the \PS{} file (we want to use the Type~1 +version of the Computer Modern fonts, hence the option \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In this case we have combined \cmdname{dvips}'s debug class 4 (font +paths) with \KPS's path element expansion (see \cmdname{dvips} Reference +Manual, \OnCD{texmf/doc/html/dvips/dvips_toc.html}). +The output (slightly rearranged) appears in +Figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} starts by locating its working files. First, +\file{texmf.cnf} is found, which gives the definitions of the search +paths for the other files, then the file database \file{ls-R} (to +optimize file searching) and the file \file{aliases}, which makes it +possible to declare several names (e.g., a short \acro{DOS}-like 8.3 and +a more natural longer version) for the same file. Then \cmdname{dvips} +goes on to find the generic configuration file \file{config.ps} +before looking for the customization file \file{.dvipsrc} (which, in +this case is \emph{not found}). Finally, \cmdname{dvips} locates the +config file for the Computer Modern \PS{} fonts \file{config.cms} +(this was initiated with the \texttt{-Pcms} option on the \cmdname{dvips} +command). This file contains the list of the map files which +define the relation between the \TeX{}, \PS{} and file system +names of the fonts. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} thus goes on to find all these files, plus the generic +map file \file{psfonts.map}, which is always loaded (it contains +declarations for commonly used \PS{} fonts; see the last part of +Section \ref{SExamplesofuse} for more details about \PS{} map +file handling). + +At this point \cmdname{dvips} identifies itself to the user: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Then it goes on to look for the prolog file \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Then it goes on to look for the prolog file \file{texc.pro} (see +Figure~\ref{fig:dvipsdbgb}). +\fi + +After having found the file in question, \cmdname{dvips} outputs +date and time, and informs us that it will generate the +file \file{hello-world.ps}, then that it needs the font file +\file{cmr10}, and that the latter is declared as ``resident'' (no +bitmaps needed): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Now the search is on for the file \file{cmr10.tfm}, which is found, +then a few more prolog files (not shown) are referenced, and finally +the Type~1 instance \file{cmr10.pfb} of the font is located and +included in the output file (see last line). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Runtime options} + +Another useful feature of \Webc{} is its possibility to control a number +of memory parameters (in particular, array sizes) via the runtime file +\file{texmf.cnf} read by \KPS{}. The memory settings can be found in +Part 3 of that file in the \TL{} distribution. The more important +are: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + Total words of memory available, for + \TeX{}, \MF{} and \MP. You must make a new format file for each + different setting. For instance, you could generate a ``huge'' + version of \TeX{}, and call the format file \texttt{hugetex.fmt}. + Using the standard way of specifying the program name used by \KPS{}, + the particular value of the \texttt{main\_memory} variable will then + be read from \file{texmf.cnf}. + etc.). +\item[\texttt{extra\_mem\_bot}] + Extra space for ``large'' \TeX{} data structures: + boxes, glue, breakpoints, etc. Especially useful if you use + \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Number of words for font information available for \TeX. This + is more or less the total size of all TFM files read. +\item[\texttt{hash\_extra}] + Additional space for the hash table of control sequence names. + Approximately 10,000 control sequences can be stored in the main + hash table; if you have a large book with numerous cross-references, + this might not be enough. The default value of + \texttt{hash\_extra} is \texttt{50000}. +\end{ttdescription} + +\noindent Of course, this facility is no substitute for truly dynamic +arrays and memory allocation, but since these are extremely difficult to +implement in the present \TeX{} source, these runtime parameters provide +a practical compromise allowing some flexibility. + + +\section{Building on a new Unix platform} + +If you have a platform for which executables are not included, you will +need to compile \TeX{} and friends. This is not as hard as it +sounds. What you need is all in the directory \texttt{source} in the +distribution. + +\subsection{Prerequisites} + +You will need at least 100 megabytes of disk space to compile all of +\TeX{} and its support programs. You'll also need an \acro{ANSI} C +compiler, a \cmdname{make} utility, a lexical scanner, and a parser +generator. We recommend the \acro{GNU} version of these programs +(\cmdname{gcc}, \acro{GNU} \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). You may be able to work with other C compilers and +\cmdname{make} programs, but you will need a good understanding of +building Unix programs to sort out problems. + +Also, the command \texttt{uname} must return a sensible value. + + +\subsection{Configuration} + +To begin, perform a normal installation of \TL{} to your disk (see +section~\ref{sec:unix-install-disk} on +\p.\pageref{sec:unix-install-disk}). You may wish to skip installing +all of the prebuilt binaries. + +Then, unpack the source from the compressed \texttt{tar} file in the +directory \dirname{source} to your disk and change directory to where +you placed it. + +Next, run \cmdname{configure} with a command line like this: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +The \optname{-prefix} directory is the one where you installed the +support tree; the directory layout will be as follows (where \$TEXDIR +stands for the directory you chose): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & main tree with fonts,\\ + & \qquad macros, etc\\ + \dirname{$TEXDIR/man} & Unix manual pages\\ + \dirname{$TEXDIR/info} & \acro{GNU} style Info manuals\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaries\\ +\end{tabular} +%$ + +If you want to leave out the \dirname{$PLATFORM} directory level, +i.e., put the binaries directly into \dirname{$TEXDIR/bin}, specify +the \verb|--disable-multiplatform| option to \cmdname{configure}. + +Have a look at the output of \verb|./configure --help| for more +options you can use. For example, you can skip building of \OMEGA{} and +\eTeX{}. + + +\subsection{Running \cmdname{make}} + +Make sure the shell variable or option \texttt{noclobber} is not set. +Then, run the main \cmdname{make} like this: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +and relax\ldots + +Alternatively, you want to log all the output, as in: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Before you believe that everything went ok, please check the log file +for errors: \acro{GNU} \cmdname{make} always uses the string \samp{***} +whenever a command fails. Also, check if all the programs were built: + +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +The result should be over 200 (you can check the exact number with the +\dirname{bin} directory contents in the distribution). + +If you need special privileges for \texttt{make install}, you can +separate the \samp{make world} into two different runs, like this: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +After you've installed your new binaries, you should follow the normal +post-installation procedures, given in section~\ref{sec:postinstall} +(\p.\pageref{sec:postinstall}). + +Also, if you'd like to make your binaries available to others, please +contact us. We'll be happy to put them on the \TL\ web pages. + + +\section{Acknowledgements} + +\TL{} is a joint effort by virtually all of the \TeX{} user groups. +This edition of \TL{} was overseen by Sebastian Rahtz and Karl Berry. +The other principal contributors are listed below. + +\begin{itemize*} + +\item The German-speaking \TeX{} Users (\acro{DANTE} e.V.), who provide +the hardware for the \TL{} source repository; and Rainer Sch\"opf and +Reinhard Zierke who look after it. \acro{DANTE} officers Volker Schaa +and Klaus Hoeppner coordinated production with the Lehmann's Bookstore +(\url{http://www.lob.de}). + +\item The Perforce corporation (\url{http://www.perforce.com}), for providing +a free copy of their excellent change management system, which we used +to manage the \TL{} sources. + +\item Peter Breitenlohner and the \eTeX\ team for the stable foundation +of future \TeX's. + +\item Thomas Esser, without whose marvelous \teTeX{} package \TL{} +would certainly not exist, and whose continual help makes it a better +product. + +\item Michel Goossens, who co-authored the original documentation. + +\item Eitan Gurari, whose \TeX4ht was used to create the \HTML{} +version of this documentation, and who worked tirelessly to improve +it at short notice. + +\item Hans Hagen, for major testing and making the \ConTeXt\ format +conform to \TL's needs. + +\item \Thanh, Martin Schr\"oder, and the pdf\TeX\ team for continuing +enhancements of \TeX's abilities. + +\item Petr Olsak, who coordinated and checked all the Czech and Slovak +material very carefully. + +\item Fabrice Popineau, for the Windows side of \TL{} and devising the +new directory layout. + +\item Staszek Wawrykiewicz, the principal tester for all of \TL{}, and +coordinator of the Polish contributions. + +\item Olaf Weber, for his patient assembly and maintenance of Web2C, +upon which all else depends. + +\item Gerben Wierda, for creating and maintaining the \MacOSX\ support, +and much integration and testing. + +\item Graham Williams, on whose work the catalogue of packages depends. + +\end{itemize*} + +Builders of the binaries: +Tigran Aivazian (\pkgname{x86\_64-linux}), +Manfred Lotz (\pkgname{i386-freebsd}), +Maksym Polyakov (\pkgname{sparc-solaris}), +Fabrice Popineau (\pkgname{win32}), +Norbert Preining (\pkgname{alpha-linux}), +Vladimir Volovich (\pkgname{powerpc-aix} and \pkgname{sparc64-linux}), +Staszek Wawrykiewicz (\pkgname{i386-linux}), +Olaf Weber (\pkgname{mips-irix}), +Gerben Wierda (\pkgname{powerpc-darwin}). + +Documentation and translation updates: +Karl Berry (English), +Daniel Flipo \& Fabrice Popineau (French), +G\"unter Partosch \& Hartmut Henkel (German), +Petr Sojka \& Jan Busa (Czech\slash Slovak), +Boris Veytsman (Russian), +Staszek Wawrykiewicz (Polish). + +Of course the most important acknowledgement must go to Donald Knuth, first +for inventing \TeX, and then for giving it to the world. + + +\section{Release history} +\label{sec:history} + +\subsection{Past} + +Discussion began in late 1993 when the Dutch \TeX{} Users Group was +starting work on its 4All\TeX{} \CD{} for \acro{MS-DOS} users, and it +was hoped at that time to issue a single, rational, \CD{} for all +systems. This was too ambitious a target for the time, but it did spawn +not only the very successful 4All\TeX{} \CD{}, but also the \acro{TUG} +Technical Council working group on a \emph{\TeX{} Directory Structure} +(\url{http://tug.org/tds}), which specified how to create consistent and +manageable collections of \TeX{} support files. A complete draft of the +\TDS{} was published in the December 1995 issue of \textsl{TUGboat}, and +it was clear from an early stage that one desirable product would be a +model structure on \CD{}. The distribution you now have is a very direct +result of the working group's deliberations. It was also clear that the +success of the 4All\TeX{} \CD{} showed that Unix users would benefit +from a similarly easy system, and this is the other main strand of +\TL. + +We first undertook to make a new Unix-based \TDS{} \CD{} in the autumn +of 1995, and quickly identified Thomas Esser's \teTeX{} as the ideal +setup, as it already had multi-platform support and was built with +portability across file systems in mind. Thomas agreed to help, and work +began seriously at the start of 1996. The first edition was released in +May 1996. At the start of 1997, Karl Berry completed a major new release +of Web2c, which included nearly all the features which Thomas Esser had +added in \teTeX, and we decided to base the 2nd edition of the \CD{} on +the standard \Webc, with the addition of \teTeX's \texttt{texconfig} +script. The 3rd edition of the \CD{} was based on a major revision of +\Webc, 7.2, by Olaf Weber; at the same time, a new revision of \teTeX +was being made, and \TL{} included almost all of its features. The +4th edition followed the same pattern, using a new version of \teTeX, +and a new release of \Webc{} (7.3). The system now included a complete +Windows setup. + +For the 5th edition (March 2000) many parts of the \CD{} were revised +and checked, updating hundreds of packages. Package details were stored +in XML files. But the major change for \TeX\ Live 5 was that all +non-free software was removed. Everything in \TL{} is now intended +to be compatible with the Debian Free Software Guidelines +(\url{http://www.debian.org/intro/free}); we have done our best to check +the license conditions of all packages, but we would very much +appreciate hearing of any mistakes. + +The 6th edition (July 2001) had much more material updated. The major +change was a new install concept: the user could select a more exact set +of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, +etc., but also prepares an appropriate \texttt{language.dat}. + +The 7th edition of 2002 had the notable addition of \MacOSX{} support, +and the usual myriad of updates to all sorts of packages and +programs. An important goal was integration of the source back with +\teTeX, to correct the drift apart in versions~5 and~6. + +In 2003, with the continuing flood of updates and additions, we found +that \TL{} had grown so large it could no longer be contained on a +single \CD, so we split it into three different distributions (see +section~\ref{sec:multiple-dist}, \p.\pageref{sec:multiple-dist}). In +addition: + +\begin{itemize*} +\item At the request of the \LaTeX{} team, we changed the standard + \cmdname{latex} and \cmdname{pdflatex} commands to now use \eTeX{} (see + \p.\pageref{text:etex}). +\item The new Latin Modern fonts were included (and are recommended). +\item Support for Alpha \acro{OSF} was removed + (\acro{HPUX} support was removed previously), since no one had (or + volunteered) hardware available on which to compile new binaries. +\item Windows setup was substantially changed; for the first time + an integrated environment based on XEmacs was introduced. +\item Important supplementary programs for Windows + (Perl, Ghost\-script, Image\-Magick, Ispell) are now installed + in the \TL{} installation directory. +\item Font map files used by \cmdname{dvips}, \cmdname{dvipdfm} + and \cmdname{pdftex} are now generated by the new program + \cmdname{updmap} and installed into \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{}, and \MP{} now, by default, output most input + characters (32 and above) as themselves in output (e.g., + \verb|\write|) files, + log files, and the terminal, i.e., \emph{not} translated using the + \verb|^^| notation. In \TL{}~7, this translation was + dependent on the system locale settings; now, locale settings do + not influence the \TeX{} programs' behavior. If for some reason + you need the \verb|^^| output, rename the file + \verb|texmf/web2c/cp8bit.tcx|. (Future releases will have cleaner + ways to control this.) +\item This documentation was substantially revised. +\item Finally, since the edition numbers had grown unwieldy, + the version is now simply identified by the year: \TL{} 2003. +\end{itemize*} + +\subsection{Present} +\label{tlcurrent} + +2004 saw the usual huge number of updates to packages and programs. +Here are the most notable changes, including one important backward +incompatibility: + +\begin{itemize} + +\item If you have locally-installed fonts which use their own +\filename{.map} or (much less likely) \filename{.enc} support files, you +may need to move those support files. + +\filename{.map} files are now searched for in subdirectories of +\dirname{fonts/map} only (in each \filename{texmf} tree), along the +\envname{TEXFONTMAPS} path. Similarly, \filename{.enc} files are now +searched for in subdirectories of \dirname{fonts/enc} only, along the +\envname{ENCFONTS} path. \cmdname{updmap} will attempt to warn about +problematic files. + +For methods of handling this and other information, please see +\url{http://tug.org/texlive/mapenc.html}. + +\item The \TK\ has been expanded with the addition of a \MIKTEX-based +installable \CD, for those who prefer that implementation to Web2C. +See section~\ref{sec:struct-tl} (\p.\pageref{sec:struct-tl}). + +\item Within \TL, the single large \dirname{texmf} tree of previous +releases has been replaced by three: \dirname{texmf}, +\dirname{texmf-dist}, and \dirname{texmf-doc}. See +section~\ref{sec:tld} (\p.\pageref{sec:tld}), and the \filename{README} +files for each. + +\item All \TeX-related input files are now collected in +the \dirname{tex} subdirectory of \dirname{texmf*} trees, rather than +having separate sibling directories \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex}, etc. See +\CDref{texmf-doc/doc/english/tds/tds.html\#Extensions} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Extensions}}. + +\item Helper scripts (not meant to be invoked by users) are now located +in a new \dirname{scripts} directory of \dirname{texmf*} trees, and +searched for via \verb|kpsewhich -format=texmfscripts|. So if you have +programs which call such scripts, they'll need to be adjusted. See +\CDref{texmf-doc/doc/english/tds/tds.html\#Scripts} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Scripts}}. + +\item Almost all formats leave most characters printable as +themselves via the ``translation file'' \filename{cp227.tcx}, instead of +translating them with the \verb|^^| notation. Specifically, characters +at positions 32--256, plus tab, vertical tab, and form feed are +considered printable and not translated. The exceptions are plain \TeX\ +(only 32--126 printable), \ConTeXt\ (0--255 printable), and the +\OMEGA-related formats. This default behavior is almost the same as in +\TL\,2003, but it's implemented more cleanly, with more possibilities +for customization. See \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. +(By the way, with Unicode input, \TeX\ may output partial character +sequences when showing error contexts, since it is byte-oriented.) + +\item \textsf{pdfetex} is now the default engine for all formats +except (plain) \textsf{tex} itself. (Of course it generates \acro{DVI} +when run as \textsf{latex}, etc.) This means, among other things, that +the microtypographic features of \textsf{pdftex} are available in +\LaTeX, \ConTeXt, etc., as well as the \eTeX\ features +(\OnCD{texmf-dist/doc/etex/base/}). + +It also means it's \emph{more important than ever} to use the +\pkgname{ifpdf} package (works with both plain and \LaTeX) or equivalent +code, because simply testing whether \cs{pdfoutput} or some other +primitive is defined is not a reliable way to determine if \acro{PDF} +output is being generated. We made this backward compatible as best we +could this year, but next year, \cs{pdfoutput} may be defined even when +\acro{DVI} is being written. + +\item pdf\TeX\ (\url{http://pdftex.org}) has many new features: + + \begin{itemize*} + + \item \cs{pdfmapfile} and \cs{pdfmapline} provide font map support + from within a document. + + \item Microtypographic font expansion can be used more easily.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item All parameters previously set through the special configuration + file \filename{pdftex.cfg} must now be set through primitives, + typically in \filename{pdftexconfig.tex}; \filename{pdftex.cfg} is no + longer supported. Any extant \filename{.fmt} files must be redumped + when \filename{pdftexconfig.tex} is changed. + + \item See the pdf\TeX\ manual for more: \OnCD{texmf/doc/pdftex/manual}. + + \end{itemize*} + +\item The \cs{input} primitive in \cmdname{tex} (and \cmdname{mf} and +\cmdname{mpost}) now accepts double quotes containing spaces and other +special characters. Typical examples: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +See the Web2C manual for more: \OnCD{texmf/doc/web2c}. + +\item enc\TeX\ support is now included within Web2C and consequently all +\TeX\ programs, via the \optname{-enc} option\Dash \emph{only when +formats are built}. enc\TeX\ supports general re-encoding of input and +output, enabling full support of Unicode (in \acro{UTF}-8). See +\OnCD{texmf-dist/doc/generic/enctex/} and +\url{http://www.olsak.net/enctex.html}. + +\item Aleph, a new engine combining \eTeX\ and \OMEGA, is available. +A little information is available in \OnCD{texmf-dist/doc/aleph/base} +and \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. The +\LaTeX-based format for Aleph is named \textsf{lamed}. + +\item The latest \LaTeX\ release has a new version of the +\acro{LPPL}\Dash now officially a Debian-approved license. Assorted +other updates, see the \filename{ltnews} files in +\OnCD{texmf-dist/doc/latex/base}. + +\item \cmdname{dvipng}, a new program for converting \acro{DVI} to +\acro{PNG} image files, is included. See \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item We reduced the \pkgname{cbgreek} package to a ``medium'' sized set +of fonts, with the assent and advice of the author (Claudio Beccari). +The excised fonts are the invisible, outline, and transparency ones, +which are relatively rarely used, and we needed the space. The full set +is of course available from \acro{CTAN} +(\url{http://www.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} has been removed; just use \cmdname{xdvi}. + +\item The \cmdname{ini} and \cmdname{vir} commands (links) for +\cmdname{tex}, \cmdname{mf}, and \cmdname{mpost} are no longer created, +such as \cmdname{initex}. The \cmdname{ini} functionality has been +available through the command-line option \optname{-ini} for years now. + +\item \textsf{i386-openbsd} platform support was removed. Since the +\pkgname{tetex} package in the \acro{BSD} Ports system is available, and +\acro{GNU/}Linux and Free\acro{BSD} binaries were available, it seemed +volunteer time could be better spent elsewhere. + +\item On \textsf{sparc-solaris} (at least), you may have to set the +\envname{LD\_LIBRARY\_PATH} environment variable to run the +\pkgname{t1utils} programs. This is because they are compiled with C++, +and there is no standard location for the runtime libraries. (This is +not new in 2004, but wasn't previously documented.) Similarly, on +\textsf{mips-irix}, the \acro{MIPS}pro 7.4 runtimes are required. + +\end{itemize} + + +\subsection{Future} + +\emph{\TL{} is not perfect!} (And never will be.) We intend to +continue to release new versions yearly, and would like to provide more +help material, more utilities, more installation programs, and (of +course) an ever-improved and checked tree of macros and fonts. This work +is all done by hard-pressed volunteers in their limited spare time, and +a great deal remains to be done. If you can help, don't hesitate to put +your name forward! + +Please send corrections, suggestions, and offers of help to:\hfill\null +\begin{quote} +Sebastian Rahtz \ / \ 7 Stratfield Road \ / \ Oxford OX2 7BG \ / \ UK \\ +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Happy \TeX ing!} + +\end{multicols} +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2005.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2005.tex new file mode 100644 index 00000000000..5b525535c63 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2005.tex @@ -0,0 +1,3174 @@ +% $Id: live.tex 1513 2006-02-13 00:22:35Z karl $ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +\documentclass{article} +\let\tldocenglish=1 % for live4ht.cfg +\usepackage{tex-live} +\begin{document} + +\title{% + {\huge \textit{The \protect\TL{} Guide}\\\strut} + {\LARGE \textsf{\TK{} 2005}} +} + +\author{Sebastian Rahtz \& Karl Berry, editors \\[3mm] + \url{http://tug.org/texlive/} + } + +\date{October 2005} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +\listoftables +\end{multicols} + +\section{Introduction} +\label{sec:intro} + +This document describes the main features of the \TL{} software +distribution\Dash \TeX{} and friends for \acro{GNU}/Linux and other Unix +flavors, \MacOSX, and (32-bit) Windows systems. (Warning: it is not +especially useful for older Mac or \acro{MS-DOS} systems.) + +\TL{} includes executables for \TeX{}, \LaTeXe{}, \ConTeXt, \MF, \MP, +\BibTeX{} and many other programs; an extensive collection of macros, +fonts and documentation; and support for typesetting in many different +scripts from around the world. It is part of the even larger \TK{} +(briefly described below in section~\ref{sec:struct-tl}, +\p.\pageref{sec:struct-tl}). Both are cooperative efforts by the \TeX\ +user groups. + +For newer versions of the packages included here, please check +\acro{CTAN}: \url{http://www.ctan.org}. + +For a brief summary of the major changes in this edition of \TL{}, +see the end of the document, section~\ref{sec:history} +(\p.\pageref{sec:history}). + + +\subsection{Basic usage of \protect\TL{}} +\label{sec:basic} + +You can use \TL{} in three principal ways: + +\begin{enumerate} + +\item You can run \TL{} directly from the \pkgname{live} \DVD +(see section~\ref{sec:multiple-dist}, \p.\pageref{sec:multiple-dist}). +This takes almost no disk space, and gives you immediate access to +everything in \TL{}. Of course performance will be worse than running +on local disk, but you may well find it useful. + +\item You can install all or part of \TL{} to a local disk, from either +the \DVD\ or the \pkgname{inst} \acro{CD}. This is the most common use +of \TL. You will need (approximately) 100 megabytes for the most +minimal system, and upwards of 1.3 gigabytes for a full system. + +\item You can integrate a particular package or collection into your +existing \TeX{} system, either a \TL{} system you installed +earlier, or a different system. + +\end{enumerate} + +\noindent All of these are described in detail in the \acro{OS}-specific +installation sections following, but here is a quick start: + +\begin{itemize*} + +\item The main installation script for Unix and \MacOSX{} is +\texttt{install-tl.sh}. + +\item The single package installation script is \texttt{install-pkg.sh}. + +\item The installation program for Windows is \texttt{tlpmgui.exe}. +It can be used also for adding or removing the packages. +See section~\ref{sec:win-install} below for more information. + +\end{itemize*} + + +\subsection{Getting help} +\label{sec:help} + +The \TeX{} community is both active and friendly, and virtually all +serious questions end up getting answered. However, the support is +informal, done by volunteers and casual readers, so it's especially +important that you do your homework before asking. (If you prefer +guaranteed commercial support, you can forego \TL{} completely and +purchase a vendor's system; \url{http://tug.org/interest.html#vendors} +has a list.) + +Here is a list of resources, approximately in the order we recommend +using them: + +\begin{description} +\item [Getting Started] If you are new to \TeX, the web page +\url{http://tug.org/begin.html} gives a brief introduction to the system. + +\item [\TeX{} \acro{FAQ}] The \TeX{} \acro{FAQ} is a huge compendium of +answers to all sorts of questions, from the most basic to the most +arcane. It is included on \TL{} in \OnCD{texmf-doc/doc/english/FAQ-en}, and is +available on the Internet through \url{http://www.tex.ac.uk/faq}. +Please check here first. + +\item [\TeX{} Catalogue] If you are looking for a specific package, +font, program, etc., the \TeX{} Catalogue is the place to look. It is a +huge collection of all \TeX{}-related items. See +\OnCD{texmf-doc/doc/english/catalogue}, or +\url{http://www.ctan.org/tex-archive/help/Catalogue}. + +\item [\TeX{} Web Resources] The web page +\url{http://tug.org/interest.html} has many \TeX{}-related links, in +particular for numerous books, manuals, and articles on all aspects of +the system. + +\item [support archives] The two principal support forums are the +Usenet newsgroup \url{news:comp.text.tex} and the mailing list +\email{texhax@tug.org}. Their archives have years of past +questions and answers for your searching pleasure, via +\url{http://groups.google.com/groups?group=comp.text.tex} and +\url{http://tug.org/mail-archives/texhax}, respectively. And a general web +search, for example on \url{http://google.com}, never hurts. + +\item [asking questions] If you cannot find an answer, you can post to +\dirname{comp.text.tex} through Google or your newsreader, or to +\email{texhax@tug.org} through email. But before you post, +\emph{please} read this \acro{FAQ} entry on asking questions in such a +way that you're most likely to get an answer: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + +\item [\TL{} support] If you want to report a bug or have +suggestions or comments on the \TL{} distribution, installation, or +documentation, the mailing list is \email{tex-live@tug.org}. However, +if your question is about how to use a particular program included in +\TL{}, you are better off writing to that program's maintainer or +mailing list. + +\end{description} + +The other side of the coin is helping others who have questions. Both +\dirname{comp.text.tex} and \code{texhax} are open to anyone, so feel +free to join, start reading, and help out where you can. Welcome to +\TeX{}! + + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{Structure of \protect\TeX\protect\ Live} +\label{sec:struct-tl} + +This section describes the structure and contents of \TL{} and the +\TK{} of which it is a part. + +\subsection{Multiple distributions: \protect\pkgname{live}, + \protect\pkgname{inst}, + \protect\pkgname{protext}} +\label{sec:multiple-dist} + +Space limitations of \acro{CD-ROM} format have forced us to divide +\TK{} into several distributions, as follows. + +\begin{description} + +\item [live] A complete system on \acro{DVD}; it is too large +for \acro{CD}. It can be run live or installed to disk. It also +includes a snapshot of the \CTAN{} repository, the \pkgname{protext} +distribution for Windows and the Mac\TeX\ distribution for \MacOSX, entirely +independent of \TL{}, as well as assorted other packages in a +\texttt{texmf-extra} directory. + +\CTAN{}, \pkgname{protext}, Mac\TeX, and \texttt{texmf-extra} do not follow +the same copying conditions as \TL{}, so be careful when redistributing or +modifying. + +\item [inst(allable)] A complete system on \CD; in order to make this fit, +the packages and programs are compressed. Therefore, it is not possible +to run \TeX\ directly from the installable \CD, you have to install it +to disk (hence its name). Installation is described in subsequent sections. + +\item [protext] An enhancement of the \MIKTEX\ distribution for Windows, +\ProTeXt\ adds a few extra tools to \MIKTEX, and simplifies +installation. It is entirely independent of \TL{}, and has its own +installation instructions. It can be run live, or installed to disk. +The \ProTeXt\ home page is \url{http://tug.org/protext}. + +\ProTeXt\ is provided as both the top level of the \pkgname{live} \DVD\ +and on its own \CD\ (for those who cannot use the \DVD). + +\end{description} + +\noindent You can tell which type of distribution you're in by looking +for a \texttt{00\var{type}.TL} file at the top of the \TL{} directory. +This file also contains the \TL{} release date. + +Naturally, each user group chooses what to distribute, at its own +discretion. (\acro{TUG} is sending all three discs above to all of its +members.) + + +\subsection{Top level directories} +\label{sec:tld} + +Here is a brief listing and description of the top level directories in +the \TL{} distribution. On the \pkgname{live} \DVD, the entire \TL{} +hierarchy is in a subdirectory \dirname{texlive2005}, not at the top +level of the disc. + +\smallskip +\begingroup + \renewcommand{\arraystretch}{1.3} % open up interrow spacing +\begin{tabular}{>{\ttfamily}lp{.78\hsize}} +bin & The \TeX{} system programs, arranged by platform. \\ +source & The source of all programs, including the main \Webc{} + \TeX{} and \MF{} distributions. These are stored in a + \cmdname{bzip2}-compressed tar archive. \\ +support & Assorted auxiliary packages and programs. These are + \emph{not} installed automatically. This includes + assorted editors and \TeX\ shells. \\ +texmf & Tree for the programs, along with their support files and + documentation. Does not include \TeX\ formats and packages. + (\texttt{TEXMFMAIN} in the next section.) \\ +texmf-dist & The main tree of formats and packages. + (\texttt{TEXMFDIST} in the next section.) \\ +texmf-doc & Tree for self-contained pure documentation, arranged by + language. \\ +texmf-var & Tree for files automatically generated and stored. + (\texttt{TEXMFSYSVAR} in the next section.) \\ +xemtex & Tree for supporting programs used only in Windows. + These programs generally come pre-installed on Unix systems, or are + at least easy to compile. \\ +\end{tabular} +\endgroup + +\smallskip + +In addition to the directories above, the installation scripts and +\filename{README} files (in various languages) are at the top level of +the distribution. + +The \dirname{texmf-doc} directory contains only documentation, but +it does not contain all the documentation. The documentation for the +programs (manuals, man pages, Info files) is in \dirname{texmf/doc}, +since the programs are in \dirname{texmf}. Similarly, the documentation +for \TeX\ packages and formats is in \dirname{texmf-dist/doc}. You can +use the \cmdname{texdoc} or \cmdname{texdoctk} programs to find any +documentation wherever it's located. The comprehensive links in the +top-level file \OnCD{doc.html} may also be helpful. + + +\subsection{Overview of the predefined texmf trees} +\label{sec:texmftrees} + +This section lists all predefined variables specifying texmf trees used +by the system, and their intended purpose. The command \texttt{texconfig +conf} shows you the values of these variables, so that you can easily +find out how they map to directory names in your installation. + +\begin{ttdescription} +\item [TEXMFMAIN] The tree which holds vital parts of the system + such as helper scripts (e.g., \verb+web2c/mktexdir+), pool files and + other support files. +\item [TEXMFDIST] The tree which holds the main set of macro packages, + fonts, etc., as originally distributed. +\item [TEXMFLOCAL] The tree which administrators can use for system-wide + installation of additional or updated macros, fonts, etc. +\item [TEXMFHOME] The tree which users can use for their own individual + installations of additional or updated macros, fonts, etc. + The expansion of this variable depends on \verb+$HOME+ by default, % $ + which dynamically adjusts for each user to an individual + directory. +\item [TEXMFCONFIG] The tree used by te\TeX's utilities + \verb+texconfig+, \verb+updmap+, and \verb+fmtutil+ to store modified + configuration data. Under \verb+$HOME+ by default. %$ +\item [TEXMFSYSCONFIG] The tree used by te\TeX's utilities + \verb+texconfig-sys+, \verb+updmap-sys+, and \verb+fmtutil-sys+ to + store modified configuration data. +\item [TEXMFVAR] The tree used by \verb+texconfig+, \verb+updmap+ and + \verb+fmtutil+ to store (cached) runtime data such as format files and + generated map files. Under \verb+$HOME+ by default. %$ +\item [TEXMFSYSVAR] The tree used by \verb+texconfig-sys+, + \verb+updmap-sys+ and \verb+fmtutil-sys+ to store (cached) runtime + data such as format files and generated map files. +\end{ttdescription} + +For more discussion of \texttt{texconfig} and related utilities, please +see section~\ref{sec:texconfig}, \p.\pageref{sec:texconfig}. + + +\subsection{Extensions to \protect\TeX} +\label{sec:tex-extensions} + +\TL{} contains several extended versions of \TeX: + +\begin{description} + +\item [\eTeX] adds a small but powerful set of new primitives +\label{text:etex} (related to macro expansion, character scanning, +classes of marks, additional debugging features, and more) and the +\TeXXeT{} extensions for bidirectional typesetting. In default mode, +\eTeX{} is 100\% compatible with ordinary \TeX. See +\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] writes Acrobat \acro{PDF} format as well as \dvi{}. The +\LaTeX{} \pkgname{hyperref} package has an option `\optname{pdftex}' +which turns on all the program features. See +\OnCD{texmf/doc/pdftex/manual/} for the manual, and +\OnCD{texmf/doc/pdftex/manual/samplepdf/samplepdf.tex}. + +\item [pdfe\TeX] combines the pdf\TeX\ and \eTeX\ extensions. This is +the default program for all formats except plain \TeX. +See above for documentation. + +\item [\OMEGA\ (Omega)] is based on Unicode (16-bit characters), thus +supports working with almost all the world's scripts simultaneously. It +also supports so-called `\OMEGA{} Translation Processes' (\acro{OTP}s), +for performing complex transformations on arbitrary input. See +\OnCD{texmf-dist/doc/omega/base/doc-1.8.tex} (not completely up-to-date). + +\item [Aleph] combines the \OMEGA\ and \eTeX\ extensions. +See \OnCD{texmf-dist/doc/aleph/base} for some minimal documentation. + +\end{description} + + +\subsection{Other notable programs in \protect\TL} + +Here are a few other commonly-used programs included in \TL{}: + +\begin{cmddescription} + +\item [bibtex] bibliography support. + +\item [makeindex] index support. + +\item [dvips] convert \dvi{} to \PS{}. + +\item [xdvi] \dvi{} previewer for the X Window System. + +\item [dvilj] \dvi{} drive for the HP LaserJet family. + +\item [dv2dt, dt2dv] convert \dvi{} to/from plain text. + +\item [dviconcat, dviselect] cut and paste pages +from \dvi{} files. + +\item [dvipdfmx] convert \dvi{} to \acro{PDF}, an alternative approach +to pdf\TeX\ (mentioned above). See the \pkgname{ps4pdf} and +\pkgname{pdftricks} packages for still more alternatives. + +\item [psselect, psnup, \ldots] \PS{} +utilities. + +\item [lacheck] \LaTeX{} syntax checker. + +\item [texexec] Con\TeX{}t and \acro{PDF} processor. + +\item [tex4ht] \TeX{} to \acro{HTML} converter. + +\end{cmddescription} + + +\section{Unix installation} +\label{sec:unix-install} + +As introduced in section~\ref{sec:basic} (\p.\pageref{sec:basic}), +\TL{} has three principal uses: + +\begin{enumerate} +\item Run directly from media. +\item Install to disk. +\item Integrate a particular package or collection into your existing +\TeX{} installation. +\end{enumerate} + +\noindent The following sections describes the Unix-specific procedures +for each of these. + +\ifSingleColumn \begin{figure}[ht]\noindent \fi +\begin{warningbox} +\textbf{Warning: } The \TK{} \CD{}s and \DVD{} are in ISO 9660 (High Sierra) +format, \emph{with} Rock Ridge (and Joliet, for Windows) +extensions. Therefore, in order to take full advantage of the \TK{} +under Unix, your system needs to be able to use the Rock Ridge +extensions. Please consult the documentation for your \cmdname{mount} +command to see how to do this. If you have several different machines +on a local network, you may be able to mount the discs on one which +does support Rock Ridge, and use this with the others. + +\leavevmode\quad Modern systems should be able to use the discs without +problems. If troubles, let us know. The discussion below assumes you +have been able to mount the \CD{}s with full Rock Ridge compatibility. +\end{warningbox} +\ifSingleColumn\end{figure}\fi + + +% +\subsection{Running \protect\TL{} directly from media (Unix)} + +\def\runlive{% text repeated in windows section +It is possible to use the \TeX{} system directly from the \pkgname{live} +\DVD{}, without installing the distribution to disk. (Thus the name +\TeX\ `Live', in fact.) It is \emph{not} possible to run \TeX{} +directly from the other \CD{}s (see section~\ref{sec:multiple-dist}, +\p.\pageref{sec:multiple-dist}). +} + +\def\startinst{% repeated in other subsections +To start, you mount the \CD{} or \DVD{}, with Rock Ridge extensions +enabled. The exact command to do this varies from system to system; the +following works under Linux, except the name of the device +(\filename{/dev/cdrom}, here) may vary. (All our examples will use +\texttt{>} as the shell prompt; user input is +\Ucom{\texttt{underlined}}.) +\begin{alltt} +> \Ucom{mount -t iso9660 /dev/cdrom /mnt/cdrom} +\end{alltt} + +\noindent Change the current directory to the mount point: +\begin{alltt} +> \Ucom{cd /mnt/cdrom} +\end{alltt} + +\noindent Under \MacOSX, the directory is typically under +\dirname{/Volumes}, and the media will be mounted automatically. +} + +\def\installtlsh{ +Run the installation script \filename{install-tl.sh}: +\begin{alltt} +> \Ucom{sh install-tl.sh}\\ +Welcome to TeX Live... +\end{alltt} + +\noindent After various greeting messages and a list of the main menu +options, the installation will ask you to enter a command. Do this by +typing the desired character and hitting return; don't type the angle +brackets shown. Either uppercase or lowercase is ok; we'll use +lowercase in our examples. +} + +\runlive +\startinst +\installtlsh + +For running live, our first command will be \Ucom{d} and then the +subcommand \Ucom{1} to set directories. Even in this case, we must +choose a directory on the local disk to place files that the \TeX{} +system itself generates, such as fonts and formats, and also to provide +a place for updated configuration files, if need be. + +We'll use \dirname{/opt/texlive2005} in this example. It's good to +include the year in the name, as these generated files are not +compatible from release to release. (If the default value of +\dirname{/usr/local/texlive/2005} works for you, then you can skip this +step.) + +\begin{alltt} +Enter command: \Ucom{d} +Current directories setup: +<1> TEXDIR: /usr/local/texlive/2005 +... +Enter command: \Ucom{1} +New value for TEXDIR [/usr/local/texlive/TeX]: \Ucom{/opt/texlive2005} +... +Enter command: \Ucom{r} +\end{alltt} + +\noindent Back at the main menu, our second and last command is +\Ucom{r}, to set up for running live off the media without installing +to disk: +\begin{alltt} +Enter command: \Ucom{r} +Preparing destination directories... +... +Welcome to TeX Live! +> +\end{alltt} + +\noindent And we are back at the system prompt, as shown. + +Next, it is necessary to alter two environment variables: +\envname{PATH}, to an architecture-dependent value (so that we can run +the programs), and \envname{TEXMFSYSVAR}, to the value specified above. +See table~\ref{tab:archlist} for a list of the architecture names for +the different systems. + + +\def\textruntexconfig{% +After the main installation has completed, and environment variables +have been set, the last step is to run \cmdname{texconfig} or +\cmdname{texconfig-sys} to customize your installation to your needs. +This is explained in section~\ref{sec:texconfig}, +\p.\pageref{sec:texconfig}. +} +\textruntexconfig + +\begin{table*}[ht] +\caption[Supported system architectures.]{Supported system +architectures.} +\label{tab:archlist} +\begin{tabular}{>{\ttfamily}ll} +alpha-linux & HP Alpha GNU/Linux \\ +%alphaev5-osf4.0d & HP Alphaev5 OSF \\ +%hppa2.0-hpux10.20 & HP9000 HPUX 10.20 \\ +i386-darwin & Intel x86 \MacOSX \\ +i386-freebsd & Intel x86 FreeBSD \\ +i386-linux & Intel x86 GNU/Linux \\ +%i386-openbsd3.3 & Intel x86 OpenBSD \\ +%i386-solaris2.8 & Intel x86 Solaris \\ +mips-irix & SGI IRIX \\ +powerpc-aix & IBM RS/6000 AIX \\ +powerpc-darwin & PowerPC \MacOSX \\ +sparc-linux & Sun Sparc GNU/Linux \\ +sparc-solaris & Sun Sparc Solaris \\ +win32 & Windows (32-bit) \\ +x86\_64-linux & Intel x86 64-bit GNU/Linux \\ +\hline +\end{tabular} +\end{table*} + +\label{text:path} +The syntax for setting the environment variables, and the initialization +file to put them in, depends on the shell you use. If you use a +Bourne-compatible shell (\cmdname{sh}, \cmdname{bash}, \cmdname{ksh}, et +al.), put the following into your \filename{$HOME/.profile} file: +\begin{alltt} +PATH=/mnt/cdrom/bin/\var{archname}:$PATH; export PATH +TEXMFSYSVAR=/opt/texlive2005/texmf-var; export TEXMFVAR +\end{alltt} + +\noindent For C shell-compatible shells (\cmdname{csh}, \cmdname{tcsh}), +put the following into your \filename{$HOME/.cshrc} file: +\begin{alltt} +setenv PATH /mnt/cdrom/bin/\var{archname}:$PATH +setenv TEXMFSYSVAR /opt/texlive2005/texmf-var +\end{alltt} + +\noindent Then log out, log back in, and test your installation +(see section~\ref{sec:test-install}, \p.\pageref{sec:test-install}). + +\def\textifindoubt{% +If in doubt, please ask any local system gurus to help you with +problems; for example, the way to mount the \TL{} media, which +directory or directories to use, and precise details of the changes to +your personal initialization files can and do vary from site to site. +} +\textifindoubt + + +% +\subsection{Installing \protect\TeX\protect\ Live to disk} +\label{sec:unix-install-disk} + +It is possible, indeed typical, to install the \TL{} distribution to +hard disk. This can be done from either the \pkgname{live} or +\pkgname{inst} distributions. (See section~\ref{sec:multiple-dist}, +\p.\pageref{sec:multiple-dist}, for an explanation of the different +distributions.) + +\startinst +\installtlsh + +Table~\ref{tab:main-menu-options} briefly lists the options in the main +menu. The order in which you select the options makes little +difference, except that \Ucom{i} must be last. It's reasonable to go +through them in the order presented here. + +% apparently here.sty [H] doesn't support table*. +\begin{table}[H] +\caption{Main menu options for the installation.} +\label{tab:main-menu-options} +\begin{tabular}{>{\ttfamily}ll} +p & The platform you are running on.\\ +b & The architectures for which to install binaries.\\ +s & The base installation scheme to use (minimal, recommended, + full, etc.)\\ +c & Override the base scheme for individual collections.\\ +l & Override for language collections.\\ +d & Directories in which to install.\\ +o & Other options.\\ +i & Perform the installation.\\ +\end{tabular} +\end{table} + +Here are further details on each option. + +\textbf{\optname{p} -- Current platform.} Since the installation script +automatically guesses which platform you're running on, it is usually +unnecessary to use this option. It's there in case you need to override +the automatic detection. + +\textbf{\optname{b} -- Binary architectures.} By default, only the +binaries for your current platform will be installed. From this menu, +you can select installation of binaries for other architectures as well +(or omit installing the current platform). This can be useful if you are +sharing a \TeX\ tree across a network of heterogenous machines. For a +list of the supported architectures, see table~\ref{tab:archlist}, +\p.\pageref{tab:archlist}. + +\textbf{\optname{s} -- Base installation scheme.} From this menu, you +can choose an overall set of package collections, called a ``scheme''. +The default \optname{full} scheme installs everything available, but you +can also choose the \optname{basic} scheme for a minimal system, or +\optname{medium} to get something in between. There are also specific +sets for Omega and \acro{XML}. + +\textbf{\optname{c} -- Individual collections.} From this menu, you can +override the scheme's set of collections to install. Collections are +one level more detailed than schemes\Dash collections consist of one or +more packages, where packages (the lowest level grouping in \TL) contain +the actual \TeX\ macro files, font families, and so on. In this menu, +selection letters are case-sensitive. + +\textbf{\optname{l} -- Language collections}. This menu has the same +basic purpose as \Ucom{c}, to override the collection set in the chosen +scheme. In this case, the collections are specifically for different +languages. Selection letters are case-sensitive here too. Here is a +list of the language collections in \TL: + +% xx really should generate list from texmf/tpm/collection/tex-lang* +% a la install-tl.sh. +\begin{tabbing} +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \kill +(some) African scripts \> +Arabic \> +Armenian \> +Chinese\,Japanese\,Korean \\ +Croatian \> +Cyrillic \> +Czech/Slovak \> +Danish \\ +Dutch \> +Finnish \> +French \> +German \\ +Greek \> +Hebrew \> +Hungarian \> +Indic \\ +Italian \> +Latin \> +Manju \> +Mongolian \\ +Norwegian \> +Polish \> +Portuguese \> +Spanish \\ +Swedish \> +Tibetan \> +\acro{UK} English \> +Vietnamese \\ +\end{tabbing} + +\noindent Language collections typically include fonts, macros, +hyphenation patterns, and other support files. (For instance, +\pkgname{frenchle.sty} is installed if you select the \optname{French} +collection.) In addition, installing a language collection will alter +the \filename{language.dat} configuration file controlling which +hyphenation patterns are loaded. + +\textbf{\optname{d} -- Installation directories}. Three directories can +be changed here: +\label{text:instdir} + +\begin{ttdescription} +\item [TEXDIR] The top-level directory under which +everything else will be installed. The default value is +\dirname{/usr/local/texlive/2005}, and is often changed. We recommend +including the year in the name, to keep different releases of \TL{} +separate. (You may wish to make a version-independent name such +\dirname{/usr/local/texlive} via a symbolic link, which you can then +update after testing the new release.) + +Under \MacOSX, the usual frontends look for \TeX{} in +\dirname{/usr/local/teTeX}, so you may wish to install \TL{} there. + +\item [TEXMFLOCAL] This tree is where the \TeX{} system (not as part of +the initial installation, but rather as time goes by) puts +non-version-specific files, primarily fonts. The default value is +\dirname{/usr/local/texlive/texmf-local}, independent of the current +\TL{} release, because it's also the recommended location to put any +local packages or configuration settings. + +\item [TEXMFSYSVAR] This tree is where \cmdname{texconfig-sys} puts +files that \emph{are} version-specific. The default value is +\dirname{TEXDIR/texmf-var}, and there's generally no reason to change +it. There is also \envname{TEXMFSYSCONFIG}, which is where +\cmdname{texconfig} looks for modified configuration data. See +section~\ref{sec:texconfig}, \p.\pageref{sec:texconfig} for more +information. + +\end{ttdescription} + +\textbf{\optname{o} -- Other options.} From this menu, you can select +the following general options: + +\begin{ttdescription} +\item [a] Specify an alternate directory for generated fonts. +The default is to use the \envname{TEXMFVAR} tree, as explained above. +Setting this is useful if you plan to mount the main tree read-only, and +therefore you need another location (perhaps host-specific) for +dynamically created fonts. + +\item [l] Create symbolic links for the binaries, man pages, +and\slash or \acro{GNU} Info files in other locations. For example, you may +wish to make the man pages available under \dirname{/usr/local/man} and +the Info files available under \dirname{/usr/local/info}. (Of course +you need appropriate privileges to write in the specified directories.) + +It is not advisable to overwrite a \TeX\ system that came with your +system with this option. It's intended primarily for creating the links +in standard directories that are known to users, such as +\dirname{/usr/local/bin}, which don't already contain any \TeX\ files. + +\item [d] Skip installation of the font/macro documentation tree. +This is useful if you need to save space, or if you've previously +installed the documentation elsewhere. + +\item [s] Skip installation of the main font/macro source +tree. This is useful if you are arranging to share that tree between +machines and\slash or architectures in some other way, such as \acro{NFS}. + +\end{ttdescription} + +\textbf{i -- Perform installation.} When you're satisfied with your +configuration options, enter \Ucom{i} to actually do the installation +from the media to your chosen locations. + +% text is similar to above, but no TEXMFSYSVAR, so we have to write out. +After the installation completes, your next step is to include the +architecture-specific subdirectory of \dirname{TEXDIR/bin} in your +\envname{PATH}, so the newly-installed programs can be found. The +architecture names are listed in table~\ref{tab:archlist}, +\p.\pageref{tab:archlist}, or you can simply list the directory +\dirname{TEXDIR/bin}. + +The syntax for doing this, and the initialization file to use, depends +on your shell. If you use a Bourne-compatible shell (\cmdname{sh}, +\cmdname{bash}, \cmdname{ksh}, et al.), put the following into your +\filename{$HOME/.profile} file: + +\begin{alltt} +PATH=/usr/local/texlive/2005/bin/\var{archname}:$PATH; export PATH +\end{alltt} + +\noindent For C shell-compatible shells (\cmdname{csh}, \cmdname{tcsh}), +put the following into your \filename{$HOME/.cshrc} file: +\begin{alltt} +setenv PATH /usr/local/texlive/2005/bin/\var{archname}:$PATH +\end{alltt} + +\textruntexconfig + +Here is a minimal annotated example which accepts the default +directories and installs binaries for the current system only. Thus, +only one command is needed, \Ucom{i} for install. The \texttt{>} is the +shell prompt as usual. + +\begin{alltt} +> \Ucom{sh install-tl.sh} +\Ucom{i} # perform installation +> \Ucom{texconfig} ... # see section \ref{sec:texconfig} +# New PATH element, with Linux as the example: +> \Ucom{PATH=/usr/local/texlive/2005/bin/i386-linux:$PATH; export PATH} +\end{alltt} + +\textifindoubt + + +% +\subsection{Installing individual packages to disk} + +You can add individual packages or collections from the current +distribution to an existing non-\TL{} setup, or an earlier +\TL{} installation. + +\startinst + +Run the installation script \filename{install-pkg.sh} (not +\filename{install-tl.sh}, which is intended for complete installations +only): +\begin{alltt} +> \Ucom{sh install-pkg.sh \var{options}} +\end{alltt} + +The first set of options controls what gets read: + +\begin{ttdescription} +\item [-{}-package=\var{pkgname}] The individual package to work on. + +\item [-{}-collection=\var{colname}] The individual collection to work on. + +\item [-{}-nodoc] Exclude documentation files from the operation. + +\item [-{}-nosrc] Exclude source files from the operation. + +\item [-{}-cddir=\var{dir}] Source directory to read from; defaults +to the current directory. If you followed the instructions above, that +will be the distribution directory, and won't need to be changed. + +\item [-{}-listdir=\var{dir}] The so-called `lists' directory within +\var{cddir} from which to read the package information. The only +reason to change the default is if you're making changes to \TL{} +yourself. + +\end{ttdescription} + +What actually happens is controlled by the following options. If +neither of these are specified, the default action is to install the +selected files. The main destination tree is found by expanding +\envname{\$TEXMFMAIN} with \cmdname{kpsewhich}. You can override it by +setting either the environment variable \envname{TEXMFMAIN} or +\envname{TEXMF}. + +\begin{ttdescription} +\item [-{}-listonly] List the files that would be installed, but don't +actually install anything. + +\item [-{}-archive=\var{tarfile}] Instead of installing the files into +the \TeX{} system, make a \cmdname{tar} archive. + +\end{ttdescription} + +Additional options: + +\begin{ttdescription} + +\item [-{}-config] After installation, run \code{texconfig init}. + +\item [-{}-nohash] After installation, don't run \cmdname{mktexlsr} to +rebuild the filename database. + +\item [-{}-verbose] Give more information as the script runs. + +\end{ttdescription} + +Here are some usage examples: + +\begin{enumerate} + +\item To see the files in the package \pkgname{fancyhdr} without +installing it: + +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=fancyhdr --listonly} +\else> \Ucom{sh install-pkg.sh --package=fancyhdr \bs} +> \Ucom{--listonly} +\fi{} +texmf/doc/latex/fancyhdr/README +texmf/doc/latex/fancyhdr/fancyhdr.pdf +... +\end{alltt} + +\item Install the \LaTeX{} package \pkgname{natbib}: +\begin{alltt} +> \Ucom{sh install-pkg.sh --package=natbib} +\end{alltt} + +\item Install the \LaTeX{} package \pkgname{alg} without source files or +documentation: +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=alg --nosrc --nodoc} +\else> \Ucom{sh install-pkg.sh -{}-package=alg \bs} +> \Ucom{-{}-nosrc -{}-nodoc} +\fi\end{alltt} + +\item Install all the packages in the collection of additional +plain \TeX\ macros: +\begin{alltt} +> \Ucom{sh install-pkg.sh --collection=tex-plainextra} +\end{alltt} + +\item Write all files in the \pkgname{pstricks} package to a +\cmdname{tar} file in \path|/tmp|: +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=pstricks --archive=/tmp/pstricks.tar} +\else +> \Ucom{sh install-pkg.sh -{}-package=pstricks \bs} +> \Ucom{-{}-archive=/tmp/pstricks.tar} +\fi\end{alltt} + +\end{enumerate} + +\textifindoubt + + +% +\section{Post-installation} +\label{sec:postinstall} + +After the main installation is done, for any operating system, the +remaining steps are to configure the system for your local needs, and +perform some basic tests. + +Another sort of post-installation is to acquire packages, fonts, or +programs that were not included in \TL{}. The basic idea is to +install such additions in the \envname{TEXMFLOCAL} tree (if you +installed to disk), or \envname{TEXMFSYSVAR} (if you are running live). +See the ``Installation directories'' option on \p.\pageref{text:instdir}. + +Unfortunately, the details can and do vary widely, and so we do not attempt to +address them here. Here are some external links to descriptions: +\begin{itemize*} +\item +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=instpackages} +\item +\url{http://www.ctan.org/installationadvice} +\item +\url{http://www.ctan.org/tex-archive/info/beginlatex/html/chapter5.html#pkginst} +\item +\url{http://www.ctan.org/tex-archive/info/Type1fonts} for +installation information for fonts in particular. +\end{itemize*} + + +\subsection{The \protect\cmdname{texconfig} program} +\label{sec:texconfig} + +At any time after installation, you can and should use the program +\cmdname{texconfig} to configure the system to fit your local needs. It +is installed in the architecture-specific subdirectory +\texttt{TEXDIR/bin/\var{arch}} along with everything else. + +If you run it without arguments, it will enter full-screen mode and +allow you to view and change options interactively. + +You can also run it with various command-line options. Here are some of +the most common (\TL{} is configured for the A4 paper size by default): + +\begin{ttdescription} + +\item [texconfig paper letter] Set default paper size for +various programs and drivers (\cmdname{pdftex}, \cmdname{dvips}, +\cmdname{dvipdfm}, \cmdname{xdvi}) to be \acro{US} letter. The other +allowable size is \optname{a4}, which is the default. + +\item [texconfig rehash] Update all the \TeX{} ``filename databases'', +after adding or removing files. + +\item [texconfig faq] Show the \teTeX{} \acro{FAQ}. +(See also the main \TeX{} \acro{FAQ} in \OnCD{texmf-doc/doc/english/FAQ-en}.) + +\item [texconfig help] Output help information for \cmdname{texconfig}. + +\end{ttdescription} + +Of course, \cmdname{texconfig} can only support changing a few of the +many options and configuration parameters in a \TeX{} system. The main +configuration file for the base \Webc{} programs is named +\filename{texmf.cnf}. You can find its location by running +\samp{kpsewhich texmf.cnf}; it contains many comments explaining the +default settings and useful alternatives. + +As of 2005, \cmdname{texconfig} alters files in a user-specific +directory, namely \dirname{$HOME/.texlive2005}. If you install \TeX\ +just for yourself, that is unlikely to make a difference. But if you +install \TeX\ on a multi-user system, you will want to change the +configuration for the whole system. In this case, run +\cmdname{texconfig-sys} instead of \cmdname{texconfig}. + +Likewise, the \cmdname{updmap} and \cmdname{fmtutil} scripts were +changed, to work under \dirname{$HOME/.texlive2005}. To alter system +directories, use \cmdname{updmap-sys} and \cmdname{fmtutil-sys}. + +In particular, for multi-user systems, you will probably want to +pregenerate the standard formats with \texttt{fmtutil-sys --missing}. +Otherwise, each user will end up with their own formats. + +Also, if you have a personally-modified copy of \filename{fmtutil.cnf} +or \filename{updmap.cfg}, instead of using the ones generated by +installation, they must be installed in the tree referenced by the +variable \envname{TEXMFSYSCONFIG}. + +The variables specifying the directories altered by these commands are +listed in section~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. +You can see the actual directories by running \texttt{texconfig conf}, +and you can change them by editing \filename{texmf.cnf}. + + +\subsection{Testing the installation} +\label{sec:test-install} + +After installing \TL{} as best you can, you naturally want to test +it out, so you can start creating beautiful documents and\slash or fonts. + +This section gives some basic procedures for testing that the new system +is functional. We give Unix commands; under \MacOSX{} and Windows, +you're more likely to run the tests through a graphical interface, but +the principles are the same. + +\begin{enumerate} + +\item Make sure that you can run the \cmdname{tex} program in the first +place: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.141592 (Web2C 7.5.5) +kpathsea version 3.5.5 +... +\end{alltt} +If this comes back with `command not found' instead of version and +copyright information, most likely you don't have the correct +\dirname{bin} subdirectory in your \envname{PATH}. See +the environment-setting information on \p.\pageref{text:path}. + +\item Process a basic \LaTeX{} file: +\begin{alltt} +> \Ucom{latex sample2e.tex} +This is pdfeTeXk, Version 3.141592... +... +Output written on sample2e.dvi (3 pages, 7496 bytes). +Transcript written on sample2e.log. +\end{alltt} +If this fails to find \filename{sample2e.tex} or other files, perhaps +you have interference from old environment variables or configuration +files. For a deep analysis, you can always ask \TeX{} to report on +exactly what it is searching for, and finding; see ``Debugging actions'' +on page~\pageref{Debugging}. + +\item Preview the result online: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} +\end{alltt} +(Under Windows, the analogous command is \cmdname{windvi}.) You should +see a new window with a nice document explaining some of the basics of +\LaTeX{}. (Well worth reading, by the way if you're new to the system.) +You do have to be running under X for \cmdname{xdvi} to work; if you're +not, or your \envname{DISPLAY} environment variable is set incorrectly, +you'll get an error \samp{Can't open display}. + +\item Create a \PS{} file for printing or display: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Create a \acro{PDF} file instead of \dvi{}; this processes the +\filename{.tex} file and writes \acro{PDF} directly: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Preview the \acro{PDF} file: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Unfortunately neither \cmdname{gv} nor \cmdname{xpdf} are currently +included in \TL{}, so you must install them separately. See +\url{http://www.gnu.org/software/gv} and +\url{http://www.foolabs.com/xpdf}, respectively. + +\item Other standard test files you may find useful: + +\begin{ttdescription} +\item [small2e.tex] A simpler document than \filename{sample2e}, to +reduce the input size if you're having troubles. +\item [testpage.tex] Test if your printer introduces any offsets. +\item [nfssfont.tex] For printing font tables and tests. +\item [testfont.tex] Also for font tables, but using plain \TeX{}. +\item [story.tex] The most canonical (plain) \TeX{} test file of all. +You must type \samp{\bs bye} to the \code{*} prompt after \samp{tex +story.tex}. +\end{ttdescription} +You can process these in the same way as we did with +\filename{sample2e.tex}. + +\end{enumerate} + +If you are new to \TeX{}, or otherwise need help with actually +constructing \TeX{} or \LaTeX{} documents, please visit +\url{http://tug.org/begin.html} for some introductory resources. + + +\section{\MacOSX{} installation} +\label{sec:mac-install} + +The recommended way to install \TeX\ on \MacOSX\ is from the Mac\TeX\ +distribution, new in 2005. This is provided on the \pkgname{live} +\DVD{} in the top-level \dirname{mactex/} directory. It contains its +own (native) installer for a full \TeX\ distribution, based on a +combination of te\TeX\ and \TL, along with many additional applications +and documentation. The project web page is \url{http://tug.org/mactex}. + +If you prefer, installation of \TeX{} under \MacOSX{} can also be done +directly from \TL, using the \filename{install*} scripts, as follows. + +In order to run the installation scripts under \MacOSX, you need to have +the \cmdname{bash} shell installed. If you are running \MacOSX~10.2 +or later, you have \cmdname{bash}, and can proceed. If you're running +an earlier \MacOSX{} version, however, the default shell is +\cmdname{zsh}, which won't work; you'll need to get \cmdname{bash} from +the Internet, or more likely upgrade your system. + +Once you have \cmdname{bash}, the Unix installation documentation in the +previous section can be followed. See section~\ref{sec:unix-install} on +\p.\pageref{sec:unix-install}; \MacOSX-specific notes are included there +where needed. + +\section{Windows installation} +\label{sec:win-install} + +In this release of \TL{}, happily, the distribution once +again has a native Windows installer, named \cmdname{tlpmgui.exe}. (See +section~\ref{sec:multiple-dist}, \p.\pageref{sec:multiple-dist}, for an +explanation of the different distributions.) + +\cmdname{tlpmgui} has essentially the same options as the Unix +installer, only done through a GUI interface: selecting schemes, +individual collections, installation directories, and so on. +Section~\ref{sec:unix-install-disk} on +\p.\pageref{sec:unix-install-disk} describes the basic elements. It +also allows some post-installation activities such as adding/removing +packages, updating the filename database and building formats. +Moreover, \cmdname{tlpmgui} can setup the system for running +programs directly from the \DVD. + +For those who like to look underneath the hood, \cmdname{tlpmgui} uses +as its ``engine'' a command-line Windows program named \cmdname{tlpm}. + +The Windows \TeX{} system included in \TL{} is based on new binaries +borrowed from the \XEmTeX{} project, formerly known as \fpTeX{} (see +\url{http://www.metz.supelec.fr/~popineau/xemtex-1.html}). +It also includes some older (but still working) tools, notably +a \texttt{dvi} previewer, \textsf{Windvi}, which is similar in usage to +the established Unix \textsf{xdvi}. The documentation can be found in +\OnCD{texmf/doc/html/windvi/windvi.html}. + +\TL{} can be installed on systems running Windows 98, \acro{ME}, +\acro{NT}, \acro{2K} or \acro{XP}. Older versions of Windows (3.1x) +and \acro{MS-DOS} are not supported. + +\textbf{Warning:} Win9.x users must ensure they have enough environment + space before undertaking installation. The \cmdname{tlpmgui.exe} + program won't change the environment size for them. A few environment + variables will be created and it is possible you run out of + environment space. Add \texttt{SHELL=COMMAND.COM /E:4096 /P} in the + config.sys file in order to increase your environment size. + +\subsection{Installing \protect\TeX\protect\ Live to disk} + +After inserting the \TL{} CD into the \acro{CD} drive, autostart should +activate \cmdname{tlpmgui}. If it does not, click \guiseq{Start\arw Run}, +then type \verb|:\setup-win32\tplmgui.exe| (or +\verb|:\texlive\setup-win32\tplmgui.exe| if you are +installing from the TeX Collection DVD), where \verb|| +is the drive letter with the TeX Live CD (or TeX Collection DVD), and +then click OK. + +The installation window titled \guiseq{TeX Live installation and maintenance +utility} should open. It contains the following sections: \guiseq{Main +customization}, \guiseq{Install}, \guiseq{Select a scheme}, \guiseq{Select +systems}, \guiseq{Directories} and \guiseq{Options}. + +In the \guiseq{Directories} section the installation drive (directory) next +to the \guiseq{CD/DVD} button should be displayed (e.g., \texttt{F:/} or \texttt{F:/texlive/} for the DVD), but +if it is not, then click the \guiseq{CD/DVD} button and select the \acro{CD/DVD} +drive, with the \TL{} CD (or TeX Collection DVD). + +The directory in which you wish to install the software can be set by +clicking the \guiseq{TLroot} button. This directory will be set as +\path|TLroot| environment variable for later usage. The \path|TEXMFTEMP| and +\path|TEXMFCNF| environment variables as displayed next to the +\guiseq{TEXMFTEMP} and \guiseq{TEXMFCNF} buttons will be adjusted +automatically and set during installation, but they can also be adjusted +manually now to suit special needs. + +In the \guiseq{Select a scheme} section the desired \TL{} installation scheme +should be chosen by clicking the radio button labelled with the installation +scheme name (e.g., \guiseq{scheme-gust}). Each scheme is accompanied by an +\guiseq{Info} button which, when clicked, displays a short description of the +relevant scheme. + +A scheme is a large set of files targeted at some kind of usage. There are +generic schemes for basic, medium and full installations. The remaining ones +are either targeted at certain LUGs (i.e., what GUST or GUTenberg propose +for their members) or application targeted (e.g., for XML and \TeX{} +cooperation). A preselected scheme can be refined. This is done in the +\guiseq{Main customization} section by choosing additional collections from +\guiseq{Standard collections} or \guiseq{Language collections}. For example, +by clicking the \guiseq{Select} button labelled \guiseq{Standard +collections}, additional collections like Metapost, Omega or documentation +in different languages can be selected. + +\textbf{Note:} The \guiseq{Ghostscript}, \guiseq{Perl} and \guiseq{Wintools} +collections are selected by default and should be installed unless they are +already installed and you really know what you are doing. This is because +they are required by many important tools. The \verb|PERL5LIB| and +\verb|GS_LIB| environment variables will be set too. + +Next, clicking the \guiseq{Select} button labelled \guiseq{Language +Collections} in the \guiseq{Main customization} section opens the +\guiseq{Language collections} window in which the installation language can +be chosen by ticking the box next to the language. + +Next, click the \guiseq{Install} button in the \guiseq{Install} section to +start the installation proper process. + +The \TL{} system needs some post-processing steps (format files +generation, ls-R databases generation, environment variables, etc.). All +these operations are done there, some of them can be lengthy. So please wait +until you see a statement about the successfully finished installation. + +The shortcut for \cmdname{tlpmgui} will be added to the +\guiseq{Start\arw Programs\arw TeXLive2005} menu. + +If it is needed (Win9x/WinME), you will be asked to reboot your computer. + +\subsection{Support packages for Windows} +\label{sec:win-xemtex} + +To be complete, a \TL installation needs support packages that are not +commonly found on a Windows machine. Many scripts are written using the Perl +language. Some important tools require the Ghostscript \PS{} interpreter to +render or to convert files. A graphic file toolbox is also needed in some +cases. Last but not least, a \TeX-oriented editor makes it easy to type in +your \TeX{} files. + +All these tools are quite easy to find for Windows, but in order to try to +make your life even easier, we have put such a set of tools on \TL: +\begin{itemize*} +\item GNU \cmdname{Ghostscript} 7.07 +\item a minimal \cmdname{Perl} 5.8, sufficient to run all the \TL{} + Perl scripts. +\item win-tools is a set of small programs (bzip2, gzip, jpeg2ps + and tiff2png) +%\item a subset of \cmdname{ImageMagick} 5.5.6 +%\item the \cmdname{ISpell} checker +%\item \cmdname{XEmacs} 21.5.14 with a selection of packages to support +%\TeX{} typesetting. +\end{itemize*} + +These packages are borrowed from the \XEmTeX{} distribution +(the successor of fp\TeX). + +Perl and Ghostscript are installed by default; you may explicitly +deselect them during installation if you already have them. + +If you don't want to install this bundle, then you are on your own to +install the required tools to complete your \TL{} system. Here is a +list of places to get those tools: + +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.activestate.com/} (but you might need some + supplementary packages from CPAN: \url{http://www.cpan.org/}) +\item[ImageMagick] \url{http://www.imagemagick.com} +\item[NetPBM] alternatively, you could use NetPBM instead of ImageMagick to + process or convert your graphic files. NetPBM home page is + \url{http://netpbm.sourceforge.net/} +\item[\TeX-oriented editors] There is a wide choice, and it is a matter of the + user's taste. Here is a selection: + \begin{itemize*} + \item \cmdname{GNU Emacs} is available natively under Windows, see + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html} + \item \cmdname{XEmacs} is available natively under Windows, see + \url{http://www.xemacs.org/} + \item \cmdname{WinShell} is available on \TL in the \path|support| + directory, see \url{http://www.winshell.de} + \item \cmdname{WinEdt} is shareware available from \url{http://www.winedt.com} + \item \cmdname{Vim} is available on \TL{} in the + \path|support\vim| directory and the + reference site is \url{http://www.vim.org} + \item TeXnicCenter is free software, available from + \url{http://www.toolscenter.org} and in the proTeXt distribution. + \item \cmdname{LEd} is available from \url{http://www.ctan.org/support/LEd} + \item \cmdname{SciTE} is available from \url{http://www.scintilla.org/SciTE.html} + \end{itemize*} +\end{description} + +You might want to install other tools that are not free\footnote{Not +free, that is, in the sense of freedom to modify and redistribute, +following free software guidelines. This does not mean you can't acquire +them for no money.} and therefore not included on \TL{}, such as +\cmdname{GSView}, the \cmdname{Ghostscript} companion to more +conveniently view PS/PDF files. \cmdname{GSView} is available from +\url{http://www.cs.wisc.edu/~ghost/gsview/} or any \acro{CTAN} site. + +\section{Maintenance of the installation in Windows} + +If you have TeX Live installed, you can use \cmdname{tlpmgui} again +for modyfying and maintaining your installation. + +\subsection{Adding/removing packages} + +As the \cmdname{tlpmgui} shortcut is available in the \guiseq{Start\arw +Programs\arw TeXLive2005} menu, start it from here. The maintenance window +titled \guiseq{TeX Live installation and maintenance utility} shows. It +contains several tabs: \guiseq{Add Packages}, \guiseq{Remove packages}, +\guiseq{Manage installation}, \guiseq{Remove installation}. + +Click the tab labelled \guiseq{Add packages} or \guiseq{Remove packages} +to enter the relevant functionality and then: + +\begin{itemize} +\item In the first tab select the proper \CD{} drive (or \DVD with + \texttt{texlive} directory) by pressing the \guiseq{CD/DVD} button. +\item Click the \guiseq{Search} button in the \guiseq{Buttons} section to +display or refresh in the \guiseq{Select packages to\dots} section the +list of packages to install or remove. + +When adding packages, the list of installed packages is compared to the list +of packages available from your \CD/\DVD. Only packages not already installed are +displayed. It is up to you to select which packages you want to +install. + +When removing individual packages, only a list of installed packages +will be displayed. + +Please note that for both \guiseq{Add packages} and \guiseq{Remove packages} +the collections are listed first. + +\item Select a package by clicking on the name of the package. Clicking the +\guiseq{Info} button in the \guiseq{Buttons} section displays a short +description of the selected package in the window located in the \guiseq{Info +about the selected item} section. To select several packages at once hold +down one of the Ctrl or Shift keys at your keyboard while holding down the +left mouse button or drag the mouse pointer while holding down the left mouse +button. + +\item Click the \guiseq{Install} or \guiseq{Remove} button in the +\guiseq{Buttons} section to perform the appropriate action. +\end{itemize} + +\subsection{Configuring and other management tasks} + +The functions available in the tab labelled \guiseq{Manage the installation} +are helpful in performing actions needed when you want to add support for a +language which was not selected during the installation, or add/regenerate a +format which was not selected during the installation or was modified after +the installation. + +The following actions can be performed: + +\begin{itemize} +\item Refresh the \filename{ls-R} database +\item Create formats (All or Missing) +\item Edit \filename{language.dat} +\item Edit \filename{fmtutil.cnf} +\item Edit \filename{updmap.cfg} +\end{itemize} + +Note: you can close the Edit\dots{} window with the \guiseq{Cancel} or +\guiseq{Done} button; the latter will start rebuilding the format files +(or the fontmap files if you have edited \filename{updmap.cfg}), followed by a +\filename{ls-R} database files refresh. + +For more information about the configuration see section~\ref{sec:persconf}, +\p.\pageref{sec:persconf}. + +\subsection{Uninstalling \protect\TL{}} + +The tab labelled \guiseq{Remove the TeX Live installation} opens a window +which contains functionality not worth describing and we do not know who would +need it and what it is for\dots :-) + +Anyway, if you have the \path|texmf-local| directory for your local additions, +the removal procedure will not wipe it out or delete things in it. The \path|setup-win32| +directory containing \cmdname{tlpmgui} and related files will not be deleted. You will have to do some manual cleanup to +actually remove them. + +\subsection{Adding your own packages to the installation} + +First, whatever changes you make, \textbf{do not forget to rebuild the ls-R +database files}. Otherwise, your new files will not be found. You can do this +either via the \cmdname{tlpmgui} run and selection of the appropriate action +from the \guiseq{Manage the installation} tab, or manually running the +\file{mktexlsr} command. + +If you want to add files that are not provided by the \TL{} distribution, +it is recommended to put them in the \path|$TEXMFLOCAL| directory. This +way, you will be safe against upgrades of the \TL{} software. + +The directory pointed to by \path|$TEXMFLOCAL| is initially empty. If, +for example, you want to add the support file for the Maple symbolic +computation program, you will have to put the style files in:\\ +\path|c:\TeXLive2005\texmf-local\tex\latex\maple\|\\ and the +documentation files in:\\ \path|c:\TeXLive2005\texmf-local\doc\latex\maple\| + +\subsection{Running \texttt{tlmp.exe} from the command line} +The \cmdname{tlpm.exe} program which is used as engine by \cmdname{tlpmgui} +has a number of other useful options. You can get the list by running: +\begin{verbatim} +tlpm --help +\end{verbatim} + +More information and examples of use can be found in \path|tlpm.readme|. + +\subsection{Network installation} + +\KPS{} knows about UNC names, so you can use them to get your TEXMF +tree from the network. But there is better than this. +All the support files and configuration files, everything except the files in the +\path|bin/win32| are shareable with a \teTeX{} or Unix \TL{} installation. That means +you can use Samba either to mount from an NT server to a Unix +workstation or the converse. Several strategies are possible: +\begin{itemize} +\item Put everything on the server. Just add each set of files for the OS and +architecture you want to use in the \path|bin| directory. That means +for example \path|bin/win32| and \path|bin/i386-linux|. Next configure +your main variables. You can use UNC names to +point to the right directories under Win32. +\item Install a local copy for the binaries and format files. In this + case, assign \path|$TEXMFMAIN| to the main \path|texmf| tree that + will be accessed remotely. Set \path|$TEXMFVAR| to be a local + directory which will hold local configuration files and on-the-fly + generated files. +\end{itemize} + +\subsection{What's different in Windows?} + +The Windows version of \Webc{} has some specific features that should be +pointed out. + +\begin{description} +\item[\KPS{}] The hash-tables that \KPS{} builds are quite large for + the \TL{}. In order to cut down the starting time of any + \KPS{}-enabled program, these hash-tables have been put in shared + memory. This way, when you chain the execution of several such + programs, like \path|tex| calling \path|mpost| calling \path|tex|, + the overhead when starting each of the subprograms is + reduced. This change is hidden to the user, except if you set the + debug flag of kpathsea to the \path|-1| value: you will then trace + access to the shared memory, which is not what you want (it is + accessed very often!). What is useful in a log trace of the shared + memory access is still to be defined, so the situation might evolve + in the future. +\item[\cmdname{kpsecheck}] This command provides some options that did + not fit well into \cmdname{kpsewhich}. It will allow you to list all + the files that occur multiple times across your texmf trees. This + could be handy, but most of the time you will also get unwanted + output (like dozens of \path|README| files). It is noticeable + that all these files result in clashes inside the \KPS{}-hashing + mechanism; fortunately, \KPS{} never looks for these files. For + this reason, you can combine the \path|-multiple-occurrences| with 2 + other options for including or excluding any filename that match + some pattern (you can request for several patterns). + + The \cmdname{kpsecheck} command will also report the status of shared + memory: in use or not used. That might be useful to know because if + the status reported is \samp{in use}, that means one or several + processes are working, and the effect of any \cmdname{mktexlsr} + command will be delayed until the next time where no \KPS{} linked + process will be running. + + Last, this same command will report about the location it thinks + Ghostscript can be found. Under Win32, for many programs, it is + easier to use the Ghostscript dll, and find it by using the + Ghostscript registry key than to change the \path|PATH|, which has a + limited length anyway. +\item[\Webc{}] The engines have a few more options than in Unix + \Webc{}, and one option with a different behavior: + \begin{itemize} + \item \path|-halt-on-error| stop the compilation at the first error. + \item \path|-job-time| set the job time to the same timestamp as the + file given in argument. +\item \path|-oem| use the DOS codepage for console output. + \item \path|-output-directory| allow to write all the output files in the + specified directory. + \item \path|-time-statistics| print statistics about the job run + time. It is to be noted that Win9x not being a true multitasking + operating system, it has no reliable timer for short periods, so + the value printed is an approximation. Under NT/2K/XP, the result + is quite accurate with user time and system time values allocated + for this run. For Unix + users: the \path|time| command is not usually available to Windows + users. + \end{itemize} +\end{description} + +\subsection{Personal configurations} +\label{sec:persconf} + +\subsubsection{Dvips} + +The configuration file for dvips can be found in\\ +\verb+C:\TeXLive2005\texmf-var\dvips\config\config.ps+\\ +You may open it with any editor + %(\cmdname{WinShell} will do fine) + and change some parameters: + +\begin{description} +\item [fonts] you can change the default printer \MF{} mode or printer + resolution in case \cmdname{dvips} needs to generate PK fonts. By default it + is configured to use Type~1 versions of the CM fonts, so it should + not call \cmdname{mktexpk} too often; +\item[printer] you can tell dvips where you want to print by default. If + the \optname{o} option is not followed by a printer name, then a + \file{.ps} \PS{} file is written. You can give dvips a printer + name such as: +\begin{verbatim} +o lpt1: +% o | lpr -S server -P myprinter +% o \\server\myprinter +\end{verbatim} +\item[paper] Next, you might want + to change the paper size from European (A4) to US letter + by making the US letter the first paper size mentioned in the file. + Scroll to the group of lines beginning with \code{@}. Move + the appropriate lines so that this section begins with the lines:\\ +\hspace*{1em} @ letterSize 8.5in 11in\\ +\hspace*{1em} @ letter 8.5in 11in\\ +\hspace*{1em} @+ \%\%BeginPaperSize: Letter\\ +\hspace*{1em} @+ letter\\ +\hspace*{1em} @+ \%\%EndPaperSize +\end{description} + +The current \TL{} distribution implements the procedure of making +always up-to-date fontmaps files for Dvips and Pdftex. This is done by +the \cmdname{updmap} program during installation, as well as during any +font package addition. If you add new packages by hand, edit the file +\verb+updmap.cfg+ in \path|$TEXMFVAR/web2c|. + +\subsubsection{PdfTeX} + +If you use the program pdf{}latex to write \acro{PDF} format directly, +and you are using \acro{US} letter-size paper, edit the file +\verb+C:\TeXLive2005\texmf-var\tex\generic\config\pdftexconfig.tex+ and +change \samp{\bs pdfpagewidth} and \samp{\bs pdfpageheight}. These entries +should read: +\begin{alltt} +\bs{}pdfpagewidth=8.5 true in +\bs{}pdfpageheight=11 true in +\end{alltt} +Save the file and exit the editor. + +\subsubsection{GSView} +GSView is now distributed under the Aladdin License, and therefore is no +longer included in \TL{}. + +If you may want to change the page size to US letter size. If so, open +GSView from the \guiseq{Start} menu, and select \guiseq{Media\arw Letter}. + +Also, there are menu settings that are supposed to give you the most +readable screen image. On \guiseq{Media \arw Display Settings}, set both +\optname{Text Alpha} and \optname{Graphics Alpha} to 4~bits. + +Note that the installation process has set all \code{.ps} and +\code{.eps} files to automatically open with \cmdname{GSView}. + +For printing instructions, see section~\ref{printing} below. + +\subsubsection{WinDvi} +\label{sub:windvi} + +The \file{tlpmgui.exe} program takes care of associating the files +with the \file{.dvi} extension with \file{Windvi}, but it doesn't make an icon +on the desktop, so please do it yourself. + +Open \cmdname{windvi} by clicking an icon or from the command line. + +You can set it for US letter-size paper by going to \guiseq{View\arw +Options\arw Papertype} and selecting US (8.5\verb+"+ x 11\verb+"+) (and +then \optname{OK}. Exit \cmdname{windvi}. + +You can change other parameters from there as well, such as the ability +to execute system commands specified by the document (disabled by +default for security reasons). Also, the first time you view any .dvi +file, you may find the magnification too large. Zoom out until you get +an appropriate size. + +All configuration settings for \cmdname{windvi} are stored in a file +named \path|windvi.cnf| file. You can find it by running this command at +the prompt: +\begin{verbatim} +c:\>kpsewhich --expand-var $HOME/windvi.cnf +\end{verbatim} + +Should you have problems with \cmdname{windvi}, please remove the +configuration file and test your problem against a vanilla configuration. + +\subsection{Testing} + +For generic verification procedures, see section~\ref{sec:test-install} +(\p.\pageref{sec:test-install}). This section describes +Windows-specific tests. + +Open the file \verb+sample2e.tex+ in your editor (Xemacs, WinShell), +found in \path|C:\TeXLive2005\texmf-dist\tex\latex\base|. The \LaTeX\ source +should appear on the screen. Process it by clicking on the +\guiseq{Command\arw LaTeX} menu (XEmacs) or \LaTeX\ icon on the toolbar +(WinShell), then view it by clicking on the \guiseq{Command\arw View DVI} +menu (XEmacs) or Preview (Windvi) icon (WinShell). + +At first, when you preview files with Windvi, it will create fonts because +screen fonts were not installed. After a while, you will have created most +of the fonts you use, and you will rarely see the font-creation window. + +\textbf{Hint for the future:} If a \LaTeX\ run stops because \LaTeX\ +cannot find a file, you can press Ctrl-z to quit. + + +\subsection{Printing} +\label{printing} + +It is possible to print from Windvi. In this case, printing will be done +using the Windows unified printer driver. By definition, it is +compatible with all printers. However, there is some drawback: it can +generate some huge spool files, and some (older) versions of Windows +just don't like them. The advantage is that you can use features like +embedding BMP or WMF images. You also need to make sure that the printer +parameters are correctly set (subsection~\ref{sub:windvi}), else you +will get scaled printing (printing at 600\dpi{} on a 300\dpi{} printer +will give you only one quadrant of your page). + +Printing is faster and more reliable if you run \cmdname{dvips} to make +a \filename{.ps} file and then print from \cmdname{GSView}. In +\cmdname{GSview}, select \guiseq{File\arw Print\ldots}. A \guiseq{Print} +window will appear. + +If you are using a \PS{} printer, \textit{be sure to select +\guiseq{\PS{} Printer}}. This is done in the \guiseq{Print Method} box +at the bottom left of the \guiseq{Print} window. You can then select any +of the printers that you have previously installed. If you fail to +check the box for \optname{\PS{} Printer}, printing will not work. + +If you will be using your own non-\PS{} printer, select +\guiseq{Ghostscript device} in the \guiseq{Print Method} box, then click +on the button to the right labelled \guiseq{djet500} and select your +printer type from the list that pops up. (In the older version of +\cmdname{GSView}, make sure \optname{\PS{} Printer} is \textit{not} +selected, then select your printer type from the \guiseq{Device} list.) + +\subsection{Tips and tricks for Win32} + +\subsubsection{Different flavors of Win32} + +What we call Win32 is not an operating system by itself. It is a large +set of functions (around 12,000 in the header files of the Microsoft +\acro{SDK}) that you can use to write programs for different operating +systems of the Windows family. + +Windows comes in different flavors: +\begin{itemize} +\item Win95, Win98 and Win\acro{ME}, which \emph{are not true multitasking, + multithreading} environments. They are the latest\Dash and hopefully + last\Dash metamorphosis of \acro{DOS}. This can be more or less proven + by the fact that when booting, the PC will load the \path|command.com| + interpreter, and if you stop the boot process at this point, you can + ask for the current (\acro{DOS}) version and it will answer something + like \samp{MS-DOS 7.0} (at least for the old versions of Win9x). +\item Windows \acro{NT}, which is a new operating system written from + scratch, capable of true multitasking behavior, and including many + high level features. +\item Windows 2000, based on \acro{NT}, with all the bells and + whistles of Win98. +\item Windows \acro{XP}, which comes with Personal and Pro flavors. This is + the last step in merging both lines of products (Win9x based and + \acro{NT} based). \acro{XP} is based on \acro{NT}. +\end{itemize} + +Win9x are able to run 32~bits programs and 16~bits programs +concurrently. But the operating system by itself is not entirely +written in 32~bits mode, and does not support memory protection: 16bits +applications can overwrite parts of the operating system memory! Some +parts of the system like the \acro{GDI} (Graphical Device Interface) +manage limited resources like bitmaps, fonts, pens and so on for the set +of all programs that run concurrently. All the bitmaps headers available +at the same time can't amount for more than 64kB. This explains the +performance tool and the fact that you can put your system on his knees +by making intensive use of graphic objects for example. + +NT, 2K and XP do not suffer from these limitations, and neither from +other Win9x limitations. They are true multitasking environments, with +protected memory. They are much more responsive than Win9x because +of better memory management, better file system and so on. + +\subsubsection{Command line prompt} + +You may wonder, ``Why would I need to use a command line prompt when +I have Windows?'' + +Good question. The problem is of very general nature. Not all operations +can be done easily using only a \acro{GUI}. Command line gives you +programming power\Dash assuming a clever command interpreter. + +But the problem here is more fundamental: \TeX{} is \emph{a batch} +tool. Not an interactive one. \TeX{} needs to compute the best +layout for each page, resolve cross-references and so on. This can be +done only by a global processing of the document. It is not (yet) a +task that can be done interactively. + +This means that you should use \TeX{} from a command line. In fact the +situation is not so bad. There is an advantage to write command line +tools for complex processing: they are better debugged, because they are +independent of any \acro{GUI} problems, and \acro{GUI} tools can be +designed to interface to the command line tools. This is the case for +\TeX{}, where you will mostly interact with it through a \acro{GUI} text +editor. + +However, you may need to use the command line prompt in a number of +situations. One is when you are having difficulties and want to debug +your setup. + +\begin{description} + \item[Win9x] You can open a command line prompt by looking either for + the \acro{MS-DOS} icon in the \guiseq{Start\arw Programs} menu, + or by choosing \guiseq{Start\arw Run} menu typing in + \path|command.com| as the progrm name. + \item[NT, 2K, XP] You can open a command line prompt by looking for + \guiseq{Command Prompt} in the \guiseq{Start\arw Accessories} menu. + You can also choose \guiseq{Start\arw Run} and type in + \path|cmd.exe|, which is the name of the brand new command + interpreter for \acro{NT} (thus, it is untrue to call this a + \emph{DOS} box!). +\end{description} + +These locations may change across different Windows versions. + +\subsubsection{Path separators} + +The Win32 API understands both \path|/| and \path|\| characters as PATH +separators. But the command interpreters do not! So whenever a path name +is used programmatically, you can use both separators, and even mix them +up in the same path name. But on the command line, you must type +\path|\| as path separator. The reason is compatibility: the command +processor used \samp{/} to introduce arguments to commands. + +All this to say: do not be surprised to read path names written using +the Unix convention; \fpTeX{} is a port of \Webc, and aims to be compatible +across platforms. For this reason, all the configuration files that +need to specify path names use the Unix convention. + +\subsubsection{File systems} +\label{sec:clusters} + +The worst feature of Win9x with regard to \TeX{} is probably the +so-called FAT file system. \TeX{} uses very many small files, with size +around 1--3kB. The \acro{FAT} file system is old, and predates by +decades the multi-gigabytes hard disks we have today. As a result, it +cannot manage efficiently the tens of thousands of \TeX{} files found in +\TL{}. The \acro{FAT} file system allocates a minimum of 32kB for +\emph{any} file on a huge partition. It means that \TeX{} will use much +more disk space than it actually needs. + +The other, more modern, file systems available, \acro{FAT32} and +\acro{NTFS}, do not have this drawback. They manage clusters of 4kB +only. (You can lower the limit to 512 bytes on \acro{NTFS}.) + +\subsubsection{How to add some directory to your PATH} + +There are pairs of variables and values which behave much like global +variables inside your programs. The set of those variables is called the +environment. Each program is initialized with a copy of the +environment when it is run. It can request and change the +value of any variable. The changes happen in the copy of the +environment, and is not at all propagated to the other running +programs. + +Your PATH is a special environment variable used to search for +programs you want to run. +There is a different procedure to change it for Win9x, WinME and NT/2K/XP: + +\begin{description} +\item[Windows 95/98] Edit your \path|autoexec.bat|. In this file should be a line + starting with \texttt{PATH=} and followed by a list of directories separated + by \path|;|. Please add the directory with the executables in this line. + After this, this line could look as follows: +\begin{verbatim} +PATH=c:\windows;c:\windows\system;c:\TeXLive2005\bin\win32 +\end{verbatim} +\item[Windows ME] You need to run the special program + \path|c:\windows\system\msconfig.exe| to be able to change any + environment variable. From this program, select the `Environment' + tab, and then add or modify the variable you want. You will be asked to reboot the + machine upon any change. +\item[Windows NT/2K/XP] + Click left on \guiseq{Start \arw Settings \arw Control Panel}. Now the + window with the control panel icons opens. Double click on System. The + System Properties window opens. Click on the tab \textsf{Environment} + or look for a button named \guiseq{Environment Variables} among the + dialog boxes. Now you can change the environment variables for your + user account. Note: There are also displayed the environment settings + for the system. Normally, you can't change the system variables + unless you have administrator rights on your machine. If you want to + change the \texttt{PATH} for all users, you will have to contact your + system administrator or be the system administrator yourself\Dash in + the latter case you should know what you are doing. + + If there is already a \texttt{PATH} setting for your user account, + left click on \texttt{PATH}. In the field \textsf{Variable} appears + \texttt{PATH} while the field Value shows the current setting of + \texttt{PATH} as a list of directories separated by \path|;|. Add + the directory where the executables are located (e.g. + \path|c:\TeXLive2005\bin\win32|). If there isn't a \texttt{PATH} variable + for your user account, simply click in the field Variable and type + in \texttt{PATH}, click in the field \textsf{Value} + and type in the directory with the executables. Important: Click on + the \textsf{Apply} button before clicking \textsf{Ok}, otherwise the + changes to \texttt{PATH} won't apply to your system. Be careful when + changing the environment settings. +\end{description} + +The best way to be sure that a variable has been properly set is to +open a console and type: +\begin{verbatim} +set VARIABLE +\end{verbatim} +which should return the corresponding value. + +\subsubsection{\TeX{} engines} + +If you have a look at the \Webc{} documentation, you will read that all +the various \TeX{} derived programs use the same base engine. For +example, \path|tex.exe| and \path|latex.exe| are exact copies of the +same program, but each one will use a different format file, based on +its calling name. + +Under Unix, this feature is implemented through \emph{symbolic +links}. It saves up a bit of disk space, because some engines are +used with many different format files. + +The Win32 API does not know about file links. So to save up almost +the same amount of memory, all the \TeX{} base engines have been put +in DLLs (\emph{Dynamic Linked Library}). This means that you will have +the following layout: +\begin{alltt} +18/09/2005 14:19 3 584 latex.exe +18/09/2005 14:19 3 584 pdfetex.exe +18/09/2005 14:19 524 288 tl90pdfetex.dll +\end{alltt} +and the \path|latex.exe| file is nothing but a rough copy of +\path|pdfetex.exe| using the same core \path|tl90pdfetex.dll|. +The same trick has been used for the \path|mktex*.exe| family of programs +which are linked to the \path|mktex.dll| library. + +In fact, a generic tool called \path|irun.exe| is provided to build the +equivalent of Unix hard links for executable files only under Win32. + +\subsection{In case of problems} +\label{sec:troubleshooting} + +\subsubsection{What to do if \texttt{latex} does not find your files?} + +\begin{itemize} + +\item \cmdname{kpsewhich} is the tool of choice to debug any +problem. Unfortunately, \cmdname{kpsewhich} outputs debug information +to stderr, and the older Windows consoles do not know how to redirect stderr +to a file. (NT and Windows 2000 consoles know how to do that. But +the trick will work for any console.) For diagnostic purposes you can +temporarily set an environment variable (in a \acro{DOS} box): + +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=err.log +\end{verbatim} +You can also set the debug level: +\begin{verbatim} +SET KPATHSEA_DEBUG=-1 +\end{verbatim} + +If you want to redirect stderr to stdout, which is not possible +Windows, then do: +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=con: +\end{verbatim} +This way you can capture both stdout and stderr in the same file. + +\item Assuming the installation has been done in \path|c:/TeX|, check + the following values: \\ + {\small + \begin{tabular}{ll} + \path|kpsewhich -expand-path $SELFAUTOPARENT| & \path|c:/TeX| \\ + \path|kpsewhich -expand-path $TEXMF| & \path|c:/TeX/texmf....| \\ + \path|kpsewhich -expand-path $TEXMFCNF| & + \path|.;c:/TeX/texmf-var/web2c;| \\ + \path|kpsewhich -expand-var $TEXINPUTS| & \path|.;c:/TeX/texmf/tex//| + \end{tabular} +} +\item If you have other \TeX{}-related values already set in your + environment, please, remove them. They are overriding the ones in + texmf.cnf. +\item Check the values from:\\ +{\small + \begin{tabular}{ll} + \texttt{kpsewhich cmr10.tfm} & \path|c:/TeX/texmf/fonts/tfm/public/cm/cmr10.tfm|\\ + \texttt{kpsewhich latex.fmt}& \path|c:/TeX/texmf/web2c/latex.fmt| + \end{tabular} +} +\item At this point, if everything is correct, \TeX{} and friends + should work. If it is not the case, you will need to play with + the \path|-debug=n| option from \path|kpsewhich|, and check back all + the values. Try to identify and report the problem. +\end{itemize} + +\subsubsection{What to do if your setup still does not work as expected?} + +Here are several questions to investigate: + +\begin{enumerate} +\item Is \file{tex.exe} in my \path|PATH|? + +\item Is the \path|TEXMFCNF| variable correctly set to +\path|c:/TeXLive2005/texmf-var/web2c| (default value)? + +\item Are there any errors in the log file generated by the +\file{tlmpgui.exe} program? +\file{tlmpgui.log} can be found in your +\file{TEMP} directory. You can find this by searching for the +string \samp{Error}. Hint: the log file can show some errors after +building all format files. Please do not panic: perhaps some formats +weren't already installed. + +\item Are there any relevant bug fixes at \url{http://tug.org/texlive/}? +(Unlikely, but it doesn't hurt to check.) + +\end{enumerate} + +The \TL{} software consists of hundreds of programs and tens of +thousands of files, all from varying sources. So it is quite difficult to +predict all possible causes for problems. Nevertheless, we will do our +best to help you. (See section~\ref{sec:help}, \p.\pageref{sec:help}.) + +% don't use \Webc so the \uppercase in the headline works. +\section{A user's guide to Web2C} + +\Webc{} is an integrated collection of \TeX-related programs: \TeX{} +itself, \MF{}, \MP, \BibTeX{}, etc. It is the heart of \TL{}. + +A bit of history: The original implementation was by Tomas Rokicki who, +in 1987, developed a first \TeX{}-to-C system based on change files +under Unix, which were primarily the original work of Howard Trickey and +Pavel Curtis. Tim Morgan became the maintainer of the system, and +during this period the name changed to Web-to-C\@. In 1990, Karl Berry +took over the work, assisted by dozens of additional contributors, and +in 1997 he handed the baton to Olaf Weber. + +The \Webc{} system runs on Unix, 32-bit Windows systems, \MacOSX{}, and +other operating systems. It uses Knuth's original sources for \TeX{} and +other basic programs written in \web{} and translates them into C source +code. The core \TeX{} programs are: + +\begin{cmddescription} +\item[bibtex] Maintaining bibliographies. +\item[dmp] \cmdname{troff} to MPX (\MP{} pictures). +\item[dvicopy] Expands virtual font references in \dvi{} files. +\item[dvitomp] \dvi{} to MPX (MetaPost pictures). +\item[dvitype] \dvi{} to human-readable text. +\item[gftodvi] Generic font proofsheets. +\item[gftopk] Generic to packed fonts. +\item[gftype] GF to human-readable text. +\item[makempx] \MP{} label typesetting. +\item[mf] Creating typeface families. +\item[mft] Prettyprinting \MF{} source. +\item[mpost] Creating technical diagrams. +\item[mpto] MetaPost label extraction. +\item[newer] Compare modification times. +\item[patgen] Creating hyphenation patterns. +\item[pktogf] Packed to generic fonts. +\item[pktype] PK to human-readable text. +\item[pltotf] Plain text property list to TFM. +\item[pooltype] Display \web{} pool files. +\item[tangle] \web{} to Pascal. +\item[tex] Typesetting. +\item[tftopl] TFM to plain text property list. +\item[vftovp] Virtual font to virtual property list. +\item[vptovf] Virtual property list to virtual font. +\item[weave] \web{} to \TeX. +\end{cmddescription} + +\noindent The precise functions and syntax of these programs are +described in the documentation of the individual packages and of \Webc{} +itself. However, knowing a few principles governing the whole family of +programs will help you take advantage of your \Webc{} installation. + +All programs honor these standard \acro{GNU} options: +\begin{ttdescription} +\item[-{}-help] print basic usage summary. +\item[-{}-verbose] print detailed progress report. +\item[-{}-version] print version information, then exit. +\end{ttdescription} + +For locating files the \Webc{} programs use the path searching library +\KPS{}. This library uses a combination of environment variables and a +configuration files to optimize searching the (huge) collection of +\TeX{} files. \Webc{} can look at more than one directory tree +simultaneously, which is useful in maintaining \TeX's standard +distribution and local extensions in two distinct trees. To speed up +file searches the root of each tree has a file \file{ls-R}, containing +an entry showing the name and relative pathname for all files under that +root. + +\subsection{Kpathsea path searching} + +Let us first describe the generic path searching mechanism of the \KPS{} +library. + +We call a \emph{search path} a colon- or semicolon\hyph sepa\-rated list +of \emph{path elements}, which are basically directory names. A +search path can come from (a combination of) many sources. To look up +a file \samp{my-file} along a path \samp{.:/dir}, \KPS{} checks each +element of the path in turn: first \file{./my-file}, then +\file{/dir/my-file}, returning the first match (or possibly all +matches). + +In order to adapt optimally to all operating systems' conventions, on +non-Unix systems \KPS{} can use filename separators different from +colon (\samp{:}) and slash (\samp{/}). + +To check a particular path element \var{p}, \KPS{} first checks if a +prebuilt database (see ``Filename data\-base'' on +page~\pageref{Filename-database}) applies to \var{p}, i.e., if the database +is in a directory that is a prefix of \var{p}. If so, the path +specification is matched against the contents of the database. + +If the database does not exist, or does not apply to this path +element, or contains no matches, the filesystem is searched (if this +was not forbidden by a specification starting with \samp{!!}\ and if +the file being searched for must exist). \KPS{} constructs the list +of directories that correspond to this path element, and then checks +in each for the file being sought. + +The ``file must exist'' condition comes into play with \samp{.vf} files and +input files read by \TeX's \cs{openin} command. Such files may not +exist (e.g., \file{cmr10.vf}), and so it would be wrong to search the +disk for them. Therefore, if you fail to update \file{ls-R} when you +install a new \samp{.vf} file, it will never be found. +Each path element is checked in turn: first the database, then the +disk. If a match is found, the search stops and the result is +returned. + +Although the simplest and most common path element is a directory +name, \KPS{} supports additional features in search paths: layered +default values, environment variable names, config file values, users' +home directories, and recursive subdirectory searching. Thus, we say +that \KPS{} \emph{expands} a path element, meaning it transforms all +the specifications into basic directory name or names. This is +described in the following sections in the same order as it takes +place. + +Note that if the filename being searched for is absolute or explicitly +relative, i.e., starts with \samp{/} or \samp{./} or \samp{../}, +\KPS{} simply checks if that file exists. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Path sources} +\label{Path-sources} + +A search path can come from many sources. In the order in which +\KPS{} uses them: + +\begin{enumerate} +\item + A user-set environment variable, for instance, \envname{TEXINPUTS}\@. + Environment variables with a period and a program name appended + override; e.g., if \samp{latex} is the name of the program being run, + then \envname{TEXINPUTS.latex} will override \envname{TEXINPUTS}. +\item + A program-specific configuration file, for exam\-ple, a line + \samp{S /a:/b} in \cmdname{dvips}'s \file{config.ps}. +\item A \KPS{} configuration file \file{texmf.cnf}, containing a line like + \samp{TEXINPUTS=/c:/d} (see below). +\item The compile-time default. +\end{enumerate} +\noindent You can see each of these values for a given +search path by using the debugging options (see ``Debugging actions'' +on page~\pageref{Debugging}). + +\subsubsection{Config files} + +\begingroup\tolerance=3500 +\KPS{} reads \emph{runtime configuration files} named \file{texmf.cnf} +for search path and other definitions. The search path used to look +for these files is named \envname{TEXMFCNF} (by default such a file lives +in the \file{texmf/web2c} subdirectory). \emph{All} +\file{texmf.cnf} files in the search path will be read and definitions +in earlier files override those in later files. Thus, with a search +path of \verb|.:$TEXMF|, values from \file{./texmf.cnf} override those +from \verb|$TEXMF/texmf.cnf|. +\endgroup + +\begin{itemize} +\item + Comments start with \code{\%} and continue to the end of the line. +\item + Blank lines are ignored. +\item + A \bs{} at the end of a line acts as a continuation character, + i.e., the next line is appended. Whitespace at the beginning of + continuation lines is not ignored. +\item + Each remaining line has the form: +\begin{alltt} + \var{variable}[.\var{progname}] [=] \var{value} +\end{alltt}% + where the \samp{=} and surrounding whitespace are optional. +\item + The \ttvar{variable} name may contain any character other + than whitespace, \samp{=}, or \samp{.}, but sticking to + \samp{A-Za-z\_} is safest. +\item + If \samp{.\var{progname}} is present, the definition only + applies if the program that is running is named + \texttt{\var{progname}} or \texttt{\var{progname}.exe}. This allows + different flavors of \TeX{} to have different search paths, for + example. +\item \var{value} may contain any characters except + \code{\%} and \samp{@}. The + \code{\$\var{var}.\var{prog}} feature is not available on the + right-hand side; instead, you must use an additional variable. A + \samp{;}\ in \var{value} is translated to \samp{:}\ if + running under Unix; this is useful to be able to have a single + \file{texmf.cnf} for Unix, \acro{MS-DOS} and Windows systems. +\item + All definitions are read before anything is expanded, so + variables can be referenced before they are defined. +\end{itemize} +A configuration file fragment illustrating most of these points is +\ifSingleColumn +shown below: + +\verbatiminput{examples/ex5.tex} +\else +shown in Figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Path expansion} +\label{Path-expansion} + + +\KPS{} recognizes certain special characters and constructions in +search paths, similar to those available in Unix shells. As a +general example, the complex path, +\verb+~$USER/{foo,bar}//baz+, expands to all subdirectories under +directories \file{foo} and \file{bar} in \texttt{\$USER}'s home +directory that contain a directory or file \file{baz}. These +expansions are explained in the sections below. +%$ +\subsubsection{Default expansion} +\label{Default-expansion} + +\tolerance=2500 +If the highest-priority search path (see ``Path sources'' on +page~\pageref{Path-sources}) contains an \emph{extra colon} (i.e., +leading, trailing, or doubled), \KPS{} inserts at that point the +next-highest-prio\-rity search path that is defined. If that inserted +path has an extra colon, the same happens with the next highest. For +example, given an environment variable setting + +\tolerance=1500 + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +and a \code{TEXINPUTS} value from \file{texmf.cnf} of + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +then the final value used for searching will be: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Since it would be useless to insert the default value in more than one +place, \KPS{} changes only one extra \samp{:}\ and leaves any others in +place. It checks first for a leading \samp{:}, then a trailing +\samp{:}, then a doubled \samp{:}. + +\subsubsection{Brace expansion} + +A useful feature is brace expansion, which means that, for instance, +\verb+v{a,b}w+ expands to \verb+vaw:vbw+. Nesting is allowed. +This is used to implement multiple \TeX{} hierarchies, by +assigning a brace list to \code{\$TEXMF}. +For example, in \file{texmf.cnf}, the following definition +(appproximately; there are actually even more trees) is made: +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +Using this you can then write something like +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +which means that, after looking in the current directory, the +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} +and \code{\$TEXMFMAIN/tex} trees \emph{only}) will be searched (the +last two use using \file{ls-R} data base files). It is a convenient +way for running two parallel \TeX{} structures, one ``frozen'' (on a +\CD, for instance) and the other being continuously updated with new +versions as they become available. By using the \code{\$TEXMF} +variable in all definitions, one is sure to always search the +up-to-date tree first. + +\subsubsection{Subdirectory expansion} +\label{Subdirectory-expansion} + +Two or more consecutive slashes in a path element following a directory +\var{d} is replaced by all subdirectories of \var{d}: first those +subdirectories directly under \var{d}, then the subsubdirectories under +those, and so on. At each level, the order in which the directories are +searched is \emph{unspecified}. + +If you specify any filename components after the \samp{//}, only +subdirectories with matching components are included. For example, +\samp{/a//b} expands into directories \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, and so on, but not \file{/a/b/c} or \file{/a/1}. + +Multiple \samp{//} constructs in a path are possible, but +\samp{//} at the beginning of a path is ignored. + +\subsubsection{List of special characters and their meaning: a summary} + +The following list summarizes the special characters in \KPS{} +configuration files. + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Separator in path specification; at the beginning or + the end of a path it substitutes the default path expansion.\par +\item[\CODE{;}] Separator on non-Unix systems (acts like \code{:}). +\item[\CODE{\$}] Variable expansion. +\item[\CODE{\string~}] Represents the user's home directory. +\item[\CODE{\char`\{...\char`\}}] Brace expansion. +\item[\CODE{//}] Subdirectory expansion (can occur anywhere in + a path, except at its beginning). +\item[\CODE{\%}] Start of comment. +\item[\CODE{\bs}] Continuation character (allows multi-line entries). +\item[\CODE{!!}] Search \emph{only} database to locate file, \emph{do + not} search the disk. +\end{ttdescription} + + +\subsection{Filename databases} +\label{Filename-database} + +\KPS{} goes to some lengths to minimize disk accesses for searches. +Nevertheless, at installations with enough directories, searching each +possible directory for a given file can take an excessively long time +(this is especially true if many hundreds of font directories have to +be traversed.) Therefore, \KPS{} can use an externally-built plain text +``database'' file named \file{ls-R} that maps files to directories, +thus avoiding the need to exhaustively search the disk. + +A second database file \file{aliases} allows you to give additional +names to the files listed in \file{ls-R}. This can be helpful to +confirm to \acro{DOS} 8.3 filename conventions in source files. + +\subsubsection{The filename database} +\label{ls-R} + +As explained above, the name of the main filename database must be +\file{ls-R}. You can put one at the root of each \TeX{} hierarchy in +your installation that you wish to be searched (\code{\$TEXMF} by +default); most sites have only one hierarchy. \KPS{} looks for +\file{ls-R} files along the \code{TEXMFDBS} path. + +The recommended way to create and maintain \samp{ls-R} is to run the +\code{mktexlsr} script included with the distribution. It is invoked +by the various \samp{mktex}\dots\ scripts. In principle, this script +just runs the command +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +presuming your system's \code{ls} produces the right output format +(\acro{GNU} \code{ls} is all right). To ensure that the database is +always up-to-date, it is easiest to rebuild it regularly via +\code{cron}, so that it is automatically updated when the installed +files change, such as after installing or updating a \LaTeX{} package. + +If a file is not found in the database, by default \KPS{} goes ahead +and searches the disk. If a particular path element begins with +\samp{!!}, however, \emph{only} the database will be searched for that +element, never the disk. + + +\subsubsection{kpsewhich: Standalone path searching} +\label{Invoking-kpsewhich} + +The \texttt{kpsewhich} program exercises path searching independent of any +particular application. This can be useful as a sort of \code{find} +program to locate files in \TeX{} hierarchies (this is used heavily in +the distributed \samp{mktex}\dots\ scripts). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +The options specified in \ttvar{option} start with either \samp{-} +or \samp{-{}-}, and any unambiguous abbreviation is accepted. + +\KPS{} looks up each non-option argument on the command line as a +filename, and returns the first file found. There is no option to +return all the files with a particular name (you can run the Unix +\samp{find} utility for that). + +The more important options are described next. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Set the resolution to \ttvar{num}; this only affects \samp{gf} + and \samp{pk} lookups. \samp{-D} is a synonym, for compatibility + with \cmdname{dvips}. Default is 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Set the format for lookup to \ttvar{name}. By default, the + format is guessed from the filename. For formats which do not have + an associated unambiguous suffix, such as \MP{} support files and + \cmdname{dvips} configuration files, you have to specify the name as + known to \KPS{}, such as \texttt{tex} or \texttt{enc files}. Run + \texttt{kpsewhich -{}-help} for a list. + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Set the mode name to \ttvar{string}; this only affects \samp{gf} + and \samp{pk} lookups. No default: any mode will be found. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Do everything possible to find the files, notably including + searching the disk. By default, only the \file{ls-R} database is + checked, in the interest of efficiency. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Search along the path \ttvar{string} (colon-separated as usual), + instead of guessing the search path from the filename. \samp{//} and + all the usual expansions are supported. The options \samp{-{}-path} + and \samp{-{}-format} are mutually exclusive. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Set the program name to \texttt{\var{name}}. + This can affect the search paths via the \texttt{.\var{progname}} + feature. + The default is \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + shows the path used for file lookups of file type \texttt{\var{name}}. + Either a filename extension (\code{.pk}, \code{.vf}, etc.) or a + name can be used, just as with \samp{-{}-format} option. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + sets the debugging options to \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Examples of use} +\label{SExamplesofuse} + +Let us now have a look at \KPS{} in action. Here's a straightforward search: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +We are looking for the file \file{article.cls}. Since the \samp{.cls} +suffix is unambiguous we do not need to specify that we want to look for a +file of type \optname{tex} (\TeX{} source file directories). We find it in +the subdirectory \file{tex/latex/base} below the \samp{texmf-dist} \TL\ +directory. Similarly, all of the following are found without problems +thanks to their unambiguous suffix. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +That last is a \BibTeX{} bibliography database for \textsl{TUGBoat} articles. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Font bitmap glyph files of type \file{.pk} are used by display +programs like \cmdname{dvips} and \cmdname{xdvi}. Nothing is returned in +this case since there are no pre-generated Computer Modern \samp{.pk} +files in \TL{}\Dash the Type~1 variants are used by default. +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} + +For these fonts (a phonetic alphabet from the University of Washington) +we had to generate \samp{.pk} files, and since the default \MF{} mode on +our installation is \texttt{ljfour} with a base resolution of 600\dpi{} +(dots per inch), this instantiation is returned. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +In this case, when specifying that we are interested in a resolution +of 300\dpi{} (\texttt{-dpi=300}) we see that no such font is available on +the system. A program like \cmdname{dvips} or \cmdname{xdvi} would +go off and actually build the required \texttt{.pk} files +using the script \cmdname{mktexpk}. + +Next we turn our attention to \cmdname{dvips}'s header and configuration +files. We first look at one of the commonly used files, the general +prolog \file{tex.pro} for \TeX{} support, before turning our attention +to the generic configuration file (\file{config.ps}) and the \PS{} font +map \file{psfonts.map}\Dash as of 2004, map and encoding files have +their own search paths and new location in \dirname{texmf} trees. As +the \samp{.ps} suffix is ambiguous we have to specify explicitly which +type we are considering (\optname{dvips config}) for the file +\texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +We now take a closer look at the \acro{URW} Times \PS{} support +files. The prefix for these in the standard font naming scheme is +\samp{utm}. The first file we look at is the configuration file, +which contains the name of the map file: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +The contents of that file is +\begin{alltt} + p +utm.map +\end{alltt} +which points to the file \file{utm.map}, which we want to +locate next. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +This map file defines the file names of the Type~1 \PS{} fonts in +the URW collection. Its contents look like (we only show part of the +lines): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +It should be evident from these examples how you can easily locate the +whereabouts of a given file. This is especially important if you suspect +that the wrong version of a file is picked up somehow, since +\cmdname{kpsewhich} will show you the first file encountered. + +\subsubsection{Debugging actions} +\label{Debugging} + +Sometimes it is necessary to investigate how a program resolves file +references. To make this practical, \KPS{} offers various levels of +debugging output: + +\begin{ttdescription} +\item[\texttt{\ 1}] \texttt{stat} calls (disk lookups). When running + with an up-to-date \file{ls-R} database this should almost give no + output. +\item[\texttt{\ 2}] References to hash tables (such as \file{ls-R} + databases, map files, configuration files). +\item[\texttt{\ 4}] File open and close operations. +\item[\texttt{\ 8}] General path information for file types + searched by \KPS. This is useful to find out where a particular + path for the file was defined. +\item[\texttt{16}] Directory list for each path element (only relevant + for searches on disk). +\item[\texttt{32}] File searches. +\end{ttdescription} +A value of \texttt{-1} will set all the above options; in practice, +this is usually the most convenient. + +Similarly, with the \cmdname{dvips} program, by setting a combination of +debug switches, one can follow in detail where files are being picked up +from. Alternatively, when a file is not found, the debug trace shows in +which directories the program looks for the given file, so that one can +get an indication what the problem~is. + +Generally speaking, as most programs call the \KPS{} library +internally, one can select a debug option by using the +\envname{KPATHSEA\_DEBUG} environment variable, and setting it to (a +combination of) values as described in the above list. + +(Note for Windows users: it is not easy to redirect +all messages to a file in this system. For diagnostic purposes +you can temporarily \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Let us consider, as an example, a small \LaTeX{} source file, +\file{hello-world.tex}, which contains the following input. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +This little file only uses the font \file{cmr10}, so let us look at +how \cmdname{dvips} prepares the \PS{} file (we want to use the Type~1 +version of the Computer Modern fonts, hence the option \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In this case we have combined \cmdname{dvips}'s debug class 4 (font +paths) with \KPS's path element expansion (see \cmdname{dvips} Reference +Manual, \OnCD{texmf/doc/html/dvips/dvips_toc.html}). +The output (slightly rearranged) appears in +Figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} starts by locating its working files. First, +\file{texmf.cnf} is found, which gives the definitions of the search +paths for the other files, then the file database \file{ls-R} (to +optimize file searching) and the file \file{aliases}, which makes it +possible to declare several names (e.g., a short \acro{DOS}-like 8.3 and +a more natural longer version) for the same file. Then \cmdname{dvips} +goes on to find the generic configuration file \file{config.ps} +before looking for the customization file \file{.dvipsrc} (which, in +this case is \emph{not found}). Finally, \cmdname{dvips} locates the +config file for the Computer Modern \PS{} fonts \file{config.cms} +(this was initiated with the \texttt{-Pcms} option on the \cmdname{dvips} +command). This file contains the list of the map files which +define the relation between the \TeX{}, \PS{} and file system +names of the fonts. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} thus goes on to find all these files, plus the generic +map file \file{psfonts.map}, which is always loaded (it contains +declarations for commonly used \PS{} fonts; see the last part of +Section \ref{SExamplesofuse} for more details about \PS{} map +file handling). + +At this point \cmdname{dvips} identifies itself to the user: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Then it goes on to look for the prolog file \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Then it goes on to look for the prolog file \file{texc.pro} (see +Figure~\ref{fig:dvipsdbgb}). +\fi + +After having found the file in question, \cmdname{dvips} outputs +date and time, and informs us that it will generate the +file \file{hello-world.ps}, then that it needs the font file +\file{cmr10}, and that the latter is declared as ``resident'' (no +bitmaps needed): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Now the search is on for the file \file{cmr10.tfm}, which is found, +then a few more prolog files (not shown) are referenced, and finally +the Type~1 instance \file{cmr10.pfb} of the font is located and +included in the output file (see last line). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Runtime options} + +Another useful feature of \Webc{} is its possibility to control a number +of memory parameters (in particular, array sizes) via the runtime file +\file{texmf.cnf} read by \KPS{}. The memory settings can be found in +Part 3 of that file in the \TL{} distribution. The more important +are: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + Total words of memory available, for + \TeX{}, \MF{} and \MP. You must make a new format file for each + different setting. For instance, you could generate a ``huge'' + version of \TeX{}, and call the format file \texttt{hugetex.fmt}. + Using the standard way of specifying the program name used by \KPS{}, + the particular value of the \texttt{main\_memory} variable will then + be read from \file{texmf.cnf}. + etc.). +\item[\texttt{extra\_mem\_bot}] + Extra space for ``large'' \TeX{} data structures: + boxes, glue, breakpoints, etc. Especially useful if you use + \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Number of words for font information available for \TeX. This + is more or less the total size of all TFM files read. +\item[\texttt{hash\_extra}] + Additional space for the hash table of control sequence names. + Approximately 10,000 control sequences can be stored in the main + hash table; if you have a large book with numerous cross-references, + this might not be enough. The default value of + \texttt{hash\_extra} is \texttt{50000}. +\end{ttdescription} + +\noindent Of course, this facility is no substitute for truly dynamic +arrays and memory allocation, but since these are extremely difficult to +implement in the present \TeX{} source, these runtime parameters provide +a practical compromise allowing some flexibility. + + +\begin{comment} +\section{Building on a new Unix platform} + +If you have a platform for which executables are not included, you will +need to compile \TeX{} and friends. This is not as hard as it +sounds. What you need is all in the directory \texttt{source} in the +distribution. + +\subsection{Prerequisites} + +You will need at least 100 megabytes of disk space to compile all of +\TeX{} and its support programs. You'll also need an \acro{ANSI} C +compiler, a \cmdname{make} utility, a lexical scanner, and a parser +generator. We recommend the \acro{GNU} version of these programs +(\cmdname{gcc}, \acro{GNU} \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). You may be able to work with other C compilers and +\cmdname{make} programs, but you will need a good understanding of +building Unix programs to sort out problems. + +Also, the command \texttt{uname} must return a sensible value. + + +\subsection{Configuration} + +To begin, perform a normal installation of \TL{} to your disk (see +section~\ref{sec:unix-install-disk} on +\p.\pageref{sec:unix-install-disk}). You may wish to skip installing +all of the prebuilt binaries. + +Then, unpack the source from the compressed \texttt{tar} file in the +directory \dirname{source} to your disk and change directory to where +you placed it. + +Next, run \cmdname{configure} with a command line like this: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +The \optname{-prefix} directory is the one where you installed the +support tree; the directory layout will be as follows (where \$TEXDIR +stands for the directory you chose): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & main tree with fonts,\\ + & \qquad macros, etc\\ + \dirname{$TEXDIR/man} & Unix manual pages\\ + \dirname{$TEXDIR/info} & \acro{GNU} style Info manuals\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaries\\ +\end{tabular} +%$ + +If you want to leave out the \dirname{$PLATFORM} directory level, +i.e., put the binaries directly into \dirname{$TEXDIR/bin}, specify +the \verb|--disable-multiplatform| option to \cmdname{configure}. + +Have a look at the output of \verb|./configure --help| for more +options you can use. For example, you can skip building of \OMEGA{} and +\eTeX{}. + + +\subsection{Running \cmdname{make}} + +Make sure the shell variable or option \texttt{noclobber} is not set. +Then, run the main \cmdname{make} like this: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +and relax\ldots + +Alternatively, you want to log all the output, as in: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Before you believe that everything went ok, please check the log file +for errors: \acro{GNU} \cmdname{make} always uses the string \samp{***} +whenever a command fails. Also, check if all the programs were built: + +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +The result should be over 200 (you can check the exact number with the +\dirname{bin} directory contents in the distribution). + +If you need special privileges for \texttt{make install}, you can +separate the \samp{make world} into two different runs, like this: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +After you've installed your new binaries, you should follow the normal +post-installation procedures, given in section~\ref{sec:postinstall} +(\p.\pageref{sec:postinstall}). + +Also, if you'd like to make your binaries available to others, please +contact us. We'll be happy to put them on the \TL\ web pages. +\end{comment} + +\section{Acknowledgements} + +\TL{} is a joint effort by virtually all of the \TeX{} user groups. +This edition of \TL{} was overseen by Sebastian Rahtz and Karl Berry. +The other principal contributors are listed below. + +\begin{itemize*} + +\item The German-speaking \TeX{} Users (\acro{DANTE} e.V.), who provide +the hardware for the \TL{} source repository; and Rainer Sch\"opf and +Reinhard Zierke who look after it. \acro{DANTE} officers Volker Schaa +and Klaus H\"oppner coordinate production with the Lehmann's Bookstore +(\url{http://www.lob.de}). + +\item The Perforce corporation (\url{http://www.perforce.com}), for providing +a free copy of their excellent change management system, which we use +to manage the \TL{} sources. + +\item Peter Breitenlohner and the \eTeX\ team for the stable foundation +of future \TeX's. + +\item Thomas Esser, without whose marvelous \teTeX{} package \TL{} +would certainly not exist, and whose continual help makes it a better +product. + +\item Michel Goossens, who co-authored the original documentation. + +\item Eitan Gurari, whose \TeX4ht was used to create the \HTML{} +version of this documentation, and who worked tirelessly to improve +it at short notice. + +\item Hans Hagen, for major testing and making the \ConTeXt\ format +conform to \TL's needs. + +\item Pawe{\l} Jackowski, for the Windows installer \cmdname{tlpm}, +and Tomasz {\L}uczak, for \cmdname{tlpmgui}. + +\item \Thanh, Martin Schr\"oder, and the pdf\TeX\ team for continuing +enhancements of \TeX's abilities. + +\item Petr Olsak, who coordinated and checked all the Czech and Slovak +material very carefully. + +\item Fabrice Popineau, for the Windows binaries in \TL{}. + +\item Staszek Wawrykiewicz, the principal tester for all of \TL{}, +and coordinator of the many major Polish contributions: fonts, Windows +installation, and more. + +\item Olaf Weber, for his patient assembly and maintenance of Web2C, +upon which all else depends. + +\item Gerben Wierda, for creating and maintaining the \MacOSX\ support, +and much integration and testing. + +\item Graham Williams, on whose work the catalogue of packages depends. + +\end{itemize*} + +Builders of the binaries: +Tigran Aivazian (\pkgname{x86\_64-linux}), +Manfred Lotz (\pkgname{i386-freebsd}), +Fabrice Popineau (\pkgname{win32}), +Norbert Preining (\pkgname{alpha-linux}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-linux}, + \pkgname{sparc-solaris}), +Staszek Wawrykiewicz (\pkgname{i386-linux}), +Olaf Weber (\pkgname{mips-irix}), +Gerben Wierda (\pkgname{i386-darwin}, \pkgname{powerpc-darwin}). + +Documentation and translation updates: +Karl Berry (English), +Daniel Flipo \& Fabrice Popineau (French), +G\"unter Partosch \& Hartmut Henkel (German), +Petr Sojka \& Jan Busa (Czech\slash Slovak), +Boris Veytsman (Russian), +Staszek Wawrykiewicz (Polish). + +Of course the most important acknowledgement must go to Donald Knuth, first +for inventing \TeX, and then for giving it to the world. + + +\section{Release history} +\label{sec:history} + +\subsection{Past} + +Discussion began in late 1993 when the Dutch \TeX{} Users Group was +starting work on its 4All\TeX{} \CD{} for \acro{MS-DOS} users, and it +was hoped at that time to issue a single, rational, \CD{} for all +systems. This was too ambitious a target for the time, but it did spawn +not only the very successful 4All\TeX{} \CD{}, but also the \acro{TUG} +Technical Council working group on a \emph{\TeX{} Directory Structure} +(\url{http://tug.org/tds}), which specified how to create consistent and +manageable collections of \TeX{} support files. A complete draft of the +\TDS{} was published in the December 1995 issue of \textsl{TUGboat}, and +it was clear from an early stage that one desirable product would be a +model structure on \CD{}. The distribution you now have is a very direct +result of the working group's deliberations. It was also clear that the +success of the 4All\TeX{} \CD{} showed that Unix users would benefit +from a similarly easy system, and this is the other main strand of +\TL. + +We first undertook to make a new Unix-based \TDS{} \CD{} in the autumn +of 1995, and quickly identified Thomas Esser's \teTeX{} as the ideal +setup, as it already had multi-platform support and was built with +portability across file systems in mind. Thomas agreed to help, and work +began seriously at the start of 1996. The first edition was released in +May 1996. At the start of 1997, Karl Berry completed a major new release +of Web2c, which included nearly all the features which Thomas Esser had +added in \teTeX, and we decided to base the 2nd edition of the \CD{} on +the standard \Webc, with the addition of \teTeX's \texttt{texconfig} +script. The 3rd edition of the \CD{} was based on a major revision of +\Webc, 7.2, by Olaf Weber; at the same time, a new revision of \teTeX +was being made, and \TL{} included almost all of its features. The +4th edition followed the same pattern, using a new version of \teTeX, +and a new release of \Webc{} (7.3). The system now included a complete +Windows setup. + +For the 5th edition (March 2000) many parts of the \CD{} were revised +and checked, updating hundreds of packages. Package details were stored +in XML files. But the major change for \TeX\ Live 5 was that all +non-free software was removed. Everything in \TL{} is now intended +to be compatible with the Debian Free Software Guidelines +(\url{http://www.debian.org/intro/free}); we have done our best to check +the license conditions of all packages, but we would very much +appreciate hearing of any mistakes. + +The 6th edition (July 2001) had much more material updated. The major +change was a new install concept: the user could select a more exact set +of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, +etc., but also prepares an appropriate \texttt{language.dat}. + +The 7th edition of 2002 had the notable addition of \MacOSX{} support, +and the usual myriad of updates to all sorts of packages and +programs. An important goal was integration of the source back with +\teTeX, to correct the drift apart in versions~5 and~6. + +\subsubsection{2003} + +In 2003, with the continuing flood of updates and additions, we found +that \TL{} had grown so large it could no longer be contained on a +single \CD, so we split it into three different distributions (see +section~\ref{sec:multiple-dist}, \p.\pageref{sec:multiple-dist}). In +addition: + +\begin{itemize*} +\item At the request of the \LaTeX{} team, we changed the standard + \cmdname{latex} and \cmdname{pdflatex} commands to now use \eTeX{} (see + \p.\pageref{text:etex}). +\item The new Latin Modern fonts were included (and are recommended). +\item Support for Alpha \acro{OSF} was removed + (\acro{HPUX} support was removed previously), since no one had (or + volunteered) hardware available on which to compile new binaries. +\item Windows setup was substantially changed; for the first time + an integrated environment based on XEmacs was introduced. +\item Important supplementary programs for Windows + (Perl, Ghost\-script, Image\-Magick, Ispell) are now installed + in the \TL{} installation directory. +\item Font map files used by \cmdname{dvips}, \cmdname{dvipdfm} + and \cmdname{pdftex} are now generated by the new program + \cmdname{updmap} and installed into \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{}, and \MP{} now, by default, output most input + characters (32 and above) as themselves in output (e.g., + \verb|\write|) files, + log files, and the terminal, i.e., \emph{not} translated using the + \verb|^^| notation. In \TL{}~7, this translation was + dependent on the system locale settings; now, locale settings do + not influence the \TeX{} programs' behavior. If for some reason + you need the \verb|^^| output, rename the file + \verb|texmf/web2c/cp8bit.tcx|. (Future releases will have cleaner + ways to control this.) +\item This documentation was substantially revised. +\item Finally, since the edition numbers had grown unwieldy, + the version is now simply identified by the year: \TL{} 2003. +\end{itemize*} + + +\subsubsection{2004} + +2004 saw many changes: + +\begin{itemize} + +\item If you have locally-installed fonts which use their own +\filename{.map} or (much less likely) \filename{.enc} support files, you +may need to move those support files. + +\filename{.map} files are now searched for in subdirectories of +\dirname{fonts/map} only (in each \filename{texmf} tree), along the +\envname{TEXFONTMAPS} path. Similarly, \filename{.enc} files are now +searched for in subdirectories of \dirname{fonts/enc} only, along the +\envname{ENCFONTS} path. \cmdname{updmap} will attempt to warn about +problematic files. + +For methods of handling this and other information, please see +\url{http://tug.org/texlive/mapenc.html}. + +\item The \TK\ has been expanded with the addition of a \MIKTEX-based +installable \CD, for those who prefer that implementation to Web2C. +See section~\ref{sec:struct-tl} (\p.\pageref{sec:struct-tl}). + +\item Within \TL, the single large \dirname{texmf} tree of previous +releases has been replaced by three: \dirname{texmf}, +\dirname{texmf-dist}, and \dirname{texmf-doc}. See +section~\ref{sec:tld} (\p.\pageref{sec:tld}), and the \filename{README} +files for each. + +\item All \TeX-related input files are now collected in +the \dirname{tex} subdirectory of \dirname{texmf*} trees, rather than +having separate sibling directories \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex}, etc. See +\CDref{texmf-doc/doc/english/tds/tds.html\#Extensions} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Extensions}}. + +\item Helper scripts (not meant to be invoked by users) are now located +in a new \dirname{scripts} directory of \dirname{texmf*} trees, and +searched for via \verb|kpsewhich -format=texmfscripts|. So if you have +programs which call such scripts, they'll need to be adjusted. See +\CDref{texmf-doc/doc/english/tds/tds.html\#Scripts} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Scripts}}. + +\item Almost all formats leave most characters printable as +themselves via the ``translation file'' \filename{cp227.tcx}, instead of +translating them with the \verb|^^| notation. Specifically, characters +at positions 32--256, plus tab, vertical tab, and form feed are +considered printable and not translated. The exceptions are plain \TeX\ +(only 32--126 printable), \ConTeXt\ (0--255 printable), and the +\OMEGA-related formats. This default behavior is almost the same as in +\TL\,2003, but it's implemented more cleanly, with more possibilities +for customization. See \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. +(By the way, with Unicode input, \TeX\ may output partial character +sequences when showing error contexts, since it is byte-oriented.) + +\item \textsf{pdfetex} is now the default engine for all formats +except (plain) \textsf{tex} itself. (Of course it generates \acro{DVI} +when run as \textsf{latex}, etc.) This means, among other things, that +the microtypographic features of \textsf{pdftex} are available in +\LaTeX, \ConTeXt, etc., as well as the \eTeX\ features +(\OnCD{texmf-dist/doc/etex/base/}). + +It also means it's \emph{more important than ever} to use the +\pkgname{ifpdf} package (works with both plain and \LaTeX) or equivalent +code, because simply testing whether \cs{pdfoutput} or some other +primitive is defined is not a reliable way to determine if \acro{PDF} +output is being generated. We made this backward compatible as best we +could this year, but next year, \cs{pdfoutput} may be defined even when +\acro{DVI} is being written. + +\item pdf\TeX\ (\url{http://pdftex.org}) has many new features: + + \begin{itemize*} + + \item \cs{pdfmapfile} and \cs{pdfmapline} provide font map support + from within a document. + + \item Microtypographic font expansion can be used more easily.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item All parameters previously set through the special configuration + file \filename{pdftex.cfg} must now be set through primitives, + typically in \filename{pdftexconfig.tex}; \filename{pdftex.cfg} is no + longer supported. Any extant \filename{.fmt} files must be redumped + when \filename{pdftexconfig.tex} is changed. + + \item See the pdf\TeX\ manual for more: \OnCD{texmf/doc/pdftex/manual}. + + \end{itemize*} + +\item The \cs{input} primitive in \cmdname{tex} (and \cmdname{mf} and +\cmdname{mpost}) now accepts double quotes containing spaces and other +special characters. Typical examples: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +See the Web2C manual for more: \OnCD{texmf/doc/web2c}. + +\item enc\TeX\ support is now included within Web2C and consequently all +\TeX\ programs, via the \optname{-enc} option\Dash \emph{only when +formats are built}. enc\TeX\ supports general re-encoding of input and +output, enabling full support of Unicode (in \acro{UTF}-8). See +\OnCD{texmf-dist/doc/generic/enctex/} and +\url{http://www.olsak.net/enctex.html}. + +\item Aleph, a new engine combining \eTeX\ and \OMEGA, is available. +A little information is available in \OnCD{texmf-dist/doc/aleph/base} +and \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. The +\LaTeX-based format for Aleph is named \textsf{lamed}. + +\item The latest \LaTeX\ release has a new version of the +\acro{LPPL}\Dash now officially a Debian-approved license. Assorted +other updates, see the \filename{ltnews} files in +\OnCD{texmf-dist/doc/latex/base}. + +\item \cmdname{dvipng}, a new program for converting \acro{DVI} to +\acro{PNG} image files, is included. See \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item We reduced the \pkgname{cbgreek} package to a ``medium'' sized set +of fonts, with the assent and advice of the author (Claudio Beccari). +The excised fonts are the invisible, outline, and transparency ones, +which are relatively rarely used, and we needed the space. The full set +is of course available from \acro{CTAN} +(\url{http://www.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} has been removed; just use \cmdname{xdvi}. + +\item The \cmdname{ini} and \cmdname{vir} commands (links) for +\cmdname{tex}, \cmdname{mf}, and \cmdname{mpost} are no longer created, +such as \cmdname{initex}. The \cmdname{ini} functionality has been +available through the command-line option \optname{-ini} for years now. + +\item \textsf{i386-openbsd} platform support was removed. Since the +\pkgname{tetex} package in the \acro{BSD} Ports system is available, and +\acro{GNU/}Linux and Free\acro{BSD} binaries were available, it seemed +volunteer time could be better spent elsewhere. + +\item On \textsf{sparc-solaris} (at least), you may have to set the +\envname{LD\_LIBRARY\_PATH} environment variable to run the +\pkgname{t1utils} programs. This is because they are compiled with C++, +and there is no standard location for the runtime libraries. (This is +not new in 2004, but wasn't previously documented.) Similarly, on +\textsf{mips-irix}, the \acro{MIPS}pro 7.4 runtimes are required. + +\end{itemize} + +\subsection{Present} +\label{tlcurrent} + +2005 saw the usual huge number of updates to packages and programs. +The infrastructure stayed relatively stable from 2004, but inevitably +there were some changes there as well: + +\begin{itemize} + +\item New scripts \cmdname{texconfig-sys}, \cmdname{updmap-sys}, and + \cmdname{fmtutil-sys} were introduced, which modify the + configuration in the system trees. The \cmdname{texconfig}, + \cmdname{updmap}, and \cmdname{fmtutil} scripts now modify + user-specific files, under \dirname{$HOME/.texlive2005}. + See section~\ref{sec:texconfig}, \p.\pageref{sec:texconfig}. + +\item Corresponding new variables \envname{TEXMFCONFIG} and + \envname{TEXMFSYSCONFIG} to specify the trees where configuration + files (user or system, respectively) are found. Thus, you may + need to move personal versions of \filename{fmtutil.cnf} and + \filename{updmap.cfg} to these places; another option is to + redefine \envname{TEXMFCONFIG} or \envname{TEXMFSYSCONFIG} in + \filename{texmf.cnf}. In any case the real location of these files + and the values of \envname{TEXMFCONFIG} and \envname{TEXMFSYSCONFIG} + must agree. + See section~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. + +\item Last year, we kept \verb|\pdfoutput| and other primitives undefined + for DVI output, even though the \cmdname{pdfetex} program was + being used. This year, as promised, we undid that compatibility + measure. So if your document uses \verb|\ifx\pdfoutput\undefined| + to test if PDF is being output, it will need to be changed. You + can use the package \pkgname{ifpdf.sty} (which works under both + plain \TeX\ and \LaTeX) to do this, or steal its logic. + +\item Last year, we changed most formats to output (8-bit) characters as + themselves (see previous section). The new TCX file + \filename{empty.tcx} now provides an easier way to get the + original \verb|^^| notation if you so desire, as in: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + +\item The new program \cmdname{dvipdfmx} is included for translation of + DVI to PDF; this is an actively maintained update of + \cmdname{dvipdfm} (which is also still available for now, though + no longer recommended). + +\item The new programs \cmdname{pdfopen} and \cmdname{pdfclose} are included + to allow reloading of pdf files in the Adobe Acrobat Reader without + restarting the program. (Other pdf readers, notably \cmdname{xpdf}, + \cmdname{gv}, and \cmdname{gsview}, have never suffered from this + problem.) + +\item For consistency, the variables \envname{HOMETEXMF} and + \envname{VARTEXMF} have been renamed to \envname{TEXMFHOME} and + \envname{TEXMFSYSVAR}, respectively. There is also + \envname{TEXMFVAR}, which is by default user-specific. See the + first point above. + +\end{itemize} + +\subsection{Future} + +\emph{\TL{} is not perfect!} (And never will be.) We intend to +continue to release new versions yearly, and would like to provide more +help material, more utilities, more installation programs, and (of +course) an ever-improved and checked tree of macros and fonts. This work +is all done by hard-pressed volunteers in their limited spare time, and +a great deal remains to be done. If you can help, don't hesitate to put +your name forward! + +Please send corrections, suggestions, and offers of help to:\hfill\null +\begin{quote} +Sebastian Rahtz \ / \ 7 Stratfield Road \ / \ Oxford OX2 7BG \ / \ UK \\ +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Happy \TeX ing!} + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2007.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2007.tex new file mode 100644 index 00000000000..8232db8becf --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2007.tex @@ -0,0 +1,3264 @@ +% $Id: live.tex 3938 2007-02-06 01:49:45Z karl $ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +\documentclass{article} +\let\tldocenglish=1 % for live4ht.cfg +\usepackage{tex-live} +\begin{document} + +\title{% + {\huge \textit{The \protect\TL{} Guide}\\\strut} + {\LARGE \textsf{\TL{} 2007}} +} + +\author{Karl Berry, editor \\[3mm] + \url{http://tug.org/texlive/} + } + +\date{January 2007} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +\listoftables +\end{multicols} + +\section{Introduction} +\label{sec:intro} + +This document describes the main features of the \TL{} software +distribution\Dash \TeX{} and friends for \acro{GNU}/Linux and other Unix +flavors, \MacOSX, and (32-bit) Windows systems. (Warning: it is not +especially useful for older Mac or \acro{MS-DOS} systems.) + +\TL{} includes executables for \TeX{}, \LaTeXe{}, \ConTeXt, \MF, \MP, +\BibTeX{} and many other programs; an extensive collection of macros, +fonts and documentation; and support for typesetting in many different +scripts from around the world. It is part of the even larger \TK{} +(briefly described below in section~\ref{sec:struct-tl}, +\p.\pageref{sec:struct-tl}). Both are cooperative efforts by the \TeX\ +user groups. + +For newer versions of the packages included here, please check +\acro{CTAN}: \url{http://www.ctan.org}. + +For a brief summary of the major changes in this edition of \TL{}, +see the end of the document, section~\ref{sec:history} +(\p.\pageref{sec:history}). + + +\subsection{Basic usage of \protect\TL{}} +\label{sec:basic} + +You can use \TL{} in three principal ways: + +\begin{enumerate} + +\item You can run \TL{} directly from the \pkgname{live} \DVD +(see section~\ref{sec:multiple-dist}, \p.\pageref{sec:multiple-dist}). +This takes almost no disk space, and gives you immediate access to +everything in \TL{}. Of course performance will be worse than running +on local disk, but you may well find it useful. + +\item You can install all or part of \TL{} to a local disk, from either +the \DVD\ or the \pkgname{inst} \acro{CD}. This is the most common use +of \TL. You will need (approximately) 100 megabytes for the most +minimal system, and upwards of 1.3 gigabytes for a full system. + +\item You can integrate a particular package or collection into your +existing \TeX{} system, either a \TL{} system you installed +earlier, or a different system. + +\end{enumerate} + +\noindent All of these are described in detail in the \acro{OS}-specific +installation sections following, but here is a quick start: + +\begin{itemize*} + +\item The main installation script for Unix and \MacOSX{} is +\texttt{install-tl.sh}. +GNU/Linux users can also try a new GUI installation program: +run \texttt{setuptl/tlpmgui}. More information +can be found in section \ref{sec:win-install} on +p.~\pageref{sec:win-install}. + +\item The single package installation script is \texttt{install-pkg.sh}. +(After installation on Linux with \texttt{tlpmgui}, you can also try +running \texttt{tlpmgui} again to add or remove individual packages or +collections.) + +\item The installation program for Windows is \texttt{tlpmgui.exe}. +It can be used also for adding or removing the packages. +See section~\ref{sec:win-install} below for more information. + +\end{itemize*} + + +\subsection{Getting help} +\label{sec:help} + +The \TeX{} community is both active and friendly, and virtually all +serious questions end up getting answered. However, the support is +informal, done by volunteers and casual readers, so it's especially +important that you do your homework before asking. (If you prefer +guaranteed commercial support, you can forego \TL{} completely and +purchase a vendor's system; \url{http://tug.org/interest.html#vendors} +has a list.) + +Here is a list of resources, approximately in the order we recommend +using them: + +\begin{description} +\item [Getting Started] If you are new to \TeX, the web page +\url{http://tug.org/begin.html} gives a brief introduction to the system. + +\item [\TeX{} \acro{FAQ}] The \TeX{} \acro{FAQ} is a huge compendium of +answers to all sorts of questions, from the most basic to the most +arcane. It is included on \TL{} in \OnCD{texmf-doc/doc/english/FAQ-en}, and is +available on the Internet through \url{http://www.tex.ac.uk/faq}. +Please check here first. + +\item [\TeX{} Catalogue] If you are looking for a specific package, +font, program, etc., the \TeX{} Catalogue is the place to look. It is a +huge collection of all \TeX{}-related items. See +\OnCD{texmf-doc/doc/english/catalogue}, or +\url{http://www.ctan.org/tex-archive/help/Catalogue}. + +\item [\TeX{} Web Resources] The web page +\url{http://tug.org/interest.html} has many \TeX{}-related links, in +particular for numerous books, manuals, and articles on all aspects of +the system. + +\item [support archives] The two principal support forums are the +Usenet newsgroup \url{news:comp.text.tex} and the mailing list +\email{texhax@tug.org}. Their archives have years of past +questions and answers for your searching pleasure, via +\url{http://groups.google.com/groups?group=comp.text.tex} and +\url{http://tug.org/mail-archives/texhax}, respectively. And a general web +search, for example on \url{http://google.com}, never hurts. + +\item [asking questions] If you cannot find an answer, you can post to +\dirname{comp.text.tex} through Google or your newsreader, or to +\email{texhax@tug.org} through email. But before you post, +\emph{please} read this \acro{FAQ} entry on asking questions in such a +way that you're most likely to get an answer: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + +\item [\TL{} support] If you want to report a bug or have +suggestions or comments on the \TL{} distribution, installation, or +documentation, the mailing list is \email{tex-live@tug.org}. However, +if your question is about how to use a particular program included in +\TL{}, you are better off writing to that program's maintainer or +mailing list. + +\end{description} + +The other side of the coin is helping others who have questions. Both +\dirname{comp.text.tex} and \code{texhax} are open to anyone, so feel +free to join, start reading, and help out where you can. Welcome to +\TeX{}! + + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{Structure of \protect\TeX\protect\ Live} +\label{sec:struct-tl} + +This section describes the structure and contents of \TL{} and the +\TK{} of which it is a part. + +\subsection{Multiple distributions: \protect\pkgname{live}, + \protect\pkgname{inst}, + \protect\pkgname{protext}} +\label{sec:multiple-dist} + +Space limitations of \acro{CD-ROM} format have forced us to divide +\TK{} into several distributions, as follows. + +\begin{description} + +\item [live] A complete system on \acro{DVD}; it is too large +for \acro{CD}. It can be run live or installed to disk. It also +includes a snapshot of the \CTAN{} repository, the \pkgname{protext} +distribution for Windows and the Mac\TeX\ distribution for \MacOSX, entirely +independent of \TL{}, as well as assorted other packages in a +\texttt{texmf-extra} directory. + +\CTAN{}, \pkgname{protext}, Mac\TeX, and \texttt{texmf-extra} do not follow +the same copying conditions as \TL{}, so be careful when redistributing or +modifying. + +\item [inst(allable)] A complete system on \CD; in order to make this fit, +the packages and programs are compressed. Therefore, it is not possible +to run \TeX\ directly from the installable \CD, you have to install it +to disk (hence its name). Installation is described in subsequent sections. + +\item [protext] An enhancement of the \MIKTEX\ distribution for Windows, +\ProTeXt\ adds a few extra tools to \MIKTEX, and simplifies +installation. It is entirely independent of \TL{}, and has its own +installation instructions. It can be run live, or installed to disk. +The \ProTeXt\ home page is \url{http://tug.org/protext}. + +\ProTeXt\ is provided as both the top level of the \pkgname{live} \DVD\ +and on its own \CD\ (for those who cannot use the \DVD). + +\end{description} + +\noindent You can tell which type of distribution you're in by looking +for a \texttt{00\var{type}.TL} file at the top of the \TL{} directory. +This file also contains the \TL{} release date. + +Naturally, each user group chooses what to distribute to its own members. + + +\subsection{Top level directories} +\label{sec:tld} + +Here is a brief listing and description of the top level directories in +the \TL{} distribution. On the \pkgname{live} \DVD, the entire \TL{} +hierarchy is in a subdirectory \dirname{texliveYYYY}, not at the top +level of the disc. + +\smallskip +\begingroup + \renewcommand{\arraystretch}{1.3} % open up interrow spacing +\begin{tabular}{>{\ttfamily}lp{.78\hsize}} +bin & The \TeX{} system programs, arranged by platform. \\ +source & The source of all programs, including the main \Webc{} + \TeX{} and \MF{} distributions. These are stored in a + \cmdname{bzip2}-compressed tar archive. \\ +setuptl & Installation programs for Linux and Windows. \\ +support & Assorted auxiliary packages and programs. These are + \emph{not} installed automatically. This includes + assorted editors and \TeX\ shells. \\ +texmf & Tree for the programs, along with their support files and + documentation. Does not include \TeX\ formats and packages. + (\texttt{TEXMFMAIN} in the next section.) \\ +texmf-dist & The main tree of formats and packages. + (\texttt{TEXMFDIST} in the next section.) \\ +texmf-doc & Tree for self-contained pure documentation, arranged by + language. \\ +texmf-var & Tree for files automatically generated and stored. + (\texttt{TEXMFSYSVAR} in the next section.) \\ +\end{tabular} +\endgroup + +\smallskip + +In addition to the directories above, the installation scripts and +\filename{README} files (in various languages) are at the top level of +the distribution. + +The \dirname{texmf-doc} directory contains only documentation, but +it does not contain all the documentation. The documentation for the +programs (manuals, man pages, Info files) is in \dirname{texmf/doc}, +since the programs are in \dirname{texmf}. Similarly, the documentation +for \TeX\ packages and formats is in \dirname{texmf-dist/doc}. You can +use the \cmdname{texdoc} or \cmdname{texdoctk} programs to find any +documentation wherever it's located. The comprehensive links in the +top-level file \OnCD{doc.html} may also be helpful. + + +\subsection{Overview of the predefined texmf trees} +\label{sec:texmftrees} + +This section lists all predefined variables specifying texmf trees used +by the system, and their intended purpose. The command \texttt{texconfig +conf} shows you the values of these variables, so that you can easily +find out how they map to directory names in your installation. + +\begin{ttdescription} +\item [TEXMFMAIN] The tree which holds vital parts of the system + such as helper scripts (e.g., \verb+web2c/mktexdir+), pool files and + other support files. +\item [TEXMFDIST] The tree which holds the main set of macro packages, + fonts, etc., as originally distributed. +\item [TEXMFLOCAL] The tree which administrators can use for system-wide + installation of additional or updated macros, fonts, etc. +\item [TEXMFHOME] The tree which users can use for their own individual + installations of additional or updated macros, fonts, etc. + The expansion of this variable depends on \verb+$HOME+ by default, % $ + which dynamically adjusts for each user to an individual + directory. +\item [TEXMFCONFIG] The tree used by te\TeX's utilities + \verb+texconfig+, \verb+updmap+, and \verb+fmtutil+ to store modified + configuration data. Under \verb+$HOME+ by default. %$ +\item [TEXMFSYSCONFIG] The tree used by te\TeX's utilities + \verb+texconfig-sys+, \verb+updmap-sys+, and \verb+fmtutil-sys+ to + store modified configuration data. +\item [TEXMFVAR] The tree used by \verb+texconfig+, \verb+updmap+ and + \verb+fmtutil+ to store (cached) runtime data such as format files and + generated map files. Under \verb+$HOME+ by default. %$ +\item [TEXMFSYSVAR] The tree used by \verb+texconfig-sys+, + \verb+updmap-sys+ and \verb+fmtutil-sys+ to store (cached) runtime + data such as format files and generated map files. +\end{ttdescription} + +For more discussion of \texttt{texconfig} and related utilities, please +see section~\ref{sec:texconfig}, \p.\pageref{sec:texconfig}. + + +\subsection{Extensions to \protect\TeX} +\label{sec:tex-extensions} + +\TL{} contains several extended versions of \TeX: + +\begin{description} + +\item [\eTeX] adds a small but powerful set of new primitives +\label{text:etex} (related to macro expansion, character scanning, +classes of marks, additional debugging features, and more) and the +\TeXXeT{} extensions for bidirectional typesetting. In default mode, +\eTeX{} is 100\% compatible with ordinary \TeX. See +\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] builds on the \eTeX\ extensions, adding support for +writing \acro{PDF} output as well as \dvi{}. See +\OnCD{texmf/doc/pdftex/manual/} for the manual, and +\OnCD{texmf/doc/pdftex/manual/samplepdf/samplepdf.tex}. This is the +default program for all formats except plain \TeX. + +\item [Xe\TeX] adds support for Unicode input and OpenType fonts, using +third-party libraries. See \url{http://scripts.sil.org/xetex}. + +\item [\OMEGA\ (Omega)] is based on Unicode (16-bit characters), thus +supports working with almost all the world's scripts simultaneously. It +also supports so-called `\OMEGA{} Translation Processes' (\acro{OTP}s), +for performing complex transformations on arbitrary input. See +\OnCD{texmf-dist/doc/omega/base/doc-1.8.tex} (not completely up-to-date). + +\item [Aleph] combines the \OMEGA\ and \eTeX\ extensions. +See \OnCD{texmf-dist/doc/aleph/base} for some minimal documentation. + +\end{description} + + +\subsection{Other notable programs in \protect\TL} + +Here are a few other commonly-used programs included in \TL{}: + +\begin{cmddescription} + +\item [bibtex] bibliography support. + +\item [makeindex] index support. + +\item [dvips] convert \dvi{} to \PS{}. + +\item [xdvi] \dvi{} previewer for the X Window System. + +\item [dvilj] \dvi{} drive for the HP LaserJet family. + +\item [dv2dt, dt2dv] convert \dvi{} to/from plain text. + +\item [dviconcat, dviselect] cut and paste pages +from \dvi{} files. + +\item [dvipdfmx] convert \dvi{} to \acro{PDF}, an alternative approach +to pdf\TeX\ (mentioned above). See the \pkgname{ps4pdf} and +\pkgname{pdftricks} packages for still more alternatives. + +\item [psselect, psnup, \ldots] \PS{} +utilities. + +\item [lacheck] \LaTeX{} syntax checker. + +\item [texexec] Con\TeX{}t and \acro{PDF} processor. + +\item [tex4ht] \TeX{} to \acro{HTML} converter. + +\end{cmddescription} + + +\section{Unix installation} +\label{sec:unix-install} + +As introduced in section~\ref{sec:basic} (\p.\pageref{sec:basic}), +\TL{} has three principal uses: + +\begin{enumerate} +\item Run directly from media. +\item Install to disk. +\item Integrate a particular package or collection into your existing +\TeX{} installation. +\end{enumerate} + +\noindent The following sections describes the Unix-specific procedures +for each of these. + +\ifSingleColumn \begin{figure}[ht]\noindent \fi +\begin{warningbox} +\textbf{Warning: } The \TK{} \CD{}s and \DVD{} are in ISO 9660 (High Sierra) +format, \emph{with} Rock Ridge (and Joliet, for Windows) +extensions. Therefore, in order to take full advantage of the \TK{} +under Unix, your system needs to be able to use the Rock Ridge +extensions. Please consult the documentation for your \cmdname{mount} +command to see how to do this. If you have several different machines +on a local network, you may be able to mount the discs on one which +does support Rock Ridge, and use this with the others. + +\leavevmode\quad Modern systems should be able to use the discs without +problems. If troubles, let us know. The discussion below assumes you +have been able to mount the \CD{}s with full Rock Ridge compatibility. +\end{warningbox} +\ifSingleColumn\end{figure}\fi + + +% +\subsection{Running \protect\TL{} directly from media (Unix)} + +\def\runlive{% text repeated in windows section +It is possible to use the \TeX{} system directly from the \pkgname{live} +\DVD{}, without installing the distribution to disk. (Thus the name +\TeX\ `Live', in fact.) It is \emph{not} possible to run \TeX{} +directly from the other \CD{}s (see section~\ref{sec:multiple-dist}, +\p.\pageref{sec:multiple-dist}). +} + +\def\startinst{% repeated in other subsections +To start, you mount the \CD{} or \DVD{}, with Rock Ridge extensions +enabled. The exact command to do this varies from system to system; the +following works under Linux, except the name of the device +(\filename{/dev/cdrom}, here) may vary. (All our examples will use +\texttt{>} as the shell prompt; user input is +\Ucom{\texttt{underlined}}.) +\begin{alltt} +> \Ucom{mount -t iso9660 /dev/cdrom /mnt/cdrom} +\end{alltt} + +\noindent Change the current directory to the mount point: +\begin{alltt} +> \Ucom{cd /mnt/cdrom} +\end{alltt} + +\noindent Under \MacOSX, the directory is typically under +\dirname{/Volumes}, and the media will be mounted automatically. +} + +\def\installtlsh{ +Run the installation script \filename{install-tl.sh}: +\begin{alltt} +> \Ucom{sh install-tl.sh}\\ +Welcome to TeX Live... +\end{alltt} + +\noindent After various greeting messages and a list of the main menu +options, the installation will ask you to enter a command. Do this by +typing the desired character and hitting return; don't type the angle +brackets shown. Either uppercase or lowercase is ok; we'll use +lowercase in our examples. +} + +\runlive +\startinst +\installtlsh + +For running live, our first command will be \Ucom{d} and then the +subcommand \Ucom{1} to set directories. Even in this case, we must +choose a directory on the local disk to place files that the \TeX{} +system itself generates, such as fonts and formats, and also to provide +a place for updated configuration files, if need be. + +We'll use \dirname{/opt/texlive2007} in this example. It's good to +include the year in the name, as these generated files are not +in general compatible from release to release. (If the default value of +\dirname{/usr/local/texlive/2007} works for you, then you can skip this +step.) + +\begin{alltt} +Enter command: \Ucom{d} +Current directories setup: +<1> TEXDIR: /usr/local/texlive/2007 +... +Enter command: \Ucom{1} +New value for TEXDIR [/usr/local/texlive/TeX]: \Ucom{/opt/texlive2007} +... +Enter command: \Ucom{r} +\end{alltt} + +\noindent Back at the main menu, our second and last command is +\Ucom{r}, to set up for running live off the media without installing +to disk: +\begin{alltt} +Enter command: \Ucom{r} +Preparing destination directories... +... +Welcome to TeX Live! +> +\end{alltt} + +\noindent And we are back at the system prompt, as shown. + +Next, it is necessary to alter two environment variables: +\envname{PATH}, to an architecture-dependent value (so that we can run +the programs), and \envname{TEXMFSYSVAR}, to the value specified above. +See table~\ref{tab:archlist} for a list of the architecture names for +the different systems. + + +\def\textruntexconfig{% +After the main installation has completed, and environment variables +have been set, the last step is to run \cmdname{texconfig} or +\cmdname{texconfig-sys} to customize your installation to your needs. +This is explained in section~\ref{sec:texconfig}, +\p.\pageref{sec:texconfig}. +} +\textruntexconfig + +\begin{table*}[ht] +\caption[Supported system architectures.]{Supported system +architectures.} +\label{tab:archlist} +\begin{tabular}{>{\ttfamily}ll} +alpha-linux & HP Alpha GNU/Linux \\ +hppa-hpux & HPPA HP-UX \\ +i386-darwin & x86 \MacOSX \\ +i386-freebsd & x86 FreeBSD \\ +i386-linux & x86 GNU/Linux \\ +i386-openbsd & x86 OpenBSD \\ +i386-solaris & x86 Solaris \\ +mips-irix & SGI IRIX \\ +powerpc-aix & IBM RS/6000 AIX \\ +powerpc-darwin & PowerPC \MacOSX \\ +powerpc-linux & PowerPC GNU/Linux \\ +sparc-linux & Sun Sparc GNU/Linux \\ +sparc-solaris & Sun Sparc Solaris \\ +win32 & Windows (32-bit) \\ +x86\_64-linux & x86 64-bit GNU/Linux \\ +\hline +\end{tabular} +\end{table*} + +\label{text:path} +The syntax for setting the environment variables, and the initialization +file to put them in, depends on the shell you use. If you use a +Bourne-compatible shell (\cmdname{sh}, \cmdname{bash}, \cmdname{ksh}, et +al.), put the following into your \filename{$HOME/.profile} file: +\begin{alltt} +PATH=/mnt/cdrom/bin/\var{archname}:$PATH; export PATH +TEXMFSYSVAR=/opt/texlive2007/texmf-var; export TEXMFSYSVAR +\end{alltt} + +\noindent For C shell-compatible shells (\cmdname{csh}, \cmdname{tcsh}), +put the following into your \filename{$HOME/.cshrc} file: +\begin{alltt} +setenv PATH /mnt/cdrom/bin/\var{archname}:$PATH +setenv TEXMFSYSVAR /opt/texlive2007/texmf-var +\end{alltt} + +\noindent Then log out, log back in, and test your installation +(see section~\ref{sec:test-install}, \p.\pageref{sec:test-install}). + +\def\textifindoubt{% +If in doubt, please ask any local system gurus to help you with +problems; for example, the way to mount the \TL{} media, which +directory or directories to use, and precise details of the changes to +your personal initialization files can and do vary from site to site. +} +\textifindoubt + + +% +\subsection{Installing \protect\TeX\protect\ Live to disk} +\label{sec:unix-install-disk} + +It is possible, indeed typical, to install the \TL{} distribution to +hard disk. This can be done from either the \pkgname{live} or +\pkgname{inst} distributions. (See section~\ref{sec:multiple-dist}, +\p.\pageref{sec:multiple-dist}, for an explanation of the different +distributions.) + +\startinst +\installtlsh + +Table~\ref{tab:main-menu-options} briefly lists the options in the main +menu. The order in which you select the options makes little +difference, except that \Ucom{i} must be last. It's reasonable to go +through them in the order presented here. + +% apparently here.sty [H] doesn't support table*. +\begin{table}[H] +\caption{Main menu options for the installation.} +\label{tab:main-menu-options} +\begin{tabular}{>{\ttfamily}ll} +p & The platform you are running on.\\ +b & The architectures for which to install binaries.\\ +s & The base installation scheme to use (minimal, recommended, + full, etc.)\\ +c & Override the base scheme for individual collections.\\ +l & Override for language collections.\\ +d & Directories in which to install.\\ +o & Other options.\\ +i & Perform the installation.\\ +\end{tabular} +\end{table} + +Here are further details on each option. + +\textbf{\optname{p} -- Current platform.} Since the installation script +automatically guesses which platform you're running on, it is usually +unnecessary to use this option. It's there in case you need to override +the automatic detection. + +\textbf{\optname{b} -- Binary architectures.} By default, only the +binaries for your current platform will be installed. From this menu, +you can select installation of binaries for other architectures as well +(or omit installing the current platform). This can be useful if you are +sharing a \TeX\ tree across a network of heterogenous machines. For a +list of the supported architectures, see table~\ref{tab:archlist}, +\p.\pageref{tab:archlist}. + +\textbf{\optname{s} -- Base installation scheme.} From this menu, you +can choose an overall set of package collections, called a ``scheme''. +The default \optname{full} scheme installs everything available, but you +can also choose the \optname{basic} scheme for a minimal system, or +\optname{medium} to get something in between. There are also specific +sets for Omega and \acro{XML}. + +\textbf{\optname{c} -- Individual collections.} From this menu, you can +override the scheme's set of collections to install. Collections are +one level more detailed than schemes\Dash collections consist of one or +more packages, where packages (the lowest level grouping in \TL) contain +the actual \TeX\ macro files, font families, and so on. In this menu, +selection letters are case-sensitive. + +\textbf{\optname{l} -- Language collections}. This menu has the same +basic purpose as \Ucom{c}, to override the collection set in the chosen +scheme. In this case, the collections are specifically for different +languages. Selection letters are case-sensitive here too. Here is a +list of the language collections in \TL: + +% xx really should generate list from texmf/tpm/collection/tex-lang* +% a la install-tl.sh. +\begin{tabbing} +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \= +\hspace{.25\linewidth} \kill +(some) African scripts \> +Arabic \> +Armenian \> +Chinese\,Japanese\,Korean \\ +Croatian \> +Cyrillic \> +Czech/Slovak \> +Danish \\ +Dutch \> +Finnish \> +French \> +German \\ +Greek \> +Hebrew \> +Hungarian \> +Indic \\ +Italian \> +Latin \> +Manju \> +Mongolian \\ +Norwegian \> +Polish \> +Portuguese \> +Spanish \\ +Swedish \> +Tibetan \> +\acro{UK} English \> +Vietnamese \\ +\end{tabbing} + +\noindent Language collections typically include fonts, macros, +hyphenation patterns, and other support files. (For instance, +\pkgname{frenchle.sty} is installed if you select the \optname{French} +collection.) In addition, installing a language collection will alter +the \filename{language.dat} configuration file controlling which +hyphenation patterns are loaded. + +\textbf{\optname{d} -- Installation directories}. Three directories can +be changed here: +\label{text:instdir} + +\begin{ttdescription} +\item [TEXDIR] The top-level directory under which +everything else will be installed. The default value is +\dirname{/usr/local/texlive/2007}, and is often changed. We recommend +including the year in the name, to keep different releases of \TL{} +separate. (You may wish to make a version-independent name such +\dirname{/usr/local/texlive} via a symbolic link, which you can then +update after testing the new release.) + +Under \MacOSX, the usual frontends look for \TeX{} in +\dirname{/usr/local/teTeX}, so you may wish to install \TL{} there. + +\item [TEXMFLOCAL] This tree is where the \TeX{} system (not as part of +the initial installation, but rather as time goes by) puts +non-version-specific files, primarily fonts. The default value is +\dirname{/usr/local/texlive/texmf-local}, independent of the current +\TL{} release, because it's also the recommended location to put any +local packages or configuration settings. + +\item [TEXMFSYSVAR] This tree is where \cmdname{texconfig-sys} puts +files that \emph{are} version-specific. The default value is +\dirname{TEXDIR/texmf-var}, and there's generally no reason to change +it. There is also \envname{TEXMFSYSCONFIG}, which is where +\cmdname{texconfig} looks for modified configuration data. See +section~\ref{sec:texconfig}, \p.\pageref{sec:texconfig} for more +information. + +\end{ttdescription} + +\textbf{\optname{o} -- Other options.} From this menu, you can select +the following general options: + +\begin{ttdescription} +\item [a] Specify an alternate directory for generated fonts. +The default is to use the \envname{TEXMFVAR} tree, as explained above. +Setting this is useful if you plan to mount the main tree read-only, and +therefore you need another location (perhaps host-specific) for +dynamically created fonts. + +\item [l] Create symbolic links for the binaries, man pages, +and\slash or \acro{GNU} Info files in other locations. For example, you may +wish to make the man pages available under \dirname{/usr/local/man} and +the Info files available under \dirname{/usr/local/info}. (Of course +you need appropriate privileges to write in the specified directories.) + +It is not advisable to overwrite a \TeX\ system that came with your +system with this option. It's intended primarily for creating the links +in standard directories that are known to users, such as +\dirname{/usr/local/bin}, which don't already contain any \TeX\ files. + +\item [d] Skip installation of the font/macro documentation tree. +This is useful if you need to save space, or if you've previously +installed the documentation elsewhere. + +\item [s] Skip installation of the main font/macro source +tree. This is useful if you are arranging to share that tree between +machines and\slash or architectures in some other way, such as \acro{NFS}. + +\end{ttdescription} + +\textbf{i -- Perform installation.} When you're satisfied with your +configuration options, enter \Ucom{i} to actually do the installation +from the media to your chosen locations. + +% text is similar to above, but no TEXMFSYSVAR, so we have to write out. +After the installation completes, your next step is to include the +architecture-specific subdirectory of \dirname{TEXDIR/bin} in your +\envname{PATH}, so the newly-installed programs can be found. The +architecture names are listed in table~\ref{tab:archlist}, +\p.\pageref{tab:archlist}, or you can simply list the directory +\dirname{TEXDIR/bin}. + +The syntax for doing this, and the initialization file to use, depends +on your shell. If you use a Bourne-compatible shell (\cmdname{sh}, +\cmdname{bash}, \cmdname{ksh}, et al.), put the following into your +\filename{$HOME/.profile} file: + +\begin{alltt} +PATH=/usr/local/texlive/2007/bin/\var{archname}:$PATH; export PATH +\end{alltt} + +\noindent For C shell-compatible shells (\cmdname{csh}, \cmdname{tcsh}), +put the following into your \filename{$HOME/.cshrc} file: +\begin{alltt} +setenv PATH /usr/local/texlive/2007/bin/\var{archname}:$PATH +\end{alltt} + +\textruntexconfig + +Here is a minimal annotated example which accepts the default +directories and installs binaries for the current system only. Thus, +only one command is needed, \Ucom{i} for install. The \texttt{>} is the +shell prompt as usual. + +\begin{alltt} +> \Ucom{sh install-tl.sh} +\Ucom{i} # perform installation +> \Ucom{texconfig} ... # see section \ref{sec:texconfig} +# New PATH element, with Linux as the example: +> \Ucom{PATH=/usr/local/texlive/2007/bin/i386-linux:$PATH; export PATH} +\end{alltt} + +If your Unix system supports the \cmdname{manpath} command (type \code{man +manpath} to learn more), you can make the \TL\ manual pages available +system-wide via the normal \cmdname{man} command by editing the file +\filename{/etc/manpath.config}; you might need root permissions for this. +With the following entry in \filename{/etc/manpath.config} the \TL\ +manual pages will be found at their original places within the \TL\ tree +(adapt the binary path for your system architecture): + +\begin{verbatim} +MANPATH_MAP /usr/local/texlive/2007/bin/i386-linux \ + /usr/local/texlive/2007/texmf/doc/man +\end{verbatim} + +\textifindoubt + + +\subsubsection{Non-interactive installation} +\label{sec:noninteractive-install} + +It is possible to override the default directories with environment +variables, and then install non-interactively. Example: +\begin{alltt} +> \Ucom{TEXLIVE_INSTALL_PREFIX=/opt/texlive} +> \Ucom{export TEXLIVE_INSTALL_PREFIX} +> \Ucom{echo i | sh install-tl.sh} +\end{alltt} + +The \envname{TEXLIVE\_INSTALL\_PREFIX} variable overrides the default +location of \dirname{/usr/local/texlive}, leaving all else +unchanged---so with the above invocation, the main installation will go +to \dirname{/opt/texlive/2007}. + +In the usual Unix way, the final \Ucom{echo i} can be replaced by any +sequence of input commands via a here document, so any sequence of +commands can be scripted. + +Here are all the possible overrides: + +\begin{ttdescription} +\item [TEXLIVE\_INSTALL\_PREFIX] + Override \dirname{/usr/local/texlive}. +\item [TEXLIVE\_INSTALL\_TEXDIR] + Override \dirname{\$TEXLIVE_INSTALL_PREFIX}/2007. +\item [TEXLIVE\_INSTALL\_TEXMFLOCAL] + Override \dirname{\$TEXLIVE_INSTALL_PREFIX/texmf-var}. +\item [TEXLIVE\_INSTALL\_TEXMFSYSVAR] + Override \dirname{\$TEXLIVE_INSTALL_TEXDIR/texmf-var}. +\item [TEXLIVE\_INSTALL\_TEXMFHOME] + Override \dirname{\$HOME/texmf}. +\end{ttdescription} + +It would be better to support a standard \acro{GNU}-style +\filename{configure} with options, instead of these environment +variables. Volunteers are welcome! + + +% +\subsection{Installing individual packages to disk} + +You can add individual packages or collections from the current +distribution to an existing non-\TL{} setup, or an earlier +\TL{} installation. + +\startinst + +Run the installation script \filename{install-pkg.sh} (not +\filename{install-tl.sh}, which is intended for complete installations +only): +\begin{alltt} +> \Ucom{sh install-pkg.sh \var{options}} +\end{alltt} + +The first set of options controls what gets read: + +\begin{ttdescription} +\item [-{}-package=\var{pkgname}] The individual package to work on. + +\item [-{}-collection=\var{colname}] The individual collection to work on. + +\item [-{}-nodoc] Exclude documentation files from the operation. + +\item [-{}-nosrc] Exclude source files from the operation. + +\item [-{}-cddir=\var{dir}] Source directory to read from; defaults +to the current directory. If you followed the instructions above, that +will be the distribution directory, and won't need to be changed. + +\item [-{}-listdir=\var{dir}] The so-called `lists' directory within +\var{cddir} from which to read the package information. The only +reason to change the default is if you're making changes to \TL{} +yourself. + +\end{ttdescription} + +What actually happens is controlled by the following options. If +neither of these are specified, the default action is to install the +selected files. The main destination tree is found by expanding +\envname{\$TEXMFMAIN} with \cmdname{kpsewhich}. You can override it by +setting either the environment variable \envname{TEXMFMAIN} or +\envname{TEXMF}. + +\begin{ttdescription} +\item [-{}-listonly] List the files that would be installed, but don't +actually install anything. + +\item [-{}-archive=\var{tarfile}] Instead of installing the files into +the \TeX{} system, make a \cmdname{tar} archive. + +\end{ttdescription} + +Additional options: + +\begin{ttdescription} + +\item [-{}-config] After installation, run \code{texconfig init}. + +\item [-{}-nohash] After installation, don't run \cmdname{mktexlsr} to +rebuild the filename database. + +\item [-{}-verbose] Give more information as the script runs. + +\end{ttdescription} + +Here are some usage examples: + +\begin{enumerate} + +\item To see the files in the package \pkgname{fancyhdr} without +installing it: + +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=fancyhdr --listonly} +\else> \Ucom{sh install-pkg.sh --package=fancyhdr \bs} +> \Ucom{--listonly} +\fi{} +texmf/doc/latex/fancyhdr/README +texmf/doc/latex/fancyhdr/fancyhdr.pdf +... +\end{alltt} + +\item Install the \LaTeX{} package \pkgname{natbib}: +\begin{alltt} +> \Ucom{sh install-pkg.sh --package=natbib} +\end{alltt} + +\item Install the \LaTeX{} package \pkgname{alg} without source files or +documentation: +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=alg --nosrc --nodoc} +\else> \Ucom{sh install-pkg.sh -{}-package=alg \bs} +> \Ucom{-{}-nosrc -{}-nodoc} +\fi\end{alltt} + +\item Install all the packages in the collection of additional +plain \TeX\ macros: +\begin{alltt} +> \Ucom{sh install-pkg.sh --collection=tex-plainextra} +\end{alltt} + +\item Write all files in the \pkgname{pstricks} package to a +\cmdname{tar} file in \path|/tmp|: +\begin{alltt} +\ifSingleColumn> \Ucom{sh install-pkg.sh --package=pstricks --archive=/tmp/pstricks.tar} +\else +> \Ucom{sh install-pkg.sh -{}-package=pstricks \bs} +> \Ucom{-{}-archive=/tmp/pstricks.tar} +\fi\end{alltt} + +\end{enumerate} + +\textifindoubt + + +% +\section{Post-installation} +\label{sec:postinstall} + +After the main installation is done, for any operating system, the +remaining steps are to configure the system for your local needs, and +perform some basic tests. + +Another sort of post-installation is to acquire packages, fonts, or +programs that were not included in \TL{}. The basic idea is to +install such additions in the \envname{TEXMFLOCAL} tree (if you +installed to disk), or \envname{TEXMFSYSVAR} (if you are running live). +See the ``Installation directories'' option on \p.\pageref{text:instdir}. + +Unfortunately, the details can and do vary widely, and so we do not attempt to +address them here. Here are some external links to descriptions: +\begin{itemize*} +\item +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=instpackages} +\item +\url{http://www.ctan.org/installationadvice} +\item +\url{http://www.ctan.org/tex-archive/info/beginlatex/html/chapter5.html#pkginst} +\item +\url{http://www.ctan.org/tex-archive/info/Type1fonts} for +installation information for fonts in particular. +\end{itemize*} + + +\subsection{The \protect\cmdname{texconfig} program} +\label{sec:texconfig} + +At any time after installation, you can and should use the program +\cmdname{texconfig} to configure the system to fit your local needs. It +is installed in the architecture-specific subdirectory +\texttt{TEXDIR/bin/\var{arch}} along with everything else. + +If you run it without arguments, it will enter full-screen mode and +allow you to view and change options interactively. + +You can also run it with various command-line options. Here are some of +the most common (\TL{} is configured for the A4 paper size by default): + +\begin{ttdescription} + +\item [texconfig paper letter] Set default paper size for +various programs and drivers (\cmdname{pdftex}, \cmdname{dvips}, +\cmdname{dvipdfm}, \cmdname{xdvi}) to be \acro{US} letter. The other +allowable size is \optname{a4}, which is the default. + +\item [texconfig rehash] Update all the \TeX{} ``filename databases'', +after adding or removing files. + +\item [texconfig faq] Show the \teTeX{} \acro{FAQ}. +(See also the main \TeX{} \acro{FAQ} in \OnCD{texmf-doc/doc/english/FAQ-en}.) + +\item [texconfig help] Output help information for \cmdname{texconfig}. + +\end{ttdescription} + +Of course, \cmdname{texconfig} can only support changing a few of the +many options and configuration parameters in a \TeX{} system. The main +configuration file for the base \Webc{} programs is named +\filename{texmf.cnf}. You can find its location by running +\samp{kpsewhich texmf.cnf}; it contains many comments explaining the +default settings and useful alternatives. + +\cmdname{texconfig} alters files in a user-specific directory, as in +\dirname{$HOME/.texlive2007}. If you install \TeX\ just for yourself, +that is unlikely to make a difference. But if you install \TeX\ on a +multi-user system, you will want to change the configuration for the +whole system. In this case, run \cmdname{texconfig-sys} instead of +\cmdname{texconfig}. + +Likewise, the \cmdname{updmap} and \cmdname{fmtutil} scripts were +changed, to work under \dirname{$HOME/.texliveYYYY}. To alter system +directories, use \cmdname{updmap-sys} and \cmdname{fmtutil-sys}. + +In particular, for multi-user systems, you will probably want to +pregenerate the standard formats with \texttt{fmtutil-sys --missing}. +Otherwise, each user will end up with their own formats. + +Also, if you have a personally-modified copy of \filename{fmtutil.cnf} +or \filename{updmap.cfg}, instead of using the ones generated by +installation, they must be installed in the tree referenced by the +variable \envname{TEXMFSYSCONFIG}. + +The variables specifying the directories altered by these commands are +listed in section~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. +You can see the actual directories by running \texttt{texconfig conf}, +and you can change them by editing \filename{texmf.cnf}. + + +\subsection{Testing the installation} +\label{sec:test-install} + +After installing \TL{} as best you can, you naturally want to test +it out, so you can start creating beautiful documents and\slash or fonts. + +This section gives some basic procedures for testing that the new system +is functional. We give Unix commands; under \MacOSX{} and Windows, +you're more likely to run the tests through a graphical interface, but +the principles are the same. + +\begin{enumerate} + +\item Make sure that you can run the \cmdname{tex} program in the first +place: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.141592 (Web2C 7.5.5) +kpathsea version 3.5.5 +... +\end{alltt} +If this comes back with `command not found' instead of version and +copyright information, most likely you don't have the correct +\dirname{bin} subdirectory in your \envname{PATH}. See +the environment-setting information on \p.\pageref{text:path}. + +\item Process a basic \LaTeX{} file: +\begin{alltt} +> \Ucom{latex sample2e.tex} +This is pdfeTeXk, Version 3.141592... +... +Output written on sample2e.dvi (3 pages, 7496 bytes). +Transcript written on sample2e.log. +\end{alltt} +If this fails to find \filename{sample2e.tex} or other files, perhaps +you have interference from old environment variables or configuration +files. For a deep analysis, you can always ask \TeX{} to report on +exactly what it is searching for, and finding; see ``Debugging actions'' +on page~\pageref{Debugging}. + +\item Preview the result online: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} +\end{alltt} +(Under Windows, the analogous command is \cmdname{dviout}.) You should +see a new window with a nice document explaining some of the basics of +\LaTeX{}. (Well worth reading, by the way if you're new to the system.) +You do have to be running under X for \cmdname{xdvi} to work; if you're +not, or your \envname{DISPLAY} environment variable is set incorrectly, +you'll get an error \samp{Can't open display}. + +\item Create a \PS{} file for printing or display: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Create a \acro{PDF} file instead of \dvi{}; this processes the +\filename{.tex} file and writes \acro{PDF} directly: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Preview the \acro{PDF} file: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Unfortunately neither \cmdname{gv} nor \cmdname{xpdf} are currently +included in \TL{}, so you must install them separately. See +\url{http://www.gnu.org/software/gv} and +\url{http://www.foolabs.com/xpdf}, respectively. + +\item Other standard test files you may find useful: + +\begin{ttdescription} +\item [small2e.tex] A simpler document than \filename{sample2e}, to +reduce the input size if you're having troubles. +\item [testpage.tex] Test if your printer introduces any offsets. +\item [nfssfont.tex] For printing font tables and tests. +\item [testfont.tex] Also for font tables, but using plain \TeX{}. +\item [story.tex] The most canonical (plain) \TeX{} test file of all. +You must type \samp{\bs bye} to the \code{*} prompt after \samp{tex +story.tex}. +\end{ttdescription} +You can process these in the same way as we did with +\filename{sample2e.tex}. + +\end{enumerate} + +If you are new to \TeX{}, or otherwise need help with actually +constructing \TeX{} or \LaTeX{} documents, please visit +\url{http://tug.org/begin.html} for some introductory resources. + + +\section{\MacOSX{} installation} +\label{sec:mac-install} + +The recommended way to install \TeX\ on \MacOSX\ is from the Mac\TeX\ +distribution, new in 2005. This is provided on the \pkgname{live} +\DVD{} in the top-level \dirname{mactex/} directory. It contains its +own (native) installer for a full \TeX\ distribution, based on a +combination of te\TeX\ and \TL, along with many additional applications +and documentation. The project web page is \url{http://tug.org/mactex}. + +If you prefer, installation of \TeX{} under \MacOSX{} can also be done +directly from \TL, using the \filename{install*} scripts, as follows. + +In order to run the installation scripts under \MacOSX, you need to have +the \cmdname{bash} shell installed. If you are running \MacOSX~10.2 +or later, you have \cmdname{bash}, and can proceed. If you're running +an earlier \MacOSX{} version, however, the default shell is +\cmdname{zsh}, which won't work; you'll need to get \cmdname{bash} from +the Internet, or more likely upgrade your system. + +Once you have \cmdname{bash}, the Unix installation documentation in the +previous section can be followed. See section~\ref{sec:unix-install} on +\p.\pageref{sec:unix-install}; \MacOSX-specific notes are included there +where needed. + +\section{Windows installation} +\label{sec:win-install} + +In this release of \TL{}, happily, the distribution once +again has a native Windows installer, named \cmdname{tlpmgui.exe}. (See +section~\ref{sec:multiple-dist}, \p.\pageref{sec:multiple-dist}, for an +explanation of the different distributions.) + +\cmdname{tlpmgui} has essentially the same options as the Unix +installer, only done through a GUI interface: selecting schemes, +individual collections, installation directories, and so on. +Section~\ref{sec:unix-install-disk} on +\p.\pageref{sec:unix-install-disk} describes the basic elements. It +also allows some post-installation activities such as adding/removing +packages, updating the filename database and building formats. +Moreover, \cmdname{tlpmgui} can setup the system for running +programs directly from the \DVD. + +For those who like to look underneath the hood, \cmdname{tlpmgui} uses +as its ``engine'' a command-line Windows program named \cmdname{tlpm}. + +The Windows \TeX{} system included in \TL{} is based on new binaries +borrowed from the \acro{W32TEX} distribution, kindly provided by Akira Kakuto. +It also includes some older (but still working) tools made by Fabrice +Popineau, and also a new \texttt{dvi} previewer, \textsf{dviout} by +Toshio Oshima. + +\TL{} can be installed on systems running Windows 98, \acro{ME}, +\acro{NT}, \acro{2K} or \acro{XP}. Older versions of Windows (3.1x) +and \acro{MS-DOS} are not supported. + +\textbf{Warning:} Win9.x users must ensure they have enough environment + space before undertaking installation. The \cmdname{tlpmgui.exe} + program won't change the environment size for them. A few environment + variables will be created and it is possible you run out of + environment space. Add \texttt{SHELL=COMMAND.COM /E:4096 /P} in the + config.sys file in order to increase your environment size. + +\subsection{Installing \protect\TeX\protect\ Live to disk} + +After inserting the \TL{} \acro{CD} into the \acro{CD} drive, autostart should +activate \cmdname{tlpmgui}. If it does not, click \guiseq{Start\arw Run}, +then type \verb|:\setuptl\tplmgui.exe| (or +\verb|:\texlive\setuptl\tplmgui.exe| if you are +installing from the \TeX\ Collection \acro{DVD}), where \verb|| +is the drive letter with the \TeX\ Live \acro{CD} (or TeX Collection +\acro{DVD}), and then click \acro{OK}. + +The installation window titled \guiseq{TeX Live installation and maintenance +utility} should open. It contains the following sections: \guiseq{Main +customization}, \guiseq{Install}, \guiseq{Select a scheme}, \guiseq{Select +systems}, \guiseq{Directories} and \guiseq{Options}. + +By default, \cmdname{tlpmgui} tries to detect if \TeX{} is already +installed and depending on the result starts either in fresh +installation or maintenance mode. If you have \TeX{} already installed +but want to install the new version nevertheless, you can use +\texttt{tlpmgui~--install-mode} to force installation mode; but you +should know what you are doing, as the new \TL{} installation will +override the environment variables and other settings of the existing +installation; reverting to your old installation is not automatically +supported. + +Diagnostic information is collected by \cmdname{tlpmgui} in a log file +which is deleted at the end of the run, along with any other temporary +files. Invoking with \texttt{--debug} displays the names and contents +of all \cmdname{tlpmgui} temporary files in a separate window. + +In the \guiseq{Directories} section the installation drive (directory) +next to the \guiseq{CD/DVD} button should be displayed (e.g., +\texttt{F:/} or \texttt{F:/texlive/} for the \acro{DVD}), but if it is not, +then click the \guiseq{CD/DVD} button and select the \acro{CD/DVD} +drive, with the \TL{} \acro{CD} (or \TeX\ Collection \acro{DVD}). + +The directory in which you wish to install the software can be set by +clicking the \guiseq{TLroot} button. This directory will be set as +\path|TLroot| environment variable for later usage. + +In the \guiseq{Select a scheme} section the desired \TL{} installation scheme +should be chosen by clicking the radio button labelled with the installation +scheme name (e.g., \guiseq{scheme-gust}). Each scheme is accompanied by an +\guiseq{Info} button which, when clicked, displays a short description of the +relevant scheme. + +A scheme is a large set of files targeted at some kind of usage. There are +generic schemes for basic, medium and full installations. The remaining ones +are either targeted at certain LUGs (i.e., what GUST or GUTenberg propose +for their members) or application targeted (e.g., for XML and \TeX{} +cooperation). A preselected scheme can be refined. This is done in the +\guiseq{Main customization} section by choosing additional collections from +\guiseq{Standard collections} or \guiseq{Language collections}. For example, +by clicking the \guiseq{Select} button labelled \guiseq{Standard +collections}, additional collections like Metapost, Omega or documentation +in different languages can be selected. + +\guiseq{Wintools} collection is selected by default as it contains many small +programs, usually absent in Windows, which can be handy, like graphics +converters: \cmdname{sam2p}, \cmdname{jpeg2ps}, \cmdname{tiff2png}; +(de)compression programs: \cmdname{bzip2}, \cmdname{gzip}, \cmdname{unzip}, +and \cmdname{wget} which is needed for \cmdname{getnonfreefonts} (new) +utility. + +Next, clicking the \guiseq{Select} button labelled \guiseq{Language +Collections} in the \guiseq{Main customization} section opens the +\guiseq{Language collections} window in which the installation language can +be chosen by ticking the box next to the language. + +Next, click the \guiseq{Install} button in the \guiseq{Install} section to +start the installation proper process. + +\textbf{Note:} The \guiseq{Perl} and \guiseq{Ghostscript} are installed only +on demand. They should be installed unless they are already installed and you +really know what you are doing. Both programs are required by many important +tools. The \verb|PERL5LIB| and \verb|GS_LIB| environment variables will be +set too, as well the path to Ghostscript binaries will be added to the +\verb|PATH| variable. + +The \TL{} system needs some post-processing steps (format files +generation, ls-R databases generation, environment variables, etc.). All +these operations are done there, some of them can be lengthy. So please wait +until you see a statement about the successfully finished installation. + +The shortcut for \cmdname{tlpmgui} (and also \cmdname{dviout}, if installed) +will be added to the menu \guiseq{Start\arw Programs\arw TeXLive2007}. + +If it is needed (Win9x/WinME), you will be asked to reboot your computer. + +\subsection{Support packages for Windows} +\label{sec:win-xemtex} + +To be complete, a \TL installation needs support packages that are not +commonly found on a Windows machine. Many scripts are written using the Perl +language. Some important tools require the Ghostscript \PS{} interpreter to +render or to convert files. A graphic file toolbox is also needed in some +cases. Last but not least, a \TeX-oriented editor makes it easy to type in +your \TeX{} files. + +All these tools are quite easy to find for Windows, but in order to try to +make your life even easier, we have put such a set of tools on \TL: +\begin{itemize*} +\item GNU \cmdname{Ghostscript} 8.54 +\item a minimal \cmdname{Perl} 5.8, sufficient to run all the \TL{} + Perl scripts. +\item win-tools is a set of small programs (bzip2, gzip, jpeg2ps + and tiff2png) +%\item a subset of \cmdname{ImageMagick} 5.5.6 +%\item the \cmdname{ISpell} checker +%\item \cmdname{XEmacs} 21.5.14 with a selection of packages to support +%\TeX{} typesetting. +\end{itemize*} + +Perl and Ghostscript are installed upon request; you may explicitly +deselect them during installation if you already have them. + +If you don't want to install this bundle, then you are on your own to +install the required tools to complete your \TL{} system. Here is a +list of places to get those tools: + +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.activestate.com/} (but you might need some + supplementary packages from CPAN: \url{http://www.cpan.org/}) +\item[ImageMagick] \url{http://www.imagemagick.com} +\item[NetPBM] alternatively, you could use NetPBM instead of ImageMagick to + process or convert your graphic files. NetPBM home page is + \url{http://netpbm.sourceforge.net/} +\item[\TeX-oriented editors] There is a wide choice, and it is a matter of the + user's taste. Here is a selection: + \begin{itemize*} + \item \cmdname{GNU Emacs} is available natively under Windows, see + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html} + \item \cmdname{Emacs} with AucTeX is available natively under Windows, see + \url{ftp://alpha.gnu.org/gnu/auctex} + \item \cmdname{WinShell} is available on \TL in the \path|support| + directory, see \url{http://www.winshell.de} + \item \cmdname{WinEdt} is shareware available from \url{http://www.winedt.com} + \item \cmdname{Vim} is available from \url{http://www.vim.org} + \item TeXnicCenter is free software, available from + \url{http://www.toolscenter.org} and in the proTeXt distribution. + \item \cmdname{LEd} is available from \url{http://www.ctan.org/support/LEd} + \item \cmdname{SciTE} is available from \url{http://www.scintilla.org/SciTE.html} + \end{itemize*} +\end{description} + +You might want to install other tools that are not free\footnote{Not +free, that is, in the sense of freedom to modify and redistribute, +following free software guidelines. This does not mean you can't acquire +them for no money.} and therefore not included on \TL{}, such as +\cmdname{GSView}, the \cmdname{Ghostscript} companion to more +conveniently view PS/PDF files. \cmdname{GSView} is available from +\url{http://www.cs.wisc.edu/~ghost/gsview/} or any \acro{CTAN} site. + +\section{Maintenance of the installation in Windows} + +If you have \TeX\ Live installed, you can use \cmdname{tlpmgui} again +for modifying and maintaining your installation. + +\subsection{Adding/removing packages} + +As the \cmdname{tlpmgui} shortcut is available in the \guiseq{Start\arw +Programs\arw TeXLive2007} menu, start it from here. The maintenance window +titled \guiseq{TeX Live installation and maintenance utility} shows. It +contains several tabs: \guiseq{Add Packages}, \guiseq{Remove packages}, +\guiseq{Manage installation}, \guiseq{Remove installation}. + +Click the tab labelled \guiseq{Add packages} or \guiseq{Remove packages} +to enter the relevant functionality and then: + +\begin{itemize} +\item In the first tab select the proper \CD{} drive (or \DVD with + \texttt{texlive} directory) by pressing the \guiseq{CD/DVD} button. +\item Click the \guiseq{Search} button in the \guiseq{Buttons} section to +display or refresh in the \guiseq{Select packages to\dots} section the +list of packages to install or remove. + +When adding packages, the list of installed packages is compared to the list +of packages available from your \CD/\DVD. Only packages not already installed are +displayed. It is up to you to select which packages you want to +install. + +When removing individual packages, only a list of installed packages +will be displayed. + +Please note that for both \guiseq{Add packages} and \guiseq{Remove packages} +the collections are listed first. + +\item Select a package by clicking on the name of the package. Clicking the +\guiseq{Info} button in the \guiseq{Buttons} section displays a short +description of the selected package in the window located in the \guiseq{Info +about the selected item} section. To select several packages at once hold +down one of the Ctrl or Shift keys at your keyboard while holding down the +left mouse button or drag the mouse pointer while holding down the left mouse +button. + +\item Click the \guiseq{Install} or \guiseq{Remove} button in the +\guiseq{Buttons} section to perform the appropriate action. +\end{itemize} + +\subsection{Configuring and other management tasks} + +The functions available in the tab labelled \guiseq{Manage the installation} +are helpful in performing actions needed when you want to add support for a +language which was not selected during the installation, or add/regenerate a +format which was not selected during the installation or was modified after +the installation. + +The following actions can be performed: + +\begin{itemize} +\item Refresh the \filename{ls-R} database +\item Create formats (All or Missing) +\item Edit \filename{language.dat} +\item Edit \filename{fmtutil.cnf} +\item Edit \filename{updmap.cfg} +\end{itemize} + +Note: you can close the Edit\dots{} window with the \guiseq{Cancel} or +\guiseq{Done} button; the latter will start rebuilding the format files +(or the fontmap files if you have edited \filename{updmap.cfg}), followed by a +\filename{ls-R} database files refresh. + +For more information about the configuration see section~\ref{sec:persconf}, +\p.\pageref{sec:persconf}. + +\subsection{Uninstalling \protect\TL{}} + +The tab labelled \guiseq{Remove the TeX Live installation} opens a window +which contains functionality not worth describing and we do not know who would +need it and what it is for\dots :-) + +Anyway, if you have the \path|texmf-local| directory for your local additions, +the removal procedure will not wipe it out or delete things in it. However, +it will be done only if you select it explicitly. The \path|setuptl| +directory containing \cmdname{tlpmgui} and related files will not be deleted. +You will have to do some manual cleanup to actually remove them. + +\subsection{Adding your own packages to the installation} + +First, whatever changes you make, \textbf{do not forget to rebuild the ls-R +database files}. Otherwise, your new files will not be found. You can do this +either via the \cmdname{tlpmgui} run and selection of the appropriate action +from the \guiseq{Manage the installation} tab, or manually running the +\file{mktexlsr} command. + +If you want to add files that are not provided by the \TL{} distribution, +it is recommended to put them in the \path|$TEXMFLOCAL| directory. This +way, you will be safe against upgrades of the \TL{} software. + +The directory pointed to by \path|$TEXMFLOCAL| is initially empty. If, +for example, you want to add the support file for the Maple symbolic +computation program, you will have to put the style files in:\\ +\path|c:\TeXLive2007\texmf-local\tex\latex\maple\|\\ and the +documentation files in:\\ \path|c:\TeXLive2007\texmf-local\doc\latex\maple\| + +\subsection{Running \texttt{tlmp.exe} from the command line} +The \cmdname{tlpm.exe} program which is used as engine by \cmdname{tlpmgui} +has a number of other useful options. You can get the list by running: +\begin{verbatim} +tlpm --help +\end{verbatim} + +More information and examples of use can be found in \path|tlpm.readme|. + +\subsection{Network installation} + +\KPS{} knows about UNC names, so you can use them to get your TEXMF +tree from the network. But there is better than this. +All the support files and configuration files, everything except the files in the +\path|bin/win32| are shareable with a \teTeX{} or Unix \TL{} installation. That means +you can use Samba either to mount from an NT server to a Unix +workstation or the converse. Several strategies are possible: +\begin{itemize} +\item Put everything on the server. Just add each set of files for the OS and +architecture you want to use in the \path|bin| directory. That means +for example \path|bin/win32| and \path|bin/i386-linux|. Next configure +your main variables. You can use UNC names to +point to the right directories under Win32. +\item Install a local copy for the binaries and format files. In this + case, assign \path|$TEXMFMAIN| to the main \path|texmf| tree that + will be accessed remotely. Set \path|$TEXMFVAR| to be a local + directory which will hold local configuration files and on-the-fly + generated files. +\end{itemize} + +\subsection{What's different in Windows?} + +The Windows version of \Webc{} has some specific features that should be +pointed out. + +\begin{description} +\item[\cmdname{kpsecheck}] This command provides some options that did + not fit well into \cmdname{kpsewhich}. It will allow you to list all + the files that occur multiple times across your texmf trees. This + could be handy, but most of the time you will also get unwanted + output (like dozens of \path|README| files). It is noticeable + that all these files result in clashes inside the \KPS{}-hashing + mechanism; fortunately, \KPS{} never looks for these files. For + this reason, you can combine the \path|-multiple-occurrences| with 2 + other options for including or excluding any filename that match + some pattern (you can request for several patterns). + + The \cmdname{kpsecheck} command will also report the status of shared + memory: in use or not used. That might be useful to know because if + the status reported is \samp{in use}, that means one or several + processes are working, and the effect of any \cmdname{mktexlsr} + command will be delayed until the next time where no \KPS{} linked + process will be running. + + Last, this same command will report about the location it thinks + Ghostscript can be found. Under Win32, for many programs, it is + easier to use the Ghostscript dll, and find it by using the + Ghostscript registry key than to change the \path|PATH|, which has a + limited length anyway. +\item[\Webc{}] The engines have one more option than in Unix \Webc: + \begin{itemize} + \item \path|-proctimes| print statistics about the job run + time. It is to be noted that Win9x not being a true multitasking + operating system, it has no reliable timer for short periods, so + the value printed is an approximation. Under NT/2K/XP, the result + is quite accurate with user time and system time values allocated + for this run. For Unix + users: the \path|time| command is not usually available to Windows + users. + \end{itemize} +\end{description} + +\subsection{Personal configurations} +\label{sec:persconf} + +\subsubsection{Dvips} + +The configuration file for dvips can be found in\\ +\verb+C:\TeXLive2007\texmf-var\dvips\config\config.ps+\\ +You may open it with any editor + %(\cmdname{WinShell} will do fine) + and change some parameters: + +\begin{description} +\item [fonts] you can change the default printer \MF{} mode or printer + resolution in case \cmdname{dvips} needs to generate PK fonts. By default it + is configured to use Type~1 versions of the CM fonts, so it should + not call \cmdname{mktexpk} too often; +\item[printer] you can tell dvips where you want to print by default. If + the \optname{o} option is not followed by a printer name, then a + \file{.ps} \PS{} file is written. You can give dvips a printer + name such as: +\begin{verbatim} +o lpt1: +% o | lpr -S server -P myprinter +% o \\server\myprinter +\end{verbatim} +\item[paper] Next, you might want + to change the paper size from European (A4) to US letter + by making the US letter the first paper size mentioned in the file. + Scroll to the group of lines beginning with \code{@}. Move + the appropriate lines so that this section begins with the lines:\\ +\hspace*{1em} @ letterSize 8.5in 11in\\ +\hspace*{1em} @ letter 8.5in 11in\\ +\hspace*{1em} @+ \%\%BeginPaperSize: Letter\\ +\hspace*{1em} @+ letter\\ +\hspace*{1em} @+ \%\%EndPaperSize +\end{description} + +The current \TL{} distribution implements the procedure of making always +up-to-date fontmaps files for Dvips and Pdftex. This is done by the +\cmdname{updmap} program during installation. +If you add new font packages using the installation program or by hand, +edit the file \verb+updmap.cfg+ in \path|$TEXMFVAR/web2c|. + +\subsubsection{PdfTeX} + +If you use the program pdf{}latex to write \acro{PDF} format directly, +and you are using \acro{US} letter-size paper, edit the file +\verb+C:\TeXLive2007\texmf-var\tex\generic\config\pdftexconfig.tex+ and +change \samp{\bs pdfpagewidth} and \samp{\bs pdfpageheight}. These entries +should read: +\begin{alltt} +\bs{}pdfpagewidth=8.5 true in +\bs{}pdfpageheight=11 true in +\end{alltt} +Save the file and exit the editor. + +\subsubsection{Xe\TeX} +Xe\TeX{} for Windows is linked statically with fontconfig 2.4.2. +A configuration file for fontconfig is \verb+fonts.conf+. For details, +see the file \verb+fonts.conf+ itself which is in a directory shown by +the command \texttt{kpsewhich --var-value=FONTCONFIG\_PATH}. + +\subsubsection{GSView} +GSView is now distributed under the Aladdin License, and therefore is no +longer included in \TL{}. + +You may want to change the page size to US letter size. If so, open +GSView from the \guiseq{Start} menu, and select \guiseq{Media\arw Letter}. + +Also, there are menu settings that are supposed to give you the most +readable screen image. On \guiseq{Media \arw Display Settings}, set both +\optname{Text Alpha} and \optname{Graphics Alpha} to 4~bits. + +Note that the installation process has set all \code{.ps} and +\code{.eps} files to automatically open with \cmdname{GSView}. + +For printing instructions, see section~\ref{printing} below. + + +\subsection{Testing} + +For generic verification procedures, see section~\ref{sec:test-install} +(\p.\pageref{sec:test-install}). This section describes +Windows-specific tests. + +Open the file \verb+sample2e.tex+ in your editor (Xemacs, WinShell), +found in \path|C:\TeXLive2007\texmf-dist\tex\latex\base|. The \LaTeX\ source +should appear on the screen. Process it by clicking on the +\guiseq{Command\arw LaTeX} menu (XEmacs) or \LaTeX\ icon on the toolbar +(WinShell), then view it by clicking on the \guiseq{Command\arw View DVI} +menu (XEmacs) or Preview (dviout) icon (WinShell). + +At first, when you preview files with \cmdname{dviout}, it will create fonts +because screen fonts were not installed. After a while, you will have created +most of the fonts you use, and you will rarely see the font-creation window. + +\textbf{Hint for the future:} If a \LaTeX\ run stops because \LaTeX\ +cannot find a file, you can press Ctrl-z to quit. + + +\subsection{Printing} +\label{printing} + +It is possible to print from \cmdname{dviout}. In this case, printing +will be done using the Windows unified printer driver. By definition, it is +compatible with all printers. However, there is some drawback: it can +generate some huge spool files, and some (older) versions of Windows +just don't like them. The advantage is that you can use features like +embedding BMP or WMF images. You also need to make sure that the printer +parameters are correctly set, else you +will get scaled printing (printing at 600\dpi{} on a 300\dpi{} printer +will give you only one quadrant of your page). + +Printing is faster and more reliable if you run \cmdname{dvips} to make +a \filename{.ps} file and then print from \cmdname{GSView}. In +\cmdname{GSview}, select \guiseq{File\arw Print\ldots}. A \guiseq{Print} +window will appear. + +If you are using a \PS{} printer, \textit{be sure to select +\guiseq{\PS{} Printer}}. This is done in the \guiseq{Print Method} box +at the bottom left of the \guiseq{Print} window. You can then select any +of the printers that you have previously installed. If you fail to +check the box for \optname{\PS{} Printer}, printing will not work. + +If you will be using your own non-\PS{} printer, select +\guiseq{Ghostscript device} in the \guiseq{Print Method} box, then click +on the button to the right labelled \guiseq{djet500} and select your +printer type from the list that pops up. (In the older version of +\cmdname{GSView}, make sure \optname{\PS{} Printer} is \textit{not} +selected, then select your printer type from the \guiseq{Device} list.) + +\subsection{Tips and tricks for Win32} + +\subsubsection{Different flavors of Win32} + +What we call Win32 is not an operating system by itself. It is a large +set of functions (around 12,000 in the header files of the Microsoft +\acro{SDK}) that you can use to write programs for different operating +systems of the Windows family. + +Windows comes in different flavors: +\begin{itemize} +\item Win95, Win98 and Win\acro{ME}, which \emph{are not true multitasking, + multithreading} environments, but rather updated incarnations of + \acro{DOS}. This can be more or less proven by the fact that when + booting, the PC will load the \path|command.com| interpreter, and if + you stop the boot process at this point, you can ask for the current + (\acro{DOS}) version and it will answer something like \samp{MS-DOS + 7.0} (at least for the old versions of Win9x). +\item Windows \acro{NT}, which is a new operating system written from + scratch, capable of true multitasking behavior, and including many + high level features. +\item Windows 2000, based on \acro{NT}, with all the bells and + whistles of Win98. +\item Windows \acro{XP}, which comes with Personal and Pro flavors. This is + the last step in merging both lines of products (Win9x based and + \acro{NT} based). \acro{XP} is based on \acro{NT}. +\end{itemize} + +Win9x are able to run 32~bits programs and 16~bits programs +concurrently. But the operating system by itself is not entirely +written in 32~bits mode, and does not support memory protection: 16bits +applications can overwrite parts of the operating system memory! Some +parts of the system like the \acro{GDI} (Graphical Device Interface) +manage limited resources like bitmaps, fonts, pens and so on for the set +of all programs that run concurrently. All the bitmaps headers available +at the same time can't amount for more than 64kB. This explains the +performance tool and the fact that you can put your system on his knees +by making intensive use of graphic objects for example. + +NT, 2K and XP do not suffer from these limitations, and neither from +other Win9x limitations. They are true multitasking environments, with +protected memory. They are much more responsive than Win9x because +of better memory management, better file system and so on. + +\subsubsection{Command line prompt} + +You may wonder, ``Why would I need to use a command line prompt when +I have Windows?'' + +Good question! The problem is of very general nature. Not all operations +can be done easily using only a \acro{GUI}. Command line gives you +programming power\Dash assuming a clever command interpreter. + +But the problem here is more fundamental: \TeX{} is \emph{a batch} +tool. Not an interactive one. \TeX{} needs to compute the best +layout for each page, resolve cross-references and so on. This can be +done only by a global processing of the document. It is not (yet) a +task that can be done interactively. + +This means that you should use \TeX{} from a command line. In fact the +situation is not so bad. There is an advantage to write command line +tools for complex processing: they are better debugged, because they are +independent of any \acro{GUI} problems, and \acro{GUI} tools can be +designed to interface to the command line tools. This is the case for +\TeX{}, where you will mostly interact with it through a \acro{GUI} text +editor. + +However, you may need to use the command line prompt in a number of +situations. One is when you are having difficulties and want to debug +your setup. + +\begin{description} + \item[Win9x] You can open a command line prompt by looking either for + the \acro{MS-DOS} icon in the \guiseq{Start\arw Programs} menu, + or by choosing \guiseq{Start\arw Run} menu typing in + \path|command.com| as the program name. + \item[NT, 2K, XP] You can open a command line prompt by looking for + \guiseq{Command Prompt} in the \guiseq{Start\arw Accessories} menu. + You can also choose \guiseq{Start\arw Run} and type in + \path|cmd.exe|, which is the name of the brand new command + interpreter for \acro{NT} (thus, it is untrue to call this a + \emph{DOS} box!). +\end{description} + +These locations may change across different Windows versions. + +\subsubsection{Path separators} + +The Win32 API understands both \path|/| and \path|\| characters as PATH +separators. But the command interpreters do not! So whenever a path name +is used programmatically, you can use both separators, and even mix them +up in the same path name. But on the command line, you must type +\path|\| as path separator. The reason is compatibility: the command +processor used \samp{/} to introduce arguments to commands. + +All this to say: do not be surprised to read path names written using +the Unix convention; Windows-\TL{} is a port of \Webc, and aims to be +compatible across platforms. For this reason, all the configuration files +that need to specify path names use the Unix convention. + +\subsubsection{File systems} +\label{sec:clusters} + +The worst feature of Win9x with regard to \TeX{} is probably the +so-called FAT file system. \TeX{} uses very many small files, with size +around 1--3kB. The \acro{FAT} file system is old, and predates by +decades the multi-gigabytes hard disks we have today. As a result, it +cannot manage efficiently the tens of thousands of \TeX{} files found in +\TL{}. The \acro{FAT} file system allocates a minimum of 32kB for +\emph{any} file on a huge partition. It means that \TeX{} will use much +more disk space than it actually needs. + +The other, more modern, file systems available, \acro{FAT32} and +\acro{NTFS}, do not have this drawback. They manage clusters of 4kB +only. (You can lower the limit to 512 bytes on \acro{NTFS}.) + +\subsubsection{How to add some directory to your PATH} + +There are pairs of variables and values which behave much like global +variables inside your programs. The set of those variables is called the +environment. Each program is initialized with a copy of the +environment when it is run. It can request and change the +value of any variable. The changes happen in the copy of the +environment, and is not at all propagated to the other running +programs. + +Your PATH is a special environment variable used to search for +programs you want to run. +There is a different procedure to change it for Win9x, WinME and NT/2K/XP: + +\begin{description} +\item[Windows 95/98] Edit your \path|autoexec.bat|. In this file should be a line + starting with \texttt{PATH=} and followed by a list of directories separated + by \path|;|. Please add the directory with the executables in this line. + After this, this line could look as follows: +\begin{verbatim} +PATH=c:\windows;c:\windows\system;c:\TeXLive2007\bin\win32 +\end{verbatim} +\item[Windows ME] You need to run the special program + \path|c:\windows\system\msconfig.exe| to be able to change any + environment variable. From this program, select the `Environment' + tab, and then add or modify the variable you want. You will be asked to reboot the + machine upon any change. +\item[Windows NT/2K/XP] + Click left on \guiseq{Start \arw Settings \arw Control Panel}. Now the + window with the control panel icons opens. Double click on System. The + System Properties window opens. Click on the tab \textsf{Environment} + or look for a button named \guiseq{Environment Variables} among the + dialog boxes. Now you can change the environment variables for your + user account. Note: There are also displayed the environment settings + for the system. Normally, you can't change the system variables + unless you have administrator rights on your machine. If you want to + change the \texttt{PATH} for all users, you will have to contact your + system administrator or be the system administrator yourself\Dash in + the latter case you should know what you are doing. + + If there is already a \texttt{PATH} setting for your user account, + left click on \texttt{PATH}. In the field \textsf{Variable} appears + \texttt{PATH} while the field Value shows the current setting of + \texttt{PATH} as a list of directories separated by \path|;|. Add + the directory where the executables are located (e.g. + \path|c:\TeXLive2007\bin\win32|). If there isn't a \texttt{PATH} variable + for your user account, simply click in the field Variable and type + in \texttt{PATH}, click in the field \textsf{Value} + and type in the directory with the executables. Important: Click on + the \textsf{Apply} button before clicking \textsf{Ok}, otherwise the + changes to \texttt{PATH} won't apply to your system. Be careful when + changing the environment settings. +\end{description} + +The best way to be sure that a variable has been properly set is to +open a console and type: +\begin{verbatim} +set VARIABLE +\end{verbatim} +which should return the corresponding value. + +\subsubsection{\TeX{} engines} + +If you have a look at the \Webc{} documentation, you will read that all +the various \TeX{} derived programs use the same base engine. For +example, \path|tex.exe| and \path|latex.exe| are exact copies of the +same program, but each one will use a different format file, based on +its calling name. + +Under Unix, this feature is implemented through \emph{symbolic +links}. It saves up a bit of disk space, because some engines are +used with many different format files. + +The Win32 API does not know about file links. So to save up almost +the same amount of memory, all the \TeX{} base engines have been put +in DLLs (\emph{Dynamic Linked Library}). This means that you will have +the following layout: +\begin{alltt} +2006-11-23 07:06 2 560 latex.exe +2007-01-06 23:54 1 073 664 pdftex.dll +2006-01-28 08:05 2 560 pdftex.exe +\end{alltt} +and the \path|latex.exe| file is nothing but a rough copy of +\path|pdftex.exe| using the same core \path|pdftex.dll|. +The same trick has been used for the \path|mktex*.exe| family of programs +which are linked to the \path|mktex.dll| library. + +In fact, a generic tool called \path|irun.exe| is provided to build the +equivalent of Unix hard links for executable files only under Win32. + +\subsection{In case of problems} +\label{sec:troubleshooting} + +\subsubsection{What to do if \texttt{latex} does not find your files?} + +\begin{itemize} + +\item \cmdname{kpsewhich} is the tool of choice to debug any +problem. However, \cmdname{kpsewhich} outputs debug information to +stderr, and the older Windows consoles do not know how to redirect +stderr to a file. (Windows NT and later do support redirections, but +the trick below will work for any console.) For diagnostic purposes you +can temporarily set an environment variable (in a \acro{DOS}/\acro{cmd} box): + +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=err.log +\end{verbatim} +You can also set the debug level: +\begin{verbatim} +SET KPATHSEA_DEBUG=-1 +\end{verbatim} + +Similarly, to redirect stderr to stdout: +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=con: +\end{verbatim} +This way you can capture both stdout and stderr in the same file. +\item Assuming the installation has been done in \path|c:/TeX|, check + the following values: \\ + {\small + \begin{tabular}{ll} + \path|kpsewhich -expand-path $SELFAUTOPARENT| & \path|c:/TeX| \\ + \path|kpsewhich -expand-path $TEXMF| & \path|c:/TeX/texmf....| \\ + \path|kpsewhich -expand-path $TEXMFCNF| & + \path|.;c:/TeX/texmf-var/web2c;| \\ + \path|kpsewhich -expand-var $TEXINPUTS| & \path|.;c:/TeX/texmf/tex//| + \end{tabular} +} +\item If you have other \TeX{}-related values already set in your + environment, please, remove them. They are overriding the ones in + texmf.cnf. +\item Check the values from:\\ +{\small + \begin{tabular}{ll} + \texttt{kpsewhich cmr10.tfm} & \path|c:/TeX/texmf-dist/fonts/tfm/public/cm/cmr10.tfm|\\ + \texttt{kpsewhich latex.fmt}& \path|c:/TeX/texmf-var/web2c/latex.fmt| + \end{tabular} +} +\item At this point, if everything is correct, \TeX{} and friends + should work. If it is not the case, you will need to play with + the \path|-debug=n| option from \path|kpsewhich|, and check back all + the values. Try to identify and report the problem. +\end{itemize} + +\subsubsection{What to do if your setup still does not work as expected?} + +Here are several questions to investigate: + +\begin{enumerate} +\item Is \file{tex.exe} in my \path|PATH|? + +\item Is the \path|TEXMFCNF| variable correctly set to +\path|c:/TeXLive2007/texmf-var/web2c| (default value)? + +\item Are there any errors in the log file generated by the +\file{tlmpgui.exe} program? +\file{tlmpgui.log} can be found in your +\file{TEMP} directory. You can find this by searching for the +string \samp{Error}. Hint: the log file can show some errors after +building all format files. Please do not panic: perhaps some formats +weren't already installed. + +\item Are there any relevant bug fixes at \url{http://tug.org/texlive/}? +(Unlikely, but it doesn't hurt to check.) + +\end{enumerate} + +The \TL{} software consists of hundreds of programs and tens of +thousands of files, all from varying sources. So it is quite difficult to +predict all possible causes for problems. Nevertheless, we will do our +best to help you. (See section~\ref{sec:help}, \p.\pageref{sec:help}.) + +% don't use \Webc so the \uppercase in the headline works. +\section{A user's guide to Web2C} + +\Webc{} is an integrated collection of \TeX-related programs: \TeX{} +itself, \MF{}, \MP, \BibTeX{}, etc. It is the heart of \TL{}. + +A bit of history: The original implementation was by Tomas Rokicki who, +in 1987, developed a first \TeX{}-to-C system based on change files +under Unix, which were primarily the original work of Howard Trickey and +Pavel Curtis. Tim Morgan became the maintainer of the system, and +during this period the name changed to Web-to-C\@. In 1990, Karl Berry +took over the work, assisted by dozens of additional contributors, and +in 1997 he handed the baton to Olaf Weber. + +The \Webc{} system runs on Unix, 32-bit Windows systems, \MacOSX{}, and +other operating systems. It uses Knuth's original sources for \TeX{} and +other basic programs written in \web{} and translates them into C source +code. The core \TeX{} programs are: + +\begin{cmddescription} +\item[bibtex] Maintaining bibliographies. +\item[dmp] \cmdname{troff} to MPX (\MP{} pictures). +\item[dvicopy] Expands virtual font references in \dvi{} files. +\item[dvitomp] \dvi{} to MPX (MetaPost pictures). +\item[dvitype] \dvi{} to human-readable text. +\item[gftodvi] Generic font proofsheets. +\item[gftopk] Generic to packed fonts. +\item[gftype] GF to human-readable text. +\item[makempx] \MP{} label typesetting. +\item[mf] Creating typeface families. +\item[mft] Prettyprinting \MF{} source. +\item[mpost] Creating technical diagrams. +\item[mpto] MetaPost label extraction. +\item[newer] Compare modification times. +\item[patgen] Creating hyphenation patterns. +\item[pktogf] Packed to generic fonts. +\item[pktype] PK to human-readable text. +\item[pltotf] Plain text property list to TFM. +\item[pooltype] Display \web{} pool files. +\item[tangle] \web{} to Pascal. +\item[tex] Typesetting. +\item[tftopl] TFM to plain text property list. +\item[vftovp] Virtual font to virtual property list. +\item[vptovf] Virtual property list to virtual font. +\item[weave] \web{} to \TeX. +\end{cmddescription} + +\noindent The precise functions and syntax of these programs are +described in the documentation of the individual packages and of \Webc{} +itself. However, knowing a few principles governing the whole family of +programs will help you take advantage of your \Webc{} installation. + +All programs honor these standard \acro{GNU} options: +\begin{ttdescription} +\item[-{}-help] print basic usage summary. +\item[-{}-verbose] print detailed progress report. +\item[-{}-version] print version information, then exit. +\end{ttdescription} + +For locating files the \Webc{} programs use the path searching library +\KPS{}. This library uses a combination of environment variables and a +configuration files to optimize searching the (huge) collection of +\TeX{} files. \Webc{} can look at more than one directory tree +simultaneously, which is useful in maintaining \TeX's standard +distribution and local extensions in two distinct trees. To speed up +file searches the root of each tree has a file \file{ls-R}, containing +an entry showing the name and relative pathname for all files under that +root. + +\subsection{Kpathsea path searching} + +Let us first describe the generic path searching mechanism of the \KPS{} +library. + +We call a \emph{search path} a colon- or semicolon\hyph sepa\-rated list +of \emph{path elements}, which are basically directory names. A +search path can come from (a combination of) many sources. To look up +a file \samp{my-file} along a path \samp{.:/dir}, \KPS{} checks each +element of the path in turn: first \file{./my-file}, then +\file{/dir/my-file}, returning the first match (or possibly all +matches). + +In order to adapt optimally to all operating systems' conventions, on +non-Unix systems \KPS{} can use filename separators different from +colon (\samp{:}) and slash (\samp{/}). + +To check a particular path element \var{p}, \KPS{} first checks if a +prebuilt database (see ``Filename data\-base'' on +page~\pageref{Filename-database}) applies to \var{p}, i.e., if the database +is in a directory that is a prefix of \var{p}. If so, the path +specification is matched against the contents of the database. + +If the database does not exist, or does not apply to this path +element, or contains no matches, the filesystem is searched (if this +was not forbidden by a specification starting with \samp{!!}\ and if +the file being searched for must exist). \KPS{} constructs the list +of directories that correspond to this path element, and then checks +in each for the file being sought. + +The ``file must exist'' condition comes into play with \samp{.vf} files and +input files read by \TeX's \cs{openin} command. Such files may not +exist (e.g., \file{cmr10.vf}), and so it would be wrong to search the +disk for them. Therefore, if you fail to update \file{ls-R} when you +install a new \samp{.vf} file, it will never be found. +Each path element is checked in turn: first the database, then the +disk. If a match is found, the search stops and the result is +returned. + +Although the simplest and most common path element is a directory +name, \KPS{} supports additional features in search paths: layered +default values, environment variable names, config file values, users' +home directories, and recursive subdirectory searching. Thus, we say +that \KPS{} \emph{expands} a path element, meaning it transforms all +the specifications into basic directory name or names. This is +described in the following sections in the same order as it takes +place. + +Note that if the filename being searched for is absolute or explicitly +relative, i.e., starts with \samp{/} or \samp{./} or \samp{../}, +\KPS{} simply checks if that file exists. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Path sources} +\label{Path-sources} + +A search path can come from many sources. In the order in which +\KPS{} uses them: + +\begin{enumerate} +\item + A user-set environment variable, for instance, \envname{TEXINPUTS}\@. + Environment variables with a period and a program name appended + override; e.g., if \samp{latex} is the name of the program being run, + then \envname{TEXINPUTS.latex} will override \envname{TEXINPUTS}. +\item + A program-specific configuration file, for exam\-ple, a line + \samp{S /a:/b} in \cmdname{dvips}'s \file{config.ps}. +\item A \KPS{} configuration file \file{texmf.cnf}, containing a line like + \samp{TEXINPUTS=/c:/d} (see below). +\item The compile-time default. +\end{enumerate} +\noindent You can see each of these values for a given +search path by using the debugging options (see ``Debugging actions'' +on page~\pageref{Debugging}). + +\subsubsection{Config files} + +\begingroup\tolerance=3500 +\KPS{} reads \emph{runtime configuration files} named \file{texmf.cnf} +for search path and other definitions. The search path used to look +for these files is named \envname{TEXMFCNF} (by default such a file lives +in the \file{texmf/web2c} subdirectory). \emph{All} +\file{texmf.cnf} files in the search path will be read and definitions +in earlier files override those in later files. Thus, with a search +path of \verb|.:$TEXMF|, values from \file{./texmf.cnf} override those +from \verb|$TEXMF/texmf.cnf|. +\endgroup + +\begin{itemize} +\item + Comments start with \code{\%} and continue to the end of the line. +\item + Blank lines are ignored. +\item + A \bs{} at the end of a line acts as a continuation character, + i.e., the next line is appended. Whitespace at the beginning of + continuation lines is not ignored. +\item + Each remaining line has the form: +\begin{alltt} + \var{variable}[.\var{progname}] [=] \var{value} +\end{alltt}% + where the \samp{=} and surrounding whitespace are optional. +\item + The \ttvar{variable} name may contain any character other + than whitespace, \samp{=}, or \samp{.}, but sticking to + \samp{A-Za-z\_} is safest. +\item + If \samp{.\var{progname}} is present, the definition only + applies if the program that is running is named + \texttt{\var{progname}} or \texttt{\var{progname}.exe}. This allows + different flavors of \TeX{} to have different search paths, for + example. +\item \var{value} may contain any characters except + \code{\%} and \samp{@}. The + \code{\$\var{var}.\var{prog}} feature is not available on the + right-hand side; instead, you must use an additional variable. A + \samp{;}\ in \var{value} is translated to \samp{:}\ if + running under Unix; this is useful to be able to have a single + \file{texmf.cnf} for Unix, \acro{MS-DOS} and Windows systems. +\item + All definitions are read before anything is expanded, so + variables can be referenced before they are defined. +\end{itemize} +A configuration file fragment illustrating most of these points is +\ifSingleColumn +shown below: + +\verbatiminput{examples/ex5.tex} +\else +shown in Figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Path expansion} +\label{Path-expansion} + + +\KPS{} recognizes certain special characters and constructions in +search paths, similar to those available in Unix shells. As a +general example, the complex path, +\verb+~$USER/{foo,bar}//baz+, expands to all subdirectories under +directories \file{foo} and \file{bar} in \texttt{\$USER}'s home +directory that contain a directory or file \file{baz}. These +expansions are explained in the sections below. +%$ +\subsubsection{Default expansion} +\label{Default-expansion} + +\tolerance=2500 +If the highest-priority search path (see ``Path sources'' on +page~\pageref{Path-sources}) contains an \emph{extra colon} (i.e., +leading, trailing, or doubled), \KPS{} inserts at that point the +next-highest-prio\-rity search path that is defined. If that inserted +path has an extra colon, the same happens with the next highest. For +example, given an environment variable setting + +\tolerance=1500 + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +and a \code{TEXINPUTS} value from \file{texmf.cnf} of + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +then the final value used for searching will be: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Since it would be useless to insert the default value in more than one +place, \KPS{} changes only one extra \samp{:}\ and leaves any others in +place. It checks first for a leading \samp{:}, then a trailing +\samp{:}, then a doubled \samp{:}. + +\subsubsection{Brace expansion} + +A useful feature is brace expansion, which means that, for instance, +\verb+v{a,b}w+ expands to \verb+vaw:vbw+. Nesting is allowed. +This is used to implement multiple \TeX{} hierarchies, by +assigning a brace list to \code{\$TEXMF}. +For example, in \file{texmf.cnf}, the following definition +(appproximately; there are actually even more trees) is made: +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +Using this you can then write something like +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +which means that, after looking in the current directory, the +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} +and \code{\$TEXMFMAIN/tex} trees \emph{only}) will be searched (the +last two use using \file{ls-R} data base files). It is a convenient +way for running two parallel \TeX{} structures, one ``frozen'' (on a +\CD, for instance) and the other being continuously updated with new +versions as they become available. By using the \code{\$TEXMF} +variable in all definitions, one is sure to always search the +up-to-date tree first. + +\subsubsection{Subdirectory expansion} +\label{Subdirectory-expansion} + +Two or more consecutive slashes in a path element following a directory +\var{d} is replaced by all subdirectories of \var{d}: first those +subdirectories directly under \var{d}, then the subsubdirectories under +those, and so on. At each level, the order in which the directories are +searched is \emph{unspecified}. + +If you specify any filename components after the \samp{//}, only +subdirectories with matching components are included. For example, +\samp{/a//b} expands into directories \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, and so on, but not \file{/a/b/c} or \file{/a/1}. + +Multiple \samp{//} constructs in a path are possible, but +\samp{//} at the beginning of a path is ignored. + +\subsubsection{List of special characters and their meaning: a summary} + +The following list summarizes the special characters in \KPS{} +configuration files. + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Separator in path specification; at the beginning or + the end of a path it substitutes the default path expansion.\par +\item[\CODE{;}] Separator on non-Unix systems (acts like \code{:}). +\item[\CODE{\$}] Variable expansion. +\item[\CODE{\string~}] Represents the user's home directory. +\item[\CODE{\char`\{...\char`\}}] Brace expansion. +\item[\CODE{//}] Subdirectory expansion (can occur anywhere in + a path, except at its beginning). +\item[\CODE{\%}] Start of comment. +\item[\CODE{\bs}] Continuation character (allows multi-line entries). +\item[\CODE{!!}] Search \emph{only} database to locate file, \emph{do + not} search the disk. +\end{ttdescription} + + +\subsection{Filename databases} +\label{Filename-database} + +\KPS{} goes to some lengths to minimize disk accesses for searches. +Nevertheless, at installations with enough directories, searching each +possible directory for a given file can take an excessively long time +(this is especially true if many hundreds of font directories have to +be traversed.) Therefore, \KPS{} can use an externally-built plain text +``database'' file named \file{ls-R} that maps files to directories, +thus avoiding the need to exhaustively search the disk. + +A second database file \file{aliases} allows you to give additional +names to the files listed in \file{ls-R}. This can be helpful to +confirm to \acro{DOS} 8.3 filename conventions in source files. + +\subsubsection{The filename database} +\label{ls-R} + +As explained above, the name of the main filename database must be +\file{ls-R}. You can put one at the root of each \TeX{} hierarchy in +your installation that you wish to be searched (\code{\$TEXMF} by +default); most sites have only one hierarchy. \KPS{} looks for +\file{ls-R} files along the \code{TEXMFDBS} path. + +The recommended way to create and maintain \samp{ls-R} is to run the +\code{mktexlsr} script included with the distribution. It is invoked +by the various \samp{mktex}\dots\ scripts. In principle, this script +just runs the command +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +presuming your system's \code{ls} produces the right output format +(\acro{GNU} \code{ls} is all right). To ensure that the database is +always up-to-date, it is easiest to rebuild it regularly via +\code{cron}, so that it is automatically updated when the installed +files change, such as after installing or updating a \LaTeX{} package. + +If a file is not found in the database, by default \KPS{} goes ahead +and searches the disk. If a particular path element begins with +\samp{!!}, however, \emph{only} the database will be searched for that +element, never the disk. + + +\subsubsection{kpsewhich: Standalone path searching} +\label{Invoking-kpsewhich} + +The \texttt{kpsewhich} program exercises path searching independent of any +particular application. This can be useful as a sort of \code{find} +program to locate files in \TeX{} hierarchies (this is used heavily in +the distributed \samp{mktex}\dots\ scripts). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +The options specified in \ttvar{option} start with either \samp{-} +or \samp{-{}-}, and any unambiguous abbreviation is accepted. + +\KPS{} looks up each non-option argument on the command line as a +filename, and returns the first file found. There is no option to +return all the files with a particular name (you can run the Unix +\samp{find} utility for that). + +The more important options are described next. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Set the resolution to \ttvar{num}; this only affects \samp{gf} + and \samp{pk} lookups. \samp{-D} is a synonym, for compatibility + with \cmdname{dvips}. Default is 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Set the format for lookup to \ttvar{name}. By default, the + format is guessed from the filename. For formats which do not have + an associated unambiguous suffix, such as \MP{} support files and + \cmdname{dvips} configuration files, you have to specify the name as + known to \KPS{}, such as \texttt{tex} or \texttt{enc files}. Run + \texttt{kpsewhich -{}-help} for a list. + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Set the mode name to \ttvar{string}; this only affects \samp{gf} + and \samp{pk} lookups. No default: any mode will be found. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Do everything possible to find the files, notably including + searching the disk. By default, only the \file{ls-R} database is + checked, in the interest of efficiency. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Search along the path \ttvar{string} (colon-separated as usual), + instead of guessing the search path from the filename. \samp{//} and + all the usual expansions are supported. The options \samp{-{}-path} + and \samp{-{}-format} are mutually exclusive. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Set the program name to \texttt{\var{name}}. + This can affect the search paths via the \texttt{.\var{progname}} + feature. + The default is \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + shows the path used for file lookups of file type \texttt{\var{name}}. + Either a filename extension (\code{.pk}, \code{.vf}, etc.) or a + name can be used, just as with \samp{-{}-format} option. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + sets the debugging options to \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Examples of use} +\label{SExamplesofuse} + +Let us now have a look at \KPS{} in action. Here's a straightforward search: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +We are looking for the file \file{article.cls}. Since the \samp{.cls} +suffix is unambiguous we do not need to specify that we want to look for a +file of type \optname{tex} (\TeX{} source file directories). We find it in +the subdirectory \file{tex/latex/base} below the \samp{texmf-dist} \TL\ +directory. Similarly, all of the following are found without problems +thanks to their unambiguous suffix. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +That last is a \BibTeX{} bibliography database for \textsl{TUGBoat} articles. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Font bitmap glyph files of type \file{.pk} are used by display +programs like \cmdname{dvips} and \cmdname{xdvi}. Nothing is returned in +this case since there are no pre-generated Computer Modern \samp{.pk} +files in \TL{}\Dash the Type~1 variants are used by default. +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} + +For these fonts (a phonetic alphabet from the University of Washington) +we had to generate \samp{.pk} files, and since the default \MF{} mode on +our installation is \texttt{ljfour} with a base resolution of 600\dpi{} +(dots per inch), this instantiation is returned. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +In this case, when specifying that we are interested in a resolution +of 300\dpi{} (\texttt{-dpi=300}) we see that no such font is available on +the system. A program like \cmdname{dvips} or \cmdname{xdvi} would +go off and actually build the required \texttt{.pk} files +using the script \cmdname{mktexpk}. + +Next we turn our attention to \cmdname{dvips}'s header and configuration +files. We first look at one of the commonly used files, the general +prolog \file{tex.pro} for \TeX{} support, before turning our attention +to the generic configuration file (\file{config.ps}) and the \PS{} font +map \file{psfonts.map}\Dash as of 2004, map and encoding files have +their own search paths and new location in \dirname{texmf} trees. As +the \samp{.ps} suffix is ambiguous we have to specify explicitly which +type we are considering (\optname{dvips config}) for the file +\texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +We now take a closer look at the \acro{URW} Times \PS{} support +files. The prefix for these in the standard font naming scheme is +\samp{utm}. The first file we look at is the configuration file, +which contains the name of the map file: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +The contents of that file is +\begin{alltt} + p +utm.map +\end{alltt} +which points to the file \file{utm.map}, which we want to +locate next. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +This map file defines the file names of the Type~1 \PS{} fonts in +the URW collection. Its contents look like (we only show part of the +lines): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +It should be evident from these examples how you can easily locate the +whereabouts of a given file. This is especially important if you suspect +that the wrong version of a file is picked up somehow, since +\cmdname{kpsewhich} will show you the first file encountered. + +\subsubsection{Debugging actions} +\label{Debugging} + +Sometimes it is necessary to investigate how a program resolves file +references. To make this practical, \KPS{} offers various levels of +debugging output: + +\begin{ttdescription} +\item[\texttt{\ 1}] \texttt{stat} calls (disk lookups). When running + with an up-to-date \file{ls-R} database this should almost give no + output. +\item[\texttt{\ 2}] References to hash tables (such as \file{ls-R} + databases, map files, configuration files). +\item[\texttt{\ 4}] File open and close operations. +\item[\texttt{\ 8}] General path information for file types + searched by \KPS. This is useful to find out where a particular + path for the file was defined. +\item[\texttt{16}] Directory list for each path element (only relevant + for searches on disk). +\item[\texttt{32}] File searches. +\end{ttdescription} +A value of \texttt{-1} will set all the above options; in practice, +this is usually the most convenient. + +Similarly, with the \cmdname{dvips} program, by setting a combination of +debug switches, one can follow in detail where files are being picked up +from. Alternatively, when a file is not found, the debug trace shows in +which directories the program looks for the given file, so that one can +get an indication what the problem~is. + +Generally speaking, as most programs call the \KPS{} library +internally, one can select a debug option by using the +\envname{KPATHSEA\_DEBUG} environment variable, and setting it to (a +combination of) values as described in the above list. + +(Note for Windows users: it is not easy to redirect +all messages to a file in this system. For diagnostic purposes +you can temporarily \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Let us consider, as an example, a small \LaTeX{} source file, +\file{hello-world.tex}, which contains the following input. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +This little file only uses the font \file{cmr10}, so let us look at +how \cmdname{dvips} prepares the \PS{} file (we want to use the Type~1 +version of the Computer Modern fonts, hence the option \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In this case we have combined \cmdname{dvips}'s debug class 4 (font +paths) with \KPS's path element expansion (see \cmdname{dvips} Reference +Manual, \OnCD{texmf/doc/html/dvips/dvips_toc.html}). +The output (slightly rearranged) appears in +Figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} starts by locating its working files. First, +\file{texmf.cnf} is found, which gives the definitions of the search +paths for the other files, then the file database \file{ls-R} (to +optimize file searching) and the file \file{aliases}, which makes it +possible to declare several names (e.g., a short \acro{DOS}-like 8.3 and +a more natural longer version) for the same file. Then \cmdname{dvips} +goes on to find the generic configuration file \file{config.ps} +before looking for the customization file \file{.dvipsrc} (which, in +this case is \emph{not found}). Finally, \cmdname{dvips} locates the +config file for the Computer Modern \PS{} fonts \file{config.cms} +(this was initiated with the \texttt{-Pcms} option on the \cmdname{dvips} +command). This file contains the list of the map files which +define the relation between the \TeX{}, \PS{} and file system +names of the fonts. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} thus goes on to find all these files, plus the generic +map file \file{psfonts.map}, which is always loaded (it contains +declarations for commonly used \PS{} fonts; see the last part of +Section \ref{SExamplesofuse} for more details about \PS{} map +file handling). + +At this point \cmdname{dvips} identifies itself to the user: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Then it goes on to look for the prolog file \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Then it goes on to look for the prolog file \file{texc.pro} (see +Figure~\ref{fig:dvipsdbgb}). +\fi + +After having found the file in question, \cmdname{dvips} outputs +date and time, and informs us that it will generate the +file \file{hello-world.ps}, then that it needs the font file +\file{cmr10}, and that the latter is declared as ``resident'' (no +bitmaps needed): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Now the search is on for the file \file{cmr10.tfm}, which is found, +then a few more prolog files (not shown) are referenced, and finally +the Type~1 instance \file{cmr10.pfb} of the font is located and +included in the output file (see last line). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Runtime options} + +Another useful feature of \Webc{} is its possibility to control a number +of memory parameters (in particular, array sizes) via the runtime file +\file{texmf.cnf} read by \KPS{}. The memory settings can be found in +Part 3 of that file in the \TL{} distribution. The more important +are: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + Total words of memory available, for + \TeX{}, \MF{} and \MP. You must make a new format file for each + different setting. For instance, you could generate a ``huge'' + version of \TeX{}, and call the format file \texttt{hugetex.fmt}. + Using the standard way of specifying the program name used by \KPS{}, + the particular value of the \texttt{main\_memory} variable will then + be read from \file{texmf.cnf}. +\item[\texttt{extra\_mem\_bot}] + Extra space for ``large'' \TeX{} data structures: + boxes, glue, breakpoints, etc. Especially useful if you use + \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Number of words for font information available for \TeX. This + is more or less the total size of all TFM files read. +\item[\texttt{hash\_extra}] + Additional space for the hash table of control sequence names. + Approximately 10,000 control sequences can be stored in the main + hash table; if you have a large book with numerous cross-references, + this might not be enough. The default value of + \texttt{hash\_extra} is \texttt{50000}. +\end{ttdescription} + +\noindent Of course, this facility is no substitute for truly dynamic +arrays and memory allocation, but since these are extremely difficult to +implement in the present \TeX{} source, these runtime parameters provide +a practical compromise allowing some flexibility. + + +\begin{comment} +\section{Building on a new Unix platform} + +If you have a platform for which executables are not included, you will +need to compile \TeX{} and friends. This is not as hard as it +sounds. What you need is all in the directory \texttt{source} in the +distribution. + +\subsection{Prerequisites} + +You will need at least 100 megabytes of disk space to compile all of +\TeX{} and its support programs. You'll also need an \acro{ANSI} C +compiler, a \cmdname{make} utility, a lexical scanner, and a parser +generator. We recommend the \acro{GNU} version of these programs +(\cmdname{gcc}, \acro{GNU} \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). You may be able to work with other C compilers and +\cmdname{make} programs, but you will need a good understanding of +building Unix programs to sort out problems. + +Also, the command \texttt{uname} must return a sensible value. + + +\subsection{Configuration} + +To begin, perform a normal installation of \TL{} to your disk (see +section~\ref{sec:unix-install-disk} on +\p.\pageref{sec:unix-install-disk}). You may wish to skip installing +all of the prebuilt binaries. + +Then, unpack the source from the compressed \texttt{tar} file in the +directory \dirname{source} to your disk and change directory to where +you placed it. + +Next, run \cmdname{configure} with a command line like this: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +The \optname{-prefix} directory is the one where you installed the +support tree; the directory layout will be as follows (where \$TEXDIR +stands for the directory you chose): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & main tree with fonts,\\ + & \qquad macros, etc\\ + \dirname{$TEXDIR/man} & Unix manual pages\\ + \dirname{$TEXDIR/info} & \acro{GNU} style Info manuals\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaries\\ +\end{tabular} +%$ + +If you want to leave out the \dirname{$PLATFORM} directory level, +i.e., put the binaries directly into \dirname{$TEXDIR/bin}, specify +the \verb|--disable-multiplatform| option to \cmdname{configure}. + +Have a look at the output of \verb|./configure --help| for more +options you can use. For example, you can skip building of \OMEGA{} and +\eTeX{}. + + +\subsection{Running \cmdname{make}} + +Make sure the shell variable or option \texttt{noclobber} is not set. +Then, run the main \cmdname{make} like this: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +and relax\ldots + +Alternatively, you want to log all the output, as in: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Before you believe that everything went ok, please check the log file +for errors: \acro{GNU} \cmdname{make} always uses the string \samp{***} +whenever a command fails. Also, check if all the programs were built: + +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +The result should be over 200 (you can check the exact number with the +\dirname{bin} directory contents in the distribution). + +If you need special privileges for \texttt{make install}, you can +separate the \samp{make world} into two different runs, like this: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +After you've installed your new binaries, you should follow the normal +post-installation procedures, given in section~\ref{sec:postinstall} +(\p.\pageref{sec:postinstall}). + +Also, if you'd like to make your binaries available to others, please +contact us. We'll be happy to put them on the \TL\ web pages. +\end{comment} + +\section{Acknowledgements} + +\TL{} is a joint effort by virtually all of the \TeX{} user groups. +This edition of \TL{} was overseen by Sebastian Rahtz and Karl Berry. +The other principal contributors are listed below. + +\begin{itemize*} + +\item The English, German, Dutch, and Polish \TeX{} user groups +(\acro{TUG}, \acro{DANTE} e.V., \acro{NTG}, and \acro{GUST}, +respectively), which together provide the necessary technical +and administrative infrastructure. Please join your local user group! + +\item The \acro{CTAN} team, which distributes the \TL{} images and +provides the common infrastructure for package updates, upon which \TL{} +depends. + +\item Peter Breitenlohner and the \eTeX\ team for the stable foundation +of future \TeX's. + +\item Thomas Esser, without whose marvelous \teTeX{} package \TL{} +would certainly not exist, and whose continual help makes it a better +product. + +\item Michel Goossens, who co-authored the original documentation. + +\item Eitan Gurari, whose \TeX4ht was used to create the \HTML{} +version of this documentation, and who worked tirelessly to improve +it at short notice. + +\item Hans Hagen, for major testing and making the \ConTeXt\ format +conform to \TL's needs. + +\item \Thanh, Martin Schr\"oder, and the pdf\TeX\ team for continuing +enhancements of \TeX's abilities. + +\item Taco Hoekwater, for renewed development efforts on MetaPost and +\TeX\ itself. + +\item Pawe{\l} Jackowski, for the Windows installer \cmdname{tlpm}, +and Tomasz {\L}uczak, for \cmdname{tlpmgui}. + +\item Akira Kakuto, for great assistance in incorporating the Windows +binaries from his \acro{W32TEX} distribution +(\url{http://www.fsci.fuk.kindai.ac.jp/kakuto/win32-ptex/}). + +\item Jonathan Kew and his employer \acro{SIL}, for the major new +development of Xe\TeX{} and taking the time and trouble to integrate it +in \TL{}. + +\item Reinhard Kotucha, for helping with the massive task of updating +packages in \TL{}, as well as Windows research efforts, the +\texttt{getnonfreefonts} script, and more. + +\item Petr Ol\v{s}ak, who coordinated and checked all the Czech and Slovak +material very carefully. + +\item Toshio Oshima, for his \cmdname{dviout} previewer for Windows. + +\item Fabrice Popineau, for the original Windows support in \TL{}. + +\item Norbert Preining, for helping with the \TL{} infrastructure and +package updates, and coordinating the Debian version of \TL{} (together +with Frank K\"uster), making many suggestions for improvement along the +way. + +\item Staszek Wawrykiewicz, the principal tester for all of \TL{}, +and coordinator of the many major Polish contributions: fonts, Windows +installation, and more. + +\item Olaf Weber, for his patient assembly and maintenance of Web2C, +upon which all else depends. + +\item Gerben Wierda, for creating and maintaining the \MacOSX\ support, +and much integration and testing. + +\item Graham Williams, on whose work the catalogue of packages depends. + +\end{itemize*} + +Builders of the binaries: +Tigran Aivazian and Hartmut Henkel (\pkgname{x86\_64-linux}), +Akira Kakuto and Fabrice Popineau (\pkgname{win32}), +Manfred Lotz (\pkgname{i386-freebsd}), +Norbert Preining (\pkgname{alpha-linux}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-linux}, + \pkgname{sparc-solaris}), +Karl Berry (\pkgname{i386-linux}), +Olaf Weber (\pkgname{mips-irix}), +Gerben Wierda (\pkgname{i386-darwin}, \pkgname{powerpc-darwin}). + +Documentation and translation updates: +Karl Berry (English), +Daniel Flipo \& Fabrice Popineau (French), +G\"unter Partosch \& Hartmut Henkel (German), +Petr Sojka \& Jan Busa (Czech\slash Slovak), +Boris Veytsman (Russian), +Staszek Wawrykiewicz (Polish). + +Of course the most important acknowledgement must go to Donald Knuth, first +for inventing \TeX, and then for giving it to the world. + + +\section{Release history} +\label{sec:history} + +\subsection{Past} + +Discussion began in late 1993 when the Dutch \TeX{} Users Group was +starting work on its 4All\TeX{} \CD{} for \acro{MS-DOS} users, and it +was hoped at that time to issue a single, rational, \CD{} for all +systems. This was too ambitious a target for the time, but it did spawn +not only the very successful 4All\TeX{} \CD{}, but also the \acro{TUG} +Technical Council working group on a \emph{\TeX{} Directory Structure} +(\url{http://tug.org/tds}), which specified how to create consistent and +manageable collections of \TeX{} support files. A complete draft of the +\TDS{} was published in the December 1995 issue of \textsl{TUGboat}, and +it was clear from an early stage that one desirable product would be a +model structure on \CD{}. The distribution you now have is a very direct +result of the working group's deliberations. It was also clear that the +success of the 4All\TeX{} \CD{} showed that Unix users would benefit +from a similarly easy system, and this is the other main strand of +\TL. + +We first undertook to make a new Unix-based \TDS{} \CD{} in the autumn +of 1995, and quickly identified Thomas Esser's \teTeX{} as the ideal +setup, as it already had multi-platform support and was built with +portability across file systems in mind. Thomas agreed to help, and work +began seriously at the start of 1996. The first edition was released in +May 1996. At the start of 1997, Karl Berry completed a major new release +of Web2c, which included nearly all the features which Thomas Esser had +added in \teTeX, and we decided to base the 2nd edition of the \CD{} on +the standard \Webc, with the addition of \teTeX's \texttt{texconfig} +script. The 3rd edition of the \CD{} was based on a major revision of +\Webc, 7.2, by Olaf Weber; at the same time, a new revision of \teTeX +was being made, and \TL{} included almost all of its features. The +4th edition followed the same pattern, using a new version of \teTeX, +and a new release of \Webc{} (7.3). The system now included a complete +Windows setup. + +For the 5th edition (March 2000) many parts of the \CD{} were revised +and checked, updating hundreds of packages. Package details were stored +in XML files. But the major change for \TeX\ Live 5 was that all +non-free software was removed. Everything in \TL{} is now intended +to be compatible with the Debian Free Software Guidelines +(\url{http://www.debian.org/intro/free}); we have done our best to check +the license conditions of all packages, but we would very much +appreciate hearing of any mistakes. + +The 6th edition (July 2001) had much more material updated. The major +change was a new install concept: the user could select a more exact set +of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, +etc., but also prepares an appropriate \texttt{language.dat}. + +The 7th edition of 2002 had the notable addition of \MacOSX{} support, +and the usual myriad of updates to all sorts of packages and +programs. An important goal was integration of the source back with +\teTeX, to correct the drift apart in versions~5 and~6. + +\subsubsection{2003} + +In 2003, with the continuing flood of updates and additions, we found +that \TL{} had grown so large it could no longer be contained on a +single \CD, so we split it into three different distributions (see +section~\ref{sec:multiple-dist}, \p.\pageref{sec:multiple-dist}). In +addition: + +\begin{itemize*} +\item At the request of the \LaTeX{} team, we changed the standard + \cmdname{latex} and \cmdname{pdflatex} commands to now use \eTeX{} (see + \p.\pageref{text:etex}). +\item The new Latin Modern fonts were included (and are recommended). +\item Support for Alpha \acro{OSF} was removed + (\acro{HPUX} support was removed previously), since no one had (or + volunteered) hardware available on which to compile new binaries. +\item Windows setup was substantially changed; for the first time + an integrated environment based on XEmacs was introduced. +\item Important supplementary programs for Windows + (Perl, Ghost\-script, Image\-Magick, Ispell) are now installed + in the \TL{} installation directory. +\item Font map files used by \cmdname{dvips}, \cmdname{dvipdfm} + and \cmdname{pdftex} are now generated by the new program + \cmdname{updmap} and installed into \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{}, and \MP{} now, by default, output most input + characters (32 and above) as themselves in output (e.g., + \verb|\write|) files, + log files, and the terminal, i.e., \emph{not} translated using the + \verb|^^| notation. In \TL{}~7, this translation was + dependent on the system locale settings; now, locale settings do + not influence the \TeX{} programs' behavior. If for some reason + you need the \verb|^^| output, rename the file + \verb|texmf/web2c/cp8bit.tcx|. (Future releases will have cleaner + ways to control this.) +\item This documentation was substantially revised. +\item Finally, since the edition numbers had grown unwieldy, + the version is now simply identified by the year: \TL{} 2003. +\end{itemize*} + + +\subsubsection{2004} + +2004 saw many changes: + +\begin{itemize} + +\item If you have locally-installed fonts which use their own +\filename{.map} or (much less likely) \filename{.enc} support files, you +may need to move those support files. + +\filename{.map} files are now searched for in subdirectories of +\dirname{fonts/map} only (in each \filename{texmf} tree), along the +\envname{TEXFONTMAPS} path. Similarly, \filename{.enc} files are now +searched for in subdirectories of \dirname{fonts/enc} only, along the +\envname{ENCFONTS} path. \cmdname{updmap} will attempt to warn about +problematic files. + +For methods of handling this and other information, please see +\url{http://tug.org/texlive/mapenc.html}. + +\item The \TK\ has been expanded with the addition of a \MIKTEX-based +installable \CD, for those who prefer that implementation to Web2C. +See section~\ref{sec:struct-tl} (\p.\pageref{sec:struct-tl}). + +\item Within \TL, the single large \dirname{texmf} tree of previous +releases has been replaced by three: \dirname{texmf}, +\dirname{texmf-dist}, and \dirname{texmf-doc}. See +section~\ref{sec:tld} (\p.\pageref{sec:tld}), and the \filename{README} +files for each. + +\item All \TeX-related input files are now collected in +the \dirname{tex} subdirectory of \dirname{texmf*} trees, rather than +having separate sibling directories \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex}, etc. See +\CDref{texmf-doc/doc/english/tds/tds.html\#Extensions} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Extensions}}. + +\item Helper scripts (not meant to be invoked by users) are now located +in a new \dirname{scripts} directory of \dirname{texmf*} trees, and +searched for via \verb|kpsewhich -format=texmfscripts|. So if you have +programs which call such scripts, they'll need to be adjusted. See +\CDref{texmf-doc/doc/english/tds/tds.html\#Scripts} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Scripts}}. + +\item Almost all formats leave most characters printable as +themselves via the ``translation file'' \filename{cp227.tcx}, instead of +translating them with the \verb|^^| notation. Specifically, characters +at positions 32--256, plus tab, vertical tab, and form feed are +considered printable and not translated. The exceptions are plain \TeX\ +(only 32--126 printable), \ConTeXt\ (0--255 printable), and the +\OMEGA-related formats. This default behavior is almost the same as in +\TL\,2003, but it's implemented more cleanly, with more possibilities +for customization. See \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. +(By the way, with Unicode input, \TeX\ may output partial character +sequences when showing error contexts, since it is byte-oriented.) + +\item \textsf{pdfetex} is now the default engine for all formats +except (plain) \textsf{tex} itself. (Of course it generates \acro{DVI} +when run as \textsf{latex}, etc.) This means, among other things, that +the microtypographic features of \textsf{pdftex} are available in +\LaTeX, \ConTeXt, etc., as well as the \eTeX\ features +(\OnCD{texmf-dist/doc/etex/base/}). + +It also means it's \emph{more important than ever} to use the +\pkgname{ifpdf} package (works with both plain and \LaTeX) or equivalent +code, because simply testing whether \cs{pdfoutput} or some other +primitive is defined is not a reliable way to determine if \acro{PDF} +output is being generated. We made this backward compatible as best we +could this year, but next year, \cs{pdfoutput} may be defined even when +\acro{DVI} is being written. + +\item pdf\TeX\ (\url{http://pdftex.org}) has many new features: + + \begin{itemize*} + + \item \cs{pdfmapfile} and \cs{pdfmapline} provide font map support + from within a document. + + \item Microtypographic font expansion can be used more easily.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item All parameters previously set through the special configuration + file \filename{pdftex.cfg} must now be set through primitives, + typically in \filename{pdftexconfig.tex}; \filename{pdftex.cfg} is no + longer supported. Any extant \filename{.fmt} files must be redumped + when \filename{pdftexconfig.tex} is changed. + + \item See the pdf\TeX\ manual for more: \OnCD{texmf/doc/pdftex/manual}. + + \end{itemize*} + +\item The \cs{input} primitive in \cmdname{tex} (and \cmdname{mf} and +\cmdname{mpost}) now accepts double quotes containing spaces and other +special characters. Typical examples: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +See the Web2C manual for more: \OnCD{texmf/doc/web2c}. + +\item enc\TeX\ support is now included within Web2C and consequently all +\TeX\ programs, via the \optname{-enc} option\Dash \emph{only when +formats are built}. enc\TeX\ supports general re-encoding of input and +output, enabling full support of Unicode (in \acro{UTF}-8). See +\OnCD{texmf-dist/doc/generic/enctex/} and +\url{http://www.olsak.net/enctex.html}. + +\item Aleph, a new engine combining \eTeX\ and \OMEGA, is available. +A little information is available in \OnCD{texmf-dist/doc/aleph/base} +and \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. The +\LaTeX-based format for Aleph is named \textsf{lamed}. + +\item The latest \LaTeX\ release has a new version of the +\acro{LPPL}\Dash now officially a Debian-approved license. Assorted +other updates, see the \filename{ltnews} files in +\OnCD{texmf-dist/doc/latex/base}. + +\item \cmdname{dvipng}, a new program for converting \acro{DVI} to +\acro{PNG} image files, is included. See \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item We reduced the \pkgname{cbgreek} package to a ``medium'' sized set +of fonts, with the assent and advice of the author (Claudio Beccari). +The excised fonts are the invisible, outline, and transparency ones, +which are relatively rarely used, and we needed the space. The full set +is of course available from \acro{CTAN} +(\url{http://www.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} has been removed; just use \cmdname{xdvi}. + +\item The \cmdname{ini} and \cmdname{vir} commands (links) for +\cmdname{tex}, \cmdname{mf}, and \cmdname{mpost} are no longer created, +such as \cmdname{initex}. The \cmdname{ini} functionality has been +available through the command-line option \optname{-ini} for years now. + +\item \textsf{i386-openbsd} platform support was removed. Since the +\pkgname{tetex} package in the \acro{BSD} Ports system is available, and +\acro{GNU/}Linux and Free\acro{BSD} binaries were available, it seemed +volunteer time could be better spent elsewhere. + +\item On \textsf{sparc-solaris} (at least), you may have to set the +\envname{LD\_LIBRARY\_PATH} environment variable to run the +\pkgname{t1utils} programs. This is because they are compiled with C++, +and there is no standard location for the runtime libraries. (This is +not new in 2004, but wasn't previously documented.) Similarly, on +\textsf{mips-irix}, the \acro{MIPS}pro 7.4 runtimes are required. + +\end{itemize} + +\subsubsection{2005} + +2005 saw the usual huge number of updates to packages and programs. +The infrastructure stayed relatively stable from 2004, but inevitably +there were some changes there as well: + +\begin{itemize} + +\item New scripts \cmdname{texconfig-sys}, \cmdname{updmap-sys}, and + \cmdname{fmtutil-sys} were introduced, which modify the + configuration in the system trees. The \cmdname{texconfig}, + \cmdname{updmap}, and \cmdname{fmtutil} scripts now modify + user-specific files, under \dirname{$HOME/.texlive2005}. + See section~\ref{sec:texconfig}, \p.\pageref{sec:texconfig}. + +\item Corresponding new variables \envname{TEXMFCONFIG} and + \envname{TEXMFSYSCONFIG} to specify the trees where configuration + files (user or system, respectively) are found. Thus, you may + need to move personal versions of \filename{fmtutil.cnf} and + \filename{updmap.cfg} to these places; another option is to + redefine \envname{TEXMFCONFIG} or \envname{TEXMFSYSCONFIG} in + \filename{texmf.cnf}. In any case the real location of these files + and the values of \envname{TEXMFCONFIG} and \envname{TEXMFSYSCONFIG} + must agree. + See section~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. + +\item Last year, we kept \verb|\pdfoutput| and other primitives undefined + for DVI output, even though the \cmdname{pdfetex} program was + being used. This year, as promised, we undid that compatibility + measure. So if your document uses \verb|\ifx\pdfoutput\undefined| + to test if PDF is being output, it will need to be changed. You + can use the package \pkgname{ifpdf.sty} (which works under both + plain \TeX\ and \LaTeX) to do this, or steal its logic. + +\item Last year, we changed most formats to output (8-bit) characters as + themselves (see previous section). The new TCX file + \filename{empty.tcx} now provides an easier way to get the + original \verb|^^| notation if you so desire, as in: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + +\item The new program \cmdname{dvipdfmx} is included for translation of + DVI to PDF; this is an actively maintained update of + \cmdname{dvipdfm} (which is also still available for now, though + no longer recommended). + +\item The new programs \cmdname{pdfopen} and \cmdname{pdfclose} are included + to allow reloading of pdf files in the Adobe Acrobat Reader without + restarting the program. (Other pdf readers, notably \cmdname{xpdf}, + \cmdname{gv}, and \cmdname{gsview}, have never suffered from this + problem.) + +\item For consistency, the variables \envname{HOMETEXMF} and + \envname{VARTEXMF} have been renamed to \envname{TEXMFHOME} and + \envname{TEXMFSYSVAR}, respectively. There is also + \envname{TEXMFVAR}, which is by default user-specific. See the + first point above. + +\end{itemize} + + +\subsection{Present} +\label{tlcurrent} + +In 2006--2007, the major new addition to \TL{} was the Xe\TeX{} program, +available as the \texttt{xetex} and \texttt{xelatex} programs; see +\url{http://scripts.sil.org/xetex}. + +MetaPost also received a notable update, with more planned for the +future (\url{http://tug.org/metapost/articles}), likewise pdf\TeX{} +(\url{http://tug.org/applications/pdftex}) + +The \TeX\ \filename{.fmt} (high-speed format) and the similar files for +MetaPost and \MF\ are now stored in subdirectories of \dirname{texmf/web2c}, +instead of in the directory itself (although the directory is still +searched, for the sake of existing \filename{.fmt}'s). The +subdirectories are named for the `engine' in use, such as \filename{tex} +or \filename{pdftex} or \filename{xetex}. This change should be +invisible in normal use. + +The (plain) \texttt{tex} program no longer reads \texttt{\%\&} first +lines to determine what format to run; it is the pure Knuthian \TeX. +(\LaTeX\ and everything else do still read \texttt{\%\&} lines). + +The installation scripts now accept various environment variables to +allow for non-interactive installation; see +section~\ref{sec:noninteractive-install}. + +Of course the year also saw (the usual) hundreds of other updates to +packages and programs. As usual, please check \acro{CTAN} +(\url{http://www.ctan.org}) for updates. + +Internally, the source tree is now stored in Subversion, with a standard +web interface for viewing the tree, as linked from our home page. +Although not visible in the final distribution, we expect this will +provide a stable development foundation for future years. + +Finally, in May 2006 Thomas Esser announced that he would no longer be +updating te\TeX{} (\url{http://tug.org/tetex}). As a result, there was +been a surge of interest in \TL{}, especially among \acro{GNU}/Linux +distributors. (There is a new \texttt{tetex} installation scheme in +\TL{}, which provides an approximate equivalent.) We hope this will +eventually translate to improvements in the \TeX\ environment for +everyone. + + +\subsection{Future} + +\emph{\TL{} is not perfect!} (And never will be.) We intend to +continue to release new versions, and would like to provide more +help material, more utilities, more installation programs, and (of +course) an ever-improved and checked tree of macros and fonts. This work +is all done by hard-pressed volunteers in their limited spare time, and +a great deal remains to be done. If you can help, don't hesitate to put +your name forward! + +Please send corrections, suggestions, and offers of help to:\hfill\null +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Happy \TeX ing!} + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2008.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2008.tex new file mode 100644 index 00000000000..a172d5f409e --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2008.tex @@ -0,0 +1,2951 @@ +% $Id: live.tex 9531 2008-07-13 21:12:58Z siepo $ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +\documentclass{article} +\let\tldocenglish=1 % for live4ht.cfg +\usepackage{tex-live} +\usepackage[latin1]{inputenc} % translators: use your preferred encodings. +\usepackage[T1]{fontenc} + +\begin{document} + +\title{% + {\huge \textit{The \TeX\ Live Guide}\\\smallskip}% + {\LARGE \textsf{\TL{} 2008}}% +} + +\author{Karl Berry, editor \\[3mm] + \url{http://tug.org/texlive/} + } + +\date{August 2008} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +%\listoftables +\end{multicols} + +\section{Introduction} +\label{sec:intro} + +\subsection{\TeX\ Live and the \TeX\ Collection} + +This document describes the main features of the \TL{} software +distribution\Dash \TeX{} and related programs for \GNU/Linux +and other Unix flavors, \MacOSX, and Windows systems. + +You may have acquired \TL{} by downloading, or on the \TK{} \DVD, +which \TeX{} usergroups distribute among their members. Section +\ref{sec:tl-coll-dists} briefly describes the contents of this \DVD. +Both \TL{} and the \TK{} are cooperative efforts by the \TeX{} user +groups. This document mainly describes \TL{} itself. + +\TL{} includes executables for \TeX{}, \LaTeXe{}, \ConTeXt, +\MF, \MP, \BibTeX{} and many other programs; an extensive collection +of macros, fonts and documentation; and support for typesetting in +many different scripts from around the world. + +\TL{} packages are regularly updated from +\acro{CTAN}: \url{http://www.ctan.org}. + +For a brief summary of the major changes in this edition of \TL{}, +see the end of the document, section~\ref{sec:history} +(\p.\pageref{sec:history}). + +\subsection{Operating system support} +\label{sec:os-support} + +\TL{} contains binaries for many Unix-based architectures, +including \MacOSX. The included sources should enable installation +on platforms for which we do not have binaries. + +As to Windows: only Windows 2000 and later are supported. Windows +9\textit{x}, ME and NT have been dropped. Because of this +change, Windows requires much less special treatment compared to +the Unix systems. There are no 64-bit executables for Windows, but the +32-bit executables should run on 64-bit systems. + +See section~\ref{sec:tl-coll-dists} for alternate solutions +for Windows and \MacOSX. + +\subsection{Basic installation of \protect\TL{}} +\label{sec:basic} + +You can install \TL{} either from \DVD{} or over the Internet. The net +installer itself is small, and downloads everything requested from the +Internet. The net installer is an attractive option if you need only a +fraction of the complete \TL. + +The \DVD{} installer lets you install to a local disk, but you can +also run \TL{} directly from the \DVD{} (or from a \DVD{} image, if +your system supports that). + +\noindent This is described in the +installation sections following, but here is a quick start: + +\begin{itemize*} + +\item The installation script is named \filename{install-tl}. It can + operate in both a \GUI{} mode (default for Windows) and + a text mode (default for everything else). You can force one mode or + the other with the options \code{-gui} and \code{-no-gui}, respectively. + +\item One of the installed items is a new program, the `\TL\ Manager', + named \prog{tlmgr}. Like the installer, it can be used in both \GUI{} + mode and in text mode. You can use it to install and uninstall + packages and do various configuration tasks. + +\end{itemize*} + + +\subsection{Getting help} +\label{sec:help} + +The \TeX{} community is both active and friendly, and most serious +questions end up getting answered. However, the support is informal, +done by volunteers and casual readers, so it's especially important that +you do your homework before asking. (If you prefer guaranteed +commercial support, you can forego \TL{} completely and purchase a +vendor's system; \url{http://tug.org/interest.html#vendors} has a list.) + +Here is a list of resources, approximately in the order we recommend +using them: + +\begin{description} +\item [Getting Started] If you are new to \TeX, the web page +\url{http://tug.org/begin.html} gives a brief introduction to the system. + +\item [\TeX{} \acro{FAQ}] The \TeX{} \acro{FAQ} is a huge compendium + of answers to all sorts of questions, from the most basic to the + most arcane. It is included on \TL{} in + \OnCD{texmf-doc/doc/english/FAQ-en/html/index.html}, and is available + on the Internet through \url{http://www.tex.ac.uk/faq}. Please + check here first. + +\item [\TeX{} Catalogue] If you are looking for a specific package, +font, program, etc., the \TeX{} Catalogue is the place to look. It is a +huge collection of all \TeX{}-related items. See +\url{http://www.ctan.org/help/Catalogue/}. + +\item [\TeX{} Web Resources] The web page +\url{http://tug.org/interest.html} has many \TeX{}-related links, in +particular for numerous books, manuals, and articles on all aspects of +the system. + +\item [support archives] The two principal support forums are the +Usenet newsgroup \url{news:comp.text.tex} and the mailing list +\email{texhax@tug.org}. Their archives have years of past +questions and answers for your searching pleasure, via +\url{http://groups.google.com/group/comp.text.tex/topics} and +\url{http://tug.org/mail-archives/texhax}, respectively. And a general web +search, for example on \url{http://google.com}, never hurts. + +\item [asking questions] If you cannot find an answer, you can post to +\dirname{comp.text.tex} through Google or your newsreader, or to +\email{texhax@tug.org} through email. But before you post, +\emph{please} read this \acro{FAQ} entry, to maximize +your chances of getting a useful answer: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + +\item [\TL{} support] If you want to report a bug or have +suggestions or comments on the \TL{} distribution, installation, or +documentation, the mailing list is \email{tex-live@tug.org}. However, +if your question is about how to use a particular program included in +\TL{}, please write to that program's maintainer or +mailing list. Often running a program with the \code{-{}-help} option +will provide a bug reporting address. + +\end{description} + +The other side of the coin is helping others who have questions. Both +\dirname{comp.text.tex} and \code{texhax} are open to anyone, so feel +free to join, start reading, and help out where you can. + + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{Overview of \protect\TeX\protect\ Live} +\label{sec:overview-tl} + +This section describes the contents of \TL{} and the \TK{} of which it +is a part. + +\subsection{The \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tl-coll-dists} + +The \TK{} \DVD{} comprises the following: + +\begin{description} + +\item [\TL] A complete \TeX{} system which can be run live or + installed to disk. + +\item [Mac\TeX] for \MacOSX, this adds a native \MacOSX\ installer and other +Mac applications to \TL{}. Its home page is +\url{http://www.tug.org/mactex/}. + +\item [pro\TeX{}t] An enhancement of the \MIKTEX\ distribution for Windows, +\ProTeXt\ adds a few extra tools to \MIKTEX, and simplifies +installation. It is entirely independent of \TL{}, and has its own +installation instructions. The \ProTeXt\ home page is +\url{http://tug.org/protext}. + +\item [CTAN] A snapshot of the \CTAN{} repository. + +\item [\texttt{texmf-extra}] A directory with assorted additional packages. + +\end{description} + +\CTAN{}, \pkgname{protext}, and \dirname{texmf-extra} do not +necessarily follow the same copying conditions as \TL{}, so be careful +when redistributing or modifying. + + +\subsection{Top level \TL{} directories} +\label{sec:tld} + +Here is a brief listing and description of the top level directories in +the \TL{} distribution. On the \pkgname{live} \DVD, the entire \TL{} +hierarchy is in a subdirectory \dirname{texlive}, not at the top +level of the disc. + +\begin{ttdescription} +\item[bin] The \TeX{} system programs, arranged by platform. +% +\item[readme.html] Web pages with a quick introduction and useful links, +in various languages. +% +\item[source] The source to all included programs, including the main \Webc{} + \TeX{} and \MF{} distributions. +% +\item[support] Various auxiliary packages and programs. These are + \emph{not} installed automatically. This includes + assorted editors and \TeX\ shells. +% +\item[texmf] See \dirname{TEXMFMAIN} below. +% +\item[texmf-dist] See \dirname{TEXMFDIST} below. +% +\item[texmf-doc] Tree for self-contained pure documentation, arranged by + language. +% +\item[tlpkg] Scripts, programs and data for managing the + installation. It also contains private copies of + Perl and Ghostscript for Windows, which are invisible outside \TL, + and a new Windows PostScript viewer PSView. +\end{ttdescription} + +In addition to the directories above, the installation scripts and +\filename{README} files (in various languages) are at the top level of +the distribution. + +The \dirname{texmf-doc} directory contains documentation which does +not belong to any particular package or program. The documentation +for the programs (manuals, man pages, Info files) is in +\dirname{texmf/doc}. The documentation for \TeX\ packages and +formats is in \dirname{texmf-dist/doc}. You can use the +\cmdname{texdoc} or \cmdname{texdoctk} programs to find any +documentation wherever it is located. The comprehensive links in +the top-level file \OnCD{doc.html} may also be helpful. + +This \TL\ documentation itself is in \dirname{texmf-doc} and is +available in several languages: + +\begin{itemize*} +\item{Simplified Chinese:} \OnCD{texmf-doc/doc/chinese/texlive-zh-cn} +\item{Czech/Slovak:} \OnCD{texmf-doc/doc/czechslovak/texlive-cz} +\item{English:} \OnCD{texmf-doc/doc/english/texlive-en} +\item{French:} \OnCD{texmf-doc/doc/french/texlive-fr} +\item{German:} \OnCD{texmf-doc/doc/german/texlive-de} +\item{Polish:} \OnCD{texmf-doc/doc/polish/texlive-pl} +\item{Russian:} \OnCD{texmf-doc/doc/russian/texlive-ru} +\end{itemize*} + +\subsection{Overview of the predefined texmf trees} +\label{sec:texmftrees} + +This section lists all predefined variables specifying the texmf trees +used by the system, and their intended purpose, and the default +layout of a \TL{} system. The command \texttt{texconfig conf} shows +you the values of these variables, so that you can easily find out +how they map to directory names in your installation. + +\begin{ttdescription} +\item [TEXMFMAIN] The tree which holds vital parts of the system + such as helper scripts (e.g., \verb+web2c/mktexdir+) and other + support files and their documentation. Does not include + \TeX\ formats and packages. +\item [TEXMFDIST] The tree which holds the main set of macro packages, + fonts, etc., as originally distributed. +\item [TEXMFLOCAL] The tree which administrators can use for system-wide + installation of additional or updated macros, fonts, etc. +\item [TEXMFHOME] The tree which users can use for their own individual + installations of additional or updated macros, fonts, etc. + The expansion of this variable dynamically adjusts for each user to + their own individual directory. +\item [TEXMFCONFIG] The tree used by the utilities + \verb+texconfig+, \verb+updmap+, and \verb+fmtutil+ to store modified + configuration data. Under \envname{TEXMFHOME} by default. +\item [TEXMFSYSCONFIG] The tree used by the utilities + \verb+texconfig-sys+, \verb+updmap-sys+, and \verb+fmtutil-sys+ to + store modified configuration data. +\item [TEXMFVAR] The tree used by \verb+texconfig+, \verb+updmap+ and + \verb+fmtutil+ to store (cached) runtime data such as format files and + generated map files. Under \envname{TEXMFHOME} by default. +\item [TEXMFSYSVAR] The tree used by \verb+texconfig-sys+, + \verb+updmap-sys+ and \verb+fmtutil-sys+, and also by \verb+tlmgr+, to + store (cached) runtime data such as format files and generated map files. +\end{ttdescription} + +\noindent +The default layout is: +\begin{description} + \item[system-wide root] can span multiple \TL{} releases: + \begin{ttdescription} + \item[2007] A previous release. + \begin{ttdescription} + \item [...] + \end{ttdescription} + \item[2008] The current release. + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] \GNU/Linux binaries + \item [...] + \item [universal-darwin] \MacOSX binaries + \item [win32] Windows binaries + \end{ttdescription} + \item [texmf] This is \envname{TEXMFMAIN}. + \item [texmf-dist] \envname{TEXMFDIST} + \item [texmf-doc] \envname{TEXMFDOC} + \item [texmf-var] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, intended to be + retained from release to release. + \end{ttdescription} + \item[user's home] (\texttt{\$HOME} or + \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2007] Privately generated and configuration data + for a previous release. + \item[.texlive2008] Privately generated and configuration data + for the current release. + \begin{ttdescription} + \item [texmf-var] \envname{TEXMFVAR} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} Personal macros. + \textit{etc.} + \end{ttdescription} +\end{description} + + +\subsection{Extensions to \protect\TeX} +\label{sec:tex-extensions} + +\TeX{} itself is frozen, apart from rare bug fixes. It is still present +in \TL\ as the program \prog{tex}, and will remain so in the +foreseeable future. \TL{} contains several extended versions of \TeX: + +\begin{description} + +\item [\eTeX] adds a set of new primitives +\label{text:etex} (related to macro expansion, character scanning, +classes of marks, additional debugging features, and more) and the +\TeXXeT{} extensions for bidirectional typesetting. In default mode, +\eTeX{} is 100\% compatible with ordinary \TeX. See +\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] builds on the \eTeX\ extensions, adding support for +writing \acro{PDF} output as well as \dvi{}. This is the program +invoked for most formats, e.g., \prog{etex}, \prog{latex}, +\prog{pdflatex}. See \url{http://www.pdftex.org/}. +\OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf} for the manual, and +\OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex} for example usage +of some of its features. + +\item [Lua\TeX] is the designated successor of pdf\TeX, with which it +is intended to be backward-compatible. It should also supersede Aleph, +see below. The incorporated Lua interpreter (see +\url{http://www.lua.org/}) enables elegant solutions for many thorny +\TeX{} problems. When called as \filename{texlua}, it functions as a +standalone Lua interpreter, and is already used as such within \TL. See +\url{http://www.luatex.org/} and +\OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [\XeTeX] adds support for Unicode input and OpenType- and system +fonts, implemented using standard third-party libraries. See +\url{http://scripts.sil.org/xetex}. + +\item [\OMEGA\ (Omega)] is based on Unicode (16-bit characters), thus +supports working with almost all the world's scripts simultaneously. It +also supports so-called `\OMEGA{} Translation Processes' (\acro{OTP}s), +for performing complex transformations on arbitrary input. See +\OnCD{texmf-dist/doc/omega/base/doc-1.8.tex} (not completely up-to-date). + +\item [Aleph] combines the \OMEGA\ and \eTeX\ extensions. +See \OnCD{texmf-dist/doc/aleph/base} for some minimal documentation. + +\end{description} + + +\subsection{Other notable programs in \protect\TL} + +Here are a few other commonly-used programs included in \TL{}: + +\begin{cmddescription} + +\item [bibtex] bibliography support. + +\item [makeindex] index support. + +\item [dvips] convert \dvi{} to \PS{}. + +\item [xdvi] \dvi{} previewer for the X Window System. + +\item [dvilj] \dvi{} drive for the HP LaserJet family. + +\item [dv2dt, dt2dv] convert \dvi{} to/from plain text. + +\item [dviconcat, dviselect] cut and paste pages +from \dvi{} files. + +\item [dvipdfmx] convert \dvi{} to \acro{PDF}, an alternative approach +to pdf\TeX\ (mentioned above). See the \pkgname{ps4pdf} and +\pkgname{pdftricks} packages for still more alternatives. + +\item [psselect, psnup, \ldots] \PS{} +utilities. + +\item [lacheck] \LaTeX{} syntax checker. + +\item [texexec, texmfstart] Con\TeX{}t and \acro{PDF} processor. + +\item [tex4ht] \TeX{} to \acro{HTML} (and \acro{XML} and more) converter. + +\end{cmddescription} + + +\subsection{Fonts in \protect\TL} +\label{sec:tl-fonts} + +\TL{} comes with many high-quality scalable fonts. See +\url{http://tug.org/fonts} and +\OnCD{texmf-doc/doc/english/free-math-font-survey}. + + + +\section{Installation} +\label{sec:install} + +\subsection{Starting the installer} +\label{sec:inst-start} + +To start with, get the \TK{} \DVD{} or download the \TL{} net installer, +and locate the installer script: \filename{install-tl} for Unix, +\filename{install-tl.bat} for Windows. + +\begin{description} +\item [Net installer:] Download from \CTAN, under +\dirname{systems/texlive/tlnet}; the url +\url{http://mirror.ctan.org/systems/texlive/tlnet} will automatically +redirect to a nearby, up-to-date, mirror. You can retrieve either +\filename{install-tl.zip} which can be used under Unix and Windows and +\filename{install-unx.tar.gz} which is considerably smaller, for Unix +only. After unpacking, \filename{install-tl} and +\filename{install-tl.bat} will be in the \dirname{install-tl} +subdirectory. + +\item [\TeX{} Collection \DVD:] go to its \dirname{texlive} +subdirectory. Under Windows, the installer should start automatically +when you insert the \DVD. You can get the \DVD\ by becoming a member of +a \TeX\ user group (highly recommended, +\url{http://tug.org/usergroups.html}), or purchasing it separately +(\url{http://tug.org/store}), or burning your own from the \ISO\ +image (\url{http://tug.org/texlive/acquire.html}). + +\end{description} +The following sections explain in more detail. + +\subsubsection{Unix} + +\begin{figure}[tb] +\begin{boxedverbatim} +======================> TeX Live installation procedure <===================== + +=======> Note: Letters/digits in indicate menu items <======= +=======> for commands or configurable options <======= + + + Detected platform: Intel x86 with GNU/Linux + + binary systems: 1 out of 16 + + Installation scheme (scheme-full) + + Customizing installation scheme: + standard collections + language collections + 83 collections out of 84, disk space required: 1666 MB + + directories: + TEXDIR (the main TeX directory): + !! default location: /usr/local/texlive/2008 + !! is not writable, please select a different one! + TEXMFLOCAL (directory for site-wide local files): + /usr/local/texlive/texmf-local + TEXMFSYSVAR (directory for variable and automatically generated data): + /usr/local/texlive/2008/texmf-var + TEXMFSYSCONFIG (directory for local config): + /usr/local/texlive/2008/texmf-config + TEXMFHOME (directory for user-specific files): + ~/texmf + + options: + [ ] use letter size instead of A4 by default + [X] create all format files + [X] install macro/font doc tree + [X] install macro/font source tree + [ ] create symlinks in standard directories + + Install for running from DVD + +Other actions: + start installation to HD + help + quit + +Enter command: +\end{boxedverbatim} +\caption{Main text installer screen (\GNU/Linux)}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{install-w32-main}{\linewidth} +\caption{Main \GUI{} installer screen (Windows)}\label{fig:gui-main} +\end{figure} + +\noindent +Below, \texttt{>} denotes the shell prompt; user input is +\Ucom{\texttt{bold}}. +Starting in a terminal window on a Unix-compatible system, the simplest +way: +\begin{alltt} +> \Ucom{cd /path/to/installer} +> \Ucom{perl install-tl} +\end{alltt} +(Or you can invoke \Ucom{perl /path/to/installer/install-tl}, or +\Ucom{./install-tl} if it stayed executable, etc.; we won't repeat all +these variations.) + +To install in \GUI\ mode (you'll need the \dirname{Perl/TK} module), use: +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +For a complete listing of the various options: +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{Warning about Unix permissions:} Your \code{umask} at the time +of installation will be respected by the \TL{} installer. Therefore, if +you want your installation to be usable by users other than you, make +sure your setting is sufficiently permissive, for instance, \code{umask +002}. For more information about \code{umask}, consult your system +documentation. + + +\subsubsection{Mac\,OS\,X} + +As mentioned in section~\ref{sec:tl-coll-dists}, a separate distribution +is prepared for \MacOSX, named Mac\TeX\ (\url{http://tug.org/mactex}). +We recommend using the native Mac\TeX\ installer instead of the \TL\ +installer on \MacOSX, because the native installer can make a few +Mac-specific adjustments, in particular to allow easily switching +between the various \TeX\ distributions for \MacOSX\ (Mac\TeX, gw\TeX, +Fink, MacPorts, \ldots). + +Mac\TeX\ is firmly based on \TL, and the main \TeX\ trees are precisely +the same. It does add a few extra folders with Mac-specific +documentation and applications. + + +\subsubsection{Windows} + +If you are using the net installer, or the \DVD\ installer failed to +start automatically, double-click \filename{install-tl.bat}. + +You can also start the installer from the command-prompt. Below, +\texttt{>} denotes the prompt; user input is \Ucom{\texttt{bold}}. If +you are in the installer directory, run just: +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} + +Or you can invoke it with an absolute location, such as: +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +for the \TK\ \DVD, supposing that \dirname{D:} is the optical drive. + +To install in text mode, use: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +For a complete listing of the various options: +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\subsubsection{The text installer} + +Figure~\ref{fig:text-main} displays the main text mode screen under +Unix. + +This is only a command-line installer; there is no cursor support at +all. For instance, you cannot tab around checkboxes or input fields. +You just type something (case-sensitive) at the prompt and press the +Enter key, and then the entire terminal screen will be rewritten, with +adjusted content. + +The text installer interface is this primitive for a reason: it +is designed to run on as many platforms as possible, even with a +very barebones Perl (for Windows, a Perl subset is included). + +\subsubsection{The graphical installer} + +Figure~\ref{fig:gui-main} displays the graphical installer under +Windows. Most differences in available options are due to this +screenshot being from Windows, and the previous text screen being +from \GNU/Linux. + +\subsection{Running the installer} +\label{sec:runinstall} + +The installer is intended to be mostly self-explanatory. Still, a few +quick notes about the various options and submenus: + +\subsubsection{Binary systems menu (Unix only)} +\label{sec:binary} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Available sets of binaries: +=============================================================================== + + a [ ] alpha-linux DEC Alpha with GNU/Linux + b [ ] amd64-freebsd x86_64 with FreeBSD + c [ ] hppa-hpux HP-UX + d [ ] i386-freebsd Intel x86 with FreeBSD + e [X] i386-linux Intel x86 with GNU/Linux + f [ ] i386-openbsd Intel x86 with OpenBSD + g [ ] i386-solaris Intel x86 with Sun Solaris + h [ ] mips-irix SGI IRIX + i [ ] powerpc-aix PowerPC with AIX + j [ ] powerpc-linux PowerPC with GNU/Linux + k [ ] sparc-linux Sparc with GNU/Linux + l [ ] sparc-solaris Sparc with Solaris + m [ ] universal-darwin universal binaries for MacOSX/Darwin + o [ ] win32 Windows + p [ ] x86_64-linux x86_64 with GNU/Linux +\end{boxedverbatim} +\caption{Binaries menu}\label{fig:bin-text} +\end{figure} + +Figure~\ref{fig:bin-text} displays the text mode binaries menu. By +default, only the binaries for your current platform will be installed. +From this menu, you can select installation of binaries for other +architectures as well. This can be useful if you are sharing a \TeX\ +tree across a network of heterogenous machines, or for a dual-boot +system. + +\subsubsection{Selecting what is going to be installed} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Select a scheme: +=============================================================================== + + a [ ] TeX Live basic scheme + b [ ] TeX Live scheme for ConTeXt + c [X] TeX Live full scheme + d [ ] GUST TeX Live scheme + e [ ] GUTenberg TeX Live scheme + f [ ] TeX Live medium scheme + g [ ] TeX Live minimal scheme + h [ ] TeX Live for Omega users + i [ ] teTeX scheme + j [ ] XML typesetting scheme +\end{boxedverbatim} +\caption{Scheme menu}\label{fig:scheme-text} +\end{figure} + +Figure~\ref{fig:scheme-text} displays the \TL\ scheme menu; from here, +you choose a ``scheme'', which is an overall set of package collections. +The default \optname{full} scheme installs everything available, but you +can also choose the \optname{basic} scheme for a small system, +\optname{minimal} for testing purposes, and \optname{medium} or +\optname{teTeX} to get something in between. There are also various +specialized and country-specific schemes. + +\begin{figure}[tbh] +\tlpng{stdcoll}{.7\linewidth} +\caption{Collections menu (Linux)}\label{fig:collections-gui} +\end{figure} + +You can refine your scheme selection with the `standard collections' and +`language collections' menus (figure~\ref{fig:collections-gui}, shown in +\GUI\ mode for a change). + +Collections are one level more detailed than schemes\Dash in essence, a +scheme consists of several collections, a collection consists of one or +more packages, and a package (the lowest level grouping in \TL) contains +the actual \TeX\ macro files, font files, and so on. + +If you want more control than the collection menus provide, you can use +the \prog{tlmgr} program after installation (see +section~\ref{sec:tlmgr}); using that, you can control the installation +at the package level. + +\subsubsection{Directories} +\label{sec:directories} + +The default layout is described in section~\ref{sec:texmftrees}, +\p.\pageref{sec:texmftrees}. The default location of +\dirname{TEXDIR} is different between Windows +(|%PROGRAMFILES%\texlive\2008|) and Unix +(\dirname{/usr/local/texlive/2008}). + +The main reason to change this default is if you lack write permission +for the default location. You don't have to be root or adminstrator to +install \TL, but you do need write access to the target directory. + +A logical alternate choice is a directory under your home directory, +especially if you will be the sole user. Use +`|~|' to indicate this, as in `|~/texlive/2008|'. + +We recommend including the year in the name, to enable keeping different +releases of \TL{} side by side. (You may wish to make a +version-independent name such as \dirname{/usr/local/texlive-cur} via a +symbolic link, which you can then update after testing the new release.) + +Changing \dirname{TEXDIR} in the installer will also change +\dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} and +\dirname{TEXMFSYSCONFIG}. + +\dirname{TEXMFHOME} is the recommended location for personal +macro files or packages. The default value is |~/texmf|. In +contrast to \dirname{TEXDIR}, here a |~| is preserved in the +newly-written configuration files, since it usefully refers to the home +directory of each individual running \TeX. It expands to +\dirname{$HOME} on Unix and \verb|%USERPROFILE%| on Windows. + +\subsubsection{Options} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +

use letter size instead of A4 by default: [ ] + create all format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: +\end{boxedverbatim} +\caption{Options menu (Unix)}\label{fig:options-text} +\end{figure} + +Figure~\ref{fig:options-text} displays the text mode options menu. +Three of the options here need mentioning: + +\begin{description} +\item[use letter size instead of A4 by default:] The usual default paper + size selection. Of course, individual documents can specify a specific + paper size, if desired. + +\item[create all format files:] Although unnecessary format files + take time to generate and disk space to store, it is still recommended + to leave this option checked: if you don't, then format files will be + generated in people's private \dirname{TEXMFVAR} tree as they are + needed. In that location, they will not be updated automatically if + (say) binaries or hyphenation patterns are updated in the + installation, and thus could end up with incompatible format files. + +\item[create symlinks in standard directories] (Unix only): + This option bypasses the need to change environment + variables. Without this option, \TL{} directories have to be added + to \envname{PATH}, \envname{MANPATH} and \envname{INFOPATH}. You will + need write permissions to the target directories. It is not + advisable to overwrite a \TeX\ system that came with your system + with this option. It is intended primarily for creating the links + in standard directories that are known to users, such as + \dirname{/usr/local/bin}, which don't already contain any + \TeX\ files. +\end{description} + +Now when all these settings are to your liking, you can type `I' to +start the installation process. When it is done, skip to +section~\ref{sec:postinstall} to read what else needs to be done, if +anything. + +\subsubsection{Set up for running from DVD{} (text mode only)} +\label{sec:fromdvd} + +Type `|V|' to select this option. This changes the main menu into something +like figure~\ref{fig:main-fromdvd}. +\begin{figure}[tbh] +\begin{boxedverbatim} +======================> TeX Live installation procedure <===================== + +=======> Note: Letters/digits in indicate menu items <======= +=======> for commands or configurable options <======= + + directories: + TEXDIRW (Writable root): + !! default location: /usr/local/texlive/2008 + !! is not writable, please select a different one! + TEXMFLOCAL (directory for site-wide local files): + /usr/local/texlive/texmf-local + TEXMFSYSVAR (directory for variable and automatically generated data): + /usr/local/texlive/2008/texmf-var + TEXMFSYSCONFIG (directory for local config): + /usr/local/texlive/2008/texmf-config + TEXMFHOME (directory for user-specific files): + ~/texmf + + options: + [ ] use letter size instead of A4 by default + [X] create all format files + + set up for installing to hard disk + +Other actions: + start installation for running from DVD + help + quit +\end{boxedverbatim} +\caption{The main menu with \optname{from DVD} + set}\label{fig:main-fromdvd} +\end{figure} + +Note the changes: all options about what to install have +disappeared, and the directories section now talks about +\dirname{TEXDIRW} or writable root. The symlinks option has also +disappeared. + +The installer will still create various directories and +configuration files, but won't copy \dirname{texmf}, +\dirname{texmf-dist} or \dirname{texmf-doc} to hard disk. + +Post-install configuration for Unix will be slightly more complicated, +because now the directory layout deviates from the default; see +section~\ref{sec:postinstall}. + +Due to time constraints, this option didn't make it into the \GUI{} +installer, but it is available both for Unix and for +Windows. Windows users have to start the installer from a command +prompt, see section~\ref{sec:cmdline}. + +Section \ref{sec:portable-unix} describes a more strictly portable +way to run \TL, which doesn't make or require changes in the +system's configuration, but doesn't allow any configuration either. + +\subsection{Command-line install options} +\label{sec:cmdline} + +Type +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +for a listing of command-line options. Either |-| or |--| can be used +to introduce option names. These are the more +interesting ones: + +\begin{ttdescription} +\item[-gui] If possible, use the \GUI{} installer. This requires the + Perl/Tk module (\url{http://tug.org/texlive/distro.html#perltk}); + if Perl/Tk is not available, installation continues in text mode. +\item[-no-gui] Force using the text mode installer, even under + Windows; you'll need this if you want a `from \DVD' installation, + since that is not available in \GUI{} mode. +\item[-lang {\sl LL}] Specify the installer interface + language as its standard two-letter code \textsl{LL}. Currently + supported languages: English (\texttt{en}, default), German + (\texttt{de}), French (\texttt{fr}), Dutch (\texttt{nl}), Polish + (\texttt{pl}), Slovenian (\texttt{sl}) and Vietnamese + (\texttt{vi}). The installer tries to determine the right language + itself but if it fails, or if the right language is not available, + then it uses English as a fallback. +\item[-profile {\sl profile}] The installer always writes a file + \filename{texlive.profile} to the \dirname{2008/tlpkg}- or + \dirname{tlpkg} subdirectory of your installation. This option tells + the installer to re-use such a profile file. Here's an excerpt: + \begin{fverbatim} +# texlive.profile written on Wed Jul 9 16:13:44 2008 UTC +# It will NOT be updated and reflects only the +# installation profile at installation time. +selected_scheme scheme-basic +TEXDIR /usr/local/texlive/2008 +TEXDIRW /usr/local/texlive/2008 +... +TEXMFSYSVAR /usr/local/texlive/2008/texmf-var +collection-basic 1 +... +option_symlinks 0 + \end{fverbatim} + Thus, using this option you can install in batch mode on + subsequent systems, reproducing the choices you made for the + original installation. +\item [-location {\sl url/path}] Specify a non-default source for + packages; see below. +\end{ttdescription} + +\subsubsection{The \optname{location} parameter} +\label{sec:location} + +The location value can be a url starting with \texttt{ftp:}, +\texttt{http:}, or \texttt{file:/} url, or a plain path. If the given +argument is on a local drive (either a path or a \texttt{file:/} url), +the installation type (compressed or live) is automatically determined: +if an \dirname{archive} subdirectory with \filename{.tar.lzma} files is +found then it will be used, even if uncompressed files are available as +well. + +When giving an \texttt{http:} or \texttt{ftp:} location, trailing +`\texttt{/}' characters and/or a trailing `\texttt{/tlpkg}' component +are ignored. For example, you could choose a particular \CTAN\ mirror +with something like: +\url{http://ctan.example.org/tex-archive/texlive/tlnet/2008}, +substituting of course a proper hostname and its particular top-level +\CTAN\ path (the list of \CTAN\ mirrors is maintained at +\url{http://ctan.org/mirrors}) for |ctan.example.org/tex-archive|. The +default is to pick a mirror automatically, using +\url{http://mirror.ctan.org}; in any case, the chosen host is used for +the entire download. + + +\subsection{Post-install actions} +\label{sec:postinstall} + +Some post-install may be required. + +\subsubsection{Windows} + +But on Windows, the installer takes care of everything. + +\subsubsection{If symlinks were created} + +If you elected to create symlinks in standard directories (mentioned in +section~\ref{sec:options}), then there is no need to edit environment +variables. + +\subsubsection{Environment variables for Unix} +\label{sec:env} + +The directory of the binaries for your platform must be added to +the search path. Each supported platform has its own subdirectory +under \dirname{TEXDIR/bin}. See figure~\ref{fig:bin-text} for the +list of subdirectories and corresponding platforms. + +You can also add the documentation man and Info directories to their +respective search paths, if you want the system tools to find them. + +For Bourne-compatible shells such as \prog{bash}, and using Intel x86 +GNU/Linux and a default directory setup as an example, the file to edit +might be \filename{$HOME/.profile} (or another file sourced by +\filename{.profile}, and the lines to add would look like this: + +\begin{sverbatim} +PATH=/usr/local/texlive/2008/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2008/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2008/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} + +For csh or tcsh, the file to edit is typically \filename{$HOME/.cshrc}, and +the lines to add might look like: + +\begin{sverbatim} +setenv PATH /usr/local/texlive/2008/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2008/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2008/texmf/doc/info:$INFOPATH +\end{sverbatim} + +Of course, you may well already have settings somewhere in your ``dot'' +files, and so then the \TL\ directories should simply be merged in as +appropriate. + +\subsubsection{Environment variables: global configuration} +\label{sec:envglobal} + +If you want to make these changes globally, or for a user newly added to +the system, then you are on your own; there is just too much variation +between systems in how and where these things are configured. + +Our two hints are: 1)~you may want to check for a file +\filename{/etc/manpath.config} and, if present, add lines such as + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2008/bin/i386-linux \ + /usr/local/texlive/2008/texmf/doc/man +\end{sverbatim} + +And 2)~check for a file \filename{/etc/environment} which may define the +search path and other default environment variables. + + +\subsubsection{When running from DVD} + +Normally, a \TL{} program consults a file \filename{texmf.cnf} for the +location of the various trees. It looks for this file in a series of +locations relative to its own location. However, this scheme breaks down +when a program is run from \DVD{}: the \DVD{} is read-only. Some of the +paths to be recorded in \filename{texmf.cnf} are only known at +installation time, so this file cannot be on the \DVD{} and must be +placed somewhere else. This makes it necessary to define an environment +\envname{TEXMFCNF} variable which tells \TL{} programs in what directory +to find this \filename{texmf.cnf}. It is also still necessary to modify +the \envname{PATH} environment variable, as described before. + +At the end of the installation, the installer should have printed a +message giving the value to which \envname{TEXMFCNF} should be set. In +case you missed it: this value is \dirname{$TEXMFSYSVAR/web2c}. For the +default, \dirname{/usr/local/texlive/2008/texmf-var/web2c}, you need the +lines +\begin{sverbatim} +TEXMFCNF=/usr/local/texlive/2008/texmf-var/web2c; export TEXMFCNF +\end{sverbatim} +or, for [t]csh: +\begin{sverbatim} +setenv TEXMFCNF /usr/local/texlive/2008/texmf-var/web2c +\end{sverbatim} + + +\subsubsection{\ConTeXt{} Mark IV} + +The `old' \ConTeXt{} should run out of the box. The new `Mark IV' +\ConTeXt{} will require manual setup; see +\url{http://wiki.contextgarden.net/Running_Mark_IV}. + + +\subsubsection{Integrating local and personal macros} +\label{sec:local-personal-macros} + +This is already mentioned implicitly in section~\ref{sec:texmftrees}: +\dirname{TEXMFLOCAL} (by default, +\dirname{/usr/local/texlive/texmf-local} or +\verb|C:\Program Files\texlive\texmf-local|) + +is intended for system-wide local fonts and macros; and +\dirname{TEXMFHOME} (by default, \dirname{$HOME/texmf} or +\verb|%USERPROFILE%\texmf|), is for personal fonts and macros. These +directories are intended to stick around from release to release, and +have their content seen automatically by a new \TL{} release. +Therefore, it is best to refrain from changing the definition of +\dirname{TEXMFLOCAL} to be too far away from the main \TL{} directory, +or you will need to manually change future releases. + +For both trees, files should be placed in their proper subdirectories; +see \url{http://tug.org/tds} or consult +\filename{texmf/web2c/texmf.cnf}. For instance, a \LaTeX{} class file or +package should be placed in \dirname{TEXMFLOCAL/tex/latex} or +\dirname{TEXMFHOME/tex/latex}, or a subdirectory thereof. + +\dirname{TEXMFLOCAL} requires an up-to-date filename database, or files +will not be found. You can update it with the command +\cmdname{mktexlsr} or use the `Reinit file database' button on the +configuration tab of \prog{tlmgr} in \GUI\ mode. + +\subsubsection{Integrating third-party fonts} + +This is unfortunately a very complicated and messy topic. Forget +about it unless you really know your way around blindfolded in a +\TeX{} installation. Don't forget to check first what you get for +free: see section~\ref{sec:tl-fonts}. + +A possible alternative is to use \XeTeX (see +section~\ref{sec:tex-extensions}), which lets you use operating system +fonts without any installation in \TeX. + + +\subsection{Testing the installation} +\label{sec:test-install} + +After installing \TL{} as best you can, you naturally want to test +it out, so you can start creating beautiful documents and\slash or fonts. + +This section gives some basic procedures for testing that the new system +is functional. We give Unix commands here; under \MacOSX{} and Windows, +you're more likely to run the tests through a graphical interface, but +the principles are the same. + +\begin{enumerate} + +\item Make sure that you can run the \cmdname{tex} program in the first +place: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (Web2C 7.5.7) +kpathsea version 3.5.7 +... +\end{alltt} +If this comes back with `command not found' instead of version and +copyright information, or with an older version, most likely you don't +have the correct \dirname{bin} subdirectory in your \envname{PATH}. See +the environment-setting information on \p.\pageref{sec:env}. + +\item Process a basic \LaTeX{} file: +\begin{alltt} +> \Ucom{latex sample2e.tex} +This is pdfeTeXk, Version 3.1415926... +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +If this fails to find \filename{sample2e.tex} or other files, most +likely you have interference from old environment variables or +configuration files; we recommend unsetting all \TeX-related environment +variables for a start. (For a deep analysis, you can ask \TeX{} to +report on exactly what it is searching for, and finding; see ``Debugging +actions'' on page~\pageref{sec:debugging}.) + +\item Preview the result online: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} +\end{alltt} +(Under Windows, the analogous command is \cmdname{dviout}.) You should +see a new window with a nice document explaining some of the basics of +\LaTeX{}. (Well worth reading, by the way if you're new to the system.) +You do have to be running under X for \cmdname{xdvi} to work; if you're +not, or your \envname{DISPLAY} environment variable is set incorrectly, +you'll get an error \samp{Can't open display}. + +\item Create a \PS{} file for printing or display: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Create a \acro{PDF} file instead of \dvi{}; this processes the +\filename{.tex} file and writes \acro{PDF} directly: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Preview the \acro{PDF} file: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Unfortunately neither \cmdname{gv} nor \cmdname{xpdf} are currently +included in \TL{}, so you must install them separately. See +\url{http://www.gnu.org/software/gv} and +\url{http://www.foolabs.com/xpdf}, respectively. (There are plenty of +other \acro{PDF} viewers, too.) + +\item Standard test files you may find useful in addition to +\filename{sample2e.tex}: + +\begin{ttdescription} +\item [small2e.tex] A simpler document than \filename{sample2e}, to +reduce the input size if you're having troubles. +\item [testpage.tex] Test if your printer introduces any offsets. +\item [nfssfont.tex] For printing font tables and tests. +\item [testfont.tex] Also for font tables, but using plain \TeX{}. +\item [story.tex] The most canonical (plain) \TeX{} test file of all. +You must type \samp{\bs bye} to the \code{*} prompt after \samp{tex +story.tex}. +\end{ttdescription} + +\end{enumerate} + +If you are new to \TeX{}, or otherwise need help with actually writing +\TeX{} or \LaTeX{} documents, please visit +\url{http://tug.org/begin.html} for some introductory resources. + + +\section{Network installations} +\label{sec:netinstall} + +\TL{} has been designed to be shared between different users, and even +different systems on a network. With a standard directory layout, no +hard paths are configured: the locations for files needed by \TL{} +programs are defined relative to the places of those programs. You can +see this at work in the configuration file +\filename{$TEXMFMAIN/web2c/texmf.cnf}, which contains lines such as +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +This means that other systems or other users merely need to add the +directory for \TL{} binaries for their platform to their search path. + +By the same token, you can also install \TL{} locally and then move +the entire hierarchy afterwards to a network location. + +Of course, Windows users have different expectations. The directory +\dirname{texmf-doc/source/texlive/texlive-common/w32client} contains a +sample script \filename{install-w32client} which creates settings and +menu shortcuts for using an existing \TL{} installation on a +\acro{LAN}. It is to be invoked through a batch file +\filename{install-w32client.bat} in the same directory. + +You can read more about \TL{} configuration and path searching in +section~\ref{sec:kpathsea}. + +\section{Maximally portable \protect\TL{} on DVD and USB} +\label{sec:portable-unix} + +The `running from \DVD{}' option described in +section~\ref{sec:fromdvd} is fine for your own system, but if you +are a guest on somebody else's system then you would probably like +something with minimal side effects. + +In the root of the \TL{} \DVD, or the \dirname{texlive} subdirectory of +the \TK{} \DVD, are a \filename{tl-portable} script (Unix) and a +\filename{tl-portable.bat} batchfile (Windows) which start up a +secondary shell\slash command prompt with environment settings suitable +for directly accessing the \TL{} on the \DVD. + +When it runs for the first time, some files will be generated in a +directory \dirname{~/.tlportable2008}, which will take a little time. +On subsequent runs, though, it will start almost instantaneously. + +The rest of the system will be unaware of \TL. If you want your editor +to be aware of this \TL, then you can start it from a second, parallel, +such \filename{tl-portable} session. + +You can also use \filename{tl-portable} to run \TL{} on a +\acro{USB} stick. In this case, copy all the top-level files and +the contents of the \dirname{bin}, \dirname{texmf}, +\dirname{texmf-dist}, and \dirname{tlpkg} directories (at least) to +the stick. This may take quite a while! If you are copying to a +\acro{FAT}32-formatted \acro{USB} stick, make sure to dereference +symbolic links (\code{cp -L}). A \dirname{texmf-local} directory on +the stick will also be found and used. + +Then run \filename{tl-portable} from the root of the stick, as above. +In this case, the script will notice that the stick is writable and use +it for generated files. You could burn the resulting contents of the +stick back to \DVD{} if that is more convenient to (for example) give to +others. + + +\section{\cmdname{tlmgr}: Managing your installation} +\label{sec:tlmgr} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} in \GUI\ mode. The list of + packages/collections/schemes only shows up after clicking the + `Load' button.}\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\tlpng{tlmgr-config}{\linewidth} +\caption{\texttt{tlmgr} in GUI mode: Configuration tab}\label{fig:tlmgr-config} +\end{figure} + +The installer installs a program named \prog{tlmgr} for managing \TL{} +after the initial installation. The programs \prog{updmap}, +\prog{fmtutil} and \prog{texconfig} are still included and will be +retained in the future, but \prog{tlmgr} is now the preferred interface. +Its capabilities include: + +\begin{itemize*} +\item listing schemes, collections and packages; +\item installing, updating, backing up, restoring and uninstalling + individual packages, optionally taking dependencies into account; +\item searching for packages; +\item listing and adding architectures; +\item changing installation options such as paper size and source + location (see section~\ref{sec:location}). +\end{itemize*} +\textit{Warning:} \prog{tlmgr} has not been designed for or tested +with installations which run from \DVD. + +\subsection{\cmdname{tlmgr} GUI mode} +\prog{tlmgr} can be started in \GUI{} mode with +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +or in Windows via the Start menu: \texttt{Start}, \texttt{Programs}, +\texttt{TeX Live 2008}, \texttt{TeX Live Manager}. After clicking `Load' +it displays a list of available and installed packages\Dash the latter +prepended with `(i)'. This assumes of course that the installation +source is valid and reachable. + +Figure~\ref{fig:tlmgr-config} shows the configuration tab. + +\subsection{Sample \cmdname{tlmgr} command-line invocations} + +This example adds several packages, including a new `engine', from a +non-default location: + +\begin{alltt} +> \Ucom{tlmgr -location http://172.16.18.1/tldev install collection-xetex xkeyval} +\end{alltt} +It generates the following output: +\begin{fverbatim} +install: collection-xetex +install: arabxetex +install: euenc +install: bidi +install: fontspec +install: fontwrap +install: ifxetex +install: philokalia +install: polyglossia +install: xecyr +install: xecyr.i386-linux +install: xepersian +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +install: xetex-pstricks +install: xetexfontinfo +install: xltxtra +install: xunicode +install: xkeyval +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2008/texmf/ls-R... +mktexlsr: Updating /usr/local/texlive/2008/texmf-config/ls-R... +mktexlsr: Updating /usr/local/texlive/2008/texmf-dist/ls-R... +mktexlsr: Updating /usr/local/texlive/2008/texmf-doc/ls-R... +mktexlsr: Updating /usr/local/texlive/2008/../texmf-local/ls-R... +mktexlsr: Updating /usr/local/texlive/2008/texmf-var/ls-R... +mktexlsr: Done. +regenerating fmtutil.cnf +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2008/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} +As you see, \prog{tlmgr} installs dependencies, and takes care of any +necessary post-install actions, including updating the filename database +and (re)generating formats. (Here we generated new formats for \XeTeX.) + +This example installs a new language. This also triggers format +regeneration: +\begin{alltt} +> \Ucom{tlmgr install collection-langdutch} +\end{alltt} +To describe a package: +\begin{alltt} +> \Ucom{tlmgr show collection-wintools} +\end{alltt} +which produces +\begin{fverbatim} +Package: collection-wintools +Category: Collection +ShortDesc: Windows support programs +LongDesc: Utilities for Windows, since they are not readily available there: + gzip, chktex, jpeg2ps, unzip, wget, xpdf. +Installed: Yes +\end{fverbatim} +Updating your entire installation to the latest versions available: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +If this makes you nervous, first try +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +or +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} +For full documentation: +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + + +\section{Notes on Windows} +\label{sec:windows} + +\TL\ has a single installer which runs on both Windows and Unix. This +was only possible by dropping support for older Windows versions, so +\TL\ can now be installed only on Windows 2000 and later. + + +\subsection{Windows-specific features} +\label{sec:winfeatures} + +Under Windows, the installer does some extra things: +\begin{description} +\item[Menus and shortcuts.] A new `\TL{}' submenu of the + Start menu is installed, which contains entries for some \GUI{} programs + (\prog{tlmgr}, \prog{texdoctk}, the PS\_View PostScript previewer) + and some documentation. PS\_View also gets a shortcut on the + desktop as a drag-and-drop target for PostScript files. +\item[Automatic setting of environment variables.] No manual + configuration steps are required. +\item[Uninstaller.] The installer creates an entry under `Add/Remove + Programs' for \TL. The uninstall tab of\prog{tlmgr} refers to + this. +\end{description} + +\subsection{Additional included software} + +\begin{figure}[tb] +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: very high magnifications available!}\label{fig:psview} +\end{figure} + +To be complete, a \TL installation needs support packages that are not +commonly found on a Windows machine. \TL{} provides the missing +pieces: +\begin{description} +\item[Perl and Ghostscript.] Because of the importance of Perl and + Ghostscript, \TL{} includes `hidden' copies of these + programs. \TL{} programs that need them know where to find them, + but they don't betray their presence through environment variables + or registry settings. They aren't full-scale distributions, and + shouldn't interfere with any system installations of Perl or + Ghostscript. +\item[Command-line tools.] A number of Windows ports of common Unix + command-line programs are installed along with the usual \TL{} + binaries. These include \cmdname{gzip}, \cmdname{chktex}, + \cmdname{jpeg2ps}, \cmdname{unzip}, \cmdname{wget} and the + command-line utilities from the \cmdname{xpdf} suite. (The + \cmdname{xpdf} viewer itself is not available for Windows, but the + Sumatra \acro{PDF} viewer is based on it: + \url{http://blog.kowalczyk.info/software/sumatrapdf}.) +\item[\texttt{fc-cache}] helps \XeTeX{} to handle fonts more + efficiently. +\item[PS\_View.] Also installed is PS\_View, a new PostScript viewer + with a free license; see figure~\ref{fig:psview}. +\end{description} +\begin{description} +\item[The \texttt{support} directory,] already mentioned in + section~\ref{sec:tld}. This directory contains various programs + which can be useful in connection with \TeX, in particular a + number of \TeX-aware editors and \TeX{} frontends. The software in + this directory isn't covered by the installer. This directory also + contains the \cmdname{dviout} \dvi{} previewer; see the next section. +\end{description} + +\subsection{The Dviout previewer} + +This \TL{} release unfortunately doesn't offer a preinstalled \dvi{} +previewer for Windows. However, you can install \prog{dviout} by +Toshio Oshima from the \path{support/dviout/} directory, which +contains also a short \filename{README} describing how to install +and configure \prog{dviout} for \TL. Please read this carefully +before installation. + +At first, when you preview files with \cmdname{dviout}, it will create fonts, +because screen fonts were not installed. After a while, you will have created +most of the fonts you use, and you will rarely see the font-creation window. +More information can be found in the (very good) on-line help. + +\subsection{Links for additional downloadable software} + +Urls for some other tools you may consider installing: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} with + supplementary packages from \acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, for graphics + processing and conversion +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, also for graphics. + +\item[\TeX-oriented editors] There is a wide choice, and it is a matter of the + user's taste. Here is a selection, in no particular order: + \begin{itemize*} + \item \cmdname{GNU Emacs} is available natively under Windows, see + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs} with Auc\TeX\ for Windows is available in \TL's + \path{support} directory; its home page is + \url{http://www.gnu.org/software/auctex}. + \item \cmdname{WinShell} is available in \TL's \path|support| + directory; its home page is \url{http://www.winshell.de}. + \item \cmdname{WinEdt} is shareware available from + \url{http://www.winedt.com}. + \item \cmdname{Vim} is free software, available from + \url{http://www.vim.org}. + \item TeXnicCenter is free software, available from + \url{http://www.toolscenter.org} and in the pro\TeX{}t distribution. + \item \cmdname{LEd} is available from \url{http://www.ctan.org/support/LEd}. + \item \cmdname{SciTE} is available from + \url{http://www.scintilla.org/SciTE.html}. + \end{itemize*} +\end{description} + + +\subsection{User Profile is Home} +\label{sec:winhome} + +The Windows counterpart of a Unix home directory is the +\verb|%USERPROFILE%| directory. Under Windows XP and Windows 2000, this +is usually \verb|C:\Documents and Settings\|, and under +Windows Vista \verb|C:\Users\|. In the +\filename{texmf.cnf} file, and \KPS{} in general, \verb|~| will expand +appropriately on both Windows and Unix. + + +\subsection{The Windows registry} +\label{sec:registry} + +Windows stores nearly all configuration data in its registry. The +registry contains a set of hierarchically organized keys, with several +root keys. The most important ones for installation programs are +\path{HKEY_CURRENT_USER} and \path{HKEY_LOCAL_MACHINE}, \path{HKCU} and +\path{HKLM} in short. The \path{HKCU} part of the registry is in the +user's home directory (see section~\ref{sec:winhome}). \path{HKLM} is +normally in a subdirectory of the Windows directory. + +In some cases, system information could be obtained from environment +variables but for other information, for example the location of +shortcuts, it is necessary to consult the registry. Setting environment +variables permanently also requires registry access. + + +\subsection{Windows permissions} +\label{sec:winpermissions} + +In later versions of Windows, a distinction is made between regular +users and administrators, where only the latter have free access to the +entire operating system. In practice, though, you could better describe +these classes of users as unprivileged users and normal users: being an +administrator is the rule, not the exception. Nevertheless, we have made +an effort to make \TL{} installable without administrative privileges. + +If the user is an administrator, shortcuts are created for all users, +and the system environment is modified. Otherwise, shortcuts and menu +entries are created for the current user, and the user environment is +modified. Use the \optname{non-admin} option to \prog{install-tl} if +you prefer per-user settings even as an administrator. + +Regardless of administrator status, the default root of \TL{} proposed +by the installer is always under \verb|%PROGRAMFILES%|. The installer +always tests whether the root is writable for the current user. + +A problem may arise if the user is not an administrator and \TeX{} +already exists in the search path. Since the effective path consists of +the system path followed by the user path, the new \TL{} will never get +precedence. As a workaround, in this case the installer creates +shortcuts to the command-prompt in which the new \TL{} binary directory +is prepended to the local searchpath. The new \TL{} will be usable when +run in a command-line session started from such a shortcut. + + +\section{A user's guide to Web2C} + +\Webc{} is an integrated collection of \TeX-related programs: \TeX{} +itself, \MF{}, \MP, \BibTeX{}, etc. It is the heart of \TL{}. The home +page for \Webc{}, with the current manual and more, is +\url{http://tug.org/web2c}. + +A bit of history: The original implementation was by Tomas Rokicki who, +in 1987, developed a first \TeX{}-to-C system based on change files +under Unix, which were primarily the original work of Howard Trickey and +Pavel Curtis. Tim Morgan became the maintainer of the system, and +during this period the name changed to Web-to-C\@. In 1990, Karl Berry +took over the work, assisted by dozens of additional contributors, and +in 1997 he handed the baton to Olaf Weber, who returned it to Karl in +2006. + +The \Webc{} system runs on Unix, 32-bit Windows systems, \MacOSX{}, and +other operating systems. It uses Knuth's original sources for \TeX{} and +other basic programs written in the \web{} literate programming system +and translates them into C source code. The core \TeX{} programs +handled in this way are: + +\begin{cmddescription} +\item[bibtex] Maintaining bibliographies. +\item[dmp] \cmdname{troff} to MPX (\MP{} pictures). +\item[dvicopy] Expands virtual font references in \dvi{} files. +\item[dvitomp] \dvi{} to MPX (MetaPost pictures). +\item[dvitype] \dvi{} to human-readable text. +\item[gftodvi] Generic font proofsheets. +\item[gftopk] Generic to packed fonts. +\item[gftype] GF to human-readable text. +\item[makempx] \MP{} label typesetting. +\item[mf] Creating typeface families. +\item[mft] Prettyprinting \MF{} source. +\item[mpost] Creating technical diagrams. +\item[mpto] MetaPost label extraction. +\item[newer] Compare modification times. +\item[patgen] Creating hyphenation patterns. +\item[pktogf] Packed to generic fonts. +\item[pktype] PK to human-readable text. +\item[pltotf] Plain text property list to TFM. +\item[pooltype] Display \web{} pool files. +\item[tangle] \web{} to Pascal. +\item[tex] Typesetting. +\item[tftopl] TFM to plain text property list. +\item[vftovp] Virtual font to virtual property list. +\item[vptovf] Virtual property list to virtual font. +\item[weave] \web{} to \TeX. +\end{cmddescription} + +\noindent The precise functions and syntax of these programs are +described in the documentation of the individual packages and of \Webc{} +itself. However, knowing a few principles governing the whole family of +programs will help you take advantage of your \Webc{} installation. + +All programs honor these standard \GNU options: +\begin{ttdescription} +\item[-{}-help] print basic usage summary. +\item[-{}-verbose] print detailed progress report. +\item[-{}-version] print version information, then exit. +\end{ttdescription} + +For locating files the \Webc{} programs use the path searching library +\KPS{} (\url{http://tug.org/kpathsea}). This library uses a combination +of environment variables and a configuration files to optimize searching +the (huge) collection of \TeX{} files. \Webc{} can look at many +directory trees simultaneously, which is useful in maintaining \TeX's +standard distribution and local and personal extensions in distinct +trees. To speed up file searches, the root of each tree has a file +\file{ls-R}, containing an entry showing the name and relative pathname +for all files under that root. + + +\subsection{Kpathsea path searching} +\label{sec:kpathsea} + +Let us first describe the generic path searching mechanism of the \KPS{} +library. + +We call a \emph{search path} a colon- or semicolon\hyph sepa\-rated list +of \emph{path elements}, which are basically directory names. A +search path can come from (a combination of) many sources. To look up +a file \samp{my-file} along a path \samp{.:/dir}, \KPS{} checks each +element of the path in turn: first \file{./my-file}, then +\file{/dir/my-file}, returning the first match (or possibly all +matches). + +In order to adapt optimally to all operating systems' conventions, on +non-Unix systems \KPS{} can use filename separators different from +colon (\samp{:}) and slash (\samp{/}). + +To check a particular path element \var{p}, \KPS{} first checks if a +prebuilt database (see ``Filename data\-base'' on +page~\pageref{sec:filename-database}) applies to \var{p}, i.e., if the +database is in a directory that is a prefix of \var{p}. If so, the path +specification is matched against the contents of the database. + +If the database does not exist, or does not apply to this path +element, or contains no matches, the filesystem is searched (if this +was not forbidden by a specification starting with \samp{!!}\ and if +the file being searched for must exist). \KPS{} constructs the list +of directories that correspond to this path element, and then checks +in each for the file being sought. + +The ``file must exist'' condition comes into play with \samp{.vf} files and +input files read by \TeX's \cs{openin} command. Such files may not +exist (e.g., \file{cmr10.vf}), and so it would be wrong to search the +disk for them. Therefore, if you fail to update \file{ls-R} when you +install a new \samp{.vf} file, it will never be found. +Each path element is checked in turn: first the database, then the +disk. If a match is found, the search stops and the result is +returned. + +Although the simplest and most common path element is a directory +name, \KPS{} supports additional features in search paths: layered +default values, environment variable names, config file values, users' +home directories, and recursive subdirectory searching. Thus, we say +that \KPS{} \emph{expands} a path element, meaning it transforms all +the specifications into basic directory name or names. This is +described in the following sections in the same order as it takes +place. + +Note that if the filename being searched for is absolute or explicitly +relative, i.e., starts with \samp{/} or \samp{./} or \samp{../}, +\KPS{} simply checks if that file exists. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Path sources} +\label{sec:path-sources} + +A search path can come from many sources. In the order in which +\KPS{} uses them: + +\begin{enumerate} +\item + A user-set environment variable, for instance, \envname{TEXINPUTS}\@. + Environment variables with a period and a program name appended + override; e.g., if \samp{latex} is the name of the program being run, + then \envname{TEXINPUTS.latex} will override \envname{TEXINPUTS}. +\item + A program-specific configuration file, for exam\-ple, a line + \samp{S /a:/b} in \cmdname{dvips}'s \file{config.ps}. +\item A \KPS{} configuration file \file{texmf.cnf}, containing a line like + \samp{TEXINPUTS=/c:/d} (see below). +\item The compile-time default. +\end{enumerate} +\noindent You can see each of these values for a given search path by +using the debugging options (see ``Debugging actions'' on +page~\pageref{sec:debugging}). + +\subsubsection{Config files} + +\begingroup\tolerance=3500 +\KPS{} reads \emph{runtime configuration files} named \file{texmf.cnf} +for search path and other definitions. The search path used to look +for these files is named \envname{TEXMFCNF} (by default such a file lives +in the \file{texmf/web2c} subdirectory). \emph{All} +\file{texmf.cnf} files in the search path will be read and definitions +in earlier files override those in later files. Thus, with a search +path of \verb|.:$TEXMF|, values from \file{./texmf.cnf} override those +from \verb|$TEXMF/texmf.cnf|. +\endgroup + +\begin{itemize} +\item + Comments start with \code{\%} and continue to the end of the line. +\item + Blank lines are ignored. +\item + A \bs{} at the end of a line acts as a continuation character, + i.e., the next line is appended. Whitespace at the beginning of + continuation lines is not ignored. +\item + Each remaining line has the form: +\begin{alltt} + \var{variable}[.\var{progname}] [=] \var{value} +\end{alltt}% + where the \samp{=} and surrounding whitespace are optional. +\item + The \ttvar{variable} name may contain any character other + than whitespace, \samp{=}, or \samp{.}, but sticking to + \samp{A-Za-z\_} is safest. +\item + If \samp{.\var{progname}} is present, the definition only + applies if the program that is running is named + \texttt{\var{progname}} or \texttt{\var{progname}.exe}. This allows + different flavors of \TeX{} to have different search paths, for + example. +\item \var{value} may contain any characters except + \code{\%} and \samp{@}. The + \code{\$\var{var}.\var{prog}} feature is not available on the + right-hand side; instead, you must use an additional variable. A + \samp{;}\ in \var{value} is translated to \samp{:}\ if + running under Unix; this is useful to be able to have a single + \file{texmf.cnf} for Unix, \acro{MS-DOS} and Windows systems. +\item + All definitions are read before anything is expanded, so + variables can be referenced before they are defined. +\end{itemize} +A configuration file fragment illustrating most of these points is +\ifSingleColumn +shown below: + +\verbatiminput{examples/ex5.tex} +\else +shown in Figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Path expansion} +\label{sec:path-expansion} + + +\KPS{} recognizes certain special characters and constructions in +search paths, similar to those available in Unix shells. As a +general example, the complex path, +\verb+~$USER/{foo,bar}//baz+, expands to all subdirectories under +directories \file{foo} and \file{bar} in \texttt{\$USER}'s home +directory that contain a directory or file \file{baz}. These +expansions are explained in the sections below. +%$ +\subsubsection{Default expansion} +\label{sec:default-expansion} + +\tolerance=2500 +If the highest-priority search path (see ``Path sources'' on +page~\pageref{sec:path-sources}) contains an \emph{extra colon} (i.e., +leading, trailing, or doubled), \KPS{} inserts at that point the +next-highest-prio\-rity search path that is defined. If that inserted +path has an extra colon, the same happens with the next highest. For +example, given an environment variable setting + +\tolerance=1500 + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +and a \code{TEXINPUTS} value from \file{texmf.cnf} of + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +then the final value used for searching will be: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Since it would be useless to insert the default value in more than one +place, \KPS{} changes only one extra \samp{:}\ and leaves any others in +place. It checks first for a leading \samp{:}, then a trailing +\samp{:}, then a doubled \samp{:}. + +\subsubsection{Brace expansion} + +A useful feature is brace expansion, which means that, for instance, +\verb+v{a,b}w+ expands to \verb+vaw:vbw+. Nesting is allowed. +This is used to implement multiple \TeX{} hierarchies, by +assigning a brace list to \code{\$TEXMF}. +For example, in \file{texmf.cnf}, the following definition +(appproximately; there are actually even more trees) is made: +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +Using this you can then write something like +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +which means that, after looking in the current directory, the +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} +and \code{\$TEXMFMAIN/tex} trees \emph{only}) will be searched (the +last two use using \file{ls-R} data base files). It is a convenient +way for running two parallel \TeX{} structures, one ``frozen'' (on a +\CD, for instance) and the other being continuously updated with new +versions as they become available. By using the \code{\$TEXMF} +variable in all definitions, one is sure to always search the +up-to-date tree first. + +\subsubsection{Subdirectory expansion} +\label{sec:subdirectory-expansion} + +Two or more consecutive slashes in a path element following a directory +\var{d} is replaced by all subdirectories of \var{d}: first those +subdirectories directly under \var{d}, then the subsubdirectories under +those, and so on. At each level, the order in which the directories are +searched is \emph{unspecified}. + +If you specify any filename components after the \samp{//}, only +subdirectories with matching components are included. For example, +\samp{/a//b} expands into directories \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, and so on, but not \file{/a/b/c} or \file{/a/1}. + +Multiple \samp{//} constructs in a path are possible, but +\samp{//} at the beginning of a path is ignored. + +\subsubsection{List of special characters and their meaning: a summary} + +The following list summarizes the special characters in \KPS{} +configuration files. + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Separator in path specification; at the beginning or + the end of a path it substitutes the default path expansion.\par +\item[\CODE{;}] Separator on non-Unix systems (acts like \code{:}). +\item[\CODE{\$}] Variable expansion. +\item[\CODE{\string~}] Represents the user's home directory. +\item[\CODE{\char`\{...\char`\}}] Brace expansion. +\item[\CODE{//}] Subdirectory expansion (can occur anywhere in + a path, except at its beginning). +\item[\CODE{\%}] Start of comment. +\item[\CODE{\bs}] Continuation character (allows multi-line entries). +\item[\CODE{!!}] Search \emph{only} database to locate file, \emph{do + not} search the disk. +\end{ttdescription} + + +\subsection{Filename databases} +\label{sec:filename-database} + +\KPS{} goes to some lengths to minimize disk accesses for searches. +Nevertheless, at installations with enough directories, searching each +possible directory for a given file can take an excessively long time +(this is especially true if many hundreds of font directories have to +be traversed.) Therefore, \KPS{} can use an externally-built plain text +``database'' file named \file{ls-R} that maps files to directories, +thus avoiding the need to exhaustively search the disk. + +A second database file \file{aliases} allows you to give additional +names to the files listed in \file{ls-R}. This can be helpful to +confirm to \acro{DOS} 8.3 filename conventions in source files. + +\subsubsection{The filename database} +\label{sec:ls-R} + +As explained above, the name of the main filename database must be +\file{ls-R}. You can put one at the root of each \TeX{} hierarchy in +your installation that you wish to be searched (\code{\$TEXMF} by +default); most sites have only one hierarchy. \KPS{} looks for +\file{ls-R} files along the \code{TEXMFDBS} path. + +The recommended way to create and maintain \samp{ls-R} is to run the +\code{mktexlsr} script included with the distribution. It is invoked +by the various \samp{mktex}\dots\ scripts. In principle, this script +just runs the command +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +presuming your system's \code{ls} produces the right output format +(\GNU \code{ls} is all right). To ensure that the database is +always up-to-date, it is easiest to rebuild it regularly via +\code{cron}, so that it is automatically updated when the installed +files change, such as after installing or updating a \LaTeX{} package. + +If a file is not found in the database, by default \KPS{} goes ahead +and searches the disk. If a particular path element begins with +\samp{!!}, however, \emph{only} the database will be searched for that +element, never the disk. + + +\subsubsection{kpsewhich: Standalone path searching} +\label{sec:invoking-kpsewhich} + +The \texttt{kpsewhich} program exercises path searching independent of any +particular application. This can be useful as a sort of \code{find} +program to locate files in \TeX{} hierarchies (this is used heavily in +the distributed \samp{mktex}\dots\ scripts). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +The options specified in \ttvar{option} start with either \samp{-} +or \samp{-{}-}, and any unambiguous abbreviation is accepted. + +\KPS{} looks up each non-option argument on the command line as a +filename, and returns the first file found. There is no option to +return all the files with a particular name (you can run the Unix +\samp{find} utility for that). + +The most common options are described next. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Set the resolution to \ttvar{num}; this only affects \samp{gf} + and \samp{pk} lookups. \samp{-D} is a synonym, for compatibility + with \cmdname{dvips}. Default is 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Set the format for lookup to \ttvar{name}. By default, the + format is guessed from the filename. For formats which do not have + an associated unambiguous suffix, such as \MP{} support files and + \cmdname{dvips} configuration files, you have to specify the name as + known to \KPS{}, such as \texttt{tex} or \texttt{enc files}. Run + \texttt{kpsewhich -{}-help} for a list. + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Set the mode name to \ttvar{string}; this only affects \samp{gf} + and \samp{pk} lookups. No default: any mode will be found. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Do everything possible to find the files, notably including + searching the disk. By default, only the \file{ls-R} database is + checked, in the interest of efficiency. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Search along the path \ttvar{string} (colon-separated as usual), + instead of guessing the search path from the filename. \samp{//} and + all the usual expansions are supported. The options \samp{-{}-path} + and \samp{-{}-format} are mutually exclusive. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Set the program name to \texttt{\var{name}}. + This can affect the search paths via the \texttt{.\var{progname}} + feature. + The default is \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + shows the path used for file lookups of file type \texttt{\var{name}}. + Either a filename extension (\code{.pk}, \code{.vf}, etc.) or a + name can be used, just as with \samp{-{}-format} option. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + sets the debugging options to \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Examples of use} +\label{sec:examples-of-use} + +Let us now have a look at \KPS{} in action. Here's a straightforward search: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +We are looking for the file \file{article.cls}. Since the \samp{.cls} +suffix is unambiguous we do not need to specify that we want to look for a +file of type \optname{tex} (\TeX{} source file directories). We find it in +the subdirectory \file{tex/latex/base} below the \samp{texmf-dist} \TL\ +directory. Similarly, all of the following are found without problems +thanks to their unambiguous suffix. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +By the way, that last is a \BibTeX{} bibliography database for \textsl{TUGBoat} articles. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Font bitmap glyph files of type \file{.pk} are used by display +programs like \cmdname{dvips} and \cmdname{xdvi}. Nothing is returned in +this case since there are no pre-generated Computer Modern \samp{.pk} +files in \TL{}\Dash the Type~1 variants are used by default. +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +For these fonts (a phonetic alphabet from the University of Washington) +we had to generate \samp{.pk} files, and since the default \MF{} mode on +our installation is \texttt{ljfour} with a base resolution of 600\dpi{} +(dots per inch), this instantiation is returned. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +In this case, when specifying that we are interested in a resolution +of 300\dpi{} (\texttt{-dpi=300}) we see that no such font is available on +the system. A program like \cmdname{dvips} or \cmdname{xdvi} would +go off and actually build the required \texttt{.pk} files +using the script \cmdname{mktexpk}. + +Next we turn our attention to \cmdname{dvips}'s header and configuration +files. We first look at one of the commonly used files, the general +prologue \file{tex.pro} for \TeX{} support, before turning our attention +to the generic configuration file (\file{config.ps}) and the \PS{} font +map \file{psfonts.map}\Dash as of 2004, map and encoding files have +their own search paths and new location in \dirname{texmf} trees. As +the \samp{.ps} suffix is ambiguous we have to specify explicitly which +type we are considering (\optname{dvips config}) for the file +\texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +We now take a closer look at the \acro{URW} Times \PS{} support +files. The prefix for these in the standard font naming scheme is +\samp{utm}. The first file we look at is the configuration file, +which contains the name of the map file: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +The contents of that file is +\begin{alltt} + p +utm.map +\end{alltt} +which points to the file \file{utm.map}, which we want to +locate next. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +This map file defines the file names of the Type~1 \PS{} fonts in +the URW collection. Its contents look like (we only show part of the +lines): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +It should be evident from these examples how you can easily locate the +whereabouts of a given file. This is especially important if you suspect +that the wrong version of a file is picked up somehow, since +\cmdname{kpsewhich} will show you the first file encountered. + +\subsubsection{Debugging actions} +\label{sec:debugging} + +Sometimes it is necessary to investigate how a program resolves file +references. To make this practical, \KPS{} offers various levels of +debugging output: + +\begin{ttdescription} +\item[\texttt{\ 1}] \texttt{stat} calls (disk lookups). When running + with an up-to-date \file{ls-R} database this should almost give no + output. +\item[\texttt{\ 2}] References to hash tables (such as \file{ls-R} + databases, map files, configuration files). +\item[\texttt{\ 4}] File open and close operations. +\item[\texttt{\ 8}] General path information for file types + searched by \KPS. This is useful to find out where a particular + path for the file was defined. +\item[\texttt{16}] Directory list for each path element (only relevant + for searches on disk). +\item[\texttt{32}] File searches. +\item[\texttt{64}] Variable values. +\end{ttdescription} +A value of \texttt{-1} will set all the above options; in practice, +this is usually the most convenient. + +Similarly, with the \cmdname{dvips} program, by setting a combination of +debug switches, one can follow in detail where files are being picked up +from. Alternatively, when a file is not found, the debug trace shows in +which directories the program looks for the given file, so that one can +get an indication what the problem~is. + +Generally speaking, as most programs call the \KPS{} library +internally, one can select a debug option by using the +\envname{KPATHSEA\_DEBUG} environment variable, and setting it to (a +combination of) values as described in the above list. + +(Note for Windows users: it is not easy to redirect +all messages to a file in this system. For diagnostic purposes +you can temporarily \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Let us consider, as an example, a small \LaTeX{} source file, +\file{hello-world.tex}, which contains the following input. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +This little file only uses the font \file{cmr10}, so let us look at +how \cmdname{dvips} prepares the \PS{} file (we want to use the Type~1 +version of the Computer Modern fonts, hence the option \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In this case we have combined \cmdname{dvips}'s debug class 4 (font +paths) with \KPS's path element expansion (see \cmdname{dvips} Reference +Manual, \OnCD{texmf/doc/dvips/dvips.pdf}). +The output (slightly rearranged) appears in +Figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} starts by locating its working files. First, +\file{texmf.cnf} is found, which gives the definitions of the search +paths for the other files, then the file database \file{ls-R} (to +optimize file searching) and the file \file{aliases}, which makes it +possible to declare several names (e.g., a short \acro{DOS}-like 8.3 and +a more natural longer version) for the same file. Then \cmdname{dvips} +goes on to find the generic configuration file \file{config.ps} +before looking for the customization file \file{.dvipsrc} (which, in +this case is \emph{not found}). Finally, \cmdname{dvips} locates the +config file for the Computer Modern \PS{} fonts \file{config.cms} +(this was initiated with the \texttt{-Pcms} option on the \cmdname{dvips} +command). This file contains the list of the map files which +define the relation between the \TeX{}, \PS{} and file system +names of the fonts. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} thus goes on to find all these files, plus the generic +map file \file{psfonts.map}, which is always loaded (it contains +declarations for commonly used \PS{} fonts; see the last part of +Section \ref{sec:examples-of-use} for more details about \PS{} map +file handling). + +At this point \cmdname{dvips} identifies itself to the user: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Then it goes on to look for the prolog file \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Then it goes on to look for the prolog file \file{texc.pro} (see +Figure~\ref{fig:dvipsdbgb}). +\fi + +After having found the file in question, \cmdname{dvips} outputs +the date and time, and informs us that it will generate the +file \file{hello-world.ps}, then that it needs the font file +\file{cmr10}, and that the latter is declared as ``resident'' (no +bitmaps needed): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Now the search is on for the file \file{cmr10.tfm}, which is found, +then a few more prolog files (not shown) are referenced, and finally +the Type~1 instance \file{cmr10.pfb} of the font is located and +included in the output file (see last line). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Runtime options} + +Another useful feature of \Webc{} is its possibility to control a number +of memory parameters (in particular, array sizes) via the runtime file +\file{texmf.cnf} read by \KPS{}. The memory settings can be found in +Part 3 of that file in the \TL{} distribution. The more important +are: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + Total words of memory available, for + \TeX{}, \MF{} and \MP. You must make a new format file for each + different setting. For instance, you could generate a ``huge'' + version of \TeX{}, and call the format file \texttt{hugetex.fmt}. + Using the standard way of specifying the program name used by \KPS{}, + the particular value of the \texttt{main\_memory} variable will then + be read from \file{texmf.cnf}. +\item[\texttt{extra\_mem\_bot}] + Extra space for ``large'' \TeX{} data structures: + boxes, glue, breakpoints, etc. Especially useful if you use + \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Number of words for font information available for \TeX. This + is more or less the total size of all \acro{TFM} files read. +\item[\texttt{hash\_extra}] + Additional space for the hash table of control sequence names. + Only $\approx$10,000 control sequences can be stored in the main + hash table; if you have a large book with numerous cross-references, + this might not be enough. The default value of + \texttt{hash\_extra} is \texttt{50000}. +\end{ttdescription} + +\noindent Of course, this facility is no substitute for truly dynamic +arrays and memory allocation, but since these are extremely difficult to +implement in the present \TeX{} source, these runtime parameters provide +a practical compromise allowing some flexibility. + + +\begin{comment} +\section{Building on a new Unix platform} + +If you have a platform for which executables are not included, you will +need to compile \TeX{} and friends. This is not as hard as it +sounds. What you need is all in the directory \texttt{source} in the +distribution. + +\subsection{Prerequisites} + +You will need at least 100 megabytes of disk space to compile all of +\TeX{} and its support programs. You'll also need an \acro{ANSI} C +compiler, a \cmdname{make} utility, a lexical scanner, and a parser +generator. We recommend the \GNU version of these programs +(\cmdname{gcc}, \GNU \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). You may be able to work with other C compilers and +\cmdname{make} programs, but you will need a good understanding of +building Unix programs to sort out problems. + +Also, the command \texttt{uname} must return a sensible value. + + +\subsection{Configuration} + +To begin, perform a normal installation of \TL{} to your disk (see +section~\ref{sec:install-disk} on +\p.\pageref{sec:install-disk}). You may wish to skip installing +all of the prebuilt binaries. + +Then, unpack the source from the compressed \texttt{tar} file in the +directory \dirname{source} to your disk and change directory to where +you placed it. + +Next, run \cmdname{configure} with a command line like this: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +The \optname{-prefix} directory is the one where you installed the +support tree; the directory layout will be as follows (where \$TEXDIR +stands for the directory you chose): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & main tree with fonts,\\ + & \qquad macros, etc\\ + \dirname{$TEXDIR/man} & Unix manual pages\\ + \dirname{$TEXDIR/info} & \GNU style Info manuals\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaries\\ +\end{tabular} +%$ + +If you want to leave out the \dirname{$PLATFORM} directory level, +i.e., put the binaries directly into \dirname{$TEXDIR/bin}, specify +the \verb|--disable-multiplatform| option to \cmdname{configure}. + +Have a look at the output of \verb|./configure --help| for more +options you can use. For example, you can skip building of \OMEGA{} and +\eTeX{}. + + +\subsection{Running \cmdname{make}} + +Make sure the shell variable or option \texttt{noclobber} is not set. +Then, run the main \cmdname{make} like this: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +and relax\ldots + +Alternatively, you want to log all the output, as in: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Before you believe that everything went ok, please check the log file +for errors: \GNU \cmdname{make} always uses the string \samp{***} +whenever a command fails. Also, check if all the programs were built: + +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +The result should be over 200 (you can check the exact number with the +\dirname{bin} directory contents in the distribution). + +If you need special privileges for \texttt{make install}, you can +separate the \samp{make world} into two different runs, like this: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +After you've installed your new binaries, you should follow the normal +post-installation procedures, given in section~\ref{sec:postinstall} +(\p.\pageref{sec:postinstall}). + +Also, if you'd like to make your binaries available to others, please +contact us. We'll be happy to put them on the \TL\ web pages. +\end{comment} + +\ifx\HCode\undefined\else\HCode{} +\section{Acknowledgements} + +\TL{} is a joint effort by virtually all of the \TeX{} user groups. +This edition of \TL{} was overseen by Karl Berry. The other principal +contributors, past and present, are listed below. + +\begin{itemize*} + +\item The English, German, Dutch, and Polish \TeX{} user groups +(\acro{TUG}, \acro{DANTE} e.V., \acro{NTG}, and \acro{GUST}, +respectively), which provide the necessary technical and administrative +infrastructure. Please join the \TeX\ user group near you! (See +\url{http://tug.org/usergroups.html}.) + +\item The \acro{CTAN} team, most notably Robin Fairbairns, Jim Hef{}feron, +and Rainer Sch\"opf, which distributes the \TL{} images and provides the +common infrastructure for package updates, upon which \TL{} depends. + +\item Peter Breitenlohner (and the \eTeX\ team) for the stable foundation +of future \TeX's, and Peter specifically for stellar help with the GNU +autotools usage throughout \TL. + +\item Thomas Esser, without whose marvelous \teTeX{} package \TL{} +would have never existed. + +\item Michel Goossens, who co-authored the original documentation. + +\item Eitan Gurari, whose \TeX4ht was used to create the \HTML{} +version of this documentation, and who worked tirelessly to improve +it at short notice. + +\item \Thanh, Martin Schr\"oder, and the pdf\TeX\ team +(\url{http://pdftex.org}) for continuing enhancements of \TeX's +abilities. + +\item Hans Hagen, for much testing and making his \ConTeXt\ format +(\url{http://pragma-ade.com}) work within \TL's framework. + +\item Hartmut Henkel, for significant development contributions to +pdf\TeX\, Lua\TeX, and more. + +\item Taco Hoekwater, for renewed development efforts on MetaPost and +(Lua)\TeX\ (\url{http://luatex.org}) itself, and for incorporating +\ConTeXt\ into \TL. + +\item Pawe{\l} Jackowski, for the Windows installer \cmdname{tlpm}, +and Tomasz {\L}uczak, for \cmdname{tlpmgui}, used in past releases. + +\item Akira Kakuto, for providing the Windows +binaries from his \acro{W32TEX} distribution for Japanese \TeX\ +(\url{http://www.fsci.fuk.kindai.ac.jp/kakuto/win32-ptex/}), and many +other contributions. + +\item Jonathan Kew and \acro{SIL}, for the major new development of +\XeTeX{} and taking the time and trouble to integrate it in \TL{}, as +well as the initial version of the Mac\TeX\ installer. + +\item Dick Koch, for maintaining Mac\TeX\ (\url{http://tug.org/mactex}) +in very close tandem with \TL{}, and for his great good cheer in doing +so. + +\item Reinhard Kotucha, for major contributions to the \TL{} 2008 +infrastructure and installer, as well as Windows research efforts, the +\texttt{getnonfreefonts} script, and more. + +\item Siep Kroonenberg, also for major contributions to the \TL{} 2008 +infrastructure and installer, especially on Windows, and for the bulk of +work updating this manual describing the new features. + +\item Petr Ol\v{s}ak, who coordinated and checked all the Czech and Slovak +material very carefully. + +\item Toshio Oshima, for his \cmdname{dviout} previewer for Windows. + +\item Manuel P\'egouri\'e-Gonnard, for helping with package updates, +documentation improvements, and \cmdname{tldoc} development. + +\item Fabrice Popineau, for the original Windows support in \TL{} and +work on the French documentation. + +\item Norbert Preining, the principal architect of the \TL{} 2008 +infrastructure and installer, and also for coordinating the Debian +version of \TL{} (together with Frank K\"uster), making many suggestions +along the way. + +\item Sebastian Rahtz, for originally creating \TL{} and maintaining it +for many years. + +\item Vladimir Volovich, for substantial help with porting and other +maintenance issues, and especially for making it feasible to include +\cmdname{xindy}. + +\item Staszek Wawrykiewicz, the principal tester for all of \TL{}, +and coordinator of the many major Polish contributions: fonts, Windows +installation, and more. + +\item Olaf Weber, for his patient maintenance of \Webc. + +\item Gerben Wierda, for creating and maintaining the \MacOSX\ support, +and much integration and testing. + +\item Graham Williams, on whose work the \TeX\ Catalogue of packages depends. + +\end{itemize*} + +Builders of the binaries: +Reinhard Kotucha (\pkgname{x86\_64-linux}), +Tim Arnold (\pkgname{hppa-hpux}), +Randy Au (\pkgname{amd64-freebsd}), +Edd Barrett (\pkgname{i386-openbsd}), +Karl Berry (\pkgname{i386-linux}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}), +Manfred Lotz (\pkgname{i386-freebsd}), +Norbert Preining (\pkgname{alpha-linux}), +Arthur Reutenauer (\pkgname{sparc-linux}), +Thomas Schmitz (\pkgname{powerpc-linux}), +Apostolos Syropoulos (\pkgname{i386-solaris}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix}). +For information on the \TL{} build process, see +\url{http://tug.org/texlive/build.html}. + +Documentation and translation updates: +Karl Berry (English), +Daniel Flipo (French), +Klaus H\"oppner (German), +Petr Sojka \& Jan Busa (Czech\slash Slovak), +Boris Veytsman (Russian), +Staszek Wawrykiewicz (Polish). The \TL{} documentation web page +is \url{http://tug.org/texlive/doc.html}. + +Of course the most important acknowledgement must go to Donald Knuth, +first for inventing \TeX, and then for giving it to the world. + + + +\section{Release history} +\label{sec:history} + +\subsection{Past} + +Discussion began in late 1993 when the Dutch \TeX{} Users Group was +starting work on its 4All\TeX{} \CD{} for \acro{MS-DOS} users, and it +was hoped at that time to issue a single, rational, \CD{} for all +systems. This was too ambitious a target for the time, but it did spawn +not only the very successful 4All\TeX{} \CD{}, but also the \acro{TUG} +Technical Council working group on a \emph{\TeX{} Directory Structure} +(\url{http://tug.org/tds}), which specified how to create consistent and +manageable collections of \TeX{} support files. A complete draft of the +\TDS{} was published in the December 1995 issue of \textsl{TUGboat}, and +it was clear from an early stage that one desirable product would be a +model structure on \CD{}. The distribution you now have is a very direct +result of the working group's deliberations. It was also clear that the +success of the 4All\TeX{} \CD{} showed that Unix users would benefit +from a similarly easy system, and this is the other main strand of +\TL. + +We first undertook to make a new Unix-based \TDS{} \CD{} in the autumn +of 1995, and quickly identified Thomas Esser's \teTeX{} as the ideal +setup, as it already had multi-platform support and was built with +portability across file systems in mind. Thomas agreed to help, and work +began seriously at the start of 1996. The first edition was released in +May 1996. At the start of 1997, Karl Berry completed a major new release +of Web2c, which included nearly all the features which Thomas Esser had +added in \teTeX, and we decided to base the 2nd edition of the \CD{} on +the standard \Webc, with the addition of \teTeX's \texttt{texconfig} +script. The 3rd edition of the \CD{} was based on a major revision of +\Webc, 7.2, by Olaf Weber; at the same time, a new revision of \teTeX +was being made, and \TL{} included almost all of its features. The +4th edition followed the same pattern, using a new version of \teTeX, +and a new release of \Webc{} (7.3). The system now included a complete +Windows setup. + +For the 5th edition (March 2000) many parts of the \CD{} were revised +and checked, updating hundreds of packages. Package details were stored +in XML files. But the major change for \TeX\ Live 5 was that all +non-free software was removed. Everything in \TL{} is now intended +to be compatible with the Debian Free Software Guidelines +(\url{http://www.debian.org/intro/free}); we have done our best to check +the license conditions of all packages, but we would very much +appreciate hearing of any mistakes. + +The 6th edition (July 2001) had much more material updated. The major +change was a new install concept: the user could select a more exact set +of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, +etc., but also prepares an appropriate \texttt{language.dat}. + +The 7th edition of 2002 had the notable addition of \MacOSX{} support, +and the usual myriad of updates to all sorts of packages and +programs. An important goal was integration of the source back with +\teTeX, to correct the drift apart in versions~5 and~6. + +\subsubsection{2003} + +In 2003, with the continuing flood of updates and additions, we found +that \TL{} had grown so large it could no longer be contained on a +single \CD, so we split it into three different distributions (see +section~\ref{sec:tl-coll-dists}, \p.\pageref{sec:tl-coll-dists}). In +addition: + +\begin{itemize*} +\item At the request of the \LaTeX{} team, we changed the standard + \cmdname{latex} and \cmdname{pdflatex} commands to now use \eTeX{} (see + \p.\pageref{text:etex}). +\item The new Latin Modern fonts were included (and are recommended). +\item Support for Alpha \acro{OSF} was removed + (\acro{HPUX} support was removed previously), since no one had (or + volunteered) hardware available on which to compile new binaries. +\item Windows setup was substantially changed; for the first time + an integrated environment based on XEmacs was introduced. +\item Important supplementary programs for Windows + (Perl, Ghost\-script, Image\-Magick, Ispell) are now installed + in the \TL{} installation directory. +\item Font map files used by \cmdname{dvips}, \cmdname{dvipdfm} + and \cmdname{pdftex} are now generated by the new program + \cmdname{updmap} and installed into \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{}, and \MP{} now, by default, output most input + characters (32 and above) as themselves in output (e.g., + \verb|\write|) files, + log files, and the terminal, i.e., \emph{not} translated using the + \verb|^^| notation. In \TL{}~7, this translation was + dependent on the system locale settings; now, locale settings do + not influence the \TeX{} programs' behavior. If for some reason + you need the \verb|^^| output, rename the file + \verb|texmf/web2c/cp8bit.tcx|. (Future releases will have cleaner + ways to control this.) +\item This documentation was substantially revised. +\item Finally, since the edition numbers had grown unwieldy, + the version is now simply identified by the year: \TL{} 2003. +\end{itemize*} + + +\subsubsection{2004} + +2004 saw many changes: + +\begin{itemize} + +\item If you have locally-installed fonts which use their own +\filename{.map} or (much less likely) \filename{.enc} support files, you +may need to move those support files. + +\filename{.map} files are now searched for in subdirectories of +\dirname{fonts/map} only (in each \filename{texmf} tree), along the +\envname{TEXFONTMAPS} path. Similarly, \filename{.enc} files are now +searched for in subdirectories of \dirname{fonts/enc} only, along the +\envname{ENCFONTS} path. \cmdname{updmap} will attempt to warn about +problematic files. + +For methods of handling this and other information, please see +\url{http://tug.org/texlive/mapenc.html}. + +\item The \TK\ has been expanded with the addition of a \MIKTEX-based +installable \CD, for those who prefer that implementation to Web2C. +See section~\ref{sec:overview-tl} (\p.\pageref{sec:overview-tl}). + +\item Within \TL, the single large \dirname{texmf} tree of previous +releases has been replaced by three: \dirname{texmf}, +\dirname{texmf-dist}, and \dirname{texmf-doc}. See +section~\ref{sec:tld} (\p.\pageref{sec:tld}), and the \filename{README} +files for each. + +\item All \TeX-related input files are now collected in +the \dirname{tex} subdirectory of \dirname{texmf*} trees, rather than +having separate sibling directories \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex}, etc. See +\CDref{texmf-doc/doc/english/tds/tds.html\#Extensions} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Extensions}}. + +\item Helper scripts (not meant to be invoked by users) are now located +in a new \dirname{scripts} directory of \dirname{texmf*} trees, and +searched for via \verb|kpsewhich -format=texmfscripts|. So if you have +programs which call such scripts, they'll need to be adjusted. See +\CDref{texmf-doc/doc/english/tds/tds.html\#Scripts} +{\texttt{texmf-doc/doc/english/tds/tds.html\#Scripts}}. + +\item Almost all formats leave most characters printable as +themselves via the ``translation file'' \filename{cp227.tcx}, instead of +translating them with the \verb|^^| notation. Specifically, characters +at positions 32--256, plus tab, vertical tab, and form feed are +considered printable and not translated. The exceptions are plain \TeX\ +(only 32--126 printable), \ConTeXt\ (0--255 printable), and the +\OMEGA-related formats. This default behavior is almost the same as in +\TL\,2003, but it's implemented more cleanly, with more possibilities +for customization. See \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. +(By the way, with Unicode input, \TeX\ may output partial character +sequences when showing error contexts, since it is byte-oriented.) + +\item \textsf{pdfetex} is now the default engine for all formats +except (plain) \textsf{tex} itself. (Of course it generates \acro{DVI} +when run as \textsf{latex}, etc.) This means, among other things, that +the microtypographic features of \textsf{pdftex} are available in +\LaTeX, \ConTeXt, etc., as well as the \eTeX\ features +(\OnCD{texmf-dist/doc/etex/base/}). + +It also means it's \emph{more important than ever} to use the +\pkgname{ifpdf} package (works with both plain and \LaTeX) or equivalent +code, because simply testing whether \cs{pdfoutput} or some other +primitive is defined is not a reliable way to determine if \acro{PDF} +output is being generated. We made this backward compatible as best we +could this year, but next year, \cs{pdfoutput} may be defined even when +\acro{DVI} is being written. + +\item pdf\TeX\ (\url{http://pdftex.org}) has many new features: + + \begin{itemize*} + + \item \cs{pdfmapfile} and \cs{pdfmapline} provide font map support + from within a document. + + \item Microtypographic font expansion can be used more easily.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item All parameters previously set through the special configuration + file \filename{pdftex.cfg} must now be set through primitives, + typically in \filename{pdftexconfig.tex}; \filename{pdftex.cfg} is no + longer supported. Any extant \filename{.fmt} files must be redumped + when \filename{pdftexconfig.tex} is changed. + + \item See the pdf\TeX\ manual for more: \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}. + + \end{itemize*} + +\item The \cs{input} primitive in \cmdname{tex} (and \cmdname{mf} and +\cmdname{mpost}) now accepts double quotes containing spaces and other +special characters. Typical examples: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +See the Web2C manual for more: \OnCD{texmf/doc/web2c}. + +\item enc\TeX\ support is now included within Web2C and consequently all +\TeX\ programs, via the \optname{-enc} option\Dash \emph{only when +formats are built}. enc\TeX\ supports general re-encoding of input and +output, enabling full support of Unicode (in \acro{UTF}-8). See +\OnCD{texmf-dist/doc/generic/enctex/} and +\url{http://www.olsak.net/enctex.html}. + +\item Aleph, a new engine combining \eTeX\ and \OMEGA, is available. +A little information is available in \OnCD{texmf-dist/doc/aleph/base} +and \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. The +\LaTeX-based format for Aleph is named \textsf{lamed}. + +\item The latest \LaTeX\ release has a new version of the +\acro{LPPL}\Dash now officially a Debian-approved license. Assorted +other updates, see the \filename{ltnews} files in +\OnCD{texmf-dist/doc/latex/base}. + +\item \cmdname{dvipng}, a new program for converting \acro{DVI} to +\acro{PNG} image files, is included. See \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item We reduced the \pkgname{cbgreek} package to a ``medium'' sized set +of fonts, with the assent and advice of the author (Claudio Beccari). +The excised fonts are the invisible, outline, and transparency ones, +which are relatively rarely used, and we needed the space. The full set +is of course available from \acro{CTAN} +(\url{http://www.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} has been removed; just use \cmdname{xdvi}. + +\item The \cmdname{ini} and \cmdname{vir} commands (links) for +\cmdname{tex}, \cmdname{mf}, and \cmdname{mpost} are no longer created, +such as \cmdname{initex}. The \cmdname{ini} functionality has been +available through the command-line option \optname{-ini} for years now. + +\item \textsf{i386-openbsd} platform support was removed. Since the +\pkgname{tetex} package in the \acro{BSD} Ports system is available, and +\acro{GNU/}Linux and Free\acro{BSD} binaries were available, it seemed +volunteer time could be better spent elsewhere. + +\item On \textsf{sparc-solaris} (at least), you may have to set the +\envname{LD\_LIBRARY\_PATH} environment variable to run the +\pkgname{t1utils} programs. This is because they are compiled with C++, +and there is no standard location for the runtime libraries. (This is +not new in 2004, but wasn't previously documented.) Similarly, on +\textsf{mips-irix}, the \acro{MIPS}pro 7.4 runtimes are required. + +\end{itemize} + +\subsubsection{2005} + +2005 saw the usual huge number of updates to packages and programs. +The infrastructure stayed relatively stable from 2004, but inevitably +there were some changes there as well: + +\begin{itemize} + +\item New scripts \cmdname{texconfig-sys}, \cmdname{updmap-sys}, and + \cmdname{fmtutil-sys} were introduced, which modify the + configuration in the system trees. The \cmdname{texconfig}, + \cmdname{updmap}, and \cmdname{fmtutil} scripts now modify + user-specific files, under \dirname{$HOME/.texlive2005}. + +\item Corresponding new variables \envname{TEXMFCONFIG} and + \envname{TEXMFSYSCONFIG} to specify the trees where configuration + files (user or system, respectively) are found. Thus, you may + need to move personal versions of \filename{fmtutil.cnf} and + \filename{updmap.cfg} to these places; another option is to + redefine \envname{TEXMFCONFIG} or \envname{TEXMFSYSCONFIG} in + \filename{texmf.cnf}. In any case the real location of these files + and the values of \envname{TEXMFCONFIG} and \envname{TEXMFSYSCONFIG} + must agree. + See section~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. + +\item Last year, we kept \verb|\pdfoutput| and other primitives undefined + for \dvi\ output, even though the \cmdname{pdfetex} program was + being used. This year, as promised, we undid that compatibility + measure. So if your document uses \verb|\ifx\pdfoutput\undefined| + to test if PDF is being output, it will need to be changed. You + can use the package \pkgname{ifpdf.sty} (which works under both + plain \TeX\ and \LaTeX) to do this, or steal its logic. + +\item Last year, we changed most formats to output (8-bit) characters as + themselves (see previous section). The new TCX file + \filename{empty.tcx} now provides an easier way to get the + original \verb|^^| notation if you so desire, as in: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + +\item The new program \cmdname{dvipdfmx} is included for translation of + DVI to PDF; this is an actively maintained update of + \cmdname{dvipdfm} (which is also still available for now, though + no longer recommended). + +\item The new programs \cmdname{pdfopen} and \cmdname{pdfclose} are included + to allow reloading of pdf files in the Adobe Acrobat Reader without + restarting the program. (Other pdf readers, notably \cmdname{xpdf}, + \cmdname{gv}, and \cmdname{gsview}, have never suffered from this + problem.) + +\item For consistency, the variables \envname{HOMETEXMF} and + \envname{VARTEXMF} have been renamed to \envname{TEXMFHOME} and + \envname{TEXMFSYSVAR}, respectively. There is also + \envname{TEXMFVAR}, which is by default user-specific. See the + first point above. + +\end{itemize} + + +\subsubsection{2006--2007} + +In 2006--2007, the major new addition to \TL{} was the \XeTeX{} program, +available as the \texttt{xetex} and \texttt{xelatex} programs; see +\url{http://scripts.sil.org/xetex}. + +MetaPost also received a notable update, with more planned for the +future (\url{http://tug.org/metapost/articles}), likewise pdf\TeX{} +(\url{http://tug.org/applications/pdftex}). + +The \TeX\ \filename{.fmt} (high-speed format) and the similar files for +MetaPost and \MF\ are now stored in subdirectories of \dirname{texmf/web2c}, +instead of in the directory itself (although the directory is still +searched, for the sake of existing \filename{.fmt}'s). The +subdirectories are named for the `engine' in use, such as \filename{tex} +or \filename{pdftex} or \filename{xetex}. This change should be +invisible in normal use. + +The (plain) \texttt{tex} program no longer reads \texttt{\%\&} first +lines to determine what format to run; it is the pure Knuthian \TeX. +(\LaTeX\ and everything else do still read \texttt{\%\&} lines). + +Of course the year also saw (the usual) hundreds of other updates to +packages and programs. As usual, please check \acro{CTAN} +(\url{http://www.ctan.org}) for updates. + +Internally, the source tree is now stored in Subversion, with a standard +web interface for viewing the tree, as linked from our home page. +Although not visible in the final distribution, we expect this will +provide a stable development foundation for future years. + +Finally, in May 2006 Thomas Esser announced that he would no longer be +updating te\TeX{} (\url{http://tug.org/tetex}). As a result, there was +been a surge of interest in \TL{}, especially among \GNU/Linux +distributors. (There is a new \texttt{tetex} installation scheme in +\TL{}, which provides an approximate equivalent.) We hope this will +eventually translate to improvements in the \TeX\ environment for +everyone. + +\medskip \noindent +Final note on the past: all releases of \TL{}, along with ancillary +material such as \CD\ labels, are available at +\url{ftp://tug.org/historic/systems/texlive}. + +\ifx\HCode\undefined\else\HCode{} +\subsection{Present} +\label{sec:tlcurrent} + +In 2008, the entire \TL{} infrastructure was redesigned and +reimplemented. Complete information about an installation is now stored +in a plain text file \filename{tlpkg/texlive.tlpdb}. + +Among other things, this finally makes possible upgrading a \TL{} +installation over the Internet after the initial installation, a feature +MiK\TeX\ has provided for many years. We expect to regularly update new +packages as they are released to \CTAN. + +The major new engine Lua\TeX\ (\url{http://luatex.org}) is included; +besides a new level of flexibility in typesetting, this provides an +excellent scripting language for use both inside and outside of \TeX\ +documents. + +Support among Windows and the Unix-based platforms is now much more +uniform. In particular, most Perl and Lua scripts are now available on +Windows, using the Perl internally distributed with \TL. + +The new \cmdname{tlmgr} script (section~\ref{sec:tlmgr}) is the +general interface for managing \TL{} after the initial installation. +It handles package updates and consequent regeneration of formats, map +files, and language files, optionally including local additions. + +With the advent of \cmdname{tlmgr}, the \cmdname{texconfig} actions to +edit the format and hyphenation configuration files are now disabled. + +The \cmdname{xindy} indexing program +(\url{http://xindy.sourceforge.net/}) is now included on most platforms. + +The \cmdname{kpsewhich} tool can now report all matches for a given file +(option \optname{--all}) and limit matches to a given subdirectory +(option \optname{--subdir}). + +The \cmdname{dvipdfmx} program now includes functionality to extract +bounding box information, via the command name \cmdname{extractbb}; this +was one of the last features provided by \cmdname{dvipdfm} not in +\cmdname{dvipdfmx}. + +The font aliases \filename{Times-Roman}, \filename{Helvetica}, and so on +have been removed. Different packages expected them to behave +differently (in particular, to have different encodings), and there was +no good way to resolve this. + +The \pkgname{platex} format has been removed, to resolve a name conflict +with a completely different Japanese \pkgname{platex}; the +\pkgname{polski} package is now the main Polish support. + +Internally, the \web\ string pool files are now compiled into the +binaries, to ease upgrades. + +Finally, the changes made by Donald Knuth in his `\TeX\ tuneup of 2008' +are included in this release. See +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + + +\subsection{Future} + +\emph{\TL{} is not perfect!} (And never will be.) We intend to +continue to release new versions, and would like to provide more help +material, more utilities, more installation programs, and (of course) an +ever-improved and better-checked tree of macros and fonts. This work is +all done by hard-pressed volunteers in their limited spare time, and a +great deal remains to be done. Please see +\url{http://tug.org/texlive/contribute.html}. + +Please send corrections, suggestions, and offers of help to: +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Happy \TeX ing!} + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2009.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2009.tex new file mode 100644 index 00000000000..022bae432e3 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2009.tex @@ -0,0 +1,3130 @@ +% $Id: texlive-en.tex 15931 2009-11-03 00:48:56Z karl $ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +\documentclass{article} +\let\tldocenglish=1 % for live4ht.cfg +\usepackage{tex-live} +\usepackage[latin1]{inputenc} % translators: use your preferred encodings. +\usepackage[T1]{fontenc} + +\begin{document} + +\title{% + {\huge \textit{The \TeX\ Live Guide}\\\smallskip}% + {\LARGE \textsf{\TL{} 2009}}% +} + +\author{Karl Berry, editor \\[3mm] + \url{http://tug.org/texlive/} + } + +\date{November 2009} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +%\listoftables +\end{multicols} + +\section{Introduction} +\label{sec:intro} + +\subsection{\TeX\ Live and the \TeX\ Collection} + +This document describes the main features of the \TL{} software +distribution\Dash \TeX{} and related programs for \GNU/Linux +and other Unix flavors, \MacOSX, and Windows systems. + +You may have acquired \TL{} by downloading, or on the \TK{} \DVD, which +\TeX{} user groups distribute among their members, or in other ways. +Section \ref{sec:tl-coll-dists} briefly describes the contents of the +\DVD. Both \TL{} and the \TK{} are cooperative efforts by the \TeX{} +user groups. This document mainly describes \TL{} itself. + +\TL{} includes executables for \TeX{}, \LaTeXe{}, \ConTeXt, +\MF, \MP, \BibTeX{} and many other programs; an extensive collection +of macros, fonts and documentation; and support for typesetting in +many different scripts from around the world. + +For a brief summary of the major changes in this edition of \TL{}, +see the end of the document, section~\ref{sec:history} +(\p.\pageref{sec:history}). + +\subsection{Operating system support} +\label{sec:os-support} + +\TL{} contains binaries for many Unix-based architectures, including +\GNU/Linux and \MacOSX. There are also Cygwin binaries. The +included sources can be compiled on platforms for which we do not +have binaries. + +As to Windows: only Windows 2000 and later are +supported. Windows~9\textit{x}, \acro{ME} and \acro{NT} have been +dropped. Because of this change, Windows requires much less special +treatment compared to the Unix systems. There are no special 64-bit +executables for Windows, but the 32-bit executables should run on 64-bit +systems. + +See section~\ref{sec:tl-coll-dists} for alternate solutions +for Windows and \MacOSX. + +\subsection{Basic installation of \protect\TL{}} +\label{sec:basic} + +You can install \TL{} either from \DVD{} or over the Internet. The net +installer itself is small, and downloads everything requested from the +Internet. + +The \DVD{} installer lets you install to a local disk, but you can also +run \TL{} directly from the \DVD{} (or from a \DVD{} image, if your +system supports that). Installation is described in later sections, but +here is a quick start: + +\begin{itemize*} + +\item The installation script is named \filename{install-tl}. It can + operate in a ``wizard mode'' given the option \code{-gui=wizard} + (default for Windows), a text mode given \code{-gui=text} (default for + everything else), and an expert \GUI{} mode given \code{-gui=perltk}. + +\item One of the installed items is the `\TL\ Manager' program, + named \prog{tlmgr}. Like the installer, it can be used in both \GUI{} + mode and in text mode. You can use it to install and uninstall + packages and do various configuration tasks. + +\end{itemize*} + + +\htmlanchor{security} +\subsection{Security considerations} +\label{sec:security} + +To the best of our knowledge, the core \TeX\ programs themselves are +(and always have been) extremely robust. However, the contributed +programs in \TeX\ Live may not reach the same level, despite everyone's +best efforts. As always, you should be careful when running programs on +untrusted input; for maximum safety, use a new subdirectory. + +This need for care is especially urgent on Windows, since in general +Windows finds programs in the current directory before anything else, +regardless of the search path. This opens up a wide variety of possible +attacks. We have closed many holes, but undoubtedly some remain, +especially with third-party programs. Thus, we recommend checking for +suspicious files in the current directory, especially executables +(binaries or scripts). Ordinarily they should not be present, and +definitely should not normally be created by merely processing a document. + +Finally, \TeX\ (and its companion programs) are able to write files when +processing documents, a feature that can also be abused in a wide +variety of ways. Again, processing unknown documents in a new +subdirectory is the safest bet. + + +\subsection{Getting help} +\label{sec:help} + +The \TeX{} community is active and friendly, and most serious questions +end up getting answered. However, the support is informal, done by +volunteers and casual readers, so it's especially important that you do +your homework before asking. (If you prefer guaranteed commercial +support, you can forgo \TL{} completely and purchase a vendor's system; +\url{http://tug.org/interest.html#vendors} has a list.) + +Here is a list of resources, approximately in the order we recommend +using them: + +\begin{description} +\item [Getting Started] If you are new to \TeX, the web page +\url{http://tug.org/begin.html} gives a brief introduction to the system. + +\item [\TeX{} \acro{FAQ}] The \TeX{} \acro{FAQ} is a huge compendium + of answers to all sorts of questions, from the most basic to the + most arcane. It is included on \TL{} in + \OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html}, and is available + on the Internet through \url{http://www.tex.ac.uk/faq}. Please + check here first. + +\item [\TeX{} Catalogue] If you are looking for a specific package, +font, program, etc., the \TeX{} Catalogue is the place to look. It is a +huge collection of all \TeX{}-related items. See +\url{http://www.ctan.org/help/Catalogue/}. + +\item [\TeX{} Web Resources] The web page +\url{http://tug.org/interest.html} has many \TeX{}-related links, in +particular for numerous books, manuals, and articles on all aspects of +the system. + +\item [support archives] The two principal support forums are the +Usenet newsgroup \url{news:comp.text.tex} and the mailing list +\email{texhax@tug.org}. Their archives have years of past +questions and answers for your searching pleasure, via +\url{http://groups.google.com/group/comp.text.tex/topics} and +\url{http://tug.org/mail-archives/texhax}, respectively. And a general web +search, for example on \url{http://google.com}, never hurts. + +\item [asking questions] If you cannot find an answer, you can post to +\dirname{comp.text.tex} through Google or your newsreader, or to +\email{texhax@tug.org} through email. But before you post, +\emph{please} read this \acro{FAQ} entry, to maximize +your chances of getting a useful answer: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + +\item [\TL{} support] If you want to report a bug or have +suggestions or comments on the \TL{} distribution, installation, or +documentation, the mailing list is \email{tex-live@tug.org}. However, +if your question is about how to use a particular program included in +\TL{}, please write to that program's maintainer or +mailing list. Often running a program with the \code{-{}-help} option +will provide a bug reporting address. + +\end{description} + +The other side of the coin is helping others who have questions. Both +\dirname{comp.text.tex} and \code{texhax} are open to anyone, so feel +free to join, start reading, and help out where you can. + + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{Overview of \protect\TeX\protect\ Live} +\label{sec:overview-tl} + +This section describes the contents of \TL{} and the \TK{} of which it +is a part. + +\subsection{The \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tl-coll-dists} + +The \TK{} \DVD{} comprises the following: + +\begin{description} + +\item [\TL] A complete \TeX{} system which can be run live or + installed to disk. Its home page is \url{http://tug.org/texlive/}. + +\item [Mac\TeX] for \MacOSX, this adds a native \MacOSX\ installer and other +Mac applications to \TL{}. Its home page is +\url{http://tug.org/mactex/}. + +\item [pro\TeX{}t] An enhancement of the \MIKTEX\ distribution for Windows, +\ProTeXt\ adds a few extra tools to \MIKTEX, and simplifies +installation. It is entirely independent of \TL{}, and has its own +installation instructions. The \ProTeXt\ home page is +\url{http://tug.org/protext}. + +\item [CTAN] A snapshot of the \CTAN{} repository (\url{http://www.ctan.org}). + +\item [\texttt{texmf-extra}] A directory with assorted additional packages. + +\end{description} + +\CTAN{}, \pkgname{protext}, and \dirname{texmf-extra} do not +necessarily follow the same copying conditions as \TL{}, so be careful +when redistributing or modifying. + + +\subsection{Top level \TL{} directories} +\label{sec:tld} + +Here is a brief listing and description of the top level directories in the +\TL{} distribution. On the \TK{} \DVD, the entire \TL{} hierarchy is in +a subdirectory \dirname{texlive}, not at the top level of the disc. + +\begin{ttdescription} +\item[bin] The \TeX{} system programs, arranged by platform. +% +\item[readme-*.dir] Quick overview and useful links for \TL{}, +in various languages, in both \HTML{} and plain text. +% +\item[source] The source to all included programs, including the main \Webc{} + \TeX{} and \MF{} distributions. +% +\item[texmf] See \dirname{TEXMFMAIN} below. +% +\item[texmf-dist] See \dirname{TEXMFDIST} below. +% +\item[tlpkg] Scripts, programs and data for managing the + installation, and some special support for Windows. +\end{ttdescription} + +In addition to the directories above, the installation scripts and +\filename{README} files (in various languages) are at the top level of +the distribution. + +For documentation, the comprehensive links in the top-level file +\OnCD{doc.html} may be helpful. The documentation for the programs +(manuals, man pages, Info files) is in \dirname{texmf/doc}. The +documentation for \TeX\ packages and formats is in +\dirname{texmf-dist/doc}. You can use the \cmdname{texdoc} program to +find any documentation wherever it is located. + +This \TL\ documentation itself is in \dirname{texmf/doc/texlive}, +available in several languages: + +\begin{itemize*} +\item{Simplified Chinese:} \OnCD{texmf/doc/texlive/texlive-zh-cn} +\item{Czech/Slovak:} \OnCD{texmf/doc/texlive/texlive-cz} +\item{English:} \OnCD{texmf/doc/texlive/texlive-en} +\item{French:} \OnCD{texmf/doc/texlive/texlive-fr} +\item{German:} \OnCD{texmf/doc/texlive/texlive-de} +\item{Polish:} \OnCD{texmf/doc/texlive/texlive-pl} +\item{Russian:} \OnCD{texmf/doc/texlive/texlive-ru} +\end{itemize*} + +\subsection{Overview of the predefined texmf trees} +\label{sec:texmftrees} + +This section lists the predefined variables specifying the texmf trees +used by the system, and their intended purpose, and the default layout +of \TL{}. The command \texttt{tlmgr~conf} shows the values of these +variables, so that you can easily find out how they map to particular +directories in your installation. + +\begin{ttdescription} +\item [TEXMFMAIN] The tree which holds vital parts of the + system such as configuration files, helper scripts, and program + documentation. +\item [TEXMFDIST] The tree which holds the main set of macro packages, + fonts, etc. +\item [TEXMFLOCAL] The tree which administrators can use for system-wide + installation of additional or updated macros, fonts, etc. +\item [TEXMFHOME] The tree which users can use for their own individual + installations of additional or updated macros, fonts, etc. + The expansion of this variable dynamically adjusts for each user to + their own individual directory. +\item [TEXMFCONFIG] The tree used by the utilities + \verb+texconfig+, \verb+updmap+, and \verb+fmtutil+ to store modified + configuration data. Under \envname{TEXMFHOME} by default. +\item [TEXMFSYSCONFIG] The tree used by the utilities + \verb+texconfig-sys+, \verb+updmap-sys+, and \verb+fmtutil-sys+ to + store modified configuration data. +\item [TEXMFVAR] The tree used by \verb+texconfig+, \verb+updmap+ and + \verb+fmtutil+ to store (cached) runtime data such as format files and + generated map files. Under \envname{TEXMFHOME} by default. +\item [TEXMFSYSVAR] The tree used by \verb+texconfig-sys+, + \verb+updmap-sys+ and \verb+fmtutil-sys+, and also by \verb+tlmgr+, to + store (cached) runtime data such as format files and generated map files. +\end{ttdescription} + +\noindent +The default layout is: +\begin{description} + \item[system-wide root] can span multiple \TL{} releases: + \begin{ttdescription} + \item[2008] A previous release. + \item[2009] The current release. + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] \GNU/Linux binaries + \item [...] + \item [universal-darwin] \MacOSX binaries + \item [win32] Windows binaries + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] This is \envname{TEXMFMAIN}. + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var \ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, intended to be + retained from release to release. + \end{ttdescription} + \item[user's home] (\texttt{\$HOME} or + \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2008] Privately generated and configuration data + for a previous release. + \item[.texlive2009] Privately generated and configuration data + for the current release. + \begin{ttdescription} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} Personal macros, etc. + \end{ttdescription} +\end{description} + + +\subsection{Extensions to \protect\TeX} +\label{sec:tex-extensions} + +Knuth's original \TeX{} itself is frozen, apart from rare bug fixes. It +is still present in \TL\ as the program \prog{tex}, and will remain so +for the foreseeable future. \TL{} contains several extended versions of +\TeX: + +\begin{description} + +\item [\eTeX] adds a set of new primitives +\label{text:etex} (related to macro expansion, character scanning, +classes of marks, additional debugging features, and more) and the +\TeXXeT{} extensions for bidirectional typesetting. In default mode, +\eTeX{} is 100\% compatible with ordinary \TeX. See +\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] builds on the \eTeX\ extensions, adding support for +writing \acro{PDF} output as well as \dvi{}, and many non-output-related +extensions. This is the program invoked for most formats, e.g., +\prog{etex}, \prog{latex}, \prog{pdflatex}. Its web site is +\url{http://www.pdftex.org/}. See +\OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf} for the manual, and +\OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex} for example +usage of some of its features. + +\item [Lua\TeX] is the designated successor of pdf\TeX, +and is mostly (but not entirely) backward-compatible. It is also +intended to be a functional superset of Aleph (see below), though +technical compatibility is not intended. The incorporated Lua +interpreter (\url{http://www.lua.org/}) enables elegant solutions for +many thorny \TeX{} problems. When called as \filename{texlua}, it +functions as a standalone Lua interpreter, and is already used as such +within \TL. Its web site is \url{http://www.luatex.org/}, and the +reference manual is \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [\XeTeX] adds support for Unicode input and OpenType- and system +fonts, implemented using standard third-party libraries. See +\url{http://tug.org/xetex}. + +\item [\OMEGA\ (Omega)] is based on Unicode (16-bit characters), thus +supports working with almost all the world's scripts simultaneously. It +also supports so-called `\OMEGA{} Translation Processes' (\acro{OTP}s), +for performing complex transformations on arbitrary input. Omega is no +longer included in \TL{} as a separate program; only Aleph is provided: + +\item [Aleph] combines the \OMEGA\ and \eTeX\ extensions. +See \OnCD{texmf-dist/doc/aleph/base} for some minimal documentation. + +\end{description} + + +\subsection{Other notable programs in \protect\TL} + +Here are a few other commonly-used programs included in \TL{}: + +\begin{cmddescription} + +\item [bibtex] bibliography support. + +\item [makeindex, xindy] index support. + +\item [dvips] convert \dvi{} to \PS{}. + +\item [xdvi] \dvi{} previewer for the X Window System. + +\item [dvilj] \dvi{} drive for the HP LaserJet family. + +\item [dviconcat, dviselect] cut and paste pages +from \dvi{} files. + +\item [dvipdfmx] convert \dvi{} to \acro{PDF}, an alternative approach +to pdf\TeX\ (mentioned above). See the \pkgname{ps4pdf} and +\pkgname{pdftricks} packages for still more alternatives. + +\item [psselect, psnup, \ldots] \PS{} utilities. + +\item [texexec, texmfstart] Con\TeX{}t and \acro{PDF} processor. + +\item [tex4ht] \TeX{} to \acro{HTML} (and \acro{XML} and more) converter. + +\end{cmddescription} + + +\subsection{Fonts in \protect\TL} +\label{sec:tl-fonts} + +\TL{} comes with many high-quality scalable fonts. See +\url{http://tug.org/fonts} and +\OnCD{texmf-dist/doc/fonts/free-math-font-survey}. + + +\section{Installation} +\label{sec:install} + +\subsection{Starting the installer} +\label{sec:inst-start} + +To begin, get the \TK{} \DVD{} or download the \TL{} net installer, +and locate the installer script: \filename{install-tl} for Unix, +\filename{install-tl.bat} for Windows. + +\begin{description} +\item [Net installer:] Download from \CTAN, under +\dirname{systems/texlive/tlnet}; the url +\url{http://mirror.ctan.org/systems/texlive/tlnet} will automatically +redirect to a nearby, up-to-date, mirror. You can retrieve either +\filename{install-tl.zip} which can be used under Unix and Windows, or +the considerably smaller \filename{install-unx.tar.gz} for Unix +only. After unpacking, \filename{install-tl} and +\filename{install-tl.bat} will be in the \dirname{install-tl} +subdirectory. + +\item [\TeX{} Collection \DVD:] go to its \dirname{texlive} +subdirectory. Under Windows, the installer normally starts automatically +when you insert the \DVD. You can get the \DVD\ by becoming a member of +a \TeX\ user group (highly recommended, +\url{http://tug.org/usergroups.html}), or purchasing it separately +(\url{http://tug.org/store}), or burning your own from the \ISO\ +image. + +\end{description} + +See \url{http://tug.org/texlive/acquire.html} for more information and +other methods of getting the software. + +The following sections explain installer start-up in more detail. + +\subsubsection{Unix} + +\noindent +Below, \texttt{>} denotes the shell prompt; user input is +\Ucom{\texttt{bold}}. +The script \filename{install-tl} is a Perl script. The simplest way +to start it on a Unix-compatible system is as follows: +\begin{alltt} +> \Ucom{cd /path/to/installer} +> \Ucom{perl install-tl} +\end{alltt} +(Or you can invoke \Ucom{perl /path/to/installer/install-tl}, or +\Ucom{./install-tl} if it stayed executable, etc.; we won't repeat all +these variations.) You may have to enlarge your terminal window so +that it shows the full text installer screen (Figure~\ref{fig:text-main}). + +To install in expert \GUI\ mode (figure~\ref{fig:gui-main}; you'll +need the \dirname{Perl/TK} module), use: +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +For a complete listing of the various options: +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{Warning about Unix permissions:} Your \code{umask} at the time +of installation will be respected by the \TL{} installer. Therefore, if +you want your installation to be usable by users other than you, make +sure your setting is sufficiently permissive, for instance, \code{umask +002}. For more information about \code{umask}, consult your system +documentation. + +\textbf{Special considerations for Cygwin:} Unlike other +Unix-compatible systems, Cygwin does not by default include all of the +prerequisite programs needed by the \TL{} installer. See +Section~\ref{sec:cygwin} for details. + + +\subsubsection{MacOSX} + +As mentioned in section~\ref{sec:tl-coll-dists}, a separate distribution +is prepared for \MacOSX, named Mac\TeX\ (\url{http://tug.org/mactex}). +We recommend using the native Mac\TeX\ installer instead of the \TL\ +installer on \MacOSX, because the native installer makes a few +Mac-specific adjustments, in particular to allow easily switching +between the various \TeX\ distributions for \MacOSX\ (Mac\TeX, gw\TeX, +Fink, MacPorts, \ldots). + +Mac\TeX\ is firmly based on \TL, and the main \TeX\ trees are precisely +the same. It does add a few extra folders with Mac-specific +documentation and applications. + + +\subsubsection{Windows} + +If you are using the net installer, or the \DVD\ installer failed to +start automatically, double-click \filename{install-tl.bat}. +For more customization options, e.g. selection of specific package +collections, run \filename{install-tl-advanced.bat} instead. + +You can also start the installer from the command-prompt. Below, +\texttt{>} denotes the prompt; user input is \Ucom{\texttt{bold}}. If +you are in the installer directory, run just: +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} + +Or you can invoke it with an absolute location, such as: +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +for the \TK\ \DVD, supposing that \dirname{D:} is the optical +drive. Figure~\ref{fig:wizard} displays the wizard installer, which +is the default for Windows. + +To install in text mode, use: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +For a complete listing of the various options: +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2009 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: live (uncompressed) +... + Detected platform: Intel x86 with GNU/Linux + + binary systems: 1 out of 14 + + Installation scheme (scheme-full) + 83 collections out of 84, disk space required: 1882 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2009 + TEXMFLOCAL (directory for site-wide local files): + /usr/local/texlive/texmf-local + TEXMFSYSVAR (directory for variable and automatically generated data): + /usr/local/texlive/2009/texmf-var + TEXMFSYSCONFIG (directory for local config): + /usr/local/texlive/2009/texmf-config + TEXMFHOME (directory for user-specific files): + ~/texmf + + options: + [ ] use letter size instead of A4 by default + [X] create all format files + [X] install macro/font doc tree + [X] install macro/font source tree + [ ] create symlinks to standard directories + + set up for running from DVD + +Other actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{Main text installer screen (\GNU/Linux)}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth} +\caption{Expert \GUI{} installer screen (\GNU/Linux)}\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth} +\caption{Wizard installer screen (Windows)}\label{fig:wizard} +\end{figure} + + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +The \TL{} installer supports only Cygwin 1.7. +% Add a note about Angelo's workaround for 1.5 if he gets it ready for +% public use. +Before beginning the installation, use Cygwin's \filename{setup.exe} program to +install the \filename{perl} and \filename{wget} packages if you have +not already done so. The following additional packages are +recommended: +\begin{itemize*} +\item \filename{fontconfig} [needed by \XeTeX] +\item \filename{ghostscript} [needed by various utilities] +\item \filename{libXaw7} [needed by xdvi] +\item \filename{ncurses} [provides the 'clear' command used by the installer] +\end{itemize*} + +\subsubsection{The text installer} + +Figure~\ref{fig:text-main} displays the main text mode screen under +Unix. The text installer is the default on Unix. + +This is only a command-line installer; there is no cursor support at +all. For instance, you cannot tab around checkboxes or input fields. +You just type something (case-sensitive) at the prompt and press the +Enter key, and then the entire terminal screen will be rewritten, with +adjusted content. + +The text installer interface is this primitive for a reason: it +is designed to run on as many platforms as possible, even with a +very barebones Perl. + +\subsubsection{The expert graphical installer} + +Figure~\ref{fig:gui-main} displays the expert graphical installer under +\GNU/Linux. Other than using buttons and menus, this installer does +not differ much from the text one (Figure~\ref{fig:text-main}). + +This mode can be invoked explicitly with +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} + + +\subsubsection{The simple wizard installer} + +Under Windows, the default is to run the simplest installation method we +could devise, which we named the ``wizard'' installer. It installs +everything and asks almost no questions. If you want to customize your +setup, you should run one of the other installers. + +This mode can be invoked explicitly with +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + + +\subsection{Running the installer} +\label{sec:runinstall} + +The installer is intended to be mostly self-explanatory, but following are a +few notes about the various options and submenus. + +\subsubsection{Binary systems menu (Unix only)} +\label{sec:binary} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Available sets of binaries: +=============================================================================== + + a [ ] alpha-linux DEC Alpha with GNU/Linux + b [ ] i386-cygwin Intel x86 with Cygwin + c [X] i386-linux Intel x86 with GNU/Linux + d [ ] i386-netbsd Intel x86 with NetBSD + e [ ] i386-solaris Intel x86 with Sun Solaris + f [ ] mips-irix SGI IRIX + g [ ] powerpc-aix PowerPC with AIX + h [ ] powerpc-linux PowerPC with GNU/Linux + i [ ] sparc-linux Sparc with GNU/Linux + j [ ] sparc-solaris Sparc with Solaris + k [ ] universal-darwin universal binaries for MacOSX/Darwin + l [ ] win32 Windows + m [ ] x86_64-linux x86_64 with GNU/Linux +\end{boxedverbatim} +\caption{Binaries menu}\label{fig:bin-text} +\end{figure} + +Figure~\ref{fig:bin-text} displays the text mode binaries menu. By +default, only the binaries for your current platform will be installed. +From this menu, you can select installation of binaries for other +architectures as well. This can be useful if you are sharing a \TeX\ +tree across a network of heterogenous machines, or for a dual-boot +system. + +\subsubsection{Selecting what is going to be installed} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Select a scheme: +=============================================================================== + a [ ] basic scheme (plain and LaTeX) + b [ ] ConTeXt scheme + c [X] full scheme (everything) + d [ ] GUST TeX Live scheme + e [ ] GUTenberg TeX Live scheme + f [ ] medium scheme (plain, latex, recommended packages, some languages) + g [ ] minimal scheme (plain only) + h [ ] Omega scheme + i [ ] teTeX scheme (more than medium, but nowhere near full) + j [ ] XML scheme + k [ ] custom selection of collections +\end{boxedverbatim} +\caption{Scheme menu}\label{fig:scheme-text} +\end{figure} + +Figure~\ref{fig:scheme-text} displays the \TL\ scheme menu; from here, +you choose a ``scheme'', which is an overall set of package collections. +The default \optname{full} scheme installs everything available, but you +can also choose the \optname{basic} scheme for a small system, +\optname{minimal} for testing purposes, and \optname{medium} or +\optname{teTeX} to get something in between. There are also various +specialized and country-specific schemes. + +\begin{figure}[tbh] +\tlpng{stdcoll}{.7\linewidth} +\caption{Collections menu}\label{fig:collections-gui} +\end{figure} + +You can refine your scheme selection with the `standard collections' and +`language collections' menus (figure~\ref{fig:collections-gui}, shown in +\GUI\ mode for a change). + +Collections are one level more detailed than schemes\Dash in essence, a +scheme consists of several collections, a collection consists of one or +more packages, and a package (the lowest level grouping in \TL) contains +the actual \TeX\ macro files, font files, and so on. + +If you want more control than the collection menus provide, you can use +the \prog{tlmgr} program after installation (see +section~\ref{sec:tlmgr}); using that, you can control the installation +at the package level. + +\subsubsection{Directories} +\label{sec:directories} + +The default layout is described in section~\ref{sec:texmftrees}, +\p.\pageref{sec:texmftrees}. The default location of +\dirname{TEXDIR} is different between Windows +(|%SystemDrive%\texlive\2009|) and Unix +(\dirname{/usr/local/texlive/2009}). + +The main reason to change this default is if you lack write permission +for the default location. You don't have to be root or administrator to +install \TL, but you do need write access to the target directory. + +A reasonable alternative choice is a directory under your home directory, +especially if you will be the sole user. Use +`|~|' to indicate this, as in `|~/texlive/2009|'. + +We recommend including the year in the name, to enable keeping different +releases of \TL{} side by side. (You may wish to make a +version-independent name such as \dirname{/usr/local/texlive-cur} via a +symbolic link, which you can then update after testing the new release.) + +Changing \dirname{TEXDIR} in the installer will also change +\dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} and +\dirname{TEXMFSYSCONFIG}. + +\dirname{TEXMFHOME} is the recommended location for personal +macro files or packages. The default value is |~/texmf|. In +contrast to \dirname{TEXDIR}, here a |~| is preserved in the +newly-written configuration files, since it usefully refers to the home +directory of any individual running \TeX. It expands to +\dirname{$HOME} on Unix and \verb|%USERPROFILE%| on Windows. + +\subsubsection{Options} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +

use letter size instead of A4 by default: [ ] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: +\end{boxedverbatim} +\caption{Options menu (Unix)}\label{fig:options-text} +\end{figure} + +Figure~\ref{fig:options-text} shows the text mode options menu. +More info: + +\begin{description} +\item[use letter size instead of A4 by default:] The default paper + size selection. Of course, individual documents can and should + specify a specific paper size, if desired. + +\item[create format files:] Although unnecessary format files + take time to generate and disk space to store, it is still recommended + to leave this option checked: if you don't, then format files will be + generated in people's private \dirname{TEXMFVAR} tree as they are + needed. In that location, they will not be updated automatically if + (say) binaries or hyphenation patterns are updated in the + installation, and thus could end up with incompatible format files. + +\begin{comment} +\item[execution of restricted list of programs:] As of \TL\ 2009, + execution of a few external programs is allowed by default. The list + of allowed programs is given in the \filename{texmf.cnf}; it is very + small, but still very useful. See the 2009 news + (section~\ref{sec:2009news}) for more details. +\end{comment} + +\item[install font/macro \ldots\ tree:] These options allow you to omit + downloading/installing the documentation and source files present in + most packages. Not recommended. + +\item[create symlinks in standard directories] (Unix only): + This option bypasses the need to change environment variables. Without + this option, \TL{} directories usually have to be added to + \envname{PATH}, \envname{MANPATH} and \envname{INFOPATH}. You will + need write permissions to the target directories. It is strongly + advised \emph{not} to overwrite a \TeX\ system that came with your + system with this option. It is intended primarily for accessing the + \TeX\ system through directories that are already known to users, such + as \dirname{/usr/local/bin}, which don't already contain any \TeX\ + files. +\end{description} + +When all the settings are to your liking, you can type `I' to start the +installation process. When it is done, skip to +section~\ref{sec:postinstall} to read what else needs to be done, if +anything. + +\htmlanchor{runfromdvd} +\subsubsection{Set up for running from DVD{} (text mode only)} +\label{sec:fromdvd} + +Type `|V|' to select this option. This changes the main menu into something +as in figure~\ref{fig:main-fromdvd}. + +\begin{figure}[tbh] +\begin{boxedverbatim} +======================> TeX Live installation procedure <===================== +... + directories: + TEXDIRW (Writable root): + !! default location: /usr/local/texlive/2009 + !! is not writable, please select a different one! + TEXMFLOCAL (directory for site-wide local files): + /usr/local/texlive/texmf-local + TEXMFSYSVAR (directory for variable and automatically generated data): + /usr/local/texlive/2009/texmf-var + TEXMFSYSCONFIG (directory for local config): + /usr/local/texlive/2009/texmf-config + TEXMFHOME (directory for user-specific files): + ~/texmf + + options: + [ ] use letter size instead of A4 by default + [X] create all format files + + set up for installing to hard disk + +Other actions: + start installation for running from DVD + help + quit +\end{boxedverbatim} +\caption{The main menu with `\optname{from DVD}' set}\label{fig:main-fromdvd} +\end{figure} + +Note the changes: all options about what to install have +disappeared, and the directories section now talks about +\dirname{TEXDIRW} or writable root. The symlinks option has also +disappeared. + +The installer will still create various directories and configuration +files, but won't copy \dirname{texmf} or \dirname{texmf-dist} to hard +disk. + +Post-install configuration for Unix will be slightly more complicated, +because now the directory layout deviates from the default; see +section~\ref{sec:postinstall}. + +This option is not in the \GUI{} installer, but it is available both +for Unix and for Windows. Windows users have to start the installer +from a command prompt, see section~\ref{sec:cmdline}. + +Section \ref{sec:portable-tl} describes a more strictly portable +way to run \TL, which doesn't make or require any changes in the +system's configuration, but doesn't allow any configuration either. + +\subsection{Command-line install-tl options} +\label{sec:cmdline} + +Type +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +for a listing of command-line options. Either |-| or |--| can be used +to introduce option names. These are the most common ones: + +\begin{ttdescription} +\item[-gui] If possible, use the \GUI{} installer. This requires the + Perl/Tk module (\url{http://tug.org/texlive/distro.html#perltk}); + if Perl/Tk is not available, installation continues in text mode. + +\item[-no-gui] Force using the text mode installer, even under + Windows; you'll need this if you want a `from \DVD' installation, + since that is not available in \GUI{} mode. + +\item[-lang {\sl LL}] Specify the installer interface + language as its standard two-letter code \textsl{LL}. Currently + supported languages: English (\texttt{en}, default), German + (\texttt{de}), French (\texttt{fr}), Dutch (\texttt{nl}), Polish + (\texttt{pl}), Slovenian (\texttt{sl}) and Vietnamese + (\texttt{vi}). The installer tries to determine the right language + itself but if it fails, or if the right language is not available, + then it uses English as a fallback. + +\item[-profile {\sl file}] The installer always writes a file + \filename{texlive.profile} to the \dirname{tlpkg} subdirectory of your + installation. This option tells the installer to re-use such a + profile file, so you can install in batch mode on subsequent systems, + reproducing the choices you made in a prior installation. + +\item [-repository {\sl url-or-directory}] Specify package + repository from which to install; see following. +\end{ttdescription} + +\subsubsection{The \optname{-repository} option} +\label{sec:location} + +The default package repository is a \CTAN{} mirror chosen automatically +via \url{http://mirror.ctan.org}. + +If you want to override that, the location value can be a url starting +with \texttt{ftp:}, \texttt{http:}, or \texttt{file:/}, or a plain +directory path. (When giving an \texttt{http:}\ or \texttt{ftp:}\ +location, trailing `\texttt{/}' characters and/or a trailing +`\texttt{/tlpkg}' component are ignored.) + +For example, you could choose a particular \CTAN\ mirror with something +like: \url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +substituting a real hostname and its particular top-level +\CTAN\ path for |ctan.example.org|. The list of \CTAN\ mirrors is +maintained at \url{http://ctan.org/mirrors}. + +If the given argument is local (either a path or a \texttt{file:/} url), +compressed files in an \dirname{archive} subdirectory of the repository +path are used (even if uncompressed files are available as well). + + +\subsection{Post-install actions} +\label{sec:postinstall} + +Some post-install may be required. + +\subsubsection{Windows} + +But on Windows, the installer takes care of everything. + +\subsubsection{If symlinks were created} + +If you elected to create symlinks in standard directories (mentioned in +section~\ref{sec:options}), then there is no need to edit environment +variables. + +\subsubsection{Environment variables for Unix} +\label{sec:env} + +The directory of the binaries for your platform must be added to +the search path. Each supported platform has its own subdirectory +under \dirname{TEXDIR/bin}. See figure~\ref{fig:bin-text} for the +list of subdirectories and corresponding platforms. + +You can also add the documentation man and Info directories to their +respective search paths, if you want the system tools to find them. +The man pages might be found automatically after the addition to +\envname{PATH}. + +For Bourne-compatible shells such as \prog{bash}, and using Intel x86 +GNU/Linux and a default directory setup as an example, the file to edit +might be \filename{$HOME/.profile} (or another file sourced by +\filename{.profile}, and the lines to add would look like this: + +\begin{sverbatim} +PATH=/usr/local/texlive/2009/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2009/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2009/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} + +For csh or tcsh, the file to edit is typically \filename{$HOME/.cshrc}, and +the lines to add might look like: + +\begin{sverbatim} +setenv PATH /usr/local/texlive/2009/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2009/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2009/texmf/doc/info:$INFOPATH +\end{sverbatim} + +If you already have settings somewhere in your ``dot'' files, naturally +the \TL\ directories should simply be merged in as appropriate. + +\subsubsection{Environment variables: global configuration} +\label{sec:envglobal} + +If you want to make these changes globally, or for a user newly added to +the system, then you are on your own; there is just too much variation +between systems in how and where these things are configured. + +Our two hints are: 1)~you may want to check for a file +\filename{/etc/manpath.config} and, if present, add lines such as + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2009/bin/i386-linux \ + /usr/local/texlive/2009/texmf/doc/man +\end{sverbatim} + +And 2)~check for a file \filename{/etc/environment} which may define the +search path and other default environment variables. + +We also create a symbolic link named \code{man} in each (Unix) binary +directory. Some \code{man} programs, such as the standard \MacOSX\ +\code{man}, will automatically find that, obviating the need for any man +page setup. + + +\subsubsection{Font configuration for \XeTeX} +\label{sec:font-conf-xetex} + +If you have installed the \filename{xetex} package on a Unix-compatible +system, you need to configure your system if you want \XeTeX\ to be able +to find the fonts shipped with \TL. To facilitate this, when the +\pkgname{xetex} package is installed (either at initial installation or +later), the necessary configuration file is created in +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. + +To set up the \TL{} fonts for system-wide use (assuming you have +suitable privileges), proceed as follows: +\begin{enumerate*} +\item Copy the \filename{texlive-fontconfig.conf} file to +\dirname{/etc/fonts/conf.d/09-texlive.conf}. +\item Run \Ucom{fc-cache -fsv}. +\end{enumerate*} + +If you do not have sufficient privileges to carry out the steps above, +you can instead do the following to make the \TL{} fonts available +to you as an individual \XeTeX{} user: +\begin{enumerate*} +\item Copy the \filename{texlive-fontconfig.conf} file to + \filename{~/.fonts.conf}, where \filename{~} is your home directory. +\item Run \Ucom{fc-cache -fv}. +\end{enumerate*} + + +\subsubsection{When running from DVD} + +Normally, a \TL{} program consults a file \filename{texmf.cnf} for the +location of the various trees. It looks for this file in a series of +locations relative to its own location. However, this scheme breaks down +when a program is run from \DVD{}: the \DVD{} is read-only. Some of the +paths to be recorded in \filename{texmf.cnf} are only known at +installation time, so this file cannot be on the \DVD{} and must be +placed somewhere else. This makes it necessary to define an environment +\envname{TEXMFCNF} variable which tells \TL{} programs in what directory +to find this \filename{texmf.cnf}. It is also still necessary to modify +the \envname{PATH} environment variable, as described before. + +At the end of the installation, the installer should have printed a +message giving the value to which \envname{TEXMFCNF} should be set. In +case you missed it: this value is \dirname{$TEXMFSYSVAR/web2c}. For the +default, \dirname{/usr/local/texlive/2009/texmf-var/web2c}, you need the +lines +\begin{sverbatim} +TEXMFCNF=/usr/local/texlive/2009/texmf-var/web2c; export TEXMFCNF +\end{sverbatim} +or, for [t]csh: +\begin{sverbatim} +setenv TEXMFCNF /usr/local/texlive/2009/texmf-var/web2c +\end{sverbatim} + +This option is most useful when you want to run \TL{} on your own +system, but don't have enough disk space to install it. If you want a +truly `portable' \TL{} that is self-contained, e.g., for a USB stick, +see section~\ref{sec:portable-tl}. + +\subsubsection{\ConTeXt{} Mark IV} + +The `old' \ConTeXt{} should run out of the box. The new `Mark IV' +\ConTeXt{} will require manual setup; see +\url{http://wiki.contextgarden.net/Running_Mark_IV}. + + +\subsubsection{Integrating local and personal macros} +\label{sec:local-personal-macros} + +This is already mentioned implicitly in section~\ref{sec:texmftrees}: +\dirname{TEXMFLOCAL} (by default, +\dirname{/usr/local/texlive/texmf-local} or +\verb|%SystemDrive%\texlive\texmf-local|) +is intended for system-wide local fonts and macros; and +\dirname{TEXMFHOME} (by default, \dirname{$HOME/texmf} or +\verb|%USERPROFILE%\texmf|), is for personal fonts and macros. These +directories are intended to stick around from release to release, and +have their content seen automatically by a new \TL{} release. +Therefore, it is best to refrain from changing the definition of +\dirname{TEXMFLOCAL} to be too far away from the main \TL{} directory, +or you will need to manually change future releases. + +For both trees, files should be placed in their proper subdirectories; +see \url{http://tug.org/tds} or consult +\filename{texmf/web2c/texmf.cnf}. For instance, a \LaTeX{} class file or +package should be placed in \dirname{TEXMFLOCAL/tex/latex} or +\dirname{TEXMFHOME/tex/latex}, or a subdirectory thereof. + +\dirname{TEXMFLOCAL} requires an up-to-date filename database, or files +will not be found. You can update it with the command +\cmdname{mktexlsr} or use the `Reinit file database' button on the +configuration tab of \prog{tlmgr} in \GUI\ mode. + +\subsubsection{Integrating third-party fonts} + +This is unfortunately a messy topic. Forget about it unless you want to +delve into many details of the \TeX{} installation. Don't forget to +check first what you get for free: see section~\ref{sec:tl-fonts}. + +A possible alternative is to use \XeTeX (see +section~\ref{sec:tex-extensions}), which lets you use operating system +fonts without any installation in \TeX. + +If you do need to do this, see +\url{http://tug.org/fonts/fontinstall.html} for our best effort at +describing the procedure. + +\subsection{Testing the installation} +\label{sec:test-install} + +After installing \TL{} as best you can, you naturally want to test +it out, so you can start creating beautiful documents and\slash or fonts. + +This section gives some basic procedures for testing that the new system +is functional. We give Unix commands here; under \MacOSX{} and Windows, +you're more likely to run the tests through a graphical interface, but +the principles are the same. + +\begin{enumerate} + +\item Make sure that you can run the \cmdname{tex} program in the first +place: +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live 2009) +kpathsea version 5.0.0 +Copyright 2009 D.E. Knuth. +... +\end{alltt} +If this comes back with `command not found' instead of version and +copyright information, or with an older version, most likely you don't +have the correct \dirname{bin} subdirectory in your \envname{PATH}. See +the environment-setting information on \p.\pageref{sec:env}. + +\item Process a basic \LaTeX{} file: +\begin{alltt} +> \Ucom{latex sample2e.tex} +This is pdfTeX, Version 3.1415926-1.40.10 (TeX Live 2009) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +If this fails to find \filename{sample2e.tex} or other files, most +likely you have interference from old environment variables or +configuration files; we recommend unsetting all \TeX-related environment +variables for a start. (For a deep analysis, you can ask \TeX{} to +report on exactly what it is searching for, and finding; see ``Debugging +actions'' on page~\pageref{sec:debugging}.) + +\item Preview the result online: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +You should see a new window with a nice document explaining some of the +basics of \LaTeX{}. (Well worth reading, by the way, if you're new to +\TeX.) You do have to be running under X for \cmdname{xdvi} to work; if +you're not, or your \envname{DISPLAY} environment variable is set +incorrectly, you'll get an error \samp{Can't open display}. + +\item Create a \PS{} file for printing or display: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Create a \acro{PDF} file instead of \dvi{}; this processes the +\filename{.tex} file and writes \acro{PDF} directly: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Preview the \acro{PDF} file: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Neither \cmdname{gv} nor \cmdname{xpdf} are included in \TL{}, so you +must install them separately. See \url{http://www.gnu.org/software/gv} +and \url{http://www.foolabs.com/xpdf}, respectively. There are plenty +of other \acro{PDF} viewers, too. For Windows, we recommend trying +Sumatra PDF (\url{http://blog.kowalczyk.info/software/sumatrapdf}). + +\item Standard test files you may find useful in addition to +\filename{sample2e.tex}: + +\begin{ttdescription} +\item [small2e.tex] A simpler document than \filename{sample2e}, to +reduce the input size if you're having troubles. +\item [testpage.tex] Test if your printer introduces any offsets. +\item [nfssfont.tex] For printing font tables and tests. +\item [testfont.tex] Also for font tables, but using plain \TeX{}. +\item [story.tex] The most canonical (plain) \TeX{} test file of all. +You must type \samp{\bs bye} to the \code{*} prompt after \samp{tex +story.tex}. +\end{ttdescription} + +\item If you have installed the \filename{xetex} package, you can test +its access to system fonts as follows: +\begin{alltt} +> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +If you get an error message saying ``Invalid fontname `Latin Modern +Roman/ICU'\dots'', then you need to configure your system so that +\XeTeX{} can find the fonts shipped with \TL. See +Section~\ref{sec:font-conf-xetex}. + +\end{enumerate} + +\subsection{Links for additional downloadable software} + +If you are new to \TeX{}, or otherwise need help with actually writing +\TeX{} or \LaTeX{} documents, please visit +\url{http://tug.org/begin.html} for some introductory resources. + +Links for some other tools you may consider installing: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} with + supplementary packages from \acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, for graphics + processing and conversion +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, also for graphics. + +\item[\TeX-oriented editors] There is a wide choice, and it is a matter of the + user's taste. Here is a selection (a few here are for Windows only). + \begin{itemize*} + \item \cmdname{GNU Emacs} is available natively under Windows, see + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs} with Auc\TeX\ for Windows is available in + the directory \path{tlpkg/support} on the \TL \DVD; its home + page is \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} is available from \url{http://www.ctan.org/support/LEd}. + \item \cmdname{SciTE} is available from + \url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} is free software, available from + \url{http://www.xm1math.net/texmaker/}. + \item \cmdname{TeXnicCenter} is free software, available from + \url{http://www.texniccenter.org} and in the pro\TeX{}t distribution. + \item \cmdname{TeXworks} is free software, available from + \url{http://tug.org/texworks} and installed for Windows and + \MacOSX\ as part of \TL. + \item \cmdname{Vim} is free software, available from + \url{http://www.vim.org}. + \item \cmdname{WinShell} is available from \url{http://www.winshell.de}. + \item \cmdname{WinEdt} is shareware available though + \url{http://tug.org/winedt} or \url{http://www.winedt.com}. + \end{itemize*} +\end{description} +For a much longer list of packages and programs, see +\url{http://tug.org/interest.html}. + + +\section{Network installations} +\label{sec:netinstall} + +\TL{} has been designed to be shared between different users, and even +different systems on a network. With a standard directory layout, no +hard paths are configured: the locations for files needed by \TL{} +programs are found relative to the programs. You can see this in the +principal configuration file \filename{$TEXMFMAIN/web2c/texmf.cnf}, +which contains lines such as +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +This means that adding the directory for \TL{} executables for their +platform to their search path is sufficient to get a working setup. + +By the same token, you can also install \TL{} locally and then move +the entire hierarchy afterwards to a network location. + +For Windows, a sample network installation script named +\filename{w32client} can be downloaded through +\url{http://tug.org/texlive/w32client.html}. It creates settings and +menu shortcuts for using an existing \TL{} installation on a \acro{LAN}. +It also registers an uninstaller \filename{w32unclient}, available +in the same zip file. See the web page for more information. + + +\section{Maximally portable \protect\TL{} on DVD and USB} +\label{sec:portable-tl} + +The `running from \DVD{}' option described in +section~\ref{sec:fromdvd} is fine for your own system, but if you +are a guest on somebody else's system then you would probably like +something with minimal side effects. + +In the root of the \TL{} \DVD, or the \dirname{texlive} subdirectory of +the \TK{} \DVD, are a \filename{tl-portable} script (Unix) and a +\filename{tl-portable.bat} batch file (Windows) which start up a +secondary shell\slash command prompt with environment settings +for directly accessing the \TL{} on the \DVD. + +When it runs for the first time, some files will be generated in a +directory \dirname{~/.tlportable2009}, which will take a little time. +On subsequent runs, though, it will start almost instantaneously. + +The rest of the system will be unaware of \TL. If you want your editor +to be aware of this \TL, then you can start it from a second, parallel, +such \filename{tl-portable} session. + +You can also use \filename{tl-portable} to run \TL{} on a +\acro{USB} stick. In this case, copy all the top-level files and +the contents of the \dirname{bin}, \dirname{texmf}, +\dirname{texmf-dist}, and \dirname{tlpkg} directories (at least) to +the stick. This may take quite a while! If you are copying to a +\acro{FAT}32-formatted \acro{USB} stick, make sure to dereference +symbolic links (\code{cp -L}). A \dirname{texmf-local} directory on +the stick will also be found and used. + +Then run \filename{tl-portable} from the root of the stick, as above. +In this case, the script will notice that the stick is writable and use +it for generated files. You could burn the resulting contents of the +stick back to \DVD{} if that is more convenient to (for example) give to +others. + + +\section{\cmdname{tlmgr}: Managing your installation} +\label{sec:tlmgr} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} in \GUI\ mode. The list of + packages/collections/schemes only shows up after clicking the + `Load' button.}\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\tlpng{tlmgr-config}{.8\linewidth} +\caption{\texttt{tlmgr} in GUI mode: Configuration tab}\label{fig:tlmgr-config} +\end{figure} + +\TL{} includes a program named \prog{tlmgr} for managing \TL{} after the +initial installation. The programs \prog{updmap}, \prog{fmtutil} and +\prog{texconfig} are still included and will be retained in the future, +but \prog{tlmgr} is now the preferred interface. Its capabilities +include: + +\begin{itemize*} +\item installing, updating, backing up, restoring, and uninstalling + individual packages, optionally taking dependencies into account; +\item searching for and listing packages, etc.; +\item listing, adding, and removing architectures; +\item changing installation options such as paper size and source + location (see section~\ref{sec:location}). +\end{itemize*} +\textit{Warning:} \prog{tlmgr} has not been designed for or tested +with installations which run from \DVD. + +\subsection{\cmdname{tlmgr} GUI mode} +\prog{tlmgr} can be started in \GUI{} mode with +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +or in Windows via the Start menu: \texttt{Start}, \texttt{Programs}, +\texttt{TeX Live 2009}, \texttt{TeX Live Manager}. After clicking `Load' +it displays a list of available and installed packages\Dash the latter +prepended with `(i)'. This assumes of course that the installation +source is valid and reachable. + +Figure~\ref{fig:tlmgr-config} shows the configuration tab. + +\subsection{Sample \cmdname{tlmgr} command-line invocations} + +After the initial installation, you can update your system to the latest +versions available with: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +If this makes you nervous, first try +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +or (less verbose): +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} + +This more complex example adds a collection, for the engine Xe\TeX, from +a local directory: + +\begin{alltt} +> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +It generates the following output (abridged): +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2009/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2009/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} + +As you can see, \prog{tlmgr} installs dependencies, and takes care of any +necessary post-install actions, including updating the filename database +and (re)generating formats. In the above, we generated new formats for +\XeTeX. + +To describe a package (or collection or scheme): +\begin{alltt} +> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +which produces +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +Last and most important, for full documentation see +\url{http://tug.org/texlive/tlmgr.html}, or: +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + + +\section{Notes on Windows} +\label{sec:windows} + +\TL\ has a single installer which runs on both Windows and Unix. This +was only possible by dropping support for older Windows versions, so +\TL\ can now be installed only on Windows 2000 and later. + + +\subsection{Windows-specific features} +\label{sec:winfeatures} + +Under Windows, the installer does some extra things: +\begin{description} +\item[Menus and shortcuts.] A new `\TL{}' submenu of the + Start menu is installed, which contains entries for some \GUI{} + programs (\prog{tlmgr}, \prog{texdoctk}, the PS\_View (\prog{psv}) + PostScript previewer) and some documentation. PS\_View also gets a + shortcut on the desktop as a drag-and-drop target for PostScript + files. +\item[Automatic setting of environment variables.] No manual + configuration steps are required. +\item[Uninstaller.] The installer creates an entry under `Add/Remove + Programs' for \TL. The uninstall tab of \prog{tlmgr} refers to + this. +\end{description} + +\subsection{Additional software included on Windows} + +To be complete, a \TL installation needs support packages that are not +commonly found on a Windows machine. \TL{} provides the missing +pieces: +\begin{description} +\item[Perl and Ghostscript.] Because of the importance of Perl and + Ghostscript, \TL{} includes `hidden' copies of these + programs. \TL{} programs that need them know where to find them, + but they don't betray their presence through environment variables + or registry settings. They aren't full-scale installations, and + shouldn't interfere with any system installations of Perl or + Ghostscript. + +\item[PS\_View.] Also installed is PS\_View, a \PS{} and \acro{PDF} + viewer; see figure~\ref{fig:psview}. + +\begin{figure}[tb] +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: very high magnifications available!}\label{fig:psview} +\end{figure} + +\item[dviout.] Also installed is \prog{dviout}, a \acro{DVI} viewer. + At first, when you preview files with \cmdname{dviout}, it will create + fonts, because screen fonts were not installed. After a while, you + will have created most of the fonts you use, and you will rarely see + the font-creation window. More information can be found in the + (highly recommended) on-line help. + +\item[TeXworks.] \TeX{}works is a \TeX-oriented editor with + an integrated \acro{PDF} viewer. It comes already preconfigured for \TL. + +\item[Command-line tools.] A number of Windows ports of common Unix + command-line programs are installed along with the usual \TL{} + binaries. These include \cmdname{gzip}, \cmdname{unzip} and the + command-line utilities from the \cmdname{xpdf} suite. The + \cmdname{xpdf} viewer itself is not available for + Windows. Instead, you can download the Sumatra \acro{PDF} viewer, + which is based on xpdf, from + \url{http://blog.kowalczyk.info/software/sumatrapdf}. + +\item[fc-list, fc-cache et al.] The tools from the fontconfig library allow + \XeTeX{} to handle system fonts on Windows. You can use + \prog{fc-list} to determine the font names to pass to Xe\TeX's + extended \cs{font} command. If necessary, run \prog{fc-cache} + first to update font information. + +\end{description} + + +\subsection{User Profile is Home} +\label{sec:winhome} + +The Windows counterpart of a Unix home directory is the +\verb|%USERPROFILE%| directory. Under Windows \acro{XP} and Windows 2000, this +is usually \verb|C:\Documents and Settings\|, and under +Windows Vista \verb|C:\Users\|. In the +\filename{texmf.cnf} file, and \KPS{} in general, \verb|~| will expand +appropriately on both Windows and Unix. + + +\subsection{The Windows registry} +\label{sec:registry} + +Windows stores nearly all configuration data in its registry. The +registry contains a set of hierarchically organized keys, with several +root keys. The most important ones for installation programs are +\path{HKEY_CURRENT_USER} and \path{HKEY_LOCAL_MACHINE}, \path{HKCU} and +\path{HKLM} in short. The \path{HKCU} part of the registry is in the +user's home directory (see section~\ref{sec:winhome}). \path{HKLM} is +normally in a subdirectory of the Windows directory. + +In some cases, system information could be obtained from environment +variables but for other information, for example the location of +shortcuts, it is necessary to consult the registry. Setting environment +variables permanently also requires registry access. + + +\subsection{Windows permissions} +\label{sec:winpermissions} + +In later versions of Windows, a distinction is made between regular +users and administrators, where only the latter have free access to the +entire operating system. In practice, though, you could better describe +these classes of users as unprivileged users and normal users: being an +administrator is the rule, not the exception. Nevertheless, we have made +an effort to make \TL{} installable without administrative privileges. + +If the user is an administrator, there is an option to install for all +users. If this option is chosen, shortcuts are created for all users, +and the system environment is modified. Otherwise, shortcuts and menu +entries are created for the current user, and the user environment is +modified. + +Regardless of administrator status, the default root of \TL{} proposed +by the installer is always under \verb|%SystemDrive%|. The installer +always tests whether the root is writable for the current user. + +A problem may arise if the user is not an administrator and \TeX{} +already exists in the search path. Since the effective path +consists of the system path followed by the user path, the new \TL{} +would never get precedence. As a safeguard, the installer creates a +shortcut to the command-prompt in which the new \TL{} binary +directory is prepended to the local search path. The new \TL{} will +be always usable from within such a command-prompt. The shortcut for +\TeX{}works, if installed, also prepends \TL{} to the search path, so it +should also be immune to this path problem. + +For Vista there is another twist: even if you are logged in as +administrator, you need to explicitly ask for administrator +privileges. In fact, there is not much point in logging in as +administrator. Instead, right-clicking on the program or shortcut +that you want to run usually gives you a choice `Run as +administrator'. + +\section{A user's guide to Web2C} + +\Webc{} is an integrated collection of \TeX-related programs: \TeX{} +itself, \MF{}, \MP, \BibTeX{}, etc. It is the heart of \TL{}. The home +page for \Webc{}, with the current manual and more, is +\url{http://tug.org/web2c}. + +A bit of history: The original implementation was by Tomas Rokicki who, +in 1987, developed a first \TeX{}-to-C system based on change files +under Unix, which were primarily the original work of Howard Trickey and +Pavel Curtis. Tim Morgan became the maintainer of the system, and +during this period the name changed to Web-to-C\@. In 1990, Karl Berry +took over the work, assisted by dozens of additional contributors, and +in 1997 he handed the baton to Olaf Weber, who returned it to Karl in +2006. + +The \Webc{} system runs on Unix, 32-bit Windows systems, \MacOSX{}, and +other operating systems. It uses Knuth's original sources for \TeX{} and +other basic programs written in the \web{} literate programming system +and translates them into C source code. The core \TeX{} programs +handled in this way are: + +\begin{cmddescription} +\item[bibtex] Maintaining bibliographies. +\item[dvicopy] Expands virtual font references in \dvi{} files. +\item[dvitomp] \dvi{} to MPX (MetaPost pictures). +\item[dvitype] \dvi{} to human-readable text. +\item[gftodvi] Generic font proofsheets. +\item[gftopk] Generic to packed fonts. +\item[gftype] GF to human-readable text. +\item[mf] Creating typeface families. +\item[mft] Prettyprinting \MF{} source. +\item[mpost] Creating technical diagrams. +\item[patgen] Creating hyphenation patterns. +\item[pktogf] Packed to generic fonts. +\item[pktype] PK to human-readable text. +\item[pltotf] Plain text property list to TFM. +\item[pooltype] Display \web{} pool files. +\item[tangle] \web{} to Pascal. +\item[tex] Typesetting. +\item[tftopl] TFM to plain text property list. +\item[vftovp] Virtual font to virtual property list. +\item[vptovf] Virtual property list to virtual font. +\item[weave] \web{} to \TeX. +\end{cmddescription} + +\noindent The precise functions and syntax of these programs are +described in the documentation of the individual packages and of \Webc{} +itself. However, knowing a few principles governing the whole family of +programs will help you take advantage of your \Webc{} installation. + +All programs honor these standard \GNU options: +\begin{ttdescription} +\item[-{}-help] print basic usage summary. +\item[-{}-verbose] print detailed progress report. +\item[-{}-version] print version information, then exit. +\end{ttdescription} + +For locating files the \Webc{} programs use the path searching library +\KPS{} (\url{http://tug.org/kpathsea}). This library uses a combination +of environment variables and a configuration files to optimize searching +the (huge) collection of \TeX{} files. \Webc{} can look at many +directory trees simultaneously, which is useful in maintaining \TeX's +standard distribution and local and personal extensions in distinct +trees. To speed up file searches, the root of each tree has a file +\file{ls-R}, containing an entry showing the name and relative pathname +for all files under that root. + + +\subsection{Kpathsea path searching} +\label{sec:kpathsea} + +Let us first describe the generic path searching mechanism of the \KPS{} +library. + +We call a \emph{search path} a colon- or semicolon\hyph sepa\-rated list +of \emph{path elements}, which are basically directory names. A +search path can come from (a combination of) many sources. To look up +a file \samp{my-file} along a path \samp{.:/dir}, \KPS{} checks each +element of the path in turn: first \file{./my-file}, then +\file{/dir/my-file}, returning the first match (or possibly all +matches). + +In order to adapt optimally to all operating systems' conventions, on +non-Unix systems \KPS{} can use filename separators different from +colon (\samp{:}) and slash (\samp{/}). + +To check a particular path element \var{p}, \KPS{} first checks if a +prebuilt database (see ``Filename data\-base'' on +page~\pageref{sec:filename-database}) applies to \var{p}, i.e., if the +database is in a directory that is a prefix of \var{p}. If so, the path +specification is matched against the contents of the database. + +If the database does not exist, or does not apply to this path +element, or contains no matches, the filesystem is searched (if this +was not forbidden by a specification starting with \samp{!!}\ and if +the file being searched for must exist). \KPS{} constructs the list +of directories that correspond to this path element, and then checks +in each for the file being sought. + +The ``file must exist'' condition comes into play with \samp{.vf} files and +input files read by \TeX's \cs{openin} command. Such files may not +exist (e.g., \file{cmr10.vf}), and so it would be wrong to search the +disk for them. Therefore, if you fail to update \file{ls-R} when you +install a new \samp{.vf} file, it will never be found. +Each path element is checked in turn: first the database, then the +disk. If a match is found, the search stops and the result is +returned. + +Although the simplest and most common path element is a directory +name, \KPS{} supports additional features in search paths: layered +default values, environment variable names, config file values, users' +home directories, and recursive subdirectory searching. Thus, we say +that \KPS{} \emph{expands} a path element, meaning it transforms all +the specifications into basic directory name or names. This is +described in the following sections in the same order as it takes +place. + +Note that if the filename being searched for is absolute or explicitly +relative, i.e., starts with \samp{/} or \samp{./} or \samp{../}, +\KPS{} simply checks if that file exists. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Path sources} +\label{sec:path-sources} + +A search path can come from many sources. In the order in which +\KPS{} uses them: + +\begin{enumerate} +\item + A user-set environment variable, for instance, \envname{TEXINPUTS}\@. + Environment variables with a period and a program name appended + override; e.g., if \samp{latex} is the name of the program being run, + then \envname{TEXINPUTS.latex} will override \envname{TEXINPUTS}. +\item + A program-specific configuration file, for exam\-ple, a line + \samp{S /a:/b} in \cmdname{dvips}'s \file{config.ps}. +\item A \KPS{} configuration file \file{texmf.cnf}, containing a line like + \samp{TEXINPUTS=/c:/d} (see below). +\item The compile-time default. +\end{enumerate} +\noindent You can see each of these values for a given search path by +using the debugging options (see ``Debugging actions'' on +page~\pageref{sec:debugging}). + +\subsubsection{Config files} + +\begingroup\tolerance=3500 +\KPS{} reads \emph{runtime configuration files} named \file{texmf.cnf} +for search path and other definitions. The search path used to look +for these files is named \envname{TEXMFCNF} (by default such a file lives +in the \file{texmf/web2c} subdirectory). \emph{All} +\file{texmf.cnf} files in the search path will be read and definitions +in earlier files override those in later files. Thus, with a search +path of \verb|.:$TEXMF|, values from \file{./texmf.cnf} override those +from \verb|$TEXMF/texmf.cnf|. +\endgroup + +\begin{itemize} +\item + Comments start with \code{\%} and continue to the end of the line. +\item + Blank lines are ignored. +\item + A \bs{} at the end of a line acts as a continuation character, + i.e., the next line is appended. Whitespace at the beginning of + continuation lines is not ignored. +\item + Each remaining line has the form: +\begin{alltt} + \var{variable}[.\var{progname}] [=] \var{value} +\end{alltt}% + where the \samp{=} and surrounding whitespace are optional. +\item + The \ttvar{variable} name may contain any character other + than whitespace, \samp{=}, or \samp{.}, but sticking to + \samp{A-Za-z\_} is safest. +\item + If \samp{.\var{progname}} is present, the definition only + applies if the program that is running is named + \texttt{\var{progname}} or \texttt{\var{progname}.exe}. This allows + different flavors of \TeX{} to have different search paths, for + example. +\item \var{value} may contain any characters except + \code{\%} and \samp{@}. The + \code{\$\var{var}.\var{prog}} feature is not available on the + right-hand side; instead, you must use an additional variable. A + \samp{;}\ in \var{value} is translated to \samp{:}\ if + running under Unix; this is useful to be able to have a single + \file{texmf.cnf} for Unix, \acro{MS-DOS} and Windows systems. +\item + All definitions are read before anything is expanded, so + variables can be referenced before they are defined. +\end{itemize} +A configuration file fragment illustrating most of these points is +\ifSingleColumn +shown below: + +\verbatiminput{examples/ex5.tex} +\else +shown in Figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Path expansion} +\label{sec:path-expansion} + + +\KPS{} recognizes certain special characters and constructions in +search paths, similar to those available in Unix shells. As a +general example, the complex path, +\verb+~$USER/{foo,bar}//baz+, expands to all subdirectories under +directories \file{foo} and \file{bar} in \texttt{\$USER}'s home +directory that contain a directory or file \file{baz}. These +expansions are explained in the sections below. +%$ +\subsubsection{Default expansion} +\label{sec:default-expansion} + +\tolerance=2500 +If the highest-priority search path (see ``Path sources'' on +page~\pageref{sec:path-sources}) contains an \emph{extra colon} (i.e., +leading, trailing, or doubled), \KPS{} inserts at that point the +next-highest-prio\-rity search path that is defined. If that inserted +path has an extra colon, the same happens with the next highest. For +example, given an environment variable setting + +\tolerance=1500 + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +and a \code{TEXINPUTS} value from \file{texmf.cnf} of + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +then the final value used for searching will be: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Since it would be useless to insert the default value in more than one +place, \KPS{} changes only one extra \samp{:}\ and leaves any others in +place. It checks first for a leading \samp{:}, then a trailing +\samp{:}, then a doubled \samp{:}. + +\subsubsection{Brace expansion} + +A useful feature is brace expansion, which means that, for instance, +\verb+v{a,b}w+ expands to \verb+vaw:vbw+. Nesting is allowed. +This is used to implement multiple \TeX{} hierarchies, by +assigning a brace list to \code{\$TEXMF}. +For example, in \file{texmf.cnf}, the following definition +(approximately; there are actually even more trees) is made: +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +Using this you can then write something like +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +which means that, after looking in the current directory, the +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} +and \code{\$TEXMFMAIN/tex} trees \emph{only}) will be searched (the +last two use using \file{ls-R} data base files). It is a convenient +way for running two parallel \TeX{} structures, one ``frozen'' (on a +\CD, for instance) and the other being continuously updated with new +versions as they become available. By using the \code{\$TEXMF} +variable in all definitions, one is sure to always search the +up-to-date tree first. + +\subsubsection{Subdirectory expansion} +\label{sec:subdirectory-expansion} + +Two or more consecutive slashes in a path element following a directory +\var{d} is replaced by all subdirectories of \var{d}: first those +subdirectories directly under \var{d}, then the subsubdirectories under +those, and so on. At each level, the order in which the directories are +searched is \emph{unspecified}. + +If you specify any filename components after the \samp{//}, only +subdirectories with matching components are included. For example, +\samp{/a//b} expands into directories \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, and so on, but not \file{/a/b/c} or \file{/a/1}. + +Multiple \samp{//} constructs in a path are possible, but +\samp{//} at the beginning of a path is ignored. + +\subsubsection{List of special characters and their meaning: a summary} + +The following list summarizes the special characters in \KPS{} +configuration files. + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Separator in path specification; at the beginning or + the end of a path it substitutes the default path expansion.\par +\item[\CODE{;}] Separator on non-Unix systems (acts like \code{:}). +\item[\CODE{\$}] Variable expansion. +\item[\CODE{\string~}] Represents the user's home directory. +\item[\CODE{\char`\{...\char`\}}] Brace expansion. +\item[\CODE{//}] Subdirectory expansion (can occur anywhere in + a path, except at its beginning). +\item[\CODE{\%}] Start of comment. +\item[\CODE{\bs}] Continuation character (allows multi-line entries). +\item[\CODE{!!}] Search \emph{only} database to locate file, \emph{do + not} search the disk. +\end{ttdescription} + + +\subsection{Filename databases} +\label{sec:filename-database} + +\KPS{} goes to some lengths to minimize disk accesses for searches. +Nevertheless, at installations with enough directories, searching each +possible directory for a given file can take an excessively long time +(this is especially true if many hundreds of font directories have to +be traversed.) Therefore, \KPS{} can use an externally-built plain text +``database'' file named \file{ls-R} that maps files to directories, +thus avoiding the need to exhaustively search the disk. + +A second database file \file{aliases} allows you to give additional +names to the files listed in \file{ls-R}. This can be helpful to +confirm to \acro{DOS} 8.3 filename conventions in source files. + +\subsubsection{The filename database} +\label{sec:ls-R} + +As explained above, the name of the main filename database must be +\file{ls-R}. You can put one at the root of each \TeX{} hierarchy in +your installation that you wish to be searched (\code{\$TEXMF} by +default). \KPS{} looks for +\file{ls-R} files along the \code{TEXMFDBS} path. + +The recommended way to create and maintain \samp{ls-R} is to run the +\code{mktexlsr} script included with the distribution. It is invoked +by the various \samp{mktex}\dots\ scripts. In principle, this script +just runs the command +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +presuming your system's \code{ls} produces the right output format +(\GNU \code{ls} is all right). To ensure that the database is +always up-to-date, it is easiest to rebuild it regularly via +\code{cron}, so that it is automatically updated when the installed +files change, such as after installing or updating a \LaTeX{} package. + +If a file is not found in the database, by default \KPS{} goes ahead +and searches the disk. If a particular path element begins with +\samp{!!}, however, \emph{only} the database will be searched for that +element, never the disk. + + +\subsubsection{kpsewhich: Standalone path searching} +\label{sec:invoking-kpsewhich} + +The \texttt{kpsewhich} program exercises path searching independent of any +particular application. This can be useful as a sort of \code{find} +program to locate files in \TeX{} hierarchies (this is used heavily in +the distributed \samp{mktex}\dots\ scripts). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +The options specified in \ttvar{option} start with either \samp{-} +or \samp{-{}-}, and any unambiguous abbreviation is accepted. + +\KPS{} looks up each non-option argument on the command line as a +filename, and returns the first file found. There is no option to +return all the files with a particular name (you can run the Unix +\samp{find} utility for that). + +The most common options are described next. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Set the resolution to \ttvar{num}; this only affects \samp{gf} + and \samp{pk} lookups. \samp{-D} is a synonym, for compatibility + with \cmdname{dvips}. Default is 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Set the format for lookup to \ttvar{name}. By default, the + format is guessed from the filename. For formats which do not have + an associated unambiguous suffix, such as \MP{} support files and + \cmdname{dvips} configuration files, you have to specify the name as + known to \KPS{}, such as \texttt{tex} or \texttt{enc files}. Run + \texttt{kpsewhich -{}-help} for a list. + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Set the mode name to \ttvar{string}; this only affects \samp{gf} + and \samp{pk} lookups. No default: any mode will be found. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Do everything possible to find the files, notably including + searching the disk. By default, only the \file{ls-R} database is + checked, in the interest of efficiency. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Search along the path \ttvar{string} (colon-separated as usual), + instead of guessing the search path from the filename. \samp{//} and + all the usual expansions are supported. The options \samp{-{}-path} + and \samp{-{}-format} are mutually exclusive. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Set the program name to \texttt{\var{name}}. + This can affect the search paths via the \texttt{.\var{progname}} + feature. + The default is \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + shows the path used for file lookups of file type \texttt{\var{name}}. + Either a filename extension (\code{.pk}, \code{.vf}, etc.) or a + name can be used, just as with \samp{-{}-format} option. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + sets the debugging options to \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Examples of use} +\label{sec:examples-of-use} + +Let us now have a look at \KPS{} in action. Here's a straightforward search: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +We are looking for the file \file{article.cls}. Since the \samp{.cls} +suffix is unambiguous we do not need to specify that we want to look for a +file of type \optname{tex} (\TeX{} source file directories). We find it in +the subdirectory \file{tex/latex/base} below the \samp{texmf-dist} \TL\ +directory. Similarly, all of the following are found without problems +thanks to their unambiguous suffix. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +By the way, that last is a \BibTeX{} bibliography database for +\textsl{TUGboat} articles. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Font bitmap glyph files of type \file{.pk} are used by display +programs like \cmdname{dvips} and \cmdname{xdvi}. Nothing is returned in +this case since there are no pre-generated Computer Modern \samp{.pk} +files in \TL{}\Dash the Type~1 variants are used by default. +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +For these fonts (a phonetic alphabet from the University of Washington) +we had to generate \samp{.pk} files, and since the default \MF{} mode on +our installation is \texttt{ljfour} with a base resolution of 600\dpi{} +(dots per inch), this instantiation is returned. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +In this case, when specifying that we are interested in a resolution +of 300\dpi{} (\texttt{-dpi=300}) we see that no such font is available on +the system. A program like \cmdname{dvips} or \cmdname{xdvi} would +go off and actually build the required \texttt{.pk} files +using the script \cmdname{mktexpk}. + +Next we turn our attention to \cmdname{dvips}'s header and configuration +files. We first look at one of the commonly used files, the general +prologue \file{tex.pro} for \TeX{} support, before turning our attention +to the generic configuration file (\file{config.ps}) and the \PS{} font +map \file{psfonts.map}\Dash as of 2004, map and encoding files have +their own search paths and new location in \dirname{texmf} trees. As +the \samp{.ps} suffix is ambiguous we have to specify explicitly which +type we are considering (\optname{dvips config}) for the file +\texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +We now take a closer look at the \acro{URW} Times \PS{} support +files. The prefix for these in the standard font naming scheme is +\samp{utm}. The first file we look at is the configuration file, +which contains the name of the map file: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +The contents of that file is +\begin{alltt} + p +utm.map +\end{alltt} +which points to the file \file{utm.map}, which we want to +locate next. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +This map file defines the file names of the Type~1 \PS{} fonts in +the URW collection. Its contents look like (we only show part of the +lines): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +It should be evident from these examples how you can easily locate the +whereabouts of a given file. This is especially important if you suspect +that the wrong version of a file is picked up somehow, since +\cmdname{kpsewhich} will show you the first file encountered. + +\subsubsection{Debugging actions} +\label{sec:debugging} + +Sometimes it is necessary to investigate how a program resolves file +references. To make this practical, \KPS{} offers various levels of +debugging output: + +\begin{ttdescription} +\item[\texttt{\ 1}] \texttt{stat} calls (disk lookups). When running + with an up-to-date \file{ls-R} database this should almost give no + output. +\item[\texttt{\ 2}] References to hash tables (such as \file{ls-R} + databases, map files, configuration files). +\item[\texttt{\ 4}] File open and close operations. +\item[\texttt{\ 8}] General path information for file types + searched by \KPS. This is useful to find out where a particular + path for the file was defined. +\item[\texttt{16}] Directory list for each path element (only relevant + for searches on disk). +\item[\texttt{32}] File searches. +\item[\texttt{64}] Variable values. +\end{ttdescription} +A value of \texttt{-1} will set all the above options; in practice, +this is usually the most convenient. + +Similarly, with the \cmdname{dvips} program, by setting a combination of +debug switches, one can follow in detail where files are being picked up +from. Alternatively, when a file is not found, the debug trace shows in +which directories the program looks for the given file, so that one can +get an indication what the problem~is. + +Generally speaking, as most programs call the \KPS{} library +internally, one can select a debug option by using the +\envname{KPATHSEA\_DEBUG} environment variable, and setting it to (a +combination of) values as described in the above list. + +(Note for Windows users: it is not easy to redirect +all messages to a file in this system. For diagnostic purposes +you can temporarily \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Let us consider, as an example, a small \LaTeX{} source file, +\file{hello-world.tex}, which contains the following input. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +This little file only uses the font \file{cmr10}, so let us look at +how \cmdname{dvips} prepares the \PS{} file (we want to use the Type~1 +version of the Computer Modern fonts, hence the option \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In this case we have combined \cmdname{dvips}'s debug class 4 (font +paths) with \KPS's path element expansion (see \cmdname{dvips} Reference +Manual, \OnCD{texmf/doc/dvips/dvips.pdf}). +The output (slightly rearranged) appears in +Figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} starts by locating its working files. First, +\file{texmf.cnf} is found, which gives the definitions of the search +paths for the other files, then the file database \file{ls-R} (to +optimize file searching) and the file \file{aliases}, which makes it +possible to declare several names (e.g., a short \acro{DOS}-like 8.3 and +a more natural longer version) for the same file. Then \cmdname{dvips} +goes on to find the generic configuration file \file{config.ps} +before looking for the customization file \file{.dvipsrc} (which, in +this case is \emph{not found}). Finally, \cmdname{dvips} locates the +config file for the Computer Modern \PS{} fonts \file{config.cms} +(this was initiated with the \texttt{-Pcms} option on the \cmdname{dvips} +command). This file contains the list of the map files which +define the relation between the \TeX{}, \PS{} and file system +names of the fonts. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} thus goes on to find all these files, plus the generic +map file \file{psfonts.map}, which is always loaded (it contains +declarations for commonly used \PS{} fonts; see the last part of +Section \ref{sec:examples-of-use} for more details about \PS{} map +file handling). + +At this point \cmdname{dvips} identifies itself to the user: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Then it goes on to look for the prolog file \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Then it goes on to look for the prolog file \file{texc.pro} (see +Figure~\ref{fig:dvipsdbgb}). +\fi + +After having found the file in question, \cmdname{dvips} outputs +the date and time, and informs us that it will generate the +file \file{hello-world.ps}, then that it needs the font file +\file{cmr10}, and that the latter is declared as ``resident'' (no +bitmaps needed): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Now the search is on for the file \file{cmr10.tfm}, which is found, +then a few more prolog files (not shown) are referenced, and finally +the Type~1 instance \file{cmr10.pfb} of the font is located and +included in the output file (see last line). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Runtime options} + +Another useful feature of \Webc{} is its possibility to control a number +of memory parameters (in particular, array sizes) via the runtime file +\file{texmf.cnf} read by \KPS{}. The memory settings can be found in +Part 3 of that file in the \TL{} distribution. The more important +are: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + Total words of memory available, for + \TeX{}, \MF{} and \MP. You must make a new format file for each + different setting. For instance, you could generate a ``huge'' + version of \TeX{}, and call the format file \texttt{hugetex.fmt}. + Using the standard way of specifying the program name used by \KPS{}, + the particular value of the \texttt{main\_memory} variable will then + be read from \file{texmf.cnf}. +\item[\texttt{extra\_mem\_bot}] + Extra space for ``large'' \TeX{} data structures: + boxes, glue, breakpoints, etc. Especially useful if you use + \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Number of words for font information available for \TeX. This + is more or less the total size of all \acro{TFM} files read. +\item[\texttt{hash\_extra}] + Additional space for the hash table of control sequence names. + Only $\approx$10,000 control sequences can be stored in the main + hash table; if you have a large book with numerous cross-references, + this might not be enough. The default value of + \texttt{hash\_extra} is \texttt{50000}. +\end{ttdescription} + +\noindent Of course, this facility is no substitute for truly dynamic +arrays and memory allocation, but since these are extremely difficult to +implement in the present \TeX{} source, these runtime parameters provide +a practical compromise allowing some flexibility. + + +\begin{comment} +\section{Building on a new Unix platform} + +If you have a platform for which executables are not included, you will +need to compile \TeX{} and friends. This is not as hard as it +sounds. What you need is all in the directory \texttt{source} in the +distribution. + +\subsection{Prerequisites} + +You will need at least 100 megabytes of disk space to compile all of +\TeX{} and its support programs. You'll also need an \acro{ANSI} C +compiler, a \cmdname{make} utility, a lexical scanner, and a parser +generator. We recommend the \GNU version of these programs +(\cmdname{gcc}, \GNU \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). You may be able to work with other C compilers and +\cmdname{make} programs, but you will need a good understanding of +building Unix programs to sort out problems. + +Also, the command \texttt{uname} must return a sensible value. + + +\subsection{Configuration} + +To begin, perform a normal installation of \TL{} to your disk (see +section~\ref{sec:install-disk} on +\p.\pageref{sec:install-disk}). You may wish to skip installing +all of the prebuilt binaries. + +Then, unpack the source from the compressed \texttt{tar} file in the +directory \dirname{source} to your disk and change directory to where +you placed it. + +Next, run \cmdname{configure} with a command line like this: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +The \optname{-prefix} directory is the one where you installed the +support tree; the directory layout will be as follows (where \$TEXDIR +stands for the directory you chose): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & main tree with fonts,\\ + & \qquad macros, etc\\ + \dirname{$TEXDIR/man} & Unix manual pages\\ + \dirname{$TEXDIR/info} & \GNU style Info manuals\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaries\\ +\end{tabular} +%$ + +If you want to leave out the \dirname{$PLATFORM} directory level, +i.e., put the binaries directly into \dirname{$TEXDIR/bin}, specify +the \verb|--disable-multiplatform| option to \cmdname{configure}. + +Have a look at the output of \verb|./configure --help| for more +options you can use. For example, you can skip building of \OMEGA{} and +\eTeX{}. + + +\subsection{Running \cmdname{make}} + +Make sure the shell variable or option \texttt{noclobber} is not set. +Then, run the main \cmdname{make} like this: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +and relax\ldots + +Alternatively, you want to log all the output, as in: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Before you believe that everything went ok, please check the log file +for errors: \GNU \cmdname{make} always uses the string \samp{***} +whenever a command fails. Also, check if all the programs were built: + +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +The result should be over 200 (you can check the exact number with the +\dirname{bin} directory contents in the distribution). + +If you need special privileges for \texttt{make install}, you can +separate the \samp{make world} into two different runs, like this: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +After you've installed your new binaries, you should follow the normal +post-installation procedures, given in section~\ref{sec:postinstall} +(\p.\pageref{sec:postinstall}). + +Also, if you'd like to make your binaries available to others, please +contact us. We'll be happy to put them on the \TL\ web pages. +\end{comment} + +\htmlanchor{ack} +\section{Acknowledgements} + +\TL{} is a joint effort by virtually all of the \TeX{} user groups. +This edition of \TL{} was overseen by Karl Berry. The other principal +contributors, past and present, are listed below. + +\begin{itemize*} + +\item The English, German, Dutch, and Polish \TeX{} user groups +(\acro{TUG}, \acro{DANTE} e.V., \acro{NTG}, and \acro{GUST}, +respectively), which provide the necessary technical and administrative +infrastructure. Please join the \TeX\ user group near you! (See +\url{http://tug.org/usergroups.html}.) + +\item The \acro{CTAN} team, notably Robin Fairbairns, Jim Hef{}feron, +and Rainer Sch\"opf, which distributes the \TL{} images and provides the +common infrastructure for package updates, upon which \TL{} depends. + +\item Nelson Beebe, for making many platforms available to \TL\ +developers, and his own comprehensive testing. + +\item John Bowman, for making many changes to his advanced graphics +program Asymptote to make it work in \TL. + +\item Peter Breitenlohner and the \eTeX\ team for the stable foundation +of future \TeX's, and Peter specifically for stellar help with \GNU\ +autotools usage throughout \TL. + +\item Jin-Hwan Cho and all of the DVIPDFM$x$ team, for their +excellent driver and responsiveness to configuration issues. + +\item Thomas Esser, without whose marvelous \teTeX{} package \TL{} +would have never existed. + +\item Michel Goossens, who co-authored the original documentation. + +\item Eitan Gurari, whose \TeX4ht was used to create the \HTML{} +version of this documentation, and who worked tirelessly to improve +it at short notice. Eitan prematurely passed away in June 2009, and we +dedicate this documentation to his memory. + +\item Hans Hagen, for much testing and making his \ConTeXt\ format +(\url{http://pragma-ade.com}) work within \TL's framework. + +\item \Thanh, Martin Schr\"oder, and the pdf\TeX\ team +(\url{http://pdftex.org}) for continuing enhancements of \TeX's +abilities. + +\item Hartmut Henkel, for significant development contributions to +pdf\TeX\, Lua\TeX, and more. + +\item Taco Hoekwater, for major renewed development efforts on MetaPost and +(Lua)\TeX\ (\url{http://luatex.org}) itself, incorporating +\ConTeXt\ into \TL, giving Kpathsea multi-threaded functionality, and +much more. + +\item Pawe{\l} Jackowski, for the Windows installer \cmdname{tlpm}, +and Tomasz {\L}uczak, for \cmdname{tlpmgui}, used in past releases. + +\item Akira Kakuto, for providing the Windows +binaries from his \acro{W32TEX} distribution for Japanese \TeX\ +(\url{http://w32tex.org}), and many other development contributions. + +\item Jonathan Kew, for developing the remarkable \XeTeX{} engine and +taking the time and trouble to integrate it in \TL{}, as well as the +initial version of the Mac\TeX\ installer, and also for our recommended +front-end \TeX{}works. + +\item Dick Koch, for maintaining Mac\TeX\ (\url{http://tug.org/mactex}) +in very close tandem with \TL{}, and for his great good cheer in doing +so. + +\item Reinhard Kotucha, for major contributions to the \TL{} 2008 +infrastructure and installer, as well as Windows research efforts, the +\texttt{getnonfreefonts} script, and more. + +\item Siep Kroonenberg, also for major contributions to the \TL{} 2008 +infrastructure and installer, especially on Windows, and for the bulk of +work updating this manual describing those features. + +\item Heiko Oberdiek, for the \pkgname{epstopdf} package and many +others, compressing the huge \pkgname{pst-geo} data files so we could +include them, and most of all, for his remarkable work on +\pkgname{hyperref}. + +\item Petr Ol\v{s}ak, who coordinated and checked all the Czech and Slovak +material very carefully. + +\item Toshio Oshima, for his \cmdname{dviout} previewer for Windows. + +\item Manuel P\'egouri\'e-Gonnard, for helping with package updates, +documentation improvements, and \cmdname{texdoc} development. + +\item Fabrice Popineau, for the original Windows support in \TL{} and +work on the French documentation. + +\item Norbert Preining, the principal architect of the \TL{} 2008 +infrastructure and installer, and also for coordinating the Debian +version of \TL{} (together with Frank K\"uster), making many suggestions +along the way. + +\item Sebastian Rahtz, for originally creating \TL{} and maintaining it +for many years. + +\item Phil Taylor, for setting up the BitTorrent downloads. + +\item Tomasz Trzeciak, for wide-ranging help with Windows. + +\item Vladimir Volovich, for substantial help with porting and other +maintenance issues, and especially for making it feasible to include +\cmdname{xindy}. + +\item Staszek Wawrykiewicz, the principal tester for all of \TL{}, +and coordinator of the many major Polish contributions: fonts, Windows +installation, and more. + +\item Olaf Weber, for his patient maintenance of \Webc. + +\item Gerben Wierda, for creating and maintaining the original \MacOSX\ +support, and much integration and testing. + +\item Graham Williams, on whose work the \TeX\ Catalogue of packages depends. + +\end{itemize*} + +Builders of the binaries: +Peter Breitenlohner (\pkgname{x86\_64-linux}), +%Tim Arnold (\pkgname{hppa-hpux}), +%Randy Au (\pkgname{amd64-freebsd}), +%Edd Barrett (\pkgname{i386-openbsd}), +Karl Berry (\pkgname{i386-linux}, \pkgname{sparc-linux}), +Ken Brown (\pkgname{i386-cygwin}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}), +%Manfred Lotz (\pkgname{i386-freebsd}), +Norbert Preining (\pkgname{alpha-linux}), +%Arthur Reutenauer (\pkgname{sparc-linux}), +Jukka Salmi (\pkgname{i386-netbsd}), +Thomas Schmitz (\pkgname{powerpc-linux}), +Apostolos Syropoulos (\pkgname{i386-solaris}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix}). +For information on the \TL{} build process, see +\url{http://tug.org/texlive/build.html}. + +Current documentation translators: +Jjgod Jiang, Jinsong Zhao, Yue Wang, \& Helin Gai (Chinese), +Klaus H\"oppner (German), +Manuel P\'egouri\'e-Gonnard (French), +Petr Sojka \& Jan Busa (Czech\slash Slovak), +Boris Veytsman (Russian), +Staszek Wawrykiewicz (Polish). The \TL{} documentation web page +is \url{http://tug.org/texlive/doc.html}. + +Of course the most important acknowledgement must go to Donald Knuth, +first for inventing \TeX, and then for giving it to the world. + + + +\section{Release history} +\label{sec:history} + +\subsection{Past} + +Discussion began in late 1993 when the Dutch \TeX{} Users Group was +starting work on its 4All\TeX{} \CD{} for \acro{MS-DOS} users, and it +was hoped at that time to issue a single, rational, \CD{} for all +systems. This was too ambitious a target for the time, but it did spawn +not only the very successful 4All\TeX{} \CD{}, but also the \acro{TUG} +Technical Council working group on a \emph{\TeX{} Directory Structure} +(\url{http://tug.org/tds}), which specified how to create consistent and +manageable collections of \TeX{} support files. A complete draft of the +\TDS{} was published in the December 1995 issue of \textsl{TUGboat}, and +it was clear from an early stage that one desirable product would be a +model structure on \CD{}. The distribution you now have is a very direct +result of the working group's deliberations. It was also clear that the +success of the 4All\TeX{} \CD{} showed that Unix users would benefit +from a similarly easy system, and this is the other main strand of +\TL. + +We first undertook to make a new Unix-based \TDS{} \CD{} in the autumn +of 1995, and quickly identified Thomas Esser's \teTeX{} as the ideal +setup, as it already had multi-platform support and was built with +portability across file systems in mind. Thomas agreed to help, and work +began seriously at the start of 1996. The first edition was released in +May 1996. At the start of 1997, Karl Berry completed a major new release +of Web2c, which included nearly all the features which Thomas Esser had +added in \teTeX, and we decided to base the 2nd edition of the \CD{} on +the standard \Webc, with the addition of \teTeX's \texttt{texconfig} +script. The 3rd edition of the \CD{} was based on a major revision of +\Webc, 7.2, by Olaf Weber; at the same time, a new revision of \teTeX +was being made, and \TL{} included almost all of its features. The +4th edition followed the same pattern, using a new version of \teTeX, +and a new release of \Webc{} (7.3). The system now included a complete +Windows setup. + +For the 5th edition (March 2000) many parts of the \CD{} were revised +and checked, updating hundreds of packages. Package details were stored +in XML files. But the major change for \TeX\ Live 5 was that all +non-free software was removed. Everything in \TL{} is now intended +to be compatible with the Debian Free Software Guidelines +(\url{http://www.debian.org/intro/free}); we have done our best to check +the license conditions of all packages, but we would very much +appreciate hearing of any mistakes. + +The 6th edition (July 2001) had much more material updated. The major +change was a new install concept: the user could select a more exact set +of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, +etc., but also prepares an appropriate \texttt{language.dat}. + +The 7th edition of 2002 had the notable addition of \MacOSX{} support, +and the usual myriad of updates to all sorts of packages and +programs. An important goal was integration of the source back with +\teTeX, to correct the drift apart in versions~5 and~6. + +\subsubsection{2003} + +In 2003, with the continuing flood of updates and additions, we found +that \TL{} had grown so large it could no longer be contained on a +single \CD, so we split it into three different distributions (see +section~\ref{sec:tl-coll-dists}, \p.\pageref{sec:tl-coll-dists}). In +addition: + +\begin{itemize*} +\item At the request of the \LaTeX{} team, we changed the standard + \cmdname{latex} and \cmdname{pdflatex} commands to now use \eTeX{} (see + \p.\pageref{text:etex}). +\item The new Latin Modern fonts were included (and are recommended). +\item Support for Alpha \acro{OSF} was removed + (\acro{HPUX} support was removed previously), since no one had (or + volunteered) hardware available on which to compile new binaries. +\item Windows setup was substantially changed; for the first time + an integrated environment based on XEmacs was introduced. +\item Important supplementary programs for Windows + (Perl, Ghost\-script, Image\-Magick, Ispell) are now installed + in the \TL{} installation directory. +\item Font map files used by \cmdname{dvips}, \cmdname{dvipdfm} + and \cmdname{pdftex} are now generated by the new program + \cmdname{updmap} and installed into \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{}, and \MP{} now, by default, output most input + characters (32 and above) as themselves in output (e.g., + \verb|\write|) files, + log files, and the terminal, i.e., \emph{not} translated using the + \verb|^^| notation. In \TL{}~7, this translation was + dependent on the system locale settings; now, locale settings do + not influence the \TeX{} programs' behavior. If for some reason + you need the \verb|^^| output, rename the file + \verb|texmf/web2c/cp8bit.tcx|. (Future releases will have cleaner + ways to control this.) +\item This documentation was substantially revised. +\item Finally, since the edition numbers had grown unwieldy, + the version is now simply identified by the year: \TL{} 2003. +\end{itemize*} + + +\subsubsection{2004} + +2004 saw many changes: + +\begin{itemize} + +\item If you have locally-installed fonts which use their own +\filename{.map} or (much less likely) \filename{.enc} support files, you +may need to move those support files. + +\filename{.map} files are now searched for in subdirectories of +\dirname{fonts/map} only (in each \filename{texmf} tree), along the +\envname{TEXFONTMAPS} path. Similarly, \filename{.enc} files are now +searched for in subdirectories of \dirname{fonts/enc} only, along the +\envname{ENCFONTS} path. \cmdname{updmap} will attempt to warn about +problematic files. + +For methods of handling this and other information, please see +\url{http://tug.org/texlive/mapenc.html}. + +\item The \TK\ has been expanded with the addition of a \MIKTEX-based +installable \CD, for those who prefer that implementation to Web2C. +See section~\ref{sec:overview-tl} (\p.\pageref{sec:overview-tl}). + +\item Within \TL, the single large \dirname{texmf} tree of previous +releases has been replaced by three: \dirname{texmf}, +\dirname{texmf-dist}, and \dirname{texmf-doc}. See +section~\ref{sec:tld} (\p.\pageref{sec:tld}), and the \filename{README} +files for each. + +\item All \TeX-related input files are now collected in +the \dirname{tex} subdirectory of \dirname{texmf*} trees, rather than +having separate sibling directories \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex}, etc. See +\CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}. + +\item Helper scripts (not meant to be invoked by users) are now located +in a new \dirname{scripts} subdirectory of \dirname{texmf*} trees, and +can be searched for via \verb|kpsewhich -format=texmfscripts|. So if you have +programs which call such scripts, they'll need to be adjusted. See +\CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}. + +\item Almost all formats leave most characters printable as +themselves via the ``translation file'' \filename{cp227.tcx}, instead of +translating them with the \verb|^^| notation. Specifically, characters +at positions 32--256, plus tab, vertical tab, and form feed are +considered printable and not translated. The exceptions are plain \TeX\ +(only 32--126 printable), \ConTeXt\ (0--255 printable), and the +\OMEGA-related formats. This default behavior is almost the same as in +\TL\,2003, but it's implemented more cleanly, with more possibilities +for customization. See \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. +(By the way, with Unicode input, \TeX\ may output partial character +sequences when showing error contexts, since it is byte-oriented.) + +\item \textsf{pdfetex} is now the default engine for all formats +except (plain) \textsf{tex} itself. (Of course it generates \acro{DVI} +when run as \textsf{latex}, etc.) This means, among other things, that +the microtypographic features of \textsf{pdftex} are available in +\LaTeX, \ConTeXt, etc., as well as the \eTeX\ features +(\OnCD{texmf-dist/doc/etex/base/}). + +It also means it's \emph{more important than ever} to use the +\pkgname{ifpdf} package (works with both plain and \LaTeX) or equivalent +code, because simply testing whether \cs{pdfoutput} or some other +primitive is defined is not a reliable way to determine if \acro{PDF} +output is being generated. We made this backward compatible as best we +could this year, but next year, \cs{pdfoutput} may be defined even when +\acro{DVI} is being written. + +\item pdf\TeX\ (\url{http://pdftex.org}) has many new features: + + \begin{itemize*} + + \item \cs{pdfmapfile} and \cs{pdfmapline} provide font map support + from within a document. + + \item Microtypographic font expansion can be used more easily.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item All parameters previously set through the special configuration + file \filename{pdftex.cfg} must now be set through primitives, + typically in \filename{pdftexconfig.tex}; \filename{pdftex.cfg} is no + longer supported. Any extant \filename{.fmt} files must be redumped + when \filename{pdftexconfig.tex} is changed. + + \item See the pdf\TeX\ manual for more: \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}. + + \end{itemize*} + +\item The \cs{input} primitive in \cmdname{tex} (and \cmdname{mf} and +\cmdname{mpost}) now accepts double quotes containing spaces and other +special characters. Typical examples: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +See the Web2C manual for more: \OnCD{texmf/doc/web2c}. + +\item enc\TeX\ support is now included within Web2C and consequently all +\TeX\ programs, via the \optname{-enc} option\Dash \emph{only when +formats are built}. enc\TeX\ supports general re-encoding of input and +output, enabling full support of Unicode (in \acro{UTF}-8). See +\OnCD{texmf-dist/doc/generic/enctex/} and +\url{http://www.olsak.net/enctex.html}. + +\item Aleph, a new engine combining \eTeX\ and \OMEGA, is available. +A little information is available in \OnCD{texmf-dist/doc/aleph/base} +and \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. The +\LaTeX-based format for Aleph is named \textsf{lamed}. + +\item The latest \LaTeX\ release has a new version of the +\acro{LPPL}\Dash now officially a Debian-approved license. Assorted +other updates, see the \filename{ltnews} files in +\OnCD{texmf-dist/doc/latex/base}. + +\item \cmdname{dvipng}, a new program for converting \acro{DVI} to +\acro{PNG} image files, is included. See \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item We reduced the \pkgname{cbgreek} package to a ``medium'' sized set +of fonts, with the assent and advice of the author (Claudio Beccari). +The excised fonts are the invisible, outline, and transparency ones, +which are relatively rarely used, and we needed the space. The full set +is of course available from \acro{CTAN} +(\url{http://www.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} has been removed; just use \cmdname{xdvi}. + +\item The \cmdname{ini} and \cmdname{vir} commands (links) for +\cmdname{tex}, \cmdname{mf}, and \cmdname{mpost} are no longer created, +such as \cmdname{initex}. The \cmdname{ini} functionality has been +available through the command-line option \optname{-ini} for years now. + +\item \textsf{i386-openbsd} platform support was removed. Since the +\pkgname{tetex} package in the \acro{BSD} Ports system is available, and +\acro{GNU/}Linux and Free\acro{BSD} binaries were available, it seemed +volunteer time could be better spent elsewhere. + +\item On \textsf{sparc-solaris} (at least), you may have to set the +\envname{LD\_LIBRARY\_PATH} environment variable to run the +\pkgname{t1utils} programs. This is because they are compiled with C++, +and there is no standard location for the runtime libraries. (This is +not new in 2004, but wasn't previously documented.) Similarly, on +\textsf{mips-irix}, the \acro{MIPS}pro 7.4 runtimes are required. + +\end{itemize} + +\subsubsection{2005} + +2005 saw the usual huge number of updates to packages and programs. +The infrastructure stayed relatively stable from 2004, but inevitably +there were some changes there as well: + +\begin{itemize} + +\item New scripts \cmdname{texconfig-sys}, \cmdname{updmap-sys}, and + \cmdname{fmtutil-sys} were introduced, which modify the + configuration in the system trees. The \cmdname{texconfig}, + \cmdname{updmap}, and \cmdname{fmtutil} scripts now modify + user-specific files, under \dirname{$HOME/.texlive2005}. + +\item Corresponding new variables \envname{TEXMFCONFIG} and + \envname{TEXMFSYSCONFIG} to specify the trees where configuration + files (user or system, respectively) are found. Thus, you may + need to move personal versions of \filename{fmtutil.cnf} and + \filename{updmap.cfg} to these places; another option is to + redefine \envname{TEXMFCONFIG} or \envname{TEXMFSYSCONFIG} in + \filename{texmf.cnf}. In any case the real location of these files + and the values of \envname{TEXMFCONFIG} and \envname{TEXMFSYSCONFIG} + must agree. + See section~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. + +\item Last year, we kept \verb|\pdfoutput| and other primitives undefined + for \dvi\ output, even though the \cmdname{pdfetex} program was + being used. This year, as promised, we undid that compatibility + measure. So if your document uses \verb|\ifx\pdfoutput\undefined| + to test if PDF is being output, it will need to be changed. You + can use the package \pkgname{ifpdf.sty} (which works under both + plain \TeX\ and \LaTeX) to do this, or steal its logic. + +\item Last year, we changed most formats to output (8-bit) characters as + themselves (see previous section). The new TCX file + \filename{empty.tcx} now provides an easier way to get the + original \verb|^^| notation if you so desire, as in: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + +\item The new program \cmdname{dvipdfmx} is included for translation of + DVI to PDF; this is an actively maintained update of + \cmdname{dvipdfm} (which is also still available for now, though + no longer recommended). + +\item The new programs \cmdname{pdfopen} and \cmdname{pdfclose} are included + to allow reloading of pdf files in the Adobe Acrobat Reader without + restarting the program. (Other pdf readers, notably \cmdname{xpdf}, + \cmdname{gv}, and \cmdname{gsview}, have never suffered from this + problem.) + +\item For consistency, the variables \envname{HOMETEXMF} and + \envname{VARTEXMF} have been renamed to \envname{TEXMFHOME} and + \envname{TEXMFSYSVAR}, respectively. There is also + \envname{TEXMFVAR}, which is by default user-specific. See the + first point above. + +\end{itemize} + + +\subsubsection{2006--2007} + +In 2006--2007, the major new addition to \TL{} was the \XeTeX{} program, +available as the \texttt{xetex} and \texttt{xelatex} programs; see +\url{http://scripts.sil.org/xetex}. + +MetaPost also received a notable update, with more planned for the +future (\url{http://tug.org/metapost/articles}), likewise pdf\TeX{} +(\url{http://tug.org/applications/pdftex}). + +The \TeX\ \filename{.fmt} (high-speed format) and the similar files for +MetaPost and \MF\ are now stored in subdirectories of \dirname{texmf/web2c}, +instead of in the directory itself (although the directory is still +searched, for the sake of existing \filename{.fmt}'s). The +subdirectories are named for the `engine' in use, such as \filename{tex} +or \filename{pdftex} or \filename{xetex}. This change should be +invisible in normal use. + +The (plain) \texttt{tex} program no longer reads \texttt{\%\&} first +lines to determine what format to run; it is the pure Knuthian \TeX. +(\LaTeX\ and everything else do still read \texttt{\%\&} lines). + +Of course the year also saw (the usual) hundreds of other updates to +packages and programs. As usual, please check \acro{CTAN} +(\url{http://www.ctan.org}) for updates. + +Internally, the source tree is now stored in Subversion, with a standard +web interface for viewing the tree, as linked from our home page. +Although not visible in the final distribution, we expect this will +provide a stable development foundation for future years. + +Finally, in May 2006 Thomas Esser announced that he would no longer be +updating te\TeX{} (\url{http://tug.org/tetex}). As a result, there was +been a surge of interest in \TL{}, especially among \GNU/Linux +distributors. (There is a new \texttt{tetex} installation scheme in +\TL{}, which provides an approximate equivalent.) We hope this will +eventually translate to improvements in the \TeX\ environment for +everyone. + +\subsubsection{2008} + +In 2008, the entire \TL{} infrastructure was redesigned and +reimplemented. Complete information about an installation is now stored +in a plain text file \filename{tlpkg/texlive.tlpdb}. + +Among other things, this finally makes possible upgrading a \TL{} +installation over the Internet after the initial installation, a feature +MiK\TeX\ has provided for many years. We expect to regularly update new +packages as they are released to \CTAN. + +The major new engine Lua\TeX\ (\url{http://luatex.org}) is included; +besides a new level of flexibility in typesetting, this provides an +excellent scripting language for use both inside and outside of \TeX\ +documents. + +Support among Windows and the Unix-based platforms is now much more +uniform. In particular, most Perl and Lua scripts are now available on +Windows, using the Perl internally distributed with \TL. + +The new \cmdname{tlmgr} script (section~\ref{sec:tlmgr}) is the +general interface for managing \TL{} after the initial installation. +It handles package updates and consequent regeneration of formats, map +files, and language files, optionally including local additions. + +With the advent of \cmdname{tlmgr}, the \cmdname{texconfig} actions to +edit the format and hyphenation configuration files are now disabled. + +The \cmdname{xindy} indexing program +(\url{http://xindy.sourceforge.net/}) is now included on most platforms. + +The \cmdname{kpsewhich} tool can now report all matches for a given file +(option \optname{--all}) and limit matches to a given subdirectory +(option \optname{--subdir}). + +The \cmdname{dvipdfmx} program now includes functionality to extract +bounding box information, via the command name \cmdname{extractbb}; this +was one of the last features provided by \cmdname{dvipdfm} not in +\cmdname{dvipdfmx}. + +The font aliases \filename{Times-Roman}, \filename{Helvetica}, and so on +have been removed. Different packages expected them to behave +differently (in particular, to have different encodings), and there was +no good way to resolve this. + +The \pkgname{platex} format has been removed, to resolve a name conflict +with a completely different Japanese \pkgname{platex}; the +\pkgname{polski} package is now the main Polish support. + +Internally, the \web\ string pool files are now compiled into the +binaries, to ease upgrades. + +Finally, the changes made by Donald Knuth in his `\TeX\ tuneup of 2008' +are included in this release. See +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + + +% +\htmlanchor{news} +\subsection{Present} +\label{sec:tlcurrent} +\label{sec:2009news} % keep with 2009 + +\begin{comment} % last-minute disablement +In 2009, the most visible change is that pdf\AllTeX\ now +\emph{automatically} converts a requested Encapsulated PostScript (EPS) +file to PDF, via the \pkgname{epstopdf} package, when and if the \LaTeX\ +\code{graphics.cfg} configuration file is loaded, and PDF is being +output. The default options are intended to eliminate any chance of +hand-created PDF files being overwritten, but you can also prevent +\code{epstopdf} from being loaded at all by putting +|\newcommand{\DoNotLoadEpstopdf}{}| (or |\def...|) before the +\cs{documentclass} declaration. For details, see the epstopdf package +documentation (\url{http://ctan.org/pkg/epstopdf-pkg}). + +A related important change is that execution of a few external commands, +via the \cs{write18} feature, is now enabled by default\Dash for +example, \code{epstopdf}, \code{makeindex}, and \code{bibtex}. The +exact list of commands is defined in the \code{texmf.cnf} file. +Environments which must disallow all such external commands can deselect +this option in the installer (see section~\ref{sec:options}), or +override the value in \code{texmf.cnf} after installation. +\end{comment} + +In 2009, the default output format for Lua\AllTeX\ is now PDF, to take +advantage of Lua\TeX's OpenType support, et al. New executables named +\code{dviluatex} and \code{dvilualatex} run Lua\TeX\ with DVI output. +The Lua\TeX\ home page is \url{http://luatex.org}. + +The original Omega engine and Lambda format have been excised, after +discussions with the Omega authors. The updated Aleph and Lamed remain, +as do the Omega utilities. + +A new release of the AMS \TypeI\ fonts is included, including Computer +Modern: a few shape changes made over the years by Knuth in the Metafont +sources have been integrated, and the hinting has been updated. The +Euler fonts have been thoroughly reshaped by Hermann Zapf (see +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). In +all cases, the metrics remain unchanged. The AMS fonts home page is +\url{http://www.ams.org/tex/amsfonts.html}. + +The new GUI front end \TeX{}works is included for Windows, and also in +Mac\TeX. For other platforms, and more information, see the \TeX{}works +home page, \url{http://tug.org/texworks}. It is a cross-platform front +end inspired by the \MacOSX\ TeXShop editor, aiming at ease-of-use. + +The graphics program Asymptote is included for several platforms. This +implements a text-based graphics description language vaguely akin to +MetaPost, but with advanced 3D support and other features. Its home +page is \url{http://asymptote.sourceforge.net}. + +The separate \code{dvipdfm} program has been replaced by +\code{dvipdfmx}, which operates in a special compatibility mode under +that name. \code{dvipdfmx} includes \acro{CJK} support and has +accumulated many other fixes over the years since the last +\code{dvipdfm} release. The DVIPDFMx home page is +\url{http://project.ktug.or.kr/dvipdfmx}. + +Executables for the \pkgname{cygwin} and \pkgname{i386-netbsd} platforms +are now included, while the other BSD distributions have been dropped; +we were advised that OpenBSD and FreeBSD users get \TeX\ through their +package systems, plus there were difficulties in making binaries that +have a chance of working on more than one version. + +A miscellany of smaller changes: we now use \pkgname{xz} compression, +the stable replacement for \pkgname{lzma} +(\url{http://tukaani.org/xz/}); a literal |$| is allowed in filenames +when it does not introduce a known variable name; the Kpathsea library +is now multi-threaded (made use of in MetaPost); the entire \TL{} build +is now based on Automake. + +Final note on the past: all releases of \TL{}, along with ancillary +material such as \CD\ labels, are available at +\url{ftp://tug.org/historic/systems/texlive}. + + +\subsection{Future} + +\emph{\TL{} is not perfect!} (And never will be.) We intend to +continue to release new versions, and would like to provide more help +material, more utilities, more installation programs, and (of course) an +ever-improved and better-checked tree of macros and fonts. This work is +all done by hard-pressed volunteers in their limited spare time, and a +great deal remains to be done. Please see +\url{http://tug.org/texlive/contribute.html}. + +Please send corrections, suggestions, and offers of help to: +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Happy \TeX ing!} + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2010.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2010.tex new file mode 100644 index 00000000000..1853db75ea7 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2010.tex @@ -0,0 +1,3143 @@ +% $Id: texlive-en.tex 19386 2010-07-11 23:38:12Z karl $ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +\documentclass{article} +\let\tldocenglish=1 % for live4ht.cfg +\usepackage{tex-live} +\usepackage[latin1]{inputenc} % translators: use your preferred encodings. +\usepackage[T1]{fontenc} + +\begin{document} + +\title{% + {\huge \textit{The \TeX\ Live Guide}\\\smallskip}% + {\LARGE \textsf{\TL{} 2010}}% +} + +\author{Karl Berry, editor \\[3mm] + \url{http://tug.org/texlive/} + } + +\date{July 2010} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +%\listoftables +\end{multicols} + +\section{Introduction} +\label{sec:intro} + +\subsection{\TeX\ Live and the \TeX\ Collection} + +This document describes the main features of the \TL{} software +distribution\Dash \TeX{} and related programs for \GNU/Linux +and other Unix flavors, \MacOSX, and Windows systems. + +You may have acquired \TL{} by downloading, or on the \TK{} \DVD, which +\TeX{} user groups distribute among their members, or in other ways. +Section \ref{sec:tl-coll-dists} briefly describes the contents of the +\DVD. Both \TL{} and the \TK{} are cooperative efforts by the \TeX{} +user groups. This document mainly describes \TL{} itself. + +\TL{} includes executables for \TeX{}, \LaTeXe{}, \ConTeXt, +\MF, \MP, \BibTeX{} and many other programs; an extensive collection +of macros, fonts and documentation; and support for typesetting in +many different scripts from around the world. + +For a brief summary of the major changes in this edition of \TL{}, +see the end of the document, section~\ref{sec:history} +(\p.\pageref{sec:history}). + +\subsection{Operating system support} +\label{sec:os-support} + +\TL{} contains binaries for many Unix-based platforms, including +\GNU/Linux, \MacOSX, and Cygwin. The included sources can be compiled +on platforms for which we do not provide binaries. + +As to Windows: only Windows 2000 and later are +supported. Windows~9\textit{x}, \acro{ME} and \acro{NT} have been +dropped. Because of this change, Windows requires much less special +treatment compared to the Unix systems. There are no special 64-bit +executables for Windows, but the 32-bit executables should run on 64-bit +systems. + +See section~\ref{sec:tl-coll-dists} for alternate solutions +for Windows and \MacOSX. + +\subsection{Basic installation of \protect\TL{}} +\label{sec:basic} + +You can install \TL{} either from \DVD{} or over the Internet +(\url{http://tug.org/texlive/acquire.html}). The net installer itself is +small, and downloads everything requested from the Internet. + +The \DVD{} installer lets you install to a local disk. You cannot run +\TL{} directly from the \TK{} \DVD{} (or a \DVD{} image), but you can +prepare a runnable installation on, e.g., a \acro{USB} stick (see +section~\ref{sec:portable-tl}). Installation is described in later +sections (\p.\pageref{sec:install}), but here is a quick start: + +\begin{itemize*} + +\item The installation script is named \filename{install-tl}. It can + operate in a ``wizard mode'' given the option \code{-gui=wizard} + (default for Windows), a text mode given \code{-gui=text} (default for + everything else), and an expert \GUI{} mode given \code{-gui=perltk}. + +\item One of the installed items is the `\TL\ Manager' program, + named \prog{tlmgr}. Like the installer, it can be used in both \GUI{} + mode and in text mode. You can use it to install and uninstall + packages and do various configuration tasks. + +\end{itemize*} + + +\htmlanchor{security} +\subsection{Security considerations} +\label{sec:security} + +To the best of our knowledge, the core \TeX\ programs themselves are +(and always have been) extremely robust. However, the contributed +programs in \TeX\ Live may not reach the same level, despite everyone's +best efforts. As always, you should be careful when running programs on +untrusted input; for maximum safety, use a new subdirectory. + +This need for care is especially urgent on Windows, since in general +Windows finds programs in the current directory before anything else, +regardless of the search path. This opens up a wide variety of possible +attacks. We have closed many holes, but undoubtedly some remain, +especially with third-party programs. Thus, we recommend checking for +suspicious files in the current directory, especially executables +(binaries or scripts). Ordinarily they should not be present, and +definitely should not normally be created by merely processing a document. + +Finally, \TeX\ (and its companion programs) are able to write files when +processing documents, a feature that can also be abused in a wide +variety of ways. Again, processing unknown documents in a new +subdirectory is the safest bet. + + +\subsection{Getting help} +\label{sec:help} + +The \TeX{} community is active and friendly, and most serious questions +end up getting answered. However, the support is informal, done by +volunteers and casual readers, so it's especially important that you do +your homework before asking. (If you prefer guaranteed commercial +support, you can forgo \TL{} completely and purchase a vendor's system; +\url{http://tug.org/interest.html#vendors} has a list.) + +Here is a list of resources, approximately in the order we recommend +using them: + +\begin{description} +\item [Getting Started] If you are new to \TeX, the web page +\url{http://tug.org/begin.html} gives a brief introduction to the system. + +\item [\TeX{} \acro{FAQ}] The \TeX{} \acro{FAQ} is a huge compendium + of answers to all sorts of questions, from the most basic to the + most arcane. It is included on \TL{} in + \OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html}, and is available + on the Internet through \url{http://www.tex.ac.uk/faq}. Please + check here first. + +\item [\TeX{} Catalogue] If you are looking for a specific package, +font, program, etc., the \TeX{} Catalogue is the place to look. It is a +huge collection of all \TeX{}-related items. See +\url{http://www.ctan.org/help/Catalogue/}. + +\item [\TeX{} Web Resources] The web page +\url{http://tug.org/interest.html} has many \TeX{}-related links, in +particular for numerous books, manuals, and articles on all aspects of +the system. + +\item [support archives] The two principal support forums are the +Usenet newsgroup \url{news:comp.text.tex} and the mailing list +\email{texhax@tug.org}. Their archives have years of past +questions and answers for your searching pleasure, via +\url{http://groups.google.com/group/comp.text.tex/topics} and +\url{http://tug.org/mail-archives/texhax}, respectively. And a general web +search, for example on \url{http://google.com}, never hurts. + +\item [asking questions] If you cannot find an answer, you can post to +\dirname{comp.text.tex} through Google or your newsreader, or to +\email{texhax@tug.org} through email. But before you post, +\emph{please} read this \acro{FAQ} entry, to maximize +your chances of getting a useful answer: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + +\item [\TL{} support] If you want to report a bug or have +suggestions or comments on the \TL{} distribution, installation, or +documentation, the mailing list is \email{tex-live@tug.org}. However, +if your question is about how to use a particular program included in +\TL{}, please write to that program's maintainer or +mailing list. Often running a program with the \code{-{}-help} option +will provide a bug reporting address. + +\end{description} + +The other side of the coin is helping others who have questions. Both +\dirname{comp.text.tex} and \code{texhax} are open to anyone, so feel +free to join, start reading, and help out where you can. + + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{Overview of \protect\TeX\protect\ Live} +\label{sec:overview-tl} + +This section describes the contents of \TL{} and the \TK{} of which it +is a part. + +\subsection{The \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tl-coll-dists} + +The \TK{} \DVD{} comprises the following: + +\begin{description} + +\item [\TL] A complete \TeX{} system to be installed to disk. Its home +page is \url{http://tug.org/texlive/}. + +\item [Mac\TeX] for \MacOSX, this adds a native \MacOSX\ installer and other +Mac applications to \TL{}. Its home page is +\url{http://tug.org/mactex/}. + +\item [pro\TeX{}t] An enhancement of the \MIKTEX\ distribution for Windows, +\ProTeXt\ adds a few extra tools to \MIKTEX, and simplifies +installation. It is entirely independent of \TL{}, and has its own +installation instructions. The \ProTeXt\ home page is +\url{http://tug.org/protext}. + +\item [CTAN] A snapshot of the \CTAN{} repository (\url{http://www.ctan.org}). + +\item [\texttt{texmf-extra}] A directory with assorted additional packages. + +\end{description} + +\CTAN{}, \pkgname{protext}, and \dirname{texmf-extra} do not +necessarily follow the same copying conditions as \TL{}, so be careful +when redistributing or modifying. + + +\subsection{Top level \TL{} directories} +\label{sec:tld} + +Here is a brief listing and description of the top level directories in a +\TL{} installation. + +\begin{ttdescription} +\item[bin] The \TeX{} system programs, arranged by platform. +% +\item[readme-*.dir] Quick overview and useful links for \TL{}, +in various languages, in both \HTML{} and plain text. +% +\item[source] The source to all included programs, including the main + \Webc{}-based \TeX{} distributions. +% +\item[texmf] See \dirname{TEXMFMAIN} below. +% +\item[texmf-dist] See \dirname{TEXMFDIST} below. +% +\item[tlpkg] Scripts, programs and data for managing the + installation, and special support for Windows. +\end{ttdescription} + +In addition to the directories above, the installation scripts and +\filename{README} files (in various languages) are at the top level of +the distribution. + +For documentation, the comprehensive links in the top-level file +\OnCD{doc.html} may be helpful. The documentation for the programs +(manuals, man pages, Info files) is in \dirname{texmf/doc}. The +documentation for \TeX\ packages and formats is in +\dirname{texmf-dist/doc}. You can use the \cmdname{texdoc} program to +find any documentation wherever it is located. + +This \TL\ documentation itself is in \dirname{texmf/doc/texlive}, +available in several languages: + +\begin{itemize*} +\item{Czech/Slovak:} \OnCD{texmf/doc/texlive/texlive-cz} +\item{German:} \OnCD{texmf/doc/texlive/texlive-de} +\item{English:} \OnCD{texmf/doc/texlive/texlive-en} +\item{French:} \OnCD{texmf/doc/texlive/texlive-fr} +\item{Italian:} \OnCD{texmf/doc/texlive/texlive-it} +\item{Polish:} \OnCD{texmf/doc/texlive/texlive-pl} +\item{Russian:} \OnCD{texmf/doc/texlive/texlive-ru} +\item{Serbian:} \OnCD{texmf/doc/texlive/texlive-sr} +\item{Simplified Chinese:} \OnCD{texmf/doc/texlive/texlive-zh-cn} +\end{itemize*} + +\subsection{Overview of the predefined texmf trees} +\label{sec:texmftrees} + +This section lists the predefined variables specifying the texmf trees +used by the system, and their intended purpose, and the default layout +of \TL{}. The command \texttt{tlmgr~conf} shows the values of these +variables, so that you can easily find out how they map to particular +directories in your installation. + +\begin{ttdescription} +\item [TEXMFMAIN] The tree which holds vital parts of the + system such as configuration files, helper scripts, and program + documentation. +\item [TEXMFDIST] The tree which holds the main set of macro packages, + fonts, etc. +\item [TEXMFLOCAL] The tree which administrators can use for system-wide + installation of additional or updated macros, fonts, etc. +\item [TEXMFHOME] The tree which users can use for their own individual + installations of additional or updated macros, fonts, etc. + The expansion of this variable dynamically adjusts for each user to + their own individual directory. +\item [TEXMFCONFIG] The (personal) tree used by the utilities + \verb+texconfig+, \verb+updmap+, and \verb+fmtutil+ to store modified + configuration data. +\item [TEXMFSYSCONFIG] The (site-wide) tree used by the utilities + \verb+texconfig-sys+, \verb+updmap-sys+, and \verb+fmtutil-sys+ to + store modified configuration data. +\item [TEXMFVAR] The (personal) tree used by \verb+texconfig+, + \verb+updmap+ and \verb+fmtutil+ to store (cached) runtime data such + as format files and generated map files. Also used by \ConTeXt\ Mk\acro{IV}. +\item [TEXMFSYSVAR] The (site-wide) tree used by \verb+texconfig-sys+, + \verb+updmap-sys+ and \verb+fmtutil-sys+, and also by \verb+tlmgr+, to + store (cached) runtime data such as format files and generated map files. +\end{ttdescription} + +\noindent +The default layout is: +\begin{description} + \item[system-wide root] can span multiple \TL{} releases: + \begin{ttdescription} + \item[2009] A previous release. + \item[2010] The current release. + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] \GNU/Linux binaries + \item [...] + \item [universal-darwin] \MacOSX\ binaries + \item [win32] Windows binaries + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] This is \envname{TEXMFMAIN}. + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var \ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, intended to be + retained from release to release. + \end{ttdescription} + \item[user's home] (\texttt{\$HOME} or + \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2009] Privately generated and configuration data + for a previous release. + \item[.texlive2010] Privately generated and configuration data + for the current release. + \begin{ttdescription} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} Personal macros, etc. + \end{ttdescription} +\end{description} + + +\subsection{Extensions to \protect\TeX} +\label{sec:tex-extensions} + +Knuth's original \TeX{} itself is frozen, apart from rare bug fixes. It +is still present in \TL\ as the program \prog{tex}, and will remain so +for the foreseeable future. \TL{} contains several extended versions of +\TeX: + +\begin{description} + +\item [\eTeX] adds a set of new primitives +\label{text:etex} (related to macro expansion, character scanning, +classes of marks, additional debugging features, and more) and the +\TeXXeT{} extensions for bidirectional typesetting. In default mode, +\eTeX{} is 100\% compatible with ordinary \TeX. See +\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] builds on the \eTeX\ extensions, adding support for +writing \acro{PDF} output as well as \dvi{}, and many non-output-related +extensions. This is the program invoked for most formats, e.g., +\prog{etex}, \prog{latex}, \prog{pdflatex}. Its web site is +\url{http://www.pdftex.org/}. See +\OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf} for the manual, and +\OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex} for example +usage of some of its features. + +\item [Lua\TeX] is the designated successor of pdf\TeX, +and is mostly (but not entirely) backward-compatible. It is also +intended to be a functional superset of Aleph (see below), though +technical compatibility is not intended. The incorporated Lua +interpreter (\url{http://www.lua.org/}) enables elegant solutions for +many thorny \TeX{} problems. When called as \filename{texlua}, it +functions as a standalone Lua interpreter, and is already used as such +within \TL. Its web site is \url{http://www.luatex.org/}, and the +reference manual is \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [\XeTeX] adds support for Unicode input and OpenType- and system +fonts, implemented using standard third-party libraries. See +\url{http://tug.org/xetex}. + +\item [\OMEGA\ (Omega)] is based on Unicode (16-bit characters), thus +supports working with almost all the world's scripts simultaneously. It +also supports so-called `\OMEGA{} Translation Processes' (\acro{OTP}s), +for performing complex transformations on arbitrary input. Omega is no +longer included in \TL{} as a separate program; only Aleph is provided: + +\item [Aleph] combines the \OMEGA\ and \eTeX\ extensions. +See \OnCD{texmf-dist/doc/aleph/base}. + +\end{description} + + +\subsection{Other notable programs in \protect\TL} + +Here are a few other commonly-used programs included in \TL{}: + +\begin{cmddescription} + +\item [bibtex, bibtex8] bibliography support. + +\item [makeindex, xindy] index support. + +\item [dvips] convert \dvi{} to \PS{}. + +\item [xdvi] \dvi{} previewer for the X Window System. + +\item [dvilj] \dvi{} drive for the HP LaserJet family. + +\item [dviconcat, dviselect] cut and paste pages +from \dvi{} files. + +\item [dvipdfmx] convert \dvi{} to \acro{PDF}, an alternative approach +to pdf\TeX\ (mentioned above). + +\item [psselect, psnup, \ldots] \PS{} utilities. + +\item [pdfjam, pdfjoin, \ldots] \acro{PDF} utilities. + +\item [texexec, texmfstart] Con\TeX{}t and \acro{PDF} processor. + +\item [tex4ht] \TeX{} to \acro{HTML} (and \acro{XML} and more) converter. + +\end{cmddescription} + + +\subsection{Fonts in \protect\TL} +\label{sec:tl-fonts} + +\TL{} comes with many high-quality scalable fonts. See +\url{http://tug.org/fonts} and +\OnCD{texmf-dist/doc/fonts/free-math-font-survey}. + + +\section{Installation} +\label{sec:install} + +\subsection{Starting the installer} +\label{sec:inst-start} + +To begin, get the \TK{} \DVD{} or download the \TL{} net installer, +and locate the installer script: \filename{install-tl} for Unix, +\filename{install-tl.bat} for Windows. + +\begin{description} +\item [Net installer:] Download from \CTAN, under +\dirname{systems/texlive/tlnet}; the url +\url{http://mirror.ctan.org/systems/texlive/tlnet} will automatically +redirect to a nearby, up-to-date, mirror. You can retrieve either +\filename{install-tl.zip} which can be used under Unix and Windows, or +the considerably smaller \filename{install-unx.tar.gz} for Unix +only. After unpacking, \filename{install-tl} and +\filename{install-tl.bat} will be in the \dirname{install-tl} +subdirectory. + +\item [\TeX{} Collection \DVD:] go to its \dirname{texlive} +subdirectory. Under Windows, the installer normally starts automatically +when you insert the \DVD. You can get the \DVD\ by becoming a member of +a \TeX\ user group (highly recommended, +\url{http://tug.org/usergroups.html}), or purchasing it separately +(\url{http://tug.org/store}), or burning your own from the \ISO\ +image. + +\end{description} + +See \url{http://tug.org/texlive/acquire.html} for more information and +other methods of getting the software. + +The following sections explain installer start-up in more detail. + +\subsubsection{Unix} + +\noindent +Below, \texttt{>} denotes the shell prompt; user input is +\Ucom{\texttt{bold}}. +The script \filename{install-tl} is a Perl script. The simplest way +to start it on a Unix-compatible system is as follows: +\begin{alltt} +> \Ucom{cd /path/to/installer} +> \Ucom{perl install-tl} +\end{alltt} +(Or you can invoke \Ucom{perl /path/to/installer/install-tl}, or +\Ucom{./install-tl} if it stayed executable, etc.; we won't repeat all +these variations.) You may have to enlarge your terminal window so +that it shows the full text installer screen (Figure~\ref{fig:text-main}). + +To install in expert \GUI\ mode (figure~\ref{fig:gui-main}), you'll +need the \dirname{Perl/TK} module compiled with \acro{XFT} support, +which is generally the case with \GNU/Linux, but not necessarily other +systems. Given that, you can run: +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +For a complete listing of the various options: +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{Warning about Unix permissions:} Your \code{umask} at the time +of installation will be respected by the \TL{} installer. Therefore, if +you want your installation to be usable by users other than you, make +sure your setting is sufficiently permissive, for instance, \code{umask +002}. For more information about \code{umask}, consult your system +documentation. + +\textbf{Special considerations for Cygwin:} Unlike other +Unix-compatible systems, Cygwin does not by default include all of the +prerequisite programs needed by the \TL{} installer. See +Section~\ref{sec:cygwin} for details. + + +\subsubsection{MacOSX} + +As mentioned in section~\ref{sec:tl-coll-dists}, a separate distribution +is prepared for \MacOSX, named Mac\TeX\ (\url{http://tug.org/mactex}). +We recommend using the native Mac\TeX\ installer instead of the \TL\ +installer on \MacOSX, because the native installer makes a few +Mac-specific adjustments, in particular to allow easily switching +between the various \TeX\ distributions for \MacOSX\ (Mac\TeX, Fink, +MacPorts, \ldots). + +Mac\TeX\ is firmly based on \TL, and the main \TeX\ trees are precisely +the same. It does add a few extra folders with Mac-specific +documentation and applications. + + +\subsubsection{Windows} + +If you are using the net installer, or the \DVD\ installer failed to +start automatically, double-click \filename{install-tl.bat}. +For more customization options, e.g., selection of specific package +collections, run \filename{install-tl-advanced.bat} instead. + +You can also start the installer from the command-prompt. Below, +\texttt{>} denotes the prompt; user input is \Ucom{\texttt{bold}}. If +you are in the installer directory, run just: +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} + +Or you can invoke it with an absolute location, such as: +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +for the \TK\ \DVD, supposing that \dirname{D:} is the optical +drive. Figure~\ref{fig:wizard-w32} displays the wizard installer, which +is the default for Windows. + +To install in text mode, use: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +For a complete listing of the various options: +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2010 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + binary systems: 1 out of 19 + + Installation scheme (scheme-full) + 84 collections out of 85, disk space required: 2256 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2010 + ... + + options: + [ ] use letter size instead of A4 by default + [X] allow execution of restricted list of programs via \write18 + ... + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{Main text installer screen (\GNU/Linux)}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth,trim=10 4 0 20,clip} +\caption{Expert \GUI{} installer screen (\GNU/Linux)}\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth,trim=0 4 0 0,clip} +\caption{Wizard installer screen (Windows)}\label{fig:wizard-w32} +\end{figure} + + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +The \TL{} installer supports only Cygwin 1.7. +Before beginning the installation, use Cygwin's \filename{setup.exe} program to +install the \filename{perl} and \filename{wget} packages if you have +not already done so. The following additional packages are +recommended: +\begin{itemize*} +\item \filename{fontconfig} [needed by \XeTeX] +\item \filename{ghostscript} [needed by various utilities] +\item \filename{libXaw7} [needed by \code{xdvi}] +\item \filename{ncurses} [provides the \code{clear} command used by the installer] +\end{itemize*} + + +\subsubsection{The text installer} + +Figure~\ref{fig:text-main} displays the main text mode screen under +Unix. The text installer is the default on Unix. + +This is only a command-line installer; there is no cursor support at +all. For instance, you cannot tab around checkboxes or input fields. +You just type something (case-sensitive) at the prompt and press the +Enter key, and then the entire terminal screen will be rewritten, with +adjusted content. + +The text installer interface is this primitive for a reason: it +is designed to run on as many platforms as possible, even with a +very barebones Perl. + +\subsubsection{The expert graphical installer} + +Figure~\ref{fig:gui-main} displays the expert graphical installer under +\GNU/Linux. Other than using buttons and menus, this does +not differ much from the text installer. + +This mode can be invoked explicitly with +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} + + +\subsubsection{The simple wizard installer} + +Under Windows, the default is to run the simplest installation method we +could devise, called the ``wizard'' installer +(figure~\ref{fig:wizard-w32}). It installs everything and asks almost +no questions. If you want to customize your setup, you should run one +of the other installers. + +This mode can be invoked explicitly with +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + + +\subsection{Running the installer} +\label{sec:runinstall} + +The installer is intended to be mostly self-explanatory, but following are a +few notes about the various options and submenus. + +\subsubsection{Binary systems menu (Unix only)} +\label{sec:binary} + +\begin{figure}[tb] +\begin{boxedverbatim} +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 +\end{boxedverbatim} +\caption{Binaries menu}\label{fig:bin-text} +\end{figure} + +Figure~\ref{fig:bin-text} displays the text mode binaries menu. By +default, only the binaries for your current platform will be installed. +From this menu, you can select installation of binaries for other +platforms as well. This can be useful if you are sharing a \TeX\ +tree across a network of heterogenous machines, or for a dual-boot +system. + +\subsubsection{Selecting what is going to be installed} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +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 +\end{boxedverbatim} +\caption{Scheme menu}\label{fig:scheme-text} +\end{figure} + +Figure~\ref{fig:scheme-text} displays the \TL\ scheme menu; from here, +you choose a ``scheme'', which is an overall set of package collections. +The default \optname{full} scheme installs everything available. This +is recommended, but you can also choose the \optname{basic} scheme for a +small system, \optname{minimal} for testing purposes, and +\optname{medium} or \optname{teTeX} to get something in between. There +are also various specialized and country-specific schemes. + +\begin{figure}[tb] +\tlpng{stdcoll}{.7\linewidth,trim=0 4 0 0,clip} +\caption{Collections menu}\label{fig:collections-gui} +\end{figure} + +You can refine your scheme selection with the `standard collections' and +`language collections' menus (figure~\ref{fig:collections-gui}, shown in +\GUI\ mode for a change). + +Collections are one level more detailed than schemes\Dash in essence, a +scheme consists of several collections, a collection consists of one or +more packages, and a package (the lowest level grouping in \TL) contains +the actual \TeX\ macro files, font files, and so on. + +If you want more control than the collection menus provide, you can use +the \TeX\ Live Manager (\prog{tlmgr}) program after installation (see +section~\ref{sec:tlmgr}); using that, you can control the installation +at the package level. + +\subsubsection{Directories} +\label{sec:directories} + +The default layout is described in section~\ref{sec:texmftrees}, +\p.\pageref{sec:texmftrees}. The default location of +\dirname{TEXDIR} is \dirname{/usr/local/texlive/2010} on Unix +and |%SystemDrive%\texlive\2010| on Windows. + +The main reason to change this default is if you lack write permission +for the default location. You don't have to be root or administrator to +install \TL, but you do need write access to the target directory. + +A reasonable alternative choice is a directory under your home directory, +especially if you will be the sole user. Use +`|~|' to indicate this, as in `|~/texlive/2010|'. + +We recommend including the year in the name, to enable keeping different +releases of \TL{} side by side. (You may wish to make a +version-independent name such as \dirname{/usr/local/texlive-cur} via a +symbolic link, which you can then update after testing the new release.) + +Changing \dirname{TEXDIR} in the installer will also change +\dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} and +\dirname{TEXMFSYSCONFIG}. + +\dirname{TEXMFHOME} is the recommended location for personal +macro files or packages. The default value is |~/texmf|. In +contrast to \dirname{TEXDIR}, here a |~| is preserved in the +newly-written configuration files, since it usefully refers to the home +directory of any individual running \TeX. It expands to +\dirname{$HOME} on Unix and \verb|%USERPROFILE%| on Windows. + +\dirname{TEXMFVAR} is the location for storing cached runtime data +specific to each user, including the \ConTeXt\ Mk\acro{IV} cache. + + +\subsubsection{Options} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Current options setup: +=============================================================================== +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: +\end{boxedverbatim} +\caption{Options menu (Unix)}\label{fig:options-text} +\end{figure} + +Figure~\ref{fig:options-text} shows the text mode options menu. +More info on each: + +\begin{description} +\item[use letter size instead of A4 by default:] The default paper + size selection. Of course, individual documents can and should + specify a specific paper size, if desired. + +\item[execution of restricted list of programs:] As of \TL\ 2010, + execution of a few external programs is allowed by default. The (very + short) list of allowed programs is given in the \filename{texmf.cnf}. + See the 2010 news (section~\ref{sec:2010news}) for more details. + +\item[create format files:] Although unnecessary format files + take time to generate and disk space to store, it is still recommended + to leave this option checked: if you don't, then format files will be + generated in people's private \dirname{TEXMFVAR} tree as they are + needed. In that location, they will not be updated automatically if + (say) binaries or hyphenation patterns are updated in the + installation, and thus could end up with incompatible format files. + +\item[install font/macro \ldots\ tree:] These options allow you to omit + downloading/installing the documentation and source files present in + most packages. Not recommended. + +\item[create symlinks in standard directories] (Unix only): + This option bypasses the need to change environment variables. Without + this option, \TL{} directories usually have to be added to + \envname{PATH}, \envname{MANPATH} and \envname{INFOPATH}. You will + need write permissions to the target directories. It is strongly + advised \emph{not} to overwrite a \TeX\ system that came with your + system with this option. It is intended primarily for accessing the + \TeX\ system through directories that are already known to users, such + as \dirname{/usr/local/bin}, which don't already contain any \TeX\ + files. +\end{description} + +When all the settings are to your liking, you can type `I' to start the +installation process. When it is done, skip to +section~\ref{sec:postinstall} to read what else needs to be done, if +anything. + +\subsection{Command-line install-tl options} +\label{sec:cmdline} + +Type +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +for a listing of command-line options. Either |-| or |--| can be used +to introduce option names. These are the most common ones: + +\begin{ttdescription} +\item[-gui] If possible, use the \GUI{} installer. This requires the + Perl/Tk module (\url{http://tug.org/texlive/distro.html#perltk}) + compiled with \acro{XFT} support; if Perl/Tk is not available, + installation continues in text mode. + +\item[-no-gui] Force using the text mode installer, even under + Windows; you'll need this if you want a `from \DVD' installation, + since that is not available in \GUI{} mode. + +\item[-lang {\sl LL}] Specify the installer interface + language as its standard two-letter code \textsl{\acro{LL}}. Currently + supported languages: + \texttt{cs} (Czech), + \texttt{de} (German), + \texttt{en} (English, default) + \texttt{fr} (French), + \texttt{it} (Italian), + \texttt{ja} (Japanese), + \texttt{nl} (Dutch), + \texttt{pl} (Polish), + \texttt{ru} (Russian), + \texttt{sk} (Slovak), + \texttt{sl} (Slovenian), + \texttt{sr} (Serbian), + \texttt{vi} (Vietnamese), + \texttt{zh-cn} (Simplified Chinese), + \texttt{zh-tw} (Traditional Chinese). + The installer tries to automatically determine the right + language but if it fails, or if the right language is not + available, then it uses English as a fallback. + +\item[-portable] Install for portable use on a \acro{USB} stick + or \DVD. This option minimizes impact on the host system, making \TL{} + self-contained in a single directory. See also + section~\ref{sec:portable-tl} for more details on portable usage. + +\item[-profile {\sl file}] The installer always writes a file + \filename{texlive.profile} to the \dirname{tlpkg} subdirectory of your + installation. This option tells the installer to re-use such a + profile file, so you can install in batch mode on subsequent systems, + reproducing the choices you made in a prior installation. + +\item [-repository {\sl url-or-directory}] Specify package + repository from which to install; see following. +\end{ttdescription} + +\subsubsection{The \optname{-repository} option} +\label{sec:location} + +The default package repository is a \CTAN{} mirror chosen automatically +via \url{http://mirror.ctan.org}. + +If you want to override that, the location value can be a url starting +with \texttt{ftp:}, \texttt{http:}, or \texttt{file:/}, or a plain +directory path. (When giving an \texttt{http:}\ or \texttt{ftp:}\ +location, trailing `\texttt{/}' characters and/or a trailing +`\texttt{/tlpkg}' component are ignored.) + +For example, you could choose a particular \CTAN\ mirror with something +like: \url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +substituting a real hostname and its particular top-level \CTAN\ path +for |ctan.example.org/tex-archive|. The list of \CTAN\ mirrors is +maintained at \url{http://ctan.org/mirrors}. + +If the given argument is local (either a path or a \texttt{file:/} url), +compressed files in an \dirname{archive} subdirectory of the repository +path are used (even if uncompressed files are available as well). + + +\subsection{Post-install actions} +\label{sec:postinstall} + +Some post-install may be required. + +\subsubsection{Windows} + +But on Windows, the installer takes care of everything. + +\subsubsection{If symlinks were created} + +If you elected to create symlinks in standard directories (mentioned in +section~\ref{sec:options}), then there is no need to edit environment +variables. + +\subsubsection{Environment variables for Unix} +\label{sec:env} + +The directory of the binaries for your platform must be added to +the search path. Each supported platform has its own subdirectory +under \dirname{TEXDIR/bin}. See figure~\ref{fig:bin-text} for the +list of subdirectories and corresponding platforms. + +You can also add the documentation man and Info directories to their +respective search paths, if you want the system tools to find them. +The man pages might be found automatically after the addition to +\envname{PATH}. + +For Bourne-compatible shells such as \prog{bash}, and using Intel x86 +GNU/Linux and a default directory setup as an example, the file to edit +might be \filename{$HOME/.profile} (or another file sourced by +\filename{.profile}, and the lines to add would look like this: + +\begin{sverbatim} +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 +\end{sverbatim} + +For csh or tcsh, the file to edit is typically \filename{$HOME/.cshrc}, and +the lines to add might look like: + +\begin{sverbatim} +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 +\end{sverbatim} + +If you already have settings somewhere in your ``dot'' files, naturally +the \TL\ directories should simply be merged in as appropriate. + +\subsubsection{Environment variables: global configuration} +\label{sec:envglobal} + +If you want to make these changes globally, or for a user newly added to +the system, then you are on your own; there is just too much variation +between systems in how and where these things are configured. + +Our two hints are: 1)~you may want to check for a file +\filename{/etc/manpath.config} and, if present, add lines such as + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2010/bin/i386-linux \ + /usr/local/texlive/2010/texmf/doc/man +\end{sverbatim} + +And 2)~check for a file \filename{/etc/environment} which may define the +search path and other default environment variables. + +In each (Unix) binary directory, we also create a symbolic link named +\code{man} to the directory \dirname{texmf/doc/man}. Some \code{man} +programs, such as the standard \MacOSX\ \code{man}, will automatically +find that, obviating the need for any man page setup. + + +\htmlanchor{xetexfontconfig} +\subsubsection{Font configuration for \XeTeX} +\label{sec:font-conf-xetex} + +If you have installed the \filename{xetex} package on a Unix-compatible +system, you need to configure your system if you want \XeTeX\ to be able +to find the fonts shipped with \TL. To facilitate this, when the +\pkgname{xetex} package is installed (either at initial installation or +later), the necessary configuration file is created in +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. + +To set up the \TL{} fonts for system-wide use (assuming you have +suitable privileges), proceed as follows: +\begin{enumerate*} +\item Copy the \filename{texlive-fontconfig.conf} file to +\dirname{/etc/fonts/conf.d/09-texlive.conf}. +\item Run \Ucom{fc-cache -fsv}. +\end{enumerate*} + +If you do not have sufficient privileges to carry out the steps above, +you can instead do the following to make the \TL{} fonts available +to you as an individual \XeTeX{} user: +\begin{enumerate*} +\item Copy the \filename{texlive-fontconfig.conf} file to + \filename{~/.fonts.conf}, where \filename{~} is your home directory. +\item Run \Ucom{fc-cache -fv}. +\end{enumerate*} + + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context-mkiv} + +The `old' \ConTeXt{} (Mark \acro{II}) should run out of the box after +\TL{} installation. The `new' Lua\TeX-based \ConTeXt{} Mark \acro{IV} +requires manual setup. After installation, each Mk\acro{IV} user must +run: +\begin{sverbatim} +luatools --generate +context --make +\end{sverbatim} +The resulting files are stored under \code{TEXMFVAR}. + +For more information, see +\url{http://wiki.contextgarden.net/Running_Mark_IV} and +\url{http://wiki.contextgarden.net/TeX_Live_2010}. + + +\subsubsection{Integrating local and personal macros} +\label{sec:local-personal-macros} + +This is already mentioned implicitly in section~\ref{sec:texmftrees}: +\dirname{TEXMFLOCAL} (by default, +\dirname{/usr/local/texlive/texmf-local} or +\verb|%SystemDrive%\texlive\texmf-local|) +is intended for system-wide local fonts and macros; and +\dirname{TEXMFHOME} (by default, \dirname{$HOME/texmf} or +\verb|%USERPROFILE%\texmf|), is for personal fonts and macros. These +directories are intended to stick around from release to release, and +have their content seen automatically by a new \TL{} release. +Therefore, it is best to refrain from changing the definition of +\dirname{TEXMFLOCAL} to be too far away from the main \TL{} directory, +or you will need to manually change future releases. + +For both trees, files should be placed in their proper subdirectories; +see \url{http://tug.org/tds} or consult +\filename{texmf/web2c/texmf.cnf}. For instance, a \LaTeX{} class file or +package should be placed in \dirname{TEXMFLOCAL/tex/latex} or +\dirname{TEXMFHOME/tex/latex}, or a subdirectory thereof. + +\dirname{TEXMFLOCAL} requires an up-to-date filename database, or files +will not be found. You can update it with the command +\cmdname{mktexlsr} or use the `Reinit file database' button on the +configuration tab of the \TeX\ Live Manager \GUI. + +\subsubsection{Integrating third-party fonts} + +This is unfortunately a messy topic. Forget about it unless you want to +delve into many details of the \TeX{} installation. Don't forget to +check first what you get for free: see section~\ref{sec:tl-fonts}. + +A possible alternative is to use \XeTeX\ or Lua\TeX\ (see +section~\ref{sec:tex-extensions}), which let you use operating system +fonts without any installation in \TeX. + +If you do need to do this, see +\url{http://tug.org/fonts/fontinstall.html} for our best effort at +describing the procedure. + + +\subsubsection{Increasing maximum memory on Windows and Cygwin} +\label{sec:cygwin-maxmem} + +Windows and Cygwin (see section~\ref{sec:cygwin} for Cygwin installation +specifics) users may find that they run out of memory when running some +of the programs shipped with \TL. For example, \prog{asy} might run out +of memory if you try to allocate an array of 25,000,000 reals, and +Lua\TeX\ might run out of memory if you try to process a document with a +lot of big fonts. + +For Cygwin, you can increase the amount of available memory by following +the instructions in the Cygwin User's Guide +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +For Windows, you have to create a file, say \code{moremem.reg}, with +these four lines: + +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +\noindent and then execute the command \code{regedit /s moremem.reg} as +administrator. (If you want to change memory only for the current user +instead of system-wide, use \code{HKEY\_CURRENT\_USER}.) + + +\subsection{Testing the installation} +\label{sec:test-install} + +After installing \TL{} as best you can, you naturally want to test +it out, so you can start creating beautiful documents and\slash or fonts. + +This section gives some basic procedures for testing that the new system +is functional. We give Unix commands here; under \MacOSX{} and Windows, +you're more likely to run the tests through a graphical interface, but +the principles are the same. + +\begin{enumerate} + +\item Make sure that you can run the \cmdname{tex} program in the first +place: +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live 2010) +kpathsea version 6.0.0 +Copyright 2010 D.E. Knuth. +... +\end{alltt} +If this comes back with `command not found' instead of version and +copyright information, or with an older version, most likely you don't +have the correct \dirname{bin} subdirectory in your \envname{PATH}. See +the environment-setting information on \p.\pageref{sec:env}. + +\item Process a basic \LaTeX{} file: +\begin{alltt} +> \Ucom{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. +\end{alltt} +If this fails to find \filename{sample2e.tex} or other files, most +likely you have interference from old environment variables or +configuration files; we recommend unsetting all \TeX-related environment +variables for a start. (For a deep analysis, you can ask \TeX{} to +report on exactly what it is searching for, and finding; see ``Debugging +actions'' on page~\pageref{sec:debugging}.) + +\item Preview the result online: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +You should see a new window with a nice document explaining some of the +basics of \LaTeX{}. (Well worth reading, by the way, if you're new to +\TeX.) You do have to be running under X for \cmdname{xdvi} to work; if +you're not, or your \envname{DISPLAY} environment variable is set +incorrectly, you'll get an error \samp{Can't open display}. + +\item Create a \PS{} file for printing or display: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Create a \acro{PDF} file instead of \dvi{}; this processes the +\filename{.tex} file and writes \acro{PDF} directly: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Preview the \acro{PDF} file: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Neither \cmdname{gv} nor \cmdname{xpdf} are included in \TL{}, so you +must install them separately. See \url{http://www.gnu.org/software/gv} +and \url{http://www.foolabs.com/xpdf}, respectively. There are plenty +of other \acro{PDF} viewers, too. For Windows, we recommend trying +Sumatra PDF (\url{http://blog.kowalczyk.info/software/sumatrapdf}). + +\item Standard test files you may find useful in addition to +\filename{sample2e.tex}: + +\begin{ttdescription} +\item [small2e.tex] A simpler document than \filename{sample2e}, to +reduce the input size if you're having troubles. +\item [testpage.tex] Test if your printer introduces any offsets. +\item [nfssfont.tex] For printing font tables and tests. +\item [testfont.tex] Also for font tables, but using plain \TeX{}. +\item [story.tex] The most canonical (plain) \TeX{} test file of all. +You must type \samp{\bs bye} to the \code{*} prompt after \samp{tex +story.tex}. +\end{ttdescription} + +\item If you have installed the \filename{xetex} package, you can test +its access to system fonts as follows: +\begin{alltt} +> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +If you get an error message saying ``Invalid fontname `Latin Modern +Roman/ICU'\dots'', then you need to configure your system so that +\XeTeX{} can find the fonts shipped with \TL. See +Section~\ref{sec:font-conf-xetex}. + +\end{enumerate} + +\subsection{Links for additional downloadable software} + +If you are new to \TeX{}, or otherwise need help with actually writing +\TeX{} or \LaTeX{} documents, please visit +\url{http://tug.org/begin.html} for some introductory resources. + +Links for some other tools you may consider installing: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} with + supplementary packages from \acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, for graphics + processing and conversion +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, also for graphics. + +\item[\TeX-oriented editors] There is a wide choice, and it is a matter of the + user's taste. Here is a selection in alphabetical order (a few + here are for Windows only). + \begin{itemize*} + \item \cmdname{GNU Emacs} is available natively under Windows, see + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs} with Auc\TeX\ for Windows is available in + the directory \path{tlpkg/support} on the \TL \DVD; its home + page is \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} is available from \url{http://www.ctan.org/support/LEd}. + \item \cmdname{SciTE} is available from + \url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} is free software, available from + \url{http://www.xm1math.net/texmaker/}. + \item \cmdname{TeXnicCenter} is free software, available from + \url{http://www.texniccenter.org} and in the pro\TeX{}t distribution. + \item \cmdname{TeXworks} is free software, available from + \url{http://tug.org/texworks} and installed for Windows and + \MacOSX\ as part of \TL. + \item \cmdname{Vim} is free software, available from + \url{http://www.vim.org}. + \item \cmdname{WinEdt} is shareware available though + \url{http://tug.org/winedt} or \url{http://www.winedt.com}. + \item \cmdname{WinShell} is available from \url{http://www.winshell.de}. + \end{itemize*} +\end{description} +For a much longer list of packages and programs, see +\url{http://tug.org/interest.html}. + + + +\section{Network installations} +\label{sec:netinstall} + +\TL{} has been designed to be sharable between different users on one +system, and/or between different systems on a network. With a standard +directory layout, no hard paths are configured: the locations for files +needed by \TL{} programs are found relative to the programs. You can +see this in the principal configuration file +\filename{$TEXMFMAIN/web2c/texmf.cnf}, which contains lines such as +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +This means that adding the directory for \TL{} executables for their +platform to their search path is sufficient to get a working setup. + +By the same token, you can also install \TL{} locally and then move +the entire hierarchy afterwards to a network location. + +For Windows, a sample network installation script named +\filename{w32client} can be downloaded through +\url{http://tug.org/texlive/w32client.html}. It creates settings and +menu shortcuts for using an existing \TL{} installation on a \acro{LAN}. +It also registers an uninstaller \filename{w32unclient}, available +in the same zip file. See the web page for more information. + + +\htmlanchor{tlportable} +\section{Maximally portable \protect\TL{} on DVD and USB} +\label{sec:portable-tl} + +To use \TL{} in a ``portable'' way, minimizing impact on the host +system, you should first install \TL{} to a \acro{USB} stick using the +\optname{-portable} option of the installer (see +section~\ref{sec:cmdline}). Then you can run the \filename{tl-portable} +script (Unix) or \filename{tl-portable.bat} batch file (Windows) from +the resulting installation root to start up a shell. + +You could also burn the resulting contents of the stick back to \DVD{} +if that is more convenient to (for example) give to others. + +When the \filename{tl-portable} script is run from a \DVD{} for the +first time, some files will be generated on the host system in a +directory \dirname{~/.tlportable2010}, which will take some time. On +subsequent runs, though, it will start quickly. + +The rest of the system will be unaware of \TL. If you want your editor +to be aware of this \TL, then you should start it from a second, +parallel, such \filename{tl-portable} session. + + +\section{\cmdname{tlmgr}: Managing your installation} +\label{sec:tlmgr} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} in \GUI\ mode: main window, after `Load'.} +\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\hbox to \hsize{% + \vtop{\hsize=.59\linewidth + \null % make figures align at the top + \tlpng{tlmgr-general-options}{\hsize} + \caption{\texttt{tlmgr} in \GUI\ mode: General options} + \label{fig:tlmgr-general-options} + } + \hfil + \vtop{\hsize=.39\linewidth + \null + \tlpng{tlmgr-paper-options}{\hsize} + \caption{\texttt{tlmgr} in \GUI\ mode: Paper size options} + \label{fig:tlmgr-paper-options} + } +} +\end{figure} + +\TL{} includes a program named \prog{tlmgr} for managing \TL{} after the +initial installation. The programs \prog{updmap}, \prog{fmtutil} and +\prog{texconfig} are still included and will be retained in the future, +but \prog{tlmgr} is now the preferred interface. Its capabilities +include: + +\begin{itemize*} +\item installing, updating, backing up, restoring, and uninstalling + individual packages, optionally taking dependencies into account; +\item searching for and listing packages, etc.; +\item listing, adding, and removing platforms; +\item changing installation options such as paper size and source + location (see section~\ref{sec:location}). +\end{itemize*} +\textit{Warning:} \prog{tlmgr} has not been designed for or tested +with portable installations (section~\ref{sec:portable-tl}). + +\subsection{\cmdname{tlmgr} GUI mode} +\prog{tlmgr} can be started in \GUI{} mode (figure~\ref{fig:tlmgr-gui}) with +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +or in Windows via the Start menu: \texttt{Start}, \texttt{Programs}, +\texttt{TeX Live 2010}, \texttt{TeX Live Manager}. After clicking `Load' +it displays a list of available and installed packages. This assumes of +course that the installation source is valid and reachable. + +Figures~\ref{fig:tlmgr-general-options} and~\ref{fig:tlmgr-paper-options} +show the general and paper size option screens. + +\subsection{Sample \cmdname{tlmgr} command-line invocations} + +After the initial installation, you can update your system to the latest +versions available with: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +If this makes you nervous, first try +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +or (less verbose): +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} + +This more complex example adds a collection, for the engine \XeTeX, from +a local directory: + +\begin{alltt} +> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +It generates the following output (abridged): +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/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. +\end{fverbatim} + +As you can see, \prog{tlmgr} installs dependencies, and takes care of any +necessary post-install actions, including updating the filename database +and (re)generating formats. In the above, we generated new formats for +\XeTeX. + +To describe a package (or collection or scheme): +\begin{alltt} +> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +which produces +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +Last and most important, for full documentation see +\url{http://tug.org/texlive/tlmgr.html}, or: +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + + +\section{Notes on Windows} +\label{sec:windows} + +\TL\ has a single installer which runs on both Windows and Unix. This +was only possible by dropping support for older Windows versions, so +\TL\ can now be installed only on Windows 2000 and later. + + +\subsection{Windows-specific features} +\label{sec:winfeatures} + +Under Windows, the installer does some extra things: +\begin{description} +\item[Menus and shortcuts.] A new `\TL{}' submenu of the + Start menu is installed, which contains entries for some \GUI{} + programs (\prog{tlmgr}, \prog{texdoctk}, the PS\_View (\prog{psv}) + PostScript previewer) and some documentation. PS\_View also gets a + shortcut on the desktop as a drag-and-drop target for PostScript + files. +\item[Automatic setting of environment variables.] No manual + configuration steps are required. +\item[Uninstaller.] The installer creates an entry under `Add/Remove + Programs' for \TL. The uninstall tab of the \TeX\ Live Manager \GUI\ + refers to this. +\end{description} + +\subsection{Additional software included on Windows} + +To be complete, a \TL installation needs support packages that are not +commonly found on a Windows machine. \TL{} provides the missing +pieces: +\begin{description} +\item[Perl and Ghostscript.] Because of the importance of Perl and + Ghostscript, \TL{} includes `hidden' copies of these + programs. \TL{} programs that need them know where to find them, + but they don't betray their presence through environment variables + or registry settings. They aren't full-scale installations, and + shouldn't interfere with any system installations of Perl or + Ghostscript. + +\item[PS\_View.] Also installed is PS\_View, a \PS{} and \acro{PDF} + viewer; see figure~\ref{fig:psview}. + +\begin{figure}[tb] +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: very high magnifications available!}\label{fig:psview} +\end{figure} + +\item[dviout.] Also installed is \prog{dviout}, a \acro{DVI} viewer. + At first, when you preview files with \cmdname{dviout}, it will create + fonts, because screen fonts were not installed. After a while, you + will have created most of the fonts you use, and you will rarely see + the font-creation window. More information can be found in the + (highly recommended) on-line help. + +\item[\TeX{}works.] \TeX{}works is a \TeX-oriented editor with + an integrated \acro{PDF} viewer. + +\item[Command-line tools.] A number of Windows ports of common Unix + command-line programs are installed along with the usual \TL{} + binaries. These include \cmdname{gzip}, \cmdname{unzip} and the + utilities from the \cmdname{xpdf} suite (\cmdname{pdfinfo}, + \cmdname{pdffonts}, \ldots). The \cmdname{xpdf} viewer itself is not + available for Windows. Instead, you can download the Sumatra + \acro{PDF} viewer, which is based on \cmdname{xpdf}, from + \url{http://blog.kowalczyk.info/software/sumatrapdf}, among other options. + +\item[fc-list, fc-cache, \ldots] The tools from the fontconfig library allow + \XeTeX{} to handle system fonts on Windows. You can use + \prog{fc-list} to determine the font names to pass to \XeTeX's + extended \cs{font} command. If necessary, run \prog{fc-cache} + first to update font information. + +\end{description} + + +\subsection{User Profile is Home} +\label{sec:winhome} + +The Windows counterpart of a Unix home directory is the +\verb|%USERPROFILE%| directory. Under Windows \acro{XP} and Windows 2000, this +is usually \verb|C:\Documents and Settings\|, and under +Windows Vista \verb|C:\Users\|. In the +\filename{texmf.cnf} file, and \KPS{} in general, \verb|~| will expand +appropriately on both Windows and Unix. + + +\subsection{The Windows registry} +\label{sec:registry} + +Windows stores nearly all configuration data in its registry. The +registry contains a set of hierarchically organized keys, with several +root keys. The most important ones for installation programs are +\path{HKEY_CURRENT_USER} and \path{HKEY_LOCAL_MACHINE}, \path{HKCU} and +\path{HKLM} in short. The \path{HKCU} part of the registry is in the +user's home directory (see section~\ref{sec:winhome}). \path{HKLM} is +normally in a subdirectory of the Windows directory. + +In some cases, system information could be obtained from environment +variables but for other information, for example the location of +shortcuts, it is necessary to consult the registry. Setting environment +variables permanently also requires registry access. + + +\subsection{Windows permissions} +\label{sec:winpermissions} + +In later versions of Windows, a distinction is made between regular +users and administrators, where only the latter have free access to the +entire operating system. In practice, though, you could better describe +these classes of users as unprivileged users and normal users: being an +administrator is the rule, not the exception. Nevertheless, we have made +an effort to make \TL{} installable without administrative privileges. + +If the user is an administrator, there is an option to install for all +users. If this option is chosen, shortcuts are created for all users, +and the system environment is modified. Otherwise, shortcuts and menu +entries are created for the current user, and the user environment is +modified. + +Regardless of administrator status, the default root of \TL{} proposed +by the installer is always under \verb|%SystemDrive%|. The installer +always tests whether the root is writable for the current user. + +A problem may arise if the user is not an administrator and \TeX{} +already exists in the search path. Since the effective path +consists of the system path followed by the user path, the new \TL{} +would never get precedence. As a safeguard, the installer creates a +shortcut to the command-prompt in which the new \TL{} binary +directory is prepended to the local search path. The new \TL{} will +be always usable from within such a command-prompt. The shortcut for +\TeX{}works, if installed, also prepends \TL{} to the search path, so it +should also be immune to this path problem. + +For Vista there is another twist: even if you are logged in as +administrator, you need to explicitly ask for administrator +privileges. In fact, there is not much point in logging in as +administrator. Instead, right-clicking on the program or shortcut +that you want to run usually gives you a choice `Run as +administrator'. + +\section{A user's guide to Web2C} + +\Webc{} is an integrated collection of \TeX-related programs: \TeX{} +itself, \MF{}, \MP, \BibTeX{}, etc. It is the heart of \TL{}. The home +page for \Webc{}, with the current manual and more, is +\url{http://tug.org/web2c}. + +A bit of history: The original implementation was by Tomas Rokicki who, +in 1987, developed a first \TeX{}-to-C system based on change files +under Unix, which were primarily the original work of Howard Trickey and +Pavel Curtis. Tim Morgan became the maintainer of the system, and +during this period the name changed to Web-to-C\@. In 1990, Karl Berry +took over the work, assisted by dozens of additional contributors, and +in 1997 he handed the baton to Olaf Weber, who returned it to Karl in +2006. + +The \Webc{} system runs on Unix, 32-bit Windows systems, \MacOSX{}, and +other operating systems. It uses Knuth's original sources for \TeX{} and +other basic programs written in the \web{} literate programming system +and translates them into C source code. The core \TeX{} programs +handled in this way are: + +\begin{cmddescription} +\item[bibtex] Maintaining bibliographies. +\item[dvicopy] Expands virtual font references in \dvi{} files. +\item[dvitomp] \dvi{} to MPX (MetaPost pictures). +\item[dvitype] \dvi{} to human-readable text. +\item[gftodvi] Generic font proofsheets. +\item[gftopk] Generic to packed fonts. +\item[gftype] GF to human-readable text. +\item[mf] Creating typeface families. +\item[mft] Prettyprinting \MF{} source. +\item[mpost] Creating technical diagrams. +\item[patgen] Creating hyphenation patterns. +\item[pktogf] Packed to generic fonts. +\item[pktype] PK to human-readable text. +\item[pltotf] Plain text property list to TFM. +\item[pooltype] Display \web{} pool files. +\item[tangle] \web{} to Pascal. +\item[tex] Typesetting. +\item[tftopl] TFM to plain text property list. +\item[vftovp] Virtual font to virtual property list. +\item[vptovf] Virtual property list to virtual font. +\item[weave] \web{} to \TeX. +\end{cmddescription} + +\noindent The precise functions and syntax of these programs are +described in the documentation of the individual packages and of \Webc{} +itself. However, knowing a few principles governing the whole family of +programs will help you take advantage of your \Webc{} installation. + +All programs honor these standard \GNU options: +\begin{ttdescription} +\item[-{}-help] print basic usage summary. +\item[-{}-verbose] print detailed progress report. +\item[-{}-version] print version information, then exit. +\end{ttdescription} + +For locating files the \Webc{} programs use the path searching library +\KPS{} (\url{http://tug.org/kpathsea}). This library uses a combination +of environment variables and a configuration files to optimize searching +the (huge) collection of \TeX{} files. \Webc{} can look at many +directory trees simultaneously, which is useful in maintaining \TeX's +standard distribution and local and personal extensions in distinct +trees. To speed up file searches, the root of each tree has a file +\file{ls-R}, containing an entry showing the name and relative pathname +for all files under that root. + + +\subsection{Kpathsea path searching} +\label{sec:kpathsea} + +Let us first describe the generic path searching mechanism of the \KPS{} +library. + +We call a \emph{search path} a colon- or semicolon\hyph sepa\-rated list +of \emph{path elements}, which are basically directory names. A +search path can come from (a combination of) many sources. To look up +a file \samp{my-file} along a path \samp{.:/dir}, \KPS{} checks each +element of the path in turn: first \file{./my-file}, then +\file{/dir/my-file}, returning the first match (or possibly all +matches). + +In order to adapt optimally to all operating systems' conventions, on +non-Unix systems \KPS{} can use filename separators different from +colon (\samp{:}) and slash (\samp{/}). + +To check a particular path element \var{p}, \KPS{} first checks if a +prebuilt database (see ``Filename data\-base'' on +page~\pageref{sec:filename-database}) applies to \var{p}, i.e., if the +database is in a directory that is a prefix of \var{p}. If so, the path +specification is matched against the contents of the database. + +If the database does not exist, or does not apply to this path +element, or contains no matches, the filesystem is searched (if this +was not forbidden by a specification starting with \samp{!!}\ and if +the file being searched for must exist). \KPS{} constructs the list +of directories that correspond to this path element, and then checks +in each for the file being sought. + +The ``file must exist'' condition comes into play with \samp{.vf} files and +input files read by \TeX's \cs{openin} command. Such files may not +exist (e.g., \file{cmr10.vf}), and so it would be wrong to search the +disk for them. Therefore, if you fail to update \file{ls-R} when you +install a new \samp{.vf} file, it will never be found. +Each path element is checked in turn: first the database, then the +disk. If a match is found, the search stops and the result is +returned. + +Although the simplest and most common path element is a directory +name, \KPS{} supports additional features in search paths: layered +default values, environment variable names, config file values, users' +home directories, and recursive subdirectory searching. Thus, we say +that \KPS{} \emph{expands} a path element, meaning it transforms all +the specifications into basic directory name or names. This is +described in the following sections in the same order as it takes +place. + +Note that if the filename being searched for is absolute or explicitly +relative, i.e., starts with \samp{/} or \samp{./} or \samp{../}, +\KPS{} simply checks if that file exists. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Path sources} +\label{sec:path-sources} + +A search path can come from many sources. In the order in which +\KPS{} uses them: + +\begin{enumerate} +\item + A user-set environment variable, for instance, \envname{TEXINPUTS}\@. + Environment variables with a period and a program name appended + override; e.g., if \samp{latex} is the name of the program being run, + then \envname{TEXINPUTS.latex} will override \envname{TEXINPUTS}. +\item + A program-specific configuration file, for exam\-ple, a line + \samp{S /a:/b} in \cmdname{dvips}'s \file{config.ps}. +\item A \KPS{} configuration file \file{texmf.cnf}, containing a line like + \samp{TEXINPUTS=/c:/d} (see below). +\item The compile-time default. +\end{enumerate} +\noindent You can see each of these values for a given search path by +using the debugging options (see ``Debugging actions'' on +page~\pageref{sec:debugging}). + +\subsubsection{Config files} + +\KPS{} reads \emph{runtime configuration files} named \file{texmf.cnf} +for search path and other definitions. The search path used to look +for these files is named \envname{TEXMFCNF}, but we do not recommend +setting this (or any) environment variable. + +Instead, normal installation results in a file +\file{.../2010/texmf.cnf}. If you must make changes to the defaults +(not normally necessary), this is the place to put them. The main +configuration file is in \file{.../2010/texmf/web2c/texmf.cnf}. You +should not edit this latter file, as your changes will be lost when the +distributed version is updated. + +\emph{All} \file{texmf.cnf} files in the search path will be read and +definitions in earlier files override those in later files. For +example, with a search path of \verb|.:$TEXMF|, values from +\file{./texmf.cnf} override those from \verb|$TEXMF/texmf.cnf|. + +\begin{itemize} +\item + Comments start with \code{\%} and continue to the end of the line. +\item + Blank lines are ignored. +\item + A \bs{} at the end of a line acts as a continuation character, + i.e., the next line is appended. Whitespace at the beginning of + continuation lines is not ignored. +\item + Each remaining line has the form: +\begin{alltt} + \var{variable}[.\var{progname}] [=] \var{value} +\end{alltt}% + where the \samp{=} and surrounding whitespace are optional. +\item + The \ttvar{variable} name may contain any character other + than whitespace, \samp{=}, or \samp{.}, but sticking to + \samp{A-Za-z\_} is safest. +\item + If \samp{.\var{progname}} is present, the definition only + applies if the program that is running is named + \texttt{\var{progname}} or \texttt{\var{progname}.exe}. This allows + different flavors of \TeX{} to have different search paths, for + example. +\item \var{value} may contain any characters except + \code{\%} and \samp{@}. The + \code{\$\var{var}.\var{prog}} feature is not available on the + right-hand side; instead, you must use an additional variable. A + \samp{;}\ in \var{value} is translated to \samp{:}\ if + running under Unix; this is useful to be able to have a single + \file{texmf.cnf} for Unix, \acro{MS-DOS} and Windows systems. +\item + All definitions are read before anything is expanded, so + variables can be referenced before they are defined. +\end{itemize} +A configuration file fragment illustrating most of these points is +\ifSingleColumn +shown below: + +\verbatiminput{examples/ex5.tex} +\else +shown in Figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Path expansion} +\label{sec:path-expansion} + + +\KPS{} recognizes certain special characters and constructions in +search paths, similar to those available in Unix shells. As a +general example, the complex path, +\verb+~$USER/{foo,bar}//baz+, expands to all subdirectories under +directories \file{foo} and \file{bar} in \texttt{\$USER}'s home +directory that contain a directory or file \file{baz}. These +expansions are explained in the sections below. +%$ +\subsubsection{Default expansion} +\label{sec:default-expansion} + +If the highest-priority search path (see ``Path sources'' on +page~\pageref{sec:path-sources}) contains an \emph{extra colon} (i.e., +leading, trailing, or doubled), \KPS{} inserts at that point the +next-highest-prio\-rity search path that is defined. If that inserted +path has an extra colon, the same happens with the next highest. For +example, given an environment variable setting + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +and a \code{TEXINPUTS} value from \file{texmf.cnf} of + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +then the final value used for searching will be: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Since it would be useless to insert the default value in more than one +place, \KPS{} changes only one extra \samp{:}\ and leaves any others in +place. It checks first for a leading \samp{:}, then a trailing +\samp{:}, then a doubled \samp{:}. + +\subsubsection{Brace expansion} + +A useful feature is brace expansion, which means that, for instance, +\verb+v{a,b}w+ expands to \verb+vaw:vbw+. Nesting is allowed. +This is used to implement multiple \TeX{} hierarchies, by +assigning a brace list to \code{\$TEXMF}. +For example, in \file{texmf.cnf}, the following definition +(approximately; there are actually even more trees) is made: +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +Using this you can then write something like +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +which means that, after looking in the current directory, the +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} +and \code{\$TEXMFMAIN/tex} trees \emph{only}) will be searched (the +last two use using \file{ls-R} data base files). It is a convenient +way for running two parallel \TeX{} structures, one ``frozen'' (on a +\CD, for instance) and the other being continuously updated with new +versions as they become available. By using the \code{\$TEXMF} +variable in all definitions, one is sure to always search the +up-to-date tree first. + +\subsubsection{Subdirectory expansion} +\label{sec:subdirectory-expansion} + +Two or more consecutive slashes in a path element following a directory +\var{d} is replaced by all subdirectories of \var{d}: first those +subdirectories directly under \var{d}, then the subsubdirectories under +those, and so on. At each level, the order in which the directories are +searched is \emph{unspecified}. + +If you specify any filename components after the \samp{//}, only +subdirectories with matching components are included. For example, +\samp{/a//b} expands into directories \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, and so on, but not \file{/a/b/c} or \file{/a/1}. + +Multiple \samp{//} constructs in a path are possible, but +\samp{//} at the beginning of a path is ignored. + +\subsubsection{List of special characters and their meaning: a summary} + +The following list summarizes the special characters in \KPS{} +configuration files. + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Separator in path specification; at the beginning or + the end of a path it substitutes the default path expansion.\par +\item[\CODE{;}] Separator on non-Unix systems (acts like \code{:}). +\item[\CODE{\$}] Variable expansion. +\item[\CODE{\string~}] Represents the user's home directory. +\item[\CODE{\char`\{...\char`\}}] Brace expansion. +\item[\CODE{//}] Subdirectory expansion (can occur anywhere in + a path, except at its beginning). +\item[\CODE{\%}] Start of comment. +\item[\CODE{\bs}] Continuation character (allows multi-line entries). +\item[\CODE{!!}] Search \emph{only} database to locate file, \emph{do + not} search the disk. +\end{ttdescription} + + +\subsection{Filename databases} +\label{sec:filename-database} + +\KPS{} goes to some lengths to minimize disk accesses for searches. +Nevertheless, at installations with enough directories, searching each +possible directory for a given file can take an excessively long time +(this is especially true if many hundreds of font directories have to +be traversed.) Therefore, \KPS{} can use an externally-built plain text +``database'' file named \file{ls-R} that maps files to directories, +thus avoiding the need to exhaustively search the disk. + +A second database file \file{aliases} allows you to give additional +names to the files listed in \file{ls-R}. This can be helpful to +confirm to \acro{DOS} 8.3 filename conventions in source files. + +\subsubsection{The filename database} +\label{sec:ls-R} + +As explained above, the name of the main filename database must be +\file{ls-R}. You can put one at the root of each \TeX{} hierarchy in +your installation that you wish to be searched (\code{\$TEXMF} by +default). \KPS{} looks for +\file{ls-R} files along the \code{TEXMFDBS} path. + +The recommended way to create and maintain \samp{ls-R} is to run the +\code{mktexlsr} script included with the distribution. It is invoked +by the various \samp{mktex}\dots\ scripts. In principle, this script +just runs the command +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +presuming your system's \code{ls} produces the right output format +(\GNU \code{ls} is all right). To ensure that the database is +always up-to-date, it is easiest to rebuild it regularly via +\code{cron}, so that it is automatically updated when the installed +files change, such as after installing or updating a \LaTeX{} package. + +If a file is not found in the database, by default \KPS{} goes ahead +and searches the disk. If a particular path element begins with +\samp{!!}, however, \emph{only} the database will be searched for that +element, never the disk. + + +\subsubsection{kpsewhich: Standalone path searching} +\label{sec:invoking-kpsewhich} + +The \texttt{kpsewhich} program exercises path searching independent of any +particular application. This can be useful as a sort of \code{find} +program to locate files in \TeX{} hierarchies (this is used heavily in +the distributed \samp{mktex}\dots\ scripts). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +The options specified in \ttvar{option} start with either \samp{-} +or \samp{-{}-}, and any unambiguous abbreviation is accepted. + +\KPS{} looks up each non-option argument on the command line as a +filename, and returns the first file found. There is no option to +return all the files with a particular name (you can run the Unix +\samp{find} utility for that). + +The most common options are described next. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Set the resolution to \ttvar{num}; this only affects \samp{gf} + and \samp{pk} lookups. \samp{-D} is a synonym, for compatibility + with \cmdname{dvips}. Default is 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Set the format for lookup to \ttvar{name}. By default, the + format is guessed from the filename. For formats which do not have + an associated unambiguous suffix, such as \MP{} support files and + \cmdname{dvips} configuration files, you have to specify the name as + known to \KPS{}, such as \texttt{tex} or \texttt{enc files}. Run + \texttt{kpsewhich -{}-help} for a list. + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Set the mode name to \ttvar{string}; this only affects \samp{gf} + and \samp{pk} lookups. No default: any mode will be found. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Do everything possible to find the files, notably including + searching the disk. By default, only the \file{ls-R} database is + checked, in the interest of efficiency. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Search along the path \ttvar{string} (colon-separated as usual), + instead of guessing the search path from the filename. \samp{//} and + all the usual expansions are supported. The options \samp{-{}-path} + and \samp{-{}-format} are mutually exclusive. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Set the program name to \texttt{\var{name}}. + This can affect the search paths via the \texttt{.\var{progname}} + feature. + The default is \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + shows the path used for file lookups of file type \texttt{\var{name}}. + Either a filename extension (\code{.pk}, \code{.vf}, etc.) or a + name can be used, just as with \samp{-{}-format} option. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + sets the debugging options to \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Examples of use} +\label{sec:examples-of-use} + +Let us now have a look at \KPS{} in action. Here's a straightforward search: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +We are looking for the file \file{article.cls}. Since the \samp{.cls} +suffix is unambiguous we do not need to specify that we want to look for a +file of type \optname{tex} (\TeX{} source file directories). We find it in +the subdirectory \file{tex/latex/base} below the \samp{texmf-dist} \TL\ +directory. Similarly, all of the following are found without problems +thanks to their unambiguous suffix. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +By the way, that last is a \BibTeX{} bibliography database for +\textsl{TUGboat} articles. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Font bitmap glyph files of type \file{.pk} are used by display +programs like \cmdname{dvips} and \cmdname{xdvi}. Nothing is returned in +this case since there are no pre-generated Computer Modern \samp{.pk} +files in \TL{}\Dash the Type~1 variants are used by default. +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +For these fonts (a phonetic alphabet from the University of Washington) +we had to generate \samp{.pk} files, and since the default \MF{} mode on +our installation is \texttt{ljfour} with a base resolution of 600\dpi{} +(dots per inch), this instantiation is returned. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +In this case, when specifying that we are interested in a resolution +of 300\dpi{} (\texttt{-dpi=300}) we see that no such font is available on +the system. A program like \cmdname{dvips} or \cmdname{xdvi} would +go off and actually build the required \texttt{.pk} files +using the script \cmdname{mktexpk}. + +Next we turn our attention to \cmdname{dvips}'s header and configuration +files. We first look at one of the commonly used files, the general +prologue \file{tex.pro} for \TeX{} support, before turning our attention +to the generic configuration file (\file{config.ps}) and the \PS{} font +map \file{psfonts.map}\Dash as of 2004, map and encoding files have +their own search paths and new location in \dirname{texmf} trees. As +the \samp{.ps} suffix is ambiguous we have to specify explicitly which +type we are considering (\optname{dvips config}) for the file +\texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +We now take a closer look at the \acro{URW} Times \PS{} support +files. The prefix for these in the standard font naming scheme is +\samp{utm}. The first file we look at is the configuration file, +which contains the name of the map file: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +The contents of that file is +\begin{alltt} + p +utm.map +\end{alltt} +which points to the file \file{utm.map}, which we want to +locate next. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +This map file defines the file names of the Type~1 \PS{} fonts in +the URW collection. Its contents look like (we only show part of the +lines): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +It should be evident from these examples how you can easily locate the +whereabouts of a given file. This is especially important if you suspect +that the wrong version of a file is picked up somehow, since +\cmdname{kpsewhich} will show you the first file encountered. + +\subsubsection{Debugging actions} +\label{sec:debugging} + +Sometimes it is necessary to investigate how a program resolves file +references. To make this practical, \KPS{} offers various levels of +debugging output: + +\begin{ttdescription} +\item[\texttt{\ 1}] \texttt{stat} calls (disk lookups). When running + with an up-to-date \file{ls-R} database this should almost give no + output. +\item[\texttt{\ 2}] References to hash tables (such as \file{ls-R} + databases, map files, configuration files). +\item[\texttt{\ 4}] File open and close operations. +\item[\texttt{\ 8}] General path information for file types + searched by \KPS. This is useful to find out where a particular + path for the file was defined. +\item[\texttt{16}] Directory list for each path element (only relevant + for searches on disk). +\item[\texttt{32}] File searches. +\item[\texttt{64}] Variable values. +\end{ttdescription} +A value of \texttt{-1} will set all the above options; in practice, +this is usually the most convenient. + +Similarly, with the \cmdname{dvips} program, by setting a combination of +debug switches, one can follow in detail where files are being picked up +from. Alternatively, when a file is not found, the debug trace shows in +which directories the program looks for the given file, so that one can +get an indication what the problem~is. + +Generally speaking, as most programs call the \KPS{} library +internally, one can select a debug option by using the +\envname{KPATHSEA\_DEBUG} environment variable, and setting it to (a +combination of) values as described in the above list. + +(Note for Windows users: it is not easy to redirect +all messages to a file in this system. For diagnostic purposes +you can temporarily \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Let us consider, as an example, a small \LaTeX{} source file, +\file{hello-world.tex}, which contains the following input. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +This little file only uses the font \file{cmr10}, so let us look at +how \cmdname{dvips} prepares the \PS{} file (we want to use the Type~1 +version of the Computer Modern fonts, hence the option \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In this case we have combined \cmdname{dvips}'s debug class 4 (font +paths) with \KPS's path element expansion (see \cmdname{dvips} Reference +Manual, \OnCD{texmf/doc/dvips/dvips.pdf}). +The output (slightly rearranged) appears in +Figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} starts by locating its working files. First, +\file{texmf.cnf} is found, which gives the definitions of the search +paths for the other files, then the file database \file{ls-R} (to +optimize file searching) and the file \file{aliases}, which makes it +possible to declare several names (e.g., a short \acro{DOS}-like 8.3 and +a more natural longer version) for the same file. Then \cmdname{dvips} +goes on to find the generic configuration file \file{config.ps} +before looking for the customization file \file{.dvipsrc} (which, in +this case is \emph{not found}). Finally, \cmdname{dvips} locates the +config file for the Computer Modern \PS{} fonts \file{config.cms} +(this was initiated with the \texttt{-Pcms} option on the \cmdname{dvips} +command). This file contains the list of the map files which +define the relation between the \TeX{}, \PS{} and file system +names of the fonts. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} thus goes on to find all these files, plus the generic +map file \file{psfonts.map}, which is always loaded (it contains +declarations for commonly used \PS{} fonts; see the last part of +Section \ref{sec:examples-of-use} for more details about \PS{} map +file handling). + +At this point \cmdname{dvips} identifies itself to the user: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Then it goes on to look for the prolog file \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Then it goes on to look for the prolog file \file{texc.pro} (see +Figure~\ref{fig:dvipsdbgb}). +\fi + +After having found the file in question, \cmdname{dvips} outputs +the date and time, and informs us that it will generate the +file \file{hello-world.ps}, then that it needs the font file +\file{cmr10}, and that the latter is declared as ``resident'' (no +bitmaps needed): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Now the search is on for the file \file{cmr10.tfm}, which is found, +then a few more prolog files (not shown) are referenced, and finally +the Type~1 instance \file{cmr10.pfb} of the font is located and +included in the output file (see last line). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Runtime options} + +Another useful feature of \Webc{} is its possibility to control a number +of memory parameters (in particular, array sizes) via the runtime file +\file{texmf.cnf} read by \KPS{}. The memory settings can be found in +Part~3 of that file in the \TL{} distribution. The more important +are: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + Total words of memory available, for + \TeX{}, \MF{} and \MP. You must make a new format file for each + different setting. For instance, you could generate a ``huge'' + version of \TeX{}, and call the format file \texttt{hugetex.fmt}. + Using the standard way of specifying the program name used by \KPS{}, + the particular value of the \texttt{main\_memory} variable will then + be read from \file{texmf.cnf}. +\item[\texttt{extra\_mem\_bot}] + Extra space for ``large'' \TeX{} data structures: + boxes, glue, breakpoints, etc. Especially useful if you use + \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Number of words for font information available for \TeX. This + is more or less the total size of all \acro{TFM} files read. +\item[\texttt{hash\_extra}] + Additional space for the hash table of control sequence names. + Only $\approx$10,000 control sequences can be stored in the main + hash table; if you have a large book with numerous cross-references, + this might not be enough. The default value of + \texttt{hash\_extra} is \texttt{50000}. +\end{ttdescription} + +\noindent Of course, this facility is no substitute for truly dynamic +arrays and memory allocation, but since these are extremely difficult to +implement in the present \TeX{} source, these runtime parameters provide +a practical compromise allowing some flexibility. + + +\begin{comment} +\section{Building on a new Unix platform} + +If you have a platform for which executables are not included, you will +need to compile \TeX{} and friends. This is not as hard as it +sounds. What you need is all in the directory \texttt{source} in the +distribution. + +\subsection{Prerequisites} + +You will need at least 100 megabytes of disk space to compile all of +\TeX{} and its support programs. You'll also need an \acro{ANSI} C +compiler, a \cmdname{make} utility, a lexical scanner, and a parser +generator. We recommend the \GNU version of these programs +(\cmdname{gcc}, \GNU \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). You may be able to work with other C compilers and +\cmdname{make} programs, but you will need a good understanding of +building Unix programs to sort out problems. + +Also, the command \texttt{uname} must return a sensible value. + + +\subsection{Configuration} + +To begin, perform a normal installation of \TL{} to your disk (see +section~\ref{sec:install-disk} on +\p.\pageref{sec:install-disk}). You may wish to skip installing +all of the prebuilt binaries. + +Then, unpack the source from the compressed \texttt{tar} file in the +directory \dirname{source} to your disk and change directory to where +you placed it. + +Next, run \cmdname{configure} with a command line like this: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +The \optname{-prefix} directory is the one where you installed the +support tree; the directory layout will be as follows (where \$TEXDIR +stands for the directory you chose): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & main tree with fonts,\\ + & \qquad macros, etc\\ + \dirname{$TEXDIR/man} & Unix manual pages\\ + \dirname{$TEXDIR/info} & \GNU style Info manuals\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaries\\ +\end{tabular} +%$ + +If you want to leave out the \dirname{$PLATFORM} directory level, +i.e., put the binaries directly into \dirname{$TEXDIR/bin}, specify +the \verb|--disable-multiplatform| option to \cmdname{configure}. + +Have a look at the output of \verb|./configure --help| for more +options you can use. For example, you can skip building of \OMEGA{} and +\eTeX{}. + + +\subsection{Running \cmdname{make}} + +Make sure the shell variable or option \texttt{noclobber} is not set. +Then, run the main \cmdname{make} like this: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +and relax\ldots + +Alternatively, you want to log all the output, as in: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Before you believe that everything went ok, please check the log file +for errors: \GNU \cmdname{make} always uses the string \samp{***} +whenever a command fails. Also, check if all the programs were built: + +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +The result should be over 200 (you can check the exact number with the +\dirname{bin} directory contents in the distribution). + +If you need special privileges for \texttt{make install}, you can +separate the \samp{make world} into two different runs, like this: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +After you've installed your new binaries, you should follow the normal +post-installation procedures, given in section~\ref{sec:postinstall} +(\p.\pageref{sec:postinstall}). + +Also, if you'd like to make your binaries available to others, please +contact us. We'll be happy to put them on the \TL\ web pages. +\end{comment} + +\htmlanchor{ack} +\section{Acknowledgements} + +\TL{} is a joint effort by virtually all of the \TeX{} user groups. +This edition of \TL{} was overseen by Karl Berry. The other principal +contributors, past and present, are listed below. + +\begin{itemize*} + +\item The English, German, Dutch, and Polish \TeX{} user groups +(\acro{TUG}, \acro{DANTE} e.V., \acro{NTG}, and \acro{GUST}, +respectively), which provide the necessary technical and administrative +infrastructure. Please join the \TeX\ user group near you! (See +\url{http://tug.org/usergroups.html}.) + +\item The \acro{CTAN} team, notably Robin Fairbairns, Jim Hef{}feron, +and Rainer Sch\"opf, which distributes the \TL{} images and provides the +common infrastructure for package updates, upon which \TL{} depends. + +\item Nelson Beebe, for making many platforms available to \TL\ +developers, and his own comprehensive testing. + +\item John Bowman, for making many changes to his advanced graphics +program Asymptote to make it work in \TL. + +\item Peter Breitenlohner and the \eTeX\ team for the stable foundation +of future \TeX's, and Peter specifically for stellar help with \GNU\ +autotools usage throughout \TL. + +\item Jin-Hwan Cho and all of the DVIPDFM$x$ team, for their +excellent driver and responsiveness to configuration issues. + +\item Thomas Esser, without whose marvelous \teTeX{} package \TL{} +would have never existed. + +\item Michel Goossens, who co-authored the original documentation. + +\item Eitan Gurari, whose \TeX4ht is used to create the \HTML{} +version of this documentation, and who worked tirelessly to improve it +at short notice, every year. Eitan prematurely passed away in June +2009, and we dedicate this documentation to his memory. + +\item Hans Hagen, for much testing and making his \ConTeXt\ format +(\url{http://pragma-ade.com}) work within \TL's framework. + +\item \Thanh, Martin Schr\"oder, and the pdf\TeX\ team +(\url{http://pdftex.org}) for continuing enhancements of \TeX's +abilities. + +\item Hartmut Henkel, for significant development contributions to +pdf\TeX\, Lua\TeX, and more. + +\item Taco Hoekwater, for major renewed development efforts on MetaPost and +(Lua)\TeX\ (\url{http://luatex.org}) itself, incorporating +\ConTeXt\ into \TL, giving Kpathsea multi-threaded functionality, and +much more. + +\item Pawe{\l} Jackowski, for the Windows installer \cmdname{tlpm}, +and Tomasz {\L}uczak, for \cmdname{tlpmgui}, used in past releases. + +\item Akira Kakuto, for providing the Windows +binaries from his \acro{W32TEX} distribution for Japanese \TeX\ +(\url{http://w32tex.org}), and many other development contributions. + +\item Jonathan Kew, for developing the remarkable \XeTeX{} engine and +taking the time and trouble to integrate it in \TL{}, as well as the +initial version of the Mac\TeX\ installer, and also for our recommended +front-end \TeX{}works. + +\item Dick Koch, for maintaining Mac\TeX\ (\url{http://tug.org/mactex}) +in very close tandem with \TL{}, and for his great good cheer in doing +so. + +\item Reinhard Kotucha, for major contributions to the \TL{} 2008 +infrastructure and installer, as well as Windows research efforts, the +\texttt{getnonfreefonts} script, and more. + +\item Siep Kroonenberg, also for major contributions to the \TL{} 2008 +infrastructure and installer, especially on Windows, and for the bulk of +work updating this manual describing those features. + +\item Heiko Oberdiek, for the \pkgname{epstopdf} package and many +others, compressing the huge \pkgname{pst-geo} data files so we could +include them, and most of all, for his remarkable work on +\pkgname{hyperref}. + +\item Petr Ol\v{s}ak, who coordinated and checked all the Czech and Slovak +material very carefully. + +\item Toshio Oshima, for his \cmdname{dviout} previewer for Windows. + +\item Manuel P\'egouri\'e-Gonnard, for helping with package updates, +documentation improvements, and \cmdname{texdoc} development. + +\item Fabrice Popineau, for the original Windows support in \TL{} and +work on the French documentation. + +\item Norbert Preining, the principal architect of the \TL{} 2008 +infrastructure and installer, and also for coordinating the Debian +version of \TL{} (together with Frank K\"uster), making many suggestions +along the way. + +\item Sebastian Rahtz, for originally creating \TL{} and maintaining it +for many years. + +\item Phil Taylor, for setting up the BitTorrent downloads. + +\item Tomasz Trzeciak, for wide-ranging help with Windows. + +\item Vladimir Volovich, for substantial help with porting and other +maintenance issues, and especially for making it feasible to include +\cmdname{xindy}. + +\item Staszek Wawrykiewicz, the principal tester for all of \TL{}, +and coordinator of the many major Polish contributions: fonts, Windows +installation, and more. + +\item Olaf Weber, for his patient maintenance of \Webc. + +\item Gerben Wierda, for creating and maintaining the original \MacOSX\ +support, and much integration and testing. + +\item Graham Williams, on whose work the \TeX\ Catalogue of packages depends. + +\end{itemize*} + +Builders of the binaries: +Alan Braslau (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}), +Peter Breitenlohner (\pkgname{x86\_64-linux}), +Karl Berry (\pkgname{i386-linux}, \pkgname{sparc-linux}), +Ken Brown (\pkgname{i386-cygwin}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}), +Nikola Le\v{c}i\'c (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +Norbert Preining (\pkgname{alpha-linux}), +Jukka Salmi (\pkgname{i386-netbsd}), +Thomas Schmitz (\pkgname{powerpc-linux}), +Apostolos Syropoulos (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix}). +For information on the \TL{} build process, see +\url{http://tug.org/texlive/build.html}. + +Current documentation translators: +Boris Veytsman (Russian), +Jjgod Jiang, Jinsong Zhao, Yue Wang, \& Helin Gai (Chinese), +Klaus H\"oppner (German), +Manuel P\'egouri\'e-Gonnard (French), +Marco Pallante (Italian), +Nikola Le\v{c}i\'c (Serbian), +Petr Sojka \& Jan Busa (Czech\slash Slovak), +Staszek Wawrykiewicz (Polish). The \TL{} documentation web page +is \url{http://tug.org/texlive/doc.html}. + +Of course the most important acknowledgement must go to Donald Knuth, +first for inventing \TeX, and then for giving it to the world. + + + +\section{Release history} +\label{sec:history} + +\subsection{Past} + +Discussion began in late 1993 when the Dutch \TeX{} Users Group was +starting work on its 4All\TeX{} \CD{} for \acro{MS-DOS} users, and it +was hoped at that time to issue a single, rational, \CD{} for all +systems. This was too ambitious a target for the time, but it did spawn +not only the very successful 4All\TeX{} \CD{}, but also the \acro{TUG} +Technical Council working group on a \emph{\TeX{} Directory Structure} +(\url{http://tug.org/tds}), which specified how to create consistent and +manageable collections of \TeX{} support files. A complete draft of the +\TDS{} was published in the December 1995 issue of \textsl{TUGboat}, and +it was clear from an early stage that one desirable product would be a +model structure on \CD{}. The distribution you now have is a very direct +result of the working group's deliberations. It was also clear that the +success of the 4All\TeX{} \CD{} showed that Unix users would benefit +from a similarly easy system, and this is the other main strand of +\TL. + +We first undertook to make a new Unix-based \TDS{} \CD{} in the autumn +of 1995, and quickly identified Thomas Esser's \teTeX{} as the ideal +setup, as it already had multi-platform support and was built with +portability across file systems in mind. Thomas agreed to help, and work +began seriously at the start of 1996. The first edition was released in +May 1996. At the start of 1997, Karl Berry completed a major new release +of Web2c, which included nearly all the features which Thomas Esser had +added in \teTeX, and we decided to base the 2nd edition of the \CD{} on +the standard \Webc, with the addition of \teTeX's \texttt{texconfig} +script. The 3rd edition of the \CD{} was based on a major revision of +\Webc, 7.2, by Olaf Weber; at the same time, a new revision of \teTeX +was being made, and \TL{} included almost all of its features. The +4th edition followed the same pattern, using a new version of \teTeX, +and a new release of \Webc{} (7.3). The system now included a complete +Windows setup. + +For the 5th edition (March 2000) many parts of the \CD{} were revised +and checked, updating hundreds of packages. Package details were stored +in XML files. But the major change for \TeX\ Live 5 was that all +non-free software was removed. Everything in \TL{} is now intended +to be compatible with the Debian Free Software Guidelines +(\url{http://www.debian.org/intro/free}); we have done our best to check +the license conditions of all packages, but we would very much +appreciate hearing of any mistakes. + +The 6th edition (July 2001) had much more material updated. The major +change was a new install concept: the user could select a more exact set +of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, +etc., but also prepares an appropriate \texttt{language.dat}. + +The 7th edition of 2002 had the notable addition of \MacOSX{} support, +and the usual myriad of updates to all sorts of packages and +programs. An important goal was integration of the source back with +\teTeX, to correct the drift apart in versions~5 and~6. + +\subsubsection{2003} + +In 2003, with the continuing flood of updates and additions, we found +that \TL{} had grown so large it could no longer be contained on a +single \CD, so we split it into three different distributions (see +section~\ref{sec:tl-coll-dists}, \p.\pageref{sec:tl-coll-dists}). In +addition: + +\begin{itemize*} +\item At the request of the \LaTeX{} team, we changed the standard + \cmdname{latex} and \cmdname{pdflatex} commands to now use \eTeX{} (see + \p.\pageref{text:etex}). +\item The new Latin Modern fonts were included (and are recommended). +\item Support for Alpha \acro{OSF} was removed + (\acro{HPUX} support was removed previously), since no one had (or + volunteered) hardware available on which to compile new binaries. +\item Windows setup was substantially changed; for the first time + an integrated environment based on XEmacs was introduced. +\item Important supplementary programs for Windows + (Perl, Ghost\-script, Image\-Magick, Ispell) are now installed + in the \TL{} installation directory. +\item Font map files used by \cmdname{dvips}, \cmdname{dvipdfm} + and \cmdname{pdftex} are now generated by the new program + \cmdname{updmap} and installed into \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{}, and \MP{} now, by default, output most input + characters (32 and above) as themselves in output (e.g., + \verb|\write|) files, + log files, and the terminal, i.e., \emph{not} translated using the + \verb|^^| notation. In \TL{}~7, this translation was + dependent on the system locale settings; now, locale settings do + not influence the \TeX{} programs' behavior. If for some reason + you need the \verb|^^| output, rename the file + \verb|texmf/web2c/cp8bit.tcx|. (Future releases will have cleaner + ways to control this.) +\item This documentation was substantially revised. +\item Finally, since the edition numbers had grown unwieldy, + the version is now simply identified by the year: \TL{} 2003. +\end{itemize*} + + +\subsubsection{2004} + +2004 saw many changes: + +\begin{itemize} + +\item If you have locally-installed fonts which use their own +\filename{.map} or (much less likely) \filename{.enc} support files, you +may need to move those support files. + +\filename{.map} files are now searched for in subdirectories of +\dirname{fonts/map} only (in each \filename{texmf} tree), along the +\envname{TEXFONTMAPS} path. Similarly, \filename{.enc} files are now +searched for in subdirectories of \dirname{fonts/enc} only, along the +\envname{ENCFONTS} path. \cmdname{updmap} will attempt to warn about +problematic files. + +For methods of handling this and other information, please see +\url{http://tug.org/texlive/mapenc.html}. + +\item The \TK\ has been expanded with the addition of a \MIKTEX-based +installable \CD, for those who prefer that implementation to Web2C. +See section~\ref{sec:overview-tl} (\p.\pageref{sec:overview-tl}). + +\item Within \TL, the single large \dirname{texmf} tree of previous +releases has been replaced by three: \dirname{texmf}, +\dirname{texmf-dist}, and \dirname{texmf-doc}. See +section~\ref{sec:tld} (\p.\pageref{sec:tld}), and the \filename{README} +files for each. + +\item All \TeX-related input files are now collected in +the \dirname{tex} subdirectory of \dirname{texmf*} trees, rather than +having separate sibling directories \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex}, etc. See +\CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}. + +\item Helper scripts (not meant to be invoked by users) are now located +in a new \dirname{scripts} subdirectory of \dirname{texmf*} trees, and +can be searched for via \verb|kpsewhich -format=texmfscripts|. So if you have +programs which call such scripts, they'll need to be adjusted. See +\CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}. + +\item Almost all formats leave most characters printable as +themselves via the ``translation file'' \filename{cp227.tcx}, instead of +translating them with the \verb|^^| notation. Specifically, characters +at positions 32--256, plus tab, vertical tab, and form feed are +considered printable and not translated. The exceptions are plain \TeX\ +(only 32--126 printable), \ConTeXt\ (0--255 printable), and the +\OMEGA-related formats. This default behavior is almost the same as in +\TL\,2003, but it's implemented more cleanly, with more possibilities +for customization. See \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. +(By the way, with Unicode input, \TeX\ may output partial character +sequences when showing error contexts, since it is byte-oriented.) + +\item \textsf{pdfetex} is now the default engine for all formats +except (plain) \textsf{tex} itself. (Of course it generates \acro{DVI} +when run as \textsf{latex}, etc.) This means, among other things, that +the microtypographic features of \textsf{pdftex} are available in +\LaTeX, \ConTeXt, etc., as well as the \eTeX\ features +(\OnCD{texmf-dist/doc/etex/base/}). + +It also means it's \emph{more important than ever} to use the +\pkgname{ifpdf} package (works with both plain and \LaTeX) or equivalent +code, because simply testing whether \cs{pdfoutput} or some other +primitive is defined is not a reliable way to determine if \acro{PDF} +output is being generated. We made this backward compatible as best we +could this year, but next year, \cs{pdfoutput} may be defined even when +\acro{DVI} is being written. + +\item pdf\TeX\ (\url{http://pdftex.org}) has many new features: + + \begin{itemize*} + + \item \cs{pdfmapfile} and \cs{pdfmapline} provide font map support + from within a document. + + \item Microtypographic font expansion can be used more easily.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item All parameters previously set through the special configuration + file \filename{pdftex.cfg} must now be set through primitives, + typically in \filename{pdftexconfig.tex}; \filename{pdftex.cfg} is no + longer supported. Any extant \filename{.fmt} files must be redumped + when \filename{pdftexconfig.tex} is changed. + + \item See the pdf\TeX\ manual for more: \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}. + + \end{itemize*} + +\item The \cs{input} primitive in \cmdname{tex} (and \cmdname{mf} and +\cmdname{mpost}) now accepts double quotes containing spaces and other +special characters. Typical examples: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +See the Web2C manual for more: \OnCD{texmf/doc/web2c}. + +\item enc\TeX\ support is now included within Web2C and consequently all +\TeX\ programs, via the \optname{-enc} option\Dash \emph{only when +formats are built}. enc\TeX\ supports general re-encoding of input and +output, enabling full support of Unicode (in \acro{UTF}-8). See +\OnCD{texmf-dist/doc/generic/enctex/} and +\url{http://www.olsak.net/enctex.html}. + +\item Aleph, a new engine combining \eTeX\ and \OMEGA, is available. +A little information is available in \OnCD{texmf-dist/doc/aleph/base} +and \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. The +\LaTeX-based format for Aleph is named \textsf{lamed}. + +\item The latest \LaTeX\ release has a new version of the +\acro{LPPL}\Dash now officially a Debian-approved license. Assorted +other updates, see the \filename{ltnews} files in +\OnCD{texmf-dist/doc/latex/base}. + +\item \cmdname{dvipng}, a new program for converting \acro{DVI} to +\acro{PNG} image files, is included. See \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item We reduced the \pkgname{cbgreek} package to a ``medium'' sized set +of fonts, with the assent and advice of the author (Claudio Beccari). +The excised fonts are the invisible, outline, and transparency ones, +which are relatively rarely used, and we needed the space. The full set +is of course available from \acro{CTAN} +(\url{http://www.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} has been removed; just use \cmdname{xdvi}. + +\item The \cmdname{ini} and \cmdname{vir} commands (links) for +\cmdname{tex}, \cmdname{mf}, and \cmdname{mpost} are no longer created, +such as \cmdname{initex}. The \cmdname{ini} functionality has been +available through the command-line option \optname{-ini} for years now. + +\item \textsf{i386-openbsd} platform support was removed. Since the +\pkgname{tetex} package in the \acro{BSD} Ports system is available, and +\acro{GNU/}Linux and Free\acro{BSD} binaries were available, it seemed +volunteer time could be better spent elsewhere. + +\item On \textsf{sparc-solaris} (at least), you may have to set the +\envname{LD\_LIBRARY\_PATH} environment variable to run the +\pkgname{t1utils} programs. This is because they are compiled with C++, +and there is no standard location for the runtime libraries. (This is +not new in 2004, but wasn't previously documented.) Similarly, on +\textsf{mips-irix}, the \acro{MIPS}pro 7.4 runtimes are required. + +\end{itemize} + +\subsubsection{2005} + +2005 saw the usual huge number of updates to packages and programs. +The infrastructure stayed relatively stable from 2004, but inevitably +there were some changes there as well: + +\begin{itemize} + +\item New scripts \cmdname{texconfig-sys}, \cmdname{updmap-sys}, and + \cmdname{fmtutil-sys} were introduced, which modify the + configuration in the system trees. The \cmdname{texconfig}, + \cmdname{updmap}, and \cmdname{fmtutil} scripts now modify + user-specific files, under \dirname{$HOME/.texlive2005}. + +\item Corresponding new variables \envname{TEXMFCONFIG} and + \envname{TEXMFSYSCONFIG} to specify the trees where configuration + files (user or system, respectively) are found. Thus, you may + need to move personal versions of \filename{fmtutil.cnf} and + \filename{updmap.cfg} to these places; another option is to + redefine \envname{TEXMFCONFIG} or \envname{TEXMFSYSCONFIG} in + \filename{texmf.cnf}. In any case the real location of these files + and the values of \envname{TEXMFCONFIG} and \envname{TEXMFSYSCONFIG} + must agree. + See section~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. + +\item Last year, we kept \verb|\pdfoutput| and other primitives undefined + for \dvi\ output, even though the \cmdname{pdfetex} program was + being used. This year, as promised, we undid that compatibility + measure. So if your document uses \verb|\ifx\pdfoutput\undefined| + to test if PDF is being output, it will need to be changed. You + can use the package \pkgname{ifpdf.sty} (which works under both + plain \TeX\ and \LaTeX) to do this, or steal its logic. + +\item Last year, we changed most formats to output (8-bit) characters as + themselves (see previous section). The new TCX file + \filename{empty.tcx} now provides an easier way to get the + original \verb|^^| notation if you so desire, as in: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + +\item The new program \cmdname{dvipdfmx} is included for translation of + DVI to PDF; this is an actively maintained update of + \cmdname{dvipdfm} (which is also still available for now, though + no longer recommended). + +\item The new programs \cmdname{pdfopen} and \cmdname{pdfclose} are included + to allow reloading of pdf files in the Adobe Acrobat Reader without + restarting the program. (Other pdf readers, notably \cmdname{xpdf}, + \cmdname{gv}, and \cmdname{gsview}, have never suffered from this + problem.) + +\item For consistency, the variables \envname{HOMETEXMF} and + \envname{VARTEXMF} have been renamed to \envname{TEXMFHOME} and + \envname{TEXMFSYSVAR}, respectively. There is also + \envname{TEXMFVAR}, which is by default user-specific. See the + first point above. + +\end{itemize} + + +\subsubsection{2006--2007} + +In 2006--2007, the major new addition to \TL{} was the \XeTeX{} program, +available as the \texttt{xetex} and \texttt{xelatex} programs; see +\url{http://scripts.sil.org/xetex}. + +MetaPost also received a notable update, with more planned for the +future (\url{http://tug.org/metapost/articles}), likewise pdf\TeX{} +(\url{http://tug.org/applications/pdftex}). + +The \TeX\ \filename{.fmt} (high-speed format) and the similar files for +MetaPost and \MF\ are now stored in subdirectories of \dirname{texmf/web2c}, +instead of in the directory itself (although the directory is still +searched, for the sake of existing \filename{.fmt}'s). The +subdirectories are named for the `engine' in use, such as \filename{tex} +or \filename{pdftex} or \filename{xetex}. This change should be +invisible in normal use. + +The (plain) \texttt{tex} program no longer reads \texttt{\%\&} first +lines to determine what format to run; it is the pure Knuthian \TeX. +(\LaTeX\ and everything else do still read \texttt{\%\&} lines). + +Of course the year also saw (the usual) hundreds of other updates to +packages and programs. As usual, please check \acro{CTAN} +(\url{http://www.ctan.org}) for updates. + +Internally, the source tree is now stored in Subversion, with a standard +web interface for viewing the tree, as linked from our home page. +Although not visible in the final distribution, we expect this will +provide a stable development foundation for future years. + +Finally, in May 2006 Thomas Esser announced that he would no longer be +updating te\TeX{} (\url{http://tug.org/tetex}). As a result, there was +been a surge of interest in \TL{}, especially among \GNU/Linux +distributors. (There is a new \texttt{tetex} installation scheme in +\TL{}, which provides an approximate equivalent.) We hope this will +eventually translate to improvements in the \TeX\ environment for +everyone. + +\subsubsection{2008} + +In 2008, the entire \TL{} infrastructure was redesigned and +reimplemented. Complete information about an installation is now stored +in a plain text file \filename{tlpkg/texlive.tlpdb}. + +Among other things, this finally makes possible upgrading a \TL{} +installation over the Internet after the initial installation, a feature +MiK\TeX\ has provided for many years. We expect to regularly update new +packages as they are released to \CTAN. + +The major new engine Lua\TeX\ (\url{http://luatex.org}) is included; +besides a new level of flexibility in typesetting, this provides an +excellent scripting language for use both inside and outside of \TeX\ +documents. + +Support among Windows and the Unix-based platforms is now much more +uniform. In particular, most Perl and Lua scripts are now available on +Windows, using the Perl internally distributed with \TL. + +The new \cmdname{tlmgr} script (section~\ref{sec:tlmgr}) is the +general interface for managing \TL{} after the initial installation. +It handles package updates and consequent regeneration of formats, map +files, and language files, optionally including local additions. + +With the advent of \cmdname{tlmgr}, the \cmdname{texconfig} actions to +edit the format and hyphenation configuration files are now disabled. + +The \cmdname{xindy} indexing program +(\url{http://xindy.sourceforge.net/}) is now included on most platforms. + +The \cmdname{kpsewhich} tool can now report all matches for a given file +(option \optname{--all}) and limit matches to a given subdirectory +(option \optname{--subdir}). + +The \cmdname{dvipdfmx} program now includes functionality to extract +bounding box information, via the command name \cmdname{extractbb}; this +was one of the last features provided by \cmdname{dvipdfm} not in +\cmdname{dvipdfmx}. + +The font aliases \filename{Times-Roman}, \filename{Helvetica}, and so on +have been removed. Different packages expected them to behave +differently (in particular, to have different encodings), and there was +no good way to resolve this. + +The \pkgname{platex} format has been removed, to resolve a name conflict +with a completely different Japanese \pkgname{platex}; the +\pkgname{polski} package is now the main Polish support. + +Internally, the \web\ string pool files are now compiled into the +binaries, to ease upgrades. + +Finally, the changes made by Donald Knuth in his `\TeX\ tuneup of 2008' +are included in this release. See +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + +\subsubsection{2009} + +In 2009, the default output format for Lua\AllTeX\ is now PDF, to take +advantage of Lua\TeX's OpenType support, et al. New executables named +\code{dviluatex} and \code{dvilualatex} run Lua\TeX\ with DVI output. +The Lua\TeX\ home page is \url{http://luatex.org}. + +The original Omega engine and Lambda format have been excised, after +discussions with the Omega authors. The updated Aleph and Lamed remain, +as do the Omega utilities. + +A new release of the AMS \TypeI\ fonts is included, including Computer +Modern: a few shape changes made over the years by Knuth in the Metafont +sources have been integrated, and the hinting has been updated. The +Euler fonts have been thoroughly reshaped by Hermann Zapf (see +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). In +all cases, the metrics remain unchanged. The AMS fonts home page is +\url{http://www.ams.org/tex/amsfonts.html}. + +The new GUI front end \TeX{}works is included for Windows, and also in +Mac\TeX. For other platforms, and more information, see the \TeX{}works +home page, \url{http://tug.org/texworks}. It is a cross-platform front +end inspired by the \MacOSX\ TeXShop editor, aiming at ease-of-use. + +The graphics program Asymptote is included for several platforms. This +implements a text-based graphics description language vaguely akin to +MetaPost, but with advanced 3D support and other features. Its home +page is \url{http://asymptote.sourceforge.net}. + +The separate \code{dvipdfm} program has been replaced by +\code{dvipdfmx}, which operates in a special compatibility mode under +that name. \code{dvipdfmx} includes \acro{CJK} support and has +accumulated many other fixes over the years since the last +\code{dvipdfm} release. The DVIPDFMx home page is +\url{http://project.ktug.or.kr/dvipdfmx}. + +Executables for the \pkgname{cygwin} and \pkgname{i386-netbsd} platforms +are now included, while we were advised that Open\acro{BSD} users get +\TeX\ through their package systems, plus there were difficulties in +making binaries that have a chance of working on more than one version. + +A miscellany of smaller changes: we now use \pkgname{xz} compression, +the stable replacement for \pkgname{lzma} +(\url{http://tukaani.org/xz/}); a literal |$| is allowed in filenames +when it does not introduce a known variable name; the Kpathsea library +is now multi-threaded (made use of in MetaPost); the entire \TL{} build +is now based on Automake. + +Final note on the past: all releases of \TL{}, along with ancillary +material such as \CD\ labels, are available at +\url{ftp://tug.org/historic/systems/texlive}. + + +% +\htmlanchor{news} +\subsection{Present} +\label{sec:tlcurrent} +\label{sec:2010news} % keep with 2010 + +In 2010, the default version for PDF output is now 1.5, enabling more +compression. This applies to all the \TeX\ engines when used to produce +PDF and to \code{dvipdfmx}. Loading the \pkgname{pdf14} \LaTeX\ package +changes back to PDF~1.4, or set |\pdfminorversion=4|. + +pdf\AllTeX\ now \emph{automatically} converts a requested Encapsulated +PostScript (EPS) file to PDF, via the \pkgname{epstopdf} package, when +and if the \LaTeX\ \code{graphics.cfg} configuration file is loaded, and +PDF is being output. The default options are intended to eliminate any +chance of hand-created PDF files being overwritten, but you can also +prevent \code{epstopdf} from being loaded at all by putting +|\newcommand{\DoNotLoadEpstopdf}{}| (or |\def...|) before the +\cs{documentclass} declaration. It is also not loaded if the +\pkgname{pst-pdf} package is used. For more details, see the +\pkgname{epstopdf} package documentation +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +A related change is that execution of a very few external commands from +\TeX, via the \cs{write18} feature, is now enabled by default. These +are commands are \code{repstopdf}, \code{makeindex}, \code{kpsewhich}, +\code{bibtex}, and \code{bibtex8}; the list is defined in +\code{texmf.cnf}. Environments which must disallow all such external +commands can deselect this option in the installer (see +section~\ref{sec:options}), or override the value after installation by +running |tlmgr conf texmf shell_escape 0|. + +Yet another related change is that \BibTeX\ and Makeindex now refuse to +write their output files to an arbitrary directory (like \TeX\ itself), +by default. This is so they can now be enabled for use by the +restricted \cs{write18}. To change this, the \envname{TEXMFOUTPUT} +environment variable can be set, or the |openout_any| setting changed. + +\XeTeX\ now supports margin kerning along the same lines as pdf\TeX. +(Font expansion is not presently supported.) + +By default, \prog{tlmgr} now saves one backup of each package updated +(\code{tlmgr option autobackup 1}), so broken packages updates can be +easily reverted with \code{tlmgr restore}. If you do post-install +updates, and don't have the disk space for the backups, run \code{tlmgr +option autobackup 0}. + +New programs included: the p\TeX\ engine and related utilities for +typesetting Japanese; the \BibTeX{}U program for Unicode-enabled +\BibTeX; the \prog{chktex} utility +(\url{http://baruch.ev-en.org/proj/chktex}) for checking \AllTeX\ +documents; the \prog{dvisvgm} (\url{http://dvisvgm.sourceforge.net}) +DVI-to-SVG translator. + +Executables for these new platforms are now included: \code{amd64-freebsd}, +\code{amd64-kfreebsd}, \code{i386-freebsd}, \code{i386-kfreebsd}, +\code{x86\_64-darwin}, \code{x86\_64-solaris}. + +A change in \TL{} 2009 that we failed to note: numerous \TeX4ht-related +executables (\url{http://tug.org/tex4ht}) were removed from the binary +directories. The generic \code{mk4ht} program can be used to run any of +the various \code{tex4ht} combinations. + +Finally, the \TL{} release on the \TK\ \DVD\ can no longer be run +live (oddly enough). A single \DVD\ no longer has enough room. One +benefit is that installation from the physical \DVD\ should now be much +faster. + + +\subsection{Future} + +\emph{\TL{} is not perfect!} (And never will be.) We intend to +continue to release new versions, and would like to provide more help +material, more utilities, more installation programs, and (of course) an +ever-improved and better-checked tree of macros and fonts. This work is +all done by volunteers in their spare time, and so there is always more +to do. Please see \url{http://tug.org/texlive/contribute.html}. + +Please send corrections, suggestions, and offers of help to: +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Happy \TeX ing!} + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2011.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2011.tex new file mode 100644 index 00000000000..540c2e7df6e --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-2011.tex @@ -0,0 +1,3303 @@ +% $Id: texlive-en.tex 22906 2011-06-10 23:20:20Z karl $ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +\documentclass{article} +\let\tldocenglish=1 % for live4ht.cfg +\usepackage{tex-live} +\usepackage[latin1]{inputenc} % translators: use your preferred encodings. +\usepackage[T1]{fontenc} + +\begin{document} + +\title{% + {\huge \textit{The \TeX\ Live Guide}\\\smallskip}% + {\LARGE \textsf{\TL{} 2011}}% +} + +\author{Karl Berry, editor \\[3mm] + \url{http://tug.org/texlive/} + } + +\date{June 2011} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +%\listoftables +\end{multicols} + +\section{Introduction} +\label{sec:intro} + +\subsection{\TeX\ Live and the \TeX\ Collection} + +This document describes the main features of the \TL{} software +distribution\Dash \TeX{} and related programs for \GNU/Linux +and other Unix flavors, \MacOSX, and Windows systems. + +You may have acquired \TL{} by downloading, or on the \TK{} \DVD, which +\TeX{} user groups distribute among their members, or in other ways. +Section \ref{sec:tl-coll-dists} briefly describes the contents of the +\DVD. Both \TL{} and the \TK{} are cooperative efforts by the \TeX{} +user groups. This document mainly describes \TL{} itself. + +\TL{} includes executables for \TeX{}, \LaTeXe{}, \ConTeXt, +\MF, \MP, \BibTeX{} and many other programs; an extensive collection +of macros, fonts and documentation; and support for typesetting in +many different scripts from around the world. + +For a brief summary of the major changes in this edition of \TL{}, +see the end of the document, section~\ref{sec:history} +(\p.\pageref{sec:history}). + + +\subsection{Operating system support} +\label{sec:os-support} + +\TL{} contains binaries for many Unix-based platforms, including +\GNU/Linux, \MacOSX, and Cygwin. The included sources can be compiled +on platforms for which we do not provide binaries. + +As to Windows: Windows \acro{XP} and later are supported. Windows~2000 +will probably still mostly work. There are no special 64-bit +executables for Windows, but the 32-bit executables should run on 64-bit +systems. + +See section~\ref{sec:tl-coll-dists} for alternate solutions +for Windows and \MacOSX. + +\subsection{Basic installation of \protect\TL{}} +\label{sec:basic} + +You can install \TL{} either from \DVD{} or over the Internet +(\url{http://tug.org/texlive/acquire.html}). The net installer itself is +small, and downloads everything requested from the Internet. + +The \DVD{} installer lets you install to a local disk. You cannot run +\TL{} directly from the \TK{} \DVD{} (or its \code{.iso} image), but you +can prepare a runnable installation on, e.g., a \USB{} stick (see +section~\ref{sec:portable-tl}). Installation is described in later +sections (\p.\pageref{sec:install}), but here is a quick start: + +\begin{itemize*} + +\item The installation script is named \filename{install-tl}. It can + operate in a ``wizard mode'' given the option \code{-gui=wizard} + (default for Windows), a text mode given \code{-gui=text} (default for + everything else), and an expert \GUI{} mode given \code{-gui=perltk}. + +\item One of the installed items is the `\TL\ Manager' program, + named \prog{tlmgr}. Like the installer, it can be used in both \GUI{} + mode and in text mode. You can use it to install and uninstall + packages and do various configuration tasks. + +\end{itemize*} + + +\htmlanchor{security} +\subsection{Security considerations} +\label{sec:security} + +To the best of our knowledge, the core \TeX\ programs themselves are +(and always have been) extremely robust. However, the contributed +programs in \TeX\ Live may not reach the same level, despite everyone's +best efforts. As always, you should be careful when running programs on +untrusted input; for maximum safety, use a new subdirectory. + +This need for care is especially urgent on Windows, since in general +Windows finds programs in the current directory before anything else, +regardless of the search path. This opens up a wide variety of possible +attacks. We have closed many holes, but undoubtedly some remain, +especially with third-party programs. Thus, we recommend checking for +suspicious files in the current directory, especially executables +(binaries or scripts). Ordinarily they should not be present, and +definitely should not normally be created by merely processing a document. + +Finally, \TeX\ (and its companion programs) are able to write files when +processing documents, a feature that can also be abused in a wide +variety of ways. Again, processing unknown documents in a new +subdirectory is the safest bet. + + +\subsection{Getting help} +\label{sec:help} + +The \TeX{} community is active and friendly, and most serious questions +end up getting answered. However, the support is informal, done by +volunteers and casual readers, so it's especially important that you do +your homework before asking. (If you prefer guaranteed commercial +support, you can forgo \TL{} completely and purchase a vendor's system; +\url{http://tug.org/interest.html#vendors} has a list.) + +Here is a list of resources, approximately in the order we recommend +using them: + +\begin{description} +\item [Getting Started] If you are new to \TeX, the web page +\url{http://tug.org/begin.html} gives a brief introduction to the system. + +\item [\TeX{} \acro{FAQ}] The \TeX{} \acro{FAQ} is a huge compendium + of answers to all sorts of questions, from the most basic to the + most arcane. It is included on \TL{} in + \OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html}, and is available + on the Internet through \url{http://www.tex.ac.uk/faq}. Please + check here first. + +\item [\TeX{} Catalogue] If you are looking for a specific package, +font, program, etc., the \TeX{} Catalogue is the place to look. It is a +huge collection of all \TeX{}-related items. See +\url{http://mirror.ctan.org/help/Catalogue/}. + +\item [\TeX{} Web Resources] The web page +\url{http://tug.org/interest.html} has many \TeX{}-related links, in +particular for numerous books, manuals, and articles on all aspects of +the system. + +\item [support archives] The two principal support forums are the +Usenet newsgroup \url{news:comp.text.tex} and the mailing list +\email{texhax@tug.org}. Their archives have years of past +questions and answers for your searching pleasure, via +\url{http://groups.google.com/group/comp.text.tex/topics} and +\url{http://tug.org/mail-archives/texhax}, respectively. And a general web +search, for example on \url{http://google.com}, never hurts. + +\item [asking questions] If you cannot find an answer, you can post to +\dirname{comp.text.tex} through Google or your newsreader, or to +\email{texhax@tug.org} through email. But before you post, +\emph{please} read this \acro{FAQ} entry, to maximize +your chances of getting a useful answer: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. +Also worth mentioning are the \LaTeX{} Community site at +\url{http://www.latex-community.org/} and its forum +\url{http://www.latex-community.org/forum/}, and +\TeX\ StackExchange at \url{http://tex.stackexchange.com/}. + +\item [\TL{} support] If you want to report a bug or have +suggestions or comments on the \TL{} distribution, installation, or +documentation, the mailing list is \email{tex-live@tug.org}. However, +if your question is about how to use a particular program included in +\TL{}, please write to that program's maintainer or +mailing list. Often running a program with the \code{-{}-help} option +will provide a bug reporting address. + +\end{description} + +The other side of the coin is helping others who have questions. Both +\dirname{comp.text.tex} and \code{texhax} are open to anyone, so feel +free to join, start reading, and help out where you can. + + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{Overview of \protect\TeX\protect\ Live} +\label{sec:overview-tl} + +This section describes the contents of \TL{} and the \TK{} of which it +is a part. + +\subsection{The \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tl-coll-dists} + +The \TK{} \DVD{} comprises the following: + +\begin{description} + +\item [\TL] A complete \TeX{} system to be installed to disk. Its home +page is \url{http://tug.org/texlive/}. + +\item [Mac\TeX] for \MacOSX, this adds a native \MacOSX\ installer and other +Mac applications to \TL{}. Its home page is +\url{http://tug.org/mactex/}. + +\item [pro\TeX{}t] An enhancement of the \MIKTEX\ distribution for Windows, +\ProTeXt\ adds a few extra tools to \MIKTEX, and simplifies +installation. It is entirely independent of \TL{}, and has its own +installation instructions. The \ProTeXt\ home page is +\url{http://tug.org/protext}. + +\item [CTAN] A snapshot of the \CTAN{} repository (\url{http://www.ctan.org}). + +\item [\texttt{texmf-extra}] A directory with assorted additional packages. + +\end{description} + +\CTAN{}, \pkgname{protext}, and \dirname{texmf-extra} do not +necessarily follow the same copying conditions as \TL{}, so be careful +when redistributing or modifying. + + +\subsection{Top level \TL{} directories} +\label{sec:tld} + +Here is a brief listing and description of the top level directories in a +\TL{} installation. + +\begin{ttdescription} +\item[bin] The \TeX{} system programs, arranged by platform. +% +\item[readme-*.dir] Quick overview and useful links for \TL{}, +in various languages, in both \HTML{} and plain text. +% +\item[source] The source to all included programs, including the main + \Webc{}-based \TeX{} distributions. +% +\item[texmf] See \dirname{TEXMFMAIN} below. +% +\item[texmf-dist] See \dirname{TEXMFDIST} below. +% +\item[tlpkg] Scripts, programs and data for managing the + installation, and special support for Windows. +\end{ttdescription} + +In addition to the directories above, the installation scripts and +\filename{README} files (in various languages) are at the top level of +the distribution. + +For documentation, the comprehensive links in the top-level file +\OnCD{doc.html} may be helpful. The documentation for the programs +(manuals, man pages, Info files) is in \dirname{texmf/doc}. The +documentation for \TeX\ packages and formats is in +\dirname{texmf-dist/doc}. You can use the \cmdname{texdoc} program to +find any documentation wherever it is located. + +This \TL\ documentation itself is in \dirname{texmf/doc/texlive}, +available in several languages: + +\begin{itemize*} +\item{Czech/Slovak:} \OnCD{texmf/doc/texlive/texlive-cz} +\item{German:} \OnCD{texmf/doc/texlive/texlive-de} +\item{English:} \OnCD{texmf/doc/texlive/texlive-en} +\item{French:} \OnCD{texmf/doc/texlive/texlive-fr} +\item{Italian:} \OnCD{texmf/doc/texlive/texlive-it} +\item{Polish:} \OnCD{texmf/doc/texlive/texlive-pl} +\item{Russian:} \OnCD{texmf/doc/texlive/texlive-ru} +\item{Serbian:} \OnCD{texmf/doc/texlive/texlive-sr} +\item{Simplified Chinese:} \OnCD{texmf/doc/texlive/texlive-zh-cn} +\end{itemize*} + +\subsection{Overview of the predefined texmf trees} +\label{sec:texmftrees} + +This section lists the predefined variables specifying the texmf trees +used by the system, and their intended purpose, and the default layout +of \TL{}. The command \texttt{tlmgr~conf} shows the values of these +variables, so that you can easily find out how they map to particular +directories in your installation. + +All of the trees, including the personal ones, should follow the \TeX\ +Directory Structure (\TDS, \url{http://tug.org/tds}), with all its +myriad subdirectories, or files may not be found. Section +\ref{sec:local-personal-macros} (\p.\pageref{sec:local-personal-macros}) +describes this in more detail. + +\begin{ttdescription} +\item [TEXMFMAIN] The tree which holds vital parts of the + system such as configuration files, helper scripts, and program + documentation. +\item [TEXMFDIST] The tree which holds the main set of macro packages, + fonts, etc. +\item [TEXMFLOCAL] The tree which administrators can use for system-wide + installation of additional or updated macros, fonts, etc. +\item [TEXMFHOME] The tree which users can use for their own individual + installations of additional or updated macros, fonts, etc. + The expansion of this variable dynamically adjusts for each user to + their own individual directory. +\item [TEXMFCONFIG] The (personal) tree used by the utilities + \verb+texconfig+, \verb+updmap+, and \verb+fmtutil+ to store modified + configuration data. +\item [TEXMFSYSCONFIG] The (site-wide) tree used by the utilities + \verb+texconfig-sys+, \verb+updmap-sys+, and \verb+fmtutil-sys+ to + store modified configuration data. +\item [TEXMFVAR] The (personal) tree used by \verb+texconfig+, + \verb+updmap+ and \verb+fmtutil+ to store (cached) runtime data such + as format files and generated map files. +\item [TEXMFSYSVAR] The (site-wide) tree used by \verb+texconfig-sys+, + \verb+updmap-sys+ and \verb+fmtutil-sys+, and also by \verb+tlmgr+, to + store (cached) runtime data such as format files and generated map files. +\item [TEXMFCACHE] The tree(s) used by \ConTeXt\ Mk\acro{IV} + to store (cached) runtime data. +\end{ttdescription} + +\noindent +The default layout is: +\begin{description} + \item[system-wide root] can span multiple \TL{} releases: + \begin{ttdescription} + \item[2010] A previous release. + \item[2011] The current release. + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] \GNU/Linux binaries + \item [...] + \item [universal-darwin] \MacOSX\ binaries + \item [win32] Windows binaries + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] This is \envname{TEXMFMAIN}. + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var \ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, intended to be + retained from release to release. + \end{ttdescription} + \item[user's home] (\texttt{\$HOME} or + \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2010] Privately generated and configuration data + for a previous release. + \item[.texlive2011] Privately generated and configuration data + for the current release. + \begin{ttdescription} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR}, \envname{TEXMFCACHE} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} Personal macros, etc. + \end{ttdescription} +\end{description} + + +\subsection{Extensions to \protect\TeX} +\label{sec:tex-extensions} + +Knuth's original \TeX{} itself is frozen, apart from rare bug fixes. It +is still present in \TL\ as the program \prog{tex}, and will remain so +for the foreseeable future. \TL{} contains several extended versions of +\TeX: + +\begin{description} + +\item [\eTeX] adds a set of new primitives +\label{text:etex} (related to macro expansion, character scanning, +classes of marks, additional debugging features, and more) and the +\TeXXeT{} extensions for bidirectional typesetting. In default mode, +\eTeX{} is 100\% compatible with ordinary \TeX. See +\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] builds on the \eTeX\ extensions, adding support for +writing \acro{PDF} output as well as \dvi{}, and many non-output-related +extensions. This is the program invoked for most formats, e.g., +\prog{etex}, \prog{latex}, \prog{pdflatex}. Its web site is +\url{http://www.pdftex.org/}. See +\OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf} for the manual, and +\OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex} for example +usage of some of its features. + +\item [Lua\TeX] is the designated successor of pdf\TeX, +and is mostly (but not entirely) backward-compatible. It is also +intended to be a functional superset of Aleph (see below), though +technical compatibility is not intended. The incorporated Lua +interpreter (\url{http://www.lua.org/}) enables elegant solutions for +many thorny \TeX{} problems. When called as \filename{texlua}, it +functions as a standalone Lua interpreter, and is already used as such +within \TL. Its web site is \url{http://www.luatex.org/}, and the +reference manual is \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [\XeTeX] adds support for Unicode input and OpenType- and system +fonts, implemented using standard third-party libraries. See +\url{http://tug.org/xetex}. + +\item [\OMEGA\ (Omega)] is based on Unicode (16-bit characters), thus +supports working with almost all the world's scripts simultaneously. It +also supports so-called `\OMEGA{} Translation Processes' (\acro{OTP}s), +for performing complex transformations on arbitrary input. Omega is no +longer included in \TL{} as a separate program; only Aleph is provided: + +\item [Aleph] combines the \OMEGA\ and \eTeX\ extensions. +See \OnCD{texmf-dist/doc/aleph/base}. + +\end{description} + + +\subsection{Other notable programs in \protect\TL} + +Here are a few other commonly-used programs included in \TL{}: + +\begin{cmddescription} + +\item [bibtex, bibtex8] bibliography support. + +\item [makeindex, xindy] index support. + +\item [dvips] convert \dvi{} to \PS{}. + +\item [xdvi] \dvi{} previewer for the X Window System. + +\item [dvilj] \dvi{} drive for the HP LaserJet family. + +\item [dviconcat, dviselect] cut and paste pages +from \dvi{} files. + +\item [dvipdfmx] convert \dvi{} to \acro{PDF}, an alternative approach +to pdf\TeX\ (mentioned above). + +\item [psselect, psnup, \ldots] \PS{} utilities. + +\item [pdfjam, pdfjoin, \ldots] \acro{PDF} utilities. + +\item [texexec, texmfstart] Con\TeX{}t and \acro{PDF} processor. + +\item [tex4ht] \TeX{} to \acro{HTML} (and \acro{XML} and more) converter. + +\end{cmddescription} + + +\subsection{Fonts in \protect\TL} +\label{sec:tl-fonts} + +\TL{} comes with many high-quality scalable fonts. See +\url{http://tug.org/fonts} and +\OnCD{texmf-dist/doc/fonts/free-math-font-survey}. + + +\htmlanchor{installation} +\section{Installation} +\label{sec:install} + +\subsection{Starting the installer} +\label{sec:inst-start} + +To begin, get the \TK{} \DVD{} or download the \TL{} net installer, and +locate the installer script: \filename{install-tl} for Unix, +\filename{install-tl.bat} for Windows. See +\url{http://tug.org/texlive/acquire.html} for more information and other +methods of getting the software. + +\begin{description} +\item [Net installer:] Download from \CTAN, under +\dirname{systems/texlive/tlnet}; the url +\url{http://mirror.ctan.org/systems/texlive/tlnet} will automatically +redirect to a nearby, up-to-date, mirror. You can retrieve either +\filename{install-tl.zip} which can be used under Unix and Windows, or +the considerably smaller \filename{install-unx.tar.gz} for Unix +only. After unpacking, \filename{install-tl} and +\filename{install-tl.bat} will be in the \dirname{install-tl} +subdirectory. + +\item [\TeX{} Collection \DVD:] go to the \DVD's \dirname{texlive} +subdirectory. Under Windows, the installer normally starts automatically +when you insert the \DVD. You can get the \DVD\ by becoming a member of +a \TeX\ user group (highly recommended, +\url{http://tug.org/usergroups.html}), or purchasing it separately +(\url{http://tug.org/store}), or burning your own from the \ISO\ image. +You can also mount the \ISO\ directly on most systems. After installing +from \DVD\ or \ISO, if you want to get continuing updates from the +Internet, please see \ref{sec:dvd-install-net-updates}. + +\end{description} + +The same installer program is run, whatever the source. The most +visible difference between the two is that with the net installer, what +you end up with is the packages that are currently available. This is +in contrast to the \DVD\ and \ISO\ images, which are not updated between +the major public releases. + +\noindent +The following sections explain installer start-up in more detail. + +\subsubsection{Unix} + +Below, \texttt{>} denotes the shell prompt; user input is +\Ucom{\texttt{bold}}. +The script \filename{install-tl} is a Perl script. The simplest way +to start it on a Unix-compatible system is as follows: +\begin{alltt} +> \Ucom{cd /path/to/installer} +> \Ucom{perl install-tl} +\end{alltt} +(Or you can invoke \Ucom{perl /path/to/installer/install-tl}, or +\Ucom{./install-tl} if it stayed executable, etc.; we won't repeat all +these variations.) You may have to enlarge your terminal window so +that it shows the full text installer screen (Figure~\ref{fig:text-main}). + +To install in expert \GUI\ mode (figure~\ref{fig:gui-main}), you'll +need the \dirname{Perl/TK} module compiled with \acro{XFT} support, +which is generally the case with \GNU/Linux, but not necessarily with other +systems. Given that, you can run: +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +For a complete listing of the various options: +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{Warning about Unix permissions:} Your \code{umask} at the time +of installation will be respected by the \TL{} installer. Therefore, if +you want your installation to be usable by users other than you, make +sure your setting is sufficiently permissive, for instance, \code{umask +002}. For more information about \code{umask}, consult your system +documentation. + +\textbf{Special considerations for Cygwin:} Unlike other +Unix-compatible systems, Cygwin does not by default include all of the +prerequisite programs needed by the \TL{} installer. See +Section~\ref{sec:cygwin} for details. + + +\subsubsection{MacOSX} + +As mentioned in section~\ref{sec:tl-coll-dists}, a separate distribution +is prepared for \MacOSX, named Mac\TeX\ (\url{http://tug.org/mactex}). +We recommend using the native Mac\TeX\ installer instead of the \TL\ +installer on \MacOSX, because the native installer makes a few +Mac-specific adjustments, in particular to allow easily switching +between the various \TeX\ distributions for \MacOSX\ (Mac\TeX, Fink, +MacPorts, \ldots). + +Mac\TeX\ is firmly based on \TL, and the main \TeX\ trees are precisely +the same. It does add a few extra folders with Mac-specific +documentation and applications. + + +\subsubsection{Windows} + +If you are using the net installer, or the \DVD\ installer failed to +start automatically, double-click \filename{install-tl.bat}. +For more customization options, e.g., selection of specific package +collections, run \filename{install-tl-advanced.bat} instead. + +You can also start the installer from the command-prompt. Below, +\texttt{>} denotes the prompt; user input is \Ucom{\texttt{bold}}. If +you are in the installer directory, run just: +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} + +Or you can invoke it with an absolute location, such as: +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +for the \TK\ \DVD, supposing that \dirname{D:} is the optical +drive. Figure~\ref{fig:wizard-w32} displays the wizard installer, which +is the default for Windows. + +To install in text mode, use: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +For a complete listing of the various options: +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2011 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + platforms: 1 out of 19 + + installation scheme (scheme-full) + 84 collections out of 85, disk space required: 2600 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2011 + ... + + options: + [ ] use letter size instead of A4 by default + ... + + set up for portable installation + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{Main text installer screen (\GNU/Linux)}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth,trim=10 4 0 20,clip} +\caption{Expert \GUI{} installer screen (\GNU/Linux)}\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth,trim=0 4 0 0,clip} +\caption{Wizard installer screen (Windows)}\label{fig:wizard-w32} +\end{figure} + + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +The \TL{} installer supports only Cygwin 1.7. +Before beginning the installation, use Cygwin's \filename{setup.exe} program to +install the \filename{perl} and \filename{wget} packages if you have +not already done so. The following additional packages are +recommended: +\begin{itemize*} +\item \filename{fontconfig} [needed by \XeTeX] +\item \filename{ghostscript} [needed by various utilities] +\item \filename{libXaw7} [needed by \code{xdvi}] +\item \filename{ncurses} [provides the \code{clear} command used by the installer] +\end{itemize*} + + +\subsubsection{The text installer} + +Figure~\ref{fig:text-main} displays the main text mode screen under +Unix. The text installer is the default on Unix. + +This is only a command-line installer; there is no cursor support at +all. For instance, you cannot tab around checkboxes or input fields. +You just type something (case-sensitive) at the prompt and press the +Enter key, and then the entire terminal screen will be rewritten, with +adjusted content. + +The text installer interface is this primitive for a reason: it +is designed to run on as many platforms as possible, even with a +very barebones Perl. + +\subsubsection{The expert graphical installer} + +Figure~\ref{fig:gui-main} displays the expert graphical installer under +\GNU/Linux. Other than using buttons and menus, this does +not differ much from the text installer. + +This mode can be invoked explicitly with +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} + + +\subsubsection{The simple wizard installer} + +Under Windows, the default is to run the simplest installation method we +could devise, called the ``wizard'' installer +(figure~\ref{fig:wizard-w32}). It installs everything and asks almost +no questions. If you want to customize your setup, you should run one +of the other installers. + +This mode can be invoked explicitly with +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + + +\subsection{Running the installer} +\label{sec:runinstall} + +The installer is intended to be mostly self-explanatory, but following are a +few notes about the various options and submenus. + +\subsubsection{Binary systems menu (Unix only)} +\label{sec:binary} + +\begin{figure}[tb] +\begin{boxedverbatim} +Available platforms: +=============================================================================== + 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 +\end{boxedverbatim} +\caption{Binaries menu}\label{fig:bin-text} +\end{figure} + +Figure~\ref{fig:bin-text} displays the text mode binaries menu. By +default, only the binaries for your current platform will be installed. +From this menu, you can select installation of binaries for other +platforms as well. This can be useful if you are sharing a \TeX\ +tree across a network of heterogenous machines, or for a dual-boot +system. + +\subsubsection{Selecting what is to be installed} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Select 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 +\end{boxedverbatim} +\caption{Scheme menu}\label{fig:scheme-text} +\end{figure} + +Figure~\ref{fig:scheme-text} displays the \TL\ scheme menu; from here, +you choose a ``scheme'', which is an overall set of package collections. +The default \optname{full} scheme installs everything available. This +is recommended, but you can also choose the \optname{basic} scheme for a +small system, \optname{minimal} for testing purposes, and +\optname{medium} or \optname{teTeX} to get something in between. There +are also various specialized and country-specific schemes. + +\begin{figure}[tb] +\tlpng{stdcoll}{.7\linewidth,trim=0 4 0 0,clip} +\caption{Collections menu}\label{fig:collections-gui} +\end{figure} + +You can refine your scheme selection with the `standard collections' and +`language collections' menus (figure~\ref{fig:collections-gui}, shown in +\GUI\ mode for a change). + +Collections are one level more detailed than schemes\Dash in essence, a +scheme consists of several collections, a collection consists of one or +more packages, and a package (the lowest level grouping in \TL) contains +the actual \TeX\ macro files, font files, and so on. + +If you want more control than the collection menus provide, you can use +the \TeX\ Live Manager (\prog{tlmgr}) program after installation (see +section~\ref{sec:tlmgr}); using that, you can control the installation +at the package level. + +\subsubsection{Directories} +\label{sec:directories} + +The default layout is described in section~\ref{sec:texmftrees}, +\p.\pageref{sec:texmftrees}. The default location of +\dirname{TEXDIR} is \dirname{/usr/local/texlive/2011} on Unix +and |%SystemDrive%\texlive\2011| on Windows. + +The main reason to change this default is if you lack write permission +for the default location. You don't have to be root or administrator to +install \TL, but you do need write access to the target directory. + +A reasonable alternative choice is a directory under your home directory, +especially if you will be the sole user. Use +`|~|' to indicate this, as in `|~/texlive/2011|'. + +We recommend including the year in the name, to enable keeping different +releases of \TL{} side by side. (You may wish to make a +version-independent name such as \dirname{/usr/local/texlive-cur} via a +symbolic link, which you can then update after testing the new release.) + +Changing \dirname{TEXDIR} in the installer will also change +\dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} and +\dirname{TEXMFSYSCONFIG}. + +\dirname{TEXMFHOME} is the recommended location for personal +macro files or packages. The default value is |~/texmf|. In +contrast to \dirname{TEXDIR}, here a |~| is preserved in the +newly-written configuration files, since it usefully refers to the home +directory of any individual running \TeX. It expands to +\dirname{$HOME} on Unix and \verb|%USERPROFILE%| on Windows. Special +redundant note: \envname{TEXMFHOME}, like all trees, must be organized +according to the \TDS, or files may not be found. + +\dirname{TEXMFVAR} is the location for storing most cached runtime data +specific to each user. \dirname{TEXMFCACHE} is used for that purpose by +\ConTeXt\ Mk\acro{IV} (see section~\ref{sec:context-mkiv}, +\p.\pageref{sec:context-mkiv}). + + +\subsubsection{Options} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Options setup: +=============================================================================== +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: +\end{boxedverbatim} +\caption{Options menu (Unix)}\label{fig:options-text} +\end{figure} + +Figure~\ref{fig:options-text} shows the text mode options menu. +More info on each: + +\begin{description} +\item[use letter size instead of A4 by default:] The default paper + size selection. Of course, individual documents can and should + specify a specific paper size, if desired. + +\item[execution of restricted list of programs:] As of \TL\ 2010, + execution of a few external programs is allowed by default. The (very + short) list of allowed programs is given in the \filename{texmf.cnf}. + See the 2010 news (section~\ref{sec:2010news}) for more details. + +\item[create format files:] Although unnecessary format files + take time to generate and disk space to store, it is still recommended + to leave this option checked: if you don't, then format files will be + generated in people's private \dirname{TEXMFVAR} tree as they are + needed. In that location, they will not be updated automatically if + (say) binaries or hyphenation patterns are updated in the + installation, and thus you could end up with incompatible format files. + +\item[install font/macro \ldots\ tree:] These options allow you to omit + downloading/installing the documentation and source files present in + most packages. Not recommended. + +\item[create symlinks in standard directories] (Unix only): + This option bypasses the need to change environment variables. Without + this option, \TL{} directories usually have to be added to + \envname{PATH}, \envname{MANPATH} and \envname{INFOPATH}. You will + need write permissions to the target directories. It is strongly + advised \emph{not} to overwrite a \TeX\ system that came with your + system with this option. It is intended primarily for accessing the + \TeX\ system through directories that are already known to users, such + as \dirname{/usr/local/bin}, which don't already contain any \TeX\ + files. +\end{description} + +When all the settings are to your liking, you can type `I' to start the +installation process. When it is done, skip to +section~\ref{sec:postinstall} to read what else needs to be done, if +anything. + +\subsection{Command-line install-tl options} +\label{sec:cmdline} + +Type +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +for a listing of command-line options. Either |-| or |--| can be used +to introduce option names. These are the most common ones: + +\begin{ttdescription} +\item[-gui] If possible, use the \GUI{} installer. This requires the + Perl/Tk module (\url{http://tug.org/texlive/distro.html#perltk}) + compiled with \acro{XFT} support; if Perl/Tk is not available, + installation continues in text mode. + +\item[-no-gui] Force using the text mode installer, even under + Windows. + +\item[-lang {\sl LL}] Specify the installer interface + language as its standard two-letter code \textsl{\acro{LL}}. Currently + supported languages: + \texttt{cs} (Czech), + \texttt{de} (German), + \texttt{en} (English, default) + \texttt{fr} (French), + \texttt{it} (Italian), + \texttt{ja} (Japanese), + \texttt{nl} (Dutch), + \texttt{pl} (Polish), + \texttt{ru} (Russian), + \texttt{sk} (Slovak), + \texttt{sl} (Slovenian), + \texttt{sr} (Serbian), + \texttt{vi} (Vietnamese), + \texttt{zh-cn} (Simplified Chinese), + \texttt{zh-tw} (Traditional Chinese). + The installer tries to automatically determine the right + language but if it fails, or if the right language is not + available, then it uses English as a fallback. + +\htmlanchor{opt-in-place} +\item[-in-place] If you already have an rsync, svn, or other copy of + \TL{} (see \url{http://tug.org/texlive/acquire-mirror.html}) then this + option will use what you've got, as-is, and do only the necessary + post-install. Be warned that the file \filename{tlpkg/texlive.tlpdb} + may be overwritten; saving it is your responsibility. Also, package + removal has to be done manually. Do not use this unless you know + what you are doing. This option cannot be toggled via the + installer interface. + +\item[-portable] Install for portable use on, e.g., a \USB{} stick. + Also selectable from within the text installer with the \code{V} + command, and from the \GUI{} installer. See + section~\ref{sec:portable-tl}. + +\item[-profile {\sl file}] The installer always writes a file + \filename{texlive.profile} to the \dirname{tlpkg} subdirectory of your + installation. This option tells the installer to re-use such a + profile file, so you can install in batch mode on subsequent systems, + reproducing the choices you made in a prior installation. + +\item [-repository {\sl url-or-directory}] Specify package + repository from which to install; see following. +\end{ttdescription} + + +\subsubsection{The \optname{-repository} option} +\label{sec:location} + +The default package repository is a \CTAN{} mirror chosen automatically +via \url{http://mirror.ctan.org}. + +If you want to override that, the location value can be a url starting +with \texttt{ftp:}, \texttt{http:}, or \texttt{file:/}, or a plain +directory path. (When giving an \texttt{http:}\ or \texttt{ftp:}\ +location, trailing `\texttt{/}' characters and/or a trailing +`\texttt{/tlpkg}' component are ignored.) + +For example, you could choose a particular \CTAN\ mirror with something +like: \url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +substituting a real hostname and its particular top-level \CTAN\ path +for |ctan.example.org/tex-archive|. The list of \CTAN\ mirrors is +maintained at \url{http://ctan.org/mirrors}. + +If the given argument is local (either a path or a \texttt{file:/} url), +compressed files in an \dirname{archive} subdirectory of the repository +path are used (even if uncompressed files are available as well). + + +\subsection{Post-install actions} +\label{sec:postinstall} + +Some post-install may be required. + + +\subsubsection{Environment variables for Unix} +\label{sec:env} + +If you elected to create symlinks in standard directories (described in +section~\ref{sec:options}), then there is no need to edit environment +variables. Otherwise, on Unix systems, the directory of the binaries +for your platform must be added to the search path. (On Windows, the +installer takes care of this.) + +Each supported platform has its own subdirectory under +\dirname{TEXDIR/bin}. See figure~\ref{fig:bin-text} for the list of +subdirectories and corresponding platforms. + +Optionally, you can also add the documentation man and Info directories +to their respective search paths, if you want the system tools to find +them. The man pages might be found automatically after the addition to +\envname{PATH}. + +For Bourne-compatible shells such as \prog{bash}, and using Intel x86 +GNU/Linux and a default directory setup as an example, the file to edit +might be \filename{$HOME/.profile} (or another file sourced by +\filename{.profile}, and the lines to add would look like this: + +\begin{sverbatim} +PATH=/usr/local/texlive/2011/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2011/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2011/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} + +For csh or tcsh, the file to edit is typically \filename{$HOME/.cshrc}, and +the lines to add might look like: + +\begin{sverbatim} +setenv PATH /usr/local/texlive/2011/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2011/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2011/texmf/doc/info:$INFOPATH +\end{sverbatim} + +If you already have settings somewhere in your ``dot'' files, naturally +the \TL\ directories should simply be merged in as appropriate. + + +\subsubsection{Environment variables: Global configuration} +\label{sec:envglobal} + +If you want to make these changes globally, or for a user newly added to +the system, then you are on your own; there is just too much variation +between systems in how and where these things are configured. + +Our two hints are: 1)~you may want to check for a file +\filename{/etc/manpath.config} and, if present, add lines such as + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2011/bin/i386-linux \ + /usr/local/texlive/2011/texmf/doc/man +\end{sverbatim} + +And 2)~check for a file \filename{/etc/environment} which may define the +search path and other default environment variables. + +In each (Unix) binary directory, we also create a symbolic link named +\code{man} to the directory \dirname{texmf/doc/man}. Some \code{man} +programs, such as the standard \MacOSX\ \code{man}, will automatically +find that, obviating the need for any man page setup. + + +\subsubsection{Internet updates after \DVD\ installation} +\label{sec:dvd-install-net-updates} + +If you installed \TL\ from \DVD\ and then wish to get updates from the +Internet, you need to run this command---\emph{after} you've updated +your search path (as described in the previous section): + +\begin{alltt} +> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +This tells \cmdname{tlmgr} to use a nearby \CTAN\ mirror for future updates. + +If there are problems with the automatic mirror selection, you can +specify a particular \CTAN\ mirror from the list at +\url{http://ctan.org/mirrors}. Use the exact path to the +\dirname{tlnet} subdir on that mirror, as shown above. + + +\htmlanchor{xetexfontconfig} +\subsubsection{Font configuration for \XeTeX} +\label{sec:font-conf-xetex} + +If you have installed the \filename{xetex} package on a Unix-compatible +system, you need to configure your system if you want \XeTeX\ to be able +to find the fonts shipped with \TL. To facilitate this, when the +\pkgname{xetex} package is installed (either at initial installation or +later), the necessary configuration file is created in +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. + +To set up the \TL{} fonts for system-wide use (assuming you have +suitable privileges), proceed as follows: +\begin{enumerate*} +\item Copy the \filename{texlive-fontconfig.conf} file to +\dirname{/etc/fonts/conf.d/09-texlive.conf}. +\item Run \Ucom{fc-cache -fsv}. +\end{enumerate*} + +If you do not have sufficient privileges to carry out the steps above, +you can instead do the following to make the \TL{} fonts available +to you as an individual \XeTeX{} user: +\begin{enumerate*} +\item Copy the \filename{texlive-fontconfig.conf} file to + \filename{~/.fonts.conf}, where \filename{~} is your home directory. +\item Run \Ucom{fc-cache -fv}. +\end{enumerate*} + + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context-mkiv} + +Both the `old' \ConTeXt{} (Mark \acro{II}) and the `new' \ConTeXt{} +(Mark \acro{IV}) should run out of the box after \TL{} installation, +and should need no special attention as long as you stick to +using \verb+tlmgr+ for updates. + +However, because \ConTeXt{} Mk\acro{IV} does not use the kpathsea +library, some setup will be required whenever you install new +files manually (without using \verb+tlmgr+). After each such +installation, each Mk\acro{IV} user must run: +\begin{sverbatim} +context --generate +\end{sverbatim} +to refresh the \ConTeXt{} disk cache data. +The resulting files are stored under \code{TEXMFCACHE}. +whose default value in \TL\ is \verb+TEXMSYSVAR;TEXMFVAR+. + +\ConTeXt\ Mk\acro{IV} will read from +all paths mentioned in \verb+TEXMFCACHE+, and write to the first +path that is writable. While reading, the last found match will +take precedence in the case of duplicated cache data. + +For more information, see +\url{http://wiki.contextgarden.net/Running_Mark_IV}. + + +\subsubsection{Integrating local and personal macros} +\label{sec:local-personal-macros} + +This is already mentioned implicitly in section~\ref{sec:texmftrees}: +\dirname{TEXMFLOCAL} (by default, +\dirname{/usr/local/texlive/texmf-local} or +\verb|%SystemDrive%\texlive\texmf-local| on Windows) +is intended for system-wide local fonts and macros; and +\dirname{TEXMFHOME} (by default, \dirname{$HOME/texmf} or +\verb|%USERPROFILE%\texmf|), is for personal fonts and macros. These +directories are intended to stick around from release to release, and +have their content seen automatically by a new \TL{} release. +Therefore, it is best to refrain from changing the definition of +\dirname{TEXMFLOCAL} to be too far away from the main \TL{} directory, +or you will need to manually change future releases. + +For both trees, files should be placed in their proper \TeX\ Directory +Structure (\TDS) subdirectories; see \url{http://tug.org/tds} or consult +\filename{texmf/web2c/texmf.cnf}. For instance, a \LaTeX{} class file or +package should be placed in \dirname{TEXMFLOCAL/tex/latex} or +\dirname{TEXMFHOME/tex/latex}, or a subdirectory thereof. + +\dirname{TEXMFLOCAL} requires an up-to-date filename database, or files +will not be found. You can update it with the command +\cmdname{mktexlsr} or use the `Reinit file database' button on the +configuration tab of the \TeX\ Live Manager \GUI. + +By default, each of these variables is defined to be a single directory, +as shown. This is not a hard-and-fast requirement. If you need to +easily switch back and forth between different versions of large +packages, for example, you can maintain multiple trees for your own +purposes. This is done by setting \dirname{TEXMFHOME} to the +list of directories, within braces, separated by commas: + +\begin{verbatim} + TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir} +\end{verbatim} + +Section~\ref{sec:brace-expansion} describes brace expansion further. + + +\subsubsection{Integrating third-party fonts} + +This is unfortunately a messy topic. Forget about it unless you want to +delve into many details of the \TeX{} installation. Don't forget to +check first what you get for free: see section~\ref{sec:tl-fonts}. + +A possible alternative is to use \XeTeX\ or Lua\TeX\ (see +section~\ref{sec:tex-extensions}), which let you use operating system +fonts without any installation in \TeX. + +If you do need to do this, see +\url{http://tug.org/fonts/fontinstall.html} for our best effort at +describing the procedure. If you rigorously maintain your local font +maps, \texttt{tlmgr generate updmap} \textit{may} be useful, notably in +moving from release to release; see the \cmdname{tlmgr} documentation. + + +\subsection{Testing the installation} +\label{sec:test-install} + +After installing \TL{} as best you can, you naturally want to test +it out, so you can start creating beautiful documents and\slash or fonts. + +This section gives some basic procedures for testing that the new system +is functional. We give Unix commands here; under \MacOSX{} and Windows, +you're more likely to run the tests through a graphical interface, but +the principles are the same. + +\begin{enumerate} + +\item Make sure that you can run the \cmdname{tex} program in the first +place: +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live ...) +kpathsea version 6.0.1 +Copyright ... D.E. Knuth. +... +\end{alltt} +If this comes back with `command not found' instead of version and +copyright information, or with an older version, most likely you don't +have the correct \dirname{bin} subdirectory in your \envname{PATH}. See +the environment-setting information on \p.\pageref{sec:env}. + +\item Process a basic \LaTeX{} file: +\begin{alltt} +> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-... (TeX Live ...) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +If this fails to find \filename{sample2e.tex} or other files, most +likely you have interference from old environment variables or +configuration files; we recommend unsetting all \TeX-related environment +variables for a start. (For a deep analysis, you can ask \TeX{} to +report on exactly what it is searching for, and finding; see ``Debugging +actions'' on page~\pageref{sec:debugging}.) + +\item Preview the result online: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +You should see a new window with a nice document explaining some of the +basics of \LaTeX{}. (Well worth reading, by the way, if you're new to +\TeX.) You do have to be running under X for \cmdname{xdvi} to work; if +you're not, or your \envname{DISPLAY} environment variable is set +incorrectly, you'll get an error \samp{Can't open display}. + +\item Create a \PS{} file for printing or display: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Create a \acro{PDF} file instead of \dvi{}; this processes the +\filename{.tex} file and writes \acro{PDF} directly: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Preview the \acro{PDF} file: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Neither \cmdname{gv} nor \cmdname{xpdf} are included in \TL{}, so you +must install them separately. See \url{http://www.gnu.org/software/gv} +and \url{http://www.foolabs.com/xpdf}, respectively. There are plenty +of other \acro{PDF} viewers, too. For Windows, we recommend trying +Sumatra PDF (\url{http://blog.kowalczyk.info/software/sumatrapdf}). + +\item Standard test files you may find useful in addition to +\filename{sample2e.tex}: + +\begin{ttdescription} +\item [small2e.tex] A simpler document than \filename{sample2e}, to +reduce the input size if you're having troubles. +\item [testpage.tex] Test if your printer introduces any offsets. +\item [nfssfont.tex] For printing font tables and tests. +\item [testfont.tex] Also for font tables, but using plain \TeX{}. +\item [story.tex] The most canonical (plain) \TeX{} test file of all. +You must type \samp{\bs bye} to the \code{*} prompt after \samp{tex +story.tex}. +\end{ttdescription} + +\item If you have installed the \filename{xetex} package, you can test +its access to system fonts as follows: +\begin{alltt} +> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +If you get an error message saying ``Invalid fontname `Latin Modern +Roman/ICU'\dots'', then you need to configure your system so that +\XeTeX{} can find the fonts shipped with \TL. See +Section~\ref{sec:font-conf-xetex}. + +\end{enumerate} + +\subsection{Links for additional downloadable software} + +If you are new to \TeX{}, or otherwise need help with actually writing +\TeX{} or \LaTeX{} documents, please visit +\url{http://tug.org/begin.html} for some introductory resources. + +Links for some other tools you may consider installing: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} with + supplementary packages from \acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, for graphics + processing and conversion +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, also for graphics. + +\item[\TeX-oriented editors] There is a wide choice, and it is a matter of the + user's taste. Here is a selection in alphabetical order (a few + here are for Windows only). + \begin{itemize*} + \item \cmdname{GNU Emacs} is available natively under Windows, see + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs with Auc\TeX} for Windows is available from \CTAN. + The AuC\TeX\ home page is \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} is available from + \url{http://mirror.ctan.org/support/LEd}. + \item \cmdname{SciTE} is available from + \url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} is free software, available from + \url{http://www.xm1math.net/texmaker}. + \item \cmdname{TexMakerX} is a fork of \cmdname{Texmaker} with + additional features; \url{http://texmakerx.sourceforge.net}. + \item \cmdname{TeXnicCenter} is free software, available from + \url{http://www.texniccenter.org} and in the pro\TeX{}t distribution. + \item \cmdname{TeXworks} is free software, available from + \url{http://tug.org/texworks} and installed for Windows and + \MacOSX\ as part of \TL. + \item \cmdname{Vim} is free software, available from + \url{http://www.vim.org}. + \item \cmdname{WinEdt} is shareware available though + \url{http://tug.org/winedt} or \url{http://www.winedt.com}. + \item \cmdname{WinShell} is available from \url{http://www.winshell.de}. + \end{itemize*} +\end{description} +For a much longer list of packages and programs, see +\url{http://tug.org/interest.html}. + + +\section{Specialized installations} + +The previous sections described the basic installation process. Here we +turn to some specialized cases. + +\htmlanchor{tlsharedinstall} +\subsection{Shared-user (or cross-machine) installations} +\label{sec:sharedinstall} + +\TL{} has been designed to be sharable between different users on one +system, and/or between different systems on a network. With a standard +directory layout, no hard paths are configured: the locations for files +needed by \TL{} programs are found relative to the programs. You can +see this in the principal configuration file +\filename{$TEXMFMAIN/web2c/texmf.cnf}, which contains lines such as +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +This means that adding the directory for \TL{} executables for their +platform to their search path is sufficient to get a working setup. + +By the same token, you can also install \TL{} locally and then move +the entire hierarchy afterwards to a network location. + +For Windows, a sample network installation script named +\filename{w32client} can be downloaded through +\url{http://tug.org/texlive/w32client.html}. It creates settings and +menu shortcuts for using an existing \TL{} installation on a \acro{LAN}. +It also registers an uninstaller \filename{w32unclient}, available +in the same zip file. See the web page for more information. + + +\htmlanchor{tlportable} +\subsection{Portable (\USB{}) installations} +\label{sec:portable-tl} + +The \code{-portable} installer option (or \code{V} command in the text +installer or corresponding \GUI{} option) creates a completely +self-contained \TL{} installation under a common root and forgoes system +integration. You can create such an installation directly on a \USB{} +stick, or copy it to a \USB{} stick afterwards. + +To run \TeX\ using this portable installation, you need to add the +appropriate binary directory to the search path during your terminal +session, as usual. On Windows, you can double-click +\filename{tl-tray-menu} at the root of the installation to choose +between a few common tasks, as shown in this screenshot: + +\medskip +\tlpng{tray-menu}{4cm} +\smallskip + +\noindent The `More\ldots' entry explains how you can customize this menu. + + +\htmlanchor{tlisoinstall} +\subsection{\ISO\ (or \DVD) installations} +\label{sec:isoinstall} + +If you don't need to update or otherwise modify your installation often, +and\slash or have several systems on which to use \TL{}, it may be +convenient to create an \ISO\ of your \TL{} installation, because: + +\begin{itemize} +\item Copying an \ISO\ between different computers is much + faster than copying a normal installation. +\item If you are dual-booting between different operating systems + and want them to share a \TL{} installation, an \ISO + installation is not tied to the idiosyncrasies and limitations of + other mutually supported filesystems (\acro{FAT32}, \acro{NTFS}, + \acro{HFS+}). +\item Virtual machines can simply mount such an \ISO. +\end{itemize} + +Of course you can also burn an \ISO\ to \DVD, if that is useful for you. + +Desktop \GNU/Linux/Unix systems, including \MacOSX, are able to mount an +\ISO. Apart from that, nothing changes compared to a normal hard disk +installation, see section \ref{sec:env}. + +When preparing such an \ISO\ installation, it is best to omit the +subdirectory for the release year, and have +\filename{texmf-local} at the same level as the other trees +(\filename{texmf}, \filename{texmf-dist}, etc.). You can do this with +the normal directory options in the installer. + +For a physical (rather than virtual) Windows system, you can burn the +\ISO\ to \acro{DVD}. However, it may be worth your while to investigate +free \ISO-mounting options. For Windows \acro{XP}, Microsoft offers +\filename{winxpvirtualcdcontrolpanel}. + +For Windows system integration, you can include the \filename{w32client} +scripts described in section~\ref{sec:sharedinstall} and at +\url{http://tug.org/texlive/w32client.html}, which work just as well for +an \ISO\ as for a network installation. + +On \MacOSX, TeXShop and \TeX{}works will be able to use the \acro{DVD} +installation if a symlink \filename{/usr/texbin} points to the +appropriate binary directory, e.g., +\begin{verbatim} +sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin +\end{verbatim} + +Historical note: \TL{} 2010 was the first \TL{} edition which was no +longer distributed `live'. However, it always required some acrobatics +to run from \DVD\ or \ISO; in particular, there was no way around +setting at least one extra environment variable. If you create your +\ISO\ from an existing installation then there is no need for this. + + +\htmlanchor{tlmgr} +\section{\cmdname{tlmgr}: Managing your installation} +\label{sec:tlmgr} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} in \GUI\ mode: main window, after `Load'.} +\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\hbox to \hsize{% + \vtop{\hsize=.59\linewidth + \null % make figures align at the top + \tlpng{tlmgr-general-options}{\hsize} + \caption{\texttt{tlmgr} in \GUI\ mode: General options} + \label{fig:tlmgr-general-options} + } + \hfil + \vtop{\hsize=.39\linewidth + \null + \tlpng{tlmgr-paper-options}{\hsize} + \caption{\texttt{tlmgr} in \GUI\ mode: Paper size options} + \label{fig:tlmgr-paper-options} + } +} +\end{figure} + +\TL{} includes a program named \prog{tlmgr} for managing \TL{} after the +initial installation. The programs \prog{updmap}, \prog{fmtutil} and +\prog{texconfig} are still included and will be retained in the future, +but \prog{tlmgr} is now the preferred interface. Its capabilities +include: + +\begin{itemize*} +\item installing, updating, backing up, restoring, and uninstalling + individual packages, optionally taking dependencies into account; +\item searching for and listing packages, etc.; +\item listing, adding, and removing platforms; +\item changing installation options such as paper size and source + location (see section~\ref{sec:location}). +\end{itemize*} + +\subsection{\cmdname{tlmgr} GUI mode} +\prog{tlmgr} can be started in \GUI{} mode (figure~\ref{fig:tlmgr-gui}) with +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +or in Windows via the Start menu: \texttt{Start}, \texttt{Programs}, +\texttt{TeX Live 2011}, \texttt{TeX Live Manager}. After clicking `Load' +it displays a list of available and installed packages. This assumes of +course that the installation source is valid and reachable. + +Figures~\ref{fig:tlmgr-general-options} and~\ref{fig:tlmgr-paper-options} +show the general and paper size option screens. + +\subsection{Sample \cmdname{tlmgr} command-line invocations} + +After the initial installation, you can update your system to the latest +versions available with: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +If this makes you nervous, first try +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +or (less verbose): +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} + +This more complex example adds a collection, for the engine \XeTeX, from +a local directory: + +\begin{alltt} +> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +It generates the following output (abridged): +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2011/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2011/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} + +As you can see, \prog{tlmgr} installs dependencies, and takes care of any +necessary post-install actions, including updating the filename database +and (re)generating formats. In the above, we generated new formats for +\XeTeX. + +To describe a package (or collection or scheme): +\begin{alltt} +> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +which produces +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +Last and most important, for full documentation see +\url{http://tug.org/texlive/tlmgr.html}, or: +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + + +\section{Notes on Windows} +\label{sec:windows} + +\subsection{Windows-specific features} +\label{sec:winfeatures} + +Under Windows, the installer does some extra things: +\begin{description} +\item[Menus and shortcuts.] A new `\TL{}' submenu of the + Start menu is installed, which contains entries for some \GUI{} + programs (\prog{tlmgr}, \prog{texdoctk}, the PS\_View (\prog{psv}) + PostScript previewer) and some documentation. +\item[File associations.] If enabled, \prog{TeXworks}, \prog{Dviout} + and \prog{PS\_view} become either the default program for + their respective filetypes, or get an entry in the `Open with' + right-click menus of those filetypes. +\item[Bitmap to eps converter.] Various bitmapped formats get an + entry \cmdname{bitmap2eps} in their `Open with' right-click + menu. Bitmap2eps is a simple script which lets \cmdname{sam2p} or + \cmdname{bmeps} do the real work. +\item[Automatic path adjustment.] No manual configuration steps are required. +\item[Uninstaller.] The installer creates an entry under `Add/Remove + Programs' for \TL. The uninstall tab of the \TeX\ Live Manager \GUI\ + refers to this. +\end{description} + +\subsection{Additional software included on Windows} + +To be complete, a \TL{} installation needs support packages that are not +commonly found on a Windows machine. \TL{} provides the missing +pieces: +\begin{description} +\item[Perl and Ghostscript.] Because of the importance of Perl and + Ghostscript, \TL{} includes `hidden' copies of these + programs. \TL{} programs that need them know where to find them, + but they don't betray their presence through environment variables + or registry settings. They aren't full-scale installations, and + shouldn't interfere with any system installations of Perl or + Ghostscript. + +\item[PS\_View.] Also installed is PS\_View, a \PS{} and \acro{PDF} + viewer; see figure~\ref{fig:psview}. + +\begin{figure}[tb] +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: very high magnifications available!}\label{fig:psview} +\end{figure} + +\item[dviout.] Also installed is \prog{dviout}, a \acro{DVI} viewer. + At first, when you preview files with \cmdname{dviout}, it will create + fonts, because screen fonts were not installed. After a while, you + will have created most of the fonts you use, and you will rarely see + the font-creation window. More information can be found in the + (highly recommended) on-line help. + +\item[\TeX{}works.] \TeX{}works is a \TeX-oriented editor with + an integrated \acro{PDF} viewer. + +\item[Command-line tools.] A number of Windows ports of common Unix + command-line programs are installed along with the usual \TL{} + binaries. These include \cmdname{gzip}, \cmdname{unzip} and the + utilities from the \cmdname{xpdf} suite (\cmdname{pdfinfo}, + \cmdname{pdffonts}, \ldots). The \cmdname{xpdf} viewer itself is not + available for Windows. Instead, you can download the Sumatra + \acro{PDF} viewer, which is based on \cmdname{xpdf}, from + \url{http://blog.kowalczyk.info/software/sumatrapdf}, among other options. + +\item[fc-list, fc-cache, \ldots] The tools from the fontconfig library allow + \XeTeX{} to handle system fonts on Windows. You can use + \prog{fc-list} to determine the font names to pass to \XeTeX's + extended \cs{font} command. If necessary, run \prog{fc-cache} + first to update font information. + +\end{description} + + +\subsection{User Profile is Home} +\label{sec:winhome} + +The Windows counterpart of a Unix home directory is the +\verb|%USERPROFILE%| directory. Under Windows \acro{XP}, this +is usually \verb|C:\Documents and Settings\|, and under +Windows Vista and Windows~7 it is \verb|C:\Users\|. In the +\filename{texmf.cnf} file, and \KPS{} in general, \verb|~| will expand +appropriately on both Windows and Unix. + + +\subsection{The Windows registry} +\label{sec:registry} + +Windows stores nearly all configuration data in its registry. The +registry contains a set of hierarchically organized keys, with several +root keys. The most important ones for installation programs are +\path{HKEY_CURRENT_USER} and \path{HKEY_LOCAL_MACHINE}, \path{HKCU} and +\path{HKLM} in short. The \path{HKCU} part of the registry is in the +user's home directory (see section~\ref{sec:winhome}). \path{HKLM} is +normally in a subdirectory of the Windows directory. + +In some cases, system information could be obtained from environment +variables but for other information, for example the location of +shortcuts, it is necessary to consult the registry. Setting environment +variables permanently also requires registry access. + + +\subsection{Windows permissions} +\label{sec:winpermissions} + +In later versions of Windows, a distinction is made between regular +users and administrators, where only the latter have free access to the +entire operating system. In practice, though, you could better describe +these classes of users as unprivileged users and normal users: being an +administrator is the rule, not the exception. Nevertheless, we have made +an effort to make \TL{} installable without administrative privileges. + +If the user is an administrator, there is an option to install for all +users. If this option is chosen, shortcuts are created for all users, +and the system environment is modified. Otherwise, shortcuts and menu +entries are created for the current user, and the user environment is +modified. + +Regardless of administrator status, the default root of \TL{} proposed +by the installer is always under \verb|%SystemDrive%|. The installer +always tests whether the root is writable for the current user. + +A problem may arise if the user is not an administrator and \TeX{} +already exists in the search path. Since the effective path +consists of the system path followed by the user path, the new \TL{} +would never get precedence. As a safeguard, the installer creates a +shortcut to the command-prompt in which the new \TL{} binary +directory is prepended to the local search path. The new \TL{} will +be always usable from within such a command-prompt. The shortcut for +\TeX{}works, if installed, also prepends \TL{} to the search path, so it +should also be immune to this path problem. + +For Vista and Windows~7 there is another twist: even if you are logged in as +administrator, you need to explicitly ask for administrator +privileges. In fact, there is not much point in logging in as +administrator. Instead, right-clicking on the program or shortcut +that you want to run usually gives you a choice `Run as +administrator'. + +\subsection{Increasing maximum memory on Windows and Cygwin} +\label{sec:cygwin-maxmem} + +Windows and Cygwin (see section~\ref{sec:cygwin} for Cygwin installation +specifics) users may find that they run out of memory when running some +of the programs shipped with \TL. For example, \prog{asy} might run out +of memory if you try to allocate an array of 25,000,000 reals, and +Lua\TeX\ might run out of memory if you try to process a document with a +lot of big fonts. + +For Cygwin, you can increase the amount of available memory by following +the instructions in the Cygwin User's Guide +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +For Windows, you have to create a file, say \code{moremem.reg}, with +these four lines: + +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +\noindent and then execute the command \code{regedit /s moremem.reg} as +administrator. (If you want to change memory only for the current user +instead of system-wide, use \code{HKEY\_CURRENT\_USER}.) + + +\section{A user's guide to Web2C} + +\Webc{} is an integrated collection of \TeX-related programs: \TeX{} +itself, \MF{}, \MP, \BibTeX{}, etc. It is the heart of \TL{}. The home +page for \Webc{}, with the current manual and more, is +\url{http://tug.org/web2c}. + +A bit of history: The original implementation was by Tomas Rokicki who, +in 1987, developed a first \TeX{}-to-C system based on change files +under Unix, which were primarily the original work of Howard Trickey and +Pavel Curtis. Tim Morgan became the maintainer of the system, and +during this period the name changed to Web-to-C\@. In 1990, Karl Berry +took over the work, assisted by dozens of additional contributors, and +in 1997 he handed the baton to Olaf Weber, who returned it to Karl in +2006. + +The \Webc{} system runs on Unix, 32-bit Windows systems, \MacOSX{}, and +other operating systems. It uses Knuth's original sources for \TeX{} and +other basic programs written in the \web{} literate programming system +and translates them into C source code. The core \TeX{} programs +handled in this way are: + +\begin{cmddescription} +\item[bibtex] Maintaining bibliographies. +\item[dvicopy] Expands virtual font references in \dvi{} files. +\item[dvitomp] \dvi{} to MPX (MetaPost pictures). +\item[dvitype] \dvi{} to human-readable text. +\item[gftodvi] Generic font proofsheets. +\item[gftopk] Generic to packed fonts. +\item[gftype] GF to human-readable text. +\item[mf] Creating typeface families. +\item[mft] Prettyprinting \MF{} source. +\item[mpost] Creating technical diagrams. +\item[patgen] Creating hyphenation patterns. +\item[pktogf] Packed to generic fonts. +\item[pktype] PK to human-readable text. +\item[pltotf] Plain text property list to TFM. +\item[pooltype] Display \web{} pool files. +\item[tangle] \web{} to Pascal. +\item[tex] Typesetting. +\item[tftopl] TFM to plain text property list. +\item[vftovp] Virtual font to virtual property list. +\item[vptovf] Virtual property list to virtual font. +\item[weave] \web{} to \TeX. +\end{cmddescription} + +\noindent The precise functions and syntax of these programs are +described in the documentation of the individual packages and of \Webc{} +itself. However, knowing a few principles governing the whole family of +programs will help you take advantage of your \Webc{} installation. + +All programs honor these standard \GNU options: +\begin{ttdescription} +\item[-{}-help] print basic usage summary. +\item[-{}-verbose] print detailed progress report. +\item[-{}-version] print version information, then exit. +\end{ttdescription} + +For locating files the \Webc{} programs use the path searching library +\KPS{} (\url{http://tug.org/kpathsea}). This library uses a combination +of environment variables and a configuration files to optimize searching +the (huge) collection of \TeX{} files. \Webc{} can look at many +directory trees simultaneously, which is useful in maintaining \TeX's +standard distribution and local and personal extensions in distinct +trees. To speed up file searches, the root of each tree has a file +\file{ls-R}, containing an entry showing the name and relative pathname +for all files under that root. + + +\subsection{Kpathsea path searching} +\label{sec:kpathsea} + +Let us first describe the generic path searching mechanism of the \KPS{} +library. + +We call a \emph{search path} a colon- or semicolon\hyph sepa\-rated list +of \emph{path elements}, which are basically directory names. A +search path can come from (a combination of) many sources. To look up +a file \samp{my-file} along a path \samp{.:/dir}, \KPS{} checks each +element of the path in turn: first \file{./my-file}, then +\file{/dir/my-file}, returning the first match (or possibly all +matches). + +In order to adapt optimally to all operating systems' conventions, on +non-Unix systems \KPS{} can use filename separators different from +colon (\samp{:}) and slash (\samp{/}). + +To check a particular path element \var{p}, \KPS{} first checks if a +prebuilt database (see ``Filename data\-base'' on +page~\pageref{sec:filename-database}) applies to \var{p}, i.e., if the +database is in a directory that is a prefix of \var{p}. If so, the path +specification is matched against the contents of the database. + +If the database does not exist, or does not apply to this path +element, or contains no matches, the filesystem is searched (if this +was not forbidden by a specification starting with \samp{!!}\ and if +the file being searched for must exist). \KPS{} constructs the list +of directories that correspond to this path element, and then checks +in each for the file being sought. + +The ``file must exist'' condition comes into play with \samp{.vf} files and +input files read by \TeX's \cs{openin} command. Such files may not +exist (e.g., \file{cmr10.vf}), and so it would be wrong to search the +disk for them. Therefore, if you fail to update \file{ls-R} when you +install a new \samp{.vf} file, it will never be found. +Each path element is checked in turn: first the database, then the +disk. If a match is found, the search stops and the result is +returned. + +Although the simplest and most common path element is a directory +name, \KPS{} supports additional features in search paths: layered +default values, environment variable names, config file values, users' +home directories, and recursive subdirectory searching. Thus, we say +that \KPS{} \emph{expands} a path element, meaning it transforms all +the specifications into basic directory name or names. This is +described in the following sections in the same order as it takes +place. + +Note that if the filename being searched for is absolute or explicitly +relative, i.e., starts with \samp{/} or \samp{./} or \samp{../}, +\KPS{} simply checks if that file exists. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Path sources} +\label{sec:path-sources} + +A search path can come from many sources. In the order in which +\KPS{} uses them: + +\begin{enumerate} +\item + A user-set environment variable, for instance, \envname{TEXINPUTS}\@. + Environment variables with a period and a program name appended + override; e.g., if \samp{latex} is the name of the program being run, + then \envname{TEXINPUTS.latex} will override \envname{TEXINPUTS}. +\item + A program-specific configuration file, for exam\-ple, a line + \samp{S /a:/b} in \cmdname{dvips}'s \file{config.ps}. +\item A \KPS{} configuration file \file{texmf.cnf}, containing a line like + \samp{TEXINPUTS=/c:/d} (see below). +\item The compile-time default. +\end{enumerate} +\noindent You can see each of these values for a given search path by +using the debugging options (see ``Debugging actions'' on +page~\pageref{sec:debugging}). + +\subsubsection{Config files} + +\KPS{} reads \emph{runtime configuration files} named \file{texmf.cnf} +for search path and other definitions. The search path used to look +for these files is named \envname{TEXMFCNF}, but we do not recommend +setting this (or any) environment variable. + +Instead, normal installation results in a file +\file{.../2011/texmf.cnf}. If you must make changes to the defaults +(not normally necessary), this is the place to put them. The main +configuration file is in \file{.../2011/texmf/web2c/texmf.cnf}. You +should not edit this latter file, as your changes will be lost when the +distributed version is updated. + +\emph{All} \file{texmf.cnf} files in the search path will be read and +definitions in earlier files override those in later files. For +example, with a search path of \verb|.:$TEXMF|, values from +\file{./texmf.cnf} override those from \verb|$TEXMF/texmf.cnf|. + +\begin{itemize} +\item + Comments start with \code{\%} and continue to the end of the line. +\item + Blank lines are ignored. +\item + A \bs{} at the end of a line acts as a continuation character, + i.e., the next line is appended. Whitespace at the beginning of + continuation lines is not ignored. +\item + Each remaining line has the form: +\begin{alltt} + \var{variable}[.\var{progname}] [=] \var{value} +\end{alltt}% + where the \samp{=} and surrounding whitespace are optional. +\item + The \ttvar{variable} name may contain any character other + than whitespace, \samp{=}, or \samp{.}, but sticking to + \samp{A-Za-z\_} is safest. +\item + If \samp{.\var{progname}} is present, the definition only + applies if the program that is running is named + \texttt{\var{progname}} or \texttt{\var{progname}.exe}. This allows + different flavors of \TeX{} to have different search paths, for + example. +\item \var{value} may contain any characters except + \code{\%} and \samp{@}. The + \code{\$\var{var}.\var{prog}} feature is not available on the + right-hand side; instead, you must use an additional variable. A + \samp{;}\ in \var{value} is translated to \samp{:}\ if + running under Unix; this is useful to be able to have a single + \file{texmf.cnf} for Unix, \acro{MS-DOS} and Windows systems. +\item + All definitions are read before anything is expanded, so + variables can be referenced before they are defined. +\end{itemize} +A configuration file fragment illustrating most of these points is +\ifSingleColumn +shown below: + +\verbatiminput{examples/ex5.tex} +\else +shown in Figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Path expansion} +\label{sec:path-expansion} + + +\KPS{} recognizes certain special characters and constructions in +search paths, similar to those available in Unix shells. As a +general example, the complex path, +\verb+~$USER/{foo,bar}//baz+, expands to all subdirectories under +directories \file{foo} and \file{bar} in \texttt{\$USER}'s home +directory that contain a directory or file \file{baz}. These +expansions are explained in the sections below. +%$ +\subsubsection{Default expansion} +\label{sec:default-expansion} + +If the highest-priority search path (see ``Path sources'' on +page~\pageref{sec:path-sources}) contains an \emph{extra colon} (i.e., +leading, trailing, or doubled), \KPS{} inserts at that point the +next-highest-prio\-rity search path that is defined. If that inserted +path has an extra colon, the same happens with the next highest. For +example, given an environment variable setting + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +and a \code{TEXINPUTS} value from \file{texmf.cnf} of + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +then the final value used for searching will be: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Since it would be useless to insert the default value in more than one +place, \KPS{} changes only one extra \samp{:}\ and leaves any others in +place. It checks first for a leading \samp{:}, then a trailing +\samp{:}, then a doubled \samp{:}. + +\subsubsection{Brace expansion} +\label{sec:brace-expansion} + +A useful feature is brace expansion, which means that, for instance, +\verb+v{a,b}w+ expands to \verb+vaw:vbw+. Nesting is allowed. +This is used to implement multiple \TeX{} hierarchies, by +assigning a brace list to \code{\$TEXMF}. +For example, in \file{texmf.cnf}, a definition like this +(simplified for this example) is made: +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +Using this you can then write something like +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +which means that, after looking in the current directory, the +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} +and \code{\$TEXMFMAIN/tex} trees \emph{only}) will be searched (the +last two use using \file{ls-R} data base files). It is a convenient +way for running two parallel \TeX{} structures, one ``frozen'' (on a +\CD, for instance) and the other being continuously updated with new +versions as they become available. By using the \code{\$TEXMF} +variable in all definitions, one is sure to always search the +up-to-date tree first. + +\subsubsection{Subdirectory expansion} +\label{sec:subdirectory-expansion} + +Two or more consecutive slashes in a path element following a directory +\var{d} is replaced by all subdirectories of \var{d}: first those +subdirectories directly under \var{d}, then the subsubdirectories under +those, and so on. At each level, the order in which the directories are +searched is \emph{unspecified}. + +If you specify any filename components after the \samp{//}, only +subdirectories with matching components are included. For example, +\samp{/a//b} expands into directories \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, and so on, but not \file{/a/b/c} or \file{/a/1}. + +Multiple \samp{//} constructs in a path are possible, but +\samp{//} at the beginning of a path is ignored. + +\subsubsection{List of special characters and their meaning: a summary} + +The following list summarizes the special characters in \KPS{} +configuration files. + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Separator in path specification; at the beginning or + the end of a path it substitutes the default path expansion.\par +\item[\CODE{;}] Separator on non-Unix systems (acts like \code{:}). +\item[\CODE{\$}] Variable expansion. +\item[\CODE{\string~}] Represents the user's home directory. +\item[\CODE{\char`\{...\char`\}}] Brace expansion. +\item[\CODE{//}] Subdirectory expansion (can occur anywhere in + a path, except at its beginning). +\item[\CODE{\%}] Start of comment. +\item[\CODE{\bs}] Continuation character (allows multi-line entries). +\item[\CODE{!!}] Search \emph{only} database to locate file, \emph{do + not} search the disk. +\end{ttdescription} + + +\subsection{Filename databases} +\label{sec:filename-database} + +\KPS{} goes to some lengths to minimize disk accesses for searches. +Nevertheless, at installations with enough directories, searching each +possible directory for a given file can take an excessively long time +(this is especially true if many hundreds of font directories have to +be traversed.) Therefore, \KPS{} can use an externally-built plain text +``database'' file named \file{ls-R} that maps files to directories, +thus avoiding the need to exhaustively search the disk. + +A second database file \file{aliases} allows you to give additional +names to the files listed in \file{ls-R}. This can be helpful to +confirm to \acro{DOS} 8.3 filename conventions in source files. + +\subsubsection{The filename database} +\label{sec:ls-R} + +As explained above, the name of the main filename database must be +\file{ls-R}. You can put one at the root of each \TeX{} hierarchy in +your installation that you wish to be searched (\code{\$TEXMF} by +default). \KPS{} looks for +\file{ls-R} files along the \code{TEXMFDBS} path. + +The recommended way to create and maintain \samp{ls-R} is to run the +\code{mktexlsr} script included with the distribution. It is invoked +by the various \samp{mktex}\dots\ scripts. In principle, this script +just runs the command +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +presuming your system's \code{ls} produces the right output format +(\GNU \code{ls} is all right). To ensure that the database is +always up-to-date, it is easiest to rebuild it regularly via +\code{cron}, so that it is automatically updated when the installed +files change, such as after installing or updating a \LaTeX{} package. + +If a file is not found in the database, by default \KPS{} goes ahead +and searches the disk. If a particular path element begins with +\samp{!!}, however, \emph{only} the database will be searched for that +element, never the disk. + + +\subsubsection{kpsewhich: Standalone path searching} +\label{sec:invoking-kpsewhich} + +The \texttt{kpsewhich} program exercises path searching independent of any +particular application. This can be useful as a sort of \code{find} +program to locate files in \TeX{} hierarchies (this is used heavily in +the distributed \samp{mktex}\dots\ scripts). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +The options specified in \ttvar{option} start with either \samp{-} +or \samp{-{}-}, and any unambiguous abbreviation is accepted. + +\KPS{} looks up each non-option argument on the command line as a +filename, and returns the first file found. There is no option to +return all the files with a particular name (you can run the Unix +\samp{find} utility for that). + +The most common options are described next. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Set the resolution to \ttvar{num}; this only affects \samp{gf} + and \samp{pk} lookups. \samp{-D} is a synonym, for compatibility + with \cmdname{dvips}. Default is 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Set the format for lookup to \ttvar{name}. By default, the + format is guessed from the filename. For formats which do not have + an associated unambiguous suffix, such as \MP{} support files and + \cmdname{dvips} configuration files, you have to specify the name as + known to \KPS{}, such as \texttt{tex} or \texttt{enc files}. Run + \texttt{kpsewhich -{}-help} for a list. + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Set the mode name to \ttvar{string}; this only affects \samp{gf} + and \samp{pk} lookups. No default: any mode will be found. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Do everything possible to find the files, notably including + searching the disk. By default, only the \file{ls-R} database is + checked, in the interest of efficiency. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Search along the path \ttvar{string} (colon-separated as usual), + instead of guessing the search path from the filename. \samp{//} and + all the usual expansions are supported. The options \samp{-{}-path} + and \samp{-{}-format} are mutually exclusive. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Set the program name to \texttt{\var{name}}. + This can affect the search paths via the \texttt{.\var{progname}} + feature. + The default is \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + shows the path used for file lookups of file type \texttt{\var{name}}. + Either a filename extension (\code{.pk}, \code{.vf}, etc.) or a + name can be used, just as with \samp{-{}-format} option. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + sets the debugging options to \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Examples of use} +\label{sec:examples-of-use} + +Let us now have a look at \KPS{} in action. Here's a straightforward search: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +We are looking for the file \file{article.cls}. Since the \samp{.cls} +suffix is unambiguous we do not need to specify that we want to look for a +file of type \optname{tex} (\TeX{} source file directories). We find it in +the subdirectory \file{tex/latex/base} below the \samp{texmf-dist} \TL\ +directory. Similarly, all of the following are found without problems +thanks to their unambiguous suffix. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +By the way, that last is a \BibTeX{} bibliography database for +\textsl{TUGboat} articles. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Font bitmap glyph files of type \file{.pk} are used by display +programs like \cmdname{dvips} and \cmdname{xdvi}. Nothing is returned in +this case since there are no pre-generated Computer Modern \samp{.pk} +files in \TL{}\Dash the Type~1 variants are used by default. +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +For these fonts (a phonetic alphabet from the University of Washington) +we had to generate \samp{.pk} files, and since the default \MF{} mode on +our installation is \texttt{ljfour} with a base resolution of 600\dpi{} +(dots per inch), this instantiation is returned. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +In this case, when specifying that we are interested in a resolution +of 300\dpi{} (\texttt{-dpi=300}) we see that no such font is available on +the system. A program like \cmdname{dvips} or \cmdname{xdvi} would +go off and actually build the required \texttt{.pk} files +using the script \cmdname{mktexpk}. + +Next we turn our attention to \cmdname{dvips}'s header and configuration +files. We first look at one of the commonly used files, the general +prologue \file{tex.pro} for \TeX{} support, before turning our attention +to the generic configuration file (\file{config.ps}) and the \PS{} font +map \file{psfonts.map}\Dash as of 2004, map and encoding files have +their own search paths and new location in \dirname{texmf} trees. As +the \samp{.ps} suffix is ambiguous we have to specify explicitly which +type we are considering (\optname{dvips config}) for the file +\texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +We now take a closer look at the \acro{URW} Times \PS{} support +files. The prefix for these in the standard font naming scheme is +\samp{utm}. The first file we look at is the configuration file, +which contains the name of the map file: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +The contents of that file is +\begin{alltt} + p +utm.map +\end{alltt} +which points to the file \file{utm.map}, which we want to +locate next. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +This map file defines the file names of the Type~1 \PS{} fonts in +the URW collection. Its contents look like (we only show part of the +lines): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +It should be evident from these examples how you can easily locate the +whereabouts of a given file. This is especially important if you suspect +that the wrong version of a file is picked up somehow, since +\cmdname{kpsewhich} will show you the first file encountered. + +\subsubsection{Debugging actions} +\label{sec:debugging} + +Sometimes it is necessary to investigate how a program resolves file +references. To make this practical, \KPS{} offers various levels of +debugging output: + +\begin{ttdescription} +\item[\texttt{\ 1}] \texttt{stat} calls (disk lookups). When running + with an up-to-date \file{ls-R} database this should almost give no + output. +\item[\texttt{\ 2}] References to hash tables (such as \file{ls-R} + databases, map files, configuration files). +\item[\texttt{\ 4}] File open and close operations. +\item[\texttt{\ 8}] General path information for file types + searched by \KPS. This is useful to find out where a particular + path for the file was defined. +\item[\texttt{16}] Directory list for each path element (only relevant + for searches on disk). +\item[\texttt{32}] File searches. +\item[\texttt{64}] Variable values. +\end{ttdescription} +A value of \texttt{-1} will set all the above options; in practice, +this is usually the most convenient. + +Similarly, with the \cmdname{dvips} program, by setting a combination of +debug switches, one can follow in detail where files are being picked up +from. Alternatively, when a file is not found, the debug trace shows in +which directories the program looks for the given file, so that one can +get an indication what the problem~is. + +Generally speaking, as most programs call the \KPS{} library +internally, one can select a debug option by using the +\envname{KPATHSEA\_DEBUG} environment variable, and setting it to (a +combination of) values as described in the above list. + +(Note for Windows users: it is not easy to redirect +all messages to a file in this system. For diagnostic purposes +you can temporarily \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Let us consider, as an example, a small \LaTeX{} source file, +\file{hello-world.tex}, which contains the following input. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +This little file only uses the font \file{cmr10}, so let us look at +how \cmdname{dvips} prepares the \PS{} file (we want to use the Type~1 +version of the Computer Modern fonts, hence the option \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In this case we have combined \cmdname{dvips}'s debug class 4 (font +paths) with \KPS's path element expansion (see \cmdname{dvips} Reference +Manual, \OnCD{texmf/doc/dvips/dvips.pdf}). +The output (slightly rearranged) appears in +Figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} starts by locating its working files. First, +\file{texmf.cnf} is found, which gives the definitions of the search +paths for the other files, then the file database \file{ls-R} (to +optimize file searching) and the file \file{aliases}, which makes it +possible to declare several names (e.g., a short \acro{DOS}-like 8.3 and +a more natural longer version) for the same file. Then \cmdname{dvips} +goes on to find the generic configuration file \file{config.ps} +before looking for the customization file \file{.dvipsrc} (which, in +this case is \emph{not found}). Finally, \cmdname{dvips} locates the +config file for the Computer Modern \PS{} fonts \file{config.cms} +(this was initiated with the \texttt{-Pcms} option on the \cmdname{dvips} +command). This file contains the list of the map files which +define the relation between the \TeX{}, \PS{} and file system +names of the fonts. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} thus goes on to find all these files, plus the generic +map file \file{psfonts.map}, which is always loaded (it contains +declarations for commonly used \PS{} fonts; see the last part of +Section \ref{sec:examples-of-use} for more details about \PS{} map +file handling). + +At this point \cmdname{dvips} identifies itself to the user: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Then it goes on to look for the prolog file \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Then it goes on to look for the prolog file \file{texc.pro} (see +Figure~\ref{fig:dvipsdbgb}). +\fi + +After having found the file in question, \cmdname{dvips} outputs +the date and time, and informs us that it will generate the +file \file{hello-world.ps}, then that it needs the font file +\file{cmr10}, and that the latter is declared as ``resident'' (no +bitmaps needed): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Now the search is on for the file \file{cmr10.tfm}, which is found, +then a few more prolog files (not shown) are referenced, and finally +the Type~1 instance \file{cmr10.pfb} of the font is located and +included in the output file (see last line). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Runtime options} + +Another useful feature of \Webc{} is its possibility to control a number +of memory parameters (in particular, array sizes) via the runtime file +\file{texmf.cnf} read by \KPS{}. The memory settings can be found in +Part~3 of that file in the \TL{} distribution. The more important +are: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + Total words of memory available, for + \TeX{}, \MF{} and \MP. You must make a new format file for each + different setting. For instance, you could generate a ``huge'' + version of \TeX{}, and call the format file \texttt{hugetex.fmt}. + Using the standard way of specifying the program name used by \KPS{}, + the particular value of the \texttt{main\_memory} variable will then + be read from \file{texmf.cnf}. +\item[\texttt{extra\_mem\_bot}] + Extra space for ``large'' \TeX{} data structures: + boxes, glue, breakpoints, etc. Especially useful if you use + \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Number of words for font information available for \TeX. This + is more or less the total size of all \acro{TFM} files read. +\item[\texttt{hash\_extra}] + Additional space for the hash table of control sequence names. + Only $\approx$10,000 control sequences can be stored in the main + hash table; if you have a large book with numerous cross-references, + this might not be enough. The default value of + \texttt{hash\_extra} is \texttt{50000}. +\end{ttdescription} + +\noindent Of course, this facility is no substitute for truly dynamic +arrays and memory allocation, but since these are extremely difficult to +implement in the present \TeX{} source, these runtime parameters provide +a practical compromise allowing some flexibility. + + +\begin{comment} +\section{Building on a new Unix platform} + +If you have a platform for which executables are not included, you will +need to compile \TeX{} and friends. This is not as hard as it +sounds. What you need is all in the directory \texttt{source} in the +distribution. + +\subsection{Prerequisites} + +You will need at least 100 megabytes of disk space to compile all of +\TeX{} and its support programs. You'll also need an \acro{ANSI} C +compiler, a \cmdname{make} utility, a lexical scanner, and a parser +generator. We recommend the \GNU version of these programs +(\cmdname{gcc}, \GNU \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). You may be able to work with other C compilers and +\cmdname{make} programs, but you will need a good understanding of +building Unix programs to sort out problems. + +Also, the command \texttt{uname} must return a sensible value. + + +\subsection{Configuration} + +To begin, perform a normal installation of \TL{} to your disk (see +section~\ref{sec:install-disk} on +\p.\pageref{sec:install-disk}). You may wish to skip installing +all of the prebuilt binaries. + +Then, unpack the source from the compressed \texttt{tar} file in the +directory \dirname{source} to your disk and change directory to where +you placed it. + +Next, run \cmdname{configure} with a command line like this: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +The \optname{-prefix} directory is the one where you installed the +support tree; the directory layout will be as follows (where \$TEXDIR +stands for the directory you chose): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & main tree with fonts,\\ + & \qquad macros, etc\\ + \dirname{$TEXDIR/man} & Unix manual pages\\ + \dirname{$TEXDIR/info} & \GNU style Info manuals\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaries\\ +\end{tabular} +%$ + +If you want to leave out the \dirname{$PLATFORM} directory level, +i.e., put the binaries directly into \dirname{$TEXDIR/bin}, specify +the \verb|--disable-multiplatform| option to \cmdname{configure}. + +Have a look at the output of \verb|./configure --help| for more +options you can use. For example, you can skip building of \OMEGA{} and +\eTeX{}. + + +\subsection{Running \cmdname{make}} + +Make sure the shell variable or option \texttt{noclobber} is not set. +Then, run the main \cmdname{make} like this: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +and relax\ldots + +Alternatively, you want to log all the output, as in: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Before you believe that everything went ok, please check the log file +for errors: \GNU \cmdname{make} always uses the string \samp{***} +whenever a command fails. Also, check if all the programs were built: + +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +The result should be over 200 (you can check the exact number with the +\dirname{bin} directory contents in the distribution). + +If you need special privileges for \texttt{make install}, you can +separate the \samp{make world} into two different runs, like this: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +After you've installed your new binaries, you should follow the normal +post-installation procedures, given in section~\ref{sec:postinstall} +(\p.\pageref{sec:postinstall}). + +Also, if you'd like to make your binaries available to others, please +contact us. We'll be happy to put them on the \TL\ web pages. +\end{comment} + +\htmlanchor{ack} +\section{Acknowledgements} + +\TL{} is a joint effort by virtually all of the \TeX{} user groups. +This edition of \TL{} was overseen by Karl Berry. The other principal +contributors, past and present, are listed below. + +\begin{itemize*} + +\item The English, German, Dutch, and Polish \TeX{} user groups +(\acro{TUG}, \acro{DANTE} e.V., \acro{NTG}, and \acro{GUST}, +respectively), which provide the necessary technical and administrative +infrastructure. Please join the \TeX\ user group near you! (See +\url{http://tug.org/usergroups.html}.) + +\item The \acro{CTAN} team, notably Robin Fairbairns, Jim Hef{}feron, +and Rainer Sch\"opf, which distributes the \TL{} images and provides the +common infrastructure for package updates, upon which \TL{} depends. + +\item Nelson Beebe, for making many platforms available to \TL\ +developers, and his own comprehensive testing. + +\item John Bowman, for making many changes to his advanced graphics +program Asymptote to make it work in \TL. + +\item Peter Breitenlohner and the \eTeX\ team for the stable foundation +of future \TeX's, and Peter specifically for stellar help with \GNU\ +autotools usage throughout \TL. + +\item Jin-Hwan Cho and all of the DVIPDFM$x$ team, for their +excellent driver and responsiveness to configuration issues. + +\item Thomas Esser, without whose marvelous \teTeX{} package \TL{} +would have never existed. + +\item Michel Goossens, who co-authored the original documentation. + +\item Eitan Gurari, whose \TeX4ht is used to create the \HTML{} +version of this documentation, and who worked tirelessly to improve it +at short notice, every year. Eitan prematurely passed away in June +2009, and we dedicate this documentation to his memory. + +\item Hans Hagen, for much testing and making his \ConTeXt\ format +(\url{http://pragma-ade.com}) work within \TL's framework. + +\item \Thanh, Martin Schr\"oder, and the pdf\TeX\ team +(\url{http://pdftex.org}) for continuing enhancements of \TeX's +abilities. + +\item Hartmut Henkel, for significant development contributions to +pdf\TeX\, Lua\TeX, and more. + +\item Taco Hoekwater, for major renewed development efforts on MetaPost and +(Lua)\TeX\ (\url{http://luatex.org}) itself, incorporating +\ConTeXt\ into \TL, giving Kpathsea multi-threaded functionality, and +much more. + +\item Pawe{\l} Jackowski, for the Windows installer \cmdname{tlpm}, +and Tomasz {\L}uczak, for \cmdname{tlpmgui}, used in past releases. + +\item Akira Kakuto, for providing the Windows +binaries from his \acro{W32TEX} distribution for Japanese \TeX\ +(\url{http://w32tex.org}), and many other development contributions. + +\item Jonathan Kew, for developing the remarkable \XeTeX{} engine and +taking the time and trouble to integrate it in \TL{}, as well as the +initial version of the Mac\TeX\ installer, and also for our recommended +front-end \TeX{}works. + +\item Dick Koch, for maintaining Mac\TeX\ (\url{http://tug.org/mactex}) +in very close tandem with \TL{}, and for his great good cheer in doing +so. + +\item Reinhard Kotucha, for major contributions to the \TL{} 2008 +infrastructure and installer, as well as Windows research efforts, the +\texttt{getnonfreefonts} script, and more. + +\item Siep Kroonenberg, also for major contributions to the \TL{} 2008 +infrastructure and installer, especially on Windows, and for the bulk of +work updating this manual describing those features. + +\item Heiko Oberdiek, for the \pkgname{epstopdf} package and many +others, compressing the huge \pkgname{pst-geo} data files so we could +include them, and most of all, for his remarkable work on +\pkgname{hyperref}. + +\item Petr Ol\v{s}ak, who coordinated and checked all the Czech and Slovak +material very carefully. + +\item Toshio Oshima, for his \cmdname{dviout} previewer for Windows. + +\item Manuel P\'egouri\'e-Gonnard, for helping with package updates, +documentation improvements, and \cmdname{texdoc} development. + +\item Fabrice Popineau, for the original Windows support in \TL{} and +work on the French documentation. + +\item Norbert Preining, the principal architect of the \TL{} 2008 +infrastructure and installer, and also for coordinating the Debian +version of \TL{} (together with Frank K\"uster), making many suggestions +along the way. + +\item Sebastian Rahtz, for originally creating \TL{} and maintaining it +for many years. + +\item Phil Taylor, for setting up the BitTorrent downloads. + +\item Tomasz Trzeciak, for wide-ranging help with Windows. + +\item Vladimir Volovich, for substantial help with porting and other +maintenance issues, and especially for making it feasible to include +\cmdname{xindy}. + +\item Staszek Wawrykiewicz, the principal tester for all of \TL{}, +and coordinator of the many major Polish contributions: fonts, Windows +installation, and more. + +\item Olaf Weber, for his patient maintenance of \Webc. + +\item Gerben Wierda, for creating and maintaining the original \MacOSX\ +support, and much integration and testing. + +\item Graham Williams, on whose work the \TeX\ Catalogue of packages depends. + +\end{itemize*} + +Builders of the binaries: +Alan Braslau (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}), +Peter Breitenlohner (\pkgname{x86\_64-linux}), +Karl Berry (\pkgname{i386-linux}, \pkgname{sparc-linux}), +Ken Brown (\pkgname{i386-cygwin}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}), +Nikola Le\v{c}i\'c (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +Norbert Preining (\pkgname{alpha-linux}), +Jukka Salmi (\pkgname{i386-netbsd}), +Thomas Schmitz (\pkgname{powerpc-linux}), +Apostolos Syropoulos (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix}). +For information on the \TL{} build process, see +\url{http://tug.org/texlive/build.html}. + +Current documentation translators: +Boris Veytsman (Russian), +Jjgod Jiang, Jinsong Zhao, Yue Wang, \& Helin Gai (Chinese), +Klaus H\"oppner (German), +Manuel P\'egouri\'e-Gonnard (French), +Marco Pallante (Italian), +Nikola Le\v{c}i\'c (Serbian), +Petr Sojka \& Jan Busa (Czech\slash Slovak), +Staszek Wawrykiewicz (Polish). The \TL{} documentation web page +is \url{http://tug.org/texlive/doc.html}. + +Of course the most important acknowledgement must go to Donald Knuth, +first for inventing \TeX, and then for giving it to the world. + + + +\section{Release history} +\label{sec:history} + +\subsection{Past} + +Discussion began in late 1993 when the Dutch \TeX{} Users Group was +starting work on its 4All\TeX{} \CD{} for \acro{MS-DOS} users, and it +was hoped at that time to issue a single, rational, \CD{} for all +systems. This was too ambitious a target for the time, but it did spawn +not only the very successful 4All\TeX{} \CD{}, but also the \acro{TUG} +Technical Council working group on a \emph{\TeX{} Directory Structure} +(\url{http://tug.org/tds}), which specified how to create consistent and +manageable collections of \TeX{} support files. A complete draft of the +\TDS{} was published in the December 1995 issue of \textsl{TUGboat}, and +it was clear from an early stage that one desirable product would be a +model structure on \CD{}. The distribution you now have is a very direct +result of the working group's deliberations. It was also clear that the +success of the 4All\TeX{} \CD{} showed that Unix users would benefit +from a similarly easy system, and this is the other main strand of +\TL. + +We first undertook to make a new Unix-based \TDS{} \CD{} in the autumn +of 1995, and quickly identified Thomas Esser's \teTeX{} as the ideal +setup, as it already had multi-platform support and was built with +portability across file systems in mind. Thomas agreed to help, and work +began seriously at the start of 1996. The first edition was released in +May 1996. At the start of 1997, Karl Berry completed a major new release +of Web2c, which included nearly all the features which Thomas Esser had +added in \teTeX, and we decided to base the 2nd edition of the \CD{} on +the standard \Webc, with the addition of \teTeX's \texttt{texconfig} +script. The 3rd edition of the \CD{} was based on a major revision of +\Webc, 7.2, by Olaf Weber; at the same time, a new revision of \teTeX +was being made, and \TL{} included almost all of its features. The +4th edition followed the same pattern, using a new version of \teTeX, +and a new release of \Webc{} (7.3). The system now included a complete +Windows setup. + +For the 5th edition (March 2000) many parts of the \CD{} were revised +and checked, updating hundreds of packages. Package details were stored +in XML files. But the major change for \TeX\ Live 5 was that all +non-free software was removed. Everything in \TL{} is now intended +to be compatible with the Debian Free Software Guidelines +(\url{http://www.debian.org/intro/free}); we have done our best to check +the license conditions of all packages, but we would very much +appreciate hearing of any mistakes. + +The 6th edition (July 2001) had much more material updated. The major +change was a new install concept: the user could select a more exact set +of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, +etc., but also prepares an appropriate \texttt{language.dat}. + +The 7th edition of 2002 had the notable addition of \MacOSX{} support, +and the usual myriad of updates to all sorts of packages and +programs. An important goal was integration of the source back with +\teTeX, to correct the drift apart in versions~5 and~6. + +\subsubsection{2003} + +In 2003, with the continuing flood of updates and additions, we found +that \TL{} had grown so large it could no longer be contained on a +single \CD, so we split it into three different distributions (see +section~\ref{sec:tl-coll-dists}, \p.\pageref{sec:tl-coll-dists}). In +addition: + +\begin{itemize*} +\item At the request of the \LaTeX{} team, we changed the standard + \cmdname{latex} and \cmdname{pdflatex} commands to now use \eTeX{} (see + \p.\pageref{text:etex}). +\item The new Latin Modern fonts were included (and are recommended). +\item Support for Alpha \acro{OSF} was removed + (\acro{HPUX} support was removed previously), since no one had (or + volunteered) hardware available on which to compile new binaries. +\item Windows setup was substantially changed; for the first time + an integrated environment based on XEmacs was introduced. +\item Important supplementary programs for Windows + (Perl, Ghost\-script, Image\-Magick, Ispell) are now installed + in the \TL{} installation directory. +\item Font map files used by \cmdname{dvips}, \cmdname{dvipdfm} + and \cmdname{pdftex} are now generated by the new program + \cmdname{updmap} and installed into \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{}, and \MP{} now, by default, output most input + characters (32 and above) as themselves in output (e.g., + \verb|\write|) files, + log files, and the terminal, i.e., \emph{not} translated using the + \verb|^^| notation. In \TL{}~7, this translation was + dependent on the system locale settings; now, locale settings do + not influence the \TeX{} programs' behavior. If for some reason + you need the \verb|^^| output, rename the file + \verb|texmf/web2c/cp8bit.tcx|. (Future releases will have cleaner + ways to control this.) +\item This documentation was substantially revised. +\item Finally, since the edition numbers had grown unwieldy, + the version is now simply identified by the year: \TL{} 2003. +\end{itemize*} + + +\subsubsection{2004} + +2004 saw many changes: + +\begin{itemize} + +\item If you have locally-installed fonts which use their own +\filename{.map} or (much less likely) \filename{.enc} support files, you +may need to move those support files. + +\filename{.map} files are now searched for in subdirectories of +\dirname{fonts/map} only (in each \filename{texmf} tree), along the +\envname{TEXFONTMAPS} path. Similarly, \filename{.enc} files are now +searched for in subdirectories of \dirname{fonts/enc} only, along the +\envname{ENCFONTS} path. \cmdname{updmap} will attempt to warn about +problematic files. + +For methods of handling this and other information, please see +\url{http://tug.org/texlive/mapenc.html}. + +\item The \TK\ has been expanded with the addition of a \MIKTEX-based +installable \CD, for those who prefer that implementation to Web2C. +See section~\ref{sec:overview-tl} (\p.\pageref{sec:overview-tl}). + +\item Within \TL, the single large \dirname{texmf} tree of previous +releases has been replaced by three: \dirname{texmf}, +\dirname{texmf-dist}, and \dirname{texmf-doc}. See +section~\ref{sec:tld} (\p.\pageref{sec:tld}), and the \filename{README} +files for each. + +\item All \TeX-related input files are now collected in +the \dirname{tex} subdirectory of \dirname{texmf*} trees, rather than +having separate sibling directories \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex}, etc. See +\CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}. + +\item Helper scripts (not meant to be invoked by users) are now located +in a new \dirname{scripts} subdirectory of \dirname{texmf*} trees, and +can be searched for via \verb|kpsewhich -format=texmfscripts|. So if you have +programs which call such scripts, they'll need to be adjusted. See +\CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}. + +\item Almost all formats leave most characters printable as +themselves via the ``translation file'' \filename{cp227.tcx}, instead of +translating them with the \verb|^^| notation. Specifically, characters +at positions 32--256, plus tab, vertical tab, and form feed are +considered printable and not translated. The exceptions are plain \TeX\ +(only 32--126 printable), \ConTeXt\ (0--255 printable), and the +\OMEGA-related formats. This default behavior is almost the same as in +\TL\,2003, but it's implemented more cleanly, with more possibilities +for customization. See \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. +(By the way, with Unicode input, \TeX\ may output partial character +sequences when showing error contexts, since it is byte-oriented.) + +\item \textsf{pdfetex} is now the default engine for all formats +except (plain) \textsf{tex} itself. (Of course it generates \acro{DVI} +when run as \textsf{latex}, etc.) This means, among other things, that +the microtypographic features of \textsf{pdftex} are available in +\LaTeX, \ConTeXt, etc., as well as the \eTeX\ features +(\OnCD{texmf-dist/doc/etex/base/}). + +It also means it's \emph{more important than ever} to use the +\pkgname{ifpdf} package (works with both plain and \LaTeX) or equivalent +code, because simply testing whether \cs{pdfoutput} or some other +primitive is defined is not a reliable way to determine if \acro{PDF} +output is being generated. We made this backward compatible as best we +could this year, but next year, \cs{pdfoutput} may be defined even when +\acro{DVI} is being written. + +\item pdf\TeX\ (\url{http://pdftex.org}) has many new features: + + \begin{itemize*} + + \item \cs{pdfmapfile} and \cs{pdfmapline} provide font map support + from within a document. + + \item Microtypographic font expansion can be used more easily.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item All parameters previously set through the special configuration + file \filename{pdftex.cfg} must now be set through primitives, + typically in \filename{pdftexconfig.tex}; \filename{pdftex.cfg} is no + longer supported. Any extant \filename{.fmt} files must be redumped + when \filename{pdftexconfig.tex} is changed. + + \item See the pdf\TeX\ manual for more: \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}. + + \end{itemize*} + +\item The \cs{input} primitive in \cmdname{tex} (and \cmdname{mf} and +\cmdname{mpost}) now accepts double quotes containing spaces and other +special characters. Typical examples: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +See the Web2C manual for more: \OnCD{texmf/doc/web2c}. + +\item enc\TeX\ support is now included within Web2C and consequently all +\TeX\ programs, via the \optname{-enc} option\Dash \emph{only when +formats are built}. enc\TeX\ supports general re-encoding of input and +output, enabling full support of Unicode (in \acro{UTF}-8). See +\OnCD{texmf-dist/doc/generic/enctex/} and +\url{http://www.olsak.net/enctex.html}. + +\item Aleph, a new engine combining \eTeX\ and \OMEGA, is available. +A little information is available in \OnCD{texmf-dist/doc/aleph/base} +and \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. The +\LaTeX-based format for Aleph is named \textsf{lamed}. + +\item The latest \LaTeX\ release has a new version of the +\acro{LPPL}\Dash now officially a Debian-approved license. Assorted +other updates, see the \filename{ltnews} files in +\OnCD{texmf-dist/doc/latex/base}. + +\item \cmdname{dvipng}, a new program for converting \acro{DVI} to +\acro{PNG} image files, is included. See \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item We reduced the \pkgname{cbgreek} package to a ``medium'' sized set +of fonts, with the assent and advice of the author (Claudio Beccari). +The excised fonts are the invisible, outline, and transparency ones, +which are relatively rarely used, and we needed the space. The full set +is of course available from \acro{CTAN} +(\url{http://mirror.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} has been removed; just use \cmdname{xdvi}. + +\item The \cmdname{ini} and \cmdname{vir} commands (links) for +\cmdname{tex}, \cmdname{mf}, and \cmdname{mpost} are no longer created, +such as \cmdname{initex}. The \cmdname{ini} functionality has been +available through the command-line option \optname{-ini} for years now. + +\item \textsf{i386-openbsd} platform support was removed. Since the +\pkgname{tetex} package in the \acro{BSD} Ports system is available, and +\acro{GNU/}Linux and Free\acro{BSD} binaries were available, it seemed +volunteer time could be better spent elsewhere. + +\item On \textsf{sparc-solaris} (at least), you may have to set the +\envname{LD\_LIBRARY\_PATH} environment variable to run the +\pkgname{t1utils} programs. This is because they are compiled with C++, +and there is no standard location for the runtime libraries. (This is +not new in 2004, but wasn't previously documented.) Similarly, on +\textsf{mips-irix}, the \acro{MIPS}pro 7.4 runtimes are required. + +\end{itemize} + +\subsubsection{2005} + +2005 saw the usual huge number of updates to packages and programs. +The infrastructure stayed relatively stable from 2004, but inevitably +there were some changes there as well: + +\begin{itemize} + +\item New scripts \cmdname{texconfig-sys}, \cmdname{updmap-sys}, and + \cmdname{fmtutil-sys} were introduced, which modify the + configuration in the system trees. The \cmdname{texconfig}, + \cmdname{updmap}, and \cmdname{fmtutil} scripts now modify + user-specific files, under \dirname{$HOME/.texlive2005}. + +\item Corresponding new variables \envname{TEXMFCONFIG} and + \envname{TEXMFSYSCONFIG} to specify the trees where configuration + files (user or system, respectively) are found. Thus, you may + need to move personal versions of \filename{fmtutil.cnf} and + \filename{updmap.cfg} to these places; another option is to + redefine \envname{TEXMFCONFIG} or \envname{TEXMFSYSCONFIG} in + \filename{texmf.cnf}. In any case the real location of these files + and the values of \envname{TEXMFCONFIG} and \envname{TEXMFSYSCONFIG} + must agree. + See section~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. + +\item Last year, we kept \verb|\pdfoutput| and other primitives undefined + for \dvi\ output, even though the \cmdname{pdfetex} program was + being used. This year, as promised, we undid that compatibility + measure. So if your document uses \verb|\ifx\pdfoutput\undefined| + to test if PDF is being output, it will need to be changed. You + can use the package \pkgname{ifpdf.sty} (which works under both + plain \TeX\ and \LaTeX) to do this, or steal its logic. + +\item Last year, we changed most formats to output (8-bit) characters as + themselves (see previous section). The new TCX file + \filename{empty.tcx} now provides an easier way to get the + original \verb|^^| notation if you so desire, as in: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + +\item The new program \cmdname{dvipdfmx} is included for translation of + DVI to PDF; this is an actively maintained update of + \cmdname{dvipdfm} (which is also still available for now, though + no longer recommended). + +\item The new programs \cmdname{pdfopen} and \cmdname{pdfclose} are included + to allow reloading of pdf files in the Adobe Acrobat Reader without + restarting the program. (Other pdf readers, notably \cmdname{xpdf}, + \cmdname{gv}, and \cmdname{gsview}, have never suffered from this + problem.) + +\item For consistency, the variables \envname{HOMETEXMF} and + \envname{VARTEXMF} have been renamed to \envname{TEXMFHOME} and + \envname{TEXMFSYSVAR}, respectively. There is also + \envname{TEXMFVAR}, which is by default user-specific. See the + first point above. + +\end{itemize} + + +\subsubsection{2006--2007} + +In 2006--2007, the major new addition to \TL{} was the \XeTeX{} program, +available as the \texttt{xetex} and \texttt{xelatex} programs; see +\url{http://scripts.sil.org/xetex}. + +MetaPost also received a notable update, with more planned for the +future (\url{http://tug.org/metapost/articles}), likewise pdf\TeX{} +(\url{http://tug.org/applications/pdftex}). + +The \TeX\ \filename{.fmt} (high-speed format) and the similar files for +MetaPost and \MF\ are now stored in subdirectories of \dirname{texmf/web2c}, +instead of in the directory itself (although the directory is still +searched, for the sake of existing \filename{.fmt}'s). The +subdirectories are named for the `engine' in use, such as \filename{tex} +or \filename{pdftex} or \filename{xetex}. This change should be +invisible in normal use. + +The (plain) \texttt{tex} program no longer reads \texttt{\%\&} first +lines to determine what format to run; it is the pure Knuthian \TeX. +(\LaTeX\ and everything else do still read \texttt{\%\&} lines). + +Of course the year also saw (the usual) hundreds of other updates to +packages and programs. As usual, please check \acro{CTAN} +(\url{http://mirror.ctan.org}) for updates. + +Internally, the source tree is now stored in Subversion, with a standard +web interface for viewing the tree, as linked from our home page. +Although not visible in the final distribution, we expect this will +provide a stable development foundation for future years. + +Finally, in May 2006 Thomas Esser announced that he would no longer be +updating te\TeX{} (\url{http://tug.org/tetex}). As a result, there was +been a surge of interest in \TL{}, especially among \GNU/Linux +distributors. (There is a new \texttt{tetex} installation scheme in +\TL{}, which provides an approximate equivalent.) We hope this will +eventually translate to improvements in the \TeX\ environment for +everyone. + +\subsubsection{2008} + +In 2008, the entire \TL{} infrastructure was redesigned and +reimplemented. Complete information about an installation is now stored +in a plain text file \filename{tlpkg/texlive.tlpdb}. + +Among other things, this finally makes possible upgrading a \TL{} +installation over the Internet after the initial installation, a feature +MiK\TeX\ has provided for many years. We expect to regularly update new +packages as they are released to \CTAN. + +The major new engine Lua\TeX\ (\url{http://luatex.org}) is included; +besides a new level of flexibility in typesetting, this provides an +excellent scripting language for use both inside and outside of \TeX\ +documents. + +Support among Windows and the Unix-based platforms is now much more +uniform. In particular, most Perl and Lua scripts are now available on +Windows, using the Perl internally distributed with \TL. + +The new \cmdname{tlmgr} script (section~\ref{sec:tlmgr}) is the +general interface for managing \TL{} after the initial installation. +It handles package updates and consequent regeneration of formats, map +files, and language files, optionally including local additions. + +With the advent of \cmdname{tlmgr}, the \cmdname{texconfig} actions to +edit the format and hyphenation configuration files are now disabled. + +The \cmdname{xindy} indexing program +(\url{http://xindy.sourceforge.net/}) is now included on most platforms. + +The \cmdname{kpsewhich} tool can now report all matches for a given file +(option \optname{--all}) and limit matches to a given subdirectory +(option \optname{--subdir}). + +The \cmdname{dvipdfmx} program now includes functionality to extract +bounding box information, via the command name \cmdname{extractbb}; this +was one of the last features provided by \cmdname{dvipdfm} not in +\cmdname{dvipdfmx}. + +The font aliases \filename{Times-Roman}, \filename{Helvetica}, and so on +have been removed. Different packages expected them to behave +differently (in particular, to have different encodings), and there was +no good way to resolve this. + +The \pkgname{platex} format has been removed, to resolve a name conflict +with a completely different Japanese \pkgname{platex}; the +\pkgname{polski} package is now the main Polish support. + +Internally, the \web\ string pool files are now compiled into the +binaries, to ease upgrades. + +Finally, the changes made by Donald Knuth in his `\TeX\ tuneup of 2008' +are included in this release. See +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + +\subsubsection{2009} + +In 2009, the default output format for Lua\AllTeX\ is now PDF, to take +advantage of Lua\TeX's OpenType support, et al. New executables named +\code{dviluatex} and \code{dvilualatex} run Lua\TeX\ with DVI output. +The Lua\TeX\ home page is \url{http://luatex.org}. + +The original Omega engine and Lambda format have been excised, after +discussions with the Omega authors. The updated Aleph and Lamed remain, +as do the Omega utilities. + +A new release of the AMS \TypeI\ fonts is included, including Computer +Modern: a few shape changes made over the years by Knuth in the Metafont +sources have been integrated, and the hinting has been updated. The +Euler fonts have been thoroughly reshaped by Hermann Zapf (see +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). In +all cases, the metrics remain unchanged. The AMS fonts home page is +\url{http://www.ams.org/tex/amsfonts.html}. + +The new GUI front end \TeX{}works is included for Windows, and also in +Mac\TeX. For other platforms, and more information, see the \TeX{}works +home page, \url{http://tug.org/texworks}. It is a cross-platform front +end inspired by the \MacOSX\ TeXShop editor, aiming at ease-of-use. + +The graphics program Asymptote is included for several platforms. This +implements a text-based graphics description language vaguely akin to +MetaPost, but with advanced 3D support and other features. Its home +page is \url{http://asymptote.sourceforge.net}. + +The separate \code{dvipdfm} program has been replaced by +\code{dvipdfmx}, which operates in a special compatibility mode under +that name. \code{dvipdfmx} includes \acro{CJK} support and has +accumulated many other fixes over the years since the last +\code{dvipdfm} release. The DVIPDFMx home page is +\url{http://project.ktug.or.kr/dvipdfmx}. + +Executables for the \pkgname{cygwin} and \pkgname{i386-netbsd} platforms +are now included, while we were advised that Open\acro{BSD} users get +\TeX\ through their package systems, plus there were difficulties in +making binaries that have a chance of working on more than one version. + +A miscellany of smaller changes: we now use \pkgname{xz} compression, +the stable replacement for \pkgname{lzma} +(\url{http://tukaani.org/xz/}); a literal |$| is allowed in filenames +when it does not introduce a known variable name; the Kpathsea library +is now multi-threaded (made use of in MetaPost); the entire \TL{} build +is now based on Automake. + +Final note on the past: all releases of \TL{}, along with ancillary +material such as \CD\ labels, are available at +\url{ftp://tug.org/historic/systems/texlive}. + + +\subsubsection{2010} +\label{sec:2010news} % keep with 2010 + +In 2010, the default version for PDF output is now 1.5, enabling more +compression. This applies to all the \TeX\ engines when used to produce +PDF and to \code{dvipdfmx}. Loading the \pkgname{pdf14} \LaTeX\ package +changes back to PDF~1.4, or set |\pdfminorversion=4|. + +pdf\AllTeX\ now \emph{automatically} converts a requested Encapsulated +PostScript (EPS) file to PDF, via the \pkgname{epstopdf} package, when +and if the \LaTeX\ \code{graphics.cfg} configuration file is loaded, and +PDF is being output. The default options are intended to eliminate any +chance of hand-created PDF files being overwritten, but you can also +prevent \code{epstopdf} from being loaded at all by putting +|\newcommand{\DoNotLoadEpstopdf}{}| (or |\def...|) before the +\cs{documentclass} declaration. It is also not loaded if the +\pkgname{pst-pdf} package is used. For more details, see the +\pkgname{epstopdf} package documentation +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +A related change is that execution of a very few external commands from +\TeX, via the \cs{write18} feature, is now enabled by default. These +are commands are \code{repstopdf}, \code{makeindex}, \code{kpsewhich}, +\code{bibtex}, and \code{bibtex8}; the list is defined in +\code{texmf.cnf}. Environments which must disallow all such external +commands can deselect this option in the installer (see +section~\ref{sec:options}), or override the value after installation by +running |tlmgr conf texmf shell_escape 0|. + +Yet another related change is that \BibTeX\ and Makeindex now refuse to +write their output files to an arbitrary directory (like \TeX\ itself), +by default. This is so they can now be enabled for use by the +restricted \cs{write18}. To change this, the \envname{TEXMFOUTPUT} +environment variable can be set, or the |openout_any| setting changed. + +\XeTeX\ now supports margin kerning along the same lines as pdf\TeX. +(Font expansion is not presently supported.) + +By default, \prog{tlmgr} now saves one backup of each package updated +(\code{tlmgr option autobackup 1}), so broken packages updates can be +easily reverted with \code{tlmgr restore}. If you do post-install +updates, and don't have the disk space for the backups, run \code{tlmgr +option autobackup 0}. + +New programs included: the p\TeX\ engine and related utilities for +typesetting Japanese; the \BibTeX{}U program for Unicode-enabled +\BibTeX; the \prog{chktex} utility +(\url{http://baruch.ev-en.org/proj/chktex}) for checking \AllTeX\ +documents; the \prog{dvisvgm} (\url{http://dvisvgm.sourceforge.net}) +DVI-to-SVG translator. + +Executables for these new platforms are now included: \code{amd64-freebsd}, +\code{amd64-kfreebsd}, \code{i386-freebsd}, \code{i386-kfreebsd}, +\code{x86\_64-darwin}, \code{x86\_64-solaris}. + +A change in \TL{} 2009 that we failed to note: numerous \TeX4ht-related +executables (\url{http://tug.org/tex4ht}) were removed from the binary +directories. The generic \code{mk4ht} program can be used to run any of +the various \code{tex4ht} combinations. + +Finally, the \TL{} release on the \TK\ \DVD\ can no longer be run live +(oddly enough). A single \DVD\ no longer has enough room. One +beneficial side effect is that installation from the physical \DVD\ is +much faster. + + +% +\htmlanchor{news} +\subsection{Present} +\label{sec:tlcurrent} + +2011 saw relatively few changes. + +The \MacOSX\ binaries (\code{universal-darwin} and +\code{x86\_64-darwin}) now work only on Leopard or later; Panther and +Tiger are no longer supported. + +The \code{biber} program for bibliography processing is included on +common platforms. Its development is closely coupled with the +\code{biblatex} package, which completely reimplements the +bibliographical facilities provided by LaTeX. + +The MetaPost (\code{mpost}) program no longer creates or uses +\code{.mem} files. The needed files, such as \code{plain.mp}, are +simply read on every run. This is related to supporting MetaPost as a +library, which is another significant though not user-visible change. + +The \code{updmap} implementation in Perl, previously used only on +Windows, has been revamped and is now used on all platforms. There +shouldn't be any user-visible changes as a result, except that it runs +much faster. + +\subsection{Future} + +\emph{\TL{} is not perfect!} (And never will be.) We intend to +continue to release new versions, and would like to provide more help +material, more utilities, more installation programs, and (of course) an +ever-improved and better-checked tree of macros and fonts. This work is +all done by volunteers in their spare time, and so there is always more +to do. Please see \url{http://tug.org/texlive/contribute.html}. + +Please send corrections, suggestions, and offers of help to: +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Happy \TeX ing!} + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/live-tl7.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-tl7.tex new file mode 100644 index 00000000000..1e8ee77312b --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/live-tl7.tex @@ -0,0 +1,3554 @@ +% +% change history (started May 13th 2002) +% 2002/05/13: added tex-langafrican to list of collections +% 2002/05/14: corrected example files, other small errors noted by Volker +% 2002/05/18: win32 updates, by Fabrice +% 2002/05/25: remove mention of sizes, and bsr-interpolated; add Gutenberg +\documentclass{article} +\advance\textwidth by 1in +\advance\oddsidemargin by -1in +\advance\evensidemargin by -1in +\newsavebox{\warnbox} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\setcounter{tocdepth}{2} +\pretolerance=1000 +\tolerance=1500 +\hbadness=3000 +\vbadness=3000 +\hyphenpenalty=400 +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +\def\eTeX{$\varepsilon$-\TeX} +\def\Dash{---} +\def\hyph{-} +\def\OMEGA{$\Omega$} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\La{La} +\let\textsl\textit +\let\sl\it +\let\slfamily\itfamily +\def\ttdefault{cmtt} +\usepackage{tex-live} +\begin{document} +%\makeatletter\@ifundefined{HRestore}{}{\HRestore\noalign}\makeatother +\author{Sebastian Rahtz\\ +\texttt{sebastian.rahtz@oucs.ox.ac.uk} +%Michel Goossens\\ +%\texttt{m.goossens@cern.ch} +} +\title{The \protect\TeX\ Live Guide, 7th edition} +\date{May 2002} +\maketitle +\begin{multicols}{2} +\tableofcontents +\listoftables +\end{multicols} +\section{Introduction}\label{sec:intro} +This documentation describes the + main features of the \TeXLive{} 7 \CD{}\Dash a \TeX{}/\LaTeX{} + distribution for Unix, Linux, MacOSX, and Windows32 systems that includes + \TeX{}, \LaTeXe{}, \MF, \MP, \cmdname{Makeindex}, and \BibTeX{}; and + a wide-ranging set of macros, fonts and documentation conforming to + the \emph{\TeX{} Directory Standard} (\TDS{})\Dash which can be used + with nearly every \TeX{} setup. + + This \TeX{} package uses the \Webc{} version 7.3.7 + implementation of the programs, which tries to make \TeX{}ing as + easy as possible, and takes full advantage of the efficient and + highly customizable \KPS{} library from Karl Berry and Olaf Weber. + It can be run either directly from the \CD{} or installed on a hard + disk. + +Most of the runnable systems on the \CD{} include a large set of +drivers and support programs for \TeX, including \cmdname{dvips} +(PostScript driver), \cmdname{dvipdfm} (dvi to PDF), +\cmdname{xdvi} (X Windows previewer), +\cmdname{dvilj} (HP LaserJet driver), \cmdname{lacheck} (\LaTeX{} +syntax checker), \cmdname{tex4ht} (\TeX{} to HTML converter), +\cmdname{dviconcat} and \cmdname{dviselect}, \cmdname{dv2dt} and + \cmdname{dt2dv} (\texttt{dvi} to ASCII and vice versa), and Angus + Duggan's PostScript utilities. + +\subsection{Extensions to \TeX} + +The \TeXLive{} runnable systems contain three extended versions of +standard \TeX: +\begin{enumerate} +\item \eTeX, which adds a small but powerful set of new primitives, + and the \TeXXeT{} extensions for left to right typesetting; in + default mode, \eTeX{} is 100\% compatible with ordinary \TeX. See + \OnCD{texmf/doc/etex/base/etex_man.pdf} on the \CD{} for details. +\item pdf\TeX, which can optionally write Acrobat PDF format instead + of \dvi{}. You will find the user manual in + \OnCD{texmf/doc/pdftex/pdftex-l.pdf}. The + file \OnCD{texmf/doc/pdftex/samplepdf/samplepdf.tex} shows how it is + used. The \LaTeX{} \pkgname{hyperref} package has an option + `\optname{pdftex}', which turns on all the program features. +\item \OMEGA{} (Omega), which works internally with 16-bit characters, + using Unicode; this allows it to directly work with almost all the + world's scripts simultaneously. It also supports dynamically loaded + `\OMEGA{} Translation Processes' (\acro{OTP}s), which allow the user + to define complex transformations to be performed on arbitrary + streams of input. See \OnCD{texmf/doc/omega/base/doc-1.8.tex} for some + (not necessarily up to date) documentation. +\end{enumerate} +\eTeX{} (version 2.1) is stable, although subsequent releases will add +new functionality. pdf\TeX{} (version 1.00b) is also stable, +but is still being improved. +\OMEGA{} (version 1.23) is under development; the version +on this \CD{} is that current as of May 2002. + + +\section[Structure and contents of the CD-ROM]{Structure + and contents of the \protect\CD{}} +The important \CD{} top-level directories are listed below. +\begin{description} +\item[bin] The \TeX{} family programs, arranged in separate platform + directories. +\item[Books] Examples related to some books about \TeX. +\item[FAQ] Frequently Asked Questions, in English, French, and German. +\item[MacOSX] Support programs for MacOSX users +\item[info] Documentation in \acro{GNU} `info' format for the \TeX{} + system. +\item[man] Documentation in the form of Unix man pages for the \TeX{} + system. +\item[setupw32] directory contains material for installation and use + under Windows (see section \ref{sec:wintex} on p.~\pageref{sec:wintex}). +\item[source] The source of all programs, including the main \Webc{} + \TeX{} and \MF{} distributions. These are stored in a bzip2-compressed + tar archive. +\item[support] Various bits of \TeX-related software which are + \emph{not} installed by default, support programs, and a complete + distribution of \cmdname{Ghostscript} version 7.05. + You can find here some other programs (editors, \TeX\ shells), which + are usually absent from Windows installations, dedicated for beginners. + They can be installed with the \texttt{TeXSetup.exe} Windows installation + program. +\item[texmf] The main support tree of macros, fonts and documentation; +\item[usergrps] Material about \TeX\ User Groups. +\end{description} + +There are also two installation scripts for Unix systems, +\texttt{install-cd.sh} and \texttt{install-pkg.sh}; we discuss +them on in section \ref{sec:install} on p.~\pageref{sec:install}. + +\subsection[Packages and collections]{Packages and collections} +\label{packages} +The \TeXLive{} \texttt{texmf} tree consists of various `collections', +each of which refers to a set of `packages', of which there are over 700 +on the \CD{}. Normal installation allows the +user to copy all of a collection to a local hard disk from the \CD{}, but +it is also possible to install just one package of a collection. + +The collections add functionality to a \TeX\ system. One of them, named +`tex-basic', is necessary for almost all \TeX\ tasks, +and two others, called `tex-latex' and `tex-pdftex' are highly +recommended for most users. All others are optional. +The collections (defined by XML files in \texttt{texmf/tpm/collections}) +and their short descriptions are listed below. + +\begin{description} + \item[tex-basic] + These files are regarded as basic for any \TeX\ system, covering +plain \TeX\ macros, Computer Modern fonts, and configuration for common +drivers. + \item[tex-bibtexextra] + Additional, extensive libraries of BibTeX styles and bibliographies. + \item[tex-chemistry] + Essential chemistry + \item[tex-context] + Hans Hagen's powerful macro package, ConText + \item[tex-documentation] + Assorted useful documentation and guides + \item[tex-etex] + Support files for an extended \TeX\ + \item[tex-extrabin] + Various useful, but non-essential, support programs. Includes + programs and macros for texinfo system; programs for dvi file + manipulation, etc. + \item[tex-fontbin] + Programs for conversion between font formats, testing fonts + (virtual fonts stuff, .gf and .pk manipulation, + mft, fontinst, etc.) + \item[tex-fontsextra] + All sorts of extra fonts + \item[tex-formatsextra] + A collection of \TeX\ `formats', ie large-scale +macro packages designed to be dumped into .fmt file + \item[tex-games] + Setups for typesetting various board games, including chess + \item[tex-genericextra] + This is a mixed bag of macro packages and fonts which do not seem +to belong elsewhere + \item[tex-htmlxml] + Packages to convert \LaTeX\ to XML/HTML, and typeset XML/SGML + \item[tex-langafrican] + Support for some African scripts + \item[tex-langarmenian] + Essential armenian + \item[tex-langcjk] +Essential CJK (Chinese, Japanese, Korean) macros and fonts + \item[tex-langcroatian] + Essential croatian + \item[tex-langcyrillic] + Fonts and macro packages to typeset Cyrillic texts. + \item[tex-langczechslovak] + Pick this if you want Czech/Slovak fonts and other packages + \item[tex-langdanish] + Essential Danish + \item[tex-langdutch] + Essential Dutch + \item[tex-langfinnish] + Essential Finnish + \item[tex-langfrench] + Essential French + \item[tex-langgerman] + Essential German + \item[tex-langgreek] + Essential Greek + \item[tex-langhungarian] + Essential Hungarian + \item[tex-langindic] + Essential Indic + \item[tex-langitalian] + Essential Italian + \item[tex-langlatin] + Essential Latin + \item[tex-langmanju] + Essential Manju + \item[tex-langmongolian] + Essential mongolian + \item[tex-langnorwegian] + Essential Norwegian + \item[tex-langother] + Other languages + \item[tex-langpolish] + Pick this if you want Polish fonts and other packages + \item[tex-langportuguese] + Essential Portuguese + \item[tex-langspanish] + Essential Spanish + \item[tex-langswedish] + Essential Swedish + \item[tex-langtibetan] + Fonts and support for typesetting Tibetan + \item[tex-langukenglish] + Essential UK English + \item[tex-langvietnamese] + Essential Vietnamese + \item[tex-latex] + These packages are either mandated by the core \LaTeX\ team, +or very commonly recommended + \item[tex-latexextra] + A large collection of add-on packages for \LaTeX\ + \item[tex-mathextra] + Extra math + \item[tex-metapost] + MetaPost (and MetaFont) drawing packages + \item[tex-music] + Music typesetting packages + \item[tex-omega] + Omega, a 16-bit extended \TeX\ by John Plaice and Yannis Haralambous + \item[tex-pdftex] + Support files for Han The Thanh's variant of \TeX\ which can +generate PDF output + \item[tex-pictures] + Essential graphics + \item[tex-plainextra] + Plain \TeX\ extra macros + \item[tex-psfonts] + Essential psfonts + \item[tex-psutils] + Utilities to manipulate PostScript files + \item[tex-publishers] + Essential publishers + \item[tex-t1utils] + Utilities to manipulate Type1 fonts + \item[tex-texbooks] + Examples and other material from various books about TeX/LaTeX. + \item[tex-theses] + Macro packages from various Universities for their thesis styles + \item[tex-ttfutils] + Utilities to manipulate TrueType fonts + \item[win32-support] + You can choose individual tools from this collection. + There are many \TeX\ oriented editors, graphics files + toolsets, etc. +\end{description} + +The directory \texttt{texmf/tpm/packages} contains lists +of all files in each package (used by the installation programs). + +\section{Installation and use under Unix} +\label{sec:install} +You can use the \TeXLive{} \CD{} in three ways: +\begin{enumerate} +\item You can mount the \CD{} on your file system, run +the \texttt{install-cd.sh} script, and select the option \verb|| + (`do not install files, set up to run off CD-ROM'), + and run everything off the \CD; this takes very + little disk space, and gives you immediate access to everything on + the \CD; although the performance will not be optimal, it is + perfectly acceptable on, for instance, PCs running Linux. You could + also copy the entire CD contents to your hard disk and work in this way. +\item You can install all or part of the system to your local hard + disk; this is the best method for many people, if they have enough + disk space to spare (a minimum of about 100 megabytes, or 300 + megabytes for a recommended good-sized system). +\item You can install selected packages to work either with your + existing \TeX{} system or a \TeXLive{} system you installed earlier. +\end{enumerate} +Each of these methods is described in more detail in the following +sections. + +\ifSingleColumn +\begin{figure*} + \begin{center} + \leavevmode +\fi +\begin{warningbox} +\textbf{Warning: } This \CD{} is in ISO 9660 (High Sierra) format, +with Rock Ridge and Joliet extensions. In order to take full advantage +of the \CD{} on a Unix system, your system needs to be able to use +the Rock Ridge extensions. Please consult the documentation for your +\cmdname{mount} command to see if it is possible. If you have several +different machines on a local network, see if you can mount the +\CD{} on one which \emph{does} support Rock Ridge, and use this with +the others. + +\leavevmode\quad +Linux, FreeBSD, Sun, SGI and DEC Alpha systems should be able to use +the \CD{} with no problems. We would appreciate receiving detailed advice +from other system users who also succeed, for future versions of this +documentation. + +\leavevmode\quad +The discussion below about installation assumes you have been able to mount +the \CD{} with full Rock Ridge compatibility. +\end{warningbox} +\ifSingleColumn + \end{center} +\end{figure*} +\fi + +%\begin{addbymb} +\subsection[Pre-installation procedure for MacOSX users] +{Pre-installation procedure for MacOSX users} +If you do not run MacOSX, you should skip this section. + +The \texttt{install-cd.sh} script is a \emph{sh} script (begins with +``\verb=#!/bin/sh=''), but +on MacOSX \cmdname{sh} is unable to run it because +\cmdname{sh} is +emulated. However, \cmdname{bash} will run it. Unfortunately (again) +\cmdname{bash} is not +installed by default on MacOSX\footnote{there are some suggestions this will +change in the future and even +that \cmdname{bash} will be used to emulate \cmdname{sh}, +in which case it might be true +that in future versions of MacOSX, the script will just work.}. +\begin{enumerate} +\item\label{test-bash} (optional) See if \path|bash| is already installed. +Launch \path|Terminal| +(\path|/Applications/utilities/Terminal|) and type in a window +\begin{alltt} +>> \Ucom{rehash; which bash} +\end{alltt} +the answer will be: +\begin{itemize} +\item the bash location (e.g. \path|/bin/bash| or \path|/usr/local/bin/bash|) if installed; +\item \texttt{bash: command not found} if not installed. +\end{itemize} + +If bash is already installed, skip to \ref{std-install} + +\item bash installation: +\begin{description} +\item[Mac friendly procedure] +Look in the \path|MacOSX| directory of the \CD{} +for an image disk named \path|bash.dmg|. mount that +file by double-clicking it. The disk image (volume) will be mounted. +Then start the \path|i-Installer| application on that volume. You will be asked +to authenticate, if you have never seen that before, you might not have +enough privileges to install. Just enter your own user name and +password. Hit install. \path|bash| will be installed on your system. +\item[Terminal procedure] +\begin{enumerate} +\item Log in as an admin user, at least a user with Admin privileges or +sudo user or as the System Administrator. +\item Open the \path|MacOSX| directory on the \CD{} and copy +\path|bash.tar.gz| +to your home directory (\texttt{\~{}/}) +\item Then launch \path|Terminal| and type or copy/paste the +line below in a Terminal window): +\begin{alltt} +>> \Ucom{(cd /usr/local/; sudo tar xvzf ~/bash.tar.gz)} +\end{alltt} +type a carriage-return: you will be asked for your password, and +\path|bash| will be +installed. +\item Quit \path|Terminal|. +\end{enumerate} +\end{description} +\item Now after using either install method, goto \ref{test-bash}: +you must obtain \path|/usr/local/bin/bash|\ldots{} (if not, try to log out and in). +\item\label{std-install} The installation procedure is the +same on MacOSX than on other UNIX platforms (as MacOSX is UNIX, +that's quite normal!). Nevertheless, you should read what follows: +\begin{itemize} + \item Note that in all commands of the following sections, +\cmdname{sh} must be replaced by \texttt{sudo bash}: +\begin{alltt} +>> \Ucom{sh install-cd.sh} +\end{alltt} +becomes +\begin{alltt} +>> \Ucom{sudo bash install-cd.sh} +\end{alltt} +etc. +\item On MacOSX, cd are auto-mounted: you \emph{don't} need to use +\texttt{mount}. The \CD{} will be mounted in the \path|/Volumes/| +directory: in order to make it the current directory, you just have to +type in \path|Terminal|: +\begin{alltt} +>> \Ucom{cd /Volumes/TeXLive-7...} +\end{alltt} +(complete this line with the real name of the \CD{}: using +``auto completion'' by pressing the \texttt{} +key will do it). +\end{itemize} +\end{enumerate} +%\end{addbymb} + +\subsection[Running \protect\TeXLive{} from the CD-ROM]{Running \protect\TeXLive{} from the \protect\CD} +The organisation of \Webc{} means that you can run programs simply by +adding the appropriate directory under \path|bin| on the \CD{} to +your \texttt{PATH}, and the support files will all be found with no further +ado. The following shows the list of available systems and the +corresponding directories. \textbf{Only x86 Linux, Mac OSX, and + Windows are available on the default CD. You need to ask +for the Unix CD if you need the other systems.} + +\begin{flushleft} +\begin{tabular}{@{}l>{\ttfamily}ll} +Compaq Alpha Linux & alpha-linux & CD2\\ +Compaq Alphaev5 OSF 4.0d & alphaev5-osf4.0d & CD2\\ +HP9000 HPUX 10.20 & hppa2.0-hpux10.20 & CD2\\ +IBM RS 6000 AIX 4.2.* & rs6000-aix4.2.1.0 & CD2\\ +Intel x86 Solaris 2.8 & i386-solaris2.8 & CD2\\ +Intel x86 with GNU/Linux & i386-linux & CD1\\ +Mac OSX & powerpc-darwin5.3 & CD1\\ +Sun Sparc Solaris 2.7 & sparc-solaris2.7 & CD2\\ +Windows 9X/ME/NT/2K/XP & win32 & CD1\\ +\end{tabular} +\end{flushleft} + +You may worry that when you subsequently make fonts or change +configuration, things will go wrong because you cannot change files on +the \CD{}. However, you can maintain a parallel, writeable, \TeX{} +tree on your hard disk; this is searched before the main tree on the +\CD{}. The default location is \path|texmf-var| on the CD +(which does not exist!), so you \emph{must} override this by setting +the \texttt{VARTEXMF} environment variable. + + +Thus \emph{sh} or \emph{bash} users on an Intel PC +running Linux can mount the \TeXLive{} \CD{} on +\file{/mnt/cdrom} by issuing the command: + +\begin{alltt} +>> \Ucom{mount -t iso9660 /dev/cdrom /mnt/cdrom} +\end{alltt} +Then they should change the current directory to \path|/mnt/cdrom|, run +\begin{alltt} +>> \Ucom{sh install-cd.sh} +\end{alltt} +and select the option \verb|| (\emph{do not install files, set up to run +off CD-ROM}). After that, they should include the directory containing +the binaries for the given architecture into the search path +by updating the \texttt{PATH} variable. +\begin{verbatim} +PATH=/mnt/cdrom/bin/i386-linux:$PATH +export PATH +VARTEXMF=/usr/TeX/texmf-var +export VARTEXMF +\end{verbatim} +%\begin{addbymb} +\begin{description} + \item[MacOSX users] On MacOSX, the default shell is \texttt{tcsh}: +\begin{verbatim} +setenv PATH /Volumes//bin/powerpc-darwin5.3:${PATH} +setenv VARTEXMF /usr/TeX/texmf-var +\end{verbatim} +\end{description} +%\end{addbymb} +For convenience, these statements can also be entered into the +\texttt{.profile} script. +%\begin{addbymb} +(for \texttt{tcsh} on MacOSX, +\verb=~/Library/init/tcsh/rc.mine=). +%\end{addbymb} + +If in doubt, ask your local system support guru to help you work out +how to mount your \CD{} or which directory to use for your system. + +Appropriate support files will be installed on your hard disk the +first time you need them. You can edit and change local configuration +files which are stored to the directory designated +by \texttt{\$VARTEXMF}. Any format file that is needed +will be generated and stored here. + +%------------------------------------------------ +\subsection{Installing \protect\TeXLive{} to a hard disk} +All of the necessary steps to install all or part of the distribution +on your hard disk are achieved by mounting the \CD{}, changing to the +top-level directory, and typing: +\begin{alltt} +>> \Ucom{sh install-cd.sh} +\end{alltt} +(On some Unix systems, you may need to use \cmdname{sh5} or +\cmdname{bash}.) This script works by accessing lists of collections +and packages from the \CD{}, and trying to guess what sort of computer +system you are on. It should start by displaying the following: +\verbatiminput{../examples/ex1.tex} +It will then show the main control screen +(Figure~\ref{ins1}), which lets you change five +things: +\begin{enumerate} +\item the type of system you are on, or want to install for; +\item the \emph{installation scheme} you want to use (eg full, + recommended, basic etc) +\item the collections you want to change from +the installation scheme (they are organised into two sets: +\emph{standard collections} and \emph{language collections}); +\item the location on your hard disk to put the files; +\item some runtime behaviour features. +\end{enumerate} + +\begin{figure*} +\begin{center} +\ifnum\Status=2 +\boxedverbatiminput{../examples/ex2.tex} +\else +\begin{minipage}{0.8\textwidth} +\boxedverbatiminput{../examples/ex2.tex} +\end{minipage} +\fi +\caption{Main control screen}\label{ins1} +\end{center} +\end{figure*} + +You choose options by typing a letter or number and pressing `return'. +In the example, a Linux GNU/Linux system has been detected, the +default set of collections will be installed, and +the default installation directory is \path|/usr/TeX|; note +that the disk space required for the current installation +configuration is also displayed. If you make a suggested setup, you +need about 60 megabytes of disk free; however, the basic setup will +only take about 30 megabytes, and you can enhance it with selected +packages as you need them. + +%\begin{addbymb} +\begin{description} + \item[MacOSX users] Most frontends (\emph{TeXShop}, + \emph{ITeXMac}\ldots) use the \teTeX{} default location + which is \path|/usr/local/teTeX|, so, Mac users could find interest + in installing \TeXLive{} in \path|/usr/local/teTeX| +rather than in \path|/usr/TeX|. +\end{description} +%\end{addbymb} + +Under the directory you choose for installation, the installation +script will put the binaries in a subdirectory of \path|bin|, and the +support tree in \path|texmf|. An additional tree \path|texmf-var| +will contain copies of configuration files (except the main +\path|texmf.cnf|), which are to be modified by \path|texconfig| program. +This tree will also store generated format files for \TeX, \MF, etc. + +\begin{figure*} +\begin{center} +\ifnum\Status=2 +\boxedverbatiminput{../examples/ex3.tex} +\else +\begin{minipage}{.80\linewidth} +\footnotesize +\boxedverbatiminput{../examples/ex3.tex} +\end{minipage} +\fi +\caption{Selecting standard collections}\label{ins2} +\end{center} +\end{figure*} + +\begin{figure*} +\begin{center} +\ifnum\Status=2 +\boxedverbatiminput{../examples/ex4.tex} +\else +\begin{minipage}{.80\linewidth} +\footnotesize +\boxedverbatiminput{../examples/ex4.tex} +\end{minipage} +\fi +\caption{Selecting language collections}\label{ins3} +\end{center} +\end{figure*} + +When you choose || for \emph{standard collections}, you will see +the display of available collections (Figure \ref{ins2}). Each +collection --- TeX macro files, Metafont font families, and so on --- +consists of several packages. You can toggle their inclusion on or +off by pressing the key. Note that the selection letter keys are case +sensitive. + +When you choose || for \emph{language collections}, you will see +the display of available language support collections (Figure +\ref{ins3}). Each collection consists of several packages, which +provide features like hyphenation files and fonts. + +The || for \emph{options} item lets you decide whether to make new fonts +be created in another location (if you want the main package mounted +read-only for most users), and whether to make symbolic links for the +binaries, \cmdname{man} and \acro{GNU} \cmdname{info} pages in the `standard' +locations; you'll need `root' permissions for tasks to do this, of course. + +When you are finished, return to the main screen, and ask the +installation to start. It will take each of the collections and +systems that you requested, consult the list of files on the \CD{}, +and build a master list of files to transfer. These will then be +copied to your hard disk. If you installed a system, +an initialization sequence is now run +(creating format files, etc.). When this has finished, all you need do +is add the correct subdirectory of \texttt{bin} in the \TeX{} +installation to your path, and start using \TeX. If you want, you can +move the binaries up one level, e.g.\ from +\path|/usr/local/bin/alpha-osf3.2| +to \path|/usr/local/bin|; if you do this, however, you must +edit \path|texmf/web2c/texmf.cnf| (see Appendix~\ref{app:texmf.cnf}) +and change the line near the start which reads +\begin{verbatim} + TEXMFMAIN = $SELFAUTOPARENT +\end{verbatim} +to +\begin{verbatim} + TEXMFMAIN = $SELFAUTODIR +\end{verbatim} + +If you move the whole installation to another directory tree entirely, you +need to edit \envname{TEXMFMAIN} to specify the support tree explicitly, and +set \envname{TEXMFCNF} in your environment to \path|$TEXMFMAIN/texmf/web2c|. + +%------------------------------------------------ + +\subsection{Installing individual packages from \protect\TeXLive{} to a hard + disk} You may want to use the \TeXLive{} \CD{} to either update an +existing setup, or add features to an earlier installation from the +\CD{}. The main installation program is intended for the first time +only, and subsequently you should use the \texttt{install-pkg.sh} +script on the \CD{}. Run this by mounting the \CD{}, changing to +the mounted directory, and typing + +\begin{alltt} +>> \Ucom{sh install-pkg.sh \emph{options}} +\end{alltt} + + +The script supports nine options; the first four let you set the +individual package you want to install, the whole collection (i.e., +\texttt{tex-mathextra}), the name of the mounted \CD{} directory, and +the name of the directory containing the list files (normally these +latter two will be set automatically): + +\begin{tabular}{ll} +\texttt{-{}-package=}\emph{name} & \\ +\texttt{-{}-collection=}\emph{name} & \\ +\texttt{-{}-cddir=}\emph{name} & \\ +\texttt{-{}-listdir=}\emph{name} & \\ +\end{tabular} + +What actually happens is controlled by four more switches; the first +two allow you to exclude documentation or source files from the +installation, the third stops the default action of running +\texttt{mktexlsr} on completion to rebuild the file database, and +the last does nothing but list the files that would be installed: + +\begin{tabular}{ll} +\texttt{-{}-nodoc} & \\ +\texttt{-{}-nosrc} & \\ +\texttt{-{}-nohash} & \\ +\texttt{-{}-listonly} & \\ +\end{tabular} + +Finally, you can specify that, instead of installing the files, the script +should make a \cmdname{tar} archive in a specified location: + +\begin{tabular}{ll} +\texttt{-{}-archive=}\emph{name} & \\ +\end{tabular} + +Thus, if we simply wanted to see the files that make up the package +\pkgname{fancyhdr} before we installed it, our command and output would be +as follows: + +\begin{alltt} +\ifSingleColumn>> \Ucom{sh install-pkg.sh --package=fancyhdr --listonly} +\else>> \Ucom{sh install-pkg.sh -{}-package=fancyhdr \bs} +>> \Ucom{-{}-listonly} +\fi{} +texmf/doc/latex/fancyhdr/fancyhdr.dvi +texmf/doc/latex/fancyhdr/fancyhdr.tex +texmf/lists/fancyhdr +texmf/source/latex/fancyhdr/README +texmf/source/latex/fancyhdr/fancyheadings.new +texmf/tex/latex/fancyhdr/extramarks.sty +texmf/tex/latex/fancyhdr/fancyhdr.sty +texmf/tex/latex/fancyhdr/fixmarks.sty +\end{alltt} +Other examples of usage are: +\begin{itemize} +\item Install the \LaTeX{} package \texttt{natbib}: +\begin{alltt} +>> \Ucom{sh install-pkg.sh --package=natbib} +\end{alltt} +\item Install the \LaTeX{} package \texttt{alg} with no source files and no +documentation: +\begin{alltt} +\ifSingleColumn>> \Ucom{sh install-pkg.sh --package=alg --nosrc --nodoc} +\else>> \Ucom{sh install-pkg.sh -{}-package=alg \bs} +>> \Ucom{-{}-nosrc -{}-nodoc} +\fi\end{alltt} +\item Install all the packages available in the collection containing additional +Plain \TeX\ macros: +\begin{alltt} +>> \Ucom{sh install-pkg.sh --collection=tex-plainextra} +\end{alltt} +\item Place all files which are needed for PSTricks +in a \cmdname{tar} file in \path|/tmp|: +\begin{alltt} +\ifSingleColumn>> \Ucom{sh install-pkg.sh --package=pstricks --archive=/tmp/pstricks.tar} +\else +>> \Ucom{sh install-pkg.sh -{}-package=pstricks \bs} +>> \Ucom{-{}-archive=/tmp/pstricks.tar} +\fi\end{alltt} +\end{itemize} + +\subsection{The texconfig program} +\label{ssec:tex} + +After the installation program has copied all files to their final +locations, you can use a program called \cmdname{texconfig} that +allows you to configure the system to fit your local needs. This can +be called at any other time to change your setup, with a full-screen +(which requires the \cmdname{dialog} program, included as part of the +binary packages) or command-line interface. +It should be used for all maintenance, such as changes of installed +printers, or rebuilding the file database. Both modes have help text +to guide you through the facilities. + +\section{Installation and use under Windows} +\label{sec:wintex} +This section only applies to systems running Windows 9x, \acro{ME}, +\acro{NT}, \acro{2K} or \acro{XP}. + +It is also necessary to have your Windows set up so that it uses the +Microsoft Joliet extensions for reading \CD s; simply look at the +\CD{} in Explorer and see whether it shows long, mixed-case, file +names. If it does not, you cannot use the ready-to-run system on the +\CD. + +This Win32 \TeX{} systems includes a \texttt{dvi} previewer, +\textsf{Windvi}, which is similar in usage to the established Unix +\textsf{xdvi}. The documentation can be found in +\OnCD{texmf/doc/html/windvi/windvi.html}. + +\subsection[The TeXLive.exe program]{The \texttt{TeXLive.exe} program} + +\begin{figure*} + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.7\textwidth]{../pictures/Welcome-to-TeXLive} + \else + \ifnum \Status=2 +\includegraphics[bb=20 20 575 432]{../pictures/Welcome-to-TeXLive.gif} + \else + \includegraphics[width=.7\textwidth]{../pictures/Welcome-to-TeXLive} + \fi + \fi + \end{center} + \caption{``Welcome to \TeXLive'' window}\label{graph:welcome} +\end{figure*} + +If your computer is configured to let the \CD{} autostart, then a +dialog box with a menu bar will popup on the screen, and you will have several choices +from there: +\begin{itemize} +\item Install \TeX{} on your hard disk, +\item Install TeX-oriented editors on your hard disk, +\item Install support packages on your hard disk (Ghostscript, NetPBM, + \ldots) +\item Do some maintenance on you \TeX{} system, +\item Remove the \TeX{} system, +\item Use \TeX{} off the \CD{}, +\item Cleanup the temporary files created on your hard disk when using + \TeX{} off the \CD{}, +\item Update some of the DLLs on your system, +\item Browse some documentation: \TeXLive{} documentation, TUG web + pages, \fpTeX web pages, +\item Run the \cmdname{TeXdocTK} application to find specific documentation. +\end{itemize} + +If your \CD{} does not autostart, you can explicitly run the program +by double clicking on \path|bin/win32/TeXLive.exe| on the \CD{} from +the explorer window. + +\subsection[Running \protect\TeXLive{} from the CD-ROM]{Running from +the \protect\CD{}} +You can run all the \TeX{} programs directly off the \CD, and have +access to all the macros and fonts immediately, at the price of a +slower performance than if you install on the hard disk. +To work effectively, one needs to modify +environment variables and to create some small auxiliary directories on a +hard disk. These directories will contain necessary configuration files +allowing the user to modify programs settings and to generate a necessary +format file. Moreover, automatically generated font files will be stored +there too. + +Should you want to run \TeX{} this way, you will have to follow these +steps: +\begin{enumerate} +\item from the menu, chose \verb|Explore CD-Rom|, then + \verb|Select a text editor|, a dialog box will open to select some \path|.exe| + program. + + This program needs to be a \TeX{} oriented editor. It must be able + to run the \TeX{} compiler, previewer and any other needed tool. If + you don't have one already installed on your system, you can install + one from the \CD{}, details section~{\ref{sec:texlive-install}}. + + \emph{There is no way we can guess if the program you will + select is actually a text editor, so be careful}. + Here is a list of frequently used \TeX{} editors: +\begin{center} + \begin{tabular}[ht]{ll} + GNU Emacs & \path|c:\Program Files\NTEmacs\bin\runemacs.exe| \\ + XEmacs & \path|c:\Program Files\XEmacs\XEmacs-21.2\i586-pc-win32\xemacs.exe| \\ + WinShell & \path|c:\Program Files\WinShell\WinShell.exe| \\ + WinEdt & \path|c:\Program Files\WinEdt Team\WinEdt\WinEdt.exe|\\ + TeXnicCenter & \path|c:\Program Files\TeXnicCenter\TEXCNTR.exe| + \end{tabular} +\end{center} + The program + selected will be memorized as the editor to use for future runs. + +\item from the menu, chose \verb|Explore CD-Rom|, then + \verb|Run TeX off CD-Rom|. The environment will be modified, a small + temporary directory created and some configuration files copied + there. Then, the selected editor selected will be launched, and you + will be able to type in some text, let \TeX{} typeset it and the + view it or print it. + + If Ghostscript is not detected on your machine, you will be warned + that rendering your DVI files might fail. You can install it from + the \path|Install|, \path|Support| menu item. See + section~\ref{sec:texlive-install} for details. + +\item you can select a different text editor any time you want. + +\item if you chose \verb|Cleanup CD-Rom setup|, everything \TeX{} + needed will be removed, comprised the selection of your text + editor, but not the extra packages you may have downloaded and + installed. If you installed \cmdname{WinShell} or \cmdname{NTEmacs}, +they won't be removed. +\end{enumerate} + +The editor is run inside a modified environment. A temporary TDS +compliant texmf tree is build in the temporary area of your computer. +It is needed to store files that may be build on the fly like pk font +files or format files. Configuration files are copied from the \CD{} +to this texmf tree, so that you can edit them if needed. The \path|ls-R| +database is computed for this texmf tree. +Then the \texttt{PATH} and \texttt{TEXMFCNF} environment +variables are set locally, and the editor is run in +this local environment. From within your editor\footnote{Actually, you can + state any other program than a text editor, and select your command + processor for example. You will then get a console with the right + settings to use \TeX{} from the \CD{}.}, you have access to a full +\TeXLive{} environment, all files referenced on the \CD{}. + + +\smallskip {\small\noindent \textbf{[For advanced users:]} You can + also use the small batch file \path|mkloctex.bat| to be called in a + directory \path|setupw32| of the \CD. From the Start menu select + `Run', then browse CD drive and select \path|mkloctex.bat|. Before + starting it, you should add two parameters separated by a space: the + letter of your CD drive and the letter of the hard disk where you + want to install the \TeX\ directory. The whole line should read, + e.g., \verb+d:\setupw32\mkloctex.bat d c+. When installation is + complete, please read carefully the information on screen. If you + are running Windows 9x/ME, then you will have to restart Windows. } + +\subsection{Installing editors or support packages} +\label{sec:texlive-install} + +You can already use the \path|TeXSetup.exe| program to install a +single, not \TeX{} dependent package. This might be either an editor +like \cmdname{WinShell} or \cmdname{NTEmacs}, +or also a support package like \cmdname{NetPBM} +(graphics formats conversion) or \cmdname{Ghostscript}. + +Some of the packages are not free, or not with the same meaning as for +the rest of the \CD{}. These packages have been made available through +the Internet. You need to enable an Internet connection in order to +install them. Chosing the \path|Enable Internet access| subitem will +search your system for an active Internet connection, or start one if +possible. \emph{If your computer is not connected to the Internet, + then the timeout might be long, 30s or more}. So try to enable it +only if you know you have a connection. + +Only a few packages are available from the \CD{}, but the most +important of them: \cmdname{NTEmacs} and \cmdname{WinShell} for the +editors, \cmdname{Ghostscript} and \cmdname{NetPBM} for the other +support packages. \cmdname{NetPBM} is needed for running \TeX{}4ht. + +The downloadable packages are sometimes huge: \cmdname{Perl} is 10Mb, +\cmdname{XEmacs} is 50Mb, so be warned that it can take a lot of time +to install such things. \path|TeXSetup.exe| does not yet provide an +estimation of the time needed to complete the download. + +When installing these packages, \path|TeXSetup| is working in +unattended mode. However, the programs that have their own installer +like WinEdt or Ghostscript for example will require human interaction. + +Those packages who have no specific installer will be unpacked and configured +for your system. You will be required to select some directory where +they will be installed. The directory to select should be the root +directory of the whole installation. Assuming you want to install +NTEmacs and NetPBM, the archive files already contain the +\path|NTEmacs\| and \path|NetPBM\| part, so the directory you have to +select is something like \path|c:\Local| or \path|c:\Program Files|. + +\subsection{Installing to your hard disk} + +Installation is started by letting the CD autostart, and +selecting the item \verb|Install| from the menu, then the subitem +\verb|TeXLive|. This will invoke the \path|TeXSetup.exe|. You can also find +it in the \path|bin/win32| directory and run it. \path|TeXSetup.exe| +is a Windows wizard and it will display several pages while running. + +\begin{description} +\item[Welcome Page] + You can choose a \emph{quick} installation from + there, in this case, the installation will run without any human + assistance from beginning to end, with all the default settings + (Figure~\ref{graph:setup-src}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). However, if you chose to install any support program that has its + own installer like WinEdt or Ghostscript, your intervention might be required. + If you have enough privileges (administrator or power user rights) + under a Windows version where it is applicable, then you can decide + to install the \TeXLive{} for all users or for yourself only by + checking the appropriate box. + + \begin{figure*}[!htb] + The \cmdname{TeXSetup} Wizard\hfill + Source directories for the \TeXLive{} files + + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{../pictures/setup-wizard.jpg}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/source-for-texlive.jpg} + \else + \ifnum \Status=2 +\includegraphics[bb=0 0 506 403]{../pictures/setup-wizard.gif} +\includegraphics[bb=0 0 506 403]{../pictures/source-for-texlive.gif} + \else + \includegraphics[width=.48\textwidth]{../pictures/setup-wizard}% + \hfill% + \includegraphics[width=.48\textwidth]{../pictures/source-for-texlive} + \fi + \fi + \caption{The \TeXLive{} setup wizard}\label{graph:setup-src} + \end{center} +\end{figure*} +\item[Source Page] + This page is a bit complex. It will allow you to select two source + directories for your \TeXLive{} system + (Figure~\ref{graph:setup-src}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). You will need a \emph{local + source directory} and possibly a \emph{remote source directory}. + + Why do we need both these directories? The very files of the + \TeXLive{} system are on the \CD{}, but some other packages useful + under a Win32 system are not, either because of space lacking or + because their license was not compatible with the \TeXLive{}'s one. + You need to enable Internet downloading if you want to install these + support packages. + + However, don't panic: the default parameters of the setup will allow + you to install a full system using the \CD{} only. Simply, you won't + have \file{WinEdt} for example, but you will be able to install it + later. + + So you can take your files from: + \begin{itemize} + \item the \CD{} or any similar flat tree of files, available through + some standard directory (this means the \CD{} can be mounted on + some remote machine and be made available through network + sharing), + \item a set of \file{.zip} files (this is the case when you are + installing the + \fpTeX{} distribution), + \item the Internet, in this case, the program takes care of + downloading the \file{.zip} files it needs for you. + \end{itemize} + This option is available only if you enable Internet file + downloading in the right part of the page. You also need to + configure this Internet access by selecting to connect either using + Internet Explorer~5 \file{wininet.dll}, or using a direct connection (\texttt{ftp}, + \texttt{http}). +% or using a proxy server. +% Last, you can be assisted in defining the \emph{local source +% directory} and \emph{remote source directory} which will be used +% to copy the files onto your hard disk. The \texttt{browse} buttons +% allow to select a directory for the former, and an url among a list +% of mirrors for the latter. +\item[Root Page] + On this page, you will tell where you want the files to be + installed (Figure~\ref{graph:root-schm}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). Only the root directory really matters, the other ones + are set according to the root one. You may want to make + \path|$TEXMFEXTRA| point to some TDS compliant directory with other + \TeX{} files or assign a different value to + \path|$HOMETEXMF|, which is set by default to whatever Windows think + is your `HOME' location. +\begin{figure*}[!htb] + Root and directories\hfill% + Scheme selection + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.46\textwidth]{../pictures/root-of-installation.jpg}\hfill% + \includegraphics[width=.46\textwidth]{../pictures/scheme-selection.jpg} + \else + \ifnum \Status=2 +\includegraphics[bb=0 0 506 403]{../pictures/root-of-installation.gif} +\includegraphics[bb=0 0 506 403]{../pictures/scheme-selection.gif} + \else + \includegraphics[width=.46\textwidth]{../pictures/root-of-installation}% + \hfill% + \includegraphics[width=.46\textwidth]{../pictures/scheme-selection} + \fi + \fi + \caption{\TeXLive-Setup: Root and directories / Schemes}\label{graph:root-schm} + \end{center} +\end{figure*} +\item[Get TPM Page] + This page does not require any manual intervention. The \file{.tpm} + files which describe collections and packages are retrieved + (possibly from the Internet), unzipped if needed and parsed. +\item[Schemes Page] + On this page, you will select the global scheme of your + installation (Figure~\ref{graph:root-schm}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). A scheme is a large set of files targeted at some kind + of usage. There are 3 generic schemes for basic, recommended and + full installation. The other ones are devoted to LUGs (what GUST or + GUTenberg propose for their members) or applications (XML and + \TeX{}). + When a scheme is selected, it is still possible to refine the + selection by checking the appropriate box. If doing so, you will be + presented the packages page to change your selection, else you will + jump to the review page. +\item[Packages Page] + Collections and packages are presented in a tree form + (Figure~\ref{graph:win32-support}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). The links + in the tree are dependency links. Collections \emph{depend on} + packages and maybe other collections, and it is the same for each + package. You can select any package or collection individually, but + your request will be granted only if the object is not requested by + another one which is selected. For example, you can't deselect + \texttt{tex-basic} without deselecting all the collections that + request it. + + The \texttt{win32-support} collection displayed on the picture is Win32 specific. It + holds a number of bonus packages (Figure~\ref{graph:win32-support}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ) which can be installed + automatically and individually: Ghostscript, the PostScript + interpreter, \TeX{} oriented editors, tools like Perl, + \LaTeX{}2HTML, etc. \emph{None of these packages are selected by + default}. Some of them have an Internet Explorer icon on their + right, this means that they are not on the \CD{} and they will be + available only if you previously enabled Internet + downloading. \emph{This collection cannot be selected entirely at + once: you need to select the packages individually}. This is to + avoid unwanted downloads of huge files. + + On this page, you also have the information about disk space + needed, for each object, and for the set of those who are selected, + and also the disk space available on the partition selected for the + installation. Last, you can choose to install or not the + documentation files and source files associated with each package. +\item[Review Page] + You will find there a summary of your choices + (Figure~\ref{graph:review}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). It is still time to + go back to change them. +\begin{figure*}[!htb] + Packages Page\hfill% + Win32 Support + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{../pictures/package-selection}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/win32-support} + \else + \ifnum \Status=2 +\includegraphics[bb=0 0 506 403]{../pictures/package-selection.gif}\hfill% +\includegraphics[bb=0 0 506 403]{../pictures/win32-support.gif} + \else + \includegraphics[width=.48\textwidth]{../pictures/package-selection}% + \hfill% + \includegraphics[width=.48\textwidth]{../pictures/win32-support} + \fi + \fi + \end{center} + \caption{Packages Page / Win32 goodies} + \label{graph:win32-support} +\end{figure*} +\item[Files Copy Page] + The selected files are copied on your hard disk (Figure~\ref{graph:file-copy}, + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). All the files not + yet available on your local disk are first downloaded from the + remote source directory on the Internet. Then every package is + unpacked (if \path|.zip| files), or copied from the \CD{}. +\item[Configuration Page] Several packages need some configuration + step to make them usable (Figure~\ref{graph:configuration}, + \ifnum \Status = 1 + on the left% + \else\ifnum \Status=2 + at the top% + \else + on the left% + \fi\fi + ). Also the \TeXLive{} system needs some post-processing step + (format files generation, ls-R databases generation, environment + variables, etc.). All these operations are done there, some of them + can be lengthy. +\begin{figure*}[!htb] + \textbf{Review Page}\hfill% + \textbf{File Copy Page} + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{../pictures/review-settings}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/file-copy} + \else + \ifnum \Status=2 + \includegraphics[bb=0 0 506 403]{../pictures/review-settings.gif}\hfill% + \includegraphics[bb=0 0 506 403]{../pictures/file-copy.gif} + \else + \includegraphics[width=.48\textwidth]{../pictures/review-settings}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/file-copy}% + \fi + \fi + \end{center} + \caption{Review Page / File Copy Page} + \label{graph:review}\label{graph:file-copy} +\end{figure*} +\item[Final Page] The installation being over, you may want to display + the Windows specific documentation (HTML format) and / or the log + file of the setup process (Figure~\ref{graph:final} + \ifnum \Status = 1 + on the right% + \else\ifnum \Status=2 + at the bottom% + \else + on the right% + \fi\fi + ). If it is needed (Win9x/WinME), you will + be asked to reboot your computer. +\end{description} + +\begin{figure*}[!htb] + \textbf{Configuration Page}\hfill% + \textbf{Final Page} + \begin{center} + \ifnum \Status=1 + \includegraphics[width=.48\textwidth]{../pictures/configuration}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/congratulations} + \else + \ifnum \Status=2 + \includegraphics[bb=0 0 506 403]{../pictures/configuration.gif}\hfill% + \includegraphics[bb=0 0 506 403]{../pictures/congratulations.gif} + \else + \includegraphics[width=.48\textwidth]{../pictures/configuration}\hfill% + \includegraphics[width=.48\textwidth]{../pictures/congratulations}% + \fi + \fi + \end{center} + \caption{Configuration Page / Final page} +\label{graph:configuration}\label{graph:final} +\end{figure*} + +Please be aware that the choice of cluster size on DOS disk +partitions can radically affect the size of your \TeX\ +installation. The support tree has hundreds of small files, and it is +not unusual for a complete installation to take up to 4 times the +amount of space used on the \CD. + + +\section[Maintenance and other aspects of the \protect\TeXLive{} +installation under Windows]{Maintenance and other aspects of the \protect\TeXLive{} +installation under Windows} + +\subsection{What's different under Win32 from the standard \Webc ?} +The Win32 version of \Webc{} has some specific features that need to +be noticed. + +\begin{description} +\item[\KPS{}] the hash-tables that \KPS{} builds are quite large for + the \TeXLive{}. In order to cut down the starting time of any + \KPS{}-enabled program, these hash-tables have been put in shared + memory. This way, when you chain the execution of several such + programs, like \path|tex| calling \path|mpost| calling \path|tex|, + the overhead when starting each of the programs but the first will + be reduced. This change is hidden to the user, except if you set the + debug flag of kpathsea to the \path|-1| value: you will then trace + access to the shared memory, which is not what you want (it is + accessed very often!). What is useful in a log trace of the shared + memory access is still to be defined, so the situation might evolve + in the future. +\item[\cmdname{kpsecheck}] this command provides some option that did + not fit well into \cmdname{kpsewhich}. It will allow you to list all + the files that occur multiple times across your texmf trees. This + could be handy, but most of the time you will also get unwanted + output (like dozens of \path|README| files)\footnote{It is noticeable + that all these files result in clashes inside the \KPS{}-hashing + mechanism, fortunately, \KPS{} never look for these files.}. For + this reason, you can combine the \path|-multiple-occurences| with 2 + other options for including or excluding any filename that match + some pattern (you can request for several patterns). + + The \cmdname{kpsecheck} command will also report the status of + shared memory: in use or not used. That might be useful to know + because if the status reported is ``in use'', that means one or + several processes are working, and the effect of any + \cmdname{mktexlsr} command will be delayed until the next time where + no \KPS{} linked process will be running. + + Last, this same command will report about the location it thinks + Ghostscript can be found. Under Win32, for many programs, it is + easier to use the Ghostscript dll, and find it by using the + Ghostscript registry key than to change the \path|PATH|, which has a + limited length anyway. +\item[\Webc{}] the engines have a few more options than the ones from regular + \Webc{}, and one option with a different behaviour: + \begin{itemize} + \item the \path|-fmt| option behaves differently. Previously and + with the regular \Webc{} distribution, this option has 2 different + meanings when you are in ``ini'' or ``vir'' mode. Under Win32, it + has the same meaning: preload the format file specified with the + argument. The meaning of building a format of such name in ``ini'' + mode is obtained by the new \path|-job-name| option. + \item \path|-job-name| option: allows to set the name of the file + resulting from the compilation process. In normal mode, it will + change the base name of all files produced (\path|.dvi|, + \path|.aux|, etc.), while in ``ini'' mode, it will set the name of + the format file written. + \item \path|-halt-on-error| stop the compilation at the first error. + \item \path|-job-time| set the job time to the same timestamp as the + file given in argument. + \item \path|-output-directory| allow to write all the output files in the + specified directory. + \item \path|-time-statistics| print statistics about the job run + time. It is to be noted that Win9x not being a true multitasking + operating system, it has no reliable timer for short periods, so + the value printed is an approximation. Under NT/2K/XP, the result + is quite accurate with user time and system time values allocated + for this run. For Unix + users: the \path|time| command is not usually available to Windows + users. + \end{itemize} +\end{description} + +\subsection{Adding packages to your installation} + +You will find an option in the \texttt{TeXLive} menu (or go to +\texttt{Start -> Programs -> TeXLive -> Add TeX package} menu) to run again +\file{TeXSetup.exe}, but in maintenance mode this time. The steps you +will go through are almost identical to the ones the first time you +run it. + +The only different step is about the packages selection page. In +maintenance mode, the list of installed packages is compared to the +list of packages available from your source directories. Packages that +are not installed will be displayed in green, out of date packages +will be displayed in red and up to date, installed packages are +displayed in black. + +This way, you can choose to add or upgrade components, either from +your \CD{} or from the +Internet, where you are likely to find some more recent version of +your packages. + +It is up to you to select which ones of the packages you want to +install. The rest of the process is similar to the first installation. + +If you want to add files that are not provided by the \TeXLive{} (or +\fpTeX{}) distribution, it is recommended to put them in the +\path|$TEXMFLOCAL| directory. This way, you will be safe against +upgrades of the \TeXLive{} software. + +The directory pointed to by \path|$TEXMFLOCAL| is initially empty. If +you want to add there the support file for Maple (symbolic computation +program) for example, you will have to put the style files in:\\ +\path|c:\Program Files\TeXLive\texmf-local\tex\latex\maple\|\\ +and the documentation files in:\\ +\path|c:\Program Files\TeXLive\texmf-local\doc\latex\maple\| + +Next, \textbf{do not forget to rebuild the ls-R databases files}, +either by using the right menu (Start -> Programs -> TeXLive + -> Maintenance), either by manually running the \file{mktexlsr} + command. + +\subsection[Removing \protect\TeXLive{} from your hard disk]{Removing + \protect\TeXLive{} from your hard disk} + +The uninstall procedure is available either from the +\file{TeXLive.exe} program, from the \path|TeXLive| menu or from the +control panel (Start menu -> Control Panel, Add/Remove Programs +option). This procedure will cleanup your hard disk of most of the +\TeXLive{} files. However, \TeX{} is a system that is creating files +and there is no mechanism to keep track of all of them. Moreover, +Win32 support packages have their own uninstall procedure, which you +will have to run separately (provided you want to get rid of them). Last, +the files you may have stored in \path|$TEXMFLOCAL| won't be +removed. So, even if the vast majority of files are automatically +removed by the uninstall procedure, you will have to do some manual +cleanup to actually remove all of them. + +\subsection{Running \texttt{TeXSetup.exe} from the command line} + +The \path|TeXSetup.exe| program has a number of other interesting +options. You can get the list by running: +\begin{verbatim} +c:\>TeXSetup --help +\end{verbatim} + +Here is the description: +\begin{description} +\item[\path|--automatic-reboot|] reboot without waiting user + confirmation once installation is over; +\item[\path|--dry-run|] do nothing, just log everything that will be + done without this option; +\item[\path|--quick|] use the recommended installation and default + directories, ask nothing up to rebooting; +\item[\path|--net-method (=ie5/direct)|] enable to download components with + restricted licenses from the Internet (either using direct + connection of Internet Explorer 5 DLLs): you need to have an available + network connection and some of the packages are huge; +\item[\path|--remote-source-directory |] this is the base url for the remote packages; +\item[\path|--local-source-directory

|] by default, \path|TeXSetup.exe| + will guess the root directory of the set of files you want it to act on, if you ever + upgrade \path|TeXSetup.exe|, you won't be able to copy the new version + onto your \CD{}, so you will need to use this option to specify the + root of the \CD{}; +\item[\path|--installation-directory |] this is the root of your + installation, all files will be copied under this location. The + default value is \verb+c:\Program Files\TeXLive+; +\item[\path|--texmfmain-directory |] +\item[\path|--texmflocal-directory |] +\item[\path|--texmfextra-directory |] +\item[\path|--texmfhome-directory |] +\item[\path|--vartexmf-directory |] +\item[\path|--vartexfonts-directory |] these are the directories + used to configure the location of your files. They map directly to + the \path|texmf.cnf| variables. +\item[\path|--with-source-files(=yes/no)|] copy the source files + for \TeX{} packages, default value is no; +\item[\path|--with-documentation-files(=yes/no)|] copy documentation files for \TeX{} + packages. Default value is yes. Beware: this is only documentation about specific + packages, general documentation will be installed anyway; +\item[\path|--program-folder |] the name of the folder under + which you will find the menus; +\item[\path|--add-package |] this is used to add or update a specific + package after a first regular installation; +\item[\path|--scheme |] install the named scheme instead of the + default \path|texlive-recommended| scheme; +\item[\path|--maintenance|] mostly the same as \path|--add-package| + without specifying a package to add; +\item[\path|--uninstall|] this option will remove anything \TeX{} related coming from + the \CD{}, which means there can be files left if you added style + files or format files, and also that supplementary tools will not be + removed\footnote{This option is still a bit crude as of \today}; +\item[\path|--help|] this option opens up a box with the list of options. +\end{description} + +\subsection{Network installation} + +\KPS{} knows about UNC names, so you can use them to get your TEXMF +tree from the network. But there is better than this. +All the support files and configuration files, everything except the files in the +\path|bin/win32| are shareable with a \teTeX{} or Unix \TeXLive{} installation. That means +you can use Samba either to mount from an NT server to a Unix +workstation or the converse. Several strategies are possible: +\begin{itemize} +\item Put everything on the server. Just add each set of files for the os and +architecture you want to use in the \path|bin| directory. That means +for example \path|bin/win32| and \path|bin/i386-linux|. Next configure +your main variables. You can use UNC names to +point to the right directories under Win32. +\item Install a local copy for the binaries and format files. In this + case, assign \path|$TEXMFMAIN| to the main \path|texmf| tree that + will be accessed remotely. Set \path|$VARTEXMF| to be a local + directory which will hold local configuration files and on-the-fly + generated files. +\end{itemize} + +\subsection{Personal Configurations} + +\subsubsection{\cmdname{WinShell}} +\label{sec:winshell} + +Start this program from the Start menu or from the Desktop shortcut. +Go to \textbf{Options} \verb+->+ \textbf{Program Calls}. + +\begin{itemize}\itemsep 0pt +\item In the DVIWin tab, if the filename is \textbf{yap}, replace it +with \textbf{windvi.exe}. +\item In Ghostview tab, make sure it gives the correct path for +gsview32.exe:\\ +\hspace*{1em} \verb+C:\ghostgum\gsview\gsview32.exe+ (for 3.6, the +current version)\\ +or \\ +\hspace*{1em} \verb+C:\gstools\gsview\gsview32.exe+ (for the older +version) + +\end{itemize} + +Click \textbf{OK}. + +Note that the install process sets all files with the \texttt{.tex} +extension to open with \cmdname{WinShell}. Unless you plan to use another editor +(such as WinEdt or Emacs), this is appropriate. + +Unfortunately, \cmdname{WinShell} does not have a spell-checking feature. +However, if you have installed the \path|tex-extrabin| collection, +your installation includes \textbf{Ispell} (a spell checking program +found on most Unix systems). The executable is in your PATH so +\verb+ispell.exe+ will be found if you invoke it from a DOS window. +If you installed documentation, look +at\\ +\verb+C:\Program Files\TeXLive\texmf\doc\html\manpages\ispell.html+\\ +for information on Ispell. (Otherwise, you can find +\verb+ispell.html+ on the CD.) If you rely on spell checking, you may +want to add an Ispell icon to \cmdname{WinShell}. See +subsection~\ref{winshell:ispell} of this document for how to do that. + +For an excellent commercial (but inexpensive) spelling checker, +see \url{http://www.microspell.com}. + +%Appendix B also contains other information about using \cmdname{WinShell}, such as: +% +%\begin{itemize} +%\item How to apply a bug fix you probably need +%\item How to print directly from \cmdname{WinShell} +%\item How to use the Project feature for multiple-file documents +%\end{itemize} + +\cmdname{WinShell} also has on-line help, which you can access via the +$\textbf{\underbar{?}}$ on the menu bar. + +Other information about using \cmdname{WinShell} can be found in +section \ref{winshell:more} on p.~\pageref{winshell:more}. + +\subsubsection{Dvips} + +The configuration file for dvips can be found in\\ +\verb+C:\Program Files\TeXLive\texmf-var\dvips\config\config.ps+\\ +You may open it with any editor (\cmdname{WinShell} will do fine) and change +some parameters: + +\begin{description} +\item [fonts] you can change the default printer \MF{} mode or printer + resolution in case dvips needs to generate PK fonts. By default it + is configured to use type1 versions of the CM fonts, so it should + not call \cmdname{mktexpk} too often; +\item[printer] you can tell dvips where you want to print by + default. If the `o' option is not followed by a printer name, then a + \file{.ps} PostScript file is written. You can give dvips a printer + name such as: +\begin{verbatim} +o lpt1: +% o | lpr -S server -P myprinter +% o \\server\myprinter +\end{verbatim} +\item[paper] Next, you might want + to change the paper size from European (A4) to US letter + by making the US letter the first paper size mentioned in the file. + Scroll to the group of lines beginning with ``@''. Move + the appropriate lines so that this section begins with the lines:\\ +\hspace*{1em} @ letterSize 8.5in 11in\\ +\hspace*{1em} @ letter 8.5in 11in\\ +\hspace*{1em} @+ \%\%BeginPaperSize: Letter\\ +\hspace*{1em} @+ letter\\ +\hspace*{1em} @+ \%\%EndPaperSize +\end{description} + +\textbf{Note:} The current \TeXLive{} distribution has implemented (for +the first time!) the procedure of making always up-to-date fontmaps files +for Dvips and Pdftex. This is done by \cmdname{updmap} program +during installation, as well as during any font package addition. +If you add new packages by hand, edit the file \verb+updmap.cfg+ +in \path|$VARTEXMF/web2c|. + +\subsubsection{Pdftex} +If you want to use the program pdf{}latex to convert directly to +pdf format, and you are using US letter file, edit the file\\ +\verb+C:\Program Files\TeXLive\texmf-var\pdftex\config\pdftex.cfg+\\ +and change ``page\_width'' and ``page\_height'' to specify letter-size paper. +These entries should read:\\ +\hspace*{1em} page\_width 8.5 true in\\ +\hspace*{1em} page\_height 11 true in\\[6pt] +Save the file and exit the editor. + +\subsubsection{GSView} +Starting from versions compatible with Ghostscript 6.50, GSView is not +free anymore, but shareware. So it is not on the \CD{} anymore. + +You may want to change the papersize to US letter size. If so, +open GSView from the Start menu. \\ +From the \textbf{Media} menu, select \textbf{Letter}. + +Also, there are menu settings that are supposed to give you the +most readable screen image:\\[4pt] + From \textbf{Media} \verb+->+ \textbf{Display Settings}, +set \textbf{Text Alpha} +and \textbf{Graphics Alpha} both to 4 bits. + +Note that the installation process has set all .ps and .eps files +to automatically open with GSView. + +For printing instructions, see section~\ref{printing} below. + +\subsubsection{WinDvi} +\label{sub:windvi} + +The \file{TeXSetup.exe} program takes care of associating the files +with the \file{.dvi} extension with \file{Windvi}. + +Open it from the Start menu (Programs \verb+->+ TeXLive \verb+->+ DVI Viewer). +You can set it for US letter paper by going to \textbf{View} \verb+->+ \textbf{Options} +and next to \textbf{Papertype}, +selecting US (8.5\verb+"+ x 11\verb+"+). +Click \textbf{OK}. +Exit Windvi. +You can change other parameters from there, like the ability to +execute commands included in path|\special{}|. +Also, the first time you +view any .dvi file, you may find the magnification too large. Zoom out +until you get an appropriate size. + +%There are two important parameters related to printing that can't yet +%be set from the dialog boxes, namely the resolution and the \MF{} mode +%for the printer. You can set them once for all by specifying them on +%the command line: +%\begin{verbatim} +%c:\>windvi -p 360 -mfmode canonbjc foo.dvi +%\end{verbatim} +%When you will exit Windvi, these parameters will be stored in the +%configuration file. The available modes are found in this file:\\ +%\path|c:\Program Files\TeXLive\texmf\metafont\misc\modes.mf| + +All the configuration for Windvi is stored in the +\path|$HOME/windvi.cnf| file. You can find it by running this command +at the prompt: +\begin{verbatim} +c:\>kpsewhich --expand-var $HOME/windvi.cnf +\end{verbatim} + +Should you have problems with Windvi, please remove the configuration +file and test your problem against a vanilla configuration. + +\subsection{Testing} + +You can test \cmdname{WinShell} by opening the file \verb+sample2e.tex+, found in +\path|C:\Local\TeX\texmf\tex\latex\base|. The \LaTeX\ source should appear +on the screen. Process it by clicking on the \LaTeX\ icon on the toolbar, +then view it by clicking on the Preview (Windvi) icon. + +At first, when you preview files with Windvi, it will create fonts because +screen fonts were not installed. After a while, you will have created most +of the fonts you use, and you will rarely see the font-creation window. +Return to \cmdname{WinShell} and try dvips, then GSView. + +\textbf{Hint for the future:} If a \LaTeX\ run stops because \LaTeX\ +cannot find a file, you can press \textbf{Ctrl-z} to quit. + +\subsection{Printing}\label{printing} + +It is possible to print from Windvi. In this case, printing will +be done using the Windows unified printer driver. By definition, it +is compatible with all printers. However, there is some drawback: it +can generate some huge spool files, and some (older) versions of Windows just +don't like them. The advantage is that you can use features like +embedding BMP or WMF images. You also need to make sure that the +printer parameters are correctly set (subsection~\ref{sub:windvi}), +else you will get scaled printing (printing at 600dpi on a 300dpi +printer will give you only one quadrant of your page). + + +Printing is faster and more reliable if you run dvips to make a +.ps file and then print from GSView. To print from GSView, first select +\textbf{Print...} from the \textbf{File} menu. A Print window will appear. + +If you will be using a PostScript printer, \textit{be sure to select +\textbf{PostScript Printer}}. In the newer version this is done in +the ``Print Method'' box at the bottom left of the Print window. You +can then select any of the printers that you have previously installed +on your PC. If you fail to check the box for PostScript Printer, +printing will not work. + +If you will be using your own non-PostScript printer, select +\textbf{Ghostscript device} in the ``Print Method'' box, then click on +the button to the right labelled \textbf{djet500} and select your +printer type from the list that pops up. (In the older version of +GSView, make sure PostScript Printer is \textit{not} selected, then +select your printer type from the ``Device'' list.) + +If you use \cmdname{WinShell} and a PostScript printer, probably the most +convenient way to print is to add an icon to the \cmdname{WinShell} toolbar that +invokes dvips in a way that sends the output directly to a default +printer. For detailed instructions on how to do this, see +\ref{winshell:print} on p.~\pageref{winshell:print} +(\textit{More About \cmdname{WinShell}}). + +\subsection{More About \cmdname{WinShell}}\label{winshell:more} +\subsubsection{Installing Bug Fixes} + +\cmdname{WinShell}'s author (\href{mailto:idb@winshell.de}{Ingo de Boer}, +thanks to him) sometimes releases beta versions of the next \cmdname{WinShell} +version which are also bug fixes. You can grab them from +\url{http://www.winshell.de}. Usually they are \file{.zip} files that +only require to be unpacked in \cmdname{WinShell} directory (\path|c:\Program +Files\WinShell| by default), either using WinZip or a similar tool, or +by using \file{unzip} on the command line. If you got some +\file{winshellbugfix.zip} file and that you saved it in the \cmdname{WinShell} +directory, then you need to run: +\begin{verbatim} +c:\>cd c:\"Program Files"\WinShell +c:\>c:\local\bin\unzip winshellbugfix.zip +\end{verbatim} +Say `yes' if you are asked if some files should be overwritten. The +\path|unzip.exe| programme can be found in the +\path|support/gnu-utils| package. If you +do not have it on your machine, you can use any archiver tool like +WinZip to achieve the same effect. + +\subsubsection{Using the Project Feature} +If your document is split into several files +(for example a thesis), look into \cmdname{WinShell}'s ``Project'' feature. From the +\textbf{Project} menu, you give the project a name (e.g., Thesis), +supply the name of the main (or root) file, and then ``add'' other +files. These filenames display on the left of the screen where you can +double click the names to view and switch between them. Clicking +the \textbf{\LaTeX} icon always processes the main file. + +Note the icons on the toolbar for toggling the project space (on the left) +and the log space (at the bottom). If you are not using the Project +feature, you may want to toggle off the space on the left, using the full +screen width to display your file. + +\subsubsection{Printing from \cmdname{WinShell} to a PostScript Printer} +\label{winshell:print} + +The Dvips icon on the \cmdname{WinShell} toolbar puts the PostScript output in a file, +which you can then view with GSView and print from there if you choose. +However, it's convenient to add a \cmdname{WinShell} ``program call'' to dvips which +sends the output directly to a designated PostScript printer. The steps +below show how to do this for the printer \textbf{vclw}; you should +substitute the name of your most frequently-used printer for \textbf{vclw}. +\begin{enumerate} +\item Make the program aware of the printer: +\begin{itemize} + +\item Open \cmdname{WinShell}, go to \textbf{Options} \verb+->+ +\textbf{Program Calls} \verb+->+ \textbf{User defined}. + +\item Click on \textbf{Tool 1} in the list on the right and fill in the +fields to the left as follows:\vspace{-6pt} +\begin{quote} +Name: \verb+Print+\\ +exe file: \verb+dvips+\\ +cmd-line: \verb+ -D600 %m -o vclw+\\ +Uncheck the box for ``DVIPS first'' +\end{quote}%\vspace{-12pt} +\item Click \textbf{OK} +\end{itemize} +\item Add Print to the toolbar: +\begin{itemize} +\item Go to \textbf{Options} \verb+->+ \textbf{View} \verb+->+ \textbf{Customize}. +\item In the Category box, select \textbf{User-Programs}. +\item Select \textbf{Print} and drag it to the toolbar, placing it just to + the right of the GSView icon. +\item You then have a choice of ``Image only'', ``Text only'', or ``Image and +Text''. The easiest is to select ``Text only'' and click \textbf{OK}. +You should then see \textbf{Print} on the toolbar. (If you prefer, you can +select ``Image only'', then ``Edit'', and edit the displayed picture to your +satisfaction.) +\end{itemize} +\end{enumerate} +Now, to print a \LaTeX\ document, just click on the \textbf{Print} icon to +send to your selected printer. To use a different printer, you will need to +click on the \textbf{Dvips} icon to print to a file. Then click on the +GSView icon and use GSView to send to any printer you have installed on +your PC. + +\subsubsection{Adding Ispell to \cmdname{WinShell}} +\label{winshell:ispell} +\begin{enumerate} +\item Add Ispell to User Tools: +\begin{itemize} +\item Open \cmdname{WinShell}, go to \textbf{Options} \verb+->+ +\textbf{Program Calls} \verb+->+ \textbf{User defined}. +\item In the list on the right, click on \textbf{Tool 1} (or \textbf{Tool + 2} if you have already used \textbf{Tool 1}) and fill in the +fields to the left as follows:\vspace{-6pt} +\begin{quote} +Name: \verb+Ispell+\\ +exe file: \verb+ispell+\\ +cmd-line: \verb+ -t -d american %c.tex+\\ +Uncheck the boxes for ``LaTeX first'' and ``DVIPS first'' +\end{quote}%\vspace{-12pt} +\item Click \textbf{OK} +\end{itemize} + +\item Add Ispell to the toolbar: %\vspace{-14pt} +\begin{itemize}\itemsep 0pt +\item Go to \textbf{Options} \verb+->+ \textbf{View} \verb+->+ \textbf{Customize}. +\item In the Category box, select \textbf{User-Programs}. +\item Select \textbf{Ispell} and drag it to the toolbar, placing it just to + the right of the GSView icon (or the last icon you added). +\item You then have a choice of ``Image only'', ``Text only'', or ``Image and +Text''. The easiest is to select ``Text only'' and click \textbf{OK}. +You should then see \textbf{Ispell} on the toolbar. (If you prefer, you can +select ``Image only'', then ``Edit'', and edit the displayed picture to your +satisfaction.) +\end{itemize} +\end{enumerate} +Now, when you have a \LaTeX\ document open, you can click on +\textbf{Ispell} to perform spell checking. Ispell will open another window +and display the first misspelled word on the left with the filename on the +right. Below that you will see the context in which the misspelling appears; +often several suggestions for replacements are also displayed. To replace +the word, enter the number corresponding to the desired replacement. Other +possible responses are listed below; for example, you can press the space +bar to ignore the misspelled word. For more information on Ispell, read the +manual page: \verb+C:\Program Files\TeXLive\texmf\doc\html\manpages\ispell.html+. + +Note that when you replace a word, you will not see the correction in your +\cmdname{WinShell} window until you close the file (click the X in the upper right +corner) and then open it again (use the File menu). + +\subsection{Tips and tricks about the Win32 platform} + +\subsubsection{Different flavors of Win32} + +What we call Win32 is not an operating system by itself. It is a set +of functions -- and a large one\footnote{Around 12000 functions in the + header files of the Microsoft SDK} -- that you can use to write +programs for different operating systems of the Windows family. + +Windows comes in different flavors: +\begin{itemize} +\item Win95, Win98 and WinME, which \emph{are not true multitasking, + multithreading} environments. They are the latest -- and hopefully + last -- metamorphosis of DOS. This can be more or less proven by the + fact that when booting, the PC will load the \path|command.com| + interpreter, and if you stop the boot process at this point, you can + ask for the current (DOS) version and it will answer something like + 'MS-DOS 7.0' (at least for the old versions of Win9x); +\item Windows NT, which is a new operating system written from scratch, + capable of + true multitasking behaviour, and loaded with high level features; +\item Windows 2K, written on an NT basis, with all the bells and + whistles of Win98. +\item Windows XP, which comes with Personal and Pro flavors. This is + the last step in merging both lines of products (Win9x based and NT + based). XP is written on an NT basis. +\end{itemize} + +Win9x are able to run 32~bits programs and 16~bits programs +concurrently. But the operating system by itself is not entirely +written in 32~bits mode, and does not support memory protection: 16bits +applications can overwrite parts of the operating system memory! Some +parts of the system like the GDI (Graphical Device Interface) manage +limited resources like bitmaps, fonts, pens and so on for the set of +all programs that run concurrently. All the bitmaps headers available +at the same time can't amount for more than 64kb. This explains the +performance tool and the fact that you can put your system on his +knees by making intensive use of graphic objects for example. + +NT, 2K and XP do not suffer from these limitations, and neither from +other Win9x limitations. They are true multitasking environments, with +protected memory. They are much more responsive than Win9x because +of better memory management, better file system and so on. + +\subsubsection{Command line prompt} + +You will wonder: ``why would I need to use a command line prompt when +I have Windows?''. + +Good question. The problem is of very general nature. Not all +operations can be done easily using only a GUI. Command line gives you +programming power -- assuming a clever command interpreter. + +But the problem here is more fundamental: \TeX{} is \emph{a batch} +tool. Not an interactive one. \TeX{} needs to compute the best +layout for each page, resolve cross-references and so on. This can be +done only by a global processing of the document. It is not (yet) a +task that can be done interactively. + +This means that you should use \TeX{} from a command line. In fact the +situation is not so bad. There is an advantage to write command line +tools for complex processing: they are better debugged, because not +tied to GUI problems, and GUI tools can be designed to interface the +command line tools. This is the case for \TeX{} where you will +interact with it most of the time through a GUI text editor -- see +section~\ref{sec:winshell} for example. + +However, you may need to use the command line prompt in a number of +situations, by example in case of problems and you want to debug your +setup -- see + section~\ref{sec:troubleshooting}. + + \begin{description} + \item[Win9x] You will open a command line prompt by looking either + for the MS-DOS icon in the ``Start->Programs'' menu, either by + choosing ``Start->Run'' menu and typing in \path|command.com| + \item[NT, 2K, XP] You will open a command line prompt by looking + for the ``Command Prompt'' in the ``Start->Accessories'' + menu\footnote{These locations may change across different OS + versions.}. You can also choose the ``Start->Run'' menu and type + in \path|cmd.exe|, which is the name of the brand new command + interpreter for NT\footnote{Which explains why it is untrue to + call this a \emph{DOS} box under NT!}. +\end{description} + +\subsubsection{Path separators} + +The Win32 API understands both \path|/| and \path|\| characters as +PATH separators. But the command interpreters do not! So whenever a +path name is used programmatically, you can use both separators, and +even mix them up in the same path name. But on the command line, you +must type \path|\| as path separator. The reason is compatibility: +the command processor used the \path|/| to introduce arguments to +commands. + +All this to say: do not be surprised to read path names written using +the Unix convention; \fpTeX{} is a port of \Webc, and aims to be compatible +across platforms. For this reason, all the configuration files that +need to specify path names use the Unix convention. + +\subsubsection{File systems} +\label{sec:clusters} + +The worse feature of Win9x with regard to \TeX{} is probably the +so-called FAT file system. \TeX{} uses many many small files, with +size around 1kb -- 3kb. The FAT file system is old, and predates by +far the multi-gigabytes hard disks we have today. It means it can't +manage efficiently the 30000 \TeX{} files found on the \CD{}. The FAT +file system will allocate a minimum of 32kb for \emph{any} file on a +huge partition. It means that \TeX{} will use much more disk space +than it actually needs. + +The other, more modern, file systems available -- namely FAT32 and +NTFS -- do not have this drawback. They manage clusters of 4kb +only\footnote{You can lower the limit to 512 bytes on NTFS}. + +\subsubsection{How to add some directory to your PATH} + +There are pairs of variables and values which behave much like global +variables inside your programs. The set of those variables is called the +environment. Each program is initialized with a copy of the +environment when it is run. It can request and change the +value of any variable. The changes happen in the copy of the +environment, and is not at all propagated to the other running +programs. + +Your PATH is a special environment variable used to search for +programs you want to run. +There is a different procedure to change it for Win9x, WinME and NT/2K/XP: + +\begin{description} +\item[Windows 95/98] Edit your \path|autoexec.bat|. In this file should be a line + starting with \texttt{PATH=} and followed by a list of directories separated + by \path|;|. Please add the directory with the executables in this line. + After this, this line could look as follows: +\begin{verbatim} +PATH=c:\windows;c:\windows\system;c:\"Program Files"\TeXLive\bin\win32 +\end{verbatim} +\item[Windows ME] You need to run the special program + \path|c:\windows\system\msconfig.exe| to be able to change any + environment variable. From this program, select the `Environment' + tab, and then add or modify the variable you want. You will be asked to reboot the + machine upon any change. +\item[Windows NT/2K/XP] + Click left on \texttt{Start --> Settings --> Control Panel}. Now the window + with the control panel icons opens. Double click on System. The + System Properties window opens. Click on the tab + \textsf{Environment} or look for a button named `Environment + Variables' among the dialog boxes. Now + you can change the environment variables for your user account. Note: + There are also displayed the environment settings for the system. + Normally, you can't change the system variables unless you have + administrator rights on your machine. If you want to change the \texttt{PATH} + for all users, you will have to contact your system administrator or + be the system administrator yourself--in the later case you should + know what you are doing. + + If there is already a \texttt{PATH} setting for your user account, + left click on \texttt{PATH}. In the field \textsf{Variable} appears + \texttt{PATH} while the field Value shows the current setting of + \texttt{PATH} as a list of directories separated by \path|;|. Add + the directory where the executables are located (e.g. + \path|c:\Program Files\TeXLive\bin\win32|). If there isn't a \texttt{PATH} variable + for your user account, simply click in the field Variable and type + in \texttt{PATH}, click in the field \textsf{Value} + and type in the directory with the executables. Important: Click on + the \textsf{Apply} button before clicking \textsf{Ok}, otherwise the + changes to \texttt{PATH} won't apply to your system. Be careful when + changing the environment settings. +\end{description} + +The best way to be sure that a variable has been properly set is to +open a console and type: +\begin{verbatim} +set VARIABLE +\end{verbatim} +which should return the corresponding value. + +\subsubsection{\TeX{} engines} + +If you have a look at the \Webc{} documentation, you will read that all +the various \TeX{} derived programs use the same base engine. For +example, \path|tex.exe| and \path|latex.exe| are exact copies of the +same program, but each one will use a different format file, based on +its calling name. + +Under Unix, this feature is implemented through \emph{symbolic + links}. It saves up a bit of disk space, because some engines are +used with many different format files. + +The Win32 API does not know about file links. So to save up almost +the same amount of memory, all the \TeX{} base engines have been put +in DLLs (\emph{Dynamic Linked Library}). This means that you will have +the following layout: +\begin{alltt} +13/05/2002 17:06 3 584 latex.exe +13/05/2002 17:06 266 240 tex.dll +13/05/2002 17:06 3 584 tex.exe +\end{alltt} +and the \path|latex.exe| file is nothing but a rough copy of +\path|tex.exe| using the same core \path|tex.dll|. +The same trick has been used for the \path|mktex*.exe| family of programs which are +linked to the \path|mktex.dll| library. + +In fact, a generic tool called \path|lnexe.exe| is provided to build the +equivalent of Unix hard links for executable files only under Win32. + +\subsection{In case of problems} +\label{sec:troubleshooting} + +\subsubsection{What to do if \texttt{latex} does not + find your files?} + +\begin{itemize} +\item \cmdname{kpsewhich} is the tool of choice to debug any +problem. Unfortunately, kpsewhich outputs debug information to +stderr, and the Windows console does not know how to redirect stderr +to a file\footnote{Well, NT and Win2k consoles know how to do + that. But the trick will work for any console.}. +For diagnostic purposes you can temporarily set an +environment variable (in DOS box): +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=err.log +\end{verbatim} +You can also set the debug level: +\begin{verbatim} +SET KPATHSEA_DEBUG=-1 +\end{verbatim} + +If you want to redirect stderr to stdout, which is not possible under +either W9x or NT/2K/XP, then just do: +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=con: +\end{verbatim} +This way you can capture both stdout and stderr in the same file. + +\item Assuming the installation has been done in \path|c:/Program Files/TeXLive|, check + the following values: \\ + {\small + \begin{tabular}{ll} + \path|kpsewhich -expand-path $SELFAUTOPARENT| & \path|c:/Program Files/TeXLive| \\ + \path|kpsewhich -expand-path $TEXMF| & \path|c:/Program Files/TeXLive/texmf| \\ + \path|kpsewhich -expand-path $TEXMFCNF| & + \path|.;c:/Program Files/TeXLive/texmf/web2c;| \\ + & \path|c:/Program Files/TeXLive/bin/win32;| \\ + & \path|c:/Program Files/TeXLive/bin;| \\ + & \path|c:/Program Files/TeXLive| \\ + \path|kpsewhich -expand-var $TEXINPUTS| & \path|.;c:/Program Files/TeXLive/texmf/tex//| + \end{tabular} +} +\item If you have other \TeX{}-related values already set in your + environment, please, remove them. They are overriding the ones in + texmf.cnf. +\item Check the values from:\\ +{\small + \begin{tabular}{ll} + \texttt{kpsewhich cmr10.tfm} & \path|c:/Program Files/TeXLive/texmf/fonts/tfm/public/cm/cmr10.tfm|\\ + \texttt{kpsewhich latex.fmt}& \path|c:/Program Files/TeXLive/texmf/web2c/latex.fmt| + \end{tabular} +} +\item At this point, if everything is correct, \path|tex.exe| and + co. should work. If it is not the case, you will need to play with + the \path|-debug=n| option from \path|kpsewhich|, and check back all + the values. Try to identify and report the problem. +\end{itemize} + +\subsubsection{What to do if your setup still does not work as expected?} + +There are several questions to ask about: +\begin{enumerate} +\item Is \file{tex.exe} on my \path|PATH|? +\item Is the \path|TEXMFCNF| variable correctly set to + \path|c:/Program Files/TeXLive/texmf-var/web2c| (default value)? +\item Are there any errors in the log file generated by the + \file{TeXSetup.exe} program? Errors are flagged with the sequence + \path|Error|. +% \item If everything seems correct up there, then you need to read the +% documentation in \path|texmf/doc/fptex/fptex.pdf| or +% \path|texmf/doc/html/fptex/fptex.html| for a more detailed procedure +% (available on your hard disk or on the \CD{}). +\item One can also go to \url{http://www.tug.org/tex-live.html} and + check for any bug fix. +\item The Windows distribution on the \CD{} is no more no less than + the \fpTeX{} distribution, so you can also go to the Web pages at + \url{http://www.fptex.org}, or consider subscribing to the \fpTeX{} + mailing-list by consulting + \url{http://www.tug.org/mailman/listinfo/fptex} . +\end{enumerate} + + +The \TeXLive{} software is complex and made of more than 250 programs +and around 40000 files from various sources. It is quite difficult to +predict all possible causes for problems. Nevertheless, we will do our +best to help you in every case. + + +\subsection{Compiling the source files} + +You have the whole set of source files, comprised for +Windows in the \path|source/source.tar.bz2| archive available on the +\CD{}. To be able to compile the whole distribution for Windows, you +will need: +\begin{itemize} +\item Windows 2K/XP +\item Microsoft Visual Studio .Net +\item a set of Unix tools (\texttt{sed}, + \texttt{grep}, \texttt{gawk}, etc.) and also Perl, Flex and Bison, +\item to adjust the paths in the + \path|win32/make/common.mak| file according to your installation +\item adjust the paths in the Perl script file + \path|win32/perl/build.pl|, +\item run the compilation from the \path|win32/| directory using this + command: +\begin{verbatim} +c:\texlive\source\win32>perl ./perl/build.pl --install --log=install.log +\end{verbatim} +\end{itemize} + +There is a lot of work to do to make this process easier and cleaner. + +\subsection{Where to get more information?} + +The Win32 \TeX{} distribution on the \CD{} is also known as +\fpTeX. Only the packaging differs, but \fpTeX{} is no more no less +than the current \TeXLive\ release for Windows. + +The \fpTeX home on the Web is at:\\ +\url{http://www.fptex.org/} + +The current \fpTeX release is available from any +\href{http://www.ctan.org}{CTAN} %(see also the section +%\ref{sec:ctan}) +site in the directory~:\\ +\noindent\url{ftp://ctan.tug.org/tex-archive/systems/win32/fptex/}. + +The main ftp site for \fpTeX\ is \url{ftp://ftp.dante.de/pub/fptex/} from +where beta versions of \fpTeX\ and additionnal tools are available. +This main site is (partially) mirrored daily by the CTAN backbones in their +\path|systems/win32/fptex| directory. + +% You can reach me at my email address: +% \url{mailto:Fabrice.Popineau@supelec.fr}. + +The \TeX{} Users Group is kindly hosting a mailing-list dedicated to +\fpTeX. This is a very low volume one. It is used for announcements, +bugs reports or as well to discuss about improvements or various users +problems. To subscribe, read the page at +\url{http://www.tug.org/mailman/listinfo/fptex}. The mailing list +address is \EmailURL{fptex@tug.org}. + +\section{Building on a new Unix platform} +If you have a platform for which we have not provided binary sources, +you will need to compile \TeX{} and friends from scratch. This is not +as hard as it sounds. What you need is all in the directory +\texttt{source} on the \CD{}. + +You should first install the support tree from the \TeXLive{} \CD{} (do +a basic install, with no system binaries chosen). + +\subsection{Prerequisites} +You will need about 100 megabytes of disk space to compile all of +\TeX{} and its support programs. You'll also need an \acro{ANSI} C +compiler, a \cmdname{make} utility, a lexical scanner, and a parser +generator. The \acro{GNU} utilities (\cmdname{gcc}, \acro{GNU} +\cmdname{make}, \cmdname{m4}, \cmdname{flex}, \cmdname{bison}) are the +most widely tested on different platforms. \cmdname{gcc}-2.7.* +\cmdname{flex}-2.4.7 and \acro{GNU}\,\cmdname{make}-3.72.1 or newer +should work well. You may be able to work with other C compilers and +\cmdname{make} programs, but you will need a good understanding of +building Unix programs to sort out problems. The command +\texttt{uname} must return a sensible value. + + + +\subsection{Configuration} +First, unpack the source from the compressed +\texttt{tar} file in the directory \dirname{source} to your disk and change +directory to where you placed it. Decide where the `root' of the +installation will be, e.g.\ \path|/usr/local| or +\path|/usr/local/TeX|. Obviously you should use the same location +that you specified when you installed the support tree. + +Now, start the build process by running \textsf{configure} with +a command-line like +\begin{alltt} +>> \Ucom{./configure -prefix=/usr/local/TeX} +\end{alltt} + +The `prefix' directory is the one where you installed the support +tree; the directory layout that will be used is as follows (where +\$TEXDIR stands for the directory you chose): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/man} & Unix manual pages\\ + \dirname{$TEXDIR/share/texmf} & main tree with fonts,\\ + & \qquad macros, etc\\ + \dirname{$TEXDIR/info} & \acro{GNU} style info manuals\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaries\\ +\end{tabular} +%$ + +You can omit the use of `\dirname{share/}' part for the +\dirname{texmf} directory if you want, as +\dirname{$TEXDIR/share/texmf} and \dirname{$TEXDIR/texmf} are +auto-detected by configure. If you choose something different, you +have to specify that directory with the \verb|--datadir| option of +\textsf{configure}. + + +If you want to leave out the \dirname{$PLATFORM} directory level +(i.e.\ put the binaries directly into \dirname{$TEXDIR/bin}), specify +the \verb|--disable-multiplatform| option for \textsf{configure}. + + +Have a look at the output of \texttt{./configure --help} for more +options you can use (such as omitting optional packages such as \OMEGA\ +or \eTeX). + +\subsection{Running \textsf{make}} +Make sure the shell variable \texttt{noclobber} is not set, and +then type +\begin{alltt} +>> \Ucom{make world} +\end{alltt} +and relax\ldots. + +It could also be useful to log all the output, e.g.\ by +typing +\begin{alltt} +>> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} +Before you think that everything is ok, please check the log file for +errors (\acro{GNU} \cmdname{make} always uses the string +``\texttt{Error:}'' whenever a command returns an error code) and +check if all binaries are built: +\begin{alltt} +>> \Ucom{cd /usr/local/TeX/bin/i686-pc-linux-gnu} +>> \Ucom{ls | wc} +\end{alltt} +The result should be 209. + +If you need special privileges for \texttt{make install}, you can +run two \cmdname{make} jobs in separate runs: +\begin{alltt} +>> \Ucom{make all} +>> \Ucom{su} +>> \Ucom{make install strip} +\end{alltt} + +\subsection{Final configuration steps} +Set up your \envname{PATH} to include the directory containing the +just-installed binaries (e.g.\ +\dirname{/usr/local/TeX/bin/mips-sgi-irix6.5}); similarly, +\envname{MANPATH} and \envname{INFOPATH} to include the relevant newly +installed subdirectories, i.e.\ \dirname{$TEXDIR/man} and +\dirname{$TEXDIR/info}. + +The program \textsf{texconfig} allows you to set the defaults for +hyphenation, paper size, print command, \MF{} mode, etc. You can +run this command interactively and see what options it offers, or type +\begin{alltt} +>> \Ucom{texconfig help} +\end{alltt} + +For example, if you are not using A4 format paper, you can make +`lettersize' the default using: +\begin{alltt} +>> \Ucom{texconfig dvips paper letter} +>> \Ucom{texconfig xdvi paper us} +\end{alltt} + +\section{A user's guide to the \protect\Webc{} system} + +%-------------------------------------------------------- + +\Webc{} contains a set of \TeX-related programs, i.e., \TeX{} itself, +\MF{}, \MP, \BibTeX{}, etc. The original implementation was by Tomas +Rokicki who, in 1987, developed a first \TeX{}-to-C system adapting +change files under Unix, which were primarily the work of Howard +Trickey and Pavel Curtis. Tim Morgan became the maintainer of the +system, and during this period the name changed to Web-to-C\@. In +1990, Karl Berry took over the work, assisted by dozens of additional +contributors, and in 1997 he handed the baton to Olaf Weber. The +latest result is \Webc{} Version 7.3, which was released in March +1999. Our version has some updates for the forthcoming new release, +and identifies itself as 7.3.7 + +The \Webc{} 7.3 system runs on Unix, Windows 3.1, 9x/ME/\acro{NT}/\acro{2K}/\acro{XP}, +\acro{DOS}, and other operating systems. It uses Knuth's +original sources for \TeX{} and other basic programs written in \web{} +and translates them into C source code. Moreover, the system offers a +large set of macros and functions developed to augment the original +\TeX{} software. The core \TeX{} family components are: + +\begin{description} +\renewcommand{\makelabel}[1]{\descriptionlabel{\mdseries\cmdname{#1}}} +\item[bibtex] Maintaining bibliographies. +\item[dmp] \cmdname{troff} to MPX (\MP{} pictures). +\item[dvicopy] Produces modified copy of \dvi{} file. +\item[dvitomp] \dvi{} to MPX (MetaPost pictures). +\item[dvitype] \dvi{} to human-readable text. +\item[gftodvi] Generic font proofsheets. +\item[gftopk] Generic to packed fonts. +\item[gftype] GF to human-readable text. +\item[makempx] \MP{} label typesetting. +\item[mf] Creating typeface families. +\item[mft] Prettyprinting \MF{} source. +\item[mpost] Creating technical diagrams. +\item[mpto] MetaPost label extraction. +\item[newer] Compare modification times. +\item[patgen] Creating hyphenation patterns. +\item[pktogf] Packed to generic fonts. +\item[pktype] PK to human-readable text. +\item[pltotf] Property list to TFM. +\item[pooltype] Display \web{} pool files. +\item[tangle] \web{} to Pascal. +\item[tex] Typesetting. +\item[tftopl] TFM to property list. +\item[vftovp] Virtual font to virtual property list +\item[vptovf] Virtual property list to virtual font. +\item[weave] \web{} to \TeX. +\end{description} +\noindent The precise functions and syntax of these programs are described in +the documentation of the individual packages or of \Webc{} itself. +However, knowing a few principles governing the whole family of +programs will help you to benefit optimally from your \Webc{} +installation. + +All programs honor the standard \acro{GNU} options: +\begin{description} +\item[\texttt{-{}-help\ \ \ }] print basic usage summary. +\item[\texttt{-{}-verbose}] print detailed progress report. +\item[\texttt{-{}-version}] print version information, then exit. +\end{description} + +For locating files the \Webc{} programs use the path searching library +\KPS{}. This library uses a combination of environment variables and a +few configuration files to optimize searching the \TeX{} directory +tree. \Webc{} can handle more than one directory tree +simultaneously, which is useful if one wants to maintain \TeX's +standard distribution and local extensions in two distinct trees. To +speed up file searches the root of each tree has a file \file{ls-R}, +containing an entry showing the name and relative pathname for all +files ``hanging'' under that root. + +\subsection{\protect\KPS\ path searching} + +Let us first describe the generic path searching mechanism of the \KPS{} +library. + +We call a \emph{search path} a colon- or semicolon\hyph sepa\-rated list +of \emph{path elements}, which are basically directory names. A +search path can come from (a combination of) many sources. To look up +a file \samp{my-file} along a path \samp{.:/dir}, \KPS{} checks each +element of the path in turn: first \file{./my-file}, then +\file{/dir/my-file}, returning the first match (or possibly all +matches). + +In order to adapt optimally to all operating systems' conventions, on +non-Unix systems \KPS{} can use filename separators different from +``colon'' (\samp{:}) and ``slash'' (\samp{/}). + +To check a particular path element \var{p}, \KPS{} first checks if a +prebuilt database (see ``Filename data\-base'' on +page~\pageref{Filename-database}) applies to \var{p}, i.e., if the database +is in a directory that is a prefix of \var{p}. If so, the path +specification is matched against the contents of the database. + +If the database does not exist, or does not apply to this path +element, or contains no matches, the filesystem is searched (if this +was not forbidden by a specification starting with \samp{!!}\ and if +the file being searched for must exist). \KPS{} constructs the list +of directories that correspond to this path element, and then checks +in each for the file being sought. + +The ``file must exist'' condition comes into play with \samp{.vf} files and +input files read by \TeX's \cs{openin} command. Such files may not +exist (e.g., \file{cmr10.vf}), and so it would be wrong to search the +disk for them. Therefore, if you fail to update \file{ls-R} when you +install a new \samp{.vf} file, it will never be found. +Each path element is checked in turn: first the database, then the +disk. If a match is found, the search stops and the result is +returned. + +Although the simplest and most common path element is a directory +name, \KPS{} supports additional features in search paths: layered +default values, environment variable names, config file values, users' +home directories, and recursive subdirectory searching. Thus, we say +that \KPS{} \emph{expands} a path element, meaning it transforms all +the specifications into basic directory name or names. This is +described in the following sections in the same order as it takes +place. + +Note that if the filename being searched for is absolute or explicitly +relative, i.e., starts with \samp{/} or \samp{./} or \samp{../}, +\KPS{} simply checks if that file exists. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{../examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Path sources} +\label{Path-sources} + +A search path can come from many sources. In the order in which +\KPS{} uses them: + +\begin{enumerate} +\item + A user-set environment variable, for instance, \envname{TEXINPUTS}\@. + Environment variables with a period and a program name appended + override; e.g., if \samp{latex} is the name of the program being run, + then \envname{TEXINPUTS.latex} will override \envname{TEXINPUTS}. +\item + A program-specific configuration file, for exam\-ple, a line + ``\texttt{S /a:/b}'' in \cmdname{dvips}'s \file{config.ps}. +\item A \KPS{} configuration file \file{texmf.cnf}, containing a line like + \samp{TEXINPUTS=/c:/d} (see below). +\item The compile-time default. +\end{enumerate} +\noindent You can see each of these values for a given +search path by using the debugging options (see ``Debugging actions'' +on page~\pageref{Debugging}). + +\subsubsection{Config files} + +\tolerance=3500 +\KPS{} reads \emph{runtime configuration files} named \file{texmf.cnf} +for search path and other definitions. The search path used to look +for these files is named \envname{TEXMFCNF} (by default such a file lives +in the \file{texmf/web2c} subdirectory). \emph{All} +\file{texmf.cnf} files in the search path will be read and definitions +in earlier files override those in later files. Thus, with a search +path of \verb|.:$TEXMF|, values from \file{./texmf.cnf} override those +from \verb|$TEXMF/texmf.cnf|. + +\tolerance=1500 + +While reading the description of the format of the file +\file{texmf.cnf} below, please also refer to +appendix~\ref{app:texmf.cnf}, starting on +page~\pageref{app:texmf.cnf}, which lists the \file{texmf.cnf} file on +the \CD. + +\begin{itemize} +\item + Comments start with ``\texttt{\%}'' and continue to the end of the line. +\item + Blank lines are ignored. +\item + A \bs{} at the end of a line acts as a continuation character, + i.e., the next line is appended. Whitespace at the beginning of + continuation lines is not ignored. +\item + Each remaining line has the form: +\begin{alltt} + \emph{variable}[.\emph{progname}] [=] \emph{value} +\end{alltt}% + where the \samp{=} and surrounding whitespace are optional. +\item + The ``\texttt{\var{variable}}'' name may contain any character other + than whitespace, \samp{=}, or \samp{.}, but sticking to + \samp{A-Za-z\_} is safest. +\item + If ``\texttt{.\var{progname}}'' is present, the definition only + applies if the program that is running is named + \texttt{\var{progname}} or \texttt{\var{progname}.exe}. This allows + different flavors of \TeX{} to have different search paths, for + example. +\item ``\texttt{\var{value}}'' may contain any characters except + ``\texttt{\%}'' and \samp{@}. The + ``\texttt{\$\var{var}.\var{prog}}'' feature is not available on the + right-hand side; instead, you must use an additional variable. A + \samp{;}\ in ``\texttt{\var{value}}'' is translated to \samp{:}\ if + running under Unix; this is useful to be able to have a single + \file{texmf.cnf} for Unix, MSDOS and Windows systems. +\item + All definitions are read before anything is expanded, so + variables can be referenced before they are defined. +\end{itemize} +A configuration file fragment illustrating most of these points is +\ifSingleColumn +shown below: + +\verbatiminput{../examples/ex5.tex} +\else +shown in Figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Path expansion} +\label{Path-expansion} + + +\KPS{} recognizes certain special characters and constructions in +search paths, similar to those available in Unix shells. As a +general example, the complex path, +\verb+~$USER/{foo,bar}//baz+, expands to all subdirectories under +directories \file{foo} and \file{bar} in \texttt{\$USER}'s home +directory that contain a directory or file \file{baz}. These +expansions are explained in the sections below. +%$ +\subsubsection{Default expansion} +\label{Default-expansion} + +\tolerance=2500 +If the highest-priority search path (see ``Path sources'' on +page~\pageref{Path-sources}) contains an \emph{extra colon} (i.e., +leading, trailing, or doubled), \KPS{} inserts at that point the +next-highest-prio\-rity search path that is defined. If that inserted +path has an extra colon, the same happens with the next highest. For +example, given an environment variable setting + +\tolerance=1500 + +\begin{alltt} +>> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +and a \code{TEXINPUTS} value from \file{texmf.cnf} of + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +then the final value used for searching will be: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Since it would be useless to insert the default value in more than one +place, \KPS{} changes only one extra \samp{:}\ and leaves any others in +place: it checks first for a leading \samp{:}, then a trailing +\samp{:}, then a doubled \samp{:}. + +\subsubsection{Brace expansion} + +A useful feature is brace expansion, which means that, for instance, +\verb+v{a,b}w+ expands to \verb+vaw:vbw+. Nesting is allowed. +This can be used to implement multiple \TeX{} hierarchies, by +assigning a brace list to \code{\$TEXMF}. +For example, in \file{texmf.cnf}, you find +the following definition: +\begin{verbatim} + TEXMF = {$HOMETEXMF,$TEXMFLOCAL,!!$VARTEXMF,!!$TEXMFMAIN} +\end{verbatim} +Using this you can then write something like +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +which means that, after looking in the current directory, the +\code{\$HOMETEXMF/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$VARTEXMF/tex} +and \code{\$TEXMFMAIN/tex} trees \emph{only}) will be searched (the +last two use using \file{ls-R} data base files). It is a convenient +way for running two parallel \TeX{} structures, one ``frozen'' (on a +\CD, for instance) and the other being continuously updated with new +versions as they become available. By using the \code{\$TEXMF} +variable in all definitions, one is sure to always search the +up-to-date tree first. + +\subsubsection{Subdirectory expansion} +\label{Subdirectory-expansion} + +Two or more consecutive slashes in a path element following a directory +\var{d} is replaced by all subdirectories of \var{d}: first those +subdirectories directly under \var{d}, then the subsubdirectories under +those, and so on. At each level, the order in which the directories are +searched is \emph{unspecified}. + +If you specify any filename components after the \samp{//}, only +subdirectories with matching components are included. For example, +\samp{/a//b} expands into directories \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, and so on, but not \file{/a/b/c} or \file{/a/1}. + +Multiple \samp{//} constructs in a path are possible, but +\samp{//} at the beginning of a path is ignored. + +\subsubsection{List of special characters and their meaning: a summary} + +The following list summarises the meaning of special characters +in \KPS{} configuration files. + +\newcommand{\CODE}[1]{\makebox[2.2em][l]{\code{#1}}} +\begin{description} +\item[\CODE{:}] Separator in path specification; at the beginning or + the end of a path it substitutes the default path expansion. +\item[\CODE{;}] Separator on non-Unix systems (acts like \code{:}). +\item[\CODE{\$}] Variable expansion. +\item[\CODE{\string~}] Represents the user's home directory. +\item[\CODE{\char`\{\dots\char`\}}] Brace expansion, e.g., + \verb+a{1,2}b+ will become \verb+a1b:a2b+. +\item[\CODE{//}] Subdirectory expansion (can occur anywhere in + a path, except at its beginning). +\item[\CODE{\%}] Start of comment. +\item[\CODE{\bs}] Continuation character (allows multi-line entries). +\item[\CODE{!!}] Search \emph{only} database to locate file, \emph{do + not} search the disk. +\end{description} + + +\subsection{Filename databases} +\label{Filename-database} + + +\KPS{} goes to some lengths to minimize disk accesses for searches. +Nevertheless, at installations with enough directories, searching each +possible directory for a given file can take an excessively long time +(this is especially true if many hundreds of font directories have to +be traversed.) Therefore, \KPS{} can use an externally-built +``database'' file named \file{ls-R} that maps files to directories, +thus avoiding the need to exhaustively search the disk. + +A second database file \file{aliases} allows you to give additional +names to the files listed in \file{ls-R}. This can be helpful to +adapt to DOS-like ``8.3'' filename conventions in source files. + +\subsubsection{The filename database} +\label{ls-R} + +As explained above, the name of the main filename database must be +\file{ls-R}. You can put one at the root of each \TeX{} hierarchy in +your installation that you wish to be searched (\code{\$TEXMF} by +default); most sites have only one hierarchy. \KPS{} looks for +\file{ls-R} files along the \code{TEXMFDBS} path. + +The recommended way to create and maintain \samp{ls-R} is to run the +\code{mktexlsr} script included with the distribution. It is invoked +by the various \samp{mktex}\dots\ scripts. In principle, this script +just runs the command +\begin{alltt} +cd \var{/your/texmf/root} && ls -LAR ./ >ls-R +\end{alltt} +presuming your system's \code{ls} produces the right output format +(\acro{GNU}'s \code{ls} is all right). To ensure that the database is always +up to date, it is easiest to rebuild it regularly via \code{cron}, so +that for changes in the installed files\Dash perhaps after installing or +updating a \LaTeX{} package\Dash the file \file{ls-R} is automatically +updated. + +If a file is not found in the database, by default \KPS{} goes ahead +and searches the disk. If a particular path element begins with +\samp{!!}, however, \emph{only} the database will be searched for that +element, never the disk. + + +\subsubsection{kpsewhich: Standalone path searching} +\label{Invoking-kpsewhich} + +The \texttt{kpsewhich} program exercises path searching independent of any +particular application. This can be useful as a sort of \code{find} +program to locate files in \TeX{} hierarchies (this is used heavily in +the distributed \samp{mktex}\dots\ scripts). + +\begin{alltt} +>> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +The options specified in ``\texttt{\var{option}}'' can start with either \samp{-} +or \samp{-{}-}, and any unambiguous abbreviation is accepted. + +\KPS{} looks up each non-option argument on the command line as a +filename, and returns the first file found. There is no option to +return all the files with a particular name (you can run the Unix +\samp{find} utility for that). + +The more important options are described next. + +\begin{description} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Set the resolution to ``\texttt{\var{num}}''; this only affects \samp{gf} + and \samp{pk} lookups. \samp{-D} is a synonym, for compatibility + with \cmdname{dvips}. Default is 600. +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Set the format for lookup to ``\texttt{\var{name}}''. By default, the + format is guessed from the filename. For formats which do not have + an associated unambiguous suffix, such as \MP{} support files and + \cmdname{dvips} configuration files, you have to specify the name as + found in the first column of Table~\ref{TABKpathsea}, which lists + currently recognized names, a description, + associated environment variables%, + \footnote{You can find definitions for these environment variables + in the file \file{texmf.cnf} (page~\pageref{app:texmf.cnf})}, and + possible file extensions. +\end{description} + + +\def\KpathKey#1#2#3#4#5{% name, number, description, variables, + % suffixes +\SetRowColor#1 & #3 & #4 & #5\\} +\def\HEAD#1{\multicolumn{1}{l}{\emph{#1}}} +% +\begin{small} +% a footnoterule immediately under a bottom-of-page rule looks dead +% silly, so we suppress it +\renewcommand\footnoterule{\relax} +% +\begin{longtable}{@{}% + >{\ttfamily}P{.16\textwidth}% Col.1 + P{.3\textwidth}% Col 2 + >{\ttfamily\footnotesize}P{.29\textwidth}% Col 3 + >{\ttfamily}P{.14\textwidth}% Col 4 +@{}} +\caption{Kpathsea file types}\label{TABKpathsea}\\ +\emph{Name} & \HEAD{Description} & \HEAD{Variables} +& \HEAD{Suffixes}\\ +\hline +\endfirsthead +\multicolumn{3}{l}{Kpathsea file types \emph{continued}}\\ +\emph{Name} & \HEAD{Description} & \HEAD{Variables} +& \HEAD{Suffixes}\\ +\hline +\noalign{\vspace{2pt}} +\endhead +\mbox{}\\ +\hline +\endfoot +\KpathKey + {afm} + {4} + {Adobe font metrics} + {AFMFONTS} + {.afm} +\KpathKey + {base} + {5} + {Metafont memory dump} + {MFBASES, TEXMFINI} + {.base} +\KpathKey + {bib} + {6} + {\BibTeX{} bibliography source} + {BIBINPUTS, TEXBIB} + {.bib} +\KpathKey + {} + {2} + {bitmap fonts} + {GLYPHFONTS, TEXFONTS} + {} +\KpathKey + {bst} + {7} + {\BibTeX{} style files} + {BSTINPUTS} + {.bst} +\KpathKey + {cnf} + {8} + {Runtime configuration files} + {TEXMFCNF} + {.cnf} +\KpathKey + {dvips config} + {34} + {\textsf{dvips} configuration files, e.g., \file{config.ps} + and \file{psfonts.map}} + {TEXCONFIG} + {.map} +\KpathKey + {fmt} + {10} + {\TeX{} memory dump} + {TEXFORMATS, TEXMFINI} + {.fmt, .efmt, .efm} +\KpathKey + {gf} + {0} + {generic font bitmap} + {GFFONTS} + {.gf} +\KpathKey + {graphic/figure} + {25} + {Encapsulated PostScript figures} + {TEXPICTS, TEXINPUTS} + {.eps, .epsi} +\KpathKey + {ist} + {35} + {\textsf{makeindex} style files} + {TEXINDEXSTYLE, INDEXSTYLE} + {.ist} +\KpathKey + {ls-R} + {9} + {Filename databases} + {TEXMFDBS} + {} +\KpathKey + {map} + {11} + {Fontmaps} + {TEXFONTMAPS} + {.map} +\KpathKey + {mem} + {12} + {MetaPost memory dump} + {MPMEMS, TEXMFINI} + {.mem} +\KpathKey + {mf} + {13} + {Metafont source} + {MFINPUTS} + {.mf} +\KpathKey + {mfpool} + {14} + {Metafont program strings} + {MFPOOL, TEXMFINI} + {.pool} +\KpathKey + {mft} + {15} + {MFT style file} + {MFTINPUTS} + {.mft} +\KpathKey + {} + {41} + {miscellaneous fonts} + {MISCFONTS} + {} +\KpathKey + {mp} + {16} + {MetaPost source} + {MPINPUTS} + {.mp} +\KpathKey + {mppool} + {17} + {MetaPost program strings} + {MPPOOL, TEXMFINI} + {.pool} +\KpathKey + {MetaPost support} + {18} + {MetaPost support files, used by DMP} + {MPSUPPORT} + {} +\KpathKey + {ocp} + {19} + {\OMEGA{} compiled process files} + {OCPINPUTS} + {.ocp} +\KpathKey + {ofm} + {20} + {\OMEGA{} font metrics} + {OFMFONTS, TEXFONTS} + {.ofm, .tfm} +\KpathKey + {opl} + {21} + {\OMEGA{} property lists} + {OPLFONTS, TEXFONTS} + {.opl} +\KpathKey + {otp} + {22} + {\OMEGA{} translation process files} + {OTPINPUTS} + {.otp} +\KpathKey + {ovf} + {23} + {\OMEGA{} virtual fonts} + {OVFFONTS, TEXFONTS} + {.ovf} +\KpathKey + {ovp} + {24} + {\OMEGA{} virtual property lists} + {OVPFONTS, TEXFONTS} + {.ovp} +\KpathKey + {pk} + {1} + {packed bitmap fonts} + {\emph{program}FONTS \textrm{(\texttt{\emph{program}} being + \textsmaller{\cmdname{XDVI}}, + etc.)}, PKFONTS, TEXPKS, GLYPHFONTS, TEXFONTS} + {.pk} +\KpathKey + {PostScript header} + {30} + {downloadable PostScript} + {TEXPSHEADERS, PSHEADERS} + {.pro, .enc} +\KpathKey + {tex} + {26} + {\TeX{} source} + {TEXINPUTS} + {.tex, .cls, .sty, .clo, .def} +\KpathKey + {TeX system documentation} + {27} + {Documentation files for the \TeX{} system} + {TEXDOCS} + {} +\KpathKey + {TeX system sources} + {29} + {Source files for the \TeX{} system} + {TEXSOURCES} + {} +\KpathKey + {texpool} + {28} + {\TeX{} program strings} + {TEXPOOL, TEXMFINI} + {.pool} +\KpathKey + {tfm} + {3} + {\TeX{} font metrics} + {TFMFONTS, TEXFONTS} + {.tfm} +\KpathKey + {Troff fonts} + {31} + {Troff fonts, used by DMP} + {TRFONTS} + {} +\KpathKey + {truetype fonts} + {36} + {TrueType outline fonts} + {TTFONTS} + {.ttf, .ttc} +\KpathKey + {type1 fonts} + {32} + {Type 1 PostScript outline fonts} + {T1FONTS, T1INPUTS, TEXPSHEADERS, DVIPSHEADERS} + {.pfa, .pfb} +\KpathKey + {type42 fonts} + {37} + {Type 42 PostScript outline fonts} + {T42FONTS} + {} +\KpathKey + {vf} + {33} + {virtual fonts} + {VFFONTS, TEXFONTS} + {.vf} +\KpathKey + {web2c files} + {38} + {\Webc{} support files} + {WEB2C} + {} +\KpathKey + {other text files} + {39} + {text files used by `\textsf{foo}'} + {FOOINPUTS} + {} +\KpathKey + {other binary files} + {40} + {binary files used by `\textsf{foo}'} + {FOOINPUTS} + {} +\end{longtable} +\end{small} + + +\begin{multicols}{2} + +\begin{description} +\item[] The last two entries in Table~\ref{TABKpathsea} are special + cases, where the paths and environment variables depend on the name + of the program: the variable name is constructed by converting the + program name to upper case, and then appending \texttt{INPUTS}. + + The environment variables are set by default in the configuration + file \file{texmf.cnf}. It is only when you want to override one or + more of the values specified in that file that you might want to set + them explicitly in your execution environment. + + Note that the \samp{-{}-format} and \samp{-{}-path} options are mutually + exclusive. +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Set the mode name to ``\texttt{\var{string}}''; this only affects \samp{gf} + and \samp{pk} lookups. No default: any mode will be found. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Do everything possible to find the files, notably including + searching the disk. By default, only the \file{ls-R} database is + checked, in the interest of efficiency. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Search along the path ``\texttt{\var{string}}'' (colon-% + separated as usual), + instead of guessing the search path from the filename. \samp{//} + and all the usual expansions are supported. + The options \samp{-{}-path} and \samp{-{}-format} are mutually + exclusive. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Set the program name to ``\texttt{\var{name}}''. + This can affect the search paths via the ``\texttt{.\var{prognam}}'' + feature in configuration files. + The default is \samp{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + shows the path used for file lookups of file type ``\texttt{\var{name}}''. + Either a filename extension (\samp{.pk}, \samp{.vf}, etc.) or a + name can be used, just as with \samp{-{}-format} option. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + sets the debugging options to ``\texttt{\var{num}}''. +\end{description} + + +\subsubsection{Examples of use} +\label{SExamplesofuse} + +Let us now have a look at \KPS{} in action. + +\begin{alltt} +>> \Ucom{kpsewhich article.cls} +/usr/local/texmf/tex/latex/base/article.cls +\end{alltt} +We are looking for the file \file{article.cls}. Since the \samp{.cls} +suffix is unambiguous we do not need to specify that we want to look for a +file of type ``tex'' (\TeX{} source file directories). We find it in +the subdirectory \file{tex/latex/base} below the \samp{TEXMF} root +directory. Similarly, all of the following are found without problems +thanks to their unambiguous suffix. +\begin{alltt} +>> \Ucom{kpsewhich array.sty} + /usr/local/texmf/tex/latex/tools/array.sty +>> \Ucom{kpsewhich latin1.def} + /usr/local/texmf/tex/latex/base/latin1.def +>> \Ucom{kpsewhich size10.clo} + /usr/local/texmf/tex/latex/base/size10.clo +>> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf/tex/latex/base/small2e.tex +>> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +The latter is a \BibTeX{} bibliography database for \textsl{TUGBoat} articles. + +\begin{alltt} +>> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Font bitmap glyph files of type \file{.pk} are used by display +programs like \cmdname{dvips} and \cmdname{xdvi}. Nothing is returned in +this case since there are no pre-generated Computer Modern \samp{.pk} +files on our system (since we use the Type1 versions on the \CD{}). +\begin{alltt} +>> \Ucom{kpsewhich ecrm1000.pk} +\ifSingleColumn /usr/local/texmf/fonts/pk/ljfour/jknappen/ec/ecrm1000.600pk +\else +/usr/local/texmf/fonts/pk/ljfour/jknappen/ +... ec/ecrm1000.600pk +\fi\end{alltt} +For the extended Computer Modern files we had to generate \samp{.pk} +files, and since the default \MF{} mode on our installation is +\texttt{ljfour} with a base resolution of 600 dpi (dots per inch), +this instantiation is returned. +\begin{alltt} +>> \Ucom{kpsewhich -dpi=300 ecrm1000.pk} +\end{alltt} +In this case, when specifying that we are interested in a resolution +of 300dpi (\texttt{-dpi=300}) we see that no such font is available on +the system. In fact, a program like \cmdname{dvips} or \cmdname{xdvi} would +go off and actually build the \texttt{.pk} files at the required +resolution using the script \cmdname{mktexpk}. + +Next we turn our attention to \cmdname{dvips}'s header and configuration +files. We first look at one of the commonly used files, the general +prolog \file{tex.pro} for \TeX{} support, before turning our attention +to the generic configuration file (\file{config.ps}) and the +PostScript font map \file{psfonts.map}. As the \samp{.ps} suffix is +ambiguous we have to specify explicitly which type we are considering +(``\texttt{dvips config}'') for the file \texttt{config.ps}. +\begin{alltt} +>> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +>> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/config/config.ps +>> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/dvips/base/psfonts.map +\end{alltt} + +We now take a closer look at the URW Times PostScript support files. +The name for these in Berry's font naming scheme is ``\texttt{utm}''. +The first file we look at is the configuration file, which contains +the name of the map file: +\begin{alltt} +>> \Ucom{kpsewhich --format="dvips config" config.utm} +/usr/local/texmf/dvips/psnfss/config.utm +\end{alltt} +The contents of that file is +\begin{alltt} + p +utm.map +\end{alltt} +which points to the file \file{utm.map}, which we want to +locate next. +\begin{alltt} +>> \Ucom{kpsewhich --format="dvips config" utm.map} + /usr/local/texmf/dvips/psnfss/utm.map +\end{alltt} +This map file defines the file names of the Type1 PostScript fonts in +the URW collection. Its contents look like (we only show part of the +lines): +\begin{alltt} + utmb8r NimbusRomNo9L-Medi ... > \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf/fonts/type1/urw/utm/utmr8a.pfb +\else /usr/local/texmf/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +It should be evident from these few examples how you can easily locate +the whereabouts of a given file. This is especially important if you +suspect that the wrong version of a file is picked up somehow, since +\cmdname{kpsewhich} will show you the first file encountered. + +\subsubsection{Debugging actions} +\label{Debugging} + +Sometimes it is necessary to investigate how a program resolves +file references. To make this feasible in a convenient way \KPS{} +offers various debug levels: +\begin{itemize} +\item[\texttt{\ 1}] \texttt{stat} calls (file tests). When running + with an up-to-date \file{ls-R} database this should almost give no + output. +\item[\texttt{\ 2}] References to hash tables (like \file{ls-R} + database, map files, configuration files). +\item[\texttt{\ 4}] File open and close operations. +\item[\texttt{\ 8}] General path information for file types + searched by \KPS. This is useful to find out where a particular + path for the file was defined. +\item[\texttt{16}] Directory list for each path element (only relevant + for searches on disk). +\item[\texttt{32}] File searches. +\end{itemize} +A value of \texttt{-1} will set all the above options; in practice you +will probably always use these levels if you need any debugging. + +Similarly, with the \cmdname{dvips} program, by setting a +combination of debug switches, one can follow in detail where files are being picked +up from. Alternatively, when a file is not found, the debug trace +shows in which directories the program looks for the given file, so +that one can get an indication what the problem~is. + +Generally speaking, as most programs call the \KPS{} library +internally, one can select a debug option by using the +\envname{KPATHSEA\_DEBUG} environment variable, and setting it to (a +combination of) values as described in the above list. + +(Note for Windows users: it is not easy to redirect +all messages to a file in this system. For diagnostic purposes +you can temporarily \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Let us consider, as an example, a small \LaTeX{} source file, +\file{hello-world.tex}, which contains the following input. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +This little file only uses the font \file{cmr10}, so let us look +how \cmdname{dvips} prepares the PostScript file (we want to use the Type1 +version of the Computer Modern fonts, hence the option \texttt{-Pcms}). +\begin{alltt} +>> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In this case we have combined \cmdname{dvips}'s debug class 4 (font +paths) with \KPS's path element expansion (see \cmdname{dvips} Reference +Manual, \OnCD{texmf/doc/html/dvips/dvips_toc.html}). +%\ifSingleColumn +%We get something +%like the following (we have rearranged the output for easier display): +%\begin{alltt}\small +%\input{../examples/ex6.tex} +%\end{alltt} +%\else +The output (slightly rearranged) appears in +Figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{../examples/ex6a.tex} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\input{../examples/ex6b.tex} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\input{../examples/ex6c.tex} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} +\cmdname{dvips} starts by locating its working files. First, +\file{texmf.cnf} is found, which gives the definitions of the search +paths for the other files, then the file database \file{ls-R} (to +optimize file searching) and the file \file{aliases}, which makes it +possible to declare several names (e.g., a short \acro{DOS}-like ``8.3'' and +a more natural longer version) for the same file. Then \cmdname{dvips} +goes on to find the generic configuration file \file{config.ps} +before looking for the customization file \file{.dvipsrc} (which, in +this case is \emph{not found}). Finally, \cmdname{dvips} locates the +config file for the Computer Modern PostScript fonts \file{config.cms} +(this was initiated with the \texttt{-Pcms} option on the \cmdname{dvips} +command). This file contains the list of the ``map'' files which +define the relation between the \TeX{}, PostScript and file system +names of the fonts. +\begin{alltt} +>> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} thus goes on to find all these files, plus the generic +map file \file{psfonts.map}, which is always loaded (it contains +declarations for commonly used PostScript fonts; see the last part of +Section \ref{SExamplesofuse} for more details about PostScript map +file handling). + +At this point \cmdname{dvips} identifies itself to the user\ldots +\begin{alltt}\ifSingleColumn +This is dvips 5.78 Copyright 1998 Radical Eye Software (www.radicaleye.com) +\else\small{}This is dvips 5.78 Copyright 1998 Radical Eye... +\fi\end{alltt}% decided to accept slight overrun in tub case +\ifSingleColumn +\ldots and then goes on to look for the prolog file \file{texc.pro}, +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +then goes on to look for the prolog file \file{texc.pro} (see +Figure~\ref{fig:dvipsdbgb}). + +\fi +After having found the file in question, \cmdname{dvips} outputs +date and time, and informs us that it will generate the +file \file{hello-world.ps}, then that it needs the font file +\file{cmr10}, and that the latter is declared as ``resident'': +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Now the search is on for the file \file{cmr10.tfm}, which is found, +then a few more prolog files (not shown) are referenced, and finally +the Type1 instance \file{cmr10.pfb} of the font is located and +included in the output file (see last line). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Runtime options} + +Another of the nice features of \Webc{} is its possibility to +control a number of memory parameters (in particular, array sizes) via +the runtime file \file{texmf.cnf} read by \KPS{}. The listing of +\file{texmf.cnf} is shown in Appendix~\ref{app:texmf.cnf}, starting on +page~\pageref{app:texmf.cnf}; the settings of all parameters can be +found in Part 3 of that file. The more important control variables are: +\begin{description} +\item[\texttt{main\_memory}] + Total words of memory available, for + \TeX{}, \MF{} and \MP. You must make a new format file for each + different setting. For instance, you could generate a ``huge'' + version of \TeX{}, and call the format file \texttt{hugetex.fmt}. + Using the standard way of specifying the program name used by \KPS{}, + the particular value of the \texttt{main\_memory} variable will then + be read from \file{texmf.cnf} (compare the generic value + and the ``huge'' one instantiated by \texttt{hugetex}, + etc.). +\item[\texttt{extra\_mem\_bot}] + Extra space for ``large'' \TeX{} data structures: + boxes, glue, breakpoints, etc. Especially useful if you use + \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Number of words for font information available for \TeX. This + is more or less the total size of all TFM files read. +\item[\texttt{hash\_extra}] + Additional space for the hash table of control sequence names. + Approximately 10,000 control sequences can be stored in the main + hash table; if you have a large book with numerous cross-references, + this might not be enough. You can see that both the + \cmdname{hugetex} and \cmdname{pdflatex} program invocations ask for + an extra 15,000 control sequences (the default value of + \texttt{hash\_extra} is zero). +\end{description} +Of course, this facility is no substitute for truly dynamic arrays and +memory allocation, but since this is extremely difficult to implement +in present \TeX, these runtime parameters provide a practical compromise +allowing some flexibility. + +%-------------------------------------------------------- + + +\section{Acknowledgements}\label{sec:acknowl} +This edition of TeXLive is edited by Sebastian Rahtz, with the +major contributors being Fabrice Popineau, who has worked away +unceasingly at the Win32 part of the package (especially the setup!) +and contributed in many different ways with ideas, advice and code; +and Staszek Wawrykiewicz, who provided great checking feedback, and +co-ordinated the Polish contributions. Kaja Christiansen performed a +vital role in endless recompilations on assorted Unix platforms, and +Robin Laakso coordinated production for TUG. Vladimir Volovich +did great work on cleaning the source and making other improvements, +while Gerben Wierda did all the work for MacOSX. + +We are very grateful for past and present help from +\begin{itemize} +\item The German-speaking \TeX{} Users (DANTE e.V.), who provided a machine + on which the master of the CD-ROM is developed and maintained; and Rainer +Sch\"opf and Reinhard Zierke who look after it; +\item The Perforce company, for providing a free copy of their +excellent change management system, which we have used to + manage the CD-ROM +contents; +\item Karl Berry, who provided the original \Webc{} distribution, and + has continued to give invaluable advice, encouragement, and help; +\item Mimi Burbank, who arranged access + at the Florida State University School of Computational Science + and Information Technology + to a slew of different + computers to compile \TeX{} on, and acted as an essential guinea-pig + whenever asked; +\item Kaja Christiansen, who provided essential feedback, compilation, and + documentation preparation; +\item Thomas Esser, without whose marvellous \teTeX{} package this + \CD{} would certainly not exist, and whose continual help makes it a + better product; +\item Michel Goossens, who co-authored the documentation; +\item Eitan Gurari, whose \TeX4ht was used to create the \HTML{} + version of this documentation, and who worked tirelessly to improve + it at short notice; +\item Art Ogawa and Pat Monohon, who coordinated releases for TUG; +\item Petr Olsak, who coordinated and checked all the Czech/Slovak + material very carefully; +\item Olaf Weber, for his patient assembly and maintenance of Web2c; +\item Graham Williams, on whose work the catalogue of packages depends. +\end{itemize} + +Gerhard Wilhelms, Volker Schaa, Fabrice Popineau, Janka +Chleb\'\i{}kov\'a, Staszek Wawrykiewicz, Erik Frambach, and Ulrik +Vieth kindly translated documentation at various times into their +respective languages, checked other documentation, and provided very +welcome feedback. + + +\section{History} + +This \CD{} distribution is a joint effort by many \TeX{} Users +Groups, including those from Germany, the Netherlands, the UK, France, +the Czech Republic/Slovakia, India, Poland and Russia, as well as +the international TUG. +Discussion began in late 1993 when the Dutch \TeX{} Users Group was +starting work on its 4All\TeX{} \CD{} for \acro{MS-DOS} users, and it was +hoped at that time to issue a single, rational, \CD{} for all +systems. This was far too ambitious a target, but it did spawn not +only the very successful 4All\TeX{} \CD{}, but also the \acro{TUG} +Technical Council working group on a \emph{\TeX{} Directory + Structure}, which specified how to create consistent and manageable +collections of \TeX{} support files. The final draft of the \TDS{} was +published in the December 1995 issue of \textsl{TUGboat}, and it was clear from +an early stage that one desirable product would be a model structure +on \CD{}. The \CD{} you now have is a very direct result of the +working group's deliberations. It was also clear that the success of +the 4All\TeX{} \CD{} showed that Unix users would benefit from a +similarly easy system, and this is the other main strand of \TeXLive. + +We undertook to make a new Unix-based \TDS{} \CD{} in the autumn of +1995, and quickly identified Thomas Esser's \teTeX{} as the ideal +setup, as it already had multi-platform support and was built with +portability across file systems in mind. Thomas agreed to help, and +work began seriously at the start of 1996. The first edition was +released in May 1996. At the start of 1997, Karl Berry completed a +major new release of his \Webc{} package, which included nearly all +the features which Thomas Esser had added in \teTeX, and we decided to +base the 2nd edition of the \CD{} on the standard \Webc, with the +addition of \teTeX's \texttt{texconfig} script. The 3rd edition of the +\CD{} was based on a major revision of \Webc, 7.2, by Olaf Weber; at the +same time, a new revision of \teTeX was being made, +and \TeXLive{} shares almost all of its features. The 4th edition +followed the same pattern, using a new version of te\TeX, and a new +release of \Webc{} (7.3). The system now included a complete Windows setup. + +For the 5th edition (March 2000) many parts of the \CD{} were revised +and checked, updating hundreds of packages. Package details were +stored in XML files. But the major change for \TeX\ Live 5 was that +all non-free software was removed. Everything on this \CD{} should be +compatible with the Debian Free Software Guidelines +(\url{http://www.debian.org/intro/free}); we have done our best to +check the license conditions of all packages, but we would very much +appreciate hearing of any mistakes. + +The 6th edition (July 2001) had a lot material updated. The major +change was a new install concept: the user could select a more exact set +of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, +etc., but also prepares an appropriate \texttt{language.dat}. + +The 7th edition of 2002 had as a major addition a setup +for MacOSX, and the usual myriad of updates to all sorts +of packages and programs. An important goal was integration +of the source back with teTeX, to correct the drift apart +in versions 5 and 6. + +\section{Future versions} + +\emph{This \CD{} is not a perfect product!} We plan to re-issue it +once a year, and would like to provide more help material, more +utilities, more installation programs, and (of course) an +ever-improved and checked tree of macros and fonts. This work is all +done by hard-pressed volunteers in their limited spare time, and a +great deal remains to be done. If you can help, don't hesitate to put +your name forward! + +Corrections, suggestions and additions for future revisions +should be sent to:\hfill\null +\begin{quote} +Sebastian Rahtz\\ +{}7 Stratfield Road\\ +Oxford OX2 7BG\\ +United Kingdom\\ +\EmailURL{rahtz@tug.org} +\end{quote} + + +Updates, notes, and suggestions will be made available on \CTAN{} +in \path|info/texlive|. A \acro{WWW} page for +information and ordering details is at +\url{http://www.tug.org/tex-live.html}. + +\end{multicols} + +\Section{The texmf.cnf file} +\label{app:texmf.cnf} +\begin{small} +\listinginput{1}{../examples/texmf.cnf} +\end{small} + +\end{document} + + + +Notes on Nicolle Zellner's problems: +------------------------------------ +- autoexec.bat gave error, ``too many parameters''. +fix: in setvars.bat file, put "" around %PATH% to take care of spaces. + +- ``out of environment space'' when rebooting meant that autoexec.bat was +not executing properly-- path and texmfhome variable were not being set. +fix: put in config.sys file the line: shell=c:\command.com /e:1024 /p +(and reboot probably) + +[Note: alternative advice written by Pat: + The environment space is an area of memory in which the OS stores + variables such as path. To increase the memory size do the following: + + Open a MS-DOS window. Click on the Properties icon (looks like a hand + holding a sheet of paper). Click on the Memory tab in the Properties + window. Change the value under Initial Environment: to 4096. Apply the + properties. Click OK on the warning about needing to restart your computer. + The new environment memory will be in effect after the reboot.] + +- windvi did not retain settings. +fix: in setvars.bat file, add command: set Home=c:\Home and also create +the directory c:\Home. +copy windvi.cnf to c:\Home\ +reboot + +-ispell doesn't work (can't write to c:\tmp, can't create dictionary) +In addition to the the c:\Home addition above, create the folder: +d:\tmp\ (d: is where the files are that she is using.) +Now ispell should work from the command line. +Still can't get it to work from within \cmdname{WinShell}. (change cmd line to %c.tex, +it was reading the project main file) + + + +Notes on installing WinEdt: +--------------------------- +If you choose to install WinEdt, you will be asked for a folder name: any +folder name will do, as this is for temporary storage. An acceptable +choice is \verb+C:\Winedt+. Click \textbf{unzip}, then \textbf{OK}, +and finally \textbf{Close}. +--- + +later, to complete WinEdt installation: + +Run "winedt5.exe" and complete the setup procedure. + +Get from ftp://ftp.dante.de/pub/fptex/supplementary/ +30/08/2000 20:17 70 844 winedt5-cnf.zip +10/09/2000 10:43 839 086 winedt5-patch4.zip + +then unpack (use unzip or winzip with subdir creation enabled, NOT pkunzkip) + "winedt5-patch4.zip" inside the "c:\program files\winedt" directory +then at last unpack "winedt5-cnf.zip". + +When this is done, go inside the 'Options->Configurations' menu, +choose the "fpTeX Direct" option. + +If windvi previewer doesn't work, go to options->menu setup-> accessories +and change the Menu Setup so the call for DVI Preview is analogous to +the call for Dvips-- i.e., don't use "DVIVIEW" in the command line, +but rather fptex-bin and dviwin.exe. + + diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/live4ht.cfg-2004 b/Master/texmf-dist/doc/texlive/texlive-en/archive/live4ht.cfg-2004 new file mode 100644 index 00000000000..8700827d62a --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/live4ht.cfg-2004 @@ -0,0 +1,36 @@ +% $Id$ +% tex4ht configuration file for the TeX Live documentation. +% +% The 2 means to separate output files for only the top sectioning levels. +% xhtml specifies the main output format. +% info for extra debugging info in the log files. +% Without the \begin{document}, LaTeX complains that it is missing. +% +\Preamble{2,xhtml,info} \begin{document} \EndPreamble + +% simplify output for HTML. We leave TeX and LaTeX alone, since tex4ht +% actually does the lowered E (and raised A) in CSS. +\def\OMEGA{Omega} +\def\LaTeXe{LaTeX2e} +\def\eTeX{e-\TeX} +\def\acro#1{#1} +\def\MF{Metafont} +\def\BibTeX{BibTeX} +\def\warningbox{} +\def\endwarningbox{} + +\newif\ifhackliterals +\ifx\tldocenglish\undefined \else \hackliteralstrue \fi +\ifx\tldocrussian\undefined \else \hackliteralstrue \fi +\ifx\tldocgerman\undefined \else \hackliteralstrue \fi +% +\ifhackliterals + % these definitions cause "missing } inserted" at \end{tabularx} in + % French and Czech. don't know why. + % + % don't make these into links, as happens with \path. We only have a couple + % special characters that actually occur. + \def\dirname{\texttt\bgroup\catcode`\$=12 \catcode`\_=12 \finishliteral} + \def\finishliteral#1{#1\egroup} + \let\filename=\dirname +\fi diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/mod.pl b/Master/texmf-dist/doc/texlive/texlive-en/archive/mod.pl new file mode 100644 index 00000000000..4f8df5df762 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/mod.pl @@ -0,0 +1,976 @@ + +$M{"a0poster"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"a4"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"a4wide"}="18 May 1996 11:33:54 Graham.Williams\@cmis.csiro.au"; +$M{"a5"}="19 Apr 1998 15:19:21 Graham.Williams\@cmis.csiro.au"; +$M{"a5comb"}="19 Apr 1998 15:19:21 Graham.Williams\@cmis.csiro.au"; +$M{"aaai"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"abc2mtex"}="27 Nov 1996 13:50:01 Graham.Williams\@cmis.csiro.au"; +$M{"abstbook"}="5 Mar 1997 16:28:20 Graham.Williams\@cmis.csiro.au"; +$M{"abstyles"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"accents"}="25 Feb 1999 09:06:12 Graham.Williams\@cmis.csiro.au"; +$M{"accfonts"}="30 Jan 1999 06:16:19 Graham.Williams\@cmis.csiro.au"; +$M{"achemso"}="8 Jul 1998 08:11:28 Graham.Williams\@cmis.csiro.au"; +$M{"acronym"}="17 Nov 1997 09:21:35 Graham.Williams\@cmis.csiro.au"; +$M{"acroread"}="20 May 1997 18:04:58 Graham.Williams\@cmis.csiro.au"; +$M{"acrotex"}="2 Dec 1998 09:52:54 Graham.Williams\@cmis.csiro.au"; +$M{"adfathesis"}="23 Feb 1999 16:11:03 Graham.Williams\@cmis.csiro.au"; +$M{"adobe"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"adobeother"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"adobestd"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"adrlist"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"advdate"}="5 Mar 1997 11:25:37 Graham.Williams\@cmis.csiro.au"; +$M{"ae"}="5 Dec 1998 08:56:53 Graham.Williams\@cmis.csiro.au"; +$M{"afterpage"}="13 Aug 1998 05:36:56 Graham.Williams\@cmis.csiro.au"; +$M{"afthesis"}="15 Dec 1996 19:08:54 Graham.Williams\@cmis.csiro.au"; +$M{"aguplus"}="16 Sep 1998 06:02:47 Graham.Williams\@cmis.csiro.au"; +$M{"aiaa"}="24 Feb 1999 09:15:44 Graham.Williams\@cmis.csiro.au"; +$M{"akletter"}="1 Jun 1998 12:04:46 Graham.Williams\@cmis.csiro.au"; +$M{"alatex"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"alg"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"algorithms"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"alltt"}="28 May 1996 16:23:49 Graham.Williams\@cmis.csiro.au"; +$M{"alphanum"}="10 Mar 1998 06:11:22 Graham.Williams\@cmis.csiro.au"; +$M{"altfont"}="1 Jul 1996 21:06:06 Graham.Williams\@cmis.csiro.au"; +$M{"altfont"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"amiweb2c"}="25 Mar 1998 09:12:31 Graham.Williams\@cmis.csiro.au"; +$M{"amsbsy"}="18 Jun 1997 19:16:14 Graham.Williams\@cmis.csiro.au"; +$M{"amscd"}="1 Nov 1996 08:34:08 Graham.Williams\@cmis.csiro.au"; +$M{"amsfonts"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"amsfonts"}="9 Nov 1996 15:43:40 Graham.Williams\@cmis.csiro.au"; +$M{"amslatex"}="9 Nov 1996 15:40:28 Graham.Williams\@cmis.csiro.au"; +$M{"amslatex"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"amsltx11"}="9 Nov 1996 15:46:01 Graham.Williams\@cmis.csiro.au"; +$M{"amsmath"}="9 Nov 1996 16:15:32 Graham.Williams\@cmis.csiro.au"; +$M{"amsppt"}="24 Sep 1996 08:42:35 Graham.Williams\@cmis.csiro.au"; +$M{"amsppt1"}="25 Sep 1996 09:41:18 Graham.Williams\@cmis.csiro.au"; +$M{"amssym"}="25 Sep 1996 09:44:00 Graham.Williams\@cmis.csiro.au"; +$M{"amssymb"}="11 Nov 1996 20:19:40 Graham.Williams\@cmis.csiro.au"; +$M{"amstex"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"amstex"}="9 Nov 1996 15:47:35 Graham.Williams\@cmis.csiro.au"; +$M{"amstext"}="11 Nov 1996 20:24:24 Graham.Williams\@cmis.csiro.au"; +$M{"answers"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"answers"}="29 May 1996 13:08:24 Graham.Williams\@cmis.csiro.au"; +$M{"anttvf"}="5 Feb 1998 09:27:21 Graham.Williams\@cmis.csiro.au"; +$M{"anttvf"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"antyktor"}="18 Jun 1998 10:23:35 Graham.Williams\@cmis.csiro.au"; +$M{"apa"}="12 Nov 1998 11:38:01 Graham.Williams\@cmis.csiro.au"; +$M{"apacite"}="12 Jul 1996 10:10:07 Graham.Williams\@cmis.csiro.au"; +$M{"apasoft"}="15 Sep 1998 06:39:47 Graham.Williams\@cmis.csiro.au"; +$M{"apl"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"appendix"}="11 Dec 1998 05:36:39 Graham.Williams\@cmis.csiro.au"; +$M{"ar"}="24 Apr 1998 16:02:22 Graham.Williams\@cmis.csiro.au"; +$M{"arabtex"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"arabtex"}="13 May 1997 16:45:22 Graham.Williams\@cmis.csiro.au"; +$M{"armenian"}="3 Jul 1997 08:23:26 Graham.Williams\@cmis.csiro.au"; +$M{"arosgn"}="21 Oct 1996 10:32:18 Graham.Williams\@cmis.csiro.au"; +$M{"arrow"}="7 Nov 1996 19:31:04 Graham.Williams\@cmis.csiro.au"; +$M{"asaetr"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"ascii"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"astro"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"at"}="12 Nov 1996 09:27:11 Graham.Williams\@cmis.csiro.au"; +$M{"auctex"}="19 Oct 1998 06:10:29 Graham.Williams\@cmis.csiro.au"; +$M{"aurora"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"authorindex"}="16 Feb 1998 17:29:41 Graham.Williams\@cmis.csiro.au"; +$M{"autotab"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"babel"}="12 Jan 1997 11:26:33 Graham.Williams\@cmis.csiro.au"; +$M{"backgammon"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"bakoma-fonts"}="13 Dec 1996 08:26:36 Graham.Williams\@cmis.csiro.au"; +$M{"bakoma"}="22 Jan 1999 07:17:26 Graham.Williams\@cmis.csiro.au"; +$M{"barcode2"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"barcodes"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"barcodes"}="7 Jun 1996 13:43:47 Graham.Williams\@cmis.csiro.au"; +$M{"barr"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"bayer"}="10 Feb 1998 09:30:02 Graham.Williams\@cmis.csiro.au"; +$M{"bbding"}="13 May 1996 06:15:45 Graham.Williams\@cmis.csiro.au"; +$M{"bbding"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"bbm"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"beebe"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"belleek"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"beton"}="28 May 1996 16:24:30 Graham.Williams\@cmis.csiro.au"; +$M{"bez123"}="21 Oct 1998 09:36:53 Graham.Williams\@cmis.csiro.au"; +$M{"bezos"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"bibarts"}="19 Apr 1998 15:55:19 Graham.Williams\@cmis.csiro.au"; +$M{"bibindex"}="12 Jan 1997 14:53:39 Graham.Williams\@cmis.csiro.au"; +$M{"biblio"}="4 Oct 1996 08:44:47 Graham.Williams\@cmis.csiro.au"; +$M{"biblios"}="16 Aug 1996 14:40:47 Graham.Williams\@cmis.csiro.au"; +$M{"biblist"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"biblook"}="12 Jan 1997 14:53:39 Graham.Williams\@cmis.csiro.au"; +$M{"bibsort"}="12 Nov 1996 10:28:11 Graham.Williams\@cmis.csiro.au"; +$M{"bibtex8bit"}="19 Aug 1996 22:05:26 Graham.Williams\@cmis.csiro.au"; +$M{"bibtool"}="24 Feb 1998 13:38:41 Graham.Williams\@cmis.csiro.au"; +$M{"bibunits"}="29 May 1997 12:15:06 Graham.Williams\@cmis.csiro.au"; +$M{"bibweb"}="28 Nov 1997 09:12:23 Graham.Williams\@cmis.csiro.au"; +$M{"bidstobibtex"}="21 Oct 1996 13:54:10 Graham.Williams\@cmis.csiro.au"; +$M{"bitstrea"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"blackboard"}="9 Jul 1998 05:37:01 Graham.Williams\@cmis.csiro.au"; +$M{"blue"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"bluesky"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"bm"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"booktabs"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"borceux"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"bosisio"}="1 May 1998 16:53:18 Graham.Williams\@cmis.csiro.au"; +$M{"boxedminipage"}="19 Apr 1998 15:20:55 Graham.Williams\@cmis.csiro.au"; +$M{"breqn"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"bridge"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"brief"}="30 May 1996 11:22:14 Graham.Williams\@cmis.csiro.au"; +$M{"brushscr"}="24 Jun 1998 12:56:02 Graham.Williams\@cmis.csiro.au"; +$M{"btparse"}="20 Feb 1998 14:21:13 Graham.Williams\@cmis.csiro.au"; +$M{"c-pascal"}="3 Mar 1998 15:29:06 Graham.Williams\@cmis.csiro.au"; +$M{"c2cweb"}="29 Nov 1996 15:27:19 Graham.Williams\@cmis.csiro.au"; +$M{"calc"}="12 Aug 1998 06:27:04 Graham.Williams\@cmis.csiro.au"; +$M{"calendar"}="18 Mar 1997 13:07:53 Graham.Williams\@cmis.csiro.au"; +$M{"calendar"}="4 Feb 1998 13:36:58 Graham.Williams\@cmis.csiro.au"; +$M{"calligra"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"calrsfs"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"calrsfs"}="12 Jun 1996 09:16:09 Graham.Williams\@cmis.csiro.au"; +$M{"camel"}="5 Mar 1997 16:31:57 Graham.Williams\@cmis.csiro.au"; +$M{"cancel"}="26 May 1997 12:53:21 Graham.Williams\@cmis.csiro.au"; +$M{"capt-of"}="15 Dec 1996 19:04:36 Graham.Williams\@cmis.csiro.au"; +$M{"caption"}="12 Nov 1996 20:23:42 Graham.Williams\@cmis.csiro.au"; +$M{"carlisle"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"cases"}="15 Dec 1996 19:14:30 Graham.Williams\@cmis.csiro.au"; +$M{"casyl"}="24 Feb 1999 09:19:05 Graham.Williams\@cmis.csiro.au"; +$M{"catalogue"}="22 May 1996 16:49:04 Graham.Williams\@cmis.csiro.au"; +$M{"catdoc"}="5 Nov 1998 11:47:57 Graham.Williams\@cmis.csiro.au"; +$M{"cbgreek"}="24 Oct 1998 07:42:16 Graham.Williams\@cmis.csiro.au"; +$M{"cc-pl"}="09 Jun 1998 staw\@gust.org.pl"; +$M{"ccaption"}="27 Jan 1999 09:40:41 Graham.Williams\@cmis.csiro.au"; +$M{"ccfonts"}="23 Jun 1998 15:52:05 Graham.Williams\@cmis.csiro.au"; +$M{"cchess"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"cd-cover"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"cdcover"}="10 Feb 1998 09:31:30 Graham.Williams\@cmis.csiro.au"; +$M{"cdlabeler"}="2 Jan 1999 21:57:44 Graham.Williams\@cmis.csiro.au"; +$M{"cellular"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"cep"}="27 Jan 1998 16:53:11 Graham.Williams\@cmis.csiro.au"; +$M{"cep"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"changebar"}="7 Oct 1997 09:02:24 Graham.Williams\@cmis.csiro.au"; +$M{"chapterbib"}="15 Dec 1996 19:13:07 Graham.Williams\@cmis.csiro.au"; +$M{"chemcono"}="21 Oct 1996 14:28:23 Graham.Williams\@cmis.csiro.au"; +$M{"chemcono"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"chemsym"}="8 Jul 1998 08:11:58 Graham.Williams\@cmis.csiro.au"; +$M{"cheq"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"cherokee"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"chess"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"china2e"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"china2e"}="26 Feb 1998 08:51:49 Graham.Williams\@cmis.csiro.au"; +$M{"chktex"}="21 Oct 1996 13:51:58 Graham.Williams\@cmis.csiro.au"; +$M{"circ"}="18 Mar 1998 09:29:16 Graham.Williams\@cmis.csiro.au"; +$M{"circle"}="13 Oct 1998 09:09:47 Graham.Williams\@cmis.csiro.au"; +$M{"circuit-macro"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"circuit-macros"}="6 Sep 1998 05:00:37 Graham.Williams\@cmis.csiro.au"; +$M{"cirth"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"cite"}="15 Dec 1996 19:10:42 Graham.Williams\@cmis.csiro.au"; +$M{"cjk-fonts"}="8 Jan 1999 08:02:11 Graham.Williams\@cmis.csiro.au"; +$M{"cjk"}="8 Jan 1999 08:01:13 Graham.Williams\@cmis.csiro.au"; +$M{"cm"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"cmactex"}="9 Aug 1998 06:47:00 Graham.Williams\@cmis.csiro.au"; +$M{"cmbright"}="28 Dec 1998 09:33:43 Graham.Williams\@cmis.csiro.au"; +$M{"cmcyr"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"cmcyralt"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"cmdtrack"}="22 Feb 1999 16:17:02 Graham.Williams\@cmis.csiro.au"; +$M{"cmextra"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"cmpica"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"cmps"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"cmsd"}="19 Feb 1998 09:45:20 Graham.Williams\@cmis.csiro.au"; +$M{"cmtt"}="1 Jun 1996 15:43:59 Graham.Williams\@cmis.csiro.au"; +$M{"cmyk-hax"}="12 May 1997 10:23:51 Graham.Williams\@cmis.csiro.au"; +$M{"cmyk-hax"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"code128"}="7 Jun 1996 13:42:22 Graham.Williams\@cmis.csiro.au"; +$M{"codepage"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"color"}="24 Sep 1996 08:56:07 Graham.Williams\@cmis.csiro.au"; +$M{"colorsep"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"colortbl"}="24 Jun 1998 13:01:21 Graham.Williams\@cmis.csiro.au"; +$M{"comma"}="11 Feb 1998 07:46:23 Graham.Williams\@cmis.csiro.au"; +$M{"comment"}="8 Sep 1998 06:29:57 Graham.Williams\@cmis.csiro.au"; +$M{"compsci"}="21 Oct 1996 14:11:57 Graham.Williams\@cmis.csiro.au"; +$M{"concmath"}="25 Dec 1996 UV"; +$M{"concprog"}="22 Oct 1996 09:37:54 Graham.Williams\@cmis.csiro.au"; +$M{"concrete-wrap"}="27 Nov 1996 13:57:24 Graham.Williams\@cmis.csiro.au"; +$M{"concrete"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"consdiag"}="21 Jan 1999 19:26:28 Graham.Williams\@cmis.csiro.au"; +$M{"context"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"corelpak"}="21 Jan 1999 14:00:25 Graham.Williams\@cmis.csiro.au"; +$M{"count1to"}="24 Oct 1998 09:04:16 Graham.Williams\@cmis.csiro.au"; +$M{"covington"}="22 Apr 1997 14:32:07 Graham.Williams\@cmis.csiro.au"; +$M{"croatian"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"crop"}="8 Dec 1998 09:21:42 Graham.Williams\@cmis.csiro.au"; +$M{"crossword"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"crosswrd"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"csfonts"}="3 May 1997 s.rahtz\@elsevier.co.uk"; +$M{"cslatex"}="3 May 1997 s.rahtz\@elsevier.co.uk"; +$M{"csplain"}="3 May 1997 s.rahtz\@elsevier.co.uk"; +$M{"cspsfonts"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"cstug"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"csx"}="12 Jul 1998 05:30:19 Graham.Williams\@cmis.csiro.au"; +$M{"cursor"}="20 Jan 1999 14:56:10 Graham.Williams\@cmis.csiro.au"; +$M{"custom-bib"}="18 Aug 1998 18:00:42 Graham.Williams\@cmis.csiro.au"; +$M{"cwebbin"}="16 Oct 1998 06:27:49 Graham.Williams\@cmis.csiro.au"; +$M{"cwebx"}="17 Feb 1999 16:44:14 Graham.Williams\@cmis.csiro.au"; +$M{"cwpuzzle"}="28 Nov 1996 10:09:18 Graham.Williams\@cmis.csiro.au"; +$M{"cyrtug"}="8 Oct 1998 11:51:48 Graham.Williams\@cmis.csiro.au"; +$M{"dancers"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"dante-src"}="11 Feb 1998 07:50:55 Graham.Williams\@cmis.csiro.au"; +$M{"dates"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"dblfont"}="1 May 1998 16:53:44 Graham.Williams\@cmis.csiro.au"; +$M{"dbprocess"}="2 Jan 1999 21:55:59 Graham.Williams\@cmis.csiro.au"; +$M{"dc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"dc"}="2 Jun 1996 11:09:21 Graham.Williams\@cmis.csiro.au"; +$M{"dco"}="16 Aug 1996 14:14:54 Graham.Williams\@cmis.csiro.au"; +$M{"dcounter"}="28 Dec 1998 09:21:00 Graham.Williams\@cmis.csiro.au"; +$M{"default"}="18 Jul 1998 06:43:35 Graham.Williams\@cmis.csiro.au"; +$M{"deleq"}="8 Jul 1998 08:12:25 Graham.Williams\@cmis.csiro.au"; +$M{"devanagari"}="7 Dec 1998 05:46:30 Graham.Williams\@cmis.csiro.au"; +$M{"dialogl"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"dinbrief"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"dinbrief"}="4 Nov 1996 09:56:05 Graham.Williams\@cmis.csiro.au"; +$M{"directory"}="10 Mar 1998 05:30:54 Graham.Williams\@cmis.csiro.au"; +$M{"dn2"}="13 Mar 1998 09:10:15 Graham.Williams\@cmis.csiro.au"; +$M{"doc"}="19 Aug 1996 22:19:13 Graham.Williams\@cmis.csiro.au"; +$M{"dotseqn"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"doublestroke"}="21 Oct 1996 13:56:41 Graham.Williams\@cmis.csiro.au"; +$M{"draftcopy"}="21 May 1996 12:52:54 Graham.Williams\@cmis.csiro.au"; +$M{"dratex"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"dropcaps"}="19 Jun 1996 13:38:04 Graham.Williams\@cmis.csiro.au"; +$M{"dropping"}="9 Jul 1998 06:27:48 Graham.Williams\@cmis.csiro.au"; +$M{"duerer"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"dvgtk"}="29 Apr 1997 14:45:04 Graham.Williams\@cmis.csiro.au"; +$M{"dvi2tty"}="7 Jun 1996 20:12:43 Graham.Williams\@cmis.csiro.au"; +$M{"dviconcat"}="1 Nov 1996 08:10:15 Graham.Williams\@cmis.csiro.au"; +$M{"dvicopy"}="= {1 Nov 1996 08:30:05 Graham.Williams\@cmis.csiro.au"; +$M{"dviljk"}="6 Apr 1998 06:10:01 Graham.Williams\@cmis.csiro.au"; +$M{"dvipaste"}="23 Feb 1998 15:46:09 Graham.Williams\@cmis.csiro.au"; +$M{"dvipdfm"}="2 Dec 1998 05:56:54 Graham.Williams\@cmis.csiro.au"; +$M{"dvips-os2"}="21 Jan 1999 13:57:52 Graham.Williams\@cmis.csiro.au"; +$M{"dvips-shell"}="5 Mar 1998 22:29:41 Graham.Williams\@cmis.csiro.au"; +$M{"dvips"}="13 May 1997 09:51:53 Graham.Williams\@cmis.csiro.au"; +$M{"dvipsdoc"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"dvipsk"}="6 Apr 1998 05:56:12 Graham.Williams\@cmis.csiro.au"; +$M{"ean"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"ean"}="7 Jun 1996 13:44:26 Graham.Williams\@cmis.csiro.au"; +$M{"easy"}="18 Aug 1998 18:24:49 Graham.Williams\@cmis.csiro.au"; +$M{"easybib"}="7 Mar 1997 16:54:36 Graham.Williams\@cmis.csiro.au"; +$M{"easybmat"}="18 Aug 1998 18:27:38 Graham.Williams\@cmis.csiro.au"; +$M{"easyeqn"}="18 Nov 1997 15:21:55 Graham.Williams\@cmis.csiro.au"; +$M{"easymat"}="18 Aug 1998 18:28:31 Graham.Williams\@cmis.csiro.au"; +$M{"easytable"}="18 Aug 1998 18:28:50 Graham.Williams\@cmis.csiro.au"; +$M{"easyvector"}="18 Nov 1997 15:22:16 Graham.Williams\@cmis.csiro.au"; +$M{"ec-plain"}="21 Apr 1998 08:38:32 Graham.Williams\@cmis.csiro.au"; +$M{"ec"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"ecc"}="11 Dec 1998 08:59:53 Graham.Williams\@cmis.csiro.au"; +$M{"ecltree"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"eco"}="22 Jul 1998 09:13:53 Graham.Williams\@cmis.csiro.au"; +$M{"ecpk"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"edmac"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"eepic"}="28 Dec 1998 09:32:41 Graham.Williams\@cmis.csiro.au"; +$M{"egplot"}="9 Jul 1998 06:27:09 Graham.Williams\@cmis.csiro.au"; +$M{"eiad"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"eijkhout"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"elsevier"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"elvish"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"emp"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"emp"}="26 Feb 1998 08:53:14 Graham.Williams\@cmis.csiro.au"; +$M{"emtex-os2"}="31 Jul 1998 10:16:40 Graham.Williams\@cmis.csiro.au"; +$M{"emtex"}="31 Jul 1998 10:16:40 Graham.Williams\@cmis.csiro.au"; +$M{"emtexgi"}="12 Jan 1997 11:32:36 Graham.Williams\@cmis.csiro.au"; +$M{"emtextds"}="30 Sep 1998 07:58:58 Graham.Williams\@cmis.csiro.au"; +$M{"emulateapj"}="27 Nov 1997 17:06:10 Graham.Williams\@cmis.csiro.au"; +$M{"encodings"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"endfloat"}="21 Jun 1996 14:52:55 Graham.Williams\@cmis.csiro.au"; +$M{"endnotes"}="3 Sep 1996 09:20:05 Graham.Williams\@cmis.csiro.au"; +$M{"endnotes"}="4 Feb 1998 13:33:16 Graham.Williams\@cmis.csiro.au"; +$M{"engwar"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"enumerate"}="22 Jul 1998 05:47:30 Graham.Williams\@cmis.csiro.au"; +$M{"envbig"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"envlab"}="17 Jul 1997 14:37:23 Graham.Williams\@cmis.csiro.au"; +$M{"epic"}="24 Jul 1998 06:18:39 Graham.Williams\@cmis.csiro.au"; +$M{"epigraph"}="1 Dec 1998 12:42:01 Graham.Williams\@cmis.csiro.au"; +$M{"eplain"}="19 Aug 1996 22:10:25 Graham.Williams\@cmis.csiro.au"; +$M{"epmtfe"}="23 Feb 1999 15:01:08 Graham.Williams\@cmis.csiro.au"; +$M{"epsfx"}="09 Jun 1998 staw\@gust.org.pl"; +$M{"epslatex"}="9 Feb 1998 09:22:51 Graham.Williams\@cmis.csiro.au"; +$M{"eqname"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"esieecv"}="26 Feb 1998 08:54:52 Graham.Williams\@cmis.csiro.au"; +$M{"esieecv"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"esindex"}="10 Nov 1998 10:40:44 Graham.Williams\@cmis.csiro.au"; +$M{"eso-pic"}="22 Jul 1998 06:17:37 Graham.Williams\@cmis.csiro.au"; +$M{"et"}="24 Feb 1998 13:45:45 Graham.Williams\@cmis.csiro.au"; +$M{"etexbase"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"ethiop"}="13 Dec 1998 15:02:18 Graham.Williams\@cmis.csiro.au"; +$M{"euler"}="5 Jun 1996 10:03:48 Graham.Williams\@cmis.csiro.au"; +$M{"euro"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"eurofont"}="31 Jan 1999 07:41:02 Graham.Williams\@cmis.csiro.au"; +$M{"europs"}="21 Jan 1999 13:04:27 Graham.Williams\@cmis.csiro.au"; +$M{"eurosans"}="27 Jan 1999 08:25:26 Graham.Williams\@cmis.csiro.au"; +$M{"eurosym"}="6 Jan 1999 07:26:11 Graham.Williams\@cmis.csiro.au"; +$M{"everysel"}="10 Aug 1998 09:05:43 Graham.Williams\@cmis.csiro.au"; +$M{"everyshi"}="10 Aug 1998 09:20:24 Graham.Williams\@cmis.csiro.au"; +$M{"exam"}="16 Dec 1998 08:31:47 Graham.Williams\@cmis.csiro.au"; +$M{"examdesign"}="20 Jan 1998 22:03:03 Graham.Williams\@cmis.csiro.au"; +$M{"exams"}="29 May 1996 13:09:04 Graham.Williams\@cmis.csiro.au"; +$M{"excalibur"}="8 Nov 1998 07:01:25 Graham.Williams\@cmis.csiro.au"; +$M{"expdlist"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"expl3"}="1 Jun 1998 12:09:40 Graham.Williams\@cmis.csiro.au"; +$M{"export"}="12 Jan 1997 11:45:06 Graham.Williams\@cmis.csiro.au"; +$M{"export"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"exscale"}="12 Jun 1996 06:53:11 Graham.Williams\@cmis.csiro.au"; +$M{"extdash"}="28 Dec 1998 09:21:00 Graham.Williams\@cmis.csiro.au"; +$M{"fancybox"}="2 Mar 1998 09:20:57 Graham.Williams\@cmis.csiro.au"; +$M{"fancyhdr"}="9 Sep 1998 06:51:16 Graham.Williams\@cmis.csiro.au"; +$M{"fancyref"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"fancyvrb"}="1 Apr 1998 06:01:31 Graham.Williams\@cmis.csiro.au"; +$M{"faq"}="1 Jul 1998 10:31:39 Graham.Williams\@cmis.csiro.au"; +$M{"fax"}="13 Dec 1996 09:32:37 Graham.Williams\@cmis.csiro.au"; +$M{"fc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"fc"}="5 Mar 1998 22:19:31 Graham.Williams\@cmis.csiro.au"; +$M{"fepslatex"}="6 Nov 1998 05:54:05 Graham.Williams\@cmis.csiro.au"; +$M{"feynmf"}="30 May 1996 06:34:12 Graham.Williams\@cmis.csiro.au"; +$M{"fihyph"}=" from fihyph.tex to make the Finnish accented"; +$M{"fihyph"}="6 Nov 1998 06:34:36 Graham.Williams\@cmis.csiro.au"; +$M{"finbib"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"finplain"}="29 Jun 1998 10:04:25 Graham.Williams\@cmis.csiro.au"; +$M{"fix2col"}="19 Aug 1998 16:52:30 Graham.Williams\@cmis.csiro.au"; +$M{"fixfloat"}="23 May 1997 09:28:11 Graham.Williams\@cmis.csiro.au"; +$M{"flabels"}="21 Jul 1997 09:34:31 Graham.Williams\@cmis.csiro.au"; +$M{"flatex"}="24 Sep 1996 08:59:43 Graham.Williams\@cmis.csiro.au"; +$M{"flatten"}="18 Jun 1996 09:36:48 Graham.Williams\@cmis.csiro.au"; +$M{"float"}="25 May 1996 07:26:32 Graham.Williams\@cmis.csiro.au"; +$M{"floatflt"}="8 Jul 1998 08:16:33 Graham.Williams\@cmis.csiro.au"; +$M{"fltpage"}="19 Nov 1998 05:29:33 Graham.Williams\@cmis.csiro.au"; +$M{"fncychap"}=" Each can be using a set of simple commands."; +$M{"fncychap"}="13 Dec 1996 08:41:01 Graham.Williams\@cmis.csiro.au"; +$M{"fnpara"}="10 Sep 1996 09:23:00 Graham.Williams\@cmis.csiro.au"; +$M{"foilhtml"}="19 Feb 1998 09:39:43 Graham.Williams\@cmis.csiro.au"; +$M{"foiltex"}="15 Aug 1998 07:01:05 Graham.Williams\@cmis.csiro.au"; +$M{"fontinst"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"fontmisc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"fontname"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"fonts"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"footbib"}="19 Jun 1997 11:31:23 Graham.Williams\@cmis.csiro.au"; +$M{"footmisc"}="22 Jun 1998 16:47:47 Graham.Williams\@cmis.csiro.au"; +$M{"footnpag"}="10 Sep 1996 09:26:38 Graham.Williams\@cmis.csiro.au"; +$M{"formats"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"formlett"}="27 May 1997 09:39:35 Graham.Williams\@cmis.csiro.au"; +$M{"formula"}="18 Jun 1998 10:24:39 Graham.Williams\@cmis.csiro.au"; +$M{"fourtex"}="21 Nov 1998 05:32:50 Graham.Williams\@cmis.csiro.au"; +$M{"fp"}="4 Nov 1996 09:45:28 Graham.Williams\@cmis.csiro.au"; +$M{"freefonts"}="10 Sep 1998 18:50:47 Graham.Williams\@cmis.csiro.au"; +$M{"freetype"}="2 Jan 1999 22:37:14 Graham.Williams\@cmis.csiro.au"; +$M{"french"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"fribrief"}="20 Jan 1998 21:50:51 Graham.Williams\@cmis.csiro.au"; +$M{"ftetx"}="24 Feb 1998 13:52:42 Graham.Williams\@cmis.csiro.au"; +$M{"ftn"}="10 Sep 1996 09:43:47 Graham.Williams\@cmis.csiro.au"; +$M{"ftnright"}="19 Aug 1996 22:20:55 Graham.Williams\@cmis.csiro.au"; +$M{"fullblck"}="18 Nov 1998 09:21:36 Graham.Williams\@cmis.csiro.au"; +$M{"fullpict"}="18 Feb 1999 10:39:07 Graham.Williams\@cmis.csiro.au"; +$M{"fundus"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"funnelweb"}="25 Jun 1996 12:38:19 Graham.Williams\@cmis.csiro.au"; +$M{"futhark"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"g-brief"}="20 Feb 1998 14:17:49 Graham.Williams\@cmis.csiro.au"; +$M{"gb4e"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"genealogy"}="31 May 1996 14:10:08 Graham.Williams\@cmis.csiro.au"; +$M{"genmisc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"gentl-gr"}="29 Jan 1999 09:40:36 Graham.Williams\@cmis.csiro.au"; +$M{"geometry"}="8 Apr 1998 14:26:57 Graham.Williams\@cmis.csiro.au"; +$M{"geomsty"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"geomsty"}="26 Feb 1998 08:58:15 Graham.Williams\@cmis.csiro.au"; +$M{"german"}="15 Jul 1998 07:33:39 Graham.Williams\@cmis.csiro.au"; +$M{"germbib"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"germdoc"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"getrefs"}="12 Nov 1998 20:22:10 Graham.Williams\@cmis.csiro.au"; +$M{"ghostscript"}="20 May 1997 14:12:34 Graham.Williams\@cmis.csiro.au"; +$M{"ghostview-mac"}="27 Mar 1998 05:51:48 Graham.Williams\@cmis.csiro.au"; +$M{"ghyphen"}="8 Jul 1998 08:55:23 Graham.Williams\@cmis.csiro.au"; +$M{"gleitobjekte"}="17 Feb 1998 09:09:23 Graham.Williams\@cmis.csiro.au"; +$M{"gloss"}="19 Apr 1998 15:58:24 Graham.Williams\@cmis.csiro.au"; +$M{"glosstex"}="25 Feb 1998 09:12:56 Graham.Williams\@cmis.csiro.au"; +$M{"gn-logic"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"gnhyph"}="16 Sep 1998 09:18:43 Graham.Williams\@cmis.csiro.au"; +$M{"gnuplot-ps"}="30 May 1996 11:22:14 Graham.Williams\@cmis.csiro.au"; +$M{"go"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"gothic"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"graphfig"}="1 May 1998 16:54:18 Graham.Williams\@cmis.csiro.au"; +$M{"graphics"}="1 Nov 1996 08:16:13 Graham.Williams\@cmis.csiro.au"; +$M{"graphicx"}="12 Jun 1996 06:47:22 Graham.Williams\@cmis.csiro.au"; +$M{"gray"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"grfguide"}="11 Jun 1997 16:17:05 Graham.Williams\@cmis.csiro.au"; +$M{"grfpaste"}="23 Feb 1998 15:39:11 Graham.Williams\@cmis.csiro.au"; +$M{"grnumalt"}="23 Feb 1998 15:49:56 Graham.Williams\@cmis.csiro.au"; +$M{"gsftopk"}="12 Nov 1996 09:08:05 Graham.Williams\@cmis.csiro.au"; +$M{"gustlib"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"gustlib"}="March 1998, s.rahtz\@elsevier.co.uk"; +$M{"hands"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"hanging"}="11 Dec 1998 05:38:02 Graham.Williams\@cmis.csiro.au"; +$M{"harpoon"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"harvmac"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"hellas"}="10 Mar 1998 06:00:34 Graham.Williams\@cmis.csiro.au"; +$M{"here"}="25 May 1996 07:24:51 Graham.Williams\@cmis.csiro.au"; +$M{"hh"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"hilowres"}="21 Jan 1999 19:31:07 Graham.Williams\@cmis.csiro.au"; +$M{"histogr"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"hlatex"}="28 May 1997 16:04:14 Graham.Williams\@cmis.csiro.au"; +$M{"hoekwater"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"html"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"html2latex"}="30 Sep 1998 07:55:02 Graham.Williams\@cmis.csiro.au"; +$M{"huhyph"}="5 Nov 1998 05:50:17 Graham.Williams\@cmis.csiro.au"; +$M{"hvdashln"}="13 May 1997 09:36:00 Graham.Williams\@cmis.csiro.au"; +$M{"hyper"}="30 Aug 1997 12:04:32 Graham.Williams\@cmis.csiro.au"; +$M{"hyperlatex"}="27 Dec 1998 20:25:24 Graham.Williams\@cmis.csiro.au"; +$M{"hyperref"}="17 Feb 1999 16:41:40 Graham.Williams\@cmis.csiro.au"; +$M{"hyphenat"}="22 Feb 1999 16:42:36 Graham.Williams\@cmis.csiro.au"; +$M{"hypht1"}="3 May 1997 20:57:53 Graham.Williams\@cmis.csiro.au"; +$M{"ibm"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"idealfonts"}="20 Feb 1998 14:34:54 Graham.Williams\@cmis.csiro.au"; +$M{"ifacmtg"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"imac"}="24 Sep 1998 05:27:35 Graham.Williams\@cmis.csiro.au"; +$M{"indxcite"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"indxcite"}="24 Jun 1996 15:17:51 Graham.Williams\@cmis.csiro.au"; +$M{"info"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"inhyph"}="7 Oct 1997 08:54:26 Graham.Williams\@cmis.csiro.au"; +$M{"inputenc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"insbox"}="25 Feb 1998 09:20:32 Graham.Williams\@cmis.csiro.au"; +$M{"ipa"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"isostds"}="21 Oct 1998 09:38:15 Graham.Williams\@cmis.csiro.au"; +$M{"ithyph"}="4 Aug 1998 05:39:19 Graham.Williams\@cmis.csiro.au"; +$M{"izhitsa"}="30 Jan 1999 06:34:27 Graham.Williams\@cmis.csiro.au"; +$M{"jadetex"}="3 May 1997 s.rahtz\@elsevier.co.uk"; +$M{"javatex"}="8 Oct 1998 12:03:35 Graham.Williams\@cmis.csiro.au"; +$M{"jknappen"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"jknappen"}="10 Mar 1998 09:10:20 Graham.Williams\@cmis.csiro.au"; +$M{"jsmisc"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"jspell"}="= {5 Nov 1998 15:43:30 Graham.Williams\@cmis.csiro.au"; +$M{"jura"}="11 Jul 1998 17:22:01 Graham.Williams\@cmis.csiro.au"; +$M{"kalendar"}="27 Mar 1998 05:44:58 Graham.Williams\@cmis.csiro.au"; +$M{"kalender"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"karnaugh"}="24 Sep 1998 05:26:10 Graham.Williams\@cmis.csiro.au"; +$M{"kdgreek"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"kix"}="19 Sep 1998 08:58:56 Graham.Williams\@cmis.csiro.au"; +$M{"kluwer"}="31 May 1997 20:08:21 Graham.Williams\@cmis.csiro.au"; +$M{"knst"}="21 Oct 1996 13:44:44 Graham.Williams\@cmis.csiro.au"; +$M{"knuth"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"koi8"}="21 Oct 1996 13:48:21 Graham.Williams\@cmis.csiro.au"; +$M{"koma-script"}="30 Nov 1998 09:41:00 Graham.Williams\@cmis.csiro.au"; +$M{"kpathsea"}="3 Feb 1999 10:29:24 Graham.Williams\@cmis.csiro.au"; +$M{"kuvio"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"lamstex"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"lated"}="11 Feb 1998 07:41:10 Graham.Williams\@cmis.csiro.au"; +$M{"latex"}="2 Jul 1998 12:56:15 Graham.Williams\@cmis.csiro.au"; +$M{"latex209"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"latex209"}="4 Jul 1996 10:07:05 Graham.Williams\@cmis.csiro.au"; +$M{"latex2e"}="4 Jul 1996 09:53:38 Graham.Williams\@cmis.csiro.au"; +$M{"latex2html"}="8 Jul 1996 23:00:59 Graham.Williams\@cmis.csiro.au"; +$M{"latex2man"}="9 Sep 1998 05:33:13 Graham.Williams\@cmis.csiro.au"; +$M{"latex2rtf"}="17 Nov 1998 08:56:23 Graham.Williams\@cmis.csiro.au"; +$M{"latexcad"}="20 Mar 1998 09:32:43 Graham.Williams\@cmis.csiro.au"; +$M{"latexfonts"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"latexmk"}="12 Jan 1997 11:30:28 Graham.Williams\@cmis.csiro.au"; +$M{"latexn"}="27 Nov 1997 17:04:03 Graham.Williams\@cmis.csiro.au"; +$M{"latin2jk"}="7 Oct 1997 08:56:04 Graham.Williams\@cmis.csiro.au"; +$M{"layout"}="13 Aug 1998 05:42:38 Graham.Williams\@cmis.csiro.au"; +$M{"layouts"}="31 Jan 1999 06:43:57 Graham.Williams\@cmis.csiro.au"; +$M{"leaflet"}="30 Sep 1998 08:20:21 Graham.Williams\@cmis.csiro.au"; +$M{"leftidx"}="4 Feb 1998 13:16:00 Graham.Williams\@cmis.csiro.au"; +$M{"letter"}="6 Nov 1998 13:26:58 Graham.Williams\@cmis.csiro.au"; +$M{"lettrine"}="25 Mar 1998 09:11:24 Graham.Williams\@cmis.csiro.au"; +$M{"levy"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"lexikon"}="1 Apr 1998 06:05:45 Graham.Williams\@cmis.csiro.au"; +$M{"lgreek"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"lgrind-win32"}="24 Mar 1998 11:41:55 Graham.Williams\@cmis.csiro.au"; +$M{"lgrind"}="5 Aug 1998 06:33:28 Graham.Williams\@cmis.csiro.au"; +$M{"lh"}="2 Oct 1998 07:20:00 Graham.Williams\@cmis.csiro.au"; +$M{"lhcyr"}="21 Jan 1999 19:44:44 Graham.Williams\@cmis.csiro.au"; +$M{"lilypond"}="21 Oct 1998 09:41:28 Graham.Williams\@cmis.csiro.au"; +$M{"lineno"}="20 Jan 1999 14:57:13 Graham.Williams\@cmis.csiro.au"; +$M{"linguex"}="1 Jun 1998 11:57:34 Graham.Williams\@cmis.csiro.au"; +$M{"lintex"}="16 Jun 1998 10:19:01 Graham.Williams\@cmis.csiro.au"; +$M{"lips"}="21 Oct 1996 10:30:25 Graham.Williams\@cmis.csiro.au"; +$M{"listings"}="11 Nov 1998 05:44:14 Graham.Williams\@cmis.csiro.au"; +$M{"lkort"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"llncs"}="4 Oct 1996 08:48:06 Graham.Williams\@cmis.csiro.au"; +$M{"localloc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"logic"}="3 May 1997 s.rahtz\@elsevier.co.uk"; +$M{"logo-ps"}="25 Jul 1998 06:24:28 Graham.Williams\@cmis.csiro.au"; +$M{"lollipop"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"longtable"}="21 Jun 1996 08:12:11 Graham.Williams\@cmis.csiro.au"; +$M{"lscape"}="7 Nov 1996 19:36:31 Graham.Williams\@cmis.csiro.au"; +$M{"lshort-english"}="21 Jan 1999 19:27:28 Graham.Williams\@cmis.csiro.au"; +$M{"lshort-finnish"}="21 Jan 1999 19:12:55 Graham.Williams\@cmis.csiro.au"; +$M{"lshort-french"}="5 Feb 1998 09:10:02 Graham.Williams\@cmis.csiro.au"; +$M{"lshort-german"}="30 Jan 1999 07:28:37 Graham.Williams\@cmis.csiro.au"; +$M{"lshort-mongolian"}="30 Jan 1999 07:28:04 Graham.Williams\@cmis.csiro.au"; +$M{"lshort-polish"}="25 Feb 1999 14:09:31 Graham.Williams\@cmis.csiro.au"; +$M{"lshort-russian"}="13 Oct 1998 09:11:31 Graham.Williams\@cmis.csiro.au"; +$M{"lshort-spanish"}="21 Jan 1999 19:12:55 Graham.Williams\@cmis.csiro.au"; +$M{"ltoh"}="8 Apr 1998 09:41:19 Graham.Williams\@cmis.csiro.au"; +$M{"ltx2rtf"}="28 Dec 1998 09:11:53 Graham.Williams\@cmis.csiro.au"; +$M{"ltx2x"}="26 Jan 1997 10:24:09 Graham.Williams\@cmis.csiro.au"; +$M{"ltxbase"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"ltxinput"}="26 Nov 1996 16:30:38 Graham.Williams\@cmis.csiro.au"; +$M{"ltxmisc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"ltxsrc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"lucida"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"lucold"}="4 Feb 1998 13:23:16 Graham.Williams\@cmis.csiro.au"; +$M{"lw35nfsx"}="28 Jul 1998 05:36:21 Graham.Williams\@cmis.csiro.au"; +$M{"ly1"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"m-pictex"}="24 Feb 1998 13:55:54 Graham.Williams\@cmis.csiro.au"; +$M{"macbibtex"}="7 Nov 1996 13:35:35 Graham.Williams\@cmis.csiro.au"; +$M{"magaz"}="17 Feb 1999 17:33:54 Graham.Williams\@cmis.csiro.au"; +$M{"mailing"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"makeindex"}="23 May 1997 13:18:35 Graham.Williams\@cmis.csiro.au"; +$M{"malayalam"}="23 Jun 1998 15:49:27 Graham.Williams\@cmis.csiro.au"; +$M{"malvern"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"manyfoot"}="28 Dec 1998 09:24:33 Graham.Williams\@cmis.csiro.au"; +$M{"mapcodes"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"maple"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"margbib"}="24 Feb 1998 13:20:27 Graham.Williams\@cmis.csiro.au"; +$M{"marvosym-mac"}="5 Nov 1998 15:47:46 Graham.Williams\@cmis.csiro.au"; +$M{"marvosym"}="21 Jul 1998 05:27:14 Graham.Williams\@cmis.csiro.auy"; +$M{"mathcmd"}="abstract Provides a slightly version of the commands for"; +$M{"mathcmd"}="1 May 1998 16:54:49 Graham.Williams\@cmis.csiro.au"; +$M{"mathcomp"}="10 Sep 1998 18:44:41 Graham.Williams\@cmis.csiro.au"; +$M{"mathematica"}="20 Jan 1998 22:00:24 Graham.Williams\@cmis.csiro.au"; +$M{"mathenv"}="1 May 1998 16:55:25 Graham.Williams\@cmis.csiro.au"; +$M{"mathinst"}="10 Sep 1998 18:54:03 Graham.Williams\@cmis.csiro.au"; +$M{"mathkit"}="4 Feb 1998 13:20:21 Graham.Williams\@cmis.csiro.au"; +$M{"mathpple"}="21 Jan 1999 19:34:23 Graham.Williams\@cmis.csiro.au"; +$M{"mathrsfs"}="27 Mar 1998 05:58:42 Graham.Williams\@cmis.csiro.au"; +$M{"mathtime"}="29 May 1996 10:39:52 Graham.Williams\@cmis.csiro.au"; +$M{"mcite"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"mdwtools"}="16 Jun 1998 10:36:35 Graham.Williams\@cmis.csiro.au"; +$M{"meta-mode"}="1 May 1997 10:10:22 Graham.Williams\@cmis.csiro.au"; +$M{"metapost"}="25 Jun 1996 10:58:40 Graham.Williams\@cmis.csiro.au"; +$M{"method"}="21 Jan 1999 07:58:21 Graham.Williams\@cmis.csiro.au"; +$M{"mex"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"mf-ps"}="4 Feb 1998 13:18:00 Graham.Williams\@cmis.csiro.au"; +$M{"mf-ps"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"mf2pt3"}="2 Jan 1999 21:45:21 Graham.Williams\@cmis.csiro.au"; +$M{"mf2tex"}="3 May 1997 21:09:52 Graham.Williams\@cmis.csiro.au"; +$M{"mff"}="24 Oct 1996 10:27:31 Graham.Williams\@cmis.csiro.au"; +$M{"mff"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"mflogo"}="25 Dec 1996 UV"; +$M{"mfnfss"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"mfpic"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"mftoeps"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"mhs"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"midnight"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"mif2xfig"}="20 Nov 1996 11:23:52 Graham.Williams\@cmis.csiro.au"; +$M{"miktex-axp"}="25 Sep 1997 14:01:19 Graham.Williams\@cmis.csiro.au"; +$M{"miktex"}="23 Feb 1999 16:12:25 Graham.Williams\@cmis.csiro.au"; +$M{"miniltx"}="20 May 1996 10:13:07 Graham.Williams\@cmis.csiro.au"; +$M{"minitoc"}="12 Jan 1997 11:20:36 Graham.Williams\@cmis.csiro.au"; +$M{"mirr"}="12 May 1997 10:27:47 Graham.Williams\@cmis.csiro.au"; +$M{"mirr"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"miscpk"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"mitpress"}="19 Sep 1998 10:11:07 Graham.Williams\@cmis.csiro.au"; +$M{"mkpic"}="2 Jan 1999 21:52:06 Graham.Williams\@cmis.csiro.au"; +$M{"mla"}="28 Apr 1997 09:48:03 Graham.Williams\@cmis.csiro.au"; +$M{"mlbib"}="5 Nov 1996 09:15:29 Graham.Williams\@cmis.csiro.au"; +$M{"mltex"}="28 Dec 1998 09:15:09 Graham.Williams\@cmis.csiro.au"; +$M{"mmtools"}="23 Jul 1997 09:16:45 Graham.Williams\@cmis.csiro.au"; +$M{"mnras"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"modes"}="11 Aug 1998 05:29:08 Graham.Williams\@cmis.csiro.au"; +$M{"monotype"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"monster"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"montex"}="29 Jan 1999 09:53:15 Graham.Williams\@cmis.csiro.au"; +$M{"morehelp"}="19 Feb 1998 09:36:53 Graham.Williams\@cmis.csiro.au"; +$M{"moresize"}="17 Jul 1997 14:08:56 Graham.Williams\@cmis.csiro.au"; +$M{"moreverb"}="29 May 1996 11:58:07 Graham.Williams\@cmis.csiro.au"; +$M{"moreverb"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"morse"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"morse"}="26 Feb 1998 09:08:33 Graham.Williams\@cmis.csiro.au"; +$M{"mpattern"}="30 Sep 1998 11:00:52 Graham.Williams\@cmis.csiro.au"; +$M{"mpfnmark"}="13 Dec 1996 08:30:22 Graham.Williams\@cmis.csiro.au"; +$M{"mpfnmark"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"ms"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"mslapa"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"mslapa"}="12 Jul 1996 10:06:59 Graham.Williams\@cmis.csiro.au"; +$M{"mt11p"}="14 Feb 1997 09:21:04 Graham.Williams\@cmis.csiro.au"; +$M{"mtbe"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"multenum"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"multicol"}="21 Dec 1998 13:35:30 Graham.Williams\@cmis.csiro.au"; +$M{"multido"}="19 Mar 1998 10:41:51 Graham.Williams\@cmis.csiro.au"; +$M{"multirow"}="25 Nov 1998 06:06:17 Graham.Williams\@cmis.csiro.au"; +$M{"multitoc"}="8 Sep 1998 05:46:30 Graham.Williams\@cmis.csiro.au"; +$M{"musictex"}="27 Nov 1996 13:59:30 Graham.Williams\@cmis.csiro.au"; +$M{"musixtex"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"mxedruli"}="25 Jul 1998 06:28:00 Graham.Williams\@cmis.csiro.au"; +$M{"mylatex"}="1 May 1998 17:00:39 Graham.Williams\@cmis.csiro.au"; +$M{"myletter"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"nassflow"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"natbib"}="17 Jul 1998 16:12:29 Graham.Williams\@cmis.csiro.au"; +$M{"nb4latex"}="21 Nov 1996 16:56:44 Graham.Williams\@cmis.csiro.au"; +$M{"nccfoots"}="28 Dec 1998 09:25:59 Graham.Williams\@cmis.csiro.au"; +$M{"ncctools"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"netpbm-win"}="10 Sep 1998 18:37:04 Graham.Williams\@cmis.csiro.au"; +$M{"newsletr"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"newthm"}="abstract A version of the theorem-style which provides"; +$M{"newthm"}="14 Feb 1997 09:30:36 Graham.Williams\@cmis.csiro.au"; +$M{"newthm"}="13 May 1997 10:24:58 Robin Fairbairns "; +$M{"niceframe"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"nomencl"}="27 May 1997 09:24:37 Graham.Williams\@cmis.csiro.au"; +$M{"norbib"}="2 Jul 1998 12:55:09 Graham.Williams\@cmis.csiro.au"; +$M{"nrc"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"ntemacs"}="19 Oct 1998 06:03:28 Graham.Williams\@cmis.csiro.au"; +$M{"ntgclass"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"ntheorem"}="11 Dec 1998 05:44:07 Graham.Williams\@cmis.csiro.au"; +$M{"numline"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"numline"}="28 May 1996 16:02:33 Graham.Williams\@cmis.csiro.au"; +$M{"objectz"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"oca"}="3 May 1997 s.rahtz\@elsevier.co.uk"; +$M{"ocr-a"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"ocr-a"}="18 May 1996 14:10:28 Graham.Williams\@cmis.csiro.au"; +$M{"ocr-b"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"ocr-b"}="18 May 1996 14:10:28 Graham.Williams\@cmis.csiro.au"; +$M{"ogham"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"ogonek"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"oldstyle"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"omega"}="11 Feb 1998 08:05:12 Graham.Williams\@cmis.csiro.au"; +$M{"omegabase"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"omegafonts"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"onepagem"}="18 Jul 1997 14:23:48 Graham.Williams\@cmis.csiro.au"; +$M{"oryia"}="1 Jul 1998 10:29:59 Graham.Williams\@cmis.csiro.au"; +$M{"os2tex"}="3 Jan 1999 10:42:23 Graham.Williams\@cmis.csiro.au"; +$M{"osmanian"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"ot2cyr"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"overcite"}="15 Dec 1996 19:11:52 Graham.Williams\@cmis.csiro.au"; +$M{"overpic"}="27 Nov 1997 17:00:55 Graham.Williams\@cmis.csiro.au"; +$M{"overword"}="13 Dec 1996 08:37:08 Graham.Williams\@cmis.csiro.au"; +$M{"overword"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"oxford"}="11 Jan 1998 20:39:42 Graham.Williams\@cmis.csiro.au"; +$M{"oztex-german"}="25 Mar 1998 09:10:39 Graham.Williams\@cmis.csiro.au"; +$M{"oztex"}="27 Dec 1998 20:16:46 Graham.Williams\@cmis.csiro.au"; +$M{"pageno"}="23 Sep 1998 09:40:33 Graham.Williams\@cmis.csiro.au"; +$M{"pandey"}="30 Sep 1998 07:56:09 Graham.Williams\@cmis.csiro.au"; +$M{"pandora"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"paper"}="20 May 1996 06:33:20 Graham.Williams\@cmis.csiro.au"; +$M{"paradissa"}="14 Jun 1996 16:18:31 Graham.Williams\@cmis.csiro.au"; +$M{"paralist"}="21 Jan 1999 19:49:45 Graham.Williams\@cmis.csiro.au"; +$M{"patch"}="3 May 1997 s.rahtz\@elsevier.co.uk"; +$M{"path"}="25 Jun 1996 09:13:30 Graham.Williams\@cmis.csiro.au"; +$M{"pawpict"}="10 Feb 1998 09:32:45 Graham.Williams\@cmis.csiro.au"; +$M{"pb-diagram"}="30 Nov 1998 13:48:18 Graham.Williams\@cmis.csiro.au"; +$M{"pcfonts"}="21 Oct 1996 13:32:14 Graham.Williams\@cmis.csiro.au"; +$M{"pdcmac"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"pdftex-djgpp"}="23 Feb 1998 15:51:42 Graham.Williams\@cmis.csiro.au"; +$M{"pdftex"}="13 Aug 1998 05:51:13 Graham.Williams\@cmis.csiro.au"; +$M{"permute"}="28 Dec 1998 09:09:59 Graham.Williams\@cmis.csiro.au"; +$M{"pf2afm"}="18 Jun 1998 10:13:25 Graham.Williams\@cmis.csiro.au"; +$M{"phonetic"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"phppcf"}="14 Jun 1996 12:35:55 Graham.Williams\@cmis.csiro.au"; +$M{"physe"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"phyzzx"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"pictex"}="24 Feb 1998 13:53:44 Graham.Williams\@cmis.csiro.au"; +$M{"piff"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"piq"}="ctan fonts/okuda//"; +$M{"piq"}="17 Nov 1996 11:28:28 Graham.Williams\@cmis.csiro.au"; +$M{"pkfind"}=" utility to understand those specials, and to act"; +$M{"pkfind"}="3 Mar 1998 15:39:16 Graham.Williams\@cmis.csiro.au"; +$M{"pl-mf"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"pl-mf"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"pl-qx"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"pl"}="25 Feb 1998, s.rahtz\@elsevier.co.uk"; +$M{"plainmisc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"plaintex"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"plari"}="6 Nov 1998 06:24:51 Graham.Williams\@cmis.csiro.au"; +$M{"platex"}="18 Jun 1998 10:22:09 Graham.Williams\@cmis.csiro.au"; +$M{"plcalendar"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"plfonts"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"plgraph"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"plpsfont"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"pmcstex"}="27 Nov 1997 17:12:37 Graham.Williams\@cmis.csiro.au"; +$M{"pmgraph"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"poligraf"}="17 Nov 1996 11:34:19 Graham.Williams\@cmis.csiro.au"; +$M{"poligraf"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"poligraf"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"polish"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"polyglot"}="12 Sep 1997 10:32:34 Graham.Williams\@cmis.csiro.au"; +$M{"ppchtex"}="15 Jan 1997 09:54:55 Graham.Williams\@cmis.csiro.au"; +$M{"prelim2e"}="10 Aug 1998 09:16:01 Graham.Williams\@cmis.csiro.au"; +$M{"prettyref"}="29 Jul 1998 05:41:53 Graham.Williams\@cmis.csiro.au"; +$M{"progkeys"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"program"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"proofs"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"prv"}="11 Dec 1998 05:33:29 Graham.Williams\@cmis.csiro.au"; +$M{"ps_conv"}="17 Nov 1996 11:34:19 Graham.Williams\@cmis.csiro.au"; +$M{"ps_view"}="25 Jun 1998 staw\@gust.org.pl"; +$M{"psfig"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"psfixbb"}="23 Jun 1998 15:54:54 Graham.Williams\@cmis.csiro.au"; +$M{"psfont"}="1 Jul 1996 21:00:54 Graham.Williams\@cmis.csiro.au"; +$M{"psfonts"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"psfrag"}="24 Jun 1998 12:56:59 Graham.Williams\@cmis.csiro.au"; +$M{"psizzl"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"pslatex"}="2 Aug 1996 12:28:03 Graham.Williams\@cmis.csiro.au"; +$M{"pslatex"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"psmerge"}="1 Nov 1996 08:12:01 Graham.Williams\@cmis.csiro.au"; +$M{"psnfss"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"psnfss"}="24 Apr 1997 16:16:14 Graham.Williams\@cmis.csiro.au"; +$M{"psnfssx"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"pspicture"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"pstotext"}="31 Oct 1996 13:39:09 Graham.Williams\@cmis.csiro.au"; +$M{"pstricks"}="30 May 1996 11:20:11 Graham.Williams\@cmis.csiro.au"; +$M{"punk"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"qfig"}="24 Jul 1998 06:25:39 Graham.Williams\@cmis.csiro.au"; +$M{"qfonts"}="18 Jun 1998 10:17:31 Graham.Williams\@cmis.csiro.au"; +$M{"qobitree"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"qsymbols"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"quotchap"}="24 Feb 1998 13:20:08 Graham.Williams\@cmis.csiro.au"; +$M{"quotes"}="1 May 1998 16:55:48 Graham.Williams\@cmis.csiro.au"; +$M{"r-und-s"}="3 Jul 1997 08:10:21 Graham.Williams\@cmis.csiro.au"; +$M{"ragged2e"}="10 Aug 1998 09:09:43 Graham.Williams\@cmis.csiro.au"; +$M{"rail"}="1 Oct 1998 07:36:00 Graham.Williams\@cmis.csiro.au"; +$M{"rangecite"}="28 May 1996 16:31:55 Graham.Williams\@cmis.csiro.au"; +$M{"rawfonts"}="6 Jun 1997 11:32:53 Graham.Williams\@cmis.csiro.au"; +$M{"rawprint"}="21 Oct 1996 13:50:40 Graham.Williams\@cmis.csiro.au"; +$M{"rcsinfo"}="25 Feb 1999 11:36:47 Graham.Williams\@cmis.csiro.au"; +$M{"realcalc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"recipe"}="26 Nov 1996 16:28:13 Graham.Williams\@cmis.csiro.au"; +$M{"refcheck"}="12 May 1997 10:18:04 Graham.Williams\@cmis.csiro.au"; +$M{"refman"}="1 Jun 1998 12:05:47 Graham.Williams\@cmis.csiro.au"; +$M{"relenc"}="23 Feb 1999 16:14:26 Graham.Williams\@cmis.csiro.au"; +$M{"remreset"}="7 Oct 1997 08:58:13 Graham.Williams\@cmis.csiro.au"; +$M{"repeat"}="5 Jan 1999 08:27:22 Graham.Williams\@cmis.csiro.au"; +$M{"revnum"}="3 Mar 1998 15:31:13 Graham.Williams\@cmis.csiro.au"; +$M{"revtex"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"revtex"}="31 Oct 1996 13:44:58 Graham.Williams\@cmis.csiro.au"; +$M{"rlepsf"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"rmpage"}="5 Feb 1998 14:07:37 Graham.Williams\@cmis.csiro.au"; +$M{"romaniantex"}="15 Nov 1996 14:57:19 Graham.Williams\@cmis.csiro.au"; +$M{"romanneg"}="19 Apr 1998 15:22:21 Graham.Williams\@cmis.csiro.au"; +$M{"rotating"}="12 Jun 1996 06:45:47 Graham.Williams\@cmis.csiro.au"; +$M{"rplain"}="23 Sep 1998 09:45:08 Graham.Williams\@cmis.csiro.au"; +$M{"rsfs-ps"}="25 Apr 1998 06:14:30 Graham.Williams\@cmis.csiro.au"; +$M{"rsfs"}="12 Jun 1996 06:57:19 Graham.Williams\@cmis.csiro.au"; +$M{"ruhyphen"}="8 Oct 1998 11:53:41 Graham.Williams\@cmis.csiro.au"; +$M{"ruler"}="22 May 1996 16:04:57 Graham.Williams\@cmis.csiro.au"; +$M{"s2latex"}="7 Jun 1996 20:13:54 Graham.Williams\@cmis.csiro.au"; +$M{"saferef"}="4 Feb 1997 09:57:44 Graham.Williams\@cmis.csiro.au"; +$M{"sanskrit"}="19 Mar 1997 12:03:33 Graham.Williams\@cmis.csiro.au"; +$M{"sauter"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"sauterfonts"}="12 Nov 1998 20:16:14 Graham.Williams\@cmis.csiro.au"; +$M{"scale"}="6 Nov 1998 06:19:58 Graham.Williams\@cmis.csiro.au"; +$M{"scalefnt"}="7 Oct 1997 08:58:13 Graham.Williams\@cmis.csiro.au"; +$M{"schedule"}="18 Feb 1998 10:30:16 Graham.Williams\@cmis.csiro.au"; +$M{"script"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"section"}="1 May 1998 17:01:43 Graham.Williams\@cmis.csiro.au"; +$M{"sectsty"}="13 Dec 1998 05:29:30 Graham.Williams\@cmis.csiro.au"; +$M{"semantic"}="13 May 1996 06:13:26 Graham.Williams\@cmis.csiro.au"; +$M{"seminar"}="28 May 1996 16:32:44 Graham.Williams\@cmis.csiro.au"; +$M{"setspace"}="27 Nov 1998 09:26:04 Graham.Williams\@cmis.csiro.au"; +$M{"sfg"}="8 Jul 1998 09:15:14 Graham.Williams\@cmis.csiro.au"; +$M{"sfheaders"}="17 Feb 1998 09:11:27 Graham.Williams\@cmis.csiro.au"; +$M{"shadbox"}="5 Aug 1996 12:14:57 Graham.Williams\@cmis.csiro.au"; +$M{"shadbox"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"shadethm"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"shading"}="24 Sep 1996 08:55:09 Graham.Williams\@cmis.csiro.au"; +$M{"shadow"}="21 Oct 1996 10:39:52 Graham.Williams\@cmis.csiro.au"; +$M{"shalom"}="30 May 1996 11:22:14 Graham.Williams\@cmis.csiro.au"; +$M{"shapepar"}="3 Jul 1996 15:23:38 Graham.Williams\@cmis.csiro.au"; +$M{"shhyphl"}="7 Jan 1999 07:27:53 Graham.Williams\@cmis.csiro.au"; +$M{"shortlst"}="29 Nov 1998 18:20:51 Graham.Williams\@cmis.csiro.au"; +$M{"shorttoc"}="22 Jul 1998 06:07:50 Graham.Williams\@cmis.csiro.au"; +$M{"showdim"}="30 Jul 1998 05:30:48 Graham.Williams\@cmis.csiro.au"; +$M{"showlabels"}="23 Feb 1999 13:56:22 Graham.Williams\@cmis.csiro.au"; +$M{"siam"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"sidecap"}="6 Nov 1998 06:07:25 Graham.Williams\@cmis.csiro.au"; +$M{"siggraph"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"simpsons"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"sinhala"}="31 Oct 1996 09:54:37 Graham.Williams\@cmis.csiro.au"; +$M{"sirlin"}="16 Aug 1996 14:13:00 Graham.Williams\@cmis.csiro.au"; +$M{"siunits"}="23 Jan 1999 05:00:33 Graham.Williams\@cmis.csiro.au"; +$M{"slashbox"}="20 Feb 1998 14:26:38 Graham.Williams\@cmis.csiro.au"; +$M{"slashed"}="11 Feb 1998 07:48:41 Graham.Williams\@cmis.csiro.au"; +$M{"slidenotes"}="16 Dec 1998 08:33:45 Graham.Williams\@cmis.csiro.au"; +$M{"slides"}="17 Jun 1997 20:12:00 Graham.Williams\@cmis.csiro.au"; +$M{"smallcap"}="28 May 1996 15:57:18 Graham.Williams\@cmis.csiro.au"; +$M{"smallcap"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"smartmn"}="5 Nov 1996 09:14:21 Graham.Williams\@cmis.csiro.au"; +$M{"sobolev"}="1 May 1998 16:56:12 Graham.Williams\@cmis.csiro.au"; +$M{"somedefs"}="12 Aug 1998 06:35:40 Graham.Williams\@cmis.csiro.au"; +$M{"songbook"}="30 Jun 1998 10:54:02 Graham.Williams\@cmis.csiro.au"; +$M{"sorhyph"}="12 May 1997 10:30:15 Graham.Williams\@cmis.csiro.au"; +$M{"soul"}="21 Jan 1999 19:15:44 Graham.Williams\@cmis.csiro.au"; +$M{"spanish"}="21 May 1996 13:04:45 Graham.Williams\@cmis.csiro.au"; +$M{"spanishb"}="5 Oct 1998 11:43:25 Graham.Williams\@cmis.csiro.au"; +$M{"sphack"}="28 May 1998 16:16:55 Graham.Williams\@cmis.csiro.au"; +$M{"sprite"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"ssqquote"}="25 Dec 1996 UV"; +$M{"startex"}="21 Oct 1996 14:23:19 Graham.Williams\@cmis.csiro.au"; +$M{"startex"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"stdclsdv"}="21 Jan 1999 12:51:23 Graham.Williams\@cmis.csiro.au"; +$M{"stmaryrd-ps"}="25 Jul 1998 06:01:40 Graham.Williams\@cmis.csiro.au"; +$M{"stmaryrd"}="25 Apr 1998 06:19:27 Graham.Williams\@cmis.csiro.au"; +$M{"subeqn"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"supertabular"}="7 Oct 1997 09:01:35 Graham.Williams\@cmis.csiro.au"; +$M{"swift"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"syngen"}="19 Nov 1996 08:42:42 Graham.Williams\@cmis.csiro.au"; +$M{"synttree"}="12 Aug 1998 06:13:18 Graham.Williams\@cmis.csiro.au"; +$M{"t2"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"tabbing"}="10 Feb 1998 12:54:11 Graham.Williams\@cmis.csiro.au"; +$M{"tabls"}="15 Dec 1996 19:17:27 Graham.Williams\@cmis.csiro.au"; +$M{"tap"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"tap"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"taylor"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"tbe"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"tcvn"}="21 Jan 1999 19:18:03 Graham.Williams\@cmis.csiro.au"; +$M{"tcx"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"tds"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"techexplorer"}="19 Aug 1998 07:13:20 Graham.Williams\@cmis.csiro.au"; +$M{"tengwar"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"tensind"}="18 Jun 1998 10:06:41 Graham.Williams\@cmis.csiro.au"; +$M{"tensor"}="7 Jun 1996 08:52:37 Graham.Williams\@cmis.csiro.au"; +$M{"termcal"}="14 Jan 1997 10:10:12 Graham.Williams\@cmis.csiro.au"; +$M{"tetex"}="11 Jun 1997 19:22:32 Graham.Williams\@cmis.csiro.au"; +$M{"tex-math"}="8 Jul 1996 14:14:25 Graham.Williams\@cmis.csiro.au"; +$M{"tex-ps"}="09 Jun 1998 staw\@gust.org.pl"; +$M{"tex2bib"}="27 Jan 1998 16:50:26 Graham.Williams\@cmis.csiro.au"; +$M{"tex2html"}="29 Jan 1998 09:10:30 Graham.Williams\@cmis.csiro.au"; +$M{"tex2ltx"}="28 Oct 1998 11:56:39 Graham.Williams\@cmis.csiro.au"; +$M{"tex2rtf"}="25 Jun 1996 08:56:43 Graham.Williams\@cmis.csiro.au"; +$M{"tex4ht"}="23 Oct 1998 05:35:34 Graham.Williams\@cmis.csiro.au"; +$M{"tex98"}="12 Aug 1998 06:09:09 Graham.Williams\@cmis.csiro.au"; +$M{"texdraw"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"texed"}="11 Nov 1998 05:47:04 Graham.Williams\@cmis.csiro.au"; +$M{"texi2html"}="3 Feb 1999 10:27:21 Graham.Williams\@cmis.csiro.au"; +$M{"texi2www"}="2 Jul 1996 10:33:31 Graham.Williams\@cmis.csiro.au"; +$M{"texinfo"}="3 Feb 1999 10:28:52 Graham.Williams\@cmis.csiro.au"; +$M{"texip"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"texlist"}="31 Jan 1999 07:36:23 Graham.Williams\@cmis.csiro.au"; +$M{"texperf"}="16 Aug 1996 14:08:55 Graham.Williams\@cmis.csiro.au"; +$M{"texshell32"}="28 Mar 1998 07:07:28 Graham.Williams\@cmis.csiro.au"; +$M{"texsis"}="27 Jan 1998 16:44:10 Graham.Williams\@cmis.csiro.au"; +$M{"texsk"}="7 Mar 1997 16:53:45 Graham.Williams\@cmis.csiro.au"; +$M{"text1"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"textcase"}="11 Feb 1998 07:49:12 Graham.Williams\@cmis.csiro.au"; +$M{"textfit"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"textmerg"}="31 May 1996 08:43:05 Graham.Williams\@cmis.csiro.au"; +$M{"textoolspro"}=" LaTeX- code, so you can write sections in a"; +$M{"textoolspro"}="21 Jan 1999 13:03:19 Graham.Williams\@cmis.csiro.au"; +$M{"textpos"}="23 Feb 1999 13:54:56 Graham.Williams\@cmis.csiro.au"; +$M{"tfmpk"}="16 Dec 1998 08:30:00 Graham.Williams\@cmis.csiro.au"; +$M{"thesis"}="20 May 1996 10:22:19 Graham.Williams\@cmis.csiro.au"; +$M{"threed"}="13 Apr 1998 06:37:38 Graham.Williams\@cmis.csiro.au"; +$M{"threeparttable"}="15 Dec 1996 19:16:24 Graham.Williams\@cmis.csiro.au"; +$M{"thumb"}="10 Feb 1998 09:34:21 Graham.Williams\@cmis.csiro.au"; +$M{"thumbpdf"}="17 Feb 1999 16:50:56 Graham.Williams\@cmis.csiro.au"; +$M{"tiff"}="11 Nov 1998 05:43:39 Graham.Williams\@cmis.csiro.au"; +$M{"tiff2ps"}="06 May 1998 staw\@gust.org.pl"; +$M{"time"}="7 Jun 1996 09:04:45 Graham.Williams\@cmis.csiro.au"; +$M{"times"}="28 May 1997 16:25:37 Graham.Williams\@cmis.csiro.au"; +$M{"timesht"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"timing"}="3 May 1997 s.rahtz\@elsevier.co.uk"; +$M{"tipa"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"titlefoot"}="18 Mar 1998 09:30:36 Graham.Williams\@cmis.csiro.au"; +$M{"titleref"}="15 Dec 1996 19:19:50 Graham.Williams\@cmis.csiro.au"; +$M{"titlesec"}="23 Feb 1999 14:58:36 Graham.Williams\@cmis.csiro.au"; +$M{"titletoc"}="23 Feb 1999 14:58:46 Graham.Williams\@cmis.csiro.au"; +$M{"tkbibtex"}="10 Aug 1998 06:27:23 Graham.Williams\@cmis.csiro.au"; +$M{"tmview"}="29 Jun 1998 10:00:32 Graham.Williams\@cmis.csiro.au"; +$M{"tocbibind"}="21 Jan 1999 12:54:08 Graham.Williams\@cmis.csiro.au"; +$M{"tocloft"}="21 Jan 1999 12:57:14 Graham.Williams\@cmis.csiro.au"; +$M{"tocvsec2"}="21 Jan 1999 12:52:58 Graham.Williams\@cmis.csiro.au"; +$M{"toil"}="27 Jan 1998 16:54:47 Graham.Williams\@cmis.csiro.au"; +$M{"toil"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"tools"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"topcapt"}="15 Dec 1996 19:04:36 Graham.Williams\@cmis.csiro.au"; +$M{"tracking"}="5 Aug 1996 12:11:48 Graham.Williams\@cmis.csiro.au"; +$M{"tracking"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"trans"}="17 Nov 1996 11:34:19 Graham.Williams\@cmis.csiro.au"; +$M{"trans"}="08 Feb 1998 staw\@gust.org.pl"; +$M{"transfig"}="8 Jul 1998 09:08:50 Graham.Williams\@cmis.csiro.au"; +$M{"treesvr"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"truncate"}="15 Dec 1996 19:23:52 Graham.Williams\@cmis.csiro.au"; +$M{"tsconfig"}="27 Nov 1996 13:48:24 Graham.Williams\@cmis.csiro.au"; +$M{"ttf2mf"}="25 Nov 1998 05:37:46 Graham.Williams\@cmis.csiro.au"; +$M{"ttf2pk"}="2 Jan 1999 22:03:00 Graham.Williams\@cmis.csiro.au"; +$M{"ttf2tfm"}="2 Jan 1999 22:05:48 Graham.Williams\@cmis.csiro.au"; +$M{"ttftogf"}="19 Sep 1998 08:12:18 Graham.Williams\@cmis.csiro.au"; +$M{"tth-rpm"}="13 Feb 1999 08:51:59 Graham.Williams\@cmis.csiro.au"; +$M{"tth-win"}="10 Sep 1998 18:39:22 Graham.Williams\@cmis.csiro.au"; +$M{"tth"}="27 Mar 1998 12:45:38 Graham.Williams\@cmis.csiro.au"; +$M{"ttt"}="19 Mar 1997 08:34:45 Graham.Williams\@cmis.csiro.au"; +$M{"tubtoc"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"tugboat-toc"}="28 Dec 1998 09:28:11 Graham.Williams\@cmis.csiro.au"; +$M{"tugboat"}="3 May 1997 s.rahtz\@elsevier.co.uk"; +$M{"tugboat"}="3 Jul 1997 08:01:03 Graham.Williams\@cmis.csiro.au"; +$M{"twg-list"}="25 Feb 1998 09:33:34 Graham.Williams\@cmis.csiro.au"; +$M{"twoup"}="19 Mar 1998 10:39:40 Graham.Williams\@cmis.csiro.au"; +$M{"type1"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"type1"}="February 1998, s.rahtz\@elsevier.co.uk"; +$M{"type1cm"}="7 Mar 1997 16:50:06 Graham.Williams\@cmis.csiro.au"; +$M{"type1cm"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"typearea"}="12 Jun 1996 13:18:22 Graham.Williams\@cmis.csiro.au"; +$M{"typehtml"}="27 Nov 1997 17:08:38 Graham.Williams\@cmis.csiro.au"; +$M{"typespec"}="2 Jul 1998 13:03:32 Graham.Williams\@cmis.csiro.au"; +$M{"uaclasses"}="19 Mar 1997 12:05:52 Graham.Williams\@cmis.csiro.au"; +$M{"uaclasses"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"ucthesis"}="abstract A version of the standard \LaTeX{} report style"; +$M{"ukhyph"}="21 Oct 1996 10:37:20 Graham.Williams\@cmis.csiro.au"; +$M{"ulem"}="28 May 1996 16:34:03 Graham.Williams\@cmis.csiro.au"; +$M{"ulsy"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"umlaute"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"umrand"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"underlin"}="13 May 1997 10:24:58 Robin Fairbairns rf\@cl.cam.ac.uk"; +$M{"underscore"}="17 Jul 1998 07:34:04 Graham.Williams\@cmis.csiro.au"; +$M{"uniqleaf"}="2 Aug 1996 12:44:23 Graham.Williams\@cmis.csiro.au"; +$M{"units"}="6 Aug 1998 06:17:29 Graham.Williams\@cmis.csiro.au"; +$M{"universa"}="6 Sep 1998 05:46:31 Graham.Williams\@cmis.csiro.au"; +$M{"url"}="3 Jul 1996 15:23:38 Graham.Williams\@cmis.csiro.au"; +$M{"urw"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"urwstd"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"urwvf"}="5 Feb 1998 09:33:04 Graham.Williams\@cmis.csiro.au"; +$M{"ut-backref"}="10 Nov 1998 10:38:10 Graham.Williams\@cmis.csiro.au"; +$M{"ut-thesis"}="23 Feb 1999 15:02:00 Graham.Williams\@cmis.csiro.au"; +$M{"utorontothesis"}="20 Feb 1998 14:27:24 Graham.Williams\@cmis.csiro.au"; +$M{"utthesis"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"uwthesis"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"vdm"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"vector"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"verbatim"}="29 May 1996 11:58:52 Graham.Williams\@cmis.csiro.au"; +$M{"vertex"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"vfcomb"}="24 Oct 1996 10:25:22 Graham.Williams\@cmis.csiro.au"; +$M{"vfinst"}="10 Sep 1998 18:41:42 Graham.Williams\@cmis.csiro.au"; +$M{"viiptart"}="8 Jul 1998 09:20:53 Graham.Williams\@cmis.csiro.au"; +$M{"vmargin"}="12 Jun 1996 13:14:31 Graham.Williams\@cmis.csiro.au"; +$M{"vncmr"}="19 Jul 1996 08:45:39 Graham.Williams\@cmis.csiro.au"; +$M{"vrb"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"vrsion"}="8 Jul 1998 08:17:05 Graham.Williams\@cmis.csiro.au"; +$M{"vruler"}="24 Oct 1996 11:15:39 Graham.Williams\@cmis.csiro.au"; +$M{"warpcol"}="13 Sep 1998 06:27:36 Graham.Williams\@cmis.csiro.au"; +$M{"wasy-ps"}="25 Jul 1998 06:05:00 Graham.Williams\@cmis.csiro.au"; +$M{"wasy"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"wasy2-ps"}="5 Aug 1998 06:26:09 Graham.Williams\@cmis.csiro.au"; +$M{"wasy2"}="25 Jul 1998 06:18:23 Graham.Williams\@cmis.csiro.au"; +$M{"wasysym"}="5 Jan 1999 07:44:43 Graham.Williams\@cmis.csiro.au"; +$M{"web2c-win32"}="3 Apr 1998 06:38:58 Graham.Williams\@cmis.csiro.au"; +$M{"web2c"}="20 Mar 1998 09:27:08 Graham.Williams\@cmis.csiro.au"; +$M{"williams"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"win95-guide"}="12 Apr 1998 20:46:26 Graham.Williams\@cmis.csiro.au"; +$M{"windvi"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"winedt"}="2 Jul 1998 13:00:44 Graham.Williams\@cmis.csiro.au"; +$M{"winemtex"}="3 Aug 1998 18:15:29 Graham.Williams\@cmis.csiro.au"; +$M{"winshell"}="21 Nov 1998 05:34:40 Graham.Williams\@cmis.csiro.au"; +$M{"wmf2eps"}="12 Nov 1998 20:15:28 Graham.Williams\@cmis.csiro.au"; +$M{"wnri"}="30 Jun 1998 10:56:34 Graham.Williams\@cmis.csiro.au"; +$M{"wntamil"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"word2x"}="29 Apr 1997 14:47:38 Graham.Williams\@cmis.csiro.au"; +$M{"wp-conv"}="1 Aug 1998 05:39:06 Graham.Williams\@cmis.csiro.au"; +$M{"wp2latex"}="23 Sep 1998 05:24:28 Graham.Williams\@cmis.csiro.au"; +$M{"wsuipa"}="13 Aug 1998 05:27:18 Graham.Williams\@cmis.csiro.au"; +$M{"wtex95"}="24 Feb 1998 14:01:24 Graham.Williams\@cmis.csiro.au"; +$M{"xdvi"}="28 Jun 1996 10:08:55 Graham.Williams\@cmis.csiro.au"; +$M{"xdvik"}="6 Apr 1998 05:53:45 Graham.Williams\@cmis.csiro.au"; +$M{"xfig"}="8 Jul 1998 09:08:50 Graham.Williams\@cmis.csiro.au"; +$M{"xtab"}="21 Oct 1998 09:32:30 Graham.Williams\@cmis.csiro.au"; +$M{"xtcapts"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"xtem"}="27 Nov 1997 17:13:37 Graham.Williams\@cmis.csiro.au"; +$M{"xymtex"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"xypic"}="21 Nov 1998 05:35:39 Graham.Williams\@cmis.csiro.au"; +$M{"yannisgr"}="25 Feb 1998 s.rahtz\@elsevier.co.uk"; +$M{"yfonts"}="27 Jan 1999 08:26:02 Graham.Williams\@cmis.csiro.au"; +$M{"yhmath"}="16 May 1996 s.rahtz\@elsevier.co.uk"; +$M{"yi4latex"}="22 Feb 1999 s.rahtz\@elsevier.co.uk"; +$M{"youngtab"}="29 Jun 1998 10:06:42 Graham.Williams\@cmis.csiro.au"; +$M{"yplan99"}="11 Dec 1998 05:45:33 Graham.Williams\@cmis.csiro.au"; +$M{"ytex"}="12 Apr 1997 s.rahtz\@elsevier.co.uk"; +$M{"zefonts"}="30 Sep 1998 07:50:57 Graham.Williams\@cmis.csiro.au"; +1; diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/nocites.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/nocites.tex new file mode 100644 index 00000000000..759b379f30e --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/nocites.tex @@ -0,0 +1,557 @@ +\nocite{a0poster} +\nocite{aaai} +\nocite{abstyles} +\nocite{accfonts} +\nocite{achemso} +\nocite{acronym} +\nocite{adfathesis} +\nocite{adobeother} +\nocite{adobestd} +\nocite{adrlist} +\nocite{ae} +\nocite{aguplus} +\nocite{aiaa} +\nocite{akletter} +\nocite{alatex} +\nocite{algorithms} +\nocite{alg} +\nocite{alphaev5-osf4.0d} +\nocite{altfont} +\nocite{amsfonts} +\nocite{amslatex} +\nocite{amstex} +\nocite{answers} +\nocite{antyktor} +\nocite{apa} +\nocite{apl} +\nocite{appendix} +\nocite{arabtex} +\nocite{arydshln} +\nocite{ar} +\nocite{asaetr} +\nocite{ascii} +\nocite{astro} +\nocite{aurora} +\nocite{authorindex} +\nocite{autotab} +\nocite{babel} +\nocite{backgammon} +\nocite{bakoma} +\nocite{barcode2} +\nocite{barcodes} +\nocite{barr} +\nocite{bbding} +\nocite{bbm} +\nocite{bbold} +\nocite{bbtbase} +\nocite{bbtdoc} +\nocite{beebe} +\nocite{belleek} +\nocite{beton} +\nocite{bez123} +\nocite{bezos} +\nocite{bibarts} +\nocite{biblist} +\nocite{bluesky} +\nocite{blue} +\nocite{booktabs} +\nocite{borceux} +\nocite{bosisio} +\nocite{bridge} +\nocite{brushscr} +\nocite{c-pascal} +\nocite{calendar} +\nocite{calligra} +\nocite{calrsfs} +\nocite{camel} +\nocite{caption} +\nocite{carlisle} +\nocite{casyl} +\nocite{catalog} +\nocite{cbgreek} +\nocite{cc-pl} +\nocite{ccaption} +\nocite{ccfonts} +\nocite{cchess} +\nocite{cdcover} +\nocite{cellular} +\nocite{changebar} +\nocite{chemcono} +\nocite{chemsym} +\nocite{cheq} +\nocite{cherokee} +\nocite{chess} +\nocite{china2e} +\nocite{circ} +\nocite{cirth} +\nocite{cite} +\nocite{cjk} +\nocite{cmbright} +\nocite{cmcyralt} +\nocite{cmcyr} +\nocite{cmdtrack} +\nocite{cmextra} +\nocite{cmpica} +\nocite{cmpk} +\nocite{cmsd} +\nocite{cm} +\nocite{codepage} +\nocite{colorsep} +\nocite{colortab} +\nocite{comment} +\nocite{concmath} +\nocite{concrete} +\nocite{context} +\nocite{covington} +\nocite{croatian} +\nocite{crop} +\nocite{crossword} +\nocite{crosswrd} +\nocite{csfonts} +\nocite{cslatex} +\nocite{csplain} +\nocite{cspsfonts} +\nocite{cstug} +\nocite{cursor} +\nocite{curves} +\nocite{custom-bib} +\nocite{cyrillic} +\nocite{dancers} +\nocite{deleq} +\nocite{devanagari} +\nocite{dialogl} +\nocite{dinbrief} +\nocite{directory} +\nocite{dotseqn} +\nocite{draftcopy} +\nocite{dratex} +\nocite{dropping} +\nocite{dstroke} +\nocite{dtk} +\nocite{duerer} +\nocite{dvipdfm} +\nocite{dvipsbase} +\nocite{dvipsdoc} +\nocite{ean} +\nocite{easy} +\nocite{ecc} +\nocite{ecltree} +\nocite{eco} +\nocite{ecpk} +\nocite{ec} +\nocite{edmac} +\nocite{eepic} +\nocite{egplot} +\nocite{eiad} +\nocite{eijkhout} +\nocite{elsevier} +\nocite{elvish} +\nocite{emp} +\nocite{emulateapj} +\nocite{encodings} +\nocite{endfloat} +\nocite{engwar} +\nocite{envbig} +\nocite{envlab} +\nocite{epigraph} +\nocite{eplain} +\nocite{eqname} +\nocite{eqnarray} +\nocite{esieecv} +\nocite{etexbase} +\nocite{etruscan} +\nocite{euler} +\nocite{euro2} +\nocite{eurofont} +\nocite{europs} +\nocite{eurosans} +\nocite{eurosym} +\nocite{euro} +\nocite{euxm} +\nocite{examdesign} +\nocite{exam} +\nocite{expdlist} +\nocite{expl3} +\nocite{export} +\nocite{fancybox} +\nocite{fancyhdr} +\nocite{fancyref} +\nocite{fancyvrb} +\nocite{fax} +\nocite{fc} +\nocite{feynmf} +\nocite{finbib} +\nocite{floatfig} +\nocite{floatflt} +\nocite{float} +\nocite{fltpage} +\nocite{fncychap} +\nocite{foilhtml} +\nocite{foiltex} +\nocite{fontinst} +\nocite{fontname} +\nocite{footbib} +\nocite{footmisc} +\nocite{footnpag} +\nocite{formats} +\nocite{formula} +\nocite{fp} +\nocite{frankenstein} +\nocite{french} +\nocite{fribrief} +\nocite{fullblck} +\nocite{fullpict} +\nocite{fundus} +\nocite{futhark} +\nocite{g-brief} +\nocite{gb4e} +\nocite{genealogy} +\nocite{general} +\nocite{genmisc} +\nocite{geometry} +\nocite{geomsty} +\nocite{german} +\nocite{germbib} +\nocite{germdoc} +\nocite{gloss} +\nocite{gn-logic} +\nocite{gothic} +\nocite{go} +\nocite{graphics} +\nocite{greek6cbc} +\nocite{grnumalt} +\nocite{grtimes} +\nocite{guides} +\nocite{gustlib} +\nocite{hands} +\nocite{hanging} +\nocite{harpoon} +\nocite{harvard} +\nocite{harvmac} +\nocite{hh} +\nocite{hilowres} +\nocite{histogr} +\nocite{hoekwater} +\nocite{hppa1.1-hpux10.10} +\nocite{html} +\nocite{hvmaths} +\nocite{hyperref} +\nocite{hyper} +\nocite{hyphenat} +\nocite{hyphen} +\nocite{i386-linux-libc5} +\nocite{i386-linux} +\nocite{ibm} +\nocite{ieeepes} +\nocite{ifacmtg} +\nocite{imac} +\nocite{indxcite} +\nocite{info} +\nocite{ini} +\nocite{insbox} +\nocite{ipa} +\nocite{isostds} +\nocite{jadetex} +\nocite{jhep} +\nocite{jknappen} +\nocite{jsmisc} +\nocite{jura} +\nocite{kalender} +\nocite{karnaugh} +\nocite{kdgreek} +\nocite{kluwer} +\nocite{knuth} +\nocite{koma-script} +\nocite{kuvio} +\nocite{labels} +\nocite{lamstex} +\nocite{lastpage} +\nocite{latexfonts} +\nocite{layouts} +\nocite{leaflet} +\nocite{leftidx} +\nocite{lettrine} +\nocite{levy} +\nocite{lgc} +\nocite{lgreek} +\nocite{lhcyr} +\nocite{lh} +\nocite{lineno} +\nocite{linguex} +\nocite{listings} +\nocite{lkort} +\nocite{localloc} +\nocite{logic} +\nocite{lollipop} +\nocite{ltablex} +\nocite{ltx2rtf} +\nocite{ltxbase} +\nocite{ltxdoc} +\nocite{ltxmisc} +\nocite{lucida} +\nocite{ly1} +\nocite{mailing} +\nocite{makeindex} +\nocite{malayalam} +\nocite{malvern} +\nocite{mapcodes} +\nocite{maple} +\nocite{margbib} +\nocite{marvosym} +\nocite{mathcomp} +\nocite{mathematica} +\nocite{mathpple} +\nocite{mcite} +\nocite{mdwtools} +\nocite{metasupp} +\nocite{method} +\nocite{mex} +\nocite{mff} +\nocite{mflogo} +\nocite{mfmisc} +\nocite{mfnfss} +\nocite{mfpic} +\nocite{mftoeps} +\nocite{mft} +\nocite{mhs} +\nocite{midnight} +\nocite{minitoc} +\nocite{mips-irix6.2} +\nocite{misc209} +\nocite{mltex} +\nocite{mnras} +\nocite{monotype} +\nocite{montex} +\nocite{morehelp} +\nocite{moresize} +\nocite{moreverb} +\nocite{morse} +\nocite{mpattern} +\nocite{mpbase} +\nocite{mpfnmark} +\nocite{mslapa} +\nocite{ms} +\nocite{mtbe} +\nocite{multenum} +\nocite{multirow} +\nocite{multi} +\nocite{musictex} +\nocite{musixtex} +\nocite{nassflow} +\nocite{natbib} +\nocite{ncctools} +\nocite{newalg} +\nocite{newlfm} +\nocite{newsletr} +\nocite{newthm} +\nocite{niceframe} +\nocite{nomencl} +\nocite{nrc} +\nocite{ntgclass} +\nocite{ntg} +\nocite{ntheorem} +\nocite{numline} +\nocite{objectz} +\nocite{oca} +\nocite{ocr-a} +\nocite{ogham} +\nocite{ogonek} +\nocite{oldstyle} +\nocite{omegabase} +\nocite{omegafonts} +\nocite{osmanian} +\nocite{ot2cyr} +\nocite{overpic} +\nocite{pacioli} +\nocite{pageno} +\nocite{pandora} +\nocite{paper} +\nocite{paralist} +\nocite{parallel} +\nocite{patch} +\nocite{pawpict} +\nocite{pb-diagram} +\nocite{pdcmac} +\nocite{pdfscreen} +\nocite{pdftex} +\nocite{permute} +\nocite{phoenician} +\nocite{phonetic} +\nocite{physe} +\nocite{phyzzx} +\nocite{picinpar} +\nocite{picins} +\nocite{pictex} +\nocite{piff} +\nocite{pl-qx} +\nocite{plainmisc} +\nocite{plaintex} +\nocite{plari} +\nocite{platex} +\nocite{play} +\nocite{plcalendar} +\nocite{plfonts} +\nocite{plgraph} +\nocite{plpatch} +\nocite{pl} +\nocite{pmgraph} +\nocite{poligraf} +\nocite{polish} +\nocite{polyglot} +\nocite{prettyref} +\nocite{progkeys} +\nocite{program} +\nocite{proofs} +\nocite{protex} +\nocite{psafm} +\nocite{psfig} +\nocite{psfrag} +\nocite{psizzl} +\nocite{pslatex} +\nocite{psnfssx} +\nocite{psnfss} +\nocite{pspicture} +\nocite{pstricks} +\nocite{punk} +\nocite{qfonts} +\nocite{qobitree} +\nocite{qsymbols} +\nocite{quotchap} +\nocite{r-und-s} +\nocite{rcsinfo} +\nocite{rcs} +\nocite{realcalc} +\nocite{refcheck} +\nocite{refman} +\nocite{relenc} +\nocite{revtex} +\nocite{rlepsf} +\nocite{rmpage} +\nocite{rotating} +\nocite{rotfloat} +\nocite{rplain} +\nocite{rs6000-aix4.1.4.0} +\nocite{rsfs} +\nocite{ruhyphen} +\nocite{runic} +\nocite{sanskrit} +\nocite{sauterfonts} +\nocite{scale} +\nocite{schedule} +\nocite{script} +\nocite{sectsty} +\nocite{semantic} +\nocite{seminar} +\nocite{setspace} +\nocite{shadbox} +\nocite{shadethm} +\nocite{shortlst} +\nocite{shorttoc} +\nocite{showdim} +\nocite{showlabels} +\nocite{siam} +\nocite{sidecap} +\nocite{siggraph} +\nocite{simpsons} +\nocite{siunits} +\nocite{slashbox} +\nocite{slidenotes} +\nocite{smallcap} +\nocite{songbook} +\nocite{soul} +\nocite{sparc-solaris2.5.1} +\nocite{sprite} +\nocite{ssqquote} +\nocite{startex} +\nocite{stdclsdv} +\nocite{stmaryrd} +\nocite{subeqnarray} +\nocite{subeqn} +\nocite{subfigure} +\nocite{supertabular} +\nocite{synttree} +\nocite{t2} +\nocite{tabbing} +\nocite{tap} +\nocite{taylor} +\nocite{tbe} +\nocite{tcx} +\nocite{tds} +\nocite{tengwar} +\nocite{tetex} +\nocite{tex-ps} +\nocite{tex4ht} +\nocite{texdraw} +\nocite{texinfo} +\nocite{texip} +\nocite{texlive} +\nocite{texsis} +\nocite{text1} +\nocite{textfit} +\nocite{textmerg} +\nocite{textpos} +\nocite{thesis} +\nocite{threed} +\nocite{thumbpdf} +\nocite{thumb} +\nocite{timesht} +\nocite{timing} +\nocite{tipa} +\nocite{titlefoot} +\nocite{titlesec} +\nocite{tmmaths} +\nocite{tocbibind} +\nocite{tocloft} +\nocite{tocvsec2} +\nocite{tools} +\nocite{tracking} +\nocite{treesvr} +\nocite{treetex} +\nocite{ttf2pk} +\nocite{tugboat} +\nocite{tug} +\nocite{type1cm} +\nocite{type1} +\nocite{typespec} +\nocite{uaclasses} +\nocite{ucthesis} +\nocite{ulsy} +\nocite{umlaute} +\nocite{umrand} +\nocite{underlin} +\nocite{units} +\nocite{universa} +\nocite{uni} +\nocite{unsupported} +\nocite{urwstd} +\nocite{useful} +\nocite{ut-thesis} +\nocite{utthesis} +\nocite{uwthesis} +\nocite{vdm} +\nocite{vector} +\nocite{vertex} +\nocite{vita} +\nocite{vrb} +\nocite{vrsion} +\nocite{warpcol} +\nocite{wasysym} +\nocite{wasy} +\nocite{williams} +\nocite{win32} +\nocite{windvi} +\nocite{wnri} +\nocite{wntamil} +\nocite{wsuipa} +\nocite{xtab} +\nocite{xtcapts} +\nocite{xymtex} +\nocite{xypic} +\nocite{yannisgr} +\nocite{yfonts} +\nocite{yhmath} +\nocite{yi4latex} +\nocite{youngtab} +\nocite{ytex} +\nocite{zed-csp} +\nocite{zefonts} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/picture.tex b/Master/texmf-dist/doc/texlive/texlive-en/archive/picture.tex new file mode 100644 index 00000000000..098cfe18f10 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/picture.tex @@ -0,0 +1,46 @@ +\documentclass{artikel3} +\pagestyle{empty} +\usepackage{pstcol,pst-text,lucidbrb} +\font\manual=manfnt %logo10 doesn't have what we need +\hyphenchar\manual=-1 +\def\MF{{\manual META}\-{\manual FONT}} +\begin{document} +\sffamily +\psset{unit=1mm} +\def\Size#1#2{\fontsize{#1}{#2}\selectfont} +\begin{pspicture}(-58,-58)(58,58) +\pscircle[linewidth=.3pt,linecolor=lightgray]{58} +%\pscircle{23} +\psset{linestyle=none} +% top of circle +\pstextpath[c]{\psarcn(0,0){48}{180}{0}} +{\Size{1.2cm}{1cm}\bfseries \TeX\ Live 4} +\rput(0,34){\begin{minipage}{8cm}\centering \textbf{March 1999}\\[3mm] +\Size{9}{10.5}Ready-to-run \TeX\ system for Linux, Unix (DEC,\\ HP, IBM, +SGI, Sun), and Win32 systems, \\ +based on Web2c 7.3\\ +\end{minipage}} +% bottom of circle +\rput(30,10){\begin{minipage}{2.7cm}\raggedleft\footnotesize +ISO 9660 with Joliet \\and Rock Ridge \\ +extensions\end{minipage}} +\rput(0,-30){\begin{minipage}{7cm}\centering +Macros, fonts, documentation to the\\ +\emph{{\TeX} Directory Structure} standard.\\[2mm] +Editor: Sebastian Rahtz +\end{minipage}} +\pstextpath[c]{\psarc(0,0){45}{180}{0}} +{ +{\Size{14}{14}\ttfamily http://www.tug.org/texlive/} } +\pstextpath[c]{\psarc(0,0){53}{180}{0}} +{\Size{13.2}{14}\bfseries +CSTUG $\bullet$ +Dante e.V. $\bullet$ +GUST $\bullet$ +GUTenberg $\bullet$ +NTG $\bullet$ +TUG $\bullet$ +TUG India $\bullet$ +UK TUG} +\end{pspicture} +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/split.pl b/Master/texmf-dist/doc/texlive/texlive-en/archive/split.pl new file mode 100644 index 00000000000..bca00584335 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/split.pl @@ -0,0 +1,16 @@ +#@TeXIndex{a0poster, +open TMP, ">/dev/null"; +while (<>) { + chop; + if (/\@TeXIndex/) { + print TMP "\n"; + close TMP; + $keep=$_; + s/\@TeXIndex{(.*),.*/$1/; + print "[$_]\n"; + open TMP, ">$_.bib"; + print TMP "$keep\n"; + } + else { print TMP "$_\n" ; } + +} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/status.pl b/Master/texmf-dist/doc/texlive/texlive-en/archive/status.pl new file mode 100644 index 00000000000..28c3d0d6d4c --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/status.pl @@ -0,0 +1,31 @@ +#package: pIq +#license: pd +#(but erasing the headers is not allowed) +#Note that I made the most recent change, but +#Mark Shoulson (shoulson@ctr.columbia.edu) +#wrote the initial version. He should be named +#in the catalogue, too. + +#csuov@csv.warwick.ac.uk +#Subject: cmtt +#To: krab@iesd.auc.dk +#Subject: ftn +#To: inas@MIB.HARZ.DE +#Subject: newthm +#To: reckdahl@leland.stanford.edu +#Subject: epslatex +#To: miktex-bug@ronin.in-berlin.de +#Subject: miktex +#To: de8827@blackjack.usma.edu +#Subject: lated +#To: jdyoung@AFIT.AF.MIL +#Subject: afthesis +#xlwy01@uxp1.hrz.uni-dortmund.de (c2cweb) + +$L{"newlfm"}="free-latex"; +$L{"pacioli"}="gpl"; +$L{"etruscan"}="gpl"; +$L{"phoenician"}="gpl"; +$L{"greek6bc"}="gpl"; +$L{"runic"}="gpl"; +1; diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.bib b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.bib new file mode 100644 index 00000000000..17c75e197b7 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.bib @@ -0,0 +1,235 @@ +@TeXIndex{mips-irix6.2, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for SGI running Irix 6.2}, + status = {free}, + texlive = {systems1} +} + +@TeXIndex{alpha-osf3.2, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for Alpha running OSF 3.2.}, + status = {free}, + texlive = {systems1} +} + +@TeXIndex{alphaev5-osf4.0d, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for Alphaev5 running OSF 4.0d.}, + status = {free}, + texlive = {systems1} +} + +@TeXIndex{alphaev5-osf4.0b, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for Alphaev5 running OSF 4.0b.}, + status = {free}, + texlive = {systems1} +} + +@TeXIndex{bbtbase, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Basic \BibTeX{} support files.}, + status = {free}, + texlive = {bibtex1} +} + +@TeXIndex{bbtdoc, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Basic \BibTeX{} documentation.}, + status = {free}, + texlive = {bibtex2} +} + +@TeXIndex{catalog, + modified = {February 1999, s.rahtz@elsevier.co.uk}, + abstract = {Graham Williams' Catalogue of \TeX{} packages.}, + status = {free}, + texlive = {doc2} +} + +@TeXIndex{cmpk, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Computer Modern fonts in PK format.}, + status = {free}, + texlive = {fonts3} +} + +@TeXIndex{dtk, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Macros for the DANTE publication.}, + status = {free}, + texlive = {latex3} +} + +@TeXIndex{dvipsbase, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Basic support files for dvips.}, + status = {free}, + texlive = {dvips1} +} + +@TeXIndex{general, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Useful general documentation.}, + status = {free}, + texlive = {doc1} +} + +@TeXIndex{guides, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Guides to using \LaTeX, in English, German, French, + Greek and Polish.}, + status = {free}, + texlive = {doc2} +} + +@TeXIndex{hppa1.1-hpux10.10, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for HP running hpux10.10.}, + status = {free}, + texlive = {systems1} +} + +@TeXIndex{hyphen, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Collection of hyphenation patterns.}, + email = {s.rahtz@elsevier.co.uk}, + author = {LaTeX3 Project}, + status = {free}, + texlive = {lang1} +} + +@TeXIndex{i386-linux, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for Intel machines running Linux.}, + status = {free}, + texlive = {systems1} +} + +@TeXIndex{i386-linux-libc5, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for Intel machines + running Linux, with libc5}, + status = {free}, + texlive = {systems1} +} + +@TeXIndex{ini, + modified = {February 1999, s.rahtz@elsevier.co.uk}, + abstract = {Startup files for building formats.}, + status = {free}, + texlive = {texlive1} +} + +@TeXIndex{lgc, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Examples from the \emph{\LaTeX{} Graphics Companion}.}, + status = {free}, + texlive = {doc3} +} + +@TeXIndex{metasupp, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {MetaPost support files.}, + status = {free}, + texlive = {texlive1} +} + +@TeXIndex{mfmisc, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Small support files for \MF.}, + status = {free}, + texlive = {fonts1} +} + +@TeXIndex{mft, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Support files for MFT.}, + status = {free}, + texlive = {texlive1} +} + +@TeXIndex{misc209, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Miscellaneous small macro files for \LaTeX 2.09.}, + status = {free}, + texlive = {latex2} +} + +@TeXIndex{mpbase, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Basic MetaPost support files.}, + status = {free}, + texlive = {metapost1} +} + +@TeXIndex{multi, + modified = {February 1999, s.rahtz@elsevier.co.uk}, + abstract = {dvips header for making n-up pages.}, + status = {free}, + texlive = {dvips3} +} + +@TeXIndex{psafm, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {AFM files for PostScript fonts.}, + status = {free}, + texlive = {fonts3} +} + +@TeXIndex{pspk, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {PK files for common PostScript fonts.}, + status = {free}, + texlive = {fonts3} +} + +@TeXIndex{rs6000-aix4.1, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for RS6000 running AIX 4.1.}, + status = {free}, + texlive = {systems1} +} + +@TeXIndex{rs6000-aix4.1.4.0, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for RS6000 running AIX 4.1.4.0}, + status = {free}, + texlive = {systems1} +} + +@TeXIndex{sparc-solaris2.5.1, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for Sun Sparc running Solaris 2.5.1.}, + status = {free}, + texlive = {systems1} +} + +@TeXIndex{texlive, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Basic material for \TeXLive{}.}, + status = {free}, + texlive = {texlive1} +} + +@TeXIndex{tug, + modified = {February 1999, s.rahtz@elsevier.co.uk}, + abstract = {\TeX\ Users Group information.}, + status = {free}, + texlive = {doc3} +} + +@TeXIndex{useful, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {Useful documentation; various \LaTeX{} guides, FAQ, + fontname docs, etc.}, + status = {free}, + texlive = {doc2} +} + +@TeXIndex{win32, + modified = {February 1999 s.rahtz@elsevier.co.uk}, + abstract = {System binaries for Windows 32.}, + status = {free}, + texlive = {systems1} +} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.bst b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.bst new file mode 100644 index 00000000000..a4954030c95 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.bst @@ -0,0 +1,60 @@ +ENTRY + { + name + status + abstract + texlive + author + ctan + keywords + version + also + modified + } + {} % no integer entry variables + { label extra.label sort.label } % label entry variables + + +STRINGS { s t a.name } + + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} + +INTEGERS { nameptr namesleft numnames } + + +FUNCTION {TexIndex} { + texlive empty$ + { } + { "\bibitem{" cite$ * "}" * write$ + cite$ "&" * write$ + status "&" * write$ + texlive "&" * write$ + newline$ + abstract write$ + newline$ + } + if$ + } + + +READ + +ITERATE {call.type$} + diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2003 b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2003 new file mode 100644 index 00000000000..3b75b7b5bfd --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2003 @@ -0,0 +1,378 @@ +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{tex-live}[2003/09/01 v1.0 TeX Live documentation style] +% +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{colortbl} +\RequirePackage{graphicx} +\RequirePackage{here} +\RequirePackage{longtable} +\RequirePackage{pslatex} +\RequirePackage{shortvrb} +\RequirePackage[normalem]{ulem} +\RequirePackage[obeyspaces]{url} +\RequirePackage{xspace} +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} +%\usepackage[textcomp]{lmodern} +% +\RequirePackage{europs} +\let\euro\EUR +% +\RequirePackage{mflogo} +\def\MP{MetaPost} +\let\mf\MF +% +% for a proper \acro command (even in the context of the definition in +% ltugboat -- \DRC overrides without checking) +\RequirePackage{relsize} +\DeclareRobustCommand{\acro}[1]{\textsmaller{#1}\@} +% +\RequirePackage{fancyvrb} +\DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\normalsize} +\DefineVerbatimEnvironment{fverbatim}{Verbatim}{fontsize=\footnotesize} +\DefineVerbatimEnvironment{sverbatim}{Verbatim}{fontsize=\small} +\DefineVerbatimEnvironment{boxedverbatim} + {Verbatim}{fontsize=\scriptsize,frame=single} +\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\normalsize} +\def\verbatiminput#1{\VerbatimInput[fontsize=\scriptsize]{#1}} +\def\boxedverbatiminput#1{\VerbatimInput[frame=single,fontsize=\scriptsize]{#1}} +\def\listinginput#1#2{\VerbatimInput[fontsize=\scriptsize,firstnumber=#1,numbers=left]{#2}} +\MakeShortVerb\| +% +% +% Done with packages. +% +% Page layout. +\advance\textwidth by 1.1in +\advance\oddsidemargin by -.55in +\advance\evensidemargin by -.55in +% +\advance\textheight by 1in +\advance\topmargin by -.5in +\advance\footskip by -.5in +\pagestyle{headings} +% +% LaTeX parameters. +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\renewcommand{\belowcaptionskip}{4pt} +\setcounter{tocdepth}{2} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +% +% linebreaking, etc. +\pretolerance=1000 +\tolerance=1500 +\hbadness=3000 +\vbadness=3000 +\hyphenpenalty=400 +\emergencystretch=.1\hsize +\relpenalty=500 +% +% fonts +\let\sl\it +\let\slfamily\itfamily +\let\textsl\textit +%\def\ttdefault{cmtt} +\def\ttdefault{lmtt} +% +% various sorts of names +\newcommand*{\pkgname}[1]{\textsf{#1}}% package name +\newcommand*{\optname}[1]{\texttt{#1}}% (package,class) option name +\newcommand*{\cmdname}[1]{\textsf{#1}}% command name +\newcommand*{\colname}[1]{\emph{#1}}% collection name +\newcommand*{\dirname}[1]{\path{#1}}% directory name +\newcommand*{\filename}[1]{\path{#1}}% file name +\newcommand*{\envname}[1]{\texttt{#1}}% environment variable name +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\texttt{#1}} +\newcommand{\samp}[1]{`\texttt{#1}'} +\newcommand{\var}[1]{\emph{#1}} +\newcommand{\ttvar}[1]{\texttt{\var{#1}}} +% +% underlined command input. +\def\Ucom#1{% + \uline{\rule[-.2\baselineskip]{0pt}{.9\baselineskip}\ttfamily #1}} +\def\OnCD#1{\href{../../../../#1}{\path{#1}}} +% +% GUI menu/button/tab sequence: +\def\guiseq#1{\textsf{#1}} +\def\arw{\unskip$\rightarrow$\ignorespaces} +% +% Special names. +\def\dpi{$\,$dpi\xspace} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\def\hyph{-} +% +% many abbreviations. +\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% + \hbox{$\mathcal{S}$}\kern-.075em $} +\def\AFMtoTFM{\cmdname{AFM2TFM}\null} +\def\bv{\emph{Baskerville}} +\let\BV=\bv +\def\Dash{\unskip\nobreak\thinspace---\thinspace\ignorespaces} +\def\dvicopy{\cmdname{dvicopy}} +\def\dvidvi{\cmdname{dvidvi}} +\def\dvips{\cmdname{dvips}} +\def\eTeX{$\varepsilon$-\TeX} +\def\fpTeX{\textrm{fp}\TeX\xspace} +\def\GFtoDVI{\cmdname{GFtoDVI}\null} +\def\GFtoPK{\cmdname{GFtoPK}\null} +\def\GFtype{\cmdname{GFtype}} +\def\KPS{Kpathsea} +\def\La{La} +\def\OMEGA{$\Omega$} +\def\OzMF{OzMF} +\def\OzMP{OzMP} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\PKtype{\cmdname{PKtype}} +\def\PLtoTF{\cmdname{PLtoTF}\null} +\def\teTeX{\textrm{te}\TeX\xspace} +\def\TeXLive{\TeX{} Live\xspace} +\def\TFtoPL{\cmdname{TFtoPL}\null} +\def\TK{\textsf{\TeX-Collection}} +\def\TypeI{Type~1} +\def\VFtoVP{\cmdname{VFtoVP}\null} +\def\VPtoVF{\cmdname{VPtoVF}\null} +\def\XEmTeX{\textrm{XEm}\TeX\xspace} +\def\XEmacs{\textrm{XEmacs}\xspace} +\def\Webc{Web2C} +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\acro{DVD}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{web}\xspace} +% +% description-like environment that uses tt instead of bf, and doesn't +% go to the left margin. Without the \hfil, get an underfull box. +% Don't why \descriptionlabel doesn't. +\newenvironment{ttdescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt % these lists tend to have short descriptions + \let\makelabel=\ttdescriptionlabel}}% + {\end{list}} +\newcommand*\ttdescriptionlabel[1]{\hspace\labelsep + \normalfont\ttfamily #1\hfil} +% +% Likewise, for commands using sans serif. +\newenvironment{cmddescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt + \let\makelabel=\cmddescriptionlabel}}% + {\end{list}} +\newcommand*\cmddescriptionlabel[1]{\hspace\labelsep + \normalfont\sffamily #1\hfil} +% +\newsavebox{\wbox} +\newenvironment{warningbox} + {\begin{lrbox}{\wbox} + \begin{minipage}{.95\textwidth}} + {\end{minipage}\end{lrbox}\fbox{\usebox{\wbox}}} +% +% lrbox is used as a representation marking. I changed it to +% lrBox in tne source file, to get closer to logical marking +\newsavebox{\mylrbox} +\newenvironment{lrBox} + {\begin{lrbox}{\mylrbox}} + {\end{lrbox}} +% +% +% output setup +% +\newif\ifSingleColumn +\providecommand{\Status}{0} +%\typeout{Status is \Status} +% +% By default, we won't be creating hyperlinks. +\def\href#1#2{#2} +\def\hypertarget#1#2{} +\def\email#1{\href{mailto:#1}{\path{#1}}} % \path comes from url +% +% +\ifcase\Status + % \Status = 0 + \typeout{TeX Live documentation for printing} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 1 + \typeout{TeX Live documentation in PDF format} + \RequirePackage[colorlinks,bookmarksopen, + pdfstartview={FitBH -320000},hyperindex]{hyperref} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 2 + \typeout{TeX Live documentation in HTML format} + \RequirePackage[latex4ht]{tex4ht} + \or + % \Status = 3 + \typeout{TeX Live documentation as a Baskerville issue} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \RequirePackage{bvoutln}% outline of baskerville + \RequirePackage{multicol} + \SingleColumnfalse + \or + % \Status = 4 + \typeout{TeX Live documentation as a TUB article} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \SingleColumnfalse + \newenvironment{multicols}[1]{}{} +\fi +% +\ifnum \Status=4 +\else + \RequirePackage{texnames} + \providecommand\TeXXeT{\TeX-{}-% + \kern-.1emX\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT\@} +\fi +% +% hacking at sections etc., to pay attention to baskerville status +\newcommand{\@condend@multicols}{% + \ifSingleColumn + \else + \def\@tempa{multicols}% + \ifx\@tempa\@currenvir + \end{multicols}% + \fi + \fi +} +\let\Section\section +\renewcommand{\section}{% + \@ifstar + {\Section*}% + {% + \@condend@multicols + \@dblarg\@full@section + }% +} +\def\@full@section[#1]#2{% + \Section[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} +\let\SubSection\subsection +\renewcommand{\subsection}{% + \@ifstar{\SubSection*}% + {% + \@condend@multicols + \@dblarg\@full@subsection + } +} +\def\@full@subsection[#1]#2{% + \SubSection[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} + +% calm things down a bit if we're in a multiple-column version +\ifSingleColumn +\else + \def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ + } + \let\@listi\@listI + \@listi + \def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ + } + \def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep + } + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep + } + \def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep + } + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep + } +\fi +% +% array package stuff +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +% +% shaded rows (using facilities of colortbl) +% +\definecolor{pale}{gray}{.9} +\newcount\colrow +\gdef\RowColor{pale} +\def\SetRowColor{% + \rowcolor{\RowColor}% + \global\advance\colrow by1\relax + \ifodd\colrow + \gdef\RowColor{pale}% + \else + \gdef\RowColor{white}% + \fi +} +% redefine to hack up a reference even though we don't need it... +\renewcommand\@bibitem[1]{\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{?}}\fi\ignorespaces} +% +% \unknownTeXlive is a dummy texlive entry for the biblio +\newcommand\unknownTeXlive[2][\relax]{\textbf{\textsc{unknown}}% + \global\@all@unknown\expandafter{\the\@all@unknown{#2}}% +} +\newtoks\@all@unknown +\global\@all@unknown{} +\AtEndDocument{\@message@unknowns} +\def\@message@unknowns{\edef\@tempa{\the\@all@unknown}% + \ifx\@tempa\@empty + \else + \def\@tempa{*** TeX live package location of }% + \expandafter\@output@unknowns\the\@all@unknown\@empty + \fi +} +\def\@output@unknowns#1{\edef\@tempb{#1}% + \ifx\@tempb\@empty + \typeout{ unknown}% + \else + \message{\@tempa#1,}% + \def\@tempa{}% + \expandafter\@output@unknowns + \fi +} +% +% a hack for the bibliography +\bibliographystyle{tex-live} +\newif\iffirstbibentry +\global\firstbibentrytrue +\let\@@bibitem\bibitem +\renewcommand\bibitem{\iffirstbibentry + \global\firstbibentryfalse + \else + \\\SetRowColor + \fi + \@@bibitem +} + + +% for \Dings +\RequirePackage{pifont} +% available for inter-article dinglines +\def\Dings{\nopagebreak{\footnotesize\dingline{167}}} + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2004 b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2004 new file mode 100644 index 00000000000..54ff32dbe53 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2004 @@ -0,0 +1,422 @@ +% $Id$ +% TeX Live documentation style. Written by many people over many years. +% Public domain. +% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{tex-live}[2004/11/07 v1.0 TeX Live documentation style] +% +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{colortbl} +\RequirePackage{comment} +\RequirePackage{graphicx} +\RequirePackage{here} +\RequirePackage{longtable} +\RequirePackage{shortvrb} +\RequirePackage[normalem]{ulem} +\RequirePackage[obeyspaces]{url} +\RequirePackage{xspace} +% +\RequirePackage{lmodern} +\usepackage{textcomp}% including \textbullet +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} +% +% for a proper \acro command (even in the context of the definition in +% ltugboat -- \DRC overrides without checking) +\RequirePackage{relsize} +\DeclareRobustCommand{\acro}[1]{\textsmaller{#1}\@} +% +\RequirePackage{fancyvrb} +\DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\normalsize} +\DefineVerbatimEnvironment{fverbatim}{Verbatim}{fontsize=\footnotesize} +\DefineVerbatimEnvironment{sverbatim}{Verbatim}{fontsize=\small} +\DefineVerbatimEnvironment{boxedverbatim} + {Verbatim}{fontsize=\scriptsize,frame=single} +\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\normalsize} +\def\verbatiminput#1{\VerbatimInput[fontsize=\scriptsize]{#1}} +\def\boxedverbatiminput#1{\VerbatimInput[frame=single,fontsize=\scriptsize]{#1}} +\def\listinginput#1#2{\VerbatimInput[fontsize=\scriptsize,firstnumber=#1,numbers=left]{#2}} +\MakeShortVerb\| +% +% +% Done with packages. +% +% Page layout. +\advance\textwidth by 1.1in +\advance\oddsidemargin by -.55in +\advance\evensidemargin by -.55in +% +\advance\textheight by 1in +\advance\topmargin by -.5in +\advance\footskip by -.5in +\pagestyle{headings} +% +% LaTeX parameters. +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\renewcommand{\belowcaptionskip}{4pt} +\setcounter{tocdepth}{2} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +% +% linebreaking, etc. +\hbadness=4000 +\vbadness=4000 +\emergencystretch=.1\hsize +\relpenalty=500 +% +\def\slash{/\penalty\z@\hskip\z@skip } +% +% various sorts of names +\newcommand*{\pkgname}[1]{\textsf{#1}}% package name +\newcommand*{\optname}[1]{\texttt{#1}}% (package,class) option name +\newcommand*{\cmdname}[1]{\textsf{#1}}% command name +\newcommand*{\colname}[1]{\emph{#1}}% collection name +\newcommand*{\dirname}[1]{\path{#1}}% directory name +\newcommand*{\filename}[1]{\path{#1}}% file name +\newcommand*{\envname}[1]{\texttt{#1}}% environment variable name +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\texttt{#1}} +\newcommand{\samp}[1]{`\texttt{#1}'} +\newcommand{\var}[1]{{\sl #1}}% not \textsl, for roman not typewriter slanted. +\newcommand{\ttvar}[1]{\texttt{\var{#1}}} +% +% underlined command input. +\def\Ucom#1{% + \uline{\rule[-.2\baselineskip]{0pt}{.9\baselineskip}\ttfamily #1}} +% +% \CDref is for url's with a #, where we need to write the target url and +% displayed url separately in the input, due to catcode madness. +% (We could simplify/remove this next time, I think.) +\def\CDref#1#2{\texttt{#1}} +% +% \OnCD is currently for any other reference to a file or directory in +% the distribution. PDF readers only open .pdf files, though, so we +% should change this to only use \href for those. Or more likely use +% different macros in the source. +\def\OnCD#1{\href{../../../../#1}{\path{#1}}} +% +% \href incorrectly appends .pdf to anything without an extension; these +% definitions using \hyper@linkurl do not, but they fail for .pdf +% references -- which are the only ones that work anyway. So this is +% useless, in practice. +%\def\CDref#1#2{\hyper@linkurl{#2}{../../../../#1}} +%\def\OnCD#1{\hyper@linkurl{\path{#1}}{../../../../#1}} + +% GUI menu/button/tab sequence: +\def\guiseq#1{\textsf{#1}} +\def\arw{\unskip$\rightarrow$\ignorespaces} +% +% Special names. +\def\dpi{$\,$dpi\xspace} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\def\hyph{-} +% +% many abbreviations. +\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% + \hbox{$\mathcal{S}$}\kern-.075em $} +\def\AFMtoTFM{\cmdname{AFM2TFM}\null} +\def\bv{\emph{Baskerville}} +\let\BV=\bv +\def\Dash{\unskip\nobreak\thinspace---\thinspace\ignorespaces} +\def\dvicopy{\cmdname{dvicopy}} +\def\dvidvi{\cmdname{dvidvi}} +\def\dvips{\cmdname{dvips}} +\def\eTeX{$\varepsilon$-\TeX} +\def\fpTeX{\textrm{fp}\TeX\xspace} +\def\GFtoDVI{\cmdname{GFtoDVI}\null} +\def\GFtoPK{\cmdname{GFtoPK}\null} +\def\GFtype{\cmdname{GFtype}} +\def\KPS{Kpathsea} +\def\La{La} +\def\OMEGA{$\Omega$} +\def\OzMF{OzMF} +\def\OzMP{OzMP} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\p.{p.\,} +\def\PKtype{\cmdname{PKtype}} +\def\PLtoTF{\cmdname{PLtoTF}\null} +\def\ProTeXt{Pro\TeX t} +\def\teTeX{\textrm{te}\TeX\xspace} +\def\TeXLive{\TeX{} Live\xspace} +\def\TFtoPL{\cmdname{TFtoPL}\null} +\def\TK{\textsf{\TeX-Collection}} +\let\TL=\TeXLive +\def\TypeI{Type~1} +\def\VFtoVP{\cmdname{VFtoVP}\null} +\def\VPtoVF{\cmdname{VPtoVF}\null} +\def\Thanh{H\`an~Th\^e\llap{\raise 0.5ex\hbox{\'{}}}~Th\`anh} +\def\XEmTeX{\textrm{XEm}\TeX\xspace} +\def\XEmacs{\textrm{XEmacs}\xspace} +\def\Webc{Web2C} +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\acro{DVD}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{web}\xspace} + +% Include an image. +% #1 - name of image (pictures/#1.jpg, always .jpg please) +% #2 - bb for html +% #3 - width for TeX +% +\def\tlimage#1#2#3{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[#2]{../../general/texlive-common/pictures/#1.jpg} + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#3]{pictures/#1.jpg} + \fi + \\[5mm] +} +% +% description-like environment that uses tt instead of bf, and doesn't +% go to the left margin. Without the \hfil, get an underfull box. +% Don't know why \descriptionlabel doesn't. +% +\newenvironment{ttdescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt % these lists tend to have short descriptions + \parindent=0pt + \let\makelabel=\ttdescriptionlabel}}% + {\end{list}} +\newcommand*\ttdescriptionlabel[1]{\hspace\labelsep + \normalfont\ttfamily #1\hfil} +% +% Likewise, for commands using sans serif. +\newenvironment{cmddescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt + \let\makelabel=\cmddescriptionlabel}}% + {\end{list}} +\newcommand*\cmddescriptionlabel[1]{\hspace\labelsep + \normalfont\sffamily #1\hfil} + +% General squeezed itemize. +\newenvironment{itemize*}% + {\begin{itemize}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{itemize}} + +\newsavebox{\wbox} +\newenvironment{warningbox} + {\begin{lrbox}{\wbox} + \begin{minipage}{.95\textwidth}} + {\end{minipage}\end{lrbox}\fbox{\usebox{\wbox}}} +% +% lrbox is used as a representation marking. I changed it to +% lrBox in tne source file, to get closer to logical marking +\newsavebox{\mylrbox} +\newenvironment{lrBox} + {\begin{lrbox}{\mylrbox}} + {\end{lrbox}} + + +% emacs-page output setup +% +\newif\ifSingleColumn +\providecommand{\Status}{0} +%\typeout{Status is \Status} +% +% By default, we won't be creating hyperlinks. +\def\href#1#2{#2} +\def\hypertarget#1#2{} +\def\email#1{\href{mailto:#1}{\path{#1}}} % \path comes from url +% +\definecolor{hypercolor}{rgb}{0.5,0.0,0.5} % purplish external links. +% +% +\ifcase\Status + % \Status = 0 + \typeout{TeX Live documentation in DVI format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 1 + \typeout{TeX Live documentation in PDF format} + \RequirePackage[breaklinks, + colorlinks,linkcolor=hypercolor,citecolor=hypercolor, + pagecolor=hypercolor,urlcolor=hypercolor, + filecolor=hypercolor, + bookmarksopen,pdfstartview={FitBH -320000},hyperindex] + {hyperref} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 2 + \typeout{TeX Live documentation in HTML format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + % read our config file, live4ht.cfg; q.v., for more definitions. + % hyperref load must come after the tex4ht load. + \RequirePackage[live4ht]{tex4ht} + \RequirePackage[tex4ht]{hyperref} \hyperlinkfileprefix{} + % definitions need simplifying for TeX4ht to make relative paths work. + \def\CDref#1#2{\href{../../../../#1}{#2}} + \def\OnCD#1{\href{../../../../#1}{#1}} + \or + % \Status = 3 + \typeout{TeX Live documentation as a Baskerville issue} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \RequirePackage{bvoutln}% outline of baskerville + \SingleColumnfalse + \RequirePackage{multicol} + \or + % \Status = 4 + \typeout{TeX Live documentation as a TUB article} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \SingleColumnfalse + \newenvironment{multicols}[1]{}{} +\fi +% +\ifnum \Status=4 +\else + \RequirePackage{texnames} + \providecommand\TeXXeT{\TeX-{}-% + \kern-.1emX\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT\@} + \def\MP{MetaPost} + \let\mf\MF + \newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} + \newcommand\MIKTEX{MiK\kern-.025em \TeX}% per www.miktex.org + % from pictex.tex: + \ifx\PiC\undefined \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} \fi + \ifx\PiCTeX\undefined \def\PiCTeX{\PiC\kern-.11em\TeX} \fi +\fi +% +% hacking at sections etc., to pay attention to baskerville status +\newcommand{\@condend@multicols}{% + \ifSingleColumn + \else + \def\@tempa{multicols}% + \ifx\@tempa\@currenvir + \end{multicols}% + \fi + \fi +} +\let\Section\section +\renewcommand{\section}{% + \@ifstar + {\Section*}% + {% + \@condend@multicols + \@dblarg\@full@section + }% +} +\def\@full@section[#1]#2{% + \Section[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} +\let\SubSection\subsection +\renewcommand{\subsection}{% + \@ifstar{\SubSection*}% + {% + \@condend@multicols + \@dblarg\@full@subsection + } +} +\def\@full@subsection[#1]#2{% + \SubSection[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} + +% calm things down a bit if we're in a multiple-column version +\ifSingleColumn +\else + \def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ + } + \let\@listi\@listI + \@listi + \def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ + } + \def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep + } + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep + } + \def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep + } + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep + } +\fi +% +% array package stuff +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +% +% shaded rows (using facilities of colortbl) +% +\definecolor{pale}{gray}{.9} +\newcount\colrow +\gdef\RowColor{pale} +\def\SetRowColor{% + \rowcolor{\RowColor}% + \global\advance\colrow by1\relax + \ifodd\colrow + \gdef\RowColor{pale}% + \else + \gdef\RowColor{white}% + \fi +} +% redefine to hack up a reference even though we don't need it... +\renewcommand\@bibitem[1]{\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{?}}\fi\ignorespaces} +% +% \unknownTeXlive is a dummy texlive entry for the biblio +\newcommand\unknownTeXlive[2][\relax]{\textbf{\textsc{unknown}}% + \global\@all@unknown\expandafter{\the\@all@unknown{#2}}% +} +\newtoks\@all@unknown +\global\@all@unknown{} +\AtEndDocument{\@message@unknowns} +\def\@message@unknowns{\edef\@tempa{\the\@all@unknown}% + \ifx\@tempa\@empty + \else + \def\@tempa{*** TeX live package location of }% + \expandafter\@output@unknowns\the\@all@unknown\@empty + \fi +} +\def\@output@unknowns#1{\edef\@tempb{#1}% + \ifx\@tempb\@empty + \typeout{ unknown}% + \else + \message{\@tempa#1,}% + \def\@tempa{}% + \expandafter\@output@unknowns + \fi +} + + +% Silence font warnings about no bold typewriter in LM. +\def\@font@warning#1{}% + +% Silence hyperref warnings about \kern. +\def\HyPsd@Warning#1{}% + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2005 b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2005 new file mode 100644 index 00000000000..487c8b8d7a2 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2005 @@ -0,0 +1,429 @@ +% $Id: tex-live.sty 1513 2006-02-13 00:22:35Z karl $ +% TeX Live documentation style. Written by many people over many years. +% Public domain. +% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{tex-live}[2005/09/24 v1.5 TeX Live documentation style] +% +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{colortbl} +\RequirePackage{comment} +\RequirePackage{float} +\RequirePackage{graphicx} +\RequirePackage{longtable} +\RequirePackage{shortvrb} +\RequirePackage[normalem]{ulem} +\RequirePackage[obeyspaces]{url} +\RequirePackage{xspace} +% +\RequirePackage{lmodern} +\usepackage{textcomp}% including \textbullet +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} +% +% for a proper \acro command (even in the context of the definition in +% ltugboat -- \DRC overrides without checking) +\RequirePackage{relsize} +\DeclareRobustCommand{\acro}[1]{\textsmaller{#1}\@} +% +\RequirePackage{fancyvrb} +\DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\normalsize} +\DefineVerbatimEnvironment{fverbatim}{Verbatim}{fontsize=\footnotesize} +\DefineVerbatimEnvironment{sverbatim}{Verbatim}{fontsize=\small} +\DefineVerbatimEnvironment{boxedverbatim} + {Verbatim}{fontsize=\scriptsize,frame=single} +\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\normalsize} +\def\verbatiminput#1{\VerbatimInput[fontsize=\scriptsize]{#1}} +\def\boxedverbatiminput#1{\VerbatimInput[frame=single,fontsize=\scriptsize]{#1}} +\def\listinginput#1#2{\VerbatimInput[fontsize=\scriptsize,firstnumber=#1,numbers=left]{#2}} +\MakeShortVerb\| +% +% +% Done with packages. +% +% Page layout. +\advance\textwidth by 1.1in +\advance\oddsidemargin by -.55in +\advance\evensidemargin by -.55in +% +\advance\textheight by 1in +\advance\topmargin by -.5in +\advance\footskip by -.5in +\pagestyle{headings} +% +% LaTeX parameters. +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\renewcommand{\belowcaptionskip}{4pt} +\setcounter{tocdepth}{2} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +% +% linebreaking, etc. +\hbadness=4000 +\vbadness=4000 +\emergencystretch=.1\hsize +\relpenalty=500 +% +\def\slash{/\penalty\z@\hskip\z@skip } +% +% various sorts of names +\newcommand*{\pkgname}[1]{\textsf{#1}}% package name +\newcommand*{\optname}[1]{\texttt{#1}}% (package,class) option name +\newcommand*{\cmdname}[1]{\textsf{#1}}% command name +\newcommand*{\colname}[1]{\emph{#1}}% collection name +\newcommand*{\dirname}[1]{\path{#1}}% directory name +\newcommand*{\filename}[1]{\path{#1}}% file name +\newcommand*{\envname}[1]{\texttt{#1}}% environment variable name +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\texttt{#1}} +\newcommand{\samp}[1]{`\texttt{#1}'} +\newcommand{\var}[1]{{\sl #1}}% not \textsl, for roman not typewriter slanted. +\newcommand{\ttvar}[1]{\texttt{\var{#1}}} +% +% underlined command input. +\def\Ucom#1{% + \uline{\rule[-.2\baselineskip]{0pt}{.9\baselineskip}\ttfamily #1}} +% +% \CDref is for url's with a #, where we need to write the target url and +% displayed url separately in the input, due to catcode madness. +% (We could simplify/remove this next time, I think.) +\def\CDref#1#2{\texttt{#1}} +% +% \OnCD is currently for any other reference to a file or directory in +% the distribution. PDF readers only open .pdf files, though, so we +% should change this to only use \href for those. Or more likely use +% different macros in the source. +\def\OnCD#1{\href{../../../../#1}{\path{#1}}} +% +% \href incorrectly appends .pdf to anything without an extension; these +% definitions using \hyper@linkurl do not, but they fail for .pdf +% references -- which are the only ones that work anyway. So this is +% useless, in practice. +%\def\CDref#1#2{\hyper@linkurl{#2}{../../../../#1}} +%\def\OnCD#1{\hyper@linkurl{\path{#1}}{../../../../#1}} + +% GUI menu/button/tab sequence: +\def\guiseq#1{\textsf{#1}} +\def\arw{\unskip$\rightarrow$\ignorespaces} +% +% Special names. +\def\dpi{$\,$dpi\xspace} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\def\hyph{-} +% +% many abbreviations. +\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% + \hbox{$\mathcal{S}$}\kern-.075em $} +\def\AFMtoTFM{\cmdname{AFM2TFM}\null} +\def\bv{\emph{Baskerville}} +\let\BV=\bv +\def\Dash{\unskip\nobreak\thinspace---\thinspace\ignorespaces} +\def\dvicopy{\cmdname{dvicopy}} +\def\dvidvi{\cmdname{dvidvi}} +\def\dvips{\cmdname{dvips}} +\def\eTeX{$\varepsilon$-\TeX} +\def\fpTeX{\textrm{fp}\TeX\xspace} +\def\GFtoDVI{\cmdname{GFtoDVI}\null} +\def\GFtoPK{\cmdname{GFtoPK}\null} +\def\GFtype{\cmdname{GFtype}} +\def\KPS{Kpathsea} +\def\La{La} +\def\OMEGA{$\Omega$} +\def\OzMF{OzMF} +\def\OzMP{OzMP} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\p.{p.\,} +\def\PKtype{\cmdname{PKtype}} +\def\PLtoTF{\cmdname{PLtoTF}\null} +\def\ProTeXt{Pro\TeX t} +\def\teTeX{\textrm{te}\TeX\xspace} +\def\TeXLive{\TeX{} Live\xspace} +\def\TFtoPL{\cmdname{TFtoPL}\null} +\def\TK{\textsf{\TeX\ Collection}} +\let\TL=\TeXLive +\def\TypeI{Type~1} +\def\VFtoVP{\cmdname{VFtoVP}\null} +\def\VPtoVF{\cmdname{VPtoVF}\null} +\def\Thanh{H\`an~Th\^e\llap{\raise 0.5ex\hbox{\'{}}}~Th\`anh} +\def\XEmTeX{\textrm{XEm}\TeX\xspace} +\def\XEmacs{\textrm{XEmacs}\xspace} +\def\Webc{Web2C} +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\acro{DVD}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{web}\xspace} + +% Include an image. +% #1 - name of image (pictures/#1.jpg, always .jpg please) +% #2 - bb for html +% #3 - width for TeX +% +\def\tlimage#1#2#3{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[#2]{../../general/texlive-common/pictures/#1.jpg} + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#3]{pictures/#1.jpg} + \fi + \\[5mm] +} +% +% description-like environment that uses tt instead of bf, and doesn't +% go to the left margin. Without the \hfil, get an underfull box. +% Don't know why \descriptionlabel doesn't. +% +\newenvironment{ttdescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt % these lists tend to have short descriptions + \parindent=0pt + \let\makelabel=\ttdescriptionlabel}}% + {\end{list}} +\newcommand*\ttdescriptionlabel[1]{\hspace\labelsep + \normalfont\ttfamily #1\hfil} +% +% Likewise, for commands using sans serif. +\newenvironment{cmddescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt + \let\makelabel=\cmddescriptionlabel}}% + {\end{list}} +\newcommand*\cmddescriptionlabel[1]{\hspace\labelsep + \normalfont\sffamily #1\hfil} + +% General squeezed itemize. +\newenvironment{itemize*}% + {\begin{itemize}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{itemize}} + +\newsavebox{\wbox} +\newenvironment{warningbox} + {\begin{lrbox}{\wbox} + \begin{minipage}{.95\textwidth}} + {\end{minipage}\end{lrbox}\fbox{\usebox{\wbox}}} +% +% lrbox is used as a representation marking. I changed it to +% lrBox in tne source file, to get closer to logical marking +\newsavebox{\mylrbox} +\newenvironment{lrBox} + {\begin{lrbox}{\mylrbox}} + {\end{lrbox}} + + +% emacs-page output setup +% +\ifx \HCode\UnDef + \providecommand{\Status}{0}% running TeX +\else + \providecommand{\Status}{2}% running TeX4ht +\fi +%\typeout{Status is \Status} +% +\newif\ifSingleColumn +% +% By default, we won't be creating hyperlinks. +\def\href#1#2{#2} +\def\hypertarget#1#2{} +\def\email#1{\href{mailto:#1}{\path{#1}}} % \path comes from url +% +\definecolor{hypercolor}{rgb}{0.5,0.0,0.5} % purplish external links. +% +% +\ifcase\Status + % \Status = 0 + \typeout{TeX Live documentation in DVI format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 1 + \typeout{TeX Live documentation in PDF format} + \RequirePackage[breaklinks, + colorlinks,linkcolor=hypercolor,citecolor=hypercolor, + pagecolor=hypercolor,urlcolor=hypercolor, + filecolor=hypercolor, + bookmarksopen, + %pdfstartview={FitBH -320000}, % fails with acrobat7 + hyperindex] + {hyperref} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 2 + \typeout{TeX Live documentation in HTML format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + % read our config file, live4ht.cfg; q.v., for more definitions. + % hyperref load must come after the tex4ht load. + \RequirePackage[live4ht]{tex4ht} + \RequirePackage[tex4ht]{hyperref} \hyperlinkfileprefix{} + % definitions need simplifying for TeX4ht to make relative paths work. + \def\CDref#1#2{\href{../../../../#1}{#2}} + \def\OnCD#1{\href{../../../../#1}{#1}} + \or + % \Status = 3 + \typeout{TeX Live documentation as a Baskerville issue} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \RequirePackage{bvoutln}% outline of baskerville + \SingleColumnfalse + \RequirePackage{multicol} + \or + % \Status = 4 + \typeout{TeX Live documentation as a TUB article} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \SingleColumnfalse + \newenvironment{multicols}[1]{}{} +\fi +% +\ifnum \Status=4 +\else + \RequirePackage{texnames} + \providecommand\TeXXeT{\TeX-{}-% + \kern-.1emX\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT\@} + \def\MP{MetaPost} + \let\mf\MF + \newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} + \newcommand\MIKTEX{MiK\kern-.025em \TeX}% per www.miktex.org + % from pictex.tex: + \ifx\PiC\undefined \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} \fi + \ifx\PiCTeX\undefined \def\PiCTeX{\PiC\kern-.11em\TeX} \fi +\fi +% +% hacking at sections etc., to pay attention to baskerville status +\newcommand{\@condend@multicols}{% + \ifSingleColumn + \else + \def\@tempa{multicols}% + \ifx\@tempa\@currenvir + \end{multicols}% + \fi + \fi +} +\let\Section\section +\renewcommand{\section}{% + \@ifstar + {\Section*}% + {% + \@condend@multicols + \@dblarg\@full@section + }% +} +\def\@full@section[#1]#2{% + \Section[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} +\let\SubSection\subsection +\renewcommand{\subsection}{% + \@ifstar{\SubSection*}% + {% + \@condend@multicols + \@dblarg\@full@subsection + } +} +\def\@full@subsection[#1]#2{% + \SubSection[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} + +% calm things down a bit if we're in a multiple-column version +\ifSingleColumn +\else + \def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ + } + \let\@listi\@listI + \@listi + \def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ + } + \def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep + } + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep + } + \def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep + } + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep + } +\fi +% +% array package stuff +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +% +% shaded rows (using facilities of colortbl) +% +\definecolor{pale}{gray}{.9} +\newcount\colrow +\gdef\RowColor{pale} +\def\SetRowColor{% + \rowcolor{\RowColor}% + \global\advance\colrow by1\relax + \ifodd\colrow + \gdef\RowColor{pale}% + \else + \gdef\RowColor{white}% + \fi +} +% redefine to hack up a reference even though we don't need it... +\renewcommand\@bibitem[1]{\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{?}}\fi\ignorespaces} +% +% \unknownTeXlive is a dummy texlive entry for the biblio +\newcommand\unknownTeXlive[2][\relax]{\textbf{\textsc{unknown}}% + \global\@all@unknown\expandafter{\the\@all@unknown{#2}}% +} +\newtoks\@all@unknown +\global\@all@unknown{} +\AtEndDocument{\@message@unknowns} +\def\@message@unknowns{\edef\@tempa{\the\@all@unknown}% + \ifx\@tempa\@empty + \else + \def\@tempa{*** TeX live package location of }% + \expandafter\@output@unknowns\the\@all@unknown\@empty + \fi +} +\def\@output@unknowns#1{\edef\@tempb{#1}% + \ifx\@tempb\@empty + \typeout{ unknown}% + \else + \message{\@tempa#1,}% + \def\@tempa{}% + \expandafter\@output@unknowns + \fi +} + + +% Silence font warnings about no bold typewriter in LM. +\def\@font@warning#1{}% + +% Silence hyperref warnings about \kern. +\def\HyPsd@Warning#1{}% + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2007 b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2007 new file mode 100644 index 00000000000..487c8b8d7a2 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2007 @@ -0,0 +1,429 @@ +% $Id: tex-live.sty 1513 2006-02-13 00:22:35Z karl $ +% TeX Live documentation style. Written by many people over many years. +% Public domain. +% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{tex-live}[2005/09/24 v1.5 TeX Live documentation style] +% +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{colortbl} +\RequirePackage{comment} +\RequirePackage{float} +\RequirePackage{graphicx} +\RequirePackage{longtable} +\RequirePackage{shortvrb} +\RequirePackage[normalem]{ulem} +\RequirePackage[obeyspaces]{url} +\RequirePackage{xspace} +% +\RequirePackage{lmodern} +\usepackage{textcomp}% including \textbullet +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} +% +% for a proper \acro command (even in the context of the definition in +% ltugboat -- \DRC overrides without checking) +\RequirePackage{relsize} +\DeclareRobustCommand{\acro}[1]{\textsmaller{#1}\@} +% +\RequirePackage{fancyvrb} +\DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\normalsize} +\DefineVerbatimEnvironment{fverbatim}{Verbatim}{fontsize=\footnotesize} +\DefineVerbatimEnvironment{sverbatim}{Verbatim}{fontsize=\small} +\DefineVerbatimEnvironment{boxedverbatim} + {Verbatim}{fontsize=\scriptsize,frame=single} +\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\normalsize} +\def\verbatiminput#1{\VerbatimInput[fontsize=\scriptsize]{#1}} +\def\boxedverbatiminput#1{\VerbatimInput[frame=single,fontsize=\scriptsize]{#1}} +\def\listinginput#1#2{\VerbatimInput[fontsize=\scriptsize,firstnumber=#1,numbers=left]{#2}} +\MakeShortVerb\| +% +% +% Done with packages. +% +% Page layout. +\advance\textwidth by 1.1in +\advance\oddsidemargin by -.55in +\advance\evensidemargin by -.55in +% +\advance\textheight by 1in +\advance\topmargin by -.5in +\advance\footskip by -.5in +\pagestyle{headings} +% +% LaTeX parameters. +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\renewcommand{\belowcaptionskip}{4pt} +\setcounter{tocdepth}{2} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +% +% linebreaking, etc. +\hbadness=4000 +\vbadness=4000 +\emergencystretch=.1\hsize +\relpenalty=500 +% +\def\slash{/\penalty\z@\hskip\z@skip } +% +% various sorts of names +\newcommand*{\pkgname}[1]{\textsf{#1}}% package name +\newcommand*{\optname}[1]{\texttt{#1}}% (package,class) option name +\newcommand*{\cmdname}[1]{\textsf{#1}}% command name +\newcommand*{\colname}[1]{\emph{#1}}% collection name +\newcommand*{\dirname}[1]{\path{#1}}% directory name +\newcommand*{\filename}[1]{\path{#1}}% file name +\newcommand*{\envname}[1]{\texttt{#1}}% environment variable name +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\texttt{#1}} +\newcommand{\samp}[1]{`\texttt{#1}'} +\newcommand{\var}[1]{{\sl #1}}% not \textsl, for roman not typewriter slanted. +\newcommand{\ttvar}[1]{\texttt{\var{#1}}} +% +% underlined command input. +\def\Ucom#1{% + \uline{\rule[-.2\baselineskip]{0pt}{.9\baselineskip}\ttfamily #1}} +% +% \CDref is for url's with a #, where we need to write the target url and +% displayed url separately in the input, due to catcode madness. +% (We could simplify/remove this next time, I think.) +\def\CDref#1#2{\texttt{#1}} +% +% \OnCD is currently for any other reference to a file or directory in +% the distribution. PDF readers only open .pdf files, though, so we +% should change this to only use \href for those. Or more likely use +% different macros in the source. +\def\OnCD#1{\href{../../../../#1}{\path{#1}}} +% +% \href incorrectly appends .pdf to anything without an extension; these +% definitions using \hyper@linkurl do not, but they fail for .pdf +% references -- which are the only ones that work anyway. So this is +% useless, in practice. +%\def\CDref#1#2{\hyper@linkurl{#2}{../../../../#1}} +%\def\OnCD#1{\hyper@linkurl{\path{#1}}{../../../../#1}} + +% GUI menu/button/tab sequence: +\def\guiseq#1{\textsf{#1}} +\def\arw{\unskip$\rightarrow$\ignorespaces} +% +% Special names. +\def\dpi{$\,$dpi\xspace} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\def\hyph{-} +% +% many abbreviations. +\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% + \hbox{$\mathcal{S}$}\kern-.075em $} +\def\AFMtoTFM{\cmdname{AFM2TFM}\null} +\def\bv{\emph{Baskerville}} +\let\BV=\bv +\def\Dash{\unskip\nobreak\thinspace---\thinspace\ignorespaces} +\def\dvicopy{\cmdname{dvicopy}} +\def\dvidvi{\cmdname{dvidvi}} +\def\dvips{\cmdname{dvips}} +\def\eTeX{$\varepsilon$-\TeX} +\def\fpTeX{\textrm{fp}\TeX\xspace} +\def\GFtoDVI{\cmdname{GFtoDVI}\null} +\def\GFtoPK{\cmdname{GFtoPK}\null} +\def\GFtype{\cmdname{GFtype}} +\def\KPS{Kpathsea} +\def\La{La} +\def\OMEGA{$\Omega$} +\def\OzMF{OzMF} +\def\OzMP{OzMP} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\p.{p.\,} +\def\PKtype{\cmdname{PKtype}} +\def\PLtoTF{\cmdname{PLtoTF}\null} +\def\ProTeXt{Pro\TeX t} +\def\teTeX{\textrm{te}\TeX\xspace} +\def\TeXLive{\TeX{} Live\xspace} +\def\TFtoPL{\cmdname{TFtoPL}\null} +\def\TK{\textsf{\TeX\ Collection}} +\let\TL=\TeXLive +\def\TypeI{Type~1} +\def\VFtoVP{\cmdname{VFtoVP}\null} +\def\VPtoVF{\cmdname{VPtoVF}\null} +\def\Thanh{H\`an~Th\^e\llap{\raise 0.5ex\hbox{\'{}}}~Th\`anh} +\def\XEmTeX{\textrm{XEm}\TeX\xspace} +\def\XEmacs{\textrm{XEmacs}\xspace} +\def\Webc{Web2C} +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\acro{DVD}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{web}\xspace} + +% Include an image. +% #1 - name of image (pictures/#1.jpg, always .jpg please) +% #2 - bb for html +% #3 - width for TeX +% +\def\tlimage#1#2#3{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[#2]{../../general/texlive-common/pictures/#1.jpg} + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#3]{pictures/#1.jpg} + \fi + \\[5mm] +} +% +% description-like environment that uses tt instead of bf, and doesn't +% go to the left margin. Without the \hfil, get an underfull box. +% Don't know why \descriptionlabel doesn't. +% +\newenvironment{ttdescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt % these lists tend to have short descriptions + \parindent=0pt + \let\makelabel=\ttdescriptionlabel}}% + {\end{list}} +\newcommand*\ttdescriptionlabel[1]{\hspace\labelsep + \normalfont\ttfamily #1\hfil} +% +% Likewise, for commands using sans serif. +\newenvironment{cmddescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt + \let\makelabel=\cmddescriptionlabel}}% + {\end{list}} +\newcommand*\cmddescriptionlabel[1]{\hspace\labelsep + \normalfont\sffamily #1\hfil} + +% General squeezed itemize. +\newenvironment{itemize*}% + {\begin{itemize}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{itemize}} + +\newsavebox{\wbox} +\newenvironment{warningbox} + {\begin{lrbox}{\wbox} + \begin{minipage}{.95\textwidth}} + {\end{minipage}\end{lrbox}\fbox{\usebox{\wbox}}} +% +% lrbox is used as a representation marking. I changed it to +% lrBox in tne source file, to get closer to logical marking +\newsavebox{\mylrbox} +\newenvironment{lrBox} + {\begin{lrbox}{\mylrbox}} + {\end{lrbox}} + + +% emacs-page output setup +% +\ifx \HCode\UnDef + \providecommand{\Status}{0}% running TeX +\else + \providecommand{\Status}{2}% running TeX4ht +\fi +%\typeout{Status is \Status} +% +\newif\ifSingleColumn +% +% By default, we won't be creating hyperlinks. +\def\href#1#2{#2} +\def\hypertarget#1#2{} +\def\email#1{\href{mailto:#1}{\path{#1}}} % \path comes from url +% +\definecolor{hypercolor}{rgb}{0.5,0.0,0.5} % purplish external links. +% +% +\ifcase\Status + % \Status = 0 + \typeout{TeX Live documentation in DVI format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 1 + \typeout{TeX Live documentation in PDF format} + \RequirePackage[breaklinks, + colorlinks,linkcolor=hypercolor,citecolor=hypercolor, + pagecolor=hypercolor,urlcolor=hypercolor, + filecolor=hypercolor, + bookmarksopen, + %pdfstartview={FitBH -320000}, % fails with acrobat7 + hyperindex] + {hyperref} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 2 + \typeout{TeX Live documentation in HTML format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + % read our config file, live4ht.cfg; q.v., for more definitions. + % hyperref load must come after the tex4ht load. + \RequirePackage[live4ht]{tex4ht} + \RequirePackage[tex4ht]{hyperref} \hyperlinkfileprefix{} + % definitions need simplifying for TeX4ht to make relative paths work. + \def\CDref#1#2{\href{../../../../#1}{#2}} + \def\OnCD#1{\href{../../../../#1}{#1}} + \or + % \Status = 3 + \typeout{TeX Live documentation as a Baskerville issue} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \RequirePackage{bvoutln}% outline of baskerville + \SingleColumnfalse + \RequirePackage{multicol} + \or + % \Status = 4 + \typeout{TeX Live documentation as a TUB article} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \SingleColumnfalse + \newenvironment{multicols}[1]{}{} +\fi +% +\ifnum \Status=4 +\else + \RequirePackage{texnames} + \providecommand\TeXXeT{\TeX-{}-% + \kern-.1emX\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT\@} + \def\MP{MetaPost} + \let\mf\MF + \newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} + \newcommand\MIKTEX{MiK\kern-.025em \TeX}% per www.miktex.org + % from pictex.tex: + \ifx\PiC\undefined \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} \fi + \ifx\PiCTeX\undefined \def\PiCTeX{\PiC\kern-.11em\TeX} \fi +\fi +% +% hacking at sections etc., to pay attention to baskerville status +\newcommand{\@condend@multicols}{% + \ifSingleColumn + \else + \def\@tempa{multicols}% + \ifx\@tempa\@currenvir + \end{multicols}% + \fi + \fi +} +\let\Section\section +\renewcommand{\section}{% + \@ifstar + {\Section*}% + {% + \@condend@multicols + \@dblarg\@full@section + }% +} +\def\@full@section[#1]#2{% + \Section[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} +\let\SubSection\subsection +\renewcommand{\subsection}{% + \@ifstar{\SubSection*}% + {% + \@condend@multicols + \@dblarg\@full@subsection + } +} +\def\@full@subsection[#1]#2{% + \SubSection[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} + +% calm things down a bit if we're in a multiple-column version +\ifSingleColumn +\else + \def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ + } + \let\@listi\@listI + \@listi + \def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ + } + \def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep + } + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep + } + \def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep + } + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep + } +\fi +% +% array package stuff +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +% +% shaded rows (using facilities of colortbl) +% +\definecolor{pale}{gray}{.9} +\newcount\colrow +\gdef\RowColor{pale} +\def\SetRowColor{% + \rowcolor{\RowColor}% + \global\advance\colrow by1\relax + \ifodd\colrow + \gdef\RowColor{pale}% + \else + \gdef\RowColor{white}% + \fi +} +% redefine to hack up a reference even though we don't need it... +\renewcommand\@bibitem[1]{\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{?}}\fi\ignorespaces} +% +% \unknownTeXlive is a dummy texlive entry for the biblio +\newcommand\unknownTeXlive[2][\relax]{\textbf{\textsc{unknown}}% + \global\@all@unknown\expandafter{\the\@all@unknown{#2}}% +} +\newtoks\@all@unknown +\global\@all@unknown{} +\AtEndDocument{\@message@unknowns} +\def\@message@unknowns{\edef\@tempa{\the\@all@unknown}% + \ifx\@tempa\@empty + \else + \def\@tempa{*** TeX live package location of }% + \expandafter\@output@unknowns\the\@all@unknown\@empty + \fi +} +\def\@output@unknowns#1{\edef\@tempb{#1}% + \ifx\@tempb\@empty + \typeout{ unknown}% + \else + \message{\@tempa#1,}% + \def\@tempa{}% + \expandafter\@output@unknowns + \fi +} + + +% Silence font warnings about no bold typewriter in LM. +\def\@font@warning#1{}% + +% Silence hyperref warnings about \kern. +\def\HyPsd@Warning#1{}% + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2008 b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2008 new file mode 100644 index 00000000000..6bb5d7fb57b --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2008 @@ -0,0 +1,444 @@ +% $Id: tex-live.sty 10332 2008-08-14 01:04:30Z karl $ +% TeX Live documentation style. Written by many people over many years. +% Public domain. +% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{tex-live}[2008/08/08 v1.6 TeX Live documentation style] +% +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{colortbl} +\RequirePackage{comment} +\RequirePackage{float} +\RequirePackage{graphicx} +\RequirePackage{longtable} +\RequirePackage{shortvrb} +\RequirePackage[normalem]{ulem} +\RequirePackage[obeyspaces]{url} +\RequirePackage{xspace} +% +\RequirePackage{lmodern} +\usepackage{textcomp}% including \textbullet +\def\p.{p.\,} + +% for a proper \acro command. +\RequirePackage{relsize} +%\DeclareRobustCommand{\acro}[1]{\textscale{.9}{#1}\@} +\def\acro#1{\textscale{.9}{#1}\@} +% +\RequirePackage{fancyvrb} +\DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\normalsize} +\DefineVerbatimEnvironment{fverbatim}{Verbatim}{fontsize=\footnotesize} +\DefineVerbatimEnvironment{sverbatim}{Verbatim}{fontsize=\small} +\DefineVerbatimEnvironment{boxedverbatim} + {Verbatim}{fontsize=\scriptsize,frame=single} +\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\normalsize} +\def\verbatiminput#1{\VerbatimInput[fontsize=\scriptsize]{#1}} +\def\boxedverbatiminput#1{\VerbatimInput[frame=single,fontsize=\scriptsize]{#1}} +\def\listinginput#1#2{\VerbatimInput[fontsize=\scriptsize,firstnumber=#1,numbers=left]{#2}} +\MakeShortVerb\| +% +% +% Done with packages. +% +% Page layout. +\advance\textwidth by 1.1in +\advance\oddsidemargin by -.55in +\advance\evensidemargin by -.55in +% +\advance\textheight by 1in +\advance\topmargin by -.5in +\advance\footskip by -.5in +\pagestyle{headings} +% +% LaTeX parameters. +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\renewcommand{\abovecaptionskip}{4pt} +\renewcommand{\belowcaptionskip}{4pt} +\setcounter{tocdepth}{3} +\setcounter{secnumdepth}{3} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +% +% linebreaking, etc. +\hbadness=4000 +\vbadness=4000 +\emergencystretch=.1\hsize +\relpenalty=500 +% +\def\slash{/\penalty\z@\hskip\z@skip } +% +% various sorts of names +\newcommand*{\pkgname}[1]{\textsf{#1}}% package name +\newcommand*{\optname}[1]{\texttt{#1}}% (package,class) option name +\newcommand*{\cmdname}[1]{\textsf{#1}}% command name +\newcommand*{\colname}[1]{\emph{#1}}% collection name +\newcommand*{\dirname}[1]{\path{#1}}% directory name +\newcommand*{\filename}[1]{\path{#1}}% file name +\newcommand*{\envname}[1]{\texttt{#1}}% environment variable name +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\textsf{#1}}% same as \cmdname +\newcommand{\samp}[1]{`\texttt{#1}'} +\newcommand{\var}[1]{{\sl #1}}% not \textsl, for roman not typewriter slanted. +\newcommand{\ttvar}[1]{\texttt{\var{#1}}} +% +% underlined command input. +%\def\Ucom#1{% +% \uline{\rule[-.2\baselineskip]{0pt}{.9\baselineskip}\ttfamily #1}} +% bold command input +\def\Ucom#1{{\bfseries\ttfamily #1}} +% +% \CDref is for url's with a #, where we need to write the target url and +% displayed url separately in the input, due to catcode madness. +% (We could simplify/remove this next time, I think.) +\def\CDref#1#2{\texttt{#1}} +% +% \OnCD is currently for any other reference to a file or directory in +% the distribution. PDF readers only open .pdf files, though, so we +% should change this to only use \href for those. Or more likely use +% different macros in the source. +\def\OnCD#1{\href{../../../../#1}{\path{#1}}} +% +% \href incorrectly appends .pdf to anything without an extension; these +% definitions using \hyper@linkurl do not, but they fail for .pdf +% references -- which are the only ones that work anyway. So this is +% useless, in practice. +%\def\CDref#1#2{\hyper@linkurl{#2}{../../../../#1}} +%\def\OnCD#1{\hyper@linkurl{\path{#1}}{../../../../#1}} + +% GUI menu/button/tab sequence: +\def\guiseq#1{\textsf{#1}} +\def\arw{\unskip$\rightarrow$\ignorespaces} +% +% Special names. +\def\dpi{$\,$dpi\xspace} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\def\hyph{-} +% +% many abbreviations. +\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% + \hbox{$\mathcal{S}$}\kern-.075em $} +\def\AFMtoTFM{\cmdname{AFM2TFM}\null} +\def\bv{\emph{Baskerville}} +\let\BV=\bv +\def\Dash{\unskip\nobreak\thinspace---\thinspace\ignorespaces} +\def\dvicopy{\cmdname{dvicopy}} +\def\dvidvi{\cmdname{dvidvi}} +\def\dvips{\cmdname{dvips}} +\def\eTeX{$\varepsilon$-\TeX} +\def\fpTeX{\textrm{fp}\TeX\xspace} +\def\GFtoDVI{\cmdname{GFtoDVI}\null} +\def\GFtoPK{\cmdname{GFtoPK}\null} +\def\GFtype{\cmdname{GFtype}} +\def\GUI{\acro{GUI}\xspace} +\def\KPS{Kpathsea} +\def\La{La} +\def\OMEGA{$\Omega$} +\def\OzMF{OzMF} +\def\OzMP{OzMP} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\PKtype{\cmdname{PKtype}} +\def\PLtoTF{\cmdname{PLtoTF}\null} +\def\ProTeXt{Pro\TeX t} +\def\teTeX{\textrm{te}\TeX\xspace} +\def\TeXLive{\TeX{} Live\xspace} +\def\TFtoPL{\cmdname{TFtoPL}\null} +\def\TK{\TeX\ Collection} +\let\TL=\TeXLive +\def\TypeI{Type~1} +\def\VFtoVP{\cmdname{VFtoVP}\null} +\def\VPtoVF{\cmdname{VPtoVF}\null} +\def\Thanh{H\`an~Th\ifx % get Unicode char in tex4ht's HTML output + \HCode\UnDef\^e\llap{\raise 0.5ex\hbox{\'{}}}\else + \HCode{\string&\#x1EBF;}\fi~Th\`anh} +\def\XEmTeX{\textrm{XEm}\TeX\xspace} +\def\XEmacs{\textrm{XEmacs}\xspace} +\def\XeTeX{Xe\TeX\xspace} +\def\Webc{Web2C} +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\acro{DVD}\xspace} +\providecommand*{\GNU}{\acro{GNU}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\ISO}{\acro{ISO}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{WEB}\xspace} + +% Include an image. +% #1 - name of image (pictures/#1.jpg, always .jpg please) +% #2 - bb for html +% #3 - width for TeX +% +\def\tlimage#1#2#3{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[#2]{../../general/texlive-common/pictures/#1.jpg} + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#3]{pictures/#1.jpg} + \fi + \\[5mm] +} + +\def\tlpng#1#2{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[bb=0 0 1 1]{#1.png}% + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#2]{#1.png}% + \fi +} +% +% description-like environment that uses tt instead of bf, and doesn't +% go to the left margin. Without the \hfil, get an underfull box. +% Don't know why \descriptionlabel doesn't. +% +\newenvironment{ttdescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt % these lists tend to have short descriptions + \parindent=0pt + \let\makelabel=\ttdescriptionlabel}}% + {\end{list}} +\newcommand*\ttdescriptionlabel[1]{\hspace\labelsep + \normalfont\ttfamily #1\hfil} +% +% Likewise, for commands using sans serif. +\newenvironment{cmddescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt + \let\makelabel=\cmddescriptionlabel}}% + {\end{list}} +\newcommand*\cmddescriptionlabel[1]{\hspace\labelsep + \normalfont\sffamily #1\hfil} + +% General squeezed itemize. +\newenvironment{itemize*}% + {\begin{itemize}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{itemize}} + +\newsavebox{\wbox} +\newenvironment{warningbox} + {\begin{lrbox}{\wbox} + \begin{minipage}{.95\textwidth}} + {\end{minipage}\end{lrbox}\fbox{\usebox{\wbox}}} +% +% lrbox is used as a representation marking. I changed it to +% lrBox in tne source file, to get closer to logical marking +\newsavebox{\mylrbox} +\newenvironment{lrBox} + {\begin{lrbox}{\mylrbox}} + {\end{lrbox}} + + +% emacs-page output setup +% +\ifx \HCode\UnDef + \providecommand{\Status}{0}% running TeX +\else + \providecommand{\Status}{2}% running TeX4ht +\fi +%\typeout{Status is \Status} +% +\newif\ifSingleColumn +% +% By default, we won't be creating hyperlinks. +\def\href#1#2{#2} +\def\hypertarget#1#2{} +\def\email#1{\href{mailto:#1}{\path{#1}}} % \path comes from url +% +\definecolor{hypercolor}{rgb}{0.5,0.0,0.5} % purplish external links. +% +% +\ifcase\Status + % \Status = 0 + \typeout{TeX Live documentation in DVI format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 1 + \typeout{TeX Live documentation in PDF format} + \RequirePackage[breaklinks, + colorlinks,linkcolor=hypercolor,citecolor=hypercolor, + urlcolor=hypercolor,filecolor=hypercolor, + bookmarksopen, + %pdfstartview={FitBH -320000}, % fails with acrobat7 + hyperindex] + {hyperref} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 2 + \typeout{TeX Live documentation in HTML format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + % read our config file, live4ht.cfg; q.v., for more definitions. + % hyperref load must come after the tex4ht load. + \RequirePackage[live4ht]{tex4ht} + \RequirePackage[tex4ht]{hyperref} \hyperlinkfileprefix{} + % definitions need simplifying for TeX4ht to make relative paths work. + \def\CDref#1#2{\href{../../../../#1}{#2}} + \def\OnCD#1{\href{../../../../#1}{#1}} + \or + % \Status = 3 + \typeout{TeX Live documentation as a Baskerville issue} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \RequirePackage{bvoutln}% outline of baskerville + \SingleColumnfalse + \RequirePackage{multicol} + \or + % \Status = 4 + \typeout{TeX Live documentation as a TUB article} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \SingleColumnfalse + \newenvironment{multicols}[1]{}{} +\fi +% +\ifnum \Status=4 +\else + \RequirePackage{texnames} + \providecommand\TeXXeT{\TeX-{}-% + \kern-.1emX\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT\@} + \def\MP{MetaPost} + \let\mf\MF + \newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} + \newcommand\MIKTEX{MiK\kern-.025em \TeX}% per www.miktex.org + % from pictex.tex: + \ifx\PiC\undefined \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} \fi + \ifx\PiCTeX\undefined \def\PiCTeX{\PiC\kern-.11em\TeX} \fi +\fi +% +% hacking at sections etc., to pay attention to baskerville status +\newcommand{\@condend@multicols}{% + \ifSingleColumn + \else + \def\@tempa{multicols}% + \ifx\@tempa\@currenvir + \end{multicols}% + \fi + \fi +} +\let\Section\section +\renewcommand{\section}{% + \@ifstar + {\Section*}% + {% + \@condend@multicols + \@dblarg\@full@section + }% +} +\def\@full@section[#1]#2{% + \Section[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} +\let\SubSection\subsection +\renewcommand{\subsection}{% + \@ifstar{\SubSection*}% + {% + \@condend@multicols + \@dblarg\@full@subsection + } +} +\def\@full@subsection[#1]#2{% + \SubSection[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} + +% calm things down a bit if we're in a multiple-column version +\ifSingleColumn +\else + \def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ + } + \let\@listi\@listI + \@listi + \def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ + } + \def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep + } + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep + } + \def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep + } + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep + } +\fi +% +% array package stuff +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +% +% shaded rows (using facilities of colortbl) +% +\definecolor{pale}{gray}{.9} +\newcount\colrow +\gdef\RowColor{pale} +\def\SetRowColor{% + \rowcolor{\RowColor}% + \global\advance\colrow by1\relax + \ifodd\colrow + \gdef\RowColor{pale}% + \else + \gdef\RowColor{white}% + \fi +} +% redefine to hack up a reference even though we don't need it... +\renewcommand\@bibitem[1]{\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{?}}\fi\ignorespaces} +% +% \unknownTeXlive is a dummy texlive entry for the biblio +\newcommand\unknownTeXlive[2][\relax]{\textbf{\textsc{unknown}}% + \global\@all@unknown\expandafter{\the\@all@unknown{#2}}% +} +\newtoks\@all@unknown +\global\@all@unknown{} +\AtEndDocument{\@message@unknowns} +\def\@message@unknowns{\edef\@tempa{\the\@all@unknown}% + \ifx\@tempa\@empty + \else + \def\@tempa{*** TeX live package location of }% + \expandafter\@output@unknowns\the\@all@unknown\@empty + \fi +} +\def\@output@unknowns#1{\edef\@tempb{#1}% + \ifx\@tempb\@empty + \typeout{ unknown}% + \else + \message{\@tempa#1,}% + \def\@tempa{}% + \expandafter\@output@unknowns + \fi +} + + +% Silence font warnings about no bold typewriter in LM. +\def\@font@warning#1{}% + +% Silence hyperref warnings about \kern. +\def\HyPsd@Warning#1{}% + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2009 b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2009 new file mode 100644 index 00000000000..12817ff461b --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2009 @@ -0,0 +1,489 @@ +% $Id: tex-live.sty 15704 2009-10-08 22:57:44Z karl $ +% TeX Live documentation style. Written by many people over many years. +% Public domain. +% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{tex-live}[2009/08/23 v1.7 TeX Live documentation style] +% +% colortbl and other packages otherwise make the default be letter, it seems. +\RequirePackage[a4paper,hscale=0.75,lines=60,vmarginratio=10:8]{geometry} +% +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{colortbl} +\RequirePackage{comment} +\RequirePackage{float} +\RequirePackage{graphicx} +\RequirePackage{longtable} +\RequirePackage{shortvrb} +\RequirePackage[normalem]{ulem} +\RequirePackage[obeyspaces]{url} +\RequirePackage{xspace} +% +\RequirePackage{lmodern} +\usepackage{textcomp}% including \textbullet +\def\p.{p.\,} + +% for a proper \acro command. +\RequirePackage{relsize} +%\DeclareRobustCommand{\acro}[1]{\textscale{.9}{#1}\@} +\def\acro#1{\textscale{.9}{#1}\@} +% +\RequirePackage{fancyvrb} +\DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\normalsize} +\DefineVerbatimEnvironment{fverbatim}{Verbatim}{fontsize=\footnotesize} +\DefineVerbatimEnvironment{sverbatim}{Verbatim}{fontsize=\small} +\DefineVerbatimEnvironment{boxedverbatim} + {Verbatim}{fontsize=\scriptsize,frame=single} +\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\normalsize} +\def\verbatiminput#1{\VerbatimInput[fontsize=\scriptsize]{#1}} +\def\boxedverbatiminput#1{\VerbatimInput[frame=single,fontsize=\scriptsize]{#1}} +\def\listinginput#1#2{\VerbatimInput[fontsize=\scriptsize,firstnumber=#1,numbers=left]{#2}} +\MakeShortVerb\| +% +% +% Done with packages. +% +% emacs-page page layout. +% +%ltr \advance\textwidth by 1.1in +%ltr \advance\oddsidemargin by -.55in +%ltr \advance\evensidemargin by -.55in +%ltr % +%ltr \advance\textheight by 1in +%ltr \advance\topmargin by -.5in +%ltr \advance\footskip by -.5in +%ltr % +\message{dimens: textwidth=\the\textwidth\space + oddsidemargin=\the\oddsidemargin\space + evensidemargin=\the\evensidemargin\space + textheight=\the\textheight\space + topmargin=\the\topmargin\space + footskip=\the\footskip} +% +% with settings above, and without a4 (hence letter): +% textwidth=424.49744pt oddsidemargin=22.25128pt evensidemargin=22.25128pt +% textheight=622.26999pt topmargin=-20.135pt footskip=-6.135pt +% +% with default a4paper geometry settings (not enough height): +% textwidth=418.25368pt oddsidemargin=17.3571pt evensidemargin=17.3571pt +% textheight=591.5302pt topmargin=-7.86334pt footskip=30.0pt +% +% with geometry settings [a4paper,hscale=0.75,lines=60,vmarginratio=10:8]: +% textwidth=448.1309pt oddsidemargin=2.41849pt evensidemargin=2.41849pt +% textheight=718.0pt topmargin=-38.68848pt footskip=30.0pt + +% +\pagestyle{headings} +% +% LaTeX parameters. +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\renewcommand{\abovecaptionskip}{4pt} +\renewcommand{\belowcaptionskip}{4pt} +\setcounter{tocdepth}{3} +\setcounter{secnumdepth}{3} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +% +% linebreaking, etc. +\hbadness=4000 +\vbadness=4000 +\emergencystretch=.1\hsize +\relpenalty=500 +% +\def\slash{/\penalty\z@\hskip\z@skip } +% +% various sorts of names +\newcommand*{\pkgname}[1]{\textsf{#1}}% package name +\newcommand*{\optname}[1]{\texttt{#1}}% (package,class) option name +\newcommand*{\cmdname}[1]{\textsf{#1}}% command name +\newcommand*{\colname}[1]{\emph{#1}}% collection name +\newcommand*{\dirname}[1]{\path{#1}}% directory name +\newcommand*{\filename}[1]{\path{#1}}% file name +\newcommand*{\envname}[1]{\texttt{#1}}% environment variable name +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\textsf{#1}}% same as \cmdname +\newcommand{\samp}[1]{`\texttt{#1}'} +\newcommand{\var}[1]{{\sl #1}}% not \textsl, for roman not typewriter slanted. +\newcommand{\ttvar}[1]{\texttt{\var{#1}}} +% +% underlined command input. +%\def\Ucom#1{% +% \uline{\rule[-.2\baselineskip]{0pt}{.9\baselineskip}\ttfamily #1}} +% bold command input +\def\Ucom#1{{\bfseries\ttfamily #1}} +% +% \CDref is for url's with a #, where we need to write the target url and +% displayed url separately in the input, due to catcode madness. +% (We could simplify/remove this next time, I think.) +\def\CDref#1#2{\texttt{#1}} +% +% \OnCD is currently for any other reference to a file or directory in +% the distribution. PDF readers only open .pdf files, though, so we +% should change this to only use \href for those. Or more likely use +% different macros in the source. +\def\OnCD#1{\href{../../../../#1}{\path{#1}}} +% +% \href incorrectly appends .pdf to anything without an extension; these +% definitions using \hyper@linkurl do not, but they fail for .pdf +% references -- which are the only ones that work anyway. So this is +% useless, in practice. +%\def\CDref#1#2{\hyper@linkurl{#2}{../../../../#1}} +%\def\OnCD#1{\hyper@linkurl{\path{#1}}{../../../../#1}} + +% GUI menu/button/tab sequence: +\def\guiseq#1{\textsf{#1}} +\def\arw{\unskip$\rightarrow$\ignorespaces} +% +% Special names. +\def\dpi{$\,$dpi\xspace} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\def\hyph{-} +% +% many abbreviations. +\def\AllTeX{(\La\kern-.075em)\kern-.075em\TeX} +\def\AFMtoTFM{\cmdname{AFM2TFM}\null} +\def\bv{\emph{Baskerville}} +\let\BV=\bv +\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% + \hbox{$\mathcal{S}$}\kern-.075em $} +\def\Dash{\unskip\nobreak\thinspace---\thinspace\ignorespaces} +\def\dvicopy{\cmdname{dvicopy}} +\def\dvidvi{\cmdname{dvidvi}} +\def\dvips{\cmdname{dvips}} +\def\eTeX{$\varepsilon$-\TeX} +\def\fpTeX{\textrm{fp}\TeX\xspace} +\def\GFtoDVI{\cmdname{GFtoDVI}\null} +\def\GFtoPK{\cmdname{GFtoPK}\null} +\def\GFtype{\cmdname{GFtype}} +\def\GUI{\acro{GUI}\xspace} +\def\KPS{Kpathsea} +% This code % is hacked from its definition of \cs{LaTeX}; it allows +% slants (for example) to propagate into the raised (small) `A': +\newcommand{\La}% + {L\kern-.36em + {\setbox0\hbox{T}% + \vbox to\ht0{\hbox{$\m@th$% + \csname S@\f@size\endcsname + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + A}% + \vss}% + }} +\def\OMEGA{$\Omega$} +\def\OzMF{OzMF} +\def\OzMP{OzMP} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\PKtype{\cmdname{PKtype}} +\def\PLtoTF{\cmdname{PLtoTF}\null} +\def\ProTeXt{pro\TeX t} +\def\teTeX{\textrm{te}\TeX\xspace} +\def\TeXLive{\TeX{} Live\xspace} +\def\TFtoPL{\cmdname{TFtoPL}\null} +\def\TK{\TeX\ Collection} +\let\TL=\TeXLive +\def\TypeI{Type~1} +\def\VFtoVP{\cmdname{VFtoVP}\null} +\def\VPtoVF{\cmdname{VPtoVF}\null} +\def\Thanh{H\`an~Th\ifx % get Unicode char in tex4ht's HTML output + \HCode\UnDef\^e\llap{\raise 0.5ex\hbox{\'{}}}\else + \HCode{\string&\#x1EBF;}\fi~Th\`anh} +\def\XEmTeX{\textrm{XEm}\TeX\xspace} +\def\XEmacs{\textrm{XEmacs}\xspace} +\def\XeTeX{Xe\TeX\xspace} +\def\Webc{Web2C} +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\texorpdfstring{\acro{DVD}}{DVD}\xspace} +\providecommand*{\GNU}{\acro{GNU}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\ISO}{\acro{ISO}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{WEB}\xspace} + +% Include an image. +% #1 - name of image (pictures/#1.jpg, always .jpg please) +% #2 - bb for html +% #3 - width for TeX +% +\def\tlimage#1#2#3{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[#2]{../../general/texlive-common/pictures/#1.jpg} + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#3]{pictures/#1.jpg} + \fi + \\[5mm] +} + +\def\tlpng#1#2{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[bb=0 0 1 1]{#1.png}% + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#2]{#1.png}% + \fi +} +% +% description-like environment that uses tt instead of bf, and doesn't +% go to the left margin. Without the \hfil, get an underfull box. +% Don't know why \descriptionlabel doesn't. +% +\newenvironment{ttdescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt % these lists tend to have short descriptions + \parindent=0pt + \let\makelabel=\ttdescriptionlabel}}% + {\end{list}} +\newcommand*\ttdescriptionlabel[1]{\hspace\labelsep + \normalfont\ttfamily #1\hfil} +% +% Likewise, for commands using sans serif. +\newenvironment{cmddescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt + \let\makelabel=\cmddescriptionlabel}}% + {\end{list}} +\newcommand*\cmddescriptionlabel[1]{\hspace\labelsep + \normalfont\sffamily #1\hfil} + +% General squeezed itemize/enumerate. +\newenvironment{itemize*}% + {\begin{itemize}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{itemize}} + +\newenvironment{enumerate*}% + {\begin{enumerate}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{enumerate}} + +\newsavebox{\wbox} +\newenvironment{warningbox} + {\begin{lrbox}{\wbox} + \begin{minipage}{.95\textwidth}} + {\end{minipage}\end{lrbox}\fbox{\usebox{\wbox}}} +% +% lrbox is used as a representation marking. I changed it to +% lrBox in tne source file, to get closer to logical marking +\newsavebox{\mylrbox} +\newenvironment{lrBox} + {\begin{lrbox}{\mylrbox}} + {\end{lrbox}} + + +% emacs-page output setup +% +\ifx \HCode\UnDef + \providecommand{\Status}{0}% running TeX +\else + \providecommand{\Status}{2}% running TeX4ht +\fi +%\typeout{Status is \Status} +% +\newif\ifSingleColumn +% +% By default, we won't be creating hyperlinks. +\def\href#1#2{#2} +\def\hypertarget#1#2{} +\def\email#1{\href{mailto:#1}{\path{#1}}} % \path comes from url +\def\htmlanchor#1{} +% +\definecolor{hypercolor}{rgb}{0.5,0.0,0.5} % purplish external links. +% +% +\ifcase\Status + % \Status = 0 + \typeout{TeX Live documentation in DVI format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 1 + \typeout{TeX Live documentation in PDF format} + \RequirePackage[breaklinks, + colorlinks,linkcolor=hypercolor,citecolor=hypercolor, + urlcolor=hypercolor,filecolor=hypercolor, + bookmarksopen, + %pdfstartview={FitBH -320000}, % fails with acrobat7 + hyperindex] + {hyperref} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 2 + \typeout{TeX Live documentation in HTML format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + % read our config file, live4ht.cfg; q.v., for more definitions. + % hyperref load must come after the tex4ht load. + \RequirePackage[live4ht]{tex4ht} + \RequirePackage[tex4ht]{hyperref} \hyperlinkfileprefix{} + % definitions need simplifying for TeX4ht to make relative paths work. + \def\CDref#1#2{\href{../../../../#1}{#2}} + \def\OnCD#1{\href{../../../../#1}{#1}} + \def\htmlanchor#1{\HCode{}} + \or + % \Status = 3 + \typeout{TeX Live documentation as a Baskerville issue} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \RequirePackage{bvoutln}% outline of baskerville + \SingleColumnfalse + \RequirePackage{multicol} + \or + % \Status = 4 + \typeout{TeX Live documentation as a TUB article} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \SingleColumnfalse + \newenvironment{multicols}[1]{}{} +\fi +% +\ifnum \Status=4 +\else + \RequirePackage{texnames} + \providecommand\TeXXeT{\TeX-{}-% + \kern-.1emX\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT\@} + \def\MP{MetaPost} + \let\mf\MF + \newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} + \newcommand\MIKTEX{MiK\kern-.025em \TeX}% per www.miktex.org + % from pictex.tex: + \ifx\PiC\undefined \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} \fi + \ifx\PiCTeX\undefined \def\PiCTeX{\PiC\kern-.11em\TeX} \fi +\fi +% +% hacking at sections etc., to pay attention to baskerville status +\newcommand{\@condend@multicols}{% + \ifSingleColumn + \else + \def\@tempa{multicols}% + \ifx\@tempa\@currenvir + \end{multicols}% + \fi + \fi +} +\let\Section\section +\renewcommand{\section}{% + \@ifstar + {\Section*}% + {% + \@condend@multicols + \@dblarg\@full@section + }% +} +\def\@full@section[#1]#2{% + \Section[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} +\let\SubSection\subsection +\renewcommand{\subsection}{% + \@ifstar{\SubSection*}% + {% + \@condend@multicols + \@dblarg\@full@subsection + } +} +\def\@full@subsection[#1]#2{% + \SubSection[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} + +% calm things down a bit if we're in a multiple-column version +\ifSingleColumn +\else + \def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ + } + \let\@listi\@listI + \@listi + \def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ + } + \def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep + } + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep + } + \def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep + } + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep + } +\fi +% +% array package stuff +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +% +% shaded rows (using facilities of colortbl) +% +\definecolor{pale}{gray}{.9} +\newcount\colrow +\gdef\RowColor{pale} +\def\SetRowColor{% + \rowcolor{\RowColor}% + \global\advance\colrow by1\relax + \ifodd\colrow + \gdef\RowColor{pale}% + \else + \gdef\RowColor{white}% + \fi +} +% redefine to hack up a reference even though we don't need it... +\renewcommand\@bibitem[1]{\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{?}}\fi\ignorespaces} +% +% \unknownTeXlive is a dummy texlive entry for the biblio +\newcommand\unknownTeXlive[2][\relax]{\textbf{\textsc{unknown}}% + \global\@all@unknown\expandafter{\the\@all@unknown{#2}}% +} +\newtoks\@all@unknown +\global\@all@unknown{} +\AtEndDocument{\@message@unknowns} +\def\@message@unknowns{\edef\@tempa{\the\@all@unknown}% + \ifx\@tempa\@empty + \else + \def\@tempa{*** TeX Live package location of }% + \expandafter\@output@unknowns\the\@all@unknown\@empty + \fi +} +\def\@output@unknowns#1{\edef\@tempb{#1}% + \ifx\@tempb\@empty + \typeout{ unknown}% + \else + \message{\@tempa#1,}% + \def\@tempa{}% + \expandafter\@output@unknowns + \fi +} + + +% Silence font warnings about no bold typewriter in LM. +\def\@font@warning#1{}% + +% Silence hyperref warnings about \kern. +\def\HyPsd@Warning#1{}% + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2010 b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2010 new file mode 100644 index 00000000000..3af32be1ab1 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/tex-live.sty-2010 @@ -0,0 +1,493 @@ +% $Id: tex-live.sty 19329 2010-07-10 00:44:42Z karl $ +% TeX Live documentation style. Written by many people over many years. +% Public domain. +% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{tex-live}[2009/08/23 v1.7 TeX Live documentation style] +% +% colortbl and other packages otherwise make the default be letter, it seems. +\RequirePackage[a4paper,hscale=0.75,lines=60,vmarginratio=10:8]{geometry} +% +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{colortbl} +\RequirePackage{comment} +\RequirePackage{float} +\RequirePackage{graphicx} +\RequirePackage{longtable} +\RequirePackage{shortvrb} +\RequirePackage[normalem]{ulem} +\RequirePackage[obeyspaces]{url} +\RequirePackage{xspace} +% +\RequirePackage{lmodern} +\usepackage{textcomp}% including \textbullet +\def\p.{p.\,} + +% for a proper \acro command. +\RequirePackage{relsize} +%\DeclareRobustCommand{\acro}[1]{\textscale{.9}{#1}\@} +\def\acro#1{\textscale{.9}{#1}\@} +% +\RequirePackage{fancyvrb} +\DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\normalsize} +\DefineVerbatimEnvironment{fverbatim}{Verbatim}{fontsize=\footnotesize} +\DefineVerbatimEnvironment{sverbatim}{Verbatim}{fontsize=\small} +\DefineVerbatimEnvironment{boxedverbatim} + {Verbatim}{fontsize=\footnotesize,frame=single} +\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\normalsize} +\def\verbatiminput#1{\VerbatimInput[fontsize=\scriptsize]{#1}} +\def\boxedverbatiminput#1{\VerbatimInput[frame=single,fontsize=\scriptsize]{#1}} +\def\listinginput#1#2{\VerbatimInput[fontsize=\scriptsize,firstnumber=#1,numbers=left]{#2}} +\MakeShortVerb\| +% +% +% Done with packages. +% +% emacs-page page layout. +% +%ltr \advance\textwidth by 1.1in +%ltr \advance\oddsidemargin by -.55in +%ltr \advance\evensidemargin by -.55in +%ltr % +%ltr \advance\textheight by 1in +%ltr \advance\topmargin by -.5in +%ltr \advance\footskip by -.5in +%ltr % +\message{dimens: textwidth=\the\textwidth\space + oddsidemargin=\the\oddsidemargin\space + evensidemargin=\the\evensidemargin\space + textheight=\the\textheight\space + topmargin=\the\topmargin\space + footskip=\the\footskip} +% +% with settings above, and without a4 (hence letter): +% textwidth=424.49744pt oddsidemargin=22.25128pt evensidemargin=22.25128pt +% textheight=622.26999pt topmargin=-20.135pt footskip=-6.135pt +% +% with default a4paper geometry settings (not enough height): +% textwidth=418.25368pt oddsidemargin=17.3571pt evensidemargin=17.3571pt +% textheight=591.5302pt topmargin=-7.86334pt footskip=30.0pt +% +% with geometry settings [a4paper,hscale=0.75,lines=60,vmarginratio=10:8]: +% textwidth=448.1309pt oddsidemargin=2.41849pt evensidemargin=2.41849pt +% textheight=718.0pt topmargin=-38.68848pt footskip=30.0pt + +% +\pagestyle{headings} +% +% LaTeX parameters. +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\renewcommand{\abovecaptionskip}{4pt} +\renewcommand{\belowcaptionskip}{4pt} +\setcounter{tocdepth}{3} +\setcounter{secnumdepth}{3} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +% +% linebreaking, etc. +\hbadness=4000 +\vbadness=4000 +\emergencystretch=.1\hsize +\relpenalty=500 +% +\def\slash{/\penalty\z@\hskip\z@skip } +% +% various sorts of names +\newcommand*{\pkgname}[1]{\textsf{#1}}% package name +\newcommand*{\optname}[1]{\texttt{#1}}% (package,class) option name +\newcommand*{\cmdname}[1]{\textsf{#1}}% command name +\newcommand*{\colname}[1]{\emph{#1}}% collection name +\newcommand*{\dirname}[1]{\path{#1}}% directory name +\def\filename#1{\path{#1}}% file name +\newcommand*{\envname}[1]{\texttt{#1}}% environment variable name +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\textsf{#1}}% same as \cmdname +\newcommand{\samp}[1]{`\texttt{#1}'} +\newcommand{\var}[1]{{\sl #1}}% not \textsl, for roman not typewriter slanted. +\newcommand{\ttvar}[1]{\texttt{\var{#1}}} +% +% underlined command input. +%\def\Ucom#1{% +% \uline{\rule[-.2\baselineskip]{0pt}{.9\baselineskip}\ttfamily #1}} +% bold command input +\def\Ucom#1{{\bfseries\ttfamily #1}} +% +% \CDref is for url's with a #, where we need to write the target url and +% displayed url separately in the input, due to catcode madness. +% (We could simplify/remove this next time, I think.) +\def\CDref#1#2{\texttt{#1}} +% +% \OnCD no longer has any use at all, since we don't have unpacked files +% on the DVD and it has never worked when reading the PDF online. +\def\OnCD#1{\path{#1}} +% +% \OnCD is currently for any other reference to a file or directory in +% the distribution. PDF readers only open .pdf files, though, so we +% should change this to only use \href for those. Or more likely use +% different macros in the source. +%\def\OnCD#1{\href{../../../../#1}{\path{#1}}} +% +% \href incorrectly appends .pdf to anything without an extension; these +% definitions using \hyper@linkurl do not, but they fail for .pdf +% references -- which are the only ones that work anyway. So this is +% useless, in practice. +%\def\CDref#1#2{\hyper@linkurl{#2}{../../../../#1}} +%\def\OnCD#1{\hyper@linkurl{\path{#1}}{../../../../#1}} + +% GUI menu/button/tab sequence: +\def\guiseq#1{\textsf{#1}} +\def\arw{\unskip$\rightarrow$\ignorespaces} +% +% Special names. +\def\dpi{$\,$dpi\xspace} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\def\hyph{-} +% +% many abbreviations. +\def\AllTeX{(\La\kern-.075em)\kern-.075em\TeX} +\def\AFMtoTFM{\cmdname{AFM2TFM}\null} +\def\bv{\emph{Baskerville}} +\let\BV=\bv +\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% + \hbox{$\mathcal{S}$}\kern-.075em $} +\def\Dash{\unskip\nobreak\thinspace---\thinspace\ignorespaces} +\def\dvicopy{\cmdname{dvicopy}} +\def\dvidvi{\cmdname{dvidvi}} +\def\dvips{\cmdname{dvips}} +\def\eTeX{$\varepsilon$-\TeX} +\def\fpTeX{\textrm{fp}\TeX\xspace} +\def\GFtoDVI{\cmdname{GFtoDVI}\null} +\def\GFtoPK{\cmdname{GFtoPK}\null} +\def\GFtype{\cmdname{GFtype}} +\def\GUI{\acro{GUI}\xspace} +\def\KPS{Kpathsea} +% This code % is hacked from its definition of \cs{LaTeX}; it allows +% slants (for example) to propagate into the raised (small) `A': +\newcommand{\La}% + {L\kern-.36em + {\setbox0\hbox{T}% + \vbox to\ht0{\hbox{$\m@th$% + \csname S@\f@size\endcsname + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + A}% + \vss}% + }} +\def\OMEGA{$\Omega$} +\def\OzMF{OzMF} +\def\OzMP{OzMP} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\PKtype{\cmdname{PKtype}} +\def\PLtoTF{\cmdname{PLtoTF}\null} +\def\ProTeXt{pro\TeX t} +\def\teTeX{\textrm{te}\TeX\xspace} +\def\TeXLive{\TeX{} Live\xspace} +\def\TFtoPL{\cmdname{TFtoPL}\null} +\def\TK{\TeX\ Collection} +\let\TL=\TeXLive +\def\TypeI{Type~1} +\def\VFtoVP{\cmdname{VFtoVP}\null} +\def\VPtoVF{\cmdname{VPtoVF}\null} +\def\Thanh{H\`an~Th\ifx % get Unicode char in tex4ht's HTML output + \HCode\UnDef\^e\llap{\raise 0.5ex\hbox{\'{}}}\else + \HCode{\string&\#x1EBF;}\fi~Th\`anh} +\def\XEmTeX{\textrm{XEm}\TeX\xspace} +\def\XEmacs{\textrm{XEmacs}\xspace} +\def\XeTeX{Xe\TeX} +\def\Webc{Web2C} +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\texorpdfstring{\acro{DVD}}{DVD}\xspace} +\providecommand*{\GNU}{\acro{GNU}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\ISO}{\acro{ISO}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{WEB}\xspace} + +% Include an image. +% #1 - name of image (pictures/#1.jpg, always .jpg please) +% #2 - bb for html +% #3 - width for TeX +% +\def\tlimage#1#2#3{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[#2]{../../general/texlive-common/pictures/#1.jpg} + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#3]{pictures/#1.jpg} + \fi + \\[5mm] +} + +\def\tlpng#1#2{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[bb=0 0 1 1]{#1.png}% + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#2]{#1.png}% + \fi +} +% +% description-like environment that uses tt instead of bf, and doesn't +% go to the left margin. Without the \hfil, get an underfull box. +% Don't know why \descriptionlabel doesn't. +% +\newenvironment{ttdescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt % these lists tend to have short descriptions + \parindent=0pt + \let\makelabel=\ttdescriptionlabel}}% + {\end{list}} +\newcommand*\ttdescriptionlabel[1]{\hspace\labelsep + \normalfont\ttfamily #1\hfil} +% +% Likewise, for commands using sans serif. +\newenvironment{cmddescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt + \let\makelabel=\cmddescriptionlabel}}% + {\end{list}} +\newcommand*\cmddescriptionlabel[1]{\hspace\labelsep + \normalfont\sffamily #1\hfil} + +% General squeezed itemize/enumerate. +\newenvironment{itemize*}% + {\begin{itemize}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{itemize}} + +\newenvironment{enumerate*}% + {\begin{enumerate}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{enumerate}} + +\newsavebox{\wbox} +\newenvironment{warningbox} + {\begin{lrbox}{\wbox} + \begin{minipage}{.95\textwidth}} + {\end{minipage}\end{lrbox}\fbox{\usebox{\wbox}}} +% +% lrbox is used as a representation marking. I changed it to +% lrBox in tne source file, to get closer to logical marking +\newsavebox{\mylrbox} +\newenvironment{lrBox} + {\begin{lrbox}{\mylrbox}} + {\end{lrbox}} + + +% emacs-page output setup +% +\ifx \HCode\UnDef + \providecommand{\Status}{0}% running TeX +\else + \providecommand{\Status}{2}% running TeX4ht +\fi +%\typeout{Status is \Status} +% +\newif\ifSingleColumn +% +% By default, we won't be creating hyperlinks. +\def\href#1#2{#2} +\def\hypertarget#1#2{} +\def\email#1{\href{mailto:#1}{\path{#1}}} % \path comes from url +\def\htmlanchor#1{} +% +\definecolor{hypercolor}{rgb}{0.5,0.0,0.5} % purplish external links. +% +% +\ifcase\Status + % \Status = 0 + \typeout{TeX Live documentation in DVI format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 1 + \typeout{TeX Live documentation in PDF format} + \RequirePackage[breaklinks, + colorlinks,linkcolor=hypercolor,citecolor=hypercolor, + urlcolor=hypercolor,filecolor=hypercolor, + bookmarksopen, + %pdfstartview={FitBH -320000}, % fails with acrobat7 + hyperindex] + {hyperref} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 2 + \typeout{TeX Live documentation in HTML format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + % read our config file, live4ht.cfg; q.v., for more definitions. + % hyperref load must come after the tex4ht load. + \RequirePackage[live4ht]{tex4ht} + \RequirePackage[tex4ht]{hyperref} \hyperlinkfileprefix{} + % definitions need simplifying for TeX4ht to make relative paths work. + \def\CDref#1#2{\href{../../../../#1}{#2}} + \def\OnCD#1{\href{../../../../#1}{#1}} + \def\htmlanchor#1{\HCode{}} + \or + % \Status = 3 + \typeout{TeX Live documentation as a Baskerville issue} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \RequirePackage{bvoutln}% outline of baskerville + \SingleColumnfalse + \RequirePackage{multicol} + \or + % \Status = 4 + \typeout{TeX Live documentation as a TUB article} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \SingleColumnfalse + \newenvironment{multicols}[1]{}{} +\fi +% +\ifnum \Status=4 +\else + \RequirePackage{texnames} + \providecommand\TeXXeT{\TeX-{}-% + \kern-.1emX\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT\@} + \def\MP{MetaPost} + \let\mf\MF + \newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} + \newcommand\MIKTEX{MiK\kern-.025em \TeX}% per www.miktex.org + % from pictex.tex: + \ifx\PiC\undefined \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} \fi + \ifx\PiCTeX\undefined \def\PiCTeX{\PiC\kern-.11em\TeX} \fi +\fi +% +% hacking at sections etc., to pay attention to baskerville status +\newcommand{\@condend@multicols}{% + \ifSingleColumn + \else + \def\@tempa{multicols}% + \ifx\@tempa\@currenvir + \end{multicols}% + \fi + \fi +} +\let\Section\section +\renewcommand{\section}{% + \@ifstar + {\Section*}% + {% + \@condend@multicols + \@dblarg\@full@section + }% +} +\def\@full@section[#1]#2{% + \Section[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} +\let\SubSection\subsection +\renewcommand{\subsection}{% + \@ifstar{\SubSection*}% + {% + \@condend@multicols + \@dblarg\@full@subsection + } +} +\def\@full@subsection[#1]#2{% + \SubSection[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} + +% calm things down a bit if we're in a multiple-column version +\ifSingleColumn +\else + \def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ + } + \let\@listi\@listI + \@listi + \def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ + } + \def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep + } + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep + } + \def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep + } + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep + } +\fi +% +% array package stuff +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +% +% shaded rows (using facilities of colortbl) +% +\definecolor{pale}{gray}{.9} +\newcount\colrow +\gdef\RowColor{pale} +\def\SetRowColor{% + \rowcolor{\RowColor}% + \global\advance\colrow by1\relax + \ifodd\colrow + \gdef\RowColor{pale}% + \else + \gdef\RowColor{white}% + \fi +} +% redefine to hack up a reference even though we don't need it... +\renewcommand\@bibitem[1]{\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{?}}\fi\ignorespaces} +% +% \unknownTeXlive is a dummy texlive entry for the biblio +\newcommand\unknownTeXlive[2][\relax]{\textbf{\textsc{unknown}}% + \global\@all@unknown\expandafter{\the\@all@unknown{#2}}% +} +\newtoks\@all@unknown +\global\@all@unknown{} +\AtEndDocument{\@message@unknowns} +\def\@message@unknowns{\edef\@tempa{\the\@all@unknown}% + \ifx\@tempa\@empty + \else + \def\@tempa{*** TeX Live package location of }% + \expandafter\@output@unknowns\the\@all@unknown\@empty + \fi +} +\def\@output@unknowns#1{\edef\@tempb{#1}% + \ifx\@tempb\@empty + \typeout{ unknown}% + \else + \message{\@tempa#1,}% + \def\@tempa{}% + \expandafter\@output@unknowns + \fi +} + + +% Silence font warnings about no bold typewriter in LM. +\def\@font@warning#1{}% + +% Silence hyperref warnings about \kern. +\def\HyPsd@Warning#1{}% + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-en/archive/texlive.pl b/Master/texmf-dist/doc/texlive/texlive-en/archive/texlive.pl new file mode 100644 index 00000000000..33a19a801d6 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/archive/texlive.pl @@ -0,0 +1,574 @@ +$texlive{"a0poster"}="latex3"; +$texlive{"aaai"}="latex3"; +$texlive{"abstyles"}="bibtex3"; +$texlive{"accfonts"}="fonts3"; +$texlive{"achemso"}="latex3"; +$texlive{"acronym"}="latex3"; +$texlive{"adfathesis"}="latex3"; +$texlive{"adobeother"}="fonts3"; +$texlive{"adobestd"}="fonts1"; +$texlive{"adrlist"}="latex3"; +$texlive{"ae"}="fonts2"; +$texlive{"aguplus"}="latex3"; +$texlive{"aiaa"}="latex3"; +$texlive{"akletter"}="latex3"; +$texlive{"alatex"}="formats3"; +$texlive{"alg"}="latex3"; +$texlive{"algorithms"}="latex3"; +$texlive{"alphaev5-osf4.0d"}="systems1"; +$texlive{"alphaev5-osf4.0d"}="systems2"; +$texlive{"alphaev5-osf4.0d"}="systems3"; +$texlive{"altfont"}="latex3"; +$texlive{"amsfonts"}="fonts2"; +$texlive{"amslatex"}="latex2"; +$texlive{"amstex"}="plain2"; +$texlive{"answers"}="latex3"; +$texlive{"antyktor"}="fonts3"; +$texlive{"apa"}="latex3"; +$texlive{"apl"}="fonts3"; +$texlive{"appendix"}="latex3"; +$texlive{"ar"}="fonts3"; +$texlive{"arabtex"}="lang3"; +$texlive{"arydshln"}="latex3"; +$texlive{"asaetr"}="latex3"; +$texlive{"ascii"}="fonts3"; +$texlive{"astro"}="fonts3"; +$texlive{"aurora"}="dvips3"; +$texlive{"authorindex"}="latex3"; +$texlive{"autotab"}="latex3"; +$texlive{"babel"}="generic2"; +$texlive{"backgammon"}="fonts3"; +$texlive{"bakoma"}="fonts2"; +$texlive{"barcode2"}="fonts3"; +$texlive{"barcodes"}="fonts3"; +$texlive{"barr"}="graphics3"; +$texlive{"bbding"}="fonts3"; +$texlive{"bbm"}="fonts3"; +$texlive{"bbold"}="fonts3"; +$texlive{"bbtbase"}="bibtex1"; +$texlive{"bbtdoc"}="bibtex2"; +$texlive{"beebe"}="bibtex2"; +$texlive{"belleek"}="fonts2"; +$texlive{"beton"}="latex3"; +$texlive{"bez123"}="latex3"; +$texlive{"bezos"}="latex3"; +$texlive{"bibarts"}="bibtex3"; +$texlive{"biblist"}="latex3"; +$texlive{"blue"}="formats3"; +$texlive{"bluesky"}="fonts1"; +$texlive{"booktabs"}="latex2"; +$texlive{"borceux"}="graphics3"; +$texlive{"bosisio"}="latex3"; +$texlive{"bridge"}="latex3"; +$texlive{"brushscr"}="fonts3"; +$texlive{"c-pascal"}="generic3"; +$texlive{"calendar"}="latex3"; +$texlive{"calligra"}="fonts3"; +$texlive{"calrsfs"}="latex3"; +$texlive{"camel"}="latex3"; +$texlive{"caption"}="latex2"; +$texlive{"carlisle"}="latex2"; +$texlive{"casyl"}="lang3"; +$texlive{"catalog"}="doc2"; +$texlive{"cbgreek"}="fonts3"; +$texlive{"cc-pl"}="fonts2"; +$texlive{"ccaption"}="latex3"; +$texlive{"ccfonts"}="latex3"; +$texlive{"cchess"}="fonts3"; +$texlive{"cdcover"}="latex3"; +$texlive{"cellular"}="plain3"; +$texlive{"changebar"}="latex2"; +$texlive{"chemcono"}="latex3"; +$texlive{"chemsym"}="latex3"; +$texlive{"cheq"}="fonts3"; +$texlive{"cherokee"}="fonts3"; +$texlive{"chess"}="fonts3"; +$texlive{"china2e"}="latex3"; +$texlive{"circ"}="graphics3"; +$texlive{"cirth"}="fonts3"; +$texlive{"cite"}="latex2"; +$texlive{"cjk"}="lang3"; +$texlive{"cm"}="fonts1"; +$texlive{"cmbright"}="fonts2"; +$texlive{"cmcyr"}="fonts3"; +$texlive{"cmcyralt"}="latex3"; +$texlive{"cmdtrack"}="latex2"; +$texlive{"cmextra"}="fonts2"; +$texlive{"cmpica"}="fonts3"; +$texlive{"cmpk"}="fonts3"; +$texlive{"cmsd"}="latex3"; +$texlive{"codepage"}="latex3"; +$texlive{"colorsep"}="dvips3"; +$texlive{"colortab"}="plain3"; +$texlive{"comment"}="latex3"; +$texlive{"concmath"}="fonts3"; +$texlive{"concrete"}="fonts3"; +$texlive{"context"}="formats2"; +$texlive{"covington"}="latex3"; +$texlive{"croatian"}="lang3"; +$texlive{"crop"}="latex3"; +$texlive{"crossword"}="latex3"; +$texlive{"crosswrd"}="latex3"; +$texlive{"csfonts"}="fonts2"; +$texlive{"cslatex"}="lang2"; +$texlive{"csplain"}="lang2"; +$texlive{"cspsfonts"}="fonts2"; +$texlive{"cstug"}="doc3"; +$texlive{"cursor"}="latex3"; +$texlive{"curves"}="graphics3"; +$texlive{"custom-bib"}="bibtex2"; +$texlive{"cyrillic"}="lang2"; +$texlive{"dancers"}="fonts3"; +$texlive{"deleq"}="latex3"; +$texlive{"devanagari"}="lang3"; +$texlive{"dialogl"}="latex3"; +$texlive{"dinbrief"}="latex3"; +$texlive{"directory"}="bibtex3"; +$texlive{"dotseqn"}="latex3"; +$texlive{"draftcopy"}="latex3"; +$texlive{"dratex"}="graphics3"; +$texlive{"dropping"}="latex3"; +$texlive{"dstroke"}="fonts3"; +$texlive{"dtk"}="latex3"; +$texlive{"duerer"}="fonts3"; +$texlive{"dvipdfm"}="doc2"; +$texlive{"dvipsbase"}="dvips1"; +$texlive{"dvipsdoc"}="dvips2"; +$texlive{"ean"}="generic3"; +$texlive{"easy"}="latex3"; +$texlive{"ec"}="fonts2"; +$texlive{"ecc"}="fonts3"; +$texlive{"ecltree"}="latex2"; +$texlive{"eco"}="fonts3"; +$texlive{"ecpk"}="fonts3"; +$texlive{"edmac"}="plain3"; +$texlive{"eepic"}="graphics2"; +$texlive{"egplot"}="latex3"; +$texlive{"eiad"}="fonts3"; +$texlive{"eijkhout"}="generic3"; +$texlive{"elsevier"}="latex3"; +$texlive{"elvish"}="fonts3"; +$texlive{"emp"}="latex3"; +$texlive{"emulateapj"}="latex3"; +$texlive{"encodings"}="omega2"; +$texlive{"endfloat"}="latex3"; +$texlive{"engwar"}="fonts3"; +$texlive{"envbig"}="latex3"; +$texlive{"envlab"}="latex3"; +$texlive{"epigraph"}="latex3"; +$texlive{"eplain"}="formats2"; +$texlive{"eqname"}="latex3"; +$texlive{"eqnarray"}="latex3"; +$texlive{"esieecv"}="latex3"; +$texlive{"etexbase"}="etex2"; +$texlive{"etruscan"}="fonts3"; +$texlive{"euler"}="latex3"; +$texlive{"euro"}="fonts2"; +$texlive{"euro2"}="latex3"; +$texlive{"eurofont"}="fonts2"; +$texlive{"europs"}="fonts2"; +$texlive{"eurosans"}="latex3"; +$texlive{"eurosym"}="fonts2"; +$texlive{"euxm"}="fonts3"; +$texlive{"exam"}="latex3"; +$texlive{"examdesign"}="latex3"; +$texlive{"expdlist"}="latex3"; +$texlive{"expl3"}="latex3"; +$texlive{"export"}="latex3"; +$texlive{"fancybox"}="latex2"; +$texlive{"fancyhdr"}="latex2"; +$texlive{"fancyref"}="latex2"; +$texlive{"fancyvrb"}="latex2"; +$texlive{"fax"}="latex3"; +$texlive{"fc"}="fonts3"; +$texlive{"feynmf"}="graphics3"; +$texlive{"finbib"}="bibtex3"; +$texlive{"float"}="latex2"; +$texlive{"floatfig"}="latex3"; +$texlive{"floatflt"}="latex3"; +$texlive{"fltpage"}="latex3"; +$texlive{"fncychap"}="latex3"; +$texlive{"foilhtml"}="latex3"; +$texlive{"foiltex"}="latex3"; +$texlive{"fontinst"}="generic2"; +$texlive{"fontname"}="doc2"; +$texlive{"footbib"}="latex3"; +$texlive{"footmisc"}="latex2"; +$texlive{"footnpag"}="latex3"; +$texlive{"formats"}="texlive2"; +$texlive{"formula"}="latex3"; +$texlive{"fp"}="latex3"; +$texlive{"frankenstein"}="latex3"; +$texlive{"french"}="lang2"; +$texlive{"fribrief"}="latex3"; +$texlive{"fullblck"}="latex3"; +$texlive{"fullpict"}="latex3"; +$texlive{"fundus"}="latex3"; +$texlive{"futhark"}="fonts3"; +$texlive{"g-brief"}="latex3"; +$texlive{"gb4e"}="latex3"; +$texlive{"genealogy"}="fonts3"; +$texlive{"general"}="doc1"; +$texlive{"genmisc"}="generic3"; +$texlive{"geometry"}="latex3"; +$texlive{"geomsty"}="latex3"; +$texlive{"german"}="lang2"; +$texlive{"germbib"}="bibtex2"; +$texlive{"germdoc"}="doc2"; +$texlive{"gloss"}="latex3"; +$texlive{"gn-logic"}="latex3"; +$texlive{"go"}="fonts3"; +$texlive{"gothic"}="fonts3"; +$texlive{"graphics"}="latex1"; +$texlive{"greek6cbc"}="fonts3"; +$texlive{"grnumalt"}="latex3"; +$texlive{"grtimes"}="lang3"; +$texlive{"guides"}="doc2"; +$texlive{"gustlib"}="plain2"; +$texlive{"hands"}="fonts3"; +$texlive{"hanging"}="latex3"; +$texlive{"harpoon"}="latex3"; +$texlive{"harvard"}="bibtex2"; +$texlive{"harvmac"}="plain3"; +$texlive{"hh"}="latex3"; +$texlive{"hilowres"}="latex3"; +$texlive{"histogr"}="latex3"; +$texlive{"hoekwater"}="fonts2"; +$texlive{"hppa1.1-hpux10.10"}="systems1"; +$texlive{"hppa1.1-hpux10.10"}="systems2"; +$texlive{"hppa1.1-hpux10.10"}="systems3"; +$texlive{"html"}="doc2"; +$texlive{"hvmaths"}="fonts3"; +$texlive{"hyper"}="latex3"; +$texlive{"hyperref"}="latex2"; +$texlive{"hyphen"}="lang1"; +$texlive{"hyphenat"}="latex3"; +$texlive{"i386-linux"}="systems1"; +$texlive{"i386-linux"}="systems2"; +$texlive{"i386-linux"}="systems3"; +$texlive{"i386-linux-libc5"}="systems1"; +$texlive{"i386-linux-libc5"}="systems2"; +$texlive{"i386-linux-libc5"}="systems3"; +$texlive{"ibm"}="fonts3"; +$texlive{"ieeepes"}="latex3"; +$texlive{"ifacmtg"}="latex3"; +$texlive{"imac"}="latex3"; +$texlive{"indxcite"}="latex3"; +$texlive{"info"}="doc2"; +$texlive{"ini"}="texlive1"; +$texlive{"insbox"}="generic3"; +$texlive{"ipa"}="latex3"; +$texlive{"isostds"}="latex3"; +$texlive{"jadetex"}="formats2"; +$texlive{"jhep"}="latex3"; +$texlive{"jknappen"}="latex2"; +$texlive{"jsmisc"}="plain3"; +$texlive{"jura"}="latex3"; +$texlive{"kalender"}="latex3"; +$texlive{"karnaugh"}="latex3"; +$texlive{"kdgreek"}="fonts3"; +$texlive{"kluwer"}="latex3"; +$texlive{"knuth"}="doc3"; +$texlive{"koma-script"}="latex3"; +$texlive{"kuvio"}="graphics3"; +$texlive{"labels"}="latex3"; +$texlive{"lamstex"}="formats3"; +$texlive{"lastpage"}="latex3"; +$texlive{"latexfonts"}="latex1"; +$texlive{"layouts"}="latex3"; +$texlive{"leaflet"}="latex3"; +$texlive{"leftidx"}="latex3"; +$texlive{"lettrine"}="latex3"; +$texlive{"levy"}="latex3"; +$texlive{"lgc"}="doc3"; +$texlive{"lgreek"}="latex3"; +$texlive{"lh"}="fonts2"; +$texlive{"lhcyr"}="latex3"; +$texlive{"lineno"}="latex3"; +$texlive{"linguex"}="latex3"; +$texlive{"listings"}="latex3"; +$texlive{"lkort"}="doc3"; +$texlive{"localloc"}="latex3"; +$texlive{"logic"}="fonts3"; +$texlive{"lollipop"}="formats3"; +$texlive{"ltablex"}="latex3"; +$texlive{"ltx2rtf"}="texlive2"; +$texlive{"ltxbase"}="latex1"; +$texlive{"ltxdoc"}="doc2"; +$texlive{"ltxdoc"}="latex1"; +$texlive{"ltxmisc"}="latex2"; +$texlive{"lucida"}="fonts2"; +$texlive{"ly1"}="latex3"; +$texlive{"mailing"}="latex3"; +$texlive{"makeindex"}="doc1"; +$texlive{"malayalam"}="lang3"; +$texlive{"malvern"}="fonts3"; +$texlive{"mapcodes"}="latex3"; +$texlive{"maple"}="latex3"; +$texlive{"margbib"}="latex3"; +$texlive{"marvosym"}="fonts3"; +$texlive{"mathcomp"}="latex2"; +$texlive{"mathematica"}="fonts3"; +$texlive{"mathpple"}="fonts3"; +$texlive{"mcite"}="latex3"; +$texlive{"mdwtools"}="latex3"; +$texlive{"metasupp"}="texlive1"; +$texlive{"method"}="latex3"; +$texlive{"mex"}="lang2"; +$texlive{"mff"}="latex3"; +$texlive{"mflogo"}="latex2"; +$texlive{"mfmisc"}="fonts1"; +$texlive{"mfnfss"}="latex2"; +$texlive{"mfpic"}="graphics3"; +$texlive{"mft"}="texlive1"; +$texlive{"mftoeps"}="fonts3"; +$texlive{"mhs"}="latex3"; +$texlive{"midnight"}="generic3"; +$texlive{"minitoc"}="latex3"; +$texlive{"mips-irix6.2"}="systems1"; +$texlive{"mips-irix6.2"}="systems2"; +$texlive{"mips-irix6.2"}="systems3"; +$texlive{"misc209"}="latex2"; +$texlive{"mltex"}="latex2"; +$texlive{"mnras"}="plain3"; +$texlive{"monotype"}="fonts3"; +$texlive{"montex"}="lang3"; +$texlive{"morehelp"}="latex3"; +$texlive{"moresize"}="latex3"; +$texlive{"moreverb"}="latex3"; +$texlive{"morse"}="fonts3"; +$texlive{"mpattern"}="metapost2"; +$texlive{"mpbase"}="metapost1"; +$texlive{"mpfnmark"}="latex3"; +$texlive{"ms"}="latex3"; +$texlive{"mslapa"}="latex3"; +$texlive{"mtbe"}="plain3"; +$texlive{"multenum"}="latex3"; +$texlive{"multi"}="dvips3"; +$texlive{"multirow"}="latex3"; +$texlive{"musictex"}="generic3"; +$texlive{"musixtex"}="generic3"; +$texlive{"nassflow"}="latex3"; +$texlive{"natbib"}="bibtex2"; +$texlive{"ncctools"}="latex2"; +$texlive{"newalg"}="latex3"; +$texlive{"newlfm"}="latex3"; +$texlive{"newsletr"}="plain3"; +$texlive{"newthm"}="latex3"; +$texlive{"niceframe"}="latex3"; +$texlive{"nomencl"}="latex3"; +$texlive{"nrc"}="latex3"; +$texlive{"ntg"}="doc3"; +$texlive{"ntgclass"}="latex2"; +$texlive{"ntheorem"}="latex3"; +$texlive{"numline"}="latex3"; +$texlive{"objectz"}="latex3"; +$texlive{"oca"}="fonts3"; +$texlive{"ocr-a"}="fonts3"; +$texlive{"ogham"}="fonts3"; +$texlive{"ogonek"}="latex3"; +$texlive{"oldstyle"}="latex3"; +$texlive{"omegabase"}="omega2"; +$texlive{"omegafonts"}="omega2"; +$texlive{"osmanian"}="fonts3"; +$texlive{"ot2cyr"}="fonts2"; +$texlive{"overpic"}="latex3"; +$texlive{"pacioli"}="fonts3"; +$texlive{"pageno"}="latex3"; +$texlive{"pandora"}="fonts3"; +$texlive{"paper"}="latex3"; +$texlive{"paralist"}="latex3"; +$texlive{"parallel"}="latex3"; +$texlive{"patch"}="latex2"; +$texlive{"pawpict"}="latex3"; +$texlive{"pb-diagram"}="latex3"; +$texlive{"pdcmac"}="plain3"; +$texlive{"pdfscreen"}="latex3"; +$texlive{"pdftex"}="pdftex2"; +$texlive{"permute"}="latex3"; +$texlive{"phoenician"}="fonts3"; +$texlive{"phonetic"}="fonts3"; +$texlive{"physe"}="formats3"; +$texlive{"phyzzx"}="formats3"; +$texlive{"picinpar"}="latex3"; +$texlive{"picins"}="latex3"; +$texlive{"pictex"}="graphics2"; +$texlive{"piff"}="latex3"; +$texlive{"pl"}="latex3"; +$texlive{"pl-qx"}="fonts2"; +$texlive{"plainmisc"}="plain1"; +$texlive{"plaintex"}="plain1"; +$texlive{"plari"}="latex3"; +$texlive{"platex"}="lang2"; +$texlive{"play"}="latex3"; +$texlive{"plcalendar"}="plain3"; +$texlive{"plfonts"}="fonts2"; +$texlive{"plgraph"}="generic3"; +$texlive{"plpatch"}="plain3"; +$texlive{"pmgraph"}="latex3"; +$texlive{"poligraf"}="generic3"; +$texlive{"polish"}="doc3"; +$texlive{"polyglot"}="latex3"; +$texlive{"prettyref"}="latex3"; +$texlive{"progkeys"}="latex3"; +$texlive{"program"}="latex3"; +$texlive{"proofs"}="latex3"; +$texlive{"protex"}="generic3"; +$texlive{"psafm"}="fonts3"; +$texlive{"psfig"}="generic3"; +$texlive{"psfrag"}="graphics2"; +$texlive{"psizzl"}="formats3"; +$texlive{"pslatex"}="latex2"; +$texlive{"psnfss"}="latex1"; +$texlive{"psnfssx"}="latex2"; +$texlive{"pspicture"}="latex2"; +$texlive{"pstricks"}="graphics2"; +$texlive{"punk"}="fonts3"; +$texlive{"qfonts"}="fonts2"; +$texlive{"qobitree"}="graphics3"; +$texlive{"qsymbols"}="latex3"; +$texlive{"quotchap"}="latex3"; +$texlive{"r-und-s"}="latex3"; +$texlive{"rcs"}="latex3"; +$texlive{"rcsinfo"}="latex3"; +$texlive{"realcalc"}="generic3"; +$texlive{"refcheck"}="latex3"; +$texlive{"refman"}="latex3"; +$texlive{"relenc"}="latex3"; +$texlive{"revtex"}="latex2"; +$texlive{"rlepsf"}="generic3"; +$texlive{"rmpage"}="latex3"; +$texlive{"rotating"}="latex2"; +$texlive{"rotfloat"}="latex3"; +$texlive{"rplain"}="latex3"; +$texlive{"rs6000-aix4.1.4.0"}="systems1"; +$texlive{"rs6000-aix4.1.4.0"}="systems2"; +$texlive{"rs6000-aix4.1.4.0"}="systems3"; +$texlive{"rsfs"}="fonts2"; +$texlive{"ruhyphen"}="lang1"; +$texlive{"runic"}="fonts3"; +$texlive{"sanskrit"}="fonts3"; +$texlive{"sauterfonts"}="latex3"; +$texlive{"scale"}="latex3"; +$texlive{"schedule"}="latex3"; +$texlive{"script"}="latex3"; +$texlive{"sectsty"}="latex3"; +$texlive{"semantic"}="latex3"; +$texlive{"seminar"}="latex2"; +$texlive{"setspace"}="latex3"; +$texlive{"shadbox"}="latex3"; +$texlive{"shadethm"}="latex3"; +$texlive{"shortlst"}="latex3"; +$texlive{"shorttoc"}="latex3"; +$texlive{"showdim"}="latex3"; +$texlive{"showlabels"}="latex3"; +$texlive{"siam"}="generic3"; +$texlive{"sidecap"}="latex3"; +$texlive{"siggraph"}="latex3"; +$texlive{"simpsons"}="fonts3"; +$texlive{"siunits"}="latex3"; +$texlive{"slashbox"}="latex3"; +$texlive{"slidenotes"}="latex3"; +$texlive{"smallcap"}="latex3"; +$texlive{"songbook"}="latex3"; +$texlive{"soul"}="latex3"; +$texlive{"sparc-solaris2.5.1"}="systems1"; +$texlive{"sparc-solaris2.5.1"}="systems2"; +$texlive{"sparc-solaris2.5.1"}="systems3"; +$texlive{"sprite"}="graphics3"; +$texlive{"ssqquote"}="latex3"; +$texlive{"startex"}="formats3"; +$texlive{"stdclsdv"}="latex3"; +$texlive{"stmaryrd"}="fonts2"; +$texlive{"subeqn"}="latex3"; +$texlive{"subeqnarray"}="latex3"; +$texlive{"subfigure"}="latex3"; +$texlive{"supertabular"}="latex3"; +$texlive{"synttree"}="latex3"; +$texlive{"t2"}="lang3"; +$texlive{"tabbing"}="latex3"; +$texlive{"tap"}="generic2"; +$texlive{"taylor"}="graphics3"; +$texlive{"tbe"}="plain3"; +$texlive{"tcx"}="texlive1"; +$texlive{"tds"}="doc1"; +$texlive{"tengwar"}="fonts3"; +$texlive{"tetex"}="doc1"; +$texlive{"tex-ps"}="generic2"; +$texlive{"tex4ht"}="latex2"; +$texlive{"texdraw"}="graphics3"; +$texlive{"texinfo"}="plain2"; +$texlive{"texip"}="formats3"; +$texlive{"texlive"}="texlive1"; +$texlive{"texsis"}="formats3"; +$texlive{"text1"}="formats3"; +$texlive{"textfit"}="latex3"; +$texlive{"textmerg"}="latex3"; +$texlive{"textpos"}="latex3"; +$texlive{"thesis"}="latex3"; +$texlive{"threed"}="metapost2"; +$texlive{"thumb"}="latex3"; +$texlive{"thumbpdf"}="latex3"; +$texlive{"timesht"}="latex3"; +$texlive{"timing"}="latex3"; +$texlive{"tipa"}="fonts2"; +$texlive{"titlefoot"}="latex3"; +$texlive{"titlesec"}="latex3"; +$texlive{"tmmaths"}="fonts3"; +$texlive{"tocbibind"}="latex3"; +$texlive{"tocloft"}="latex3"; +$texlive{"tocvsec2"}="latex3"; +$texlive{"tools"}="latex1"; +$texlive{"tracking"}="latex3"; +$texlive{"treesvr"}="latex3"; +$texlive{"treetex"}="plain3"; +$texlive{"ttf2pk"}="texlive2"; +$texlive{"tug"}="doc3"; +$texlive{"tugboat"}="generic2"; +$texlive{"type1"}="fonts2"; +$texlive{"type1cm"}="latex3"; +$texlive{"typespec"}="plain3"; +$texlive{"uaclasses"}="latex3"; +$texlive{"ucthesis"}="latex3"; +$texlive{"ulsy"}="latex3"; +$texlive{"umlaute"}="latex3"; +$texlive{"umrand"}="fonts3"; +$texlive{"underlin"}="latex3"; +$texlive{"uni"}="fonts3"; +$texlive{"units"}="latex3"; +$texlive{"universa"}="fonts3"; +$texlive{"unsupported"}="fonts3"; +$texlive{"urwstd"}="fonts2"; +$texlive{"useful"}="doc2"; +$texlive{"ut-thesis"}="latex3"; +$texlive{"utthesis"}="latex3"; +$texlive{"uwthesis"}="latex3"; +$texlive{"vdm"}="latex3"; +$texlive{"vector"}="latex3"; +$texlive{"vertex"}="plain3"; +$texlive{"vita"}="latex3"; +$texlive{"vrb"}="latex3"; +$texlive{"vrsion"}="latex3"; +$texlive{"warpcol"}="latex3"; +$texlive{"wasy"}="fonts2"; +$texlive{"wasysym"}="latex2"; +$texlive{"williams"}="latex3"; +$texlive{"win32"}="systems1"; +$texlive{"win32"}="systems2"; +$texlive{"win32"}="systems3"; +$texlive{"windvi"}="doc1"; +$texlive{"wnri"}="fonts3"; +$texlive{"wntamil"}="lang3"; +$texlive{"wsuipa"}="fonts2"; +$texlive{"xtab"}="latex3"; +$texlive{"xtcapts"}="latex3"; +$texlive{"xymtex"}="latex3"; +$texlive{"xypic"}="graphics2"; +$texlive{"yannisgr"}="fonts3"; +$texlive{"yfonts"}="latex3"; +$texlive{"yhmath"}="latex3"; +$texlive{"yi4latex"}="lang3"; +$texlive{"youngtab"}="latex3"; +$texlive{"ytex"}="formats3"; +$texlive{"zed-csp"}="latex3"; +$texlive{"zefonts"}="fonts2"; diff --git a/Master/texmf-dist/doc/texlive/texlive-en/live4ht.cfg b/Master/texmf-dist/doc/texlive/texlive-en/live4ht.cfg new file mode 100644 index 00000000000..0c5d820ae19 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/live4ht.cfg @@ -0,0 +1,52 @@ +% tex4ht configuration file for the TeX Live documentation. +% Accumulated over many years. Public domain. +% +% html specifies the main output format. +% info for extra debugging info in the log files. + +% have html in one piece (including footnotes). +\Preamble{charset=iso-8859-1,html,info,fn-in} + +% add extra stylesheet +\Configure{@HEAD}{\HCode{% +\Hnewline +\Hnewline +}} +% use png graphics as-is +\Configure{graphics*} + {png} + {\Needs{""}% + \Picture[pict]{../texlive-common/\csname Gin@base\endcsname.png}% + } +% or LaTeX complains it is missing. +\begin{document} + +\EndPreamble + +% simplify output for HTML. We leave TeX and LaTeX alone, since tex4ht +% actually does the lowered E (and raised A) in CSS. +\def\OMEGA{Omega} +\def\LaTeXe{LaTeX2e} +\def\eTeX{e-\TeX} +\def\acro#1{#1} +\def\MF{Metafont} +\def\BibTeX{BibTeX} +\def\warningbox{} +\def\endwarningbox{} + +\newif\ifhackliterals +\ifx\tldocenglish\undefined \else \hackliteralstrue \fi +\ifx\tldocrussian\undefined \else \hackliteralstrue \fi +\ifx\tldocgerman\undefined \else \hackliteralstrue \fi +% +\ifhackliterals + % these definitions cause "missing } inserted" at \end{tabularx} in + % French and Czech. don't know why. + % + % don't make these into links, as happens with \path. We only have a few + % special characters that actually occur. + \def\dirname{\texttt\bgroup\catcode`\$=12 \catcode`\_=12 \catcode`\~=12 + \finishliteral} + \def\finishliteral#1{#1\egroup} + \let\filename=\dirname +\fi diff --git a/Master/texmf-dist/doc/texlive/texlive-en/tex-live.css b/Master/texmf-dist/doc/texlive/texlive-en/tex-live.css new file mode 100644 index 00000000000..b8aa763a0df --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/tex-live.css @@ -0,0 +1,44 @@ +/* $Id: tex-live.css 3436 2007-01-13 22:34:01Z karl $ + Simple CSS for TeX Live that adds margins and a little color. + original by Bzyl Wlodzimierz, edited by Karl Berry, 2005. + Public domain. */ + +html { + // top left bottom right + margin: 15pt 15pt 15pt 15pt; + background: rgb(255,255,224); +} + +body { + margin: 0 5pt 0 5pt; + padding: 0; + //matw: background: rgb(224,255,224); + // (It looks better to me to have a consistent background --karl) +// fonts in browser are low resolution; +// therefore generated serif are poor quality, +// so they disturb reading (that is my opinion) + font-family: sans-serif; + font-style: normal; +} + +/* (It looks better to me to not vary colors at every level --karl) */ + +h3.sectionHead { + padding: 12pt 10pt 12pt 20pt; + //matw: background: rgb(192,224,255); + background: rgb(224,224,255); + color: rgb(0,0,32); +} + +h4.subsectionHead { + padding: 7pt 10pt 7pt 40pt; + background: rgb(224,224,255); + color: rgb(0,0,32); +} + +h5.subsubsectionHead { + padding: 3pt 10pt 3pt 40pt; + //matw: background: rgb(224,255,255); + background: rgb(224,224,255); + color: rgb(0,0,32); +} diff --git a/Master/texmf-dist/doc/texlive/texlive-en/tex-live.sty b/Master/texmf-dist/doc/texlive/texlive-en/tex-live.sty new file mode 100644 index 00000000000..867884ff5f9 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/tex-live.sty @@ -0,0 +1,494 @@ +% $Id$ +% TeX Live documentation style. Written by many people over many years. +% Public domain. +% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{tex-live}[2009/08/23 v1.7 TeX Live documentation style] +% +% colortbl and other packages otherwise make the default be letter, it seems. +\RequirePackage[a4paper,hscale=0.75,lines=60,vmarginratio=10:8]{geometry} +% +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{colortbl} +\RequirePackage{comment} +\RequirePackage{float} +\RequirePackage{graphicx} +\RequirePackage{longtable} +\RequirePackage{shortvrb} +\RequirePackage[normalem]{ulem} +\RequirePackage[obeyspaces]{url} +\RequirePackage{xspace} +% +\RequirePackage{lmodern} +\usepackage{textcomp}% including \textbullet +\def\p.{p.\,} + +% for a proper \acro command. +\RequirePackage{relsize} +%\DeclareRobustCommand{\acro}[1]{\textscale{.9}{#1}\@} +\def\acro#1{\textscale{.9}{#1}\@} +% +\RequirePackage{fancyvrb} +\DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\normalsize} +\DefineVerbatimEnvironment{fverbatim}{Verbatim}{fontsize=\footnotesize} +\DefineVerbatimEnvironment{sverbatim}{Verbatim}{fontsize=\small} +\DefineVerbatimEnvironment{boxedverbatim} + {Verbatim}{fontsize=\footnotesize,frame=single} +\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\normalsize} +\def\verbatiminput#1{\VerbatimInput[fontsize=\scriptsize]{#1}} +\def\boxedverbatiminput#1{\VerbatimInput[frame=single,fontsize=\scriptsize]{#1}} +\def\listinginput#1#2{\VerbatimInput[fontsize=\scriptsize,firstnumber=#1,numbers=left]{#2}} +\MakeShortVerb\| +% +% +% Done with packages. +% +% emacs-page page layout. +% +%ltr \advance\textwidth by 1.1in +%ltr \advance\oddsidemargin by -.55in +%ltr \advance\evensidemargin by -.55in +%ltr % +%ltr \advance\textheight by 1in +%ltr \advance\topmargin by -.5in +%ltr \advance\footskip by -.5in +%ltr % +\message{dimens: textwidth=\the\textwidth\space + oddsidemargin=\the\oddsidemargin\space + evensidemargin=\the\evensidemargin\space + textheight=\the\textheight\space + topmargin=\the\topmargin\space + footskip=\the\footskip} +% +% with settings above, and without a4 (hence letter): +% textwidth=424.49744pt oddsidemargin=22.25128pt evensidemargin=22.25128pt +% textheight=622.26999pt topmargin=-20.135pt footskip=-6.135pt +% +% with default a4paper geometry settings (not enough height): +% textwidth=418.25368pt oddsidemargin=17.3571pt evensidemargin=17.3571pt +% textheight=591.5302pt topmargin=-7.86334pt footskip=30.0pt +% +% with geometry settings [a4paper,hscale=0.75,lines=60,vmarginratio=10:8]: +% textwidth=448.1309pt oddsidemargin=2.41849pt evensidemargin=2.41849pt +% textheight=718.0pt topmargin=-38.68848pt footskip=30.0pt + +% +\pagestyle{headings} +% +% LaTeX parameters. +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\renewcommand{\abovecaptionskip}{4pt} +\renewcommand{\belowcaptionskip}{4pt} +\setcounter{tocdepth}{3} +\setcounter{secnumdepth}{3} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +% +% linebreaking, etc. +\hbadness=4000 +\vbadness=4000 +\emergencystretch=.1\hsize +\relpenalty=500 +% +\def\slash{/\penalty\z@\hskip\z@skip } +% +% various sorts of names +\newcommand*{\pkgname}[1]{\textsf{#1}}% package name +\newcommand*{\optname}[1]{\texttt{#1}}% (package,class) option name +\newcommand*{\cmdname}[1]{\textsf{#1}}% command name +\newcommand*{\colname}[1]{\emph{#1}}% collection name +\newcommand*{\dirname}[1]{\path{#1}}% directory name +\def\filename#1{\path{#1}}% file name +\newcommand*{\envname}[1]{\texttt{#1}}% environment variable name +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\textsf{#1}}% same as \cmdname +\newcommand{\samp}[1]{`\texttt{#1}'} +\newcommand{\var}[1]{{\sl #1}}% not \textsl, for roman not typewriter slanted. +\newcommand{\ttvar}[1]{\texttt{\var{#1}}} +% +% underlined command input. +%\def\Ucom#1{% +% \uline{\rule[-.2\baselineskip]{0pt}{.9\baselineskip}\ttfamily #1}} +% bold command input +\def\Ucom#1{{\bfseries\ttfamily #1}} +% +% \CDref is for url's with a #, where we need to write the target url and +% displayed url separately in the input, due to catcode madness. +% (We could simplify/remove this next time, I think.) +\def\CDref#1#2{\texttt{#1}} +% +% \OnCD no longer has any use at all, since we don't have unpacked files +% on the DVD and it has never worked when reading the PDF online. +\def\OnCD#1{\path{#1}} +% +% \OnCD is currently for any other reference to a file or directory in +% the distribution. PDF readers only open .pdf files, though, so we +% should change this to only use \href for those. Or more likely use +% different macros in the source. +%\def\OnCD#1{\href{../../../../#1}{\path{#1}}} +% +% \href incorrectly appends .pdf to anything without an extension; these +% definitions using \hyper@linkurl do not, but they fail for .pdf +% references -- which are the only ones that work anyway. So this is +% useless, in practice. +%\def\CDref#1#2{\hyper@linkurl{#2}{../../../../#1}} +%\def\OnCD#1{\hyper@linkurl{\path{#1}}{../../../../#1}} + +% GUI menu/button/tab sequence: +\def\guiseq#1{\textsf{#1}} +\def\arw{\unskip$\rightarrow$\ignorespaces} +% +% Special names. +\def\dpi{$\,$dpi\xspace} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\def\hyph{-} +% +% many abbreviations. +\def\AllTeX{(\La\kern-.075em)\kern-.075em\TeX} +\def\AFMtoTFM{\cmdname{AFM2TFM}\null} +\def\bv{\emph{Baskerville}} +\let\BV=\bv +\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% + \hbox{$\mathcal{S}$}\kern-.075em $} +\def\Dash{\unskip\nobreak\thinspace---\thinspace\ignorespaces} +\def\dvicopy{\cmdname{dvicopy}} +\def\dvidvi{\cmdname{dvidvi}} +\def\dvips{\cmdname{dvips}} +\def\eTeX{$\varepsilon$-\TeX} +\def\fpTeX{\textrm{fp}\TeX\xspace} +\def\GFtoDVI{\cmdname{GFtoDVI}\null} +\def\GFtoPK{\cmdname{GFtoPK}\null} +\def\GFtype{\cmdname{GFtype}} +\def\GUI{\acro{GUI}\xspace} +\def\KPS{Kpathsea} +% This code % is hacked from its definition of \cs{LaTeX}; it allows +% slants (for example) to propagate into the raised (small) `A': +\newcommand{\La}% + {L\kern-.36em + {\setbox0\hbox{T}% + \vbox to\ht0{\hbox{$\m@th$% + \csname S@\f@size\endcsname + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + A}% + \vss}% + }} +\def\OMEGA{$\Omega$} +\def\OzMF{OzMF} +\def\OzMP{OzMP} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\PKtype{\cmdname{PKtype}} +\def\PLtoTF{\cmdname{PLtoTF}\null} +\def\ProTeXt{pro\TeX t} +\def\teTeX{\textrm{te}\TeX\xspace} +\def\TeXLive{\TeX{} Live\xspace} +\def\TFtoPL{\cmdname{TFtoPL}\null} +\def\TK{\TeX\ Collection} +\let\TL=\TeXLive +\def\TypeI{Type~1} +\def\VFtoVP{\cmdname{VFtoVP}\null} +\def\VPtoVF{\cmdname{VPtoVF}\null} +\def\Thanh{H\`an~Th\ifx % get Unicode char in tex4ht's HTML output + \HCode\UnDef\^e\llap{\raise 0.5ex\hbox{\'{}}}\else + \HCode{\string&\#x1EBF;}\fi~Th\`anh} +\def\XEmTeX{\textrm{XEm}\TeX\xspace} +\def\XEmacs{\textrm{XEmacs}\xspace} +\def\XeTeX{Xe\TeX} +\def\Webc{Web2C} +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\texorpdfstring{\acro{DVD}}{DVD}\xspace} +\providecommand*{\GNU}{\acro{GNU}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\ISO}{\texorpdfstring{\acro{ISO}}{ISO}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\USB}{\texorpdfstring{\acro{USB}}{USB}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{WEB}\xspace} + +% Include an image. +% #1 - name of image (pictures/#1.jpg, always .jpg please) +% #2 - bb for html +% #3 - width for TeX +% +\def\tlimage#1#2#3{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[#2]{../../general/texlive-common/pictures/#1.jpg} + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#3]{pictures/#1.jpg} + \fi + \\[5mm] +} + +\def\tlpng#1#2{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[bb=0 0 1 1]{#1.png}% + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#2]{#1.png}% + \fi +} +% +% description-like environment that uses tt instead of bf, and doesn't +% go to the left margin. Without the \hfil, get an underfull box. +% Don't know why \descriptionlabel doesn't. +% +\newenvironment{ttdescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt % these lists tend to have short descriptions + \parindent=0pt + \let\makelabel=\ttdescriptionlabel}}% + {\end{list}} +\newcommand*\ttdescriptionlabel[1]{\hspace\labelsep + \normalfont\ttfamily #1\hfil} +% +% Likewise, for commands using sans serif. +\newenvironment{cmddescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt + \let\makelabel=\cmddescriptionlabel}}% + {\end{list}} +\newcommand*\cmddescriptionlabel[1]{\hspace\labelsep + \normalfont\sffamily #1\hfil} + +% General squeezed itemize/enumerate. +\newenvironment{itemize*}% + {\begin{itemize}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{itemize}} + +\newenvironment{enumerate*}% + {\begin{enumerate}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{enumerate}} + +\newsavebox{\wbox} +\newenvironment{warningbox} + {\begin{lrbox}{\wbox} + \begin{minipage}{.95\textwidth}} + {\end{minipage}\end{lrbox}\fbox{\usebox{\wbox}}} +% +% lrbox is used as a representation marking. I changed it to +% lrBox in tne source file, to get closer to logical marking +\newsavebox{\mylrbox} +\newenvironment{lrBox} + {\begin{lrbox}{\mylrbox}} + {\end{lrbox}} + + +% emacs-page output setup +% +\ifx \HCode\UnDef + \providecommand{\Status}{0}% running TeX +\else + \providecommand{\Status}{2}% running TeX4ht +\fi +%\typeout{Status is \Status} +% +\newif\ifSingleColumn +% +% By default, we won't be creating hyperlinks. +\def\href#1#2{#2} +\def\hypertarget#1#2{} +\def\email#1{\href{mailto:#1}{\path{#1}}} % \path comes from url +\def\htmlanchor#1{} +% +\definecolor{hypercolor}{rgb}{0.5,0.0,0.5} % purplish external links. +% +% +\ifcase\Status + % \Status = 0 + \typeout{TeX Live documentation in DVI format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 1 + \typeout{TeX Live documentation in PDF format} + \RequirePackage[breaklinks, + colorlinks,linkcolor=hypercolor,citecolor=hypercolor, + urlcolor=hypercolor,filecolor=hypercolor, + bookmarksopen, + %pdfstartview={FitBH -320000}, % fails with acrobat7 + hyperindex] + {hyperref} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 2 + \typeout{TeX Live documentation in HTML format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + % read our config file, live4ht.cfg; q.v., for more definitions. + % hyperref load must come after the tex4ht load. + \RequirePackage[live4ht]{tex4ht} + \RequirePackage[tex4ht]{hyperref} \hyperlinkfileprefix{} + % definitions need simplifying for TeX4ht to make relative paths work. + \def\CDref#1#2{\href{../../../../#1}{#2}} + \def\OnCD#1{\href{../../../../#1}{#1}} + \def\htmlanchor#1{\HCode{}} + \or + % \Status = 3 + \typeout{TeX Live documentation as a Baskerville issue} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \RequirePackage{bvoutln}% outline of baskerville + \SingleColumnfalse + \RequirePackage{multicol} + \or + % \Status = 4 + \typeout{TeX Live documentation as a TUB article} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \SingleColumnfalse + \newenvironment{multicols}[1]{}{} +\fi +% +\ifnum \Status=4 +\else + \RequirePackage{texnames} + \providecommand\TeXXeT{\TeX-{}-% + \kern-.1emX\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT\@} + \def\MP{MetaPost} + \let\mf\MF + \newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} + \newcommand\MIKTEX{MiK\kern-.025em \TeX}% per www.miktex.org + % from pictex.tex: + \ifx\PiC\undefined \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} \fi + \ifx\PiCTeX\undefined \def\PiCTeX{\PiC\kern-.11em\TeX} \fi +\fi +% +% hacking at sections etc., to pay attention to baskerville status +\newcommand{\@condend@multicols}{% + \ifSingleColumn + \else + \def\@tempa{multicols}% + \ifx\@tempa\@currenvir + \end{multicols}% + \fi + \fi +} +\let\Section\section +\renewcommand{\section}{% + \@ifstar + {\Section*}% + {% + \@condend@multicols + \@dblarg\@full@section + }% +} +\def\@full@section[#1]#2{% + \Section[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} +\let\SubSection\subsection +\renewcommand{\subsection}{% + \@ifstar{\SubSection*}% + {% + \@condend@multicols + \@dblarg\@full@subsection + } +} +\def\@full@subsection[#1]#2{% + \SubSection[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} + +% calm things down a bit if we're in a multiple-column version +\ifSingleColumn +\else + \def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ + } + \let\@listi\@listI + \@listi + \def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ + } + \def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep + } + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep + } + \def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep + } + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep + } +\fi +% +% array package stuff +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +% +% shaded rows (using facilities of colortbl) +% +\definecolor{pale}{gray}{.9} +\newcount\colrow +\gdef\RowColor{pale} +\def\SetRowColor{% + \rowcolor{\RowColor}% + \global\advance\colrow by1\relax + \ifodd\colrow + \gdef\RowColor{pale}% + \else + \gdef\RowColor{white}% + \fi +} +% redefine to hack up a reference even though we don't need it... +\renewcommand\@bibitem[1]{\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{?}}\fi\ignorespaces} +% +% \unknownTeXlive is a dummy texlive entry for the biblio +\newcommand\unknownTeXlive[2][\relax]{\textbf{\textsc{unknown}}% + \global\@all@unknown\expandafter{\the\@all@unknown{#2}}% +} +\newtoks\@all@unknown +\global\@all@unknown{} +\AtEndDocument{\@message@unknowns} +\def\@message@unknowns{\edef\@tempa{\the\@all@unknown}% + \ifx\@tempa\@empty + \else + \def\@tempa{*** TeX Live package location of }% + \expandafter\@output@unknowns\the\@all@unknown\@empty + \fi +} +\def\@output@unknowns#1{\edef\@tempb{#1}% + \ifx\@tempb\@empty + \typeout{ unknown}% + \else + \message{\@tempa#1,}% + \def\@tempa{}% + \expandafter\@output@unknowns + \fi +} + + +% Silence font warnings about no bold typewriter in LM. +\def\@font@warning#1{}% + +% Silence hyperref warnings about \kern. +\def\HyPsd@Warning#1{}% + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.css b/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.css new file mode 100644 index 00000000000..67628691485 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.css @@ -0,0 +1,338 @@ + +/* start css.sty */ +.ec-lmri-12x-x-172{font-size:206%; font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmss-17{font-size:170%; font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmr-12{font-size:120%;} +.ec-lmtt-12{font-size:120%; font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtt-8{font-size:80%; font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmtt-9{font-size:90%; font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmr-7{font-size:70%;} +.ec-lmtt-8x-x-87{font-size:69%; font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +p.noindent { text-indent: 0em } +td p.noindent { text-indent: 0em; margin-top:0em; } +p.nopar { text-indent: 0em; } +p.indent{ text-indent: 1.5em } +@media print {div.crosslinks {visibility:hidden;}} +a img { border-top: 0; border-left: 0; border-right: 0; } +center { margin-top:1em; margin-bottom:1em; } +td center { margin-top:0em; margin-bottom:0em; } +.Canvas { position:relative; } +img.math{vertical-align:middle;} +li p.indent { text-indent: 0em } +li p:first-child{ margin-top:0em; } +li p:last-child, li div:last-child { margin-bottom:0.5em; } +li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } +.enumerate1 {list-style-type:decimal;} +.enumerate2 {list-style-type:lower-alpha;} +.enumerate3 {list-style-type:lower-roman;} +.enumerate4 {list-style-type:upper-alpha;} +div.newtheorem { margin-bottom: 2em; margin-top: 2em;} +.obeylines-h,.obeylines-v {white-space: nowrap; } +div.obeylines-v p { margin-top:0; margin-bottom:0; } +.overline{ text-decoration:overline; } +.overline img{ border-top: 1px solid black; } +td.displaylines {text-align:center; white-space:nowrap;} +.centerline {text-align:center;} +.rightline {text-align:right;} +div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } +.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.fbox {display:table} +div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.minipage{width:100%;} +div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} +div.center div {text-align: left;} +div.flushright, div.flushright div.flushright {text-align: right;} +div.flushright div {text-align: left;} +div.flushleft {text-align: left;} +.underline{ text-decoration:underline; } +.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } +.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +.framebox-c {text-align:center;} +.framebox-l {text-align:left;} +.framebox-r {text-align:right;} +span.thank-mark{ vertical-align: super } +span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } +div.footnotes{border-top:solid 1px black; border-bottom:solid 1px black; padding-bottom:1ex; padding-top:0.5ex; margin-right:15%; margin-top:2ex; font-style:italic; font-size:85%;} +div.footnotes p{margin-top:0; margin-bottom:0; text-indent:0;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +.tabbing-right {text-align:right;} +span.TEX {letter-spacing: -0.125em; } +span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} +a span.TEX span.E {text-decoration: none; } +span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} +span.LATEX span.TEX{ position:relative; left: -0.4em; } +div.float, div.figure {margin-left: auto; margin-right: auto;} +div.float img {text-align:center;} +div.figure img {text-align:center;} +.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} +.marginpar p{margin-top:0.4em; margin-bottom:0.4em;} +table.equation {width:100%;} +.equation td{text-align:center; } +td.equation { margin-top:1em; margin-bottom:1em; } +td.equation-label { width:5%; text-align:center; } +td.eqnarray4 { width:5%; white-space: normal; } +td.eqnarray2 { width:5%; } +table.eqnarray-star, table.eqnarray {width:100%;} +div.eqnarray{text-align:center;} +div.array {text-align:center;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.pmatrix img{vertical-align:middle;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.bar-css {text-decoration:overline;} +img.cdots{vertical-align:middle;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +div.array {text-align:center;} +.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} +.index-item, .index-subitem, .index-subsubitem {display:block} +div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} +div.caption span.id{font-weight: bold; white-space: nowrap; } +h1.partHead{text-align: center} +p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} +.subparagraphHead, .likesubparagraphHead { font-weight: bold;} +.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} +.verse{white-space:nowrap; margin-left:2em} +div.maketitle {text-align:center;} +h2.titleHead{text-align:center;} +div.maketitle{ margin-bottom: 2em; } +div.author, div.date {text-align:center;} +div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } +.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } +.abstract p {margin-left:5%; margin-right:5%;} +div.abstract {width:100%;} +.alltt P { margin-bottom : 0em; margin-top : 0em; } +.alltt { margin-bottom : 1em; margin-top : 1em; } +.figure img.graphics {margin-left:10%;} +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +div.longtable{text-align:center;} +.uline{ text-decoration:underline; } +.uuline{ text-decoration:underline; } +span.sout {text-decoration: line-through } +span.xout {text-decoration: line-through } +span.uwave {text-decoration:underline } +P.fancyvrb {white-space: nowrap; margin:0em;} +div#fancyvrb1{ border-top: solid 0.4pt; } +div#fancyvrb1{ border-left: solid 0.4pt; } +div#fancyvrb1{ border-bottom: solid 0.4pt; } +div#fancyvrb1{ border-right: solid 0.4pt; } +div#fancyvrb2{ border-top: solid 0.4pt; } +div#fancyvrb2{ border-left: solid 0.4pt; } +div#fancyvrb2{ border-bottom: solid 0.4pt; } +div#fancyvrb2{ border-right: solid 0.4pt; } +div#fancyvrb3{ border-top: solid 0.4pt; } +div#fancyvrb3{ border-left: solid 0.4pt; } +div#fancyvrb3{ border-bottom: solid 0.4pt; } +div#fancyvrb3{ border-right: solid 0.4pt; } +div#fancyvrb4{ border-top: solid 0.4pt; } +div#fancyvrb4{ border-left: solid 0.4pt; } +div#fancyvrb4{ border-bottom: solid 0.4pt; } +div#fancyvrb4{ border-right: solid 0.4pt; } +/* end css.sty */ + diff --git a/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.html b/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.html new file mode 100644 index 00000000000..c9d87363c95 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.html @@ -0,0 +1,6379 @@ + + + + The TeX Live Guide +TeX Live 2012 + + + + + + + + + + +
+ + + + + +

The TEX Live Guide
+TEX Live 2012

+
Karl Berry, editor +
http://tug.org/texlive/

+
June 2012
+
+

Contents

+
+ 1 Introduction +
 1.1 TEX Live and the TEX Collection +
 1.2 Operating system support +
 1.3 Basic installation of TEX Live +
 1.4 Security considerations +
 1.5 Getting help +
2 Overview of TEX Live +
 2.1 The TEX Collection: TEX Live, proTEXt, MacTEX +
 2.2 Top level TEX Live directories +
 2.3 Overview of the predefined texmf trees +
 2.4 Extensions to TEX +
 2.5 Other notable programs in TEX Live +
 2.6 Fonts in TEX Live +
3 Installation +
 3.1 Starting the installer +
  3.1.1 Unix +
  3.1.2 MacOSX +
  3.1.3 Windows +
  3.1.4 Cygwin +
  3.1.5 The text installer +
  3.1.6 The expert graphical installer +
  3.1.7 The simple wizard installer +
 3.2 Running the installer +
  3.2.1 Binary systems menu (Unix only) +
  3.2.2 Selecting what is to be installed +
  3.2.3 Directories +
  3.2.4 Options +
 3.3 Command-line install-tl options +
  3.3.1 The -repository option +
 3.4 Post-install actions +
  3.4.1 Environment variables for Unix +
  3.4.2 Environment variables: Global configuration +
  3.4.3 Internet updates after DVD installation +
  3.4.4 System font configuration for XeTEX and LuaTEX +
  3.4.5 ConTEXt Mark IV +
  3.4.6 Integrating local and personal macros + + +
  3.4.7 Integrating third-party fonts +
 3.5 Testing the installation +
 3.6 Links for additional downloadable software +
4 Specialized installations +
 4.1 Shared-user (or cross-machine) installations +
 4.2 Portable (USB) installations +
 4.3 ISO (or DVD) installations +
5 tlmgr: Managing your installation +
 5.1 tlmgr GUI mode +
 5.2 Sample tlmgr command-line invocations +
6 Notes on Windows +
 6.1 Windows-specific features +
 6.2 Additional software included on Windows +
 6.3 User Profile is Home +
 6.4 The Windows registry +
 6.5 Windows permissions +
 6.6 Increasing maximum memory on Windows and Cygwin +
7 A user’s guide to Web2C +
 7.1 Kpathsea path searching +
  7.1.1 Path sources +
  7.1.2 Config files +
  7.1.3 Path expansion +
  7.1.4 Default expansion +
  7.1.5 Brace expansion +
  7.1.6 Subdirectory expansion +
  7.1.7 List of special characters and their meaning: a summary +
 7.2 Filename databases +
  7.2.1 The filename database +
  7.2.2 kpsewhich: Standalone path searching +
  7.2.3 Examples of use +
  7.2.4 Debugging actions +
 7.3 Runtime options +
8 Acknowledgements +
9 Release history +
 9.1 Past +
  9.1.1 2003 +
  9.1.2 2004 +
  9.1.3 2005 +
  9.1.4 2006–2007 +
  9.1.5 2008 +
  9.1.6 2009 +
  9.1.7 2010 +
  9.1.8 2011 +
 9.2 Present +
 9.3 Future +
+

+

1 Introduction

+ + +

+

1.1 TEX Live and the TEX Collection

+

This document describes the main features of the TEX Live software distribution — TEX and related programs +for GNU/Linux and other Unix flavors, Mac OS X, and Windows systems. +

You may have acquired TEX Live by downloading, or on the TEX Collection DVD, which TEX user +groups distribute among their members, or in other ways. Section 2.1 briefly describes the contents of the +DVD. Both TEX Live and the TEX Collection are cooperative efforts by the TEX user groups. This document +mainly describes TEX Live itself. +

TEX Live includes executables for TEX, LaTeX2e, ConTEXt, Metafont, MetaPost, BibTeX and many +other programs; an extensive collection of macros, fonts and documentation; and support for typesetting in +many different scripts from around the world. +

For a brief summary of the major changes in this edition of TEX Live, see the end of the document, +section 9 (p. 73). +

+

1.2 Operating system support

+

TEX Live contains binaries for many Unix-based platforms, including GNU/Linux, Mac OS X, +and Cygwin. The included sources can be compiled on platforms for which we do not provide +binaries. +

As to Windows: Windows XP and later are supported. Windows 2000 will probably still mostly work. +There are no special 64-bit executables for Windows, but the 32-bit executables should run on 64-bit +systems. +

See section 2.1 for alternate solutions for Windows and Mac OS X. +

+

1.3 Basic installation of TEX Live

+

You can install TEX Live either from DVD or over the Internet (http://tug.org/texlive/acquire.html). +The net installer itself is small, and downloads everything requested from the Internet. +

The DVD installer lets you install to a local disk. You cannot run TEX Live directly from the +TEX Collection DVD (or its .iso image), but you can prepare a runnable installation on, e.g., a +USB stick (see section 4.2). Installation is described in later sections (p. 12), but here is a quick +start: +

    +
  • The installation script is named install-tl. It can operate in a “wizard mode” given the option + -gui=wizard (default for Windows), a text mode given -gui=text (default for everything else), + and an expert GUI mode given -gui=perltk. +
  • +
  • One of the installed items is the ‘TEX Live Manager’ program, named tlmgr. Like the installer, it + can be used in both GUI mode and in text mode. You can use it to install and uninstall packages + and do various configuration tasks. +
+

+

1.4 Security considerations

+

To the best of our knowledge, the core TEX programs themselves are (and always have been) extremely +robust. However, the contributed programs in TEX Live may not reach the same level, despite everyone’s best +efforts. As always, you should be careful when running programs on untrusted input; for maximum safety, use +a new subdirectory. +

This need for care is especially urgent on Windows, since in general Windows finds programs in the current +directory before anything else, regardless of the search path. This opens up a wide variety of possible attacks. +We have closed many holes, but undoubtedly some remain, especially with third-party programs. Thus, we +recommend checking for suspicious files in the current directory, especially executables (binaries or scripts). +Ordinarily they should not be present, and definitely should not normally be created by merely processing a +document. + + +

Finally, TEX (and its companion programs) are able to write files when processing documents, a feature +that can also be abused in a wide variety of ways. Again, processing unknown documents in a new subdirectory +is the safest bet. +

+

1.5 Getting help

+

The TEX community is active and friendly, and most serious questions end up getting answered. However, the +support is informal, done by volunteers and casual readers, so it’s especially important that you do your +homework before asking. (If you prefer guaranteed commercial support, you can forgo TEX Live +completely and purchase a vendor’s system; http://tug.org/interest.html#vendors has a +list.) +

Here is a list of resources, approximately in the order we recommend using them: +

+

+Getting Started
If you are new to TEX, the web page http://tug.org/begin.html gives a brief + introduction to the system. +
+TEX FAQ
The TEX FAQ is + a huge compendium of answers to all sorts of questions, from the most basic to the most arcane. + It is included on TEX Live in texmf-dist/doc/generic/FAQ-en/html/index.html, and is available + on the Internet through http://www.tex.ac.uk/faq. Please check here first. +
+TEX Catalogue
If you are looking for a specific package, font, program, etc., the TEX + Catalogue is the place to look. It is a huge collection of all TEX-related items. See + http://mirror.ctan.org/help/Catalogue/. +
+TEX Web Resources
The web page http://tug.org/interest.html has many TEX-related links, + in particular for numerous books, manuals, and articles on all aspects of the system. +
+support archives
The two principal support forums are the Usenet newsgroup news:comp.text.tex + and the mailing list texhax@tug.org. Their archives have years of past questions and answers + for your searching pleasure, via http://groups.google.com/group/comp.text.tex/topics and + http://tug.org/mail-archives/texhax, respectively. And a general web search, for example + on http://google.com, never hurts. +
+asking questions
If you cannot find an answer, you can post to comp.text.tex through + Google or your newsreader, or to texhax@tug.org through email. But before you post, + please read this FAQ entry, to maximize your chances of getting a useful answer: + http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion. Also worth mentioning + are the LATEX Community site at + http://www.latex-community.org/ and its forum http://www.latex-community.org/forum/, + and TEX StackExchange at http://tex.stackexchange.com/. +
+TEX Live support
If you want to report a bug or have suggestions or comments on the TEX Live + distribution, installation, or documentation, the mailing list is tex-live@tug.org. However, if + your question is about how to use a particular program included in TEX Live, please write to + that program’s maintainer or mailing list. Often running a program with the --help option will + provide a bug reporting address. +
+

The other side of the coin is helping others who have questions. Both comp.text.tex and texhax are open +to anyone, so feel free to join, start reading, and help out where you can. + + +

+

2 Overview of TEX Live

+

This section describes the contents of TEX Live and the TEX Collection of which it is a part. +

+

2.1 The TEX Collection: TEX Live, proTEXt, MacTEX

+

The TEX Collection DVD comprises the following: +

+

+TEX Live
A complete TEX system to be installed to disk. Its home page is + http://tug.org/texlive/. +
+MacTEX
for Mac OS X, this adds a native Mac OS X installer and other Mac applications to TEX + Live. Its home page is http://tug.org/mactex/. +
+proTEXt
An enhancement of the MiKTEX distribution for Windows, proTEXt adds a few extra + tools to MiKTEX, and simplifies installation. It is entirely independent of TEX Live, and has its + own installation instructions. The proTEXt home page is http://tug.org/protext. +
+CTAN
A snapshot of the CTAN repository (http://www.ctan.org). +
+texmf-extra
A directory with assorted additional packages. +
+

CTAN, protext, and texmf-extra do not necessarily follow the same copying conditions as TEX Live, so be +careful when redistributing or modifying. +

+

2.2 Top level TEX Live directories

+

Here is a brief listing and description of the top level directories in a TEX Live installation. +

+

+ bin
+

The TEX system programs, arranged by platform. +

+ readme-*.dir
+

Quick overview and useful links for TEX Live, in various languages, in both HTML and plain + text. +

+ source
+

The source to all included programs, including the main Web2C-based TEX distributions. +

+ texmf
+

See TEXMFMAIN below. +

+ texmf-dist
+

See TEXMFDIST below. +

+ tlpkg
+

Scripts, programs and data for managing the installation, and special support for Windows.

+ + +

In addition to the directories above, the installation scripts and README files (in various languages) are at +the top level of the distribution. +

For documentation, the comprehensive links in the top-level file doc.html may be helpful. The +documentation for the programs (manuals, man pages, Info files) is in texmf/doc. The documentation for +TEX packages and formats is in texmf-dist/doc. You can use the texdoc program to find any documentation +wherever it is located. +

This TEX Live documentation itself is in texmf/doc/texlive, available in several languages: +

+

+

2.3 Overview of the predefined texmf trees

+

This section lists the predefined variables specifying the texmf trees used by the system, and their intended +purpose, and the default layout of TEX Live. The command tlmgr conf shows the values of +these variables, so that you can easily find out how they map to particular directories in your +installation. +

All of the trees, including the personal ones, should follow the TEX Directory Structure (TDS, +http://tug.org/tds), with all its myriad subdirectories, or files may not be found. Section 3.4.6 (p. 39) +describes this in more detail. +

+

+ TEXMFMAIN
+

The tree which holds vital parts of the system such as configuration files, helper scripts, and + program documentation. +

+ TEXMFDIST
+

The tree which holds the main set of macro packages, fonts, etc. +

+ TEXMFLOCAL
+

The tree which administrators can use for system-wide installation of additional or updated + macros, fonts, etc. +

+ TEXMFHOME
+

The tree which users can use for their own individual installations of additional or updated macros, + fonts, etc. The expansion of this variable dynamically adjusts for each user to their own individual + directory. + + +

+ TEXMFCONFIG
+

The (personal) tree used by the utilities texconfig, updmap, and fmtutil to store modified + configuration data. +

+ TEXMFSYSCONFIG
+

The (site-wide) tree used by the utilities texconfig-sys, updmap-sys, and fmtutil-sys to store + modified configuration data. +

+ TEXMFVAR
+

The (personal) tree used by texconfig, updmap and fmtutil to store (cached) runtime data such + as format files and generated map files. +

+ TEXMFSYSVAR
+

The (site-wide) tree used by texconfig-sys, updmap-sys and fmtutil-sys, and also by tlmgr, + to store (cached) runtime data such as format files and generated map files. +

+ TEXMFCACHE
+

The tree(s) used by ConTEXt MkIV to store (cached) runtime data.

+

The default layout is: +

+system-wide root
can span multiple TEX Live releases: +
+ 2011
+

A previous release. +

+ 2012
+

The current release. +

+ bin
+

  +

+ i386-linux
+

GNU/Linux binaries +

+ ...
+

+

+ universal-darwin
+

Mac OS X binaries +

+ win32
+

Windows binaries

+
+ texmf       
+

This is TEXMFMAIN. +

+ texmf-dist  
+

TEXMFDIST +

+ texmf-var   
+

TEXMFSYSVAR +

+ texmf-config
+

TEXMFSYSCONFIG

+ + +
+ texmf-local
+

TEXMFLOCAL, intended to be retained from release to release.

+
+user’s home
($HOME or %USERPROFILE%) +
+ .texlive2011
+

Privately generated and configuration data for a previous release. +

+ .texlive2012
+

Privately generated and configuration data for the current release. +

+ texmf-var   
+

TEXMFVAR, TEXMFCACHE +

+ texmf-config
+

TEXMFCONFIG

+
+ texmf
+

TEXMFHOME Personal macros, etc.

+
+

+

2.4 Extensions to TEX

+

Knuth’s original TEX itself is frozen, apart from rare bug fixes. It is still present in TEX Live as the program +tex, and will remain so for the foreseeable future. TEX Live contains several extended versions of +TEX: +

+

+e-TEX
adds a set of new primitives (related to macro expansion, character scanning, classes + of marks, additional debugging features, and more) and the TEX--XE T extensions for + bidirectional typesetting. In default mode, e-TEX is 100% compatible with ordinary TEX. See + texmf-dist/doc/etex/base/etex_man.pdf. +
+pdfTEX
builds on the e-TEX extensions, adding support for writing PDF output as well as DVI, + and many non-output-related extensions. This is the program invoked for most formats, e.g., etex, + latex, pdflatex. + Its web site is http://www.pdftex.org/. See texmf-dist/doc/pdftex/manual/pdftex-a.pdf for the + manual, and texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex for example usage of some + of its features. +
+LuaTEX
is the designated successor of pdfTEX, and is mostly (but not entirely) backward-compatible. + It is also intended to be a functional superset of Aleph (see below), though technical compatibility + is not intended. The incorporated Lua interpreter (http://www.lua.org/) enables elegant + solutions for many thorny TEX problems. When called as texlua, it functions as a standalone Lua + interpreter, and is already used as such within TEX Live. Its web site is http://www.luatex.org/, + and the reference manual is texmf-dist/doc/luatex/luatexref-t.pdf. +
+XeTEX
adds support for Unicode input and OpenType- and system fonts, implemented using standard + third-party libraries. See http://tug.org/xetex. + + +
+Omega (Omega)
is based on Unicode (16-bit characters), thus supports working with almost all the + world’s scripts simultaneously. It also supports so-called ‘Omega Translation Processes’ (OTPs), + for performing complex transformations on arbitrary input. Omega is no longer included in TEX + Live as a separate program; only Aleph is provided: +
+Aleph
combines the Omega and e-TEX extensions. See texmf-dist/doc/aleph/base. +
+

+

2.5 Other notable programs in TEX Live

+

Here are a few other commonly-used programs included in TEX Live: +

+

+ bibtex, bibtex8
+

bibliography support. +

+ makeindex, xindy
+

index support. +

+ dvips
+

convert DVI to PostScript. +

+ xdvi
+

DVI previewer for the X Window System. +

+ dvilj
+

DVI drive for the HP LaserJet family. +

+ dviconcat, dviselect
+

cut and paste pages from DVI files. +

+ dvipdfmx
+

convert DVI to PDF, an alternative approach to pdfTEX (mentioned above). +

+ psselect, psnup,
+

PostScript utilities. +

+ pdfjam, pdfjoin,
+

PDF utilities. +

+ texexec, texmfstart
+

ConTEXt and PDF processor. +

+ tex4ht
+

TEX to HTML (and XML and more) converter. +

+ + +

+

2.6 Fonts in TEX Live

+

TEX Live comes with many high-quality scalable fonts. See http://tug.org/fonts and +texmf-dist/doc/fonts/free-math-font-survey. +

+

3 Installation

+

+

3.1 Starting the installer

+

To begin, get the TEX Collection DVD or download the TEX Live net installer, and locate the installer script: +install-tl for Unix, install-tl.bat for Windows. See http://tug.org/texlive/acquire.html for more +information and other methods of getting the software. +

+

+Net installer:
Download from CTAN, + under systems/texlive/tlnet; the url http://mirror.ctan.org/systems/texlive/tlnet will + automatically redirect to a nearby, up-to-date, mirror. You can retrieve either install-tl.zip + which can be used under Unix and Windows, or the considerably smaller install-unx.tar.gz + for Unix only. After unpacking, install-tl and install-tl.bat will be in the install-tl + subdirectory. +
+TEX Collection DVD:
go to the DVD’s texlive subdirectory. Under Windows, the installer + normally starts automatically when you insert the DVD. You can get the DVD by becoming + a member of a TEX user group (highly recommended, http://tug.org/usergroups.html), or + purchasing it separately (http://tug.org/store), or burning your own from the ISO image. + You can also mount the ISO directly on most systems. After installing from DVD or ISO, if you + want to get continuing updates from the Internet, please see 3.4.3. +
+

The same installer program is run, whatever the source. The most visible difference between the two is that +with the net installer, what you end up with is the packages that are currently available. This +is in contrast to the DVD and ISO images, which are not updated between the major public +releases. +

The following sections explain installer start-up in more detail. +

+

3.1.1 Unix
+

Below, > denotes the shell prompt; user input is bold. The script install-tl is a Perl script. The simplest +way to start it on a Unix-compatible system is as follows:

+

+> cd /path/to/installer +
> perl install-tl +
+
(Or you can invoke perl /path/to/installer/install-tl, or ./install-tl if it stayed executable, etc.; we +won’t repeat all these variations.) You may have to enlarge your terminal window so that it shows the full text +installer screen (Figure 1). +

To install in expert GUI mode (figure 2), you’ll need the Perl/TK module compiled with XFT support, +which is generally the case with GNU/Linux, but not necessarily with other systems. Given that, you can run: +

+ + +

+> perl install-tl -gui +
+
+

For a complete listing of the various options:

+

+> perl install-tl -help +
+
+

Warning about Unix permissions: Your umask at the time of installation will be respected by the TEX +Live installer. Therefore, if you want your installation to be usable by users other than you, make sure your +setting is sufficiently permissive, for instance, umask 002. For more information about umask, consult your +system documentation. +

Special considerations for Cygwin: Unlike other Unix-compatible systems, Cygwin does not by default +include all of the prerequisite programs needed by the TEX Live installer. See Section 3.1.4 for +details. +

+

3.1.2 MacOSX
+

As mentioned in section 2.1, a separate distribution is prepared for Mac OS X, named +MacTEX (http://tug.org/mactex). We recommend using the native MacTEX installer instead of the TEX +Live installer on Mac OS X, because the native installer makes a few Mac-specific adjustments, in particular to +allow easily switching between the various TEX distributions for Mac OS X (MacTEX, Fink, MacPorts, +…). +

MacTEX is firmly based on TEX Live, and the main TEX trees are precisely the same. It does add a few +extra folders with Mac-specific documentation and applications. +

+

3.1.3 Windows
+

If you are using the net installer, or the DVD installer failed to start automatically, double-click +install-tl.bat. For more customization options, e.g., selection of specific package collections, run +install-tl-advanced.bat instead. +

You can also start the installer from the command-prompt. Below, > denotes the prompt; user input is +bold. If you are in the installer directory, run just:

+

+> install-tl +
+
+

Or you can invoke it with an absolute location, such as:

+

+> D:\texlive\install-tl +
+
for the TEX Collection DVD, supposing that D: is the optical drive. Figure 3 displays the wizard installer, +which is the default for Windows. +

To install in text mode, use:

+

+> install-tl -no-gui + + +
+
+

For a complete listing of the various options:

+

+> install-tl -help +
+
+


+ + + + + +
  Installing TeX Live 2012 from: ...
  Platform: i386-linux => ’Intel x86 with GNU/Linux’
  Distribution: inst (compressed) +
  ...
   Detected platform: Intel x86 with GNU/Linux
  
   <B> platforms: 1 out of 19
  
   <S> installation scheme (scheme-full) +
       84 collections out of 85, disk space required: 3091 MB
  
   Customizing installation scheme: +
     <C> standard collections
     <L> language collections
  
   <D> directories:
     TEXDIR (the main TeX directory): +
       /usr/local/texlive/2012
     ...
  
   <O> options:
     [ ] use letter size instead of A4 by default
     ...
   +
   <V> set up for portable installation
  
  Actions:
   <I> start installation to hard disk
   <H> help
   <Q> quit
+
Figure 1: Main text installer screen (GNU/Linux)
+ + +


+


+ + + + + + +

pict +

Figure 2: Expert GUI installer screen (GNU/Linux)
+ + +


+


+ + + + + + +

pict +

Figure 3: Wizard installer screen (Windows)
+ + +


+

+

3.1.4 Cygwin
+

The TEX Live installer supports only Cygwin 1.7. Before beginning the installation, use Cygwin’s setup.exe +program to install the perl and wget packages if you have not already done so. The following additional +packages are recommended: +

    +
  • fontconfig [needed by XeTEX] +
  • +
  • ghostscript [needed by various utilities] +
  • +
  • libXaw7 [needed by xdvi] +
  • +
  • ncurses [provides the clear command used by the installer]
+

+

3.1.5 The text installer
+

Figure 1 displays the main text mode screen under Unix. The text installer is the default on +Unix. +

This is only a command-line installer; there is no cursor support at all. For instance, you cannot +tab around checkboxes or input fields. You just type something (case-sensitive) at the prompt +and press the Enter key, and then the entire terminal screen will be rewritten, with adjusted +content. +

The text installer interface is this primitive for a reason: it is designed to run on as many platforms as +possible, even with a very barebones Perl. +

+

3.1.6 The expert graphical installer
+

Figure 2 displays the expert graphical installer under GNU/Linux. Other than using buttons and menus, this +does not differ much from the text installer. +

This mode can be invoked explicitly with

+

+> install-tl -gui=perltk +
+
+

+

3.1.7 The simple wizard installer
+

Under Windows, the default is to run the simplest installation method we could devise, called the “wizard” +installer (figure 3). It installs everything and asks almost no questions. If you want to customize your setup, +you should run one of the other installers. +

This mode can be invoked explicitly with

+

+> install-tl -gui=wizard +
+
+ + +

+

3.2 Running the installer

+

The installer is intended to be mostly self-explanatory, but following are a few notes about the various options +and submenus. +

+

3.2.1 Binary systems menu (Unix only)
+


+ + + + + +
  Available platforms:
  =============================================================================== +
     a [ ] alpha-linux      DEC Alpha with GNU/Linux
     b [ ] amd64-freebsd    x86_64 with FreeBSD +
     c [ ] amd64-kfreebsd   x86_64 with GNU/kFreeBSD
     d [ ] armel-linux      ARM with GNU/Linux +
     e [ ] i386-cygwin      Intel x86 with Cygwin
     f [ ] i386-freebsd     Intel x86 with FreeBSD +
     g [ ] i386-kfreebsd    Intel x86 with GNU/kFreeBSD
     h [X] i386-linux       Intel x86 with GNU/Linux +
     i [ ] i386-solaris     Intel x86 with Solaris
     j [ ] mips-irix        SGI IRIX
     k [ ] mipsel-linux     mipsel with Linux +
     l [ ] powerpc-aix      PowerPC with AIX
     m [ ] powerpc-linux    PowerPC 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
+
Figure 4: Binaries menu
+ + +


+

Figure 4 displays the text mode binaries menu. By default, only the binaries for your current platform will +be installed. From this menu, you can select installation of binaries for other platforms as well. This can be +useful if you are sharing a TEX tree across a network of heterogenous machines, or for a dual-boot +system. +

3.2.2 Selecting what is to be installed
+


+ + + + + +
  Select scheme:
  ===============================================================================
   a [X] full scheme (everything) +
   b [ ] medium scheme (small + more packages and languages)
   c [ ] small scheme (basic + xetex, metapost, a few languages) +
   d [ ] basic scheme (plain and latex)
   e [ ] minimal scheme (plain only)
   f [ ] ConTeXt scheme
   g [ ] GUST TeX Live scheme +
   h [ ] teTeX scheme (more than medium, but nowhere near full)
   i [ ] XML scheme
   j [ ] custom selection of collections
+
Figure 5: Scheme menu
+ + +


+

Figure 5 displays the TEX Live scheme menu; from here, you choose a “scheme”, which is an overall set of +package collections. The default full scheme installs everything available. This is recommended, but you +can also choose the basic scheme for a small system, minimal for testing purposes, and medium +or teTeX to get something in between. There are also various specialized and country-specific +schemes. +


+ + + + + + +

pict +

Figure 6: Collections menu
+ + +


+

You can refine your scheme selection with the ‘standard collections’ and ‘language collections’ menus +(figure 6, shown in GUI mode for a change). +

Collections are one level more detailed than schemes — in essence, a scheme consists of several collections, a +collection consists of one or more packages, and a package (the lowest level grouping in TEX Live) contains the +actual TEX macro files, font files, and so on. +

If you want more control than the collection menus provide, you can use the TEX Live Manager (tlmgr) +program after installation (see section 5); using that, you can control the installation at the package +level. +

3.2.3 Directories
+

The default layout is described in section 2.3, p. 8. The default location of TEXDIR is /usr/local/texlive/2012 +on Unix and %SystemDrive%\texlive\2012 on Windows. +

The main reason to change this default is if you lack write permission for the default location. You don’t +have to be root or administrator to install TEX Live, but you do need write access to the target +directory. +

A reasonable alternative choice is a directory under your home directory, especially if you will be the sole +user. Use ‘~’ to indicate this, as in ‘~/texlive/2012’. +

We recommend including the year in the name, to enable keeping different releases of TEX Live side by +side. (You may wish to make a version-independent name such as /usr/local/texlive-cur via a symbolic +link, which you can then update after testing the new release.) +

Changing TEXDIR in the installer will also change TEXMFLOCAL, TEXMFSYSVAR and TEXMFSYSCONFIG. +

TEXMFHOME is the recommended location for personal macro files or packages. The default value is ~/texmf. +In contrast to TEXDIR, here a ~ is preserved in the newly-written configuration files, since it usefully refers to +the home directory of any individual running TEX. It expands to $HOME on Unix and %USERPROFILE% on +Windows. Special redundant note: TEXMFHOME, like all trees, must be organized according to the TDS, or files +may not be found. +

TEXMFVAR is the location for storing most cached runtime data specific to each user. TEXMFCACHE is used for +that purpose by ConTEXt MkIV (see section 3.4.5, p. 39). +

+

3.2.4 Options
+


+ + + + + +
  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:
   <Y> after installation, get package updates from CTAN: [X]
+
Figure 7: Options menu (Unix)
+ + +


+

Figure 7 shows the text mode options menu. More info on each: +

+use letter size instead of A4 by default:
The default paper size selection. Of course, individual + documents can and should specify a specific paper size, if desired. +
+execution of restricted list of programs:
As of TEX Live 2010, execution of a few external + programs is allowed by default. The (very short) list of allowed programs is given in the texmf.cnf. + See the 2010 news (section 9.1.7) for more details. +
+create format files:
Although unnecessary format files take time to generate and disk space to store, + it is still recommended to leave this option checked: if you don’t, then format files will be generated + in people’s private TEXMFVAR tree as they are needed. In that location, they will not be updated + automatically if (say) binaries or hyphenation patterns are updated in the installation, and thus + you could end up with incompatible format files. +
+install font/macro  tree:
These options allow + you to omit downloading/installing the documentation and source files present in most packages. + Not recommended. +
+create symlinks in standard directories:
This option (Unix only) bypasses the need to change + environment variables. Without this option, TEX Live directories usually have to be added to + PATH, MANPATH and INFOPATH. You will need write permissions to the target directories. It is + strongly advised not to overwrite a TEX system that came with your system with this option. It + is intended primarily for accessing the TEX system through directories that are already known + to users, such as /usr/local/bin, which don’t already contain any TEX files. +
+after installation  CTAN:
When installing from DVD, this option is enabled by default, since + usually one wants to take any subsequent package updates from the CTAN area that is updated + throughout the year. The only likely reason to disable it is if you install only a subset from the + DVD and plan to augment the installation later. In any case, the package repository for the + installer, and for updates after installation, can be set independently as needed; see section 3.3.1 + and section 3.4.3.
+

When all the settings are to your liking, you can type ‘I’ to start the installation process. When it is done, +skip to section 3.4 to read what else needs to be done, if anything. +

3.3 Command-line install-tl options

+

Type

+

+> install-tl -help +
+
for a listing of command-line options. Either - or -- can be used to introduce option names. These are the +most common ones: +

+

+ -gui
+

If possible, use the GUI installer. This requires the + Perl/Tk module (http://tug.org/texlive/distro.html#perltk) compiled with XFT support; + if Perl/Tk is not available, installation continues in text mode. + + +

+ -no-gui
+

Force using the text mode installer, even under Windows. +

+ -lang LL
+

Specify the installer interface language as a standard (usually two-letter) code. The installer tries + to automatically determine the right language but if it fails, or if the right language is not available, + then it uses English as a fallback. Run install-tl –help to get the list of available languages. +

+

+ -in-place
+

If you already have an rsync, svn, or + other copy of TEX Live (see http://tug.org/texlive/acquire-mirror.html) then this option + will use what you’ve got, as-is, and do only the necessary post-install. Be warned that the file + tlpkg/texlive.tlpdb may be overwritten; saving it is your responsibility. Also, package removal + has to be done manually. Do not use this unless you know what you are doing. This option cannot + be toggled via the installer interface. +

+ -portable
+

Install for portable use on, e.g., a USB stick. Also selectable from within the text installer with + the V command, and from the GUI installer. See section 4.2. +

+ -profile file
+

Load the installation profile file and do the installation with no user interaction. The installer + always writes a file texlive.profile to the tlpkg subdirectory of your installation. That file can + be given as the argument to redo the exact same installation on a different system, for example. + Alternatively, you can use a custom profile, most easily created by starting from a generated one + and changing values, or an empty file, which will take all the defaults. +

+ -repository url-or-directory
+

Specify package repository from which to install; see following.

+

+

3.3.1 The -repository option
+

The default network package repository is a CTAN mirror chosen automatically via http://mirror.ctan.org. +

If you want to override that, the location value can be a url starting with ftp:, http:, or file:/, or a +plain directory path. (When giving an http: or ftp: location, trailing ‘/’ characters and/or a trailing +‘/tlpkg’ component are ignored.) +

For example, you could choose a particular CTAN mirror with something like: +http://ctan.example.org/tex-archive/systems/texlive/tlnet/, substituting a real hostname and its +particular top-level CTAN path for ctan.example.org/tex-archive. The list of CTAN mirrors is +maintained at http://ctan.org/mirrors. +

If the given argument is local (either a path or a file:/ url), compressed files in an archive subdirectory +of the repository path are used (even if uncompressed files are available as well). +

+

3.4 Post-install actions

+

Some post-install may be required. + + +

+

3.4.1 Environment variables for Unix
+

If you elected to create symlinks in standard directories (described in section 3.2.4), then there is no +need to edit environment variables. Otherwise, on Unix systems, the directory of the binaries +for your platform must be added to the search path. (On Windows, the installer takes care of +this.) +

Each supported platform has its own subdirectory under TEXDIR/bin. See figure 4 for the list of +subdirectories and corresponding platforms. +

Optionally, you can also add the documentation man and Info directories to their respective search paths, if +you want the system tools to find them. The man pages might be found automatically after the addition to +PATH. +

For Bourne-compatible shells such as bash, and using Intel x86 GNU/Linux and a default directory setup as +an example, the file to edit might be $HOME/.profile (or another file sourced by .profile, and the lines to +add would look like this: +

+

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

For csh or tcsh, the file to edit is typically $HOME/.cshrc, and the lines to add might look +like: +

+

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

If you already have settings somewhere in your “dot” files, naturally the TEX Live directories should +simply be merged in as appropriate. +

+

3.4.2 Environment variables: Global configuration
+

If you want to make these changes globally, or for a user newly added to the system, then you are on +your own; there is just too much variation between systems in how and where these things are +configured. +

Our two hints are: 1) you may want to check for a file /etc/manpath.config and, if present, add lines +such as +

+

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

And 2) check for a file /etc/environment which may define the search path and other default environment +variables. +

In each (Unix) binary directory, we also create a symbolic link named man to the directory texmf/doc/man. +Some man programs, such as the standard Mac OS X man, will automatically find that, obviating the need for +any man page setup. +

+

3.4.3 Internet updates after DVD installation
+

If you installed TEX Live from DVD and then wish to get updates from the Internet, you need to run this +command—after you’ve updated your search path (as described in the previous section): +

+

+> tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet + + +
+
+

This tells tlmgr to use a nearby CTAN mirror for future updates. This is done by default when installing +from DVD, via the option described in section 3.2.4. +

If there are problems with the automatic mirror selection, you can specify a particular CTAN mirror from +the list at http://ctan.org/mirrors. Use the exact path to the tlnet subdir on that mirror, as shown +above. +

+

3.4.4 System font configuration for XeTEX and LuaTEX
+

XeTEX and LuaTEX can use any font installed on the system, not just those in the TEX trees. They do +these via related but not identical methods. +

On Windows, fonts shipped with TEX Live are made available to XeTEX automatically. But if you have +installed the xetex package on a Unix-compatible system, you need to configure your system to be +able to find the fonts shipped with TEX Live via system name lookup, and not just filename +lookup. +

To facilitate this, when the xetex package is installed (either at initial installation or later), the necessary +configuration file is created in TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf. +

To set up the TEX Live fonts for system-wide use (assuming you have suitable privileges), proceed as +follows: +

    +
  1. Copy the texlive-fontconfig.conf file to /etc/fonts/conf.d/09-texlive.conf. +
  2. +
  3. Run fc-cache -fsv.
+

If you do not have sufficient privileges to carry out the steps above, or if you simply want to make the TEX +Live fonts available to one user, you can do the following: +

    +
  1. Copy the texlive-fontconfig.conf file to ~/.fonts.conf, where ~ is your home directory. +
  2. +
  3. Run fc-cache -fv.
+

You can run fc-list to see the names of the system fonts. The incantation fc-list : family style +file spacing (all arguments are literal strings) shows generally interesting information. +

+

3.4.5 ConTEXt Mark IV
+

Both the ‘old’ ConTEXt (Mark II) and the ‘new’ ConTEXt (Mark IV) should run out of the box after TEX +Live installation, and should need no special attention as long as you stick to using tlmgr for +updates. +

However, because ConTEXt MkIV does not use the kpathsea library, some setup will be required whenever +you install new files manually (without using tlmgr). After each such installation, each MkIV user must +run: +

  context --generate
+

to refresh the ConTEXt disk cache data. The resulting files are stored under TEXMFCACHE. whose default value in +TEX Live is TEXMSYSVAR;TEXMFVAR. +

ConTEXt MkIV will read from all paths mentioned in TEXMFCACHE, and write to the first path that is +writable. While reading, the last found match will take precedence in the case of duplicated cache +data. +

For more information, see http://wiki.contextgarden.net/Running_Mark_IV. +

+

3.4.6 Integrating local and personal macros
+ + +

This is already mentioned implicitly in section 2.3: TEXMFLOCAL (by default, /usr/local/texlive/texmf-local +or %SystemDrive%\texlive\texmf-local on Windows) is intended for system-wide local fonts and macros; +and TEXMFHOME (by default, $HOME/texmf or %USERPROFILE%\texmf), is for personal fonts and macros. These +directories are intended to stick around from release to release, and have their content seen automatically by a +new TEX Live release. Therefore, it is best to refrain from changing the definition of TEXMFLOCAL to +be too far away from the main TEX Live directory, or you will need to manually change future +releases. +

For both trees, files should be placed in their proper TEX Directory Structure (TDS) subdirectories; see +http://tug.org/tds or consult texmf/web2c/texmf.cnf. For instance, a LATEX class file or +package should be placed in TEXMFLOCAL/tex/latex or TEXMFHOME/tex/latex, or a subdirectory +thereof. +

TEXMFLOCAL requires an up-to-date filename database, or files will not be found. You can update it with the +command mktexlsr or use the ‘Reinit file database’ button on the configuration tab of the TEX Live Manager +GUI. +

By default, each of these variables is defined to be a single directory, as shown. This is not a hard-and-fast +requirement. If you need to easily switch back and forth between different versions of large packages, for +example, you can maintain multiple trees for your own purposes. This is done by setting TEXMFHOME to the list +of directories, within braces, separated by commas: + + +

+
    TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir}
+
+

+

Section 7.1.5 describes brace expansion further. +

+

3.4.7 Integrating third-party fonts
+

This is unfortunately a messy topic. Forget about it unless you want to delve into many details of the TEX +installation. Don’t forget to check first what you get for free: see section 2.6. +

A possible alternative is to use XeTEX or LuaTEX (see section 2.4), which let you use operating system +fonts without any installation in TEX. +

If you do need to do this, see http://tug.org/fonts/fontinstall.html for our best effort at describing +the procedure. If you rigorously maintain your local font maps, tlmgr generate updmap may be useful, +notably in moving from release to release; see the tlmgr documentation. +

+

3.5 Testing the installation

+

After installing TEX Live as best you can, you naturally want to test it out, so you can start creating beautiful +documents and/or fonts. +

This section gives some basic procedures for testing that the new system is functional. We give Unix +commands here; under Mac OS X and Windows, you’re more likely to run the tests through a graphical +interface, but the principles are the same. +

+

    +
  1. Make sure that you can run the tex program in the first place:
    +

    + > tex --version +
    TeX 3.1415926 (TeX Live ...) +
    kpathsea version 6.0.1 +
    Copyright ... D.E. Knuth. +
    ... +
    +
    If this comes back with ‘command not found’ instead of version and copyright information, or with an + older version, most likely you don’t have the correct bin subdirectory in your PATH. See the + environment-setting information on p. 38. +
  2. +
  3. Process a basic LATEX file:
    +

    + > latex sample2e.tex +
    pdfTeX 3.1415926-... (TeX Live ...) +
    ... +
    Output written on sample2e.dvi (3 pages, 7484 bytes). +
    Transcript written on sample2e.log. +
    +
    If this fails to find sample2e.tex or other files, most likely you have interference from old environment + variables or configuration files; we recommend unsetting all TEX-related environment variables for a + start. (For a deep analysis, you can ask TEX to report on exactly what it is searching for, and finding; + see “Debugging actions” on page 66.) + + +
  4. +
  5. Preview the result online:
    +

    + > xdvi sample2e.dvi    # Unix +
    > dviout sample2e.dvi  # Windows +
    +
    You should see a new window with a nice document explaining some of the basics of LATEX. (Well + worth reading, by the way, if you’re new to TEX.) You do have to be running under X for xdvi to work; if + you’re not, or your DISPLAY environment variable is set incorrectly, you’ll get an error ‘Can’t open + display’. +
  6. +
  7. Create a PostScript file for printing or display:
    +

    + > dvips sample2e.dvi -o sample2e.ps +
    +
    +
  8. +
  9. Create a PDF file instead of DVI; this processes the .tex file and writes PDF directly: +
    +

    + > pdflatex sample2e.tex +
    +
    +
  10. +
  11. Preview the PDF file:
    +

    + > gv sample2e.pdf +
    or: +
    > xpdf sample2e.pdf +
    +
    Neither gv nor xpdf are included in TEX Live, so you must install them separately. See + http://www.gnu.org/software/gv and http://www.foolabs.com/xpdf, respectively. There + are plenty of other PDF viewers, too. For Windows, we recommend trying Sumatra PDF + (http://blog.kowalczyk.info/software/sumatrapdf). +
  12. +
  13. Standard test files you may find useful in addition to sample2e.tex: +

    +

    + small2e.tex
    +

    A simpler document than sample2e, to reduce the input size if you’re having troubles. +

    + testpage.tex
    +

    Test if your printer introduces any offsets. + + +

    + nfssfont.tex
    +

    For printing font tables and tests. +

    + testfont.tex
    +

    Also for font tables, but using plain TEX. +

    + story.tex
    +

    The most canonical (plain) TEX test file of all. You must type ‘\bye’ to the * prompt after + ‘tex story.tex’.

    +
  14. +
  15. If you have installed the xetex package, you can test its access to system fonts as follows: +
    +

    + > xetex opentype-info.tex +
    This is XeTeX, Version 3.1415926 +
    ... +
    Output written on opentype-info.pdf (1 page). +
    Transcript written on opentype-info.log. +
    +
    (Or the same for luatex.) +

    If you get an error message saying “Invalid fontname ‘Latin Modern Roman/ICU’…”, then you need + to configure your system so that XeTEX can find the fonts shipped with TEX Live. See + Section 3.4.4. +

+

+

3.6 Links for additional downloadable software

+

If you are new to TEX, or otherwise need help with actually writing TEX or LATEX documents, please visit +http://tug.org/begin.html for some introductory resources. +

Links for some other tools you may consider installing: +

+Ghostscript
http://www.cs.wisc.edu/~ghost/ +
+Perl
http://www.perl.org/ with supplementary packages from CPAN, http://www.cpan.org/ +
+ImageMagick
http://www.imagemagick.com, for graphics processing and conversion +
+NetPBM
http://netpbm.sourceforge.net/, also for graphics. +
+TEX-oriented editors
There is a wide choice, and it is a matter of the user’s taste. Here is a selection in + alphabetical order (a few here are for Windows only). + +
+

For a much longer list of packages and programs, see http://tug.org/interest.html. +

+

4 Specialized installations

+

The previous sections described the basic installation process. Here we turn to some specialized +cases. +

+

4.1 Shared-user (or cross-machine) installations

+

TEX Live has been designed to be sharable between different users on one system, and/or between +different systems on a network. With a standard directory layout, no hard paths are configured: the +locations for files needed by TEX Live programs are found relative to the programs. You can see +this in the principal configuration file $TEXMFMAIN/web2c/texmf.cnf, which contains lines such +as +

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

This means that adding the directory for TEX Live executables for their platform to their search path is sufficient +to get a working setup. +

By the same token, you can also install TEX Live locally and then move the entire hierarchy afterwards to +a network location. +

For Windows, a sample network installation script named w32client can be downloaded through +http://tug.org/texlive/w32client.html. It creates settings and menu shortcuts for using an existing TEX +Live installation on a LAN. It also registers an uninstaller w32unclient, available in the same zip file. See the +web page for more information. +

+

4.2 Portable (USB) installations

+

The -portable installer option (or V command in the text installer or corresponding GUI option) +creates a completely self-contained TEX Live installation under a common root and forgoes system +integration. You can create such an installation directly on a USB stick, or copy it to a USB stick +afterwards. + + +

To run TEX using this portable installation, you need to add the appropriate binary directory +to the search path during your terminal session, as usual. On Windows, you can double-click +tl-tray-menu at the root of the installation to choose between a few common tasks, as shown in this +screenshot: + +

pict +

The ‘More…’ entry explains how you can customize this menu. +

+

4.3 ISO (or DVD) installations

+

If you don’t need to update or otherwise modify your installation often, and/or have several systems on +which to use TEX Live, it may be convenient to create an ISO of your TEX Live installation, +because: +

    +
  • Copying an ISO between different computers is much faster than copying a normal installation. +
  • +
  • If you are dual-booting between different operating systems and want them to share a TEX Live + installation, an ISO installation is not tied to the idiosyncrasies and limitations of other mutually + supported filesystems (FAT32, NTFS, HFS+). +
  • +
  • Virtual machines can simply mount such an ISO.
+

Of course you can also burn an ISO to DVD, if that is useful for you. +

Desktop GNU/Linux/Unix systems, including Mac OS X, are able to mount an ISO. Apart from that, +nothing changes compared to a normal hard disk installation, see section 3.4.1. +

When preparing such an ISO installation, it is best to omit the subdirectory for the release year, and have +texmf-local at the same level as the other trees (texmf, texmf-dist, etc.). You can do this with the normal +directory options in the installer. +

For a physical (rather than virtual) Windows system, you can burn the ISO to DVD. However, it may be +worth your while to investigate free ISO-mounting options. For Windows XP, Microsoft offers +winxpvirtualcdcontrolpanel. +

For Windows system integration, you can include the w32client scripts described in section 4.1 and at +http://tug.org/texlive/w32client.html, which work just as well for an ISO as for a network +installation. +

On Mac OS X, TeXShop and TEXworks will be able to use the DVD installation if a symlink /usr/texbin +points to the appropriate binary directory, e.g., + + +

+
  sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin
+
+

+

Historical note: TEX Live 2010 was the first TEX Live edition which was no longer distributed ‘live’. +However, it always required some acrobatics to run from DVD or ISO; in particular, there was no way around +setting at least one extra environment variable. If you create your ISO from an existing installation then there +is no need for this. +

+

5 tlmgr: Managing your installation

+


+ + + + + + +

pict +

Figure 8: tlmgr in GUI mode: main window, after ‘Load’.
+ + +


+


+ + + + + + +

pict +

Figure 9: tlmgr in GUI mode: General options
+

pict +

Figure 10: tlmgr in GUI mode: Paper +size options
+ + +


+

TEX Live includes a program named tlmgr for managing TEX Live after the initial installation. The +programs updmap, fmtutil and texconfig are still included and will be retained in the future, but tlmgr is now +the preferred interface. Its capabilities include: +

    +
  • installing, updating, backing up, restoring, and uninstalling individual packages, optionally taking + dependencies into account; +
  • +
  • searching for and listing packages, etc.; +
  • +
  • listing, adding, and removing platforms; +
  • +
  • changing installation options such as paper size and source location (see section 3.3.1).
+

5.1 tlmgr GUI mode

+

tlmgr can be started in GUI mode (figure 8) with

+

+> tlmgr -gui +
+
or in Windows via the Start menu: Start, Programs, TeX Live 2012, TeX Live Manager. After clicking +‘Load’ it displays a list of available and installed packages. This assumes of course that the installation source +is valid and reachable. +

Figures 9 and 10 show the general and paper size option screens. +

+

5.2 Sample tlmgr command-line invocations

+

After the initial installation, you can update your system to the latest versions available with: +

+

+> tlmgr update -all +
+
If this makes you nervous, first try
+

+> tlmgr update -all -dry-run +
+
or (less verbose):
+

+> tlmgr update -list +
+
+

This more complex example adds a collection, for the engine XeTEX, from a local directory: +

+

+> tlmgr -repository /local/mirror/tlnet install collection-xetex + + +
+
It generates the following output (abridged): +
  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/2012/texmf/ls-R...
  ...
  running fmtutil-sys --missing
  ... +
  Transcript written on xelatex.log.
  fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed.
+

As you can see, tlmgr installs dependencies, and takes care of any necessary post-install actions, including +updating the filename database and (re)generating formats. In the above, we generated new formats for +XeTEX. +

To describe a package (or collection or scheme):

+

+> tlmgr show collection-latexextra +
+
which produces +
  package:    collection-latexextra
  category:   Collection
  shortdesc:  LaTeX supplementary packages +
  longdesc:   A large collection of add-on packages for LaTeX.
  installed:  Yes
  revision:   14675
+

Last and most important, for full documentation see http://tug.org/texlive/tlmgr.html, or: +

+

+> tlmgr -help +
+
+

+

6 Notes on Windows

+

+

6.1 Windows-specific features

+

Under Windows, the installer does some extra things: +

+Menus and shortcuts.
A new ‘TEX Live’ submenu of the Start menu is installed, which contains + entries for some GUI programs (tlmgr, texdoctk, the PS_View (psv) PostScript previewer) and + some documentation. +
+File associations.
If enabled, TeXworks, Dviout and PS_view become either the default program for + their respective filetypes, or get an entry in the ‘Open with’ right-click menus of those filetypes. +
+Bitmap to eps converter.
Various bitmapped formats get an entry bitmap2eps in their ‘Open with’ + right-click menu. Bitmap2eps is a simple script which lets sam2p or bmeps do the real work. +
+Automatic path adjustment.
No manual configuration steps are required. +
+Uninstaller.
The installer creates an entry under ‘Add/Remove Programs’ for TEX Live. The uninstall + tab of the TEX Live Manager GUI refers to this.
+ + +

+

6.2 Additional software included on Windows

+

To be complete, a TEX Live installation needs support packages that are not commonly found on a Windows +machine. TEX Live provides the missing pieces: +

+Perl and Ghostscript.
Because of the importance of Perl and Ghostscript, TEX Live includes + ‘hidden’ copies of these programs. TEX Live programs that need them know where to find them, + but they don’t betray their presence through environment variables or registry settings. They + aren’t full-scale installations, and shouldn’t interfere with any system installations of Perl or + Ghostscript. +
+PS_View.
Also installed is PS_View, a PostScript and PDF viewer; see figure 11. +


pict +
Figure 11: PS_View: very high magnifications available!
+


+
+dviout.
Also installed is dviout, a DVI viewer. At first, when you preview files with dviout, it will create fonts, + because screen fonts were not installed. After a while, you will have created most of the fonts you use, + and you will rarely see the font-creation window. More information can be found in the (highly + recommended) on-line help. +
+TEXworks.
TEXworks is a TEX-oriented editor with an integrated PDF viewer. +
+Command-line tools.
A number of Windows ports of common Unix command-line programs + are installed along with the usual TEX Live binaries. These include gzip, unzip and the + utilities from the xpdf suite (pdfinfo, pdffonts, …). The xpdf viewer itself is not available for + Windows. Instead, you can download the Sumatra PDF viewer, which is based on xpdf, from + http://blog.kowalczyk.info/software/sumatrapdf, among other options. +
+fc-list, fc-cache,
The tools from the fontconfig library allow XeTEX to handle system fonts on Windows. + You can use fc-list to determine the font names to pass to XeTEX’s extended \font command. If + necessary, run fc-cache first to update font information. +
+

+

6.3 User Profile is Home

+

The Windows counterpart of a Unix home directory is the %USERPROFILE% directory. Under Windows XP, this +is usually C:\Documents and Settings\<username>, and under Windows Vista and Windows 7 it is +C:\Users\<username>. In the texmf.cnf file, and Kpathsea in general, ~ will expand appropriately on both +Windows and Unix. +

+

6.4 The Windows registry

+

Windows stores nearly all configuration data in its registry. The registry contains a set of hierarchically +organized keys, with several root keys. The most important ones for installation programs are +HKEY_CURRENT_USER and HKEY_LOCAL_MACHINE, HKCU and HKLM in short. The HKCU part of the registry is in +the user’s home directory (see section 6.3). HKLM is normally in a subdirectory of the Windows +directory. +

In some cases, system information could be obtained from environment variables but for other information, +for example the location of shortcuts, it is necessary to consult the registry. Setting environment variables +permanently also requires registry access. + + +

+

6.5 Windows permissions

+

In later versions of Windows, a distinction is made between regular users and administrators, where only the +latter have free access to the entire operating system. In practice, though, you could better describe these +classes of users as unprivileged users and normal users: being an administrator is the rule, not the +exception. Nevertheless, we have made an effort to make TEX Live installable without administrative +privileges. +

If the user is an administrator, there is an option to install for all users. If this option is chosen, shortcuts +are created for all users, and the system environment is modified. Otherwise, shortcuts and menu entries are +created for the current user, and the user environment is modified. +

Regardless of administrator status, the default root of TEX Live proposed by the installer is always +under %SystemDrive%. The installer always tests whether the root is writable for the current +user. +

A problem may arise if the user is not an administrator and TEX already exists in the search path. Since +the effective path consists of the system path followed by the user path, the new TEX Live would +never get precedence. As a safeguard, the installer creates a shortcut to the command-prompt in +which the new TEX Live binary directory is prepended to the local search path. The new TEX +Live will be always usable from within such a command-prompt. The shortcut for TEXworks, if +installed, also prepends TEX Live to the search path, so it should also be immune to this path +problem. +

For Vista and Windows 7 there is another twist: even if you are logged in as administrator, you need to +explicitly ask for administrator privileges. In fact, there is not much point in logging in as administrator. +Instead, right-clicking on the program or shortcut that you want to run usually gives you a choice ‘Run as +administrator’. +

+

6.6 Increasing maximum memory on Windows and Cygwin

+

Windows and Cygwin (see section 3.1.4 for Cygwin installation specifics) users may find that they run out of +memory when running some of the programs shipped with TEX Live. For example, asy might run out of +memory if you try to allocate an array of 25,000,000 reals, and LuaTEX might run out of memory if you try to +process a document with a lot of big fonts. +

For Cygwin, you can increase the amount of available memory by following the instructions in the Cygwin +User’s Guide (http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html). +

For Windows, you have to create a file, say moremem.reg, with these four lines: +

+

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

and then execute the command regedit /s moremem.reg as administrator. (If you want to change memory +only for the current user instead of system-wide, use HKEY_CURRENT_USER.) +

+

7 A user’s guide to Web2C

+

Web2C is an integrated collection of TEX-related programs: TEX itself, Metafont, MetaPost, BibTeX, etc. +It is the heart of TEX Live. The home page for Web2C, with the current manual and more, is +http://tug.org/web2c. +

A bit of history: The original implementation was by Tomas Rokicki who, in 1987, developed a first +TEX-to-C system based on change files under Unix, which were primarily the original work of Howard +Trickey and Pavel Curtis. Tim Morgan became the maintainer of the system, and during this period +the name changed to Web-to-C. In 1990, Karl Berry took over the work, assisted by dozens of +additional contributors, and in 1997 he handed the baton to Olaf Weber, who returned it to Karl in +2006. +

The Web2C system runs on Unix, 32-bit Windows systems, Mac OS X, and other operating systems. It uses +Knuth’s original sources for TEX and other basic programs written in the WEB literate programming +system and translates them into C source code. The core TEX programs handled in this way +are: +

+ + +

+ bibtex
+

Maintaining bibliographies. +

+ dvicopy
+

Expands virtual font references in DVI files. +

+ dvitomp
+

DVI to MPX (MetaPost pictures). +

+ dvitype
+

DVI to human-readable text. +

+ gftodvi
+

Generic font proofsheets. +

+ gftopk
+

Generic to packed fonts. +

+ gftype
+

GF to human-readable text. +

+ mf
+

Creating typeface families. +

+ mft
+

Prettyprinting Metafont source. +

+ mpost
+

Creating technical diagrams. +

+ patgen
+

Creating hyphenation patterns. +

+ pktogf
+

Packed to generic fonts. +

+ pktype
+

PK to human-readable text. +

+ pltotf
+

Plain text property list to TFM. +

+ pooltype
+

Display WEB pool files. +

+ tangle
+

WEB to Pascal. + + +

+ tex
+

Typesetting. +

+ tftopl
+

TFM to plain text property list. +

+ vftovp
+

Virtual font to virtual property list. +

+ vptovf
+

Virtual property list to virtual font. +

+ weave
+

WEB to TEX.

+

The precise functions and syntax of these programs are described in the documentation of the individual +packages and of Web2C itself. However, knowing a few principles governing the whole family of programs will +help you take advantage of your Web2C installation. +

All programs honor these standard GNU options: +

+ --help
+

print basic usage summary. +

+ --verbose
+

print detailed progress report. +

+ --version
+

print version information, then exit.

+

For locating files the Web2C programs use the path searching library Kpathsea (http://tug.org/kpathsea). +This library uses a combination of environment variables and a configuration files to optimize searching the +(huge) collection of TEX files. Web2C can look at many directory trees simultaneously, which is useful in +maintaining TEX’s standard distribution and local and personal extensions in distinct trees. To speed up file +searches, the root of each tree has a file ls-R, containing an entry showing the name and relative pathname for +all files under that root. +

+

7.1 Kpathsea path searching

+

Let us first describe the generic path searching mechanism of the Kpathsea library. +

We call a search path a colon- or semicolon-separated list of path elements, which are basically directory +names. A search path can come from (a combination of) many sources. To look up a file ‘my-file’ along a +path ‘.:/dir’, Kpathsea checks each element of the path in turn: first ./my-file, then /dir/my-file, +returning the first match (or possibly all matches). +

In order to adapt optimally to all operating systems’ conventions, on non-Unix systems Kpathsea can use +filename separators different from colon (‘:’) and slash (‘/’). +

To check a particular path element p, Kpathsea first checks if a prebuilt database (see “Filename database” +on page 63) applies to p, i.e., if the database is in a directory that is a prefix of p. If so, the path specification +is matched against the contents of the database. +

If the database does not exist, or does not apply to this path element, or contains no matches, the +filesystem is searched (if this was not forbidden by a specification starting with ‘!!’ and if the file being +searched for must exist). Kpathsea constructs the list of directories that correspond to this path element, and +then checks in each for the file being sought. + + +

The “file must exist” condition comes into play with ‘.vf’ files and input files read by TEX’s \openin +command. Such files may not exist (e.g., cmr10.vf), and so it would be wrong to search the disk for them. +Therefore, if you fail to update ls-R when you install a new ‘.vf’ file, it will never be found. Each path +element is checked in turn: first the database, then the disk. If a match is found, the search stops and the result +is returned. +

Although the simplest and most common path element is a directory name, Kpathsea supports additional +features in search paths: layered default values, environment variable names, config file values, users’ home +directories, and recursive subdirectory searching. Thus, we say that Kpathsea expands a path element, meaning +it transforms all the specifications into basic directory name or names. This is described in the following +sections in the same order as it takes place. +

Note that if the filename being searched for is absolute or explicitly relative, i.e., starts with ‘/’ or ‘./’ or +‘../’, Kpathsea simply checks if that file exists. +

+

7.1.1 Path sources
+

A search path can come from many sources. In the order in which Kpathsea uses them: +

+

    +
  1. A user-set environment variable, for instance, TEXINPUTS. Environment variables with a period + and a program name appended override; e.g., if ‘latex’ is the name of the program being run, + then TEXINPUTS.latex will override TEXINPUTS. +
  2. +
  3. A program-specific configuration file, for example, a line ‘S /a:/b’ in dvips’s config.ps. +
  4. +
  5. A Kpathsea configuration file texmf.cnf, containing a line like ‘TEXINPUTS=/c:/d’ (see below). +
  6. +
  7. The compile-time default.
+

You can see each of these values for a given search path by using the debugging options (see “Debugging actions” +on page 66). +

+

7.1.2 Config files
+

Kpathsea reads runtime configuration files named texmf.cnf for search path and other definitions. The search +path used to look for these files is named TEXMFCNF, but we do not recommend setting this (or any) +environment variable. +

Instead, normal installation results in a file .../2012/texmf.cnf. If you must make changes to the +defaults (not normally necessary), this is the place to put them. The main configuration file is in +.../2012/texmf/web2c/texmf.cnf. You should not edit this latter file, as your changes will be lost when the +distributed version is updated. +

All texmf.cnf files in the search path will be read and definitions in earlier files override those in later +files. For example, with a search path of .:$TEXMF, values from ./texmf.cnf override those from +$TEXMF/texmf.cnf. +

    +
  • Comments start with % and continue to the end of the line. +
  • +
  • Blank lines are ignored. +
  • +
  • A \ at the end of a line acts as a continuation character, i.e., the next line is appended. Whitespace + at the beginning of continuation lines is not ignored. +
  • +
  • Each remaining line has the form:
    + + +

    +   variable[.progname] [=] value +
    +
    where the ‘=’ and surrounding whitespace are optional. +
  • +
  • The variable name may contain any character other than whitespace, ‘=’, or ‘.’, but sticking to ‘A-Za-z_’ + is safest. +
  • +
  • If ‘.progname’ is present, the definition only applies if the program that is running is named progname + or progname.exe. This allows different flavors of TEX to have different search paths, for + example. +
  • +
  • value may contain any characters except % and ‘@’. The $var.prog feature is not available on the + right-hand side; instead, you must use an additional variable. A ‘;’ in value is translated to ‘:’ if + running under Unix; this is useful to be able to have a single texmf.cnf for Unix, MS-DOS and Windows + systems. +
  • +
  • All definitions are read before anything is expanded, so variables can be referenced before they are + defined.
+

A configuration file fragment illustrating most of these points is shown below: +

+

+  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;}// +
+

+

7.1.3 Path expansion
+

Kpathsea recognizes certain special characters and constructions in search paths, similar to those available in +Unix shells. As a general example, the complex path, ~$USER/{foo,bar}//baz, expands to all subdirectories +under directories foo and bar in $USER’s home directory that contain a directory or file baz. These expansions +are explained in the sections below. +

7.1.4 Default expansion
+

If the highest-priority search path (see “Path sources” on page 58) contains an extra colon (i.e., leading, +trailing, or doubled), Kpathsea inserts at that point the next-highest-priority search path that is defined. If +that inserted path has an extra colon, the same happens with the next highest. For example, given an +environment variable setting +

+

+> setenv TEXINPUTS /home/karl: +
+
and a TEXINPUTS value from texmf.cnf of +
+

+  .:$TEXMF//tex + + +
+
then the final value used for searching will be: +
+

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

Since it would be useless to insert the default value in more than one place, Kpathsea changes only one +extra ‘:’ and leaves any others in place. It checks first for a leading ‘:’, then a trailing ‘:’, then a doubled +‘:’. +

+

7.1.5 Brace expansion
+

A useful feature is brace expansion, which means that, for instance, v{a,b}w expands to vaw:vbw. +Nesting is allowed. This is used to implement multiple TEX hierarchies, by assigning a brace +list to $TEXMF. For example, in texmf.cnf, a definition like this (simplified for this example) is +made: + + +

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

Using this you can then write something like + + +

+
    TEXINPUTS = .;$TEXMF/tex//
+
+

which means that, after looking in the current directory, the $TEXMFHOME/tex, $TEXMFLOCAL/tex, +$TEXMFVAR/tex and $TEXMFMAIN/tex trees only) will be searched (the last two use using ls-R data base +files). It is a convenient way for running two parallel TEX structures, one “frozen” (on a CD, for +instance) and the other being continuously updated with new versions as they become available. +By using the $TEXMF variable in all definitions, one is sure to always search the up-to-date tree +first. +

+

7.1.6 Subdirectory expansion
+

Two or more consecutive slashes in a path element following a directory d is replaced by all subdirectories of d: +first those subdirectories directly under d, then the subsubdirectories under those, and so on. At each level, the +order in which the directories are searched is unspecified. +

If you specify any filename components after the ‘//’, only subdirectories with matching components are +included. For example, ‘/a//b’ expands into directories /a/1/b, /a/2/b, /a/1/1/b, and so on, but not /a/b/c +or /a/1. +

Multiple ‘//’ constructs in a path are possible, but ‘//’ at the beginning of a path is ignored. +

+

7.1.7 List of special characters and their meaning: a summary
+

The following list summarizes the special characters in Kpathsea configuration files. +

+

+ :
+

Separator in path specification; at the beginning or the end of a path it substitutes the default + path expansion. +

+ ;
+

Separator on non-Unix systems (acts like :). +

+ $
+

Variable expansion. +

+ ~
+

Represents the user’s home directory. +

+ {...}
+

Brace expansion. +

+ //
+

Subdirectory expansion (can occur anywhere in a path, except at its beginning). +

+ %
+

Start of comment. +

+ \
+

Continuation character (allows multi-line entries). +

+ !!
+

Search only database to locate file, do not search the disk.

+ + +

+

7.2 Filename databases

+

Kpathsea goes to some lengths to minimize disk accesses for searches. Nevertheless, at installations with +enough directories, searching each possible directory for a given file can take an excessively long time (this is +especially true if many hundreds of font directories have to be traversed.) Therefore, Kpathsea can use an +externally-built plain text “database” file named ls-R that maps files to directories, thus avoiding the need to +exhaustively search the disk. +

A second database file aliases allows you to give additional names to the files listed in ls-R. This can be +helpful to confirm to DOS 8.3 filename conventions in source files. +

+

7.2.1 The filename database
+

As explained above, the name of the main filename database must be ls-R. You can put one at the root of +each TEX hierarchy in your installation that you wish to be searched ($TEXMF by default). Kpathsea looks for +ls-R files along the TEXMFDBS path. +

The recommended way to create and maintain ‘ls-R’ is to run the mktexlsr script included with the +distribution. It is invoked by the various ‘mktex’… scripts. In principle, this script just runs the command +

+

+cd /your/texmf/root && \ls -1LAR ./ >ls-R +
+
presuming your system’s ls produces the right output format (GNU ls is all right). To ensure +that the database is always up-to-date, it is easiest to rebuild it regularly via cron, so that it is +automatically updated when the installed files change, such as after installing or updating a LATEX +package. +

If a file is not found in the database, by default Kpathsea goes ahead and searches the disk. If a particular +path element begins with ‘!!’, however, only the database will be searched for that element, never the +disk. +

+

7.2.2 kpsewhich: Standalone path searching
+

The kpsewhich program exercises path searching independent of any particular application. This can be useful +as a sort of find program to locate files in TEX hierarchies (this is used heavily in the distributed +‘mktex’… scripts). +

+

+> kpsewhich option filename +
+
The options specified in option start with either ‘-’ or ‘--’, and any unambiguous abbreviation is +accepted. +

Kpathsea looks up each non-option argument on the command line as a filename, and returns the first file +found. There is no option to return all the files with a particular name (you can run the Unix ‘find’ utility for +that). +

The most common options are described next. +

+

+ --dpi=num
+

Set the resolution to num; this only affects ‘gf’ and ‘pk’ lookups. ‘-D’ is a synonym, for + compatibility with dvips. Default is 600. + + +

+ --format=name
+


Set the format for lookup to name. By default, the format is guessed from the filename. For + formats which do not have an associated unambiguous suffix, such as MetaPost support files and + dvips configuration files, you have to specify the name as known to Kpathsea, such as tex or enc + files. Run kpsewhich --help for a list. +

+ --mode=string
+


Set the mode name to string; this only affects ‘gf’ and ‘pk’ lookups. No default: any mode will + be found. +

+ --must-exist
+


Do everything possible to find the files, notably including searching the disk. By default, only the + ls-R database is checked, in the interest of efficiency. +

+ --path=string
+


Search along the path string (colon-separated as usual), instead of guessing the search path from + the filename. ‘//’ and all the usual expansions are supported. The options ‘--path’ and ‘--format’ + are mutually exclusive. +

+ --progname=name
+


Set the program name to name. This can affect the search paths via the .progname feature. The + default is kpsewhich. +

+ --show-path=name
+


shows the path used for file lookups of file type name. Either a filename extension (.pk, .vf, etc.) + or a name can be used, just as with ‘--format’ option. +

+ --debug=num
+


sets the debugging options to num.

+

+

7.2.3 Examples of use
+

Let us now have a look at Kpathsea in action. Here’s a straightforward search: +

+

+> kpsewhich article.cls +
   /usr/local/texmf-dist/tex/latex/base/article.cls +
+
We are looking for the file article.cls. Since the ‘.cls’ suffix is unambiguous we do not need to specify that +we want to look for a file of type tex (TEX source file directories). We find it in the subdirectory +tex/latex/base below the ‘texmf-distTEX Live directory. Similarly, all of the following are found without +problems thanks to their unambiguous suffix.
+ + +

+> 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 +
+
+

By the way, that last is a BibTeX bibliography database for TUGboat articles. +

+

+> kpsewhich cmr10.pk +
+
Font bitmap glyph files of type .pk are used by display programs like dvips and xdvi. Nothing is returned in +this case since there are no pre-generated Computer Modern ‘.pk’ files in TEX Live — the Type 1 variants are +used by default.
+

+> kpsewhich wsuipa10.pk +
   /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +
+
For these fonts (a phonetic alphabet from the University of Washington) we had to generate ‘.pk’ files, and +since the default Metafont mode on our installation is ljfour with a base resolution of 600dpi (dots per inch), +this instantiation is returned.
+

+> kpsewhich -dpi=300 wsuipa10.pk +
+
In this case, when specifying that we are interested in a resolution of 300dpi (-dpi=300) we see that no such +font is available on the system. A program like dvips or xdvi would go off and actually build the required .pk +files using the script mktexpk. +

Next we turn our attention to dvips’s header and configuration files. We first look at one of the commonly +used files, the general prologue tex.pro for TEX support, before turning our attention to the generic +configuration file (config.ps) and the PostScript font map psfonts.map — as of 2004, map and encoding files +have their own search paths and new location in texmf trees. As the ‘.ps’ suffix is ambiguous we +have to specify explicitly which type we are considering (dvips config) for the file 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 + + +
+
+

We now take a closer look at the URW Times PostScript support files. The prefix for these in the standard +font naming scheme is ‘utm’. The first file we look at is the configuration file, which contains the name of the +map file:

+

+> kpsewhich --format="dvips config" config.utm +
   /usr/local/texmf-dist/dvips/psnfss/config.utm +
+
The contents of that file is
+

+  p +utm.map +
+
which points to the file utm.map, which we want to locate next.
+

+> kpsewhich utm.map +
   /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +
+
This map file defines the file names of the Type 1 PostScript fonts in the URW collection. Its contents look +like (we only show part of the lines):
+

+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 +
+
Let us, for instance, take the Times Roman instance utmr8a.pfb and find its position in the texmf directory +tree with a search for Type 1 font files:
+

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

It should be evident from these examples how you can easily locate the whereabouts of a given file. This is +especially important if you suspect that the wrong version of a file is picked up somehow, since kpsewhich will +show you the first file encountered. +

+

7.2.4 Debugging actions
+

Sometimes it is necessary to investigate how a program resolves file references. To make this practical, +Kpathsea offers various levels of debugging output: +

+

+  1
+

stat calls (disk lookups). When running with an up-to-date ls-R database this should almost + give no output. + + +

+  2
+

References to hash tables (such as ls-R databases, map files, configuration files). +

+  4
+

File open and close operations. +

+  8
+

General path information for file types searched by Kpathsea. This is useful to find out where a + particular path for the file was defined. +

+ 16
+

Directory list for each path element (only relevant for searches on disk). +

+ 32
+

File searches. +

+ 64
+

Variable values.

+

A value of -1 will set all the above options; in practice, this is usually the most convenient. +

Similarly, with the dvips program, by setting a combination of debug switches, one can follow in detail +where files are being picked up from. Alternatively, when a file is not found, the debug trace shows in +which directories the program looks for the given file, so that one can get an indication what the +problem is. +

Generally speaking, as most programs call the Kpathsea library internally, one can select a debug option by +using the KPATHSEA_DEBUG environment variable, and setting it to (a combination of) values as described in the +above list. +

(Note for Windows users: it is not easy to redirect all messages to a file in this system. For diagnostic +purposes you can temporarily SET KPATHSEA_DEBUG_OUTPUT=err.log). +

Let us consider, as an example, a small LATEX source file, hello-world.tex, which contains the following +input. + + +

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

This little file only uses the font cmr10, so let us look at how dvips prepares the PostScript file +(we want to use the Type 1 version of the Computer Modern fonts, hence the option -Pcms). +

+

+> dvips -d4100 hello-world -Pcms -o +
+
In this case we have combined dvips’s debug class 4 (font paths) with Kpathsea’s path element expansion (see +dvips Reference Manual, texmf/doc/dvips/dvips.pdf). The output (slightly rearranged) appears in +Figure 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
+
Figure 12: Finding configuration files
+
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
+
Figure 13: Finding the prolog file
+
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]
+
Figure 14: Finding the font file
+ + +

+

dvips starts by locating its working files. First, texmf.cnf is found, which gives the definitions of the +search paths for the other files, then the file database ls-R (to optimize file searching) and the file +aliases, which makes it possible to declare several names (e.g., a short DOS-like 8.3 and a more +natural longer version) for the same file. Then dvips goes on to find the generic configuration file +config.ps before looking for the customization file .dvipsrc (which, in this case is not found). +Finally, dvips locates the config file for the Computer Modern PostScript fonts config.cms (this was +initiated with the -Pcms option on the dvips command). This file contains the list of the map +files which define the relation between the TEX, PostScript and file system names of the fonts. +

+

+> more /usr/local/texmf/dvips/cms/config.cms +
   p +ams.map +
   p +cms.map +
   p +cmbkm.map +
   p +amsbkm.map +
+
dvips thus goes on to find all these files, plus the generic map file psfonts.map, which is always loaded (it +contains declarations for commonly used PostScript fonts; see the last part of Section 7.2.3 for more details +about PostScript map file handling). +

At this point dvips identifies itself to the user:

+

+This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +
+
Then it goes on to look for the prolog file 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 +
+
+

After having found the file in question, dvips outputs the date and time, and informs us that it will generate +the file hello-world.ps, then that it needs the font file cmr10, and that the latter is declared as “resident” (no +bitmaps needed):

+

+
TeX output 1998.02.26:1204’ -> hello-world.ps +
Defining font () cmr10 at 10.0pt +
Font cmr10 <CMR10> is resident. +
+
Now the search is on for the file cmr10.tfm, which is found, then a few more prolog files (not shown) are +referenced, and finally the Type 1 instance cmr10.pfb of the font is located and included in the output file +(see last line).
+

+
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] +
+
+

7.3 Runtime options

+

Another useful feature of Web2C is its possibility to control a number of memory parameters (in particular, +array sizes) via the runtime file texmf.cnf read by Kpathsea. The memory settings can be found in Part 3 of +that file in the TEX Live distribution. The more important are: +

+

+ main_memory
+

Total words of memory available, for TEX, Metafont and MetaPost. You must make a new format + file for each different setting. For instance, you could generate a “huge” version of TEX, and call + the format file hugetex.fmt. Using the standard way of specifying the program name used by + Kpathsea, the particular value of the main_memory variable will then be read from texmf.cnf. +

+ extra_mem_bot
+

Extra space for “large” TEX data structures: boxes, glue, breakpoints, etc. Especially useful if + you use PI CTEX. +

+ font_mem_size
+

Number of words for font information available for TEX. This is more or less the total size of all + TFM files read. +

+ hash_extra
+

Additional space for the hash table of control sequence names. Only 10,000 control sequences + can be stored in the main hash table; if you have a large book with numerous cross-references, + this might not be enough. The default value of hash_extra is 50000.

+

Of course, this facility is no substitute for truly dynamic arrays and memory allocation, but since these are +extremely difficult to implement in the present TEX source, these runtime parameters provide a practical +compromise allowing some flexibility. +

+

8 Acknowledgements

+

TEX Live is a joint effort by virtually all of the TEX user groups. This edition of TEX Live was overseen by +Karl Berry. The other principal contributors, past and present, are listed below. +

    +
  • The English, German, Dutch, and Polish TEX user groups (TUG, DANTE e.V., NTG, and GUST, + respectively), which provide the necessary technical and administrative infrastructure. Please join + the TEX user group near you! (See http://tug.org/usergroups.html.) +
  • +
  • The CTAN team, notably Robin Fairbairns, Jim Hefferon, and Rainer Schöpf, which distributes + the TEX Live images and provides the common infrastructure for package updates, upon which + TEX Live depends. +
  • +
  • Nelson Beebe, for making many platforms available to TEX Live developers, and his own + comprehensive testing. + + +
  • +
  • John Bowman, for making many changes to his advanced graphics program Asymptote to make + it work in TEX Live. +
  • +
  • Peter Breitenlohner and the e-TEX team for the stable foundation of future TEX’s, and Peter + specifically for stellar help with GNU autotools usage throughout TEX Live. +
  • +
  • Jin-Hwan Cho and all of the DVIPDFMx team, for their excellent driver and responsiveness to + configuration issues. +
  • +
  • Thomas Esser, without whose marvelous teTEX package TEX Live would have never existed. +
  • +
  • Michel Goossens, who co-authored the original documentation. +
  • +
  • Eitan Gurari, whose TEX4ht is used to create the HTML version of this documentation, and who + worked tirelessly to improve it at short notice, every year. Eitan prematurely passed away in June + 2009, and we dedicate this documentation to his memory. +
  • +
  • Hans Hagen, for much testing and making his ConTEXt format (http://pragma-ade.com) work + within TEX Live’s framework. +
  • +
  • Hàn Thế Thành, Martin Schröder, and the pdfTEX team (http://pdftex.org) for continuing + enhancements of TEX’s abilities. +
  • +
  • Hartmut Henkel, for significant development contributions to pdfTEX LuaTEX, and more. +
  • +
  • Taco Hoekwater, + for major renewed development efforts on MetaPost and (Lua)TEX (http://luatex.org) itself, + incorporating ConTEXt into TEX Live, giving Kpathsea multi-threaded functionality, and much + more. +
  • +
  • Paweł Jackowski, for the Windows installer tlpm, and Tomasz Łuczak, for tlpmgui, used in past + releases. +
  • +
  • Akira Kakuto, for providing the Windows binaries from his W32TEX distribution for Japanese + TEX (http://w32tex.org), and many other development contributions. +
  • +
  • Jonathan Kew, for developing the remarkable XeTEX engine and taking the time and trouble to + integrate it in TEX Live, as well as the initial version of the MacTEX installer, and also for our + recommended front-end TEXworks. +
  • +
  • Dick Koch, for maintaining MacTEX (http://tug.org/mactex) in very close tandem with TEX + Live, and for his great good cheer in doing so. +
  • +
  • Reinhard Kotucha, for major contributions to the TEX Live 2008 infrastructure and installer, as + well as Windows research efforts, the getnonfreefonts script, and more. +
  • +
  • Siep Kroonenberg, also for major contributions to the TEX Live 2008 infrastructure and installer, + especially on Windows, and for the bulk of work updating this manual describing those features. +
  • +
  • Heiko Oberdiek, for the epstopdf package and many others, compressing the huge pst-geo data + files so we could include them, and most of all, for his remarkable work on hyperref. +
  • +
  • Petr Olšak, who coordinated and checked all the Czech and Slovak material very carefully. +
  • +
  • Toshio Oshima, for his dviout previewer for Windows. +
  • +
  • Manuel Pégourié-Gonnard, for helping with package updates, documentation improvements, and + texdoc development. +
  • + + +
  • Fabrice Popineau, for the original Windows support in TEX Live and work on the French + documentation. +
  • +
  • Norbert Preining, the principal architect of the TEX Live 2008 infrastructure and installer, and + also for coordinating the Debian version of TEX Live (together with Frank Küster), making many + suggestions along the way. +
  • +
  • Sebastian Rahtz, for originally creating TEX Live and maintaining it for many years. +
  • +
  • Phil Taylor, for setting up the BitTorrent downloads. +
  • +
  • Tomasz Trzeciak, for wide-ranging help with Windows. +
  • +
  • Vladimir Volovich, for substantial help with porting and other maintenance issues, and especially + for making it feasible to include xindy. +
  • +
  • Staszek Wawrykiewicz, the principal tester for all of TEX Live, and coordinator of the many + major Polish contributions: fonts, Windows installation, and more. +
  • +
  • Olaf Weber, for his patient maintenance of Web2C. +
  • +
  • Gerben Wierda, for creating and maintaining the original Mac OS X support, and much + integration and testing. +
  • +
  • Graham Williams, on whose work the TEX Catalogue of packages depends. +
+

Builders of the binaries: Ettore Aldrovandi (i386-solaris, x86_64-solaris), Alan Braslau (amd64-kfreebsd, +i386-kfreebsd), Peter Breitenlohner (x86_64-linux), Karl Berry (i386-linux), Ken Brown (i386-cygwin), Akira +Kakuto (win32), Dick Koch (universal-darwin, x86_64-darwin), Nikola Lečić (amd64-freebsd, i386-freebsd), +Mojca Miklavec (mipsel-linux), Norbert Preining (alpha-linux), Thomas Schmitz (powerpc-linux), Boris +Veytsman (armel-linux), Vladimir Volovich (powerpc-aix, sparc-solaris), Olaf Weber (mips-irix). For information +on the TEX Live build process, see http://tug.org/texlive/build.html. +

Translators of this manual: Boris Veytsman (Russian), Jjgod Jiang, Jinsong Zhao, Yue Wang, & Helin Gai +(Chinese), Uwe Ziegenhagen (German), Manuel Pégourié-Gonnard (French), Marco Pallante (Italian), Nikola +Lečić (Serbian), Petr Sojka & Jan Busa (Czech/Slovak), Staszek Wawrykiewicz (Polish). The TEX Live +documentation web page is http://tug.org/texlive/doc.html. +

Of course the most important acknowledgement must go to Donald Knuth, first for inventing TEX, and +then for giving it to the world. +

+

9 Release history

+

+

9.1 Past

+

Discussion began in late 1993 when the Dutch TEX Users Group was starting work on its 4AllTEX CD for +MS-DOS users, and it was hoped at that time to issue a single, rational, CD for all systems. This was too +ambitious a target for the time, but it did spawn not only the very successful 4AllTEX CD, but also the TUG +Technical Council working group on a TEX Directory Structure (http://tug.org/tds), which specified how +to create consistent and manageable collections of TEX support files. A complete draft of the TDS was +published in the December 1995 issue of TUGboat, and it was clear from an early stage that one desirable +product would be a model structure on CD. The distribution you now have is a very direct result of the +working group’s deliberations. It was also clear that the success of the 4AllTEX CD showed that +Unix users would benefit from a similarly easy system, and this is the other main strand of TEX +Live. +

We first undertook to make a new Unix-based TDS CD in the autumn of 1995, and quickly identified +Thomas Esser’s teTEX as the ideal setup, as it already had multi-platform support and was built with + + +portability across file systems in mind. Thomas agreed to help, and work began seriously at the start of 1996. +The first edition was released in May 1996. At the start of 1997, Karl Berry completed a major new +release of Web2c, which included nearly all the features which Thomas Esser had added in teTEX, +and we decided to base the 2nd edition of the CD on the standard Web2C, with the addition of +teTEX’s texconfig script. The 3rd edition of the CD was based on a major revision of Web2C, +7.2, by Olaf Weber; at the same time, a new revision of teTEX was being made, and TEX Live +included almost all of its features. The 4th edition followed the same pattern, using a new version +of teTEX, and a new release of Web2C (7.3). The system now included a complete Windows +setup. +

For the 5th edition (March 2000) many parts of the CD were revised and checked, updating hundreds of +packages. Package details were stored in XML files. But the major change for TEX Live 5 was that all +non-free software was removed. Everything in TEX Live is now intended to be compatible with the +Debian Free Software Guidelines (http://www.debian.org/intro/free); we have done our best to +check the license conditions of all packages, but we would very much appreciate hearing of any +mistakes. +

The 6th edition (July 2001) had much more material updated. The major change was a new install concept: +the user could select a more exact set of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, etc., but also prepares an appropriate +language.dat. +

The 7th edition of 2002 had the notable addition of Mac OS X support, and the usual myriad of updates to +all sorts of packages and programs. An important goal was integration of the source back with teTEX, to +correct the drift apart in versions 5 and 6. +

+

9.1.1 2003
+

In 2003, with the continuing flood of updates and additions, we found that TEX Live had grown so large it +could no longer be contained on a single CD, so we split it into three different distributions (see section 2.1, +p. 7). In addition: +

    +
  • At the request of the LATEX team, we changed the standard latex and pdflatex commands to + now use e-TEX (see p. 10). +
  • +
  • The new Latin Modern fonts were included (and are recommended). +
  • +
  • Support for Alpha OSF was removed (HPUX support was removed previously), since no one had + (or volunteered) hardware available on which to compile new binaries. +
  • +
  • Windows setup was substantially changed; for the first time an integrated environment based on + XEmacs was introduced. +
  • +
  • Important supplementary programs for Windows (Perl, Ghostscript, ImageMagick, Ispell) are now + installed in the TEX Live installation directory. +
  • +
  • Font map files used by dvips, dvipdfm and pdftex are now generated by the new program updmap + and installed into texmf/fonts/map. +
  • +
  • TEX, Metafont, and MetaPost now, by default, output most input characters (32 and above) as + themselves in output (e.g., \write) files, log files, and the terminal, i.e., not translated using the + ^^ notation. In TEX Live 7, this translation was dependent on the system locale settings; now, + locale settings do not influence the TEX programs’ behavior. If for some reason you need the + ^^ output, rename the file texmf/web2c/cp8bit.tcx. (Future releases will have cleaner ways to + control this.) +
  • +
  • This documentation was substantially revised. +
  • +
  • Finally, since the edition numbers had grown unwieldy, the version is now simply identified by the + year: TEX Live 2003.
+ + +

+

9.1.2 2004
+

2004 saw many changes: +

    +
  • If you have locally-installed fonts which use their own .map or (much less likely) .enc support + files, you may need to move those support files. +

    .map files are now searched for in subdirectories of fonts/map only (in each texmf tree), along + the TEXFONTMAPS path. Similarly, .enc files are now searched for in subdirectories of fonts/enc + only, along the ENCFONTS path. updmap will attempt to warn about problematic files. +

    For methods of handling this and other information, please see + http://tug.org/texlive/mapenc.html. +

  • +
  • The TEX Collection has been expanded with the addition of a MiKTEX-based installable CD, + for those who prefer that implementation to Web2C. See section 2 (p. 7). +
  • +
  • Within TEX Live, the single large texmf tree of previous releases has been replaced by three: + texmf, texmf-dist, and texmf-doc. See section 2.2 (p. 7), and the README files for each. +
  • +
  • All TEX-related input files are now collected in the tex subdirectory of texmf* trees, + rather than having separate sibling directories tex, etex, pdftex, pdfetex, etc. See + texmf-dist/doc/generic/tds/tds.html#Extensions. +
  • +
  • Helper scripts (not meant to be invoked by users) are now located in a new scripts + subdirectory of texmf* trees, and can be searched for via kpsewhich -format=texmfscripts. + So if you have programs which call such scripts, they’ll need to be adjusted. See + texmf-dist/doc/generic/tds/tds.html#Scripts. +
  • +
  • Almost all formats leave most characters printable as themselves via the “translation file” + cp227.tcx, instead of translating them with the ^^ notation. Specifically, characters at + positions 32–256, plus tab, vertical tab, and form feed are considered printable and not + translated. The exceptions are plain TEX (only 32–126 printable), ConTEXt (0–255 printable), + and the Omega-related formats. This default behavior is almost the same as in TEX Live + 2003, but it’s implemented more cleanly, with more possibilities for customization. See + texmf/doc/web2c/web2c.html#TCX-files. (By the way, with Unicode input, TEX may output + partial character sequences when showing error contexts, since it is byte-oriented.) +
  • +
  • pdfetex is now the default engine for all formats except (plain) tex itself. (Of course it generates + DVI when run as latex, etc.) This means, among other things, that the microtypographic + features of pdftex are available in LATEX, ConTEXt, etc., as well as the e-TEX features + (texmf-dist/doc/etex/base/). +

    It also means it’s more important than ever to use the ifpdf package (works with both plain and + LATEX) or equivalent code, because simply testing whether \pdfoutput or some other primitive + is defined is not a reliable way to determine if PDF output is being generated. We made this + backward compatible as best we could this year, but next year, \pdfoutput may be defined even + when DVI is being written. +

  • +
  • pdfTEX (http://pdftex.org) has many new features: +
      +
    • \pdfmapfile and \pdfmapline provide font map support from within a document. + + +
    • +
    • Microtypographic font expansion can be used more easily.
      http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html +
    • +
    • All parameters previously set through the special configuration file pdftex.cfg must now be + set through primitives, typically in pdftexconfig.tex; pdftex.cfg is no longer supported. + Any extant .fmt files must be redumped when pdftexconfig.tex is changed. +
    • +
    • See the pdfTEX manual for more: texmf-dist/doc/pdftex/manual/pdftex-a.pdf. +
    +
  • +
  • The \input primitive in tex (and mf and mpost) now accepts double quotes containing spaces and other + special characters. Typical examples: + + +
    +
      \input "filename with spaces"   % plain
      \input{"filename with spaces"}  % latex
    +
    +

    See the Web2C manual for more: texmf/doc/web2c. +

  • +
  • encTEX support is now included within Web2C and consequently all TEX programs, via the -enc + option — only when formats are built. encTEX supports general re-encoding of input and + output, enabling full support of Unicode (in UTF-8). See texmf-dist/doc/generic/enctex/ and + http://www.olsak.net/enctex.html. +
  • +
  • Aleph, a new engine combining e-TEX and Omega, is available. A little information is available in + texmf-dist/doc/aleph/base and http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph. The + LATEX-based format for Aleph is named lamed. +
  • +
  • The latest LATEX release has a new version of the LPPL — now officially a Debian-approved license. + Assorted other updates, see the ltnews files in texmf-dist/doc/latex/base. +
  • +
  • dvipng, a new program for converting DVI to PNG image files, is included. See texmf/doc/man/man1/dvipng.1. +
  • +
  • We reduced the cbgreek package to a “medium” sized set of fonts, with the assent and advice of the + author (Claudio Beccari). The excised fonts are the invisible, outline, and transparency ones, which are + relatively rarely used, and we needed the space. The full set is of course available from CTAN + (http://mirror.ctan.org/tex-archive/fonts/greek/cb). +
  • +
  • oxdvi has been removed; just use xdvi. +
  • +
  • The ini and vir commands (links) for tex, mf, and mpost are no longer created, such as initex. + The ini functionality has been available through the command-line option -ini for years + now. +
  • +
  • i386-openbsd platform support was removed. Since the tetex package in the BSD Ports system is + available, and GNU/Linux and FreeBSD binaries were available, it seemed volunteer time could be better + spent elsewhere. +
  • +
  • On sparc-solaris (at least), you may have to set the LD_LIBRARY_PATH environment variable to run the + t1utils programs. This is because they are compiled with C++, and there is no standard location for the + runtime libraries. (This is not new in 2004, but wasn’t previously documented.) Similarly, on mips-irix, + the MIPSpro 7.4 runtimes are required. +
+

+

9.1.3 2005
+

2005 saw the usual huge number of updates to packages and programs. The infrastructure stayed relatively +stable from 2004, but inevitably there were some changes there as well: +

    +
  • New scripts texconfig-sys, updmap-sys, and fmtutil-sys were introduced, which modify the + configuration in the system trees. The texconfig, updmap, and fmtutil scripts now modify + user-specific files, under $HOME/.texlive2005. + + +
  • +
  • Corresponding new variables TEXMFCONFIG and TEXMFSYSCONFIG to specify the trees where + configuration files (user or system, respectively) are found. Thus, you may need to move + personal versions of fmtutil.cnf and updmap.cfg to these places; another option is to redefine + TEXMFCONFIG or TEXMFSYSCONFIG in texmf.cnf. In any case the real location of these files and + the values of TEXMFCONFIG and TEXMFSYSCONFIG must agree. See section 2.3, p. 8. +
  • +
  • Last year, we kept \pdfoutput and other primitives undefined for DVI output, even though the + pdfetex program was being used. This year, as promised, we undid that compatibility measure. So + if your document uses \ifx\pdfoutput\undefined to test if PDF is being output, it will need to + be changed. You can use the package ifpdf.sty (which works under both plain TEX and LATEX) + to do this, or steal its logic. +
  • +
  • Last year, we changed most formats to output (8-bit) characters as themselves (see previous section). + The new TCX file empty.tcx now provides an easier way to get the original ^^ notation if you so desire, + as in: + + +
    +
      latex --translate-file=empty.tcx yourfile.tex
    +
    +

    +

  • +
  • The new program dvipdfmx is included for translation of DVI to PDF; this is an actively maintained + update of dvipdfm (which is also still available for now, though no longer recommended). +
  • +
  • The new programs pdfopen and pdfclose are included to allow reloading of pdf files in the Adobe Acrobat + Reader without restarting the program. (Other pdf readers, notably xpdf, gv, and gsview, have never + suffered from this problem.) +
  • +
  • For consistency, the variables HOMETEXMF and VARTEXMF have been renamed to TEXMFHOME and + TEXMFSYSVAR, respectively. There is also TEXMFVAR, which is by default user-specific. See the first point + above. +
+

+

9.1.4 2006–2007
+

In 2006–2007, the major new addition to TEX Live was the XeTEX program, available as the xetex and +xelatex programs; see http://scripts.sil.org/xetex. +

MetaPost also received a notable update, with more planned for the future (http://tug.org/metapost/articles), +likewise pdfTEX (http://tug.org/applications/pdftex). +

The TEX .fmt (high-speed format) and the similar files for MetaPost and Metafont are now stored in +subdirectories of texmf/web2c, instead of in the directory itself (although the directory is still searched, for the +sake of existing .fmt’s). The subdirectories are named for the ‘engine’ in use, such as tex or pdftex or xetex. +This change should be invisible in normal use. +

The (plain) tex program no longer reads %& first lines to determine what format to run; it is the pure +Knuthian TEX. (LATEX and everything else do still read %& lines). +

Of course the year also saw (the usual) hundreds of other updates to packages and programs. As usual, +please check CTAN (http://mirror.ctan.org) for updates. +

Internally, the source tree is now stored in Subversion, with a standard web interface for viewing the tree, +as linked from our home page. Although not visible in the final distribution, we expect this will provide a +stable development foundation for future years. +

Finally, in May 2006 Thomas Esser announced that he would no longer be updating teTEX +(http://tug.org/tetex). As a result, there was been a surge of interest in TEX Live, especially among +GNU/Linux distributors. (There is a new tetex installation scheme in TEX Live, which provides an +approximate equivalent.) We hope this will eventually translate to improvements in the TEX environment for +everyone. +

+

9.1.5 2008
+

In 2008, the entire TEX Live infrastructure was redesigned and reimplemented. Complete information about +an installation is now stored in a plain text file tlpkg/texlive.tlpdb. +

Among other things, this finally makes possible upgrading a TEX Live installation over the Internet after +the initial installation, a feature MiKTEX has provided for many years. We expect to regularly update new +packages as they are released to CTAN. +

The major new engine LuaTEX (http://luatex.org) is included; besides a new level of flexibility +in typesetting, this provides an excellent scripting language for use both inside and outside of +TEX documents. +

Support among Windows and the Unix-based platforms is now much more uniform. In particular, most +Perl and Lua scripts are now available on Windows, using the Perl internally distributed with TEX +Live. + + +

The new tlmgr script (section 5) is the general interface for managing TEX Live after the initial +installation. It handles package updates and consequent regeneration of formats, map files, and language files, +optionally including local additions. +

With the advent of tlmgr, the texconfig actions to edit the format and hyphenation configuration files are +now disabled. +

The xindy indexing program (http://xindy.sourceforge.net/) is now included on most +platforms. +

The kpsewhich tool can now report all matches for a given file (option –all) and limit matches to a given +subdirectory (option –subdir). +

The dvipdfmx program now includes functionality to extract bounding box information, via the command +name extractbb; this was one of the last features provided by dvipdfm not in dvipdfmx. +

The font aliases Times-Roman, Helvetica, and so on have been removed. Different packages expected them +to behave differently (in particular, to have different encodings), and there was no good way to resolve +this. +

The platex format has been removed, to resolve a name conflict with a completely different Japanese platex; +the polski package is now the main Polish support. +

Internally, the WEB string pool files are now compiled into the binaries, to ease upgrades. +

Finally, the changes made by Donald Knuth in his ‘TEX tuneup of 2008’ are included in this release. See +http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf. +

+

9.1.6 2009
+

In 2009, the default output format for Lua(LA )TEX is now PDF, to take advantage of LuaTEX’s OpenType +support, et al. New executables named dviluatex and dvilualatex run LuaTEX with DVI output. The +LuaTEX home page is http://luatex.org. +

The original Omega engine and Lambda format have been excised, after discussions with the Omega +authors. The updated Aleph and Lamed remain, as do the Omega utilities. +

A new release of the AMS Type 1 fonts is included, including Computer Modern: a few shape +changes made over the years by Knuth in the Metafont sources have been integrated, and the +hinting has been updated. The Euler fonts have been thoroughly reshaped by Hermann Zapf (see +http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf). In all cases, the metrics remain +unchanged. The AMS fonts home page is http://www.ams.org/tex/amsfonts.html. +

The new GUI front end TEXworks is included for Windows, and also in MacTEX. For other platforms, and +more information, see the TEXworks home page, http://tug.org/texworks. It is a cross-platform front end +inspired by the Mac OS X TeXShop editor, aiming at ease-of-use. +

The graphics program Asymptote is included for several platforms. This implements a text-based graphics +description language vaguely akin to MetaPost, but with advanced 3D support and other features. Its home +page is http://asymptote.sourceforge.net. +

The separate dvipdfm program has been replaced by dvipdfmx, which operates in a special compatibility +mode under that name. dvipdfmx includes CJK support and has accumulated many other fixes over the years +since the last dvipdfm release. The DVIPDFMx home page is http://project.ktug.or.kr/dvipdfmx. +

Executables for the cygwin and i386-netbsd platforms are now included, while we were advised that +OpenBSD users get TEX through their package systems, plus there were difficulties in making binaries that +have a chance of working on more than one version. +

A miscellany of smaller changes: we now use xz compression, the stable replacement for lzma +(http://tukaani.org/xz/); a literal $ is allowed in filenames when it does not introduce a known variable +name; the Kpathsea library is now multi-threaded (made use of in MetaPost); the entire TEX Live build is +now based on Automake. +

Final note on the past: all releases of TEX Live, along with ancillary material such as CD labels, are +available at ftp://tug.org/historic/systems/texlive. +

+

9.1.7 2010
+

In 2010, the default version for PDF output is now 1.5, enabling more compression. This applies to all the +TEX engines when used to produce PDF and to dvipdfmx. Loading the pdf14 LATEX package changes back +to PDF 1.4, or set \pdfminorversion=4. + + +

pdf(LA )TEX now automatically converts a requested Encapsulated PostScript (EPS) file to PDF, via the +epstopdf package, when and if the LATEX graphics.cfg configuration file is loaded, and PDF is +being output. The default options are intended to eliminate any chance of hand-created PDF +files being overwritten, but you can also prevent epstopdf from being loaded at all by putting +\newcommand{\DoNotLoadEpstopdf}{} (or \def...) before the \documentclass declaration. It is also not +loaded if the pst-pdf package is used. For more details, see the epstopdf package documentation +(http://ctan.org/pkg/epstopdf-pkg). +

A related change is that execution of a very few external commands from TEX, via the \write18 feature, is +now enabled by default. These are commands are repstopdf, makeindex, kpsewhich, bibtex, and bibtex8; +the list is defined in texmf.cnf. Environments which must disallow all such external commands can deselect +this option in the installer (see section 3.2.4), or override the value after installation by running +tlmgr conf texmf shell_escape 0. +

Yet another related change is that BibTeX and Makeindex now refuse to write their output files to an +arbitrary directory (like TEX itself), by default. This is so they can now be enabled for use by the restricted +\write18. To change this, the TEXMFOUTPUT environment variable can be set, or the openout_any setting +changed. +

XeTEX now supports margin kerning along the same lines as pdfTEX. (Font expansion is not presently +supported.) +

By default, tlmgr now saves one backup of each package updated (tlmgr option autobackup 1), so +broken packages updates can be easily reverted with tlmgr restore. If you do post-install updates, and don’t +have the disk space for the backups, run tlmgr option autobackup 0. +

New programs included: the pTEX engine and related utilities for typesetting Japanese; the BibTeXU +program for Unicode-enabled BibTeX; the chktex utility (http://baruch.ev-en.org/proj/chktex) for +checking (LA )TEX documents; the dvisvgm (http://dvisvgm.sourceforge.net) DVI-to-SVG +translator. +

Executables for these new platforms are now included: amd64-freebsd, amd64-kfreebsd, i386-freebsd, +i386-kfreebsd, x86_64-darwin, x86_64-solaris. +

A change in TEX Live 2009 that we failed to note: numerous TEX4ht-related executables +(http://tug.org/tex4ht) were removed from the binary directories. The generic mk4ht program can be used +to run any of the various tex4ht combinations. +

Finally, the TEX Live release on the TEX Collection DVD can no longer be run live (oddly enough). A +single DVD no longer has enough room. One beneficial side effect is that installation from the physical +DVD is much faster. +

+

9.1.8 2011
+

The Mac OS X binaries (universal-darwin and x86_64-darwin) now work only on Leopard or later; Panther +and Tiger are no longer supported. +

The biber program for bibliography processing is included on common platforms. Its development is +closely coupled with the biblatex package, which completely reimplements the bibliographical facilities +provided by LaTeX. +

The MetaPost (mpost) program no longer creates or uses .mem files. The needed files, such as plain.mp, are +simply read on every run. This is related to supporting MetaPost as a library, which is another significant +though not user-visible change. +

The updmap implementation in Perl, previously used only on Windows, has been revamped and is now used +on all platforms. There shouldn’t be any user-visible changes as a result, except that it runs much +faster. +

+

9.2 Present

+

tlmgr supports updates from multiple network repositories. The section on multiple repositories in the tlmgr +help output has more. +

The parameter \XeTeXdashbreakstate is set to 1 by default, for both xetex and xelatex. This allows line +breaks after em-dashes and en-dashes, which has always been the behavior of plain TEX, LATEX, LuaTEX, +etc. Existing XeTEX documents which must retain perfect line-break compatibility will need to set +\XeTeXdashbreakstate to 0 explicitly. +

The output files generated by pdftex and dvips, among others, can now exceed 2gb. + + +

The 35 standard PostScript fonts are included in the output of dvips by default, since so many different +versions of them are extant. +

In the restricted \write18 execution mode, set by default, mpost is now an allowed program. +

A texmf.cnf file is also found in ../texmf-local, e.g., /usr/local/texlive/texmf-local/web2c/texmf.cnf, if +it exists. +

The updmap script reads a per-tree updmap.cfg instead of one global config. This change should be +invisible, unless you edited your updmap.cfg’s directly. The updmap –help output has more. +

Platforms: armel-linux and mipsel-linux added; sparc-linux and i386-netbsd are no longer in the main +distribution, but are available for installation as custom binaries, along with a variety of other platforms: +http://tug.org/texlive/custom-bin.html. +

+

9.3 Future

+

TEX Live is not perfect! (And never will be.) We intend to continue to release new versions, and would like to +provide more help material, more utilities, more installation programs, and (of course) an ever-improved and +better-checked tree of macros and fonts. This work is all done by volunteers in their spare time, and so there is +always more to do. Please see http://tug.org/texlive/contribute.html. +

Please send corrections, suggestions, and offers of help to: +

+

Happy TEXing! + + + + + + diff --git a/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.pdf b/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.pdf new file mode 100644 index 00000000000..b869e6cecb2 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.pdf differ diff --git a/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.tex b/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.tex new file mode 100644 index 00000000000..8ab7f7b6282 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-en/texlive-en.tex @@ -0,0 +1,3360 @@ +% $Id$ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +\documentclass{article} +\let\tldocenglish=1 % for live4ht.cfg +\usepackage{tex-live} +\usepackage[latin1]{inputenc} % translators: use your preferred encodings. +\usepackage[T1]{fontenc} + +\begin{document} + +\title{% + {\huge \textit{The \TeX\ Live Guide}\\\smallskip}% + {\LARGE \textsf{\TL{} 2012}}% +} + +\author{Karl Berry, editor \\[3mm] + \url{http://tug.org/texlive/} + } + +\date{June 2012} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +%\listoftables +\end{multicols} + +\section{Introduction} +\label{sec:intro} + +\subsection{\TeX\ Live and the \TeX\ Collection} + +This document describes the main features of the \TL{} software +distribution\Dash \TeX{} and related programs for \GNU/Linux +and other Unix flavors, \MacOSX, and Windows systems. + +You may have acquired \TL{} by downloading, or on the \TK{} \DVD, which +\TeX{} user groups distribute among their members, or in other ways. +Section \ref{sec:tl-coll-dists} briefly describes the contents of the +\DVD. Both \TL{} and the \TK{} are cooperative efforts by the \TeX{} +user groups. This document mainly describes \TL{} itself. + +\TL{} includes executables for \TeX{}, \LaTeXe{}, \ConTeXt, +\MF, \MP, \BibTeX{} and many other programs; an extensive collection +of macros, fonts and documentation; and support for typesetting in +many different scripts from around the world. + +For a brief summary of the major changes in this edition of \TL{}, +see the end of the document, section~\ref{sec:history} +(\p.\pageref{sec:history}). + + +\htmlanchor{platforms} +\subsection{Operating system support} +\label{sec:os-support} + +\TL{} contains binaries for many Unix-based platforms, including +\GNU/Linux, \MacOSX, and Cygwin. The included sources can be compiled +on platforms for which we do not provide binaries. + +As to Windows: Windows \acro{XP} and later are supported. Windows~2000 +will probably still mostly work. There are no special 64-bit +executables for Windows, but the 32-bit executables should run on 64-bit +systems. + +See section~\ref{sec:tl-coll-dists} for alternate solutions +for Windows and \MacOSX. + +\subsection{Basic installation of \protect\TL{}} +\label{sec:basic} + +You can install \TL{} either from \DVD{} or over the Internet +(\url{http://tug.org/texlive/acquire.html}). The net installer itself is +small, and downloads everything requested from the Internet. + +The \DVD{} installer lets you install to a local disk. You cannot run +\TL{} directly from the \TK{} \DVD{} (or its \code{.iso} image), but you +can prepare a runnable installation on, e.g., a \USB{} stick (see +section~\ref{sec:portable-tl}). Installation is described in later +sections (\p.\pageref{sec:install}), but here is a quick start: + +\begin{itemize*} + +\item The installation script is named \filename{install-tl}. It can + operate in a ``wizard mode'' given the option \code{-gui=wizard} + (default for Windows), a text mode given \code{-gui=text} (default for + everything else), and an expert \GUI{} mode given \code{-gui=perltk}. + +\item One of the installed items is the `\TL\ Manager' program, + named \prog{tlmgr}. Like the installer, it can be used in both \GUI{} + mode and in text mode. You can use it to install and uninstall + packages and do various configuration tasks. + +\end{itemize*} + + +\htmlanchor{security} +\subsection{Security considerations} +\label{sec:security} + +To the best of our knowledge, the core \TeX\ programs themselves are +(and always have been) extremely robust. However, the contributed +programs in \TeX\ Live may not reach the same level, despite everyone's +best efforts. As always, you should be careful when running programs on +untrusted input; for maximum safety, use a new subdirectory. + +This need for care is especially urgent on Windows, since in general +Windows finds programs in the current directory before anything else, +regardless of the search path. This opens up a wide variety of possible +attacks. We have closed many holes, but undoubtedly some remain, +especially with third-party programs. Thus, we recommend checking for +suspicious files in the current directory, especially executables +(binaries or scripts). Ordinarily they should not be present, and +definitely should not normally be created by merely processing a document. + +Finally, \TeX\ (and its companion programs) are able to write files when +processing documents, a feature that can also be abused in a wide +variety of ways. Again, processing unknown documents in a new +subdirectory is the safest bet. + + +\subsection{Getting help} +\label{sec:help} + +The \TeX{} community is active and friendly, and most serious questions +end up getting answered. However, the support is informal, done by +volunteers and casual readers, so it's especially important that you do +your homework before asking. (If you prefer guaranteed commercial +support, you can forgo \TL{} completely and purchase a vendor's system; +\url{http://tug.org/interest.html#vendors} has a list.) + +Here is a list of resources, approximately in the order we recommend +using them: + +\begin{description} +\item [Getting Started] If you are new to \TeX, the web page +\url{http://tug.org/begin.html} gives a brief introduction to the system. + +\item [\TeX{} \acro{FAQ}] The \TeX{} \acro{FAQ} is a huge compendium + of answers to all sorts of questions, from the most basic to the + most arcane. It is included on \TL{} in + \OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html}, and is available + on the Internet through \url{http://www.tex.ac.uk/faq}. Please + check here first. + +\item [\TeX{} Catalogue] If you are looking for a specific package, +font, program, etc., the \TeX{} Catalogue is the place to look. It is a +huge collection of all \TeX{}-related items. See +\url{http://mirror.ctan.org/help/Catalogue/}. + +\item [\TeX{} Web Resources] The web page +\url{http://tug.org/interest.html} has many \TeX{}-related links, in +particular for numerous books, manuals, and articles on all aspects of +the system. + +\item [support archives] The two principal support forums are the +Usenet newsgroup \url{news:comp.text.tex} and the mailing list +\email{texhax@tug.org}. Their archives have years of past +questions and answers for your searching pleasure, via +\url{http://groups.google.com/group/comp.text.tex/topics} and +\url{http://tug.org/mail-archives/texhax}, respectively. And a general web +search, for example on \url{http://google.com}, never hurts. + +\item [asking questions] If you cannot find an answer, you can post to +\dirname{comp.text.tex} through Google or your newsreader, or to +\email{texhax@tug.org} through email. But before you post, +\emph{please} read this \acro{FAQ} entry, to maximize +your chances of getting a useful answer: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. +Also worth mentioning are the \LaTeX{} Community site at +\url{http://www.latex-community.org/} and its forum +\url{http://www.latex-community.org/forum/}, and +\TeX\ StackExchange at \url{http://tex.stackexchange.com/}. + +\item [\TL{} support] If you want to report a bug or have +suggestions or comments on the \TL{} distribution, installation, or +documentation, the mailing list is \email{tex-live@tug.org}. However, +if your question is about how to use a particular program included in +\TL{}, please write to that program's maintainer or +mailing list. Often running a program with the \code{-{}-help} option +will provide a bug reporting address. + +\end{description} + +The other side of the coin is helping others who have questions. Both +\dirname{comp.text.tex} and \code{texhax} are open to anyone, so feel +free to join, start reading, and help out where you can. + + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{Overview of \protect\TeX\protect\ Live} +\label{sec:overview-tl} + +This section describes the contents of \TL{} and the \TK{} of which it +is a part. + +\subsection{The \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tl-coll-dists} + +The \TK{} \DVD{} comprises the following: + +\begin{description} + +\item [\TL] A complete \TeX{} system to be installed to disk. Its home +page is \url{http://tug.org/texlive/}. + +\item [Mac\TeX] for \MacOSX, this adds a native \MacOSX\ installer and other +Mac applications to \TL{}. Its home page is +\url{http://tug.org/mactex/}. + +\item [pro\TeX{}t] An enhancement of the \MIKTEX\ distribution for Windows, +\ProTeXt\ adds a few extra tools to \MIKTEX, and simplifies +installation. It is entirely independent of \TL{}, and has its own +installation instructions. The \ProTeXt\ home page is +\url{http://tug.org/protext}. + +\item [CTAN] A snapshot of the \CTAN{} repository (\url{http://www.ctan.org}). + +\item [\texttt{texmf-extra}] A directory with assorted additional packages. + +\end{description} + +\CTAN{}, \pkgname{protext}, and \dirname{texmf-extra} do not +necessarily follow the same copying conditions as \TL{}, so be careful +when redistributing or modifying. + + +\subsection{Top level \TL{} directories} +\label{sec:tld} + +Here is a brief listing and description of the top level directories in a +\TL{} installation. + +\begin{ttdescription} +\item[bin] The \TeX{} system programs, arranged by platform. +% +\item[readme-*.dir] Quick overview and useful links for \TL{}, +in various languages, in both \HTML{} and plain text. +% +\item[source] The source to all included programs, including the main + \Webc{}-based \TeX{} distributions. +% +\item[texmf] See \dirname{TEXMFMAIN} below. +% +\item[texmf-dist] See \dirname{TEXMFDIST} below. +% +\item[tlpkg] Scripts, programs and data for managing the + installation, and special support for Windows. +\end{ttdescription} + +In addition to the directories above, the installation scripts and +\filename{README} files (in various languages) are at the top level of +the distribution. + +For documentation, the comprehensive links in the top-level file +\OnCD{doc.html} may be helpful. The documentation for the programs +(manuals, man pages, Info files) is in \dirname{texmf/doc}. The +documentation for \TeX\ packages and formats is in +\dirname{texmf-dist/doc}. You can use the \cmdname{texdoc} program to +find any documentation wherever it is located. + +This \TL\ documentation itself is in \dirname{texmf/doc/texlive}, +available in several languages: + +\begin{itemize*} +\item{Czech/Slovak:} \OnCD{texmf/doc/texlive/texlive-cz} +\item{German:} \OnCD{texmf/doc/texlive/texlive-de} +\item{English:} \OnCD{texmf/doc/texlive/texlive-en} +\item{French:} \OnCD{texmf/doc/texlive/texlive-fr} +\item{Italian:} \OnCD{texmf/doc/texlive/texlive-it} +\item{Polish:} \OnCD{texmf/doc/texlive/texlive-pl} +\item{Russian:} \OnCD{texmf/doc/texlive/texlive-ru} +\item{Serbian:} \OnCD{texmf/doc/texlive/texlive-sr} +\item{Simplified Chinese:} \OnCD{texmf/doc/texlive/texlive-zh-cn} +\end{itemize*} + +\subsection{Overview of the predefined texmf trees} +\label{sec:texmftrees} + +This section lists the predefined variables specifying the texmf trees +used by the system, and their intended purpose, and the default layout +of \TL{}. The command \texttt{tlmgr~conf} shows the values of these +variables, so that you can easily find out how they map to particular +directories in your installation. + +All of the trees, including the personal ones, should follow the \TeX\ +Directory Structure (\TDS, \url{http://tug.org/tds}), with all its +myriad subdirectories, or files may not be found. Section +\ref{sec:local-personal-macros} (\p.\pageref{sec:local-personal-macros}) +describes this in more detail. + +\begin{ttdescription} +\item [TEXMFMAIN] The tree which holds vital parts of the + system such as configuration files, helper scripts, and program + documentation. +\item [TEXMFDIST] The tree which holds the main set of macro packages, + fonts, etc. +\item [TEXMFLOCAL] The tree which administrators can use for system-wide + installation of additional or updated macros, fonts, etc. +\item [TEXMFHOME] The tree which users can use for their own individual + installations of additional or updated macros, fonts, etc. + The expansion of this variable dynamically adjusts for each user to + their own individual directory. +\item [TEXMFCONFIG] The (personal) tree used by the utilities + \verb+texconfig+, \verb+updmap+, and \verb+fmtutil+ to store modified + configuration data. +\item [TEXMFSYSCONFIG] The (site-wide) tree used by the utilities + \verb+texconfig-sys+, \verb+updmap-sys+, and \verb+fmtutil-sys+ to + store modified configuration data. +\item [TEXMFVAR] The (personal) tree used by \verb+texconfig+, + \verb+updmap+ and \verb+fmtutil+ to store (cached) runtime data such + as format files and generated map files. +\item [TEXMFSYSVAR] The (site-wide) tree used by \verb+texconfig-sys+, + \verb+updmap-sys+ and \verb+fmtutil-sys+, and also by \verb+tlmgr+, to + store (cached) runtime data such as format files and generated map files. +\item [TEXMFCACHE] The tree(s) used by \ConTeXt\ Mk\acro{IV} + to store (cached) runtime data. +\end{ttdescription} + +\noindent +The default layout is: +\begin{description} + \item[system-wide root] can span multiple \TL{} releases: + \begin{ttdescription} + \item[2011] A previous release. + \item[2012] The current release. + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] \GNU/Linux binaries + \item [...] + \item [universal-darwin] \MacOSX\ binaries + \item [win32] Windows binaries + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] This is \envname{TEXMFMAIN}. + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var \ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, intended to be + retained from release to release. + \end{ttdescription} + \item[user's home] (\texttt{\$HOME} or + \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2011] Privately generated and configuration data + for a previous release. + \item[.texlive2012] Privately generated and configuration data + for the current release. + \begin{ttdescription} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR}, \envname{TEXMFCACHE} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} Personal macros, etc. + \end{ttdescription} +\end{description} + + +\subsection{Extensions to \protect\TeX} +\label{sec:tex-extensions} + +Knuth's original \TeX{} itself is frozen, apart from rare bug fixes. It +is still present in \TL\ as the program \prog{tex}, and will remain so +for the foreseeable future. \TL{} contains several extended versions of +\TeX: + +\begin{description} + +\item [\eTeX] adds a set of new primitives +\label{text:etex} (related to macro expansion, character scanning, +classes of marks, additional debugging features, and more) and the +\TeXXeT{} extensions for bidirectional typesetting. In default mode, +\eTeX{} is 100\% compatible with ordinary \TeX. See +\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] builds on the \eTeX\ extensions, adding support for +writing \acro{PDF} output as well as \dvi{}, and many non-output-related +extensions. This is the program invoked for most formats, e.g., +\prog{etex}, \prog{latex}, \prog{pdflatex}. Its web site is +\url{http://www.pdftex.org/}. See +\OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf} for the manual, and +\OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex} for example +usage of some of its features. + +\item [Lua\TeX] is the designated successor of pdf\TeX, +and is mostly (but not entirely) backward-compatible. It is also +intended to be a functional superset of Aleph (see below), though +technical compatibility is not intended. The incorporated Lua +interpreter (\url{http://www.lua.org/}) enables elegant solutions for +many thorny \TeX{} problems. When called as \filename{texlua}, it +functions as a standalone Lua interpreter, and is already used as such +within \TL. Its web site is \url{http://www.luatex.org/}, and the +reference manual is \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [\XeTeX] adds support for Unicode input and OpenType- and system +fonts, implemented using standard third-party libraries. See +\url{http://tug.org/xetex}. + +\item [\OMEGA\ (Omega)] is based on Unicode (16-bit characters), thus +supports working with almost all the world's scripts simultaneously. It +also supports so-called `\OMEGA{} Translation Processes' (\acro{OTP}s), +for performing complex transformations on arbitrary input. Omega is no +longer included in \TL{} as a separate program; only Aleph is provided: + +\item [Aleph] combines the \OMEGA\ and \eTeX\ extensions. +See \OnCD{texmf-dist/doc/aleph/base}. + +\end{description} + + +\subsection{Other notable programs in \protect\TL} + +Here are a few other commonly-used programs included in \TL{}: + +\begin{cmddescription} + +\item [bibtex, bibtex8] bibliography support. + +\item [makeindex, xindy] index support. + +\item [dvips] convert \dvi{} to \PS{}. + +\item [xdvi] \dvi{} previewer for the X Window System. + +\item [dvilj] \dvi{} drive for the HP LaserJet family. + +\item [dviconcat, dviselect] cut and paste pages +from \dvi{} files. + +\item [dvipdfmx] convert \dvi{} to \acro{PDF}, an alternative approach +to pdf\TeX\ (mentioned above). + +\item [psselect, psnup, \ldots] \PS{} utilities. + +\item [pdfjam, pdfjoin, \ldots] \acro{PDF} utilities. + +\item [texexec, texmfstart] Con\TeX{}t and \acro{PDF} processor. + +\item [tex4ht] \TeX{} to \acro{HTML} (and \acro{XML} and more) converter. + +\end{cmddescription} + + +\subsection{Fonts in \protect\TL} +\label{sec:tl-fonts} + +\TL{} comes with many high-quality scalable fonts. See +\url{http://tug.org/fonts} and +\OnCD{texmf-dist/doc/fonts/free-math-font-survey}. + + +\htmlanchor{installation} +\section{Installation} +\label{sec:install} + +\subsection{Starting the installer} +\label{sec:inst-start} + +To begin, get the \TK{} \DVD{} or download the \TL{} net installer, and +locate the installer script: \filename{install-tl} for Unix, +\filename{install-tl.bat} for Windows. See +\url{http://tug.org/texlive/acquire.html} for more information and other +methods of getting the software. + +\begin{description} +\item [Net installer:] Download from \CTAN, under +\dirname{systems/texlive/tlnet}; the url +\url{http://mirror.ctan.org/systems/texlive/tlnet} will automatically +redirect to a nearby, up-to-date, mirror. You can retrieve either +\filename{install-tl.zip} which can be used under Unix and Windows, or +the considerably smaller \filename{install-unx.tar.gz} for Unix +only. After unpacking, \filename{install-tl} and +\filename{install-tl.bat} will be in the \dirname{install-tl} +subdirectory. + +\item [\TeX{} Collection \DVD:] go to the \DVD's \dirname{texlive} +subdirectory. Under Windows, the installer normally starts automatically +when you insert the \DVD. You can get the \DVD\ by becoming a member of +a \TeX\ user group (highly recommended, +\url{http://tug.org/usergroups.html}), or purchasing it separately +(\url{http://tug.org/store}), or burning your own from the \ISO\ image. +You can also mount the \ISO\ directly on most systems. After installing +from \DVD\ or \ISO, if you want to get continuing updates from the +Internet, please see \ref{sec:dvd-install-net-updates}. + +\end{description} + +The same installer program is run, whatever the source. The most +visible difference between the two is that with the net installer, what +you end up with is the packages that are currently available. This is +in contrast to the \DVD\ and \ISO\ images, which are not updated between +the major public releases. + +\noindent +The following sections explain installer start-up in more detail. + +\subsubsection{Unix} + +Below, \texttt{>} denotes the shell prompt; user input is +\Ucom{\texttt{bold}}. +The script \filename{install-tl} is a Perl script. The simplest way +to start it on a Unix-compatible system is as follows: +\begin{alltt} +> \Ucom{cd /path/to/installer} +> \Ucom{perl install-tl} +\end{alltt} +(Or you can invoke \Ucom{perl /path/to/installer/install-tl}, or +\Ucom{./install-tl} if it stayed executable, etc.; we won't repeat all +these variations.) You may have to enlarge your terminal window so +that it shows the full text installer screen (Figure~\ref{fig:text-main}). + +To install in expert \GUI\ mode (figure~\ref{fig:gui-main}), you'll +need the \dirname{Perl/TK} module compiled with \acro{XFT} support, +which is generally the case with \GNU/Linux, but not necessarily with other +systems. Given that, you can run: +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +For a complete listing of the various options: +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{Warning about Unix permissions:} Your \code{umask} at the time +of installation will be respected by the \TL{} installer. Therefore, if +you want your installation to be usable by users other than you, make +sure your setting is sufficiently permissive, for instance, \code{umask +002}. For more information about \code{umask}, consult your system +documentation. + +\textbf{Special considerations for Cygwin:} Unlike other +Unix-compatible systems, Cygwin does not by default include all of the +prerequisite programs needed by the \TL{} installer. See +Section~\ref{sec:cygwin} for details. + + +\subsubsection{MacOSX} + +As mentioned in section~\ref{sec:tl-coll-dists}, a separate distribution +is prepared for \MacOSX, named Mac\TeX\ (\url{http://tug.org/mactex}). +We recommend using the native Mac\TeX\ installer instead of the \TL\ +installer on \MacOSX, because the native installer makes a few +Mac-specific adjustments, in particular to allow easily switching +between the various \TeX\ distributions for \MacOSX\ (Mac\TeX, Fink, +MacPorts, \ldots). + +Mac\TeX\ is firmly based on \TL, and the main \TeX\ trees are precisely +the same. It does add a few extra folders with Mac-specific +documentation and applications. + + +\subsubsection{Windows} + +If you are using the net installer, or the \DVD\ installer failed to +start automatically, double-click \filename{install-tl.bat}. +For more customization options, e.g., selection of specific package +collections, run \filename{install-tl-advanced.bat} instead. + +You can also start the installer from the command-prompt. Below, +\texttt{>} denotes the prompt; user input is \Ucom{\texttt{bold}}. If +you are in the installer directory, run just: +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} + +Or you can invoke it with an absolute location, such as: +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +for the \TK\ \DVD, supposing that \dirname{D:} is the optical +drive. Figure~\ref{fig:wizard-w32} displays the wizard installer, which +is the default for Windows. + +To install in text mode, use: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +For a complete listing of the various options: +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2012 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + platforms: 1 out of 19 + + installation scheme (scheme-full) + 84 collections out of 85, disk space required: 3091 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + options: + [ ] use letter size instead of A4 by default + ... + + set up for portable installation + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{Main text installer screen (\GNU/Linux)}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth,trim=10 4 0 20,clip} +\caption{Expert \GUI{} installer screen (\GNU/Linux)}\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth,trim=0 4 0 0,clip} +\caption{Wizard installer screen (Windows)}\label{fig:wizard-w32} +\end{figure} + + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +The \TL{} installer supports only Cygwin 1.7. +Before beginning the installation, use Cygwin's \filename{setup.exe} program to +install the \filename{perl} and \filename{wget} packages if you have +not already done so. The following additional packages are +recommended: +\begin{itemize*} +\item \filename{fontconfig} [needed by \XeTeX] +\item \filename{ghostscript} [needed by various utilities] +\item \filename{libXaw7} [needed by \code{xdvi}] +\item \filename{ncurses} [provides the \code{clear} command used by the installer] +\end{itemize*} + + +\subsubsection{The text installer} + +Figure~\ref{fig:text-main} displays the main text mode screen under +Unix. The text installer is the default on Unix. + +This is only a command-line installer; there is no cursor support at +all. For instance, you cannot tab around checkboxes or input fields. +You just type something (case-sensitive) at the prompt and press the +Enter key, and then the entire terminal screen will be rewritten, with +adjusted content. + +The text installer interface is this primitive for a reason: it +is designed to run on as many platforms as possible, even with a +very barebones Perl. + +\subsubsection{The expert graphical installer} + +Figure~\ref{fig:gui-main} displays the expert graphical installer under +\GNU/Linux. Other than using buttons and menus, this does +not differ much from the text installer. + +This mode can be invoked explicitly with +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} + + +\subsubsection{The simple wizard installer} + +Under Windows, the default is to run the simplest installation method we +could devise, called the ``wizard'' installer +(figure~\ref{fig:wizard-w32}). It installs everything and asks almost +no questions. If you want to customize your setup, you should run one +of the other installers. + +This mode can be invoked explicitly with +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + + +\subsection{Running the installer} +\label{sec:runinstall} + +The installer is intended to be mostly self-explanatory, but following are a +few notes about the various options and submenus. + +\subsubsection{Binary systems menu (Unix only)} +\label{sec:binary} + +\begin{figure}[tb] +\begin{boxedverbatim} +Available platforms: +=============================================================================== + a [ ] alpha-linux DEC Alpha with GNU/Linux + b [ ] amd64-freebsd x86_64 with FreeBSD + c [ ] amd64-kfreebsd x86_64 with GNU/kFreeBSD + d [ ] armel-linux ARM with GNU/Linux + e [ ] i386-cygwin Intel x86 with Cygwin + f [ ] i386-freebsd Intel x86 with FreeBSD + g [ ] i386-kfreebsd Intel x86 with GNU/kFreeBSD + h [X] i386-linux Intel x86 with GNU/Linux + i [ ] i386-solaris Intel x86 with Solaris + j [ ] mips-irix SGI IRIX + k [ ] mipsel-linux mipsel with Linux + l [ ] powerpc-aix PowerPC with AIX + m [ ] powerpc-linux PowerPC 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 +\end{boxedverbatim} +\caption{Binaries menu}\label{fig:bin-text} +\end{figure} + +Figure~\ref{fig:bin-text} displays the text mode binaries menu. By +default, only the binaries for your current platform will be installed. +From this menu, you can select installation of binaries for other +platforms as well. This can be useful if you are sharing a \TeX\ +tree across a network of heterogenous machines, or for a dual-boot +system. + +\subsubsection{Selecting what is to be installed} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Select scheme: +=============================================================================== + a [X] full scheme (everything) + b [ ] medium scheme (small + more packages and languages) + c [ ] small scheme (basic + xetex, metapost, a few languages) + d [ ] basic scheme (plain and latex) + e [ ] minimal scheme (plain only) + f [ ] ConTeXt scheme + g [ ] GUST TeX Live scheme + h [ ] teTeX scheme (more than medium, but nowhere near full) + i [ ] XML scheme + j [ ] custom selection of collections +\end{boxedverbatim} +\caption{Scheme menu}\label{fig:scheme-text} +\end{figure} + +Figure~\ref{fig:scheme-text} displays the \TL\ scheme menu; from here, +you choose a ``scheme'', which is an overall set of package collections. +The default \optname{full} scheme installs everything available. This +is recommended, but you can also choose the \optname{basic} scheme for a +small system, \optname{minimal} for testing purposes, and +\optname{medium} or \optname{teTeX} to get something in between. There +are also various specialized and country-specific schemes. + +\begin{figure}[tb] +\tlpng{stdcoll}{.7\linewidth,trim=0 4 0 0,clip} +\caption{Collections menu}\label{fig:collections-gui} +\end{figure} + +You can refine your scheme selection with the `standard collections' and +`language collections' menus (figure~\ref{fig:collections-gui}, shown in +\GUI\ mode for a change). + +Collections are one level more detailed than schemes\Dash in essence, a +scheme consists of several collections, a collection consists of one or +more packages, and a package (the lowest level grouping in \TL) contains +the actual \TeX\ macro files, font files, and so on. + +If you want more control than the collection menus provide, you can use +the \TeX\ Live Manager (\prog{tlmgr}) program after installation (see +section~\ref{sec:tlmgr}); using that, you can control the installation +at the package level. + +\subsubsection{Directories} +\label{sec:directories} + +The default layout is described in section~\ref{sec:texmftrees}, +\p.\pageref{sec:texmftrees}. The default location of +\dirname{TEXDIR} is \dirname{/usr/local/texlive/2012} on Unix +and |%SystemDrive%\texlive\2012| on Windows. + +The main reason to change this default is if you lack write permission +for the default location. You don't have to be root or administrator to +install \TL, but you do need write access to the target directory. + +A reasonable alternative choice is a directory under your home directory, +especially if you will be the sole user. Use +`|~|' to indicate this, as in `|~/texlive/2012|'. + +We recommend including the year in the name, to enable keeping different +releases of \TL{} side by side. (You may wish to make a +version-independent name such as \dirname{/usr/local/texlive-cur} via a +symbolic link, which you can then update after testing the new release.) + +Changing \dirname{TEXDIR} in the installer will also change +\dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} and +\dirname{TEXMFSYSCONFIG}. + +\dirname{TEXMFHOME} is the recommended location for personal +macro files or packages. The default value is |~/texmf|. In +contrast to \dirname{TEXDIR}, here a |~| is preserved in the +newly-written configuration files, since it usefully refers to the home +directory of any individual running \TeX. It expands to +\dirname{$HOME} on Unix and \verb|%USERPROFILE%| on Windows. Special +redundant note: \envname{TEXMFHOME}, like all trees, must be organized +according to the \TDS, or files may not be found. + +\dirname{TEXMFVAR} is the location for storing most cached runtime data +specific to each user. \dirname{TEXMFCACHE} is used for that purpose by +\ConTeXt\ Mk\acro{IV} (see section~\ref{sec:context-mkiv}, +\p.\pageref{sec:context-mkiv}). + + +\subsubsection{Options} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Options setup: +=============================================================================== +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: + after installation, get package updates from CTAN: [X] +\end{boxedverbatim} +\caption{Options menu (Unix)}\label{fig:options-text} +\end{figure} + +Figure~\ref{fig:options-text} shows the text mode options menu. +More info on each: + +\begin{description} +\item[use letter size instead of A4 by default:] The default paper + size selection. Of course, individual documents can and should + specify a specific paper size, if desired. + +\item[execution of restricted list of programs:] As of \TL\ 2010, + execution of a few external programs is allowed by default. The (very + short) list of allowed programs is given in the \filename{texmf.cnf}. + See the 2010 news (section~\ref{sec:2010news}) for more details. + +\item[create format files:] Although unnecessary format files + take time to generate and disk space to store, it is still recommended + to leave this option checked: if you don't, then format files will be + generated in people's private \dirname{TEXMFVAR} tree as they are + needed. In that location, they will not be updated automatically if + (say) binaries or hyphenation patterns are updated in the + installation, and thus you could end up with incompatible format files. + +\item[install font/macro \ldots\ tree:] These options allow you to omit + downloading/installing the documentation and source files present in + most packages. Not recommended. + +\item[create symlinks in standard directories:] + This option (Unix only) bypasses the need to change environment + variables. Without this option, \TL{} directories usually have to be + added to \envname{PATH}, \envname{MANPATH} and \envname{INFOPATH}. You + will need write permissions to the target directories. It is strongly + advised \emph{not} to overwrite a \TeX\ system that came with your + system with this option. It is intended primarily for accessing the + \TeX\ system through directories that are already known to users, such + as \dirname{/usr/local/bin}, which don't already contain any \TeX\ + files. + +\item[after installation \ldots\ \CTAN:] When installing from \DVD, this + option is enabled by default, since usually one wants to take any + subsequent package updates from the \CTAN\ area that is updated + throughout the year. The only likely reason to disable it is if you + install only a subset from the \DVD\ and plan to augment the + installation later. In any case, the package repository for the + installer, and for updates after installation, can be set + independently as needed; see section~\ref{sec:location} and + section~\ref{sec:dvd-install-net-updates}. +\end{description} + +When all the settings are to your liking, you can type `I' to start the +installation process. When it is done, skip to +section~\ref{sec:postinstall} to read what else needs to be done, if +anything. + +\subsection{Command-line install-tl options} +\label{sec:cmdline} + +Type +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +for a listing of command-line options. Either |-| or |--| can be used +to introduce option names. These are the most common ones: + +\begin{ttdescription} +\item[-gui] If possible, use the \GUI{} installer. This requires the + Perl/Tk module (\url{http://tug.org/texlive/distro.html#perltk}) + compiled with \acro{XFT} support; if Perl/Tk is not available, + installation continues in text mode. + +\item[-no-gui] Force using the text mode installer, even under + Windows. + +\item[-lang {\sl LL}] Specify the installer interface + language as a standard (usually two-letter) code. The installer tries + to automatically determine the right language but if it fails, or if + the right language is not available, then it uses English as a + fallback. Run \code{install-tl --help} to get the list of available + languages. + +\htmlanchor{opt-in-place} +\item[-in-place] If you already have an rsync, svn, or other copy of + \TL{} (see \url{http://tug.org/texlive/acquire-mirror.html}) then this + option will use what you've got, as-is, and do only the necessary + post-install. Be warned that the file \filename{tlpkg/texlive.tlpdb} + may be overwritten; saving it is your responsibility. Also, package + removal has to be done manually. Do not use this unless you know + what you are doing. This option cannot be toggled via the + installer interface. + +\item[-portable] Install for portable use on, e.g., a \USB{} stick. + Also selectable from within the text installer with the \code{V} + command, and from the \GUI{} installer. See + section~\ref{sec:portable-tl}. + +\item[-profile {\sl file}] Load the installation profile \var{file} and + do the installation with no user interaction. The installer always + writes a file \filename{texlive.profile} to the \dirname{tlpkg} + subdirectory of your installation. That file can be given as the + argument to redo the exact same installation on a different system, + for example. Alternatively, you can use a custom profile, most easily + created by starting from a generated one and changing values, or an + empty file, which will take all the defaults. + +\item [-repository {\sl url-or-directory}] Specify package + repository from which to install; see following. +\end{ttdescription} + + +\subsubsection{The \optname{-repository} option} +\label{sec:location} + +The default network package repository is a \CTAN{} mirror chosen +automatically via \url{http://mirror.ctan.org}. + +If you want to override that, the location value can be a url starting +with \texttt{ftp:}, \texttt{http:}, or \texttt{file:/}, or a plain +directory path. (When giving an \texttt{http:}\ or \texttt{ftp:}\ +location, trailing `\texttt{/}' characters and/or a trailing +`\texttt{/tlpkg}' component are ignored.) + +For example, you could choose a particular \CTAN\ mirror with something +like: \url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +substituting a real hostname and its particular top-level \CTAN\ path +for |ctan.example.org/tex-archive|. The list of \CTAN\ mirrors is +maintained at \url{http://ctan.org/mirrors}. + +If the given argument is local (either a path or a \texttt{file:/} url), +compressed files in an \dirname{archive} subdirectory of the repository +path are used (even if uncompressed files are available as well). + + +\subsection{Post-install actions} +\label{sec:postinstall} + +Some post-install may be required. + + +\subsubsection{Environment variables for Unix} +\label{sec:env} + +If you elected to create symlinks in standard directories (described in +section~\ref{sec:options}), then there is no need to edit environment +variables. Otherwise, on Unix systems, the directory of the binaries +for your platform must be added to the search path. (On Windows, the +installer takes care of this.) + +Each supported platform has its own subdirectory under +\dirname{TEXDIR/bin}. See figure~\ref{fig:bin-text} for the list of +subdirectories and corresponding platforms. + +Optionally, you can also add the documentation man and Info directories +to their respective search paths, if you want the system tools to find +them. The man pages might be found automatically after the addition to +\envname{PATH}. + +For Bourne-compatible shells such as \prog{bash}, and using Intel x86 +GNU/Linux and a default directory setup as an example, the file to edit +might be \filename{$HOME/.profile} (or another file sourced by +\filename{.profile}, and the lines to add would look like this: + +\begin{sverbatim} +PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} + +For csh or tcsh, the file to edit is typically \filename{$HOME/.cshrc}, and +the lines to add might look like: + +\begin{sverbatim} +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{sverbatim} + +If you already have settings somewhere in your ``dot'' files, naturally +the \TL\ directories should simply be merged in as appropriate. + + +\subsubsection{Environment variables: Global configuration} +\label{sec:envglobal} + +If you want to make these changes globally, or for a user newly added to +the system, then you are on your own; there is just too much variation +between systems in how and where these things are configured. + +Our two hints are: 1)~you may want to check for a file +\filename{/etc/manpath.config} and, if present, add lines such as + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man +\end{sverbatim} + +And 2)~check for a file \filename{/etc/environment} which may define the +search path and other default environment variables. + +In each (Unix) binary directory, we also create a symbolic link named +\code{man} to the directory \dirname{texmf/doc/man}. Some \code{man} +programs, such as the standard \MacOSX\ \code{man}, will automatically +find that, obviating the need for any man page setup. + + +\subsubsection{Internet updates after \DVD\ installation} +\label{sec:dvd-install-net-updates} + +If you installed \TL\ from \DVD\ and then wish to get updates from the +Internet, you need to run this command---\emph{after} you've updated +your search path (as described in the previous section): + +\begin{alltt} +> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +This tells \cmdname{tlmgr} to use a nearby \CTAN\ mirror for future updates. +This is done by default when installing from \DVD, via the option +described in section~\ref{sec:options}. + +If there are problems with the automatic mirror selection, you can +specify a particular \CTAN\ mirror from the list at +\url{http://ctan.org/mirrors}. Use the exact path to the +\dirname{tlnet} subdir on that mirror, as shown above. + + +\htmlanchor{xetexfontconfig} % keep historical anchor working +\htmlanchor{sysfontconfig} +\subsubsection{System font configuration for \XeTeX\ and Lua\TeX} +\label{sec:font-conf-sys} + +\XeTeX\ and Lua\TeX\ can use any font installed on the system, not just +those in the \TeX\ trees. They do these via related but not identical +methods. + +On Windows, fonts shipped with \TL\ are made available to \XeTeX\ +automatically. But if you have installed the \filename{xetex} package +on a Unix-compatible system, you need to configure your system to be +able to find the fonts shipped with \TL\ via system name lookup, and not +just filename lookup. + +To facilitate this, when the \pkgname{xetex} package is installed +(either at initial installation or later), the necessary configuration +file is created in +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. + +To set up the \TL{} fonts for system-wide use (assuming you have +suitable privileges), proceed as follows: +\begin{enumerate*} +\item Copy the \filename{texlive-fontconfig.conf} file to +\dirname{/etc/fonts/conf.d/09-texlive.conf}. +\item Run \Ucom{fc-cache -fsv}. +\end{enumerate*} + +If you do not have sufficient privileges to carry out the steps above, +or if you simply want to make the \TL{} fonts available to one user, +you can do the following: +\begin{enumerate*} +\item Copy the \filename{texlive-fontconfig.conf} file to + \filename{~/.fonts.conf}, where \filename{~} is your home directory. +\item Run \Ucom{fc-cache -fv}. +\end{enumerate*} + +You can run \code{fc-list} to see the names of the system fonts. The +incantation \code{fc-list : family style file spacing} (all arguments +are literal strings) shows generally interesting information. + + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context-mkiv} + +Both the `old' \ConTeXt{} (Mark \acro{II}) and the `new' \ConTeXt{} +(Mark \acro{IV}) should run out of the box after \TL{} installation, +and should need no special attention as long as you stick to +using \verb+tlmgr+ for updates. + +However, because \ConTeXt{} Mk\acro{IV} does not use the kpathsea +library, some setup will be required whenever you install new +files manually (without using \verb+tlmgr+). After each such +installation, each Mk\acro{IV} user must run: +\begin{sverbatim} +context --generate +\end{sverbatim} +to refresh the \ConTeXt{} disk cache data. +The resulting files are stored under \code{TEXMFCACHE}. +whose default value in \TL\ is \verb+TEXMSYSVAR;TEXMFVAR+. + +\ConTeXt\ Mk\acro{IV} will read from +all paths mentioned in \verb+TEXMFCACHE+, and write to the first +path that is writable. While reading, the last found match will +take precedence in the case of duplicated cache data. + +For more information, see +\url{http://wiki.contextgarden.net/Running_Mark_IV}. + + +\subsubsection{Integrating local and personal macros} +\label{sec:local-personal-macros} + +This is already mentioned implicitly in section~\ref{sec:texmftrees}: +\dirname{TEXMFLOCAL} (by default, +\dirname{/usr/local/texlive/texmf-local} or +\verb|%SystemDrive%\texlive\texmf-local| on Windows) +is intended for system-wide local fonts and macros; and +\dirname{TEXMFHOME} (by default, \dirname{$HOME/texmf} or +\verb|%USERPROFILE%\texmf|), is for personal fonts and macros. These +directories are intended to stick around from release to release, and +have their content seen automatically by a new \TL{} release. +Therefore, it is best to refrain from changing the definition of +\dirname{TEXMFLOCAL} to be too far away from the main \TL{} directory, +or you will need to manually change future releases. + +For both trees, files should be placed in their proper \TeX\ Directory +Structure (\TDS) subdirectories; see \url{http://tug.org/tds} or consult +\filename{texmf/web2c/texmf.cnf}. For instance, a \LaTeX{} class file or +package should be placed in \dirname{TEXMFLOCAL/tex/latex} or +\dirname{TEXMFHOME/tex/latex}, or a subdirectory thereof. + +\dirname{TEXMFLOCAL} requires an up-to-date filename database, or files +will not be found. You can update it with the command +\cmdname{mktexlsr} or use the `Reinit file database' button on the +configuration tab of the \TeX\ Live Manager \GUI. + +By default, each of these variables is defined to be a single directory, +as shown. This is not a hard-and-fast requirement. If you need to +easily switch back and forth between different versions of large +packages, for example, you can maintain multiple trees for your own +purposes. This is done by setting \dirname{TEXMFHOME} to the +list of directories, within braces, separated by commas: + +\begin{verbatim} + TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir} +\end{verbatim} + +Section~\ref{sec:brace-expansion} describes brace expansion further. + + +\subsubsection{Integrating third-party fonts} + +This is unfortunately a messy topic. Forget about it unless you want to +delve into many details of the \TeX{} installation. Don't forget to +check first what you get for free: see section~\ref{sec:tl-fonts}. + +A possible alternative is to use \XeTeX\ or Lua\TeX\ (see +section~\ref{sec:tex-extensions}), which let you use operating system +fonts without any installation in \TeX. + +If you do need to do this, see +\url{http://tug.org/fonts/fontinstall.html} for our best effort at +describing the procedure. If you rigorously maintain your local font +maps, \texttt{tlmgr generate updmap} \textit{may} be useful, notably in +moving from release to release; see the \cmdname{tlmgr} documentation. + + +\subsection{Testing the installation} +\label{sec:test-install} + +After installing \TL{} as best you can, you naturally want to test +it out, so you can start creating beautiful documents and\slash or fonts. + +This section gives some basic procedures for testing that the new system +is functional. We give Unix commands here; under \MacOSX{} and Windows, +you're more likely to run the tests through a graphical interface, but +the principles are the same. + +\begin{enumerate} + +\item Make sure that you can run the \cmdname{tex} program in the first +place: +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live ...) +kpathsea version 6.0.1 +Copyright ... D.E. Knuth. +... +\end{alltt} +If this comes back with `command not found' instead of version and +copyright information, or with an older version, most likely you don't +have the correct \dirname{bin} subdirectory in your \envname{PATH}. See +the environment-setting information on \p.\pageref{sec:env}. + +\item Process a basic \LaTeX{} file: +\begin{alltt} +> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-... (TeX Live ...) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +If this fails to find \filename{sample2e.tex} or other files, most +likely you have interference from old environment variables or +configuration files; we recommend unsetting all \TeX-related environment +variables for a start. (For a deep analysis, you can ask \TeX{} to +report on exactly what it is searching for, and finding; see ``Debugging +actions'' on page~\pageref{sec:debugging}.) + +\item Preview the result online: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +You should see a new window with a nice document explaining some of the +basics of \LaTeX{}. (Well worth reading, by the way, if you're new to +\TeX.) You do have to be running under X for \cmdname{xdvi} to work; if +you're not, or your \envname{DISPLAY} environment variable is set +incorrectly, you'll get an error \samp{Can't open display}. + +\item Create a \PS{} file for printing or display: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Create a \acro{PDF} file instead of \dvi{}; this processes the +\filename{.tex} file and writes \acro{PDF} directly: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Preview the \acro{PDF} file: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{or:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Neither \cmdname{gv} nor \cmdname{xpdf} are included in \TL{}, so you +must install them separately. See \url{http://www.gnu.org/software/gv} +and \url{http://www.foolabs.com/xpdf}, respectively. There are plenty +of other \acro{PDF} viewers, too. For Windows, we recommend trying +Sumatra PDF (\url{http://blog.kowalczyk.info/software/sumatrapdf}). + +\item Standard test files you may find useful in addition to +\filename{sample2e.tex}: + +\begin{ttdescription} +\item [small2e.tex] A simpler document than \filename{sample2e}, to +reduce the input size if you're having troubles. +\item [testpage.tex] Test if your printer introduces any offsets. +\item [nfssfont.tex] For printing font tables and tests. +\item [testfont.tex] Also for font tables, but using plain \TeX{}. +\item [story.tex] The most canonical (plain) \TeX{} test file of all. +You must type \samp{\bs bye} to the \code{*} prompt after \samp{tex +story.tex}. +\end{ttdescription} + +\item If you have installed the \filename{xetex} package, you can test +its access to system fonts as follows: +\begin{alltt} +> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +(Or the same for \filename{luatex}.) + +If you get an error message saying ``Invalid fontname `Latin Modern +Roman/ICU'\dots'', then you need to configure your system so that +\XeTeX{} can find the fonts shipped with \TL. See +Section~\ref{sec:font-conf-sys}. + +\end{enumerate} + +\subsection{Links for additional downloadable software} + +If you are new to \TeX{}, or otherwise need help with actually writing +\TeX{} or \LaTeX{} documents, please visit +\url{http://tug.org/begin.html} for some introductory resources. + +Links for some other tools you may consider installing: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} with + supplementary packages from \acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, for graphics + processing and conversion +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, also for graphics. + +\item[\TeX-oriented editors] There is a wide choice, and it is a matter of the + user's taste. Here is a selection in alphabetical order (a few + here are for Windows only). + \begin{itemize*} + \item \cmdname{GNU Emacs} is available natively under Windows, see + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs with Auc\TeX} for Windows is available from \CTAN. + The AuC\TeX\ home page is \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} is available from + \url{http://mirror.ctan.org/support/LEd}. + \item \cmdname{SciTE} is available from + \url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} is free software, available from + \url{http://www.xm1math.net/texmaker}. + \item \cmdname{TexMakerX} is a fork of \cmdname{Texmaker} with + additional features; \url{http://texmakerx.sourceforge.net}. + \item \cmdname{TeXnicCenter} is free software, available from + \url{http://www.texniccenter.org} and in the pro\TeX{}t distribution. + \item \cmdname{TeXworks} is free software, available from + \url{http://tug.org/texworks} and installed for Windows and + \MacOSX\ as part of \TL. + \item \cmdname{Vim} is free software, available from + \url{http://www.vim.org}. + \item \cmdname{WinEdt} is shareware available though + \url{http://tug.org/winedt} or \url{http://www.winedt.com}. + \item \cmdname{WinShell} is available from \url{http://www.winshell.de}. + \end{itemize*} +\end{description} +For a much longer list of packages and programs, see +\url{http://tug.org/interest.html}. + + +\section{Specialized installations} + +The previous sections described the basic installation process. Here we +turn to some specialized cases. + +\htmlanchor{tlsharedinstall} +\subsection{Shared-user (or cross-machine) installations} +\label{sec:sharedinstall} + +\TL{} has been designed to be sharable between different users on one +system, and/or between different systems on a network. With a standard +directory layout, no hard paths are configured: the locations for files +needed by \TL{} programs are found relative to the programs. You can +see this in the principal configuration file +\filename{$TEXMFMAIN/web2c/texmf.cnf}, which contains lines such as +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +This means that adding the directory for \TL{} executables for their +platform to their search path is sufficient to get a working setup. + +By the same token, you can also install \TL{} locally and then move +the entire hierarchy afterwards to a network location. + +For Windows, a sample network installation script named +\filename{w32client} can be downloaded through +\url{http://tug.org/texlive/w32client.html}. It creates settings and +menu shortcuts for using an existing \TL{} installation on a \acro{LAN}. +It also registers an uninstaller \filename{w32unclient}, available +in the same zip file. See the web page for more information. + + +\htmlanchor{tlportable} +\subsection{Portable (\USB{}) installations} +\label{sec:portable-tl} + +The \code{-portable} installer option (or \code{V} command in the text +installer or corresponding \GUI{} option) creates a completely +self-contained \TL{} installation under a common root and forgoes system +integration. You can create such an installation directly on a \USB{} +stick, or copy it to a \USB{} stick afterwards. + +To run \TeX\ using this portable installation, you need to add the +appropriate binary directory to the search path during your terminal +session, as usual. On Windows, you can double-click +\filename{tl-tray-menu} at the root of the installation to choose +between a few common tasks, as shown in this screenshot: + +\medskip +\tlpng{tray-menu}{4cm} +\smallskip + +\noindent The `More\ldots' entry explains how you can customize this menu. + + +\htmlanchor{tlisoinstall} +\subsection{\ISO\ (or \DVD) installations} +\label{sec:isoinstall} + +If you don't need to update or otherwise modify your installation often, +and\slash or have several systems on which to use \TL{}, it may be +convenient to create an \ISO\ of your \TL{} installation, because: + +\begin{itemize} +\item Copying an \ISO\ between different computers is much + faster than copying a normal installation. +\item If you are dual-booting between different operating systems + and want them to share a \TL{} installation, an \ISO + installation is not tied to the idiosyncrasies and limitations of + other mutually supported filesystems (\acro{FAT32}, \acro{NTFS}, + \acro{HFS+}). +\item Virtual machines can simply mount such an \ISO. +\end{itemize} + +Of course you can also burn an \ISO\ to \DVD, if that is useful for you. + +Desktop \GNU/Linux/Unix systems, including \MacOSX, are able to mount an +\ISO. Apart from that, nothing changes compared to a normal hard disk +installation, see section \ref{sec:env}. + +When preparing such an \ISO\ installation, it is best to omit the +subdirectory for the release year, and have +\filename{texmf-local} at the same level as the other trees +(\filename{texmf}, \filename{texmf-dist}, etc.). You can do this with +the normal directory options in the installer. + +For a physical (rather than virtual) Windows system, you can burn the +\ISO\ to \acro{DVD}. However, it may be worth your while to investigate +free \ISO-mounting options. For Windows \acro{XP}, Microsoft offers +\filename{winxpvirtualcdcontrolpanel}. + +For Windows system integration, you can include the \filename{w32client} +scripts described in section~\ref{sec:sharedinstall} and at +\url{http://tug.org/texlive/w32client.html}, which work just as well for +an \ISO\ as for a network installation. + +On \MacOSX, TeXShop and \TeX{}works will be able to use the \acro{DVD} +installation if a symlink \filename{/usr/texbin} points to the +appropriate binary directory, e.g., +\begin{verbatim} +sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin +\end{verbatim} + +Historical note: \TL{} 2010 was the first \TL{} edition which was no +longer distributed `live'. However, it always required some acrobatics +to run from \DVD\ or \ISO; in particular, there was no way around +setting at least one extra environment variable. If you create your +\ISO\ from an existing installation then there is no need for this. + + +\htmlanchor{tlmgr} +\section{\cmdname{tlmgr}: Managing your installation} +\label{sec:tlmgr} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} in \GUI\ mode: main window, after `Load'.} +\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\hbox to \hsize{% + \vtop{\hsize=.59\linewidth + \null % make figures align at the top + \tlpng{tlmgr-general-options}{\hsize} + \caption{\texttt{tlmgr} in \GUI\ mode: General options} + \label{fig:tlmgr-general-options} + } + \hfil + \vtop{\hsize=.39\linewidth + \null + \tlpng{tlmgr-paper-options}{\hsize} + \caption{\texttt{tlmgr} in \GUI\ mode: Paper size options} + \label{fig:tlmgr-paper-options} + } +} +\end{figure} + +\TL{} includes a program named \prog{tlmgr} for managing \TL{} after the +initial installation. The programs \prog{updmap}, \prog{fmtutil} and +\prog{texconfig} are still included and will be retained in the future, +but \prog{tlmgr} is now the preferred interface. Its capabilities +include: + +\begin{itemize*} +\item installing, updating, backing up, restoring, and uninstalling + individual packages, optionally taking dependencies into account; +\item searching for and listing packages, etc.; +\item listing, adding, and removing platforms; +\item changing installation options such as paper size and source + location (see section~\ref{sec:location}). +\end{itemize*} + +\subsection{\cmdname{tlmgr} GUI mode} +\prog{tlmgr} can be started in \GUI{} mode (figure~\ref{fig:tlmgr-gui}) with +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +or in Windows via the Start menu: \texttt{Start}, \texttt{Programs}, +\texttt{TeX Live 2012}, \texttt{TeX Live Manager}. After clicking `Load' +it displays a list of available and installed packages. This assumes of +course that the installation source is valid and reachable. + +Figures~\ref{fig:tlmgr-general-options} and~\ref{fig:tlmgr-paper-options} +show the general and paper size option screens. + +\subsection{Sample \cmdname{tlmgr} command-line invocations} + +After the initial installation, you can update your system to the latest +versions available with: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +If this makes you nervous, first try +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +or (less verbose): +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} + +This more complex example adds a collection, for the engine \XeTeX, from +a local directory: + +\begin{alltt} +> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +It generates the following output (abridged): +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2012/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} + +As you can see, \prog{tlmgr} installs dependencies, and takes care of any +necessary post-install actions, including updating the filename database +and (re)generating formats. In the above, we generated new formats for +\XeTeX. + +To describe a package (or collection or scheme): +\begin{alltt} +> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +which produces +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +Last and most important, for full documentation see +\url{http://tug.org/texlive/tlmgr.html}, or: +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + + +\section{Notes on Windows} +\label{sec:windows} + +\subsection{Windows-specific features} +\label{sec:winfeatures} + +Under Windows, the installer does some extra things: +\begin{description} +\item[Menus and shortcuts.] A new `\TL{}' submenu of the + Start menu is installed, which contains entries for some \GUI{} + programs (\prog{tlmgr}, \prog{texdoctk}, the PS\_View (\prog{psv}) + PostScript previewer) and some documentation. +\item[File associations.] If enabled, \prog{TeXworks}, \prog{Dviout} + and \prog{PS\_view} become either the default program for + their respective filetypes, or get an entry in the `Open with' + right-click menus of those filetypes. +\item[Bitmap to eps converter.] Various bitmapped formats get an + entry \cmdname{bitmap2eps} in their `Open with' right-click + menu. Bitmap2eps is a simple script which lets \cmdname{sam2p} or + \cmdname{bmeps} do the real work. +\item[Automatic path adjustment.] No manual configuration steps are required. +\item[Uninstaller.] The installer creates an entry under `Add/Remove + Programs' for \TL. The uninstall tab of the \TeX\ Live Manager \GUI\ + refers to this. +\end{description} + +\subsection{Additional software included on Windows} + +To be complete, a \TL{} installation needs support packages that are not +commonly found on a Windows machine. \TL{} provides the missing +pieces: +\begin{description} +\item[Perl and Ghostscript.] Because of the importance of Perl and + Ghostscript, \TL{} includes `hidden' copies of these + programs. \TL{} programs that need them know where to find them, + but they don't betray their presence through environment variables + or registry settings. They aren't full-scale installations, and + shouldn't interfere with any system installations of Perl or + Ghostscript. + +\item[PS\_View.] Also installed is PS\_View, a \PS{} and \acro{PDF} + viewer; see figure~\ref{fig:psview}. + +\begin{figure}[tb] +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: very high magnifications available!}\label{fig:psview} +\end{figure} + +\item[dviout.] Also installed is \prog{dviout}, a \acro{DVI} viewer. + At first, when you preview files with \cmdname{dviout}, it will create + fonts, because screen fonts were not installed. After a while, you + will have created most of the fonts you use, and you will rarely see + the font-creation window. More information can be found in the + (highly recommended) on-line help. + +\item[\TeX{}works.] \TeX{}works is a \TeX-oriented editor with + an integrated \acro{PDF} viewer. + +\item[Command-line tools.] A number of Windows ports of common Unix + command-line programs are installed along with the usual \TL{} + binaries. These include \cmdname{gzip}, \cmdname{unzip} and the + utilities from the \cmdname{xpdf} suite (\cmdname{pdfinfo}, + \cmdname{pdffonts}, \ldots). The \cmdname{xpdf} viewer itself is not + available for Windows. Instead, you can download the Sumatra + \acro{PDF} viewer, which is based on \cmdname{xpdf}, from + \url{http://blog.kowalczyk.info/software/sumatrapdf}, among other options. + +\item[fc-list, fc-cache, \ldots] The tools from the fontconfig library allow + \XeTeX{} to handle system fonts on Windows. You can use + \prog{fc-list} to determine the font names to pass to \XeTeX's + extended \cs{font} command. If necessary, run \prog{fc-cache} + first to update font information. + +\end{description} + + +\subsection{User Profile is Home} +\label{sec:winhome} + +The Windows counterpart of a Unix home directory is the +\verb|%USERPROFILE%| directory. Under Windows \acro{XP}, this +is usually \verb|C:\Documents and Settings\|, and under +Windows Vista and Windows~7 it is \verb|C:\Users\|. In the +\filename{texmf.cnf} file, and \KPS{} in general, \verb|~| will expand +appropriately on both Windows and Unix. + + +\subsection{The Windows registry} +\label{sec:registry} + +Windows stores nearly all configuration data in its registry. The +registry contains a set of hierarchically organized keys, with several +root keys. The most important ones for installation programs are +\path{HKEY_CURRENT_USER} and \path{HKEY_LOCAL_MACHINE}, \path{HKCU} and +\path{HKLM} in short. The \path{HKCU} part of the registry is in the +user's home directory (see section~\ref{sec:winhome}). \path{HKLM} is +normally in a subdirectory of the Windows directory. + +In some cases, system information could be obtained from environment +variables but for other information, for example the location of +shortcuts, it is necessary to consult the registry. Setting environment +variables permanently also requires registry access. + + +\subsection{Windows permissions} +\label{sec:winpermissions} + +In later versions of Windows, a distinction is made between regular +users and administrators, where only the latter have free access to the +entire operating system. In practice, though, you could better describe +these classes of users as unprivileged users and normal users: being an +administrator is the rule, not the exception. Nevertheless, we have made +an effort to make \TL{} installable without administrative privileges. + +If the user is an administrator, there is an option to install for all +users. If this option is chosen, shortcuts are created for all users, +and the system environment is modified. Otherwise, shortcuts and menu +entries are created for the current user, and the user environment is +modified. + +Regardless of administrator status, the default root of \TL{} proposed +by the installer is always under \verb|%SystemDrive%|. The installer +always tests whether the root is writable for the current user. + +A problem may arise if the user is not an administrator and \TeX{} +already exists in the search path. Since the effective path +consists of the system path followed by the user path, the new \TL{} +would never get precedence. As a safeguard, the installer creates a +shortcut to the command-prompt in which the new \TL{} binary +directory is prepended to the local search path. The new \TL{} will +be always usable from within such a command-prompt. The shortcut for +\TeX{}works, if installed, also prepends \TL{} to the search path, so it +should also be immune to this path problem. + +For Vista and Windows~7 there is another twist: even if you are logged in as +administrator, you need to explicitly ask for administrator +privileges. In fact, there is not much point in logging in as +administrator. Instead, right-clicking on the program or shortcut +that you want to run usually gives you a choice `Run as +administrator'. + +\subsection{Increasing maximum memory on Windows and Cygwin} +\label{sec:cygwin-maxmem} + +Windows and Cygwin (see section~\ref{sec:cygwin} for Cygwin installation +specifics) users may find that they run out of memory when running some +of the programs shipped with \TL. For example, \prog{asy} might run out +of memory if you try to allocate an array of 25,000,000 reals, and +Lua\TeX\ might run out of memory if you try to process a document with a +lot of big fonts. + +For Cygwin, you can increase the amount of available memory by following +the instructions in the Cygwin User's Guide +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +For Windows, you have to create a file, say \code{moremem.reg}, with +these four lines: + +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +\noindent and then execute the command \code{regedit /s moremem.reg} as +administrator. (If you want to change memory only for the current user +instead of system-wide, use \code{HKEY\_CURRENT\_USER}.) + + +\section{A user's guide to Web2C} + +\Webc{} is an integrated collection of \TeX-related programs: \TeX{} +itself, \MF{}, \MP, \BibTeX{}, etc. It is the heart of \TL{}. The home +page for \Webc{}, with the current manual and more, is +\url{http://tug.org/web2c}. + +A bit of history: The original implementation was by Tomas Rokicki who, +in 1987, developed a first \TeX{}-to-C system based on change files +under Unix, which were primarily the original work of Howard Trickey and +Pavel Curtis. Tim Morgan became the maintainer of the system, and +during this period the name changed to Web-to-C\@. In 1990, Karl Berry +took over the work, assisted by dozens of additional contributors, and +in 1997 he handed the baton to Olaf Weber, who returned it to Karl in +2006. + +The \Webc{} system runs on Unix, 32-bit Windows systems, \MacOSX{}, and +other operating systems. It uses Knuth's original sources for \TeX{} and +other basic programs written in the \web{} literate programming system +and translates them into C source code. The core \TeX{} programs +handled in this way are: + +\begin{cmddescription} +\item[bibtex] Maintaining bibliographies. +\item[dvicopy] Expands virtual font references in \dvi{} files. +\item[dvitomp] \dvi{} to MPX (MetaPost pictures). +\item[dvitype] \dvi{} to human-readable text. +\item[gftodvi] Generic font proofsheets. +\item[gftopk] Generic to packed fonts. +\item[gftype] GF to human-readable text. +\item[mf] Creating typeface families. +\item[mft] Prettyprinting \MF{} source. +\item[mpost] Creating technical diagrams. +\item[patgen] Creating hyphenation patterns. +\item[pktogf] Packed to generic fonts. +\item[pktype] PK to human-readable text. +\item[pltotf] Plain text property list to TFM. +\item[pooltype] Display \web{} pool files. +\item[tangle] \web{} to Pascal. +\item[tex] Typesetting. +\item[tftopl] TFM to plain text property list. +\item[vftovp] Virtual font to virtual property list. +\item[vptovf] Virtual property list to virtual font. +\item[weave] \web{} to \TeX. +\end{cmddescription} + +\noindent The precise functions and syntax of these programs are +described in the documentation of the individual packages and of \Webc{} +itself. However, knowing a few principles governing the whole family of +programs will help you take advantage of your \Webc{} installation. + +All programs honor these standard \GNU options: +\begin{ttdescription} +\item[-{}-help] print basic usage summary. +\item[-{}-verbose] print detailed progress report. +\item[-{}-version] print version information, then exit. +\end{ttdescription} + +For locating files the \Webc{} programs use the path searching library +\KPS{} (\url{http://tug.org/kpathsea}). This library uses a combination +of environment variables and a configuration files to optimize searching +the (huge) collection of \TeX{} files. \Webc{} can look at many +directory trees simultaneously, which is useful in maintaining \TeX's +standard distribution and local and personal extensions in distinct +trees. To speed up file searches, the root of each tree has a file +\file{ls-R}, containing an entry showing the name and relative pathname +for all files under that root. + + +\subsection{Kpathsea path searching} +\label{sec:kpathsea} + +Let us first describe the generic path searching mechanism of the \KPS{} +library. + +We call a \emph{search path} a colon- or semicolon\hyph sepa\-rated list +of \emph{path elements}, which are basically directory names. A +search path can come from (a combination of) many sources. To look up +a file \samp{my-file} along a path \samp{.:/dir}, \KPS{} checks each +element of the path in turn: first \file{./my-file}, then +\file{/dir/my-file}, returning the first match (or possibly all +matches). + +In order to adapt optimally to all operating systems' conventions, on +non-Unix systems \KPS{} can use filename separators different from +colon (\samp{:}) and slash (\samp{/}). + +To check a particular path element \var{p}, \KPS{} first checks if a +prebuilt database (see ``Filename data\-base'' on +page~\pageref{sec:filename-database}) applies to \var{p}, i.e., if the +database is in a directory that is a prefix of \var{p}. If so, the path +specification is matched against the contents of the database. + +If the database does not exist, or does not apply to this path +element, or contains no matches, the filesystem is searched (if this +was not forbidden by a specification starting with \samp{!!}\ and if +the file being searched for must exist). \KPS{} constructs the list +of directories that correspond to this path element, and then checks +in each for the file being sought. + +The ``file must exist'' condition comes into play with \samp{.vf} files and +input files read by \TeX's \cs{openin} command. Such files may not +exist (e.g., \file{cmr10.vf}), and so it would be wrong to search the +disk for them. Therefore, if you fail to update \file{ls-R} when you +install a new \samp{.vf} file, it will never be found. +Each path element is checked in turn: first the database, then the +disk. If a match is found, the search stops and the result is +returned. + +Although the simplest and most common path element is a directory +name, \KPS{} supports additional features in search paths: layered +default values, environment variable names, config file values, users' +home directories, and recursive subdirectory searching. Thus, we say +that \KPS{} \emph{expands} a path element, meaning it transforms all +the specifications into basic directory name or names. This is +described in the following sections in the same order as it takes +place. + +Note that if the filename being searched for is absolute or explicitly +relative, i.e., starts with \samp{/} or \samp{./} or \samp{../}, +\KPS{} simply checks if that file exists. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{An illustrative configuration file sample} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Path sources} +\label{sec:path-sources} + +A search path can come from many sources. In the order in which +\KPS{} uses them: + +\begin{enumerate} +\item + A user-set environment variable, for instance, \envname{TEXINPUTS}\@. + Environment variables with a period and a program name appended + override; e.g., if \samp{latex} is the name of the program being run, + then \envname{TEXINPUTS.latex} will override \envname{TEXINPUTS}. +\item + A program-specific configuration file, for exam\-ple, a line + \samp{S /a:/b} in \cmdname{dvips}'s \file{config.ps}. +\item A \KPS{} configuration file \file{texmf.cnf}, containing a line like + \samp{TEXINPUTS=/c:/d} (see below). +\item The compile-time default. +\end{enumerate} +\noindent You can see each of these values for a given search path by +using the debugging options (see ``Debugging actions'' on +page~\pageref{sec:debugging}). + +\subsubsection{Config files} + +\KPS{} reads \emph{runtime configuration files} named \file{texmf.cnf} +for search path and other definitions. The search path used to look +for these files is named \envname{TEXMFCNF}, but we do not recommend +setting this (or any) environment variable. + +Instead, normal installation results in a file +\file{.../2012/texmf.cnf}. If you must make changes to the defaults +(not normally necessary), this is the place to put them. The main +configuration file is in \file{.../2012/texmf/web2c/texmf.cnf}. You +should not edit this latter file, as your changes will be lost when the +distributed version is updated. + +\emph{All} \file{texmf.cnf} files in the search path will be read and +definitions in earlier files override those in later files. For +example, with a search path of \verb|.:$TEXMF|, values from +\file{./texmf.cnf} override those from \verb|$TEXMF/texmf.cnf|. + +\begin{itemize} +\item + Comments start with \code{\%} and continue to the end of the line. +\item + Blank lines are ignored. +\item + A \bs{} at the end of a line acts as a continuation character, + i.e., the next line is appended. Whitespace at the beginning of + continuation lines is not ignored. +\item + Each remaining line has the form: +\begin{alltt} + \var{variable}[.\var{progname}] [=] \var{value} +\end{alltt}% + where the \samp{=} and surrounding whitespace are optional. +\item + The \ttvar{variable} name may contain any character other + than whitespace, \samp{=}, or \samp{.}, but sticking to + \samp{A-Za-z\_} is safest. +\item + If \samp{.\var{progname}} is present, the definition only + applies if the program that is running is named + \texttt{\var{progname}} or \texttt{\var{progname}.exe}. This allows + different flavors of \TeX{} to have different search paths, for + example. +\item \var{value} may contain any characters except + \code{\%} and \samp{@}. The + \code{\$\var{var}.\var{prog}} feature is not available on the + right-hand side; instead, you must use an additional variable. A + \samp{;}\ in \var{value} is translated to \samp{:}\ if + running under Unix; this is useful to be able to have a single + \file{texmf.cnf} for Unix, \acro{MS-DOS} and Windows systems. +\item + All definitions are read before anything is expanded, so + variables can be referenced before they are defined. +\end{itemize} +A configuration file fragment illustrating most of these points is +\ifSingleColumn +shown below: + +\verbatiminput{examples/ex5.tex} +\else +shown in Figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Path expansion} +\label{sec:path-expansion} + + +\KPS{} recognizes certain special characters and constructions in +search paths, similar to those available in Unix shells. As a +general example, the complex path, +\verb+~$USER/{foo,bar}//baz+, expands to all subdirectories under +directories \file{foo} and \file{bar} in \texttt{\$USER}'s home +directory that contain a directory or file \file{baz}. These +expansions are explained in the sections below. +%$ +\subsubsection{Default expansion} +\label{sec:default-expansion} + +If the highest-priority search path (see ``Path sources'' on +page~\pageref{sec:path-sources}) contains an \emph{extra colon} (i.e., +leading, trailing, or doubled), \KPS{} inserts at that point the +next-highest-prio\-rity search path that is defined. If that inserted +path has an extra colon, the same happens with the next highest. For +example, given an environment variable setting + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +and a \code{TEXINPUTS} value from \file{texmf.cnf} of + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +then the final value used for searching will be: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Since it would be useless to insert the default value in more than one +place, \KPS{} changes only one extra \samp{:}\ and leaves any others in +place. It checks first for a leading \samp{:}, then a trailing +\samp{:}, then a doubled \samp{:}. + +\subsubsection{Brace expansion} +\label{sec:brace-expansion} + +A useful feature is brace expansion, which means that, for instance, +\verb+v{a,b}w+ expands to \verb+vaw:vbw+. Nesting is allowed. +This is used to implement multiple \TeX{} hierarchies, by +assigning a brace list to \code{\$TEXMF}. +For example, in \file{texmf.cnf}, a definition like this +(simplified for this example) is made: +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +Using this you can then write something like +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +which means that, after looking in the current directory, the +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} +and \code{\$TEXMFMAIN/tex} trees \emph{only}) will be searched (the +last two use using \file{ls-R} data base files). It is a convenient +way for running two parallel \TeX{} structures, one ``frozen'' (on a +\CD, for instance) and the other being continuously updated with new +versions as they become available. By using the \code{\$TEXMF} +variable in all definitions, one is sure to always search the +up-to-date tree first. + +\subsubsection{Subdirectory expansion} +\label{sec:subdirectory-expansion} + +Two or more consecutive slashes in a path element following a directory +\var{d} is replaced by all subdirectories of \var{d}: first those +subdirectories directly under \var{d}, then the subsubdirectories under +those, and so on. At each level, the order in which the directories are +searched is \emph{unspecified}. + +If you specify any filename components after the \samp{//}, only +subdirectories with matching components are included. For example, +\samp{/a//b} expands into directories \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b}, and so on, but not \file{/a/b/c} or \file{/a/1}. + +Multiple \samp{//} constructs in a path are possible, but +\samp{//} at the beginning of a path is ignored. + +\subsubsection{List of special characters and their meaning: a summary} + +The following list summarizes the special characters in \KPS{} +configuration files. + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Separator in path specification; at the beginning or + the end of a path it substitutes the default path expansion.\par +\item[\CODE{;}] Separator on non-Unix systems (acts like \code{:}). +\item[\CODE{\$}] Variable expansion. +\item[\CODE{\string~}] Represents the user's home directory. +\item[\CODE{\char`\{...\char`\}}] Brace expansion. +\item[\CODE{//}] Subdirectory expansion (can occur anywhere in + a path, except at its beginning). +\item[\CODE{\%}] Start of comment. +\item[\CODE{\bs}] Continuation character (allows multi-line entries). +\item[\CODE{!!}] Search \emph{only} database to locate file, \emph{do + not} search the disk. +\end{ttdescription} + + +\subsection{Filename databases} +\label{sec:filename-database} + +\KPS{} goes to some lengths to minimize disk accesses for searches. +Nevertheless, at installations with enough directories, searching each +possible directory for a given file can take an excessively long time +(this is especially true if many hundreds of font directories have to +be traversed.) Therefore, \KPS{} can use an externally-built plain text +``database'' file named \file{ls-R} that maps files to directories, +thus avoiding the need to exhaustively search the disk. + +A second database file \file{aliases} allows you to give additional +names to the files listed in \file{ls-R}. This can be helpful to +confirm to \acro{DOS} 8.3 filename conventions in source files. + +\subsubsection{The filename database} +\label{sec:ls-R} + +As explained above, the name of the main filename database must be +\file{ls-R}. You can put one at the root of each \TeX{} hierarchy in +your installation that you wish to be searched (\code{\$TEXMF} by +default). \KPS{} looks for +\file{ls-R} files along the \code{TEXMFDBS} path. + +The recommended way to create and maintain \samp{ls-R} is to run the +\code{mktexlsr} script included with the distribution. It is invoked +by the various \samp{mktex}\dots\ scripts. In principle, this script +just runs the command +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +presuming your system's \code{ls} produces the right output format +(\GNU \code{ls} is all right). To ensure that the database is +always up-to-date, it is easiest to rebuild it regularly via +\code{cron}, so that it is automatically updated when the installed +files change, such as after installing or updating a \LaTeX{} package. + +If a file is not found in the database, by default \KPS{} goes ahead +and searches the disk. If a particular path element begins with +\samp{!!}, however, \emph{only} the database will be searched for that +element, never the disk. + + +\subsubsection{kpsewhich: Standalone path searching} +\label{sec:invoking-kpsewhich} + +The \texttt{kpsewhich} program exercises path searching independent of any +particular application. This can be useful as a sort of \code{find} +program to locate files in \TeX{} hierarchies (this is used heavily in +the distributed \samp{mktex}\dots\ scripts). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +The options specified in \ttvar{option} start with either \samp{-} +or \samp{-{}-}, and any unambiguous abbreviation is accepted. + +\KPS{} looks up each non-option argument on the command line as a +filename, and returns the first file found. There is no option to +return all the files with a particular name (you can run the Unix +\samp{find} utility for that). + +The most common options are described next. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Set the resolution to \ttvar{num}; this only affects \samp{gf} + and \samp{pk} lookups. \samp{-D} is a synonym, for compatibility + with \cmdname{dvips}. Default is 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Set the format for lookup to \ttvar{name}. By default, the + format is guessed from the filename. For formats which do not have + an associated unambiguous suffix, such as \MP{} support files and + \cmdname{dvips} configuration files, you have to specify the name as + known to \KPS{}, such as \texttt{tex} or \texttt{enc files}. Run + \texttt{kpsewhich -{}-help} for a list. + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Set the mode name to \ttvar{string}; this only affects \samp{gf} + and \samp{pk} lookups. No default: any mode will be found. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Do everything possible to find the files, notably including + searching the disk. By default, only the \file{ls-R} database is + checked, in the interest of efficiency. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Search along the path \ttvar{string} (colon-separated as usual), + instead of guessing the search path from the filename. \samp{//} and + all the usual expansions are supported. The options \samp{-{}-path} + and \samp{-{}-format} are mutually exclusive. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Set the program name to \texttt{\var{name}}. + This can affect the search paths via the \texttt{.\var{progname}} + feature. + The default is \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + shows the path used for file lookups of file type \texttt{\var{name}}. + Either a filename extension (\code{.pk}, \code{.vf}, etc.) or a + name can be used, just as with \samp{-{}-format} option. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + sets the debugging options to \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Examples of use} +\label{sec:examples-of-use} + +Let us now have a look at \KPS{} in action. Here's a straightforward search: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +We are looking for the file \file{article.cls}. Since the \samp{.cls} +suffix is unambiguous we do not need to specify that we want to look for a +file of type \optname{tex} (\TeX{} source file directories). We find it in +the subdirectory \file{tex/latex/base} below the \samp{texmf-dist} \TL\ +directory. Similarly, all of the following are found without problems +thanks to their unambiguous suffix. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +By the way, that last is a \BibTeX{} bibliography database for +\textsl{TUGboat} articles. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Font bitmap glyph files of type \file{.pk} are used by display +programs like \cmdname{dvips} and \cmdname{xdvi}. Nothing is returned in +this case since there are no pre-generated Computer Modern \samp{.pk} +files in \TL{}\Dash the Type~1 variants are used by default. +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +For these fonts (a phonetic alphabet from the University of Washington) +we had to generate \samp{.pk} files, and since the default \MF{} mode on +our installation is \texttt{ljfour} with a base resolution of 600\dpi{} +(dots per inch), this instantiation is returned. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +In this case, when specifying that we are interested in a resolution +of 300\dpi{} (\texttt{-dpi=300}) we see that no such font is available on +the system. A program like \cmdname{dvips} or \cmdname{xdvi} would +go off and actually build the required \texttt{.pk} files +using the script \cmdname{mktexpk}. + +Next we turn our attention to \cmdname{dvips}'s header and configuration +files. We first look at one of the commonly used files, the general +prologue \file{tex.pro} for \TeX{} support, before turning our attention +to the generic configuration file (\file{config.ps}) and the \PS{} font +map \file{psfonts.map}\Dash as of 2004, map and encoding files have +their own search paths and new location in \dirname{texmf} trees. As +the \samp{.ps} suffix is ambiguous we have to specify explicitly which +type we are considering (\optname{dvips config}) for the file +\texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +We now take a closer look at the \acro{URW} Times \PS{} support +files. The prefix for these in the standard font naming scheme is +\samp{utm}. The first file we look at is the configuration file, +which contains the name of the map file: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +The contents of that file is +\begin{alltt} + p +utm.map +\end{alltt} +which points to the file \file{utm.map}, which we want to +locate next. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +This map file defines the file names of the Type~1 \PS{} fonts in +the URW collection. Its contents look like (we only show part of the +lines): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +It should be evident from these examples how you can easily locate the +whereabouts of a given file. This is especially important if you suspect +that the wrong version of a file is picked up somehow, since +\cmdname{kpsewhich} will show you the first file encountered. + +\subsubsection{Debugging actions} +\label{sec:debugging} + +Sometimes it is necessary to investigate how a program resolves file +references. To make this practical, \KPS{} offers various levels of +debugging output: + +\begin{ttdescription} +\item[\texttt{\ 1}] \texttt{stat} calls (disk lookups). When running + with an up-to-date \file{ls-R} database this should almost give no + output. +\item[\texttt{\ 2}] References to hash tables (such as \file{ls-R} + databases, map files, configuration files). +\item[\texttt{\ 4}] File open and close operations. +\item[\texttt{\ 8}] General path information for file types + searched by \KPS. This is useful to find out where a particular + path for the file was defined. +\item[\texttt{16}] Directory list for each path element (only relevant + for searches on disk). +\item[\texttt{32}] File searches. +\item[\texttt{64}] Variable values. +\end{ttdescription} +A value of \texttt{-1} will set all the above options; in practice, +this is usually the most convenient. + +Similarly, with the \cmdname{dvips} program, by setting a combination of +debug switches, one can follow in detail where files are being picked up +from. Alternatively, when a file is not found, the debug trace shows in +which directories the program looks for the given file, so that one can +get an indication what the problem~is. + +Generally speaking, as most programs call the \KPS{} library +internally, one can select a debug option by using the +\envname{KPATHSEA\_DEBUG} environment variable, and setting it to (a +combination of) values as described in the above list. + +(Note for Windows users: it is not easy to redirect +all messages to a file in this system. For diagnostic purposes +you can temporarily \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Let us consider, as an example, a small \LaTeX{} source file, +\file{hello-world.tex}, which contains the following input. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +This little file only uses the font \file{cmr10}, so let us look at +how \cmdname{dvips} prepares the \PS{} file (we want to use the Type~1 +version of the Computer Modern fonts, hence the option \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In this case we have combined \cmdname{dvips}'s debug class 4 (font +paths) with \KPS's path element expansion (see \cmdname{dvips} Reference +Manual, \OnCD{texmf/doc/dvips/dvips.pdf}). +The output (slightly rearranged) appears in +Figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Finding configuration files}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Finding the prolog file}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Finding the font file}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} starts by locating its working files. First, +\file{texmf.cnf} is found, which gives the definitions of the search +paths for the other files, then the file database \file{ls-R} (to +optimize file searching) and the file \file{aliases}, which makes it +possible to declare several names (e.g., a short \acro{DOS}-like 8.3 and +a more natural longer version) for the same file. Then \cmdname{dvips} +goes on to find the generic configuration file \file{config.ps} +before looking for the customization file \file{.dvipsrc} (which, in +this case is \emph{not found}). Finally, \cmdname{dvips} locates the +config file for the Computer Modern \PS{} fonts \file{config.cms} +(this was initiated with the \texttt{-Pcms} option on the \cmdname{dvips} +command). This file contains the list of the map files which +define the relation between the \TeX{}, \PS{} and file system +names of the fonts. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} thus goes on to find all these files, plus the generic +map file \file{psfonts.map}, which is always loaded (it contains +declarations for commonly used \PS{} fonts; see the last part of +Section \ref{sec:examples-of-use} for more details about \PS{} map +file handling). + +At this point \cmdname{dvips} identifies itself to the user: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Then it goes on to look for the prolog file \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Then it goes on to look for the prolog file \file{texc.pro} (see +Figure~\ref{fig:dvipsdbgb}). +\fi + +After having found the file in question, \cmdname{dvips} outputs +the date and time, and informs us that it will generate the +file \file{hello-world.ps}, then that it needs the font file +\file{cmr10}, and that the latter is declared as ``resident'' (no +bitmaps needed): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Now the search is on for the file \file{cmr10.tfm}, which is found, +then a few more prolog files (not shown) are referenced, and finally +the Type~1 instance \file{cmr10.pfb} of the font is located and +included in the output file (see last line). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Runtime options} + +Another useful feature of \Webc{} is its possibility to control a number +of memory parameters (in particular, array sizes) via the runtime file +\file{texmf.cnf} read by \KPS{}. The memory settings can be found in +Part~3 of that file in the \TL{} distribution. The more important +are: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + Total words of memory available, for + \TeX{}, \MF{} and \MP. You must make a new format file for each + different setting. For instance, you could generate a ``huge'' + version of \TeX{}, and call the format file \texttt{hugetex.fmt}. + Using the standard way of specifying the program name used by \KPS{}, + the particular value of the \texttt{main\_memory} variable will then + be read from \file{texmf.cnf}. +\item[\texttt{extra\_mem\_bot}] + Extra space for ``large'' \TeX{} data structures: + boxes, glue, breakpoints, etc. Especially useful if you use + \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Number of words for font information available for \TeX. This + is more or less the total size of all \acro{TFM} files read. +\item[\texttt{hash\_extra}] + Additional space for the hash table of control sequence names. + Only $\approx$10,000 control sequences can be stored in the main + hash table; if you have a large book with numerous cross-references, + this might not be enough. The default value of + \texttt{hash\_extra} is \texttt{50000}. +\end{ttdescription} + +\noindent Of course, this facility is no substitute for truly dynamic +arrays and memory allocation, but since these are extremely difficult to +implement in the present \TeX{} source, these runtime parameters provide +a practical compromise allowing some flexibility. + + +\begin{comment} +\section{Building on a new Unix platform} + +If you have a platform for which executables are not included, you will +need to compile \TeX{} and friends. This is not as hard as it +sounds. What you need is all in the directory \texttt{source} in the +distribution. + +\subsection{Prerequisites} + +You will need at least 100 megabytes of disk space to compile all of +\TeX{} and its support programs. You'll also need an \acro{ANSI} C +compiler, a \cmdname{make} utility, a lexical scanner, and a parser +generator. We recommend the \GNU version of these programs +(\cmdname{gcc}, \GNU \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). You may be able to work with other C compilers and +\cmdname{make} programs, but you will need a good understanding of +building Unix programs to sort out problems. + +Also, the command \texttt{uname} must return a sensible value. + + +\subsection{Configuration} + +To begin, perform a normal installation of \TL{} to your disk (see +section~\ref{sec:install-disk} on +\p.\pageref{sec:install-disk}). You may wish to skip installing +all of the prebuilt binaries. + +Then, unpack the source from the compressed \texttt{tar} file in the +directory \dirname{source} to your disk and change directory to where +you placed it. + +Next, run \cmdname{configure} with a command line like this: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +The \optname{-prefix} directory is the one where you installed the +support tree; the directory layout will be as follows (where \$TEXDIR +stands for the directory you chose): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & main tree with fonts,\\ + & \qquad macros, etc\\ + \dirname{$TEXDIR/man} & Unix manual pages\\ + \dirname{$TEXDIR/info} & \GNU style Info manuals\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaries\\ +\end{tabular} +%$ + +If you want to leave out the \dirname{$PLATFORM} directory level, +i.e., put the binaries directly into \dirname{$TEXDIR/bin}, specify +the \verb|--disable-multiplatform| option to \cmdname{configure}. + +Have a look at the output of \verb|./configure --help| for more +options you can use. For example, you can skip building of \OMEGA{} and +\eTeX{}. + + +\subsection{Running \cmdname{make}} + +Make sure the shell variable or option \texttt{noclobber} is not set. +Then, run the main \cmdname{make} like this: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +and relax\ldots + +Alternatively, you want to log all the output, as in: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Before you believe that everything went ok, please check the log file +for errors: \GNU \cmdname{make} always uses the string \samp{***} +whenever a command fails. Also, check if all the programs were built: + +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +The result should be over 200 (you can check the exact number with the +\dirname{bin} directory contents in the distribution). + +If you need special privileges for \texttt{make install}, you can +separate the \samp{make world} into two different runs, like this: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +After you've installed your new binaries, you should follow the normal +post-installation procedures, given in section~\ref{sec:postinstall} +(\p.\pageref{sec:postinstall}). + +Also, if you'd like to make your binaries available to others, please +contact us. We'll be happy to put them on the \TL\ web pages. +\end{comment} + +\htmlanchor{ack} +\section{Acknowledgements} + +\TL{} is a joint effort by virtually all of the \TeX{} user groups. +This edition of \TL{} was overseen by Karl Berry. The other principal +contributors, past and present, are listed below. + +\begin{itemize*} + +\item The English, German, Dutch, and Polish \TeX{} user groups +(\acro{TUG}, \acro{DANTE} e.V., \acro{NTG}, and \acro{GUST}, +respectively), which provide the necessary technical and administrative +infrastructure. Please join the \TeX\ user group near you! (See +\url{http://tug.org/usergroups.html}.) + +\item The \acro{CTAN} team, notably Robin Fairbairns, Jim Hef{}feron, +and Rainer Sch\"opf, which distributes the \TL{} images and provides the +common infrastructure for package updates, upon which \TL{} depends. + +\item Nelson Beebe, for making many platforms available to \TL\ +developers, and his own comprehensive testing. + +\item John Bowman, for making many changes to his advanced graphics +program Asymptote to make it work in \TL. + +\item Peter Breitenlohner and the \eTeX\ team for the stable foundation +of future \TeX's, and Peter specifically for stellar help with \GNU\ +autotools usage throughout \TL. + +\item Jin-Hwan Cho and all of the DVIPDFM$x$ team, for their +excellent driver and responsiveness to configuration issues. + +\item Thomas Esser, without whose marvelous \teTeX{} package \TL{} +would have never existed. + +\item Michel Goossens, who co-authored the original documentation. + +\item Eitan Gurari, whose \TeX4ht is used to create the \HTML{} +version of this documentation, and who worked tirelessly to improve it +at short notice, every year. Eitan prematurely passed away in June +2009, and we dedicate this documentation to his memory. + +\item Hans Hagen, for much testing and making his \ConTeXt\ format +(\url{http://pragma-ade.com}) work within \TL's framework. + +\item \Thanh, Martin Schr\"oder, and the pdf\TeX\ team +(\url{http://pdftex.org}) for continuing enhancements of \TeX's +abilities. + +\item Hartmut Henkel, for significant development contributions to +pdf\TeX\, Lua\TeX, and more. + +\item Taco Hoekwater, for major renewed development efforts on MetaPost and +(Lua)\TeX\ (\url{http://luatex.org}) itself, incorporating +\ConTeXt\ into \TL, giving Kpathsea multi-threaded functionality, and +much more. + +\item Pawe{\l} Jackowski, for the Windows installer \cmdname{tlpm}, +and Tomasz {\L}uczak, for \cmdname{tlpmgui}, used in past releases. + +\item Akira Kakuto, for providing the Windows +binaries from his \acro{W32TEX} distribution for Japanese \TeX\ +(\url{http://w32tex.org}), and many other development contributions. + +\item Jonathan Kew, for developing the remarkable \XeTeX{} engine and +taking the time and trouble to integrate it in \TL{}, as well as the +initial version of the Mac\TeX\ installer, and also for our recommended +front-end \TeX{}works. + +\item Dick Koch, for maintaining Mac\TeX\ (\url{http://tug.org/mactex}) +in very close tandem with \TL{}, and for his great good cheer in doing +so. + +\item Reinhard Kotucha, for major contributions to the \TL{} 2008 +infrastructure and installer, as well as Windows research efforts, the +\texttt{getnonfreefonts} script, and more. + +\item Siep Kroonenberg, also for major contributions to the \TL{} 2008 +infrastructure and installer, especially on Windows, and for the bulk of +work updating this manual describing those features. + +\item Heiko Oberdiek, for the \pkgname{epstopdf} package and many +others, compressing the huge \pkgname{pst-geo} data files so we could +include them, and most of all, for his remarkable work on +\pkgname{hyperref}. + +\item Petr Ol\v{s}ak, who coordinated and checked all the Czech and Slovak +material very carefully. + +\item Toshio Oshima, for his \cmdname{dviout} previewer for Windows. + +\item Manuel P\'egouri\'e-Gonnard, for helping with package updates, +documentation improvements, and \cmdname{texdoc} development. + +\item Fabrice Popineau, for the original Windows support in \TL{} and +work on the French documentation. + +\item Norbert Preining, the principal architect of the \TL{} 2008 +infrastructure and installer, and also for coordinating the Debian +version of \TL{} (together with Frank K\"uster), making many suggestions +along the way. + +\item Sebastian Rahtz, for originally creating \TL{} and maintaining it +for many years. + +\item Phil Taylor, for setting up the BitTorrent downloads. + +\item Tomasz Trzeciak, for wide-ranging help with Windows. + +\item Vladimir Volovich, for substantial help with porting and other +maintenance issues, and especially for making it feasible to include +\cmdname{xindy}. + +\item Staszek Wawrykiewicz, the principal tester for all of \TL{}, +and coordinator of the many major Polish contributions: fonts, Windows +installation, and more. + +\item Olaf Weber, for his patient maintenance of \Webc. + +\item Gerben Wierda, for creating and maintaining the original \MacOSX\ +support, and much integration and testing. + +\item Graham Williams, on whose work the \TeX\ Catalogue of packages depends. + +\end{itemize*} + +Builders of the binaries: +Ettore Aldrovandi (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}), +Alan Braslau (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}), +Peter Breitenlohner (\pkgname{x86\_64-linux}), +Karl Berry (\pkgname{i386-linux}), +Ken Brown (\pkgname{i386-cygwin}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}), +Nikola Le\v{c}i\'c (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +Mojca Miklavec (\pkgname{mipsel-linux}), +Norbert Preining (\pkgname{alpha-linux}), +Thomas Schmitz (\pkgname{powerpc-linux}), +Boris Veytsman (\pkgname{armel-linux}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix}). +For information on the \TL{} build process, see +\url{http://tug.org/texlive/build.html}. + +Translators of this manual: +Boris Veytsman (Russian), +Jjgod Jiang, Jinsong Zhao, Yue Wang, \& Helin Gai (Chinese), +Uwe Ziegenhagen (German), +Manuel P\'egouri\'e-Gonnard (French), +Marco Pallante (Italian), +Nikola Le\v{c}i\'c (Serbian), +Petr Sojka \& Jan Busa (Czech\slash Slovak), +Staszek Wawrykiewicz (Polish). The \TL{} documentation web page +is \url{http://tug.org/texlive/doc.html}. + +Of course the most important acknowledgement must go to Donald Knuth, +first for inventing \TeX, and then for giving it to the world. + + + +\section{Release history} +\label{sec:history} + +\subsection{Past} + +Discussion began in late 1993 when the Dutch \TeX{} Users Group was +starting work on its 4All\TeX{} \CD{} for \acro{MS-DOS} users, and it +was hoped at that time to issue a single, rational, \CD{} for all +systems. This was too ambitious a target for the time, but it did spawn +not only the very successful 4All\TeX{} \CD{}, but also the \acro{TUG} +Technical Council working group on a \emph{\TeX{} Directory Structure} +(\url{http://tug.org/tds}), which specified how to create consistent and +manageable collections of \TeX{} support files. A complete draft of the +\TDS{} was published in the December 1995 issue of \textsl{TUGboat}, and +it was clear from an early stage that one desirable product would be a +model structure on \CD{}. The distribution you now have is a very direct +result of the working group's deliberations. It was also clear that the +success of the 4All\TeX{} \CD{} showed that Unix users would benefit +from a similarly easy system, and this is the other main strand of +\TL. + +We first undertook to make a new Unix-based \TDS{} \CD{} in the autumn +of 1995, and quickly identified Thomas Esser's \teTeX{} as the ideal +setup, as it already had multi-platform support and was built with +portability across file systems in mind. Thomas agreed to help, and work +began seriously at the start of 1996. The first edition was released in +May 1996. At the start of 1997, Karl Berry completed a major new release +of Web2c, which included nearly all the features which Thomas Esser had +added in \teTeX, and we decided to base the 2nd edition of the \CD{} on +the standard \Webc, with the addition of \teTeX's \texttt{texconfig} +script. The 3rd edition of the \CD{} was based on a major revision of +\Webc, 7.2, by Olaf Weber; at the same time, a new revision of \teTeX +was being made, and \TL{} included almost all of its features. The +4th edition followed the same pattern, using a new version of \teTeX, +and a new release of \Webc{} (7.3). The system now included a complete +Windows setup. + +For the 5th edition (March 2000) many parts of the \CD{} were revised +and checked, updating hundreds of packages. Package details were stored +in XML files. But the major change for \TeX\ Live 5 was that all +non-free software was removed. Everything in \TL{} is now intended +to be compatible with the Debian Free Software Guidelines +(\url{http://www.debian.org/intro/free}); we have done our best to check +the license conditions of all packages, but we would very much +appreciate hearing of any mistakes. + +The 6th edition (July 2001) had much more material updated. The major +change was a new install concept: the user could select a more exact set +of needed collections. Language-related collections were completely +reorganized, so selecting any of them installs not only macros, fonts, +etc., but also prepares an appropriate \texttt{language.dat}. + +The 7th edition of 2002 had the notable addition of \MacOSX{} support, +and the usual myriad of updates to all sorts of packages and +programs. An important goal was integration of the source back with +\teTeX, to correct the drift apart in versions~5 and~6. + +\subsubsection{2003} + +In 2003, with the continuing flood of updates and additions, we found +that \TL{} had grown so large it could no longer be contained on a +single \CD, so we split it into three different distributions (see +section~\ref{sec:tl-coll-dists}, \p.\pageref{sec:tl-coll-dists}). In +addition: + +\begin{itemize*} +\item At the request of the \LaTeX{} team, we changed the standard + \cmdname{latex} and \cmdname{pdflatex} commands to now use \eTeX{} (see + \p.\pageref{text:etex}). +\item The new Latin Modern fonts were included (and are recommended). +\item Support for Alpha \acro{OSF} was removed + (\acro{HPUX} support was removed previously), since no one had (or + volunteered) hardware available on which to compile new binaries. +\item Windows setup was substantially changed; for the first time + an integrated environment based on XEmacs was introduced. +\item Important supplementary programs for Windows + (Perl, Ghost\-script, Image\-Magick, Ispell) are now installed + in the \TL{} installation directory. +\item Font map files used by \cmdname{dvips}, \cmdname{dvipdfm} + and \cmdname{pdftex} are now generated by the new program + \cmdname{updmap} and installed into \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{}, and \MP{} now, by default, output most input + characters (32 and above) as themselves in output (e.g., + \verb|\write|) files, + log files, and the terminal, i.e., \emph{not} translated using the + \verb|^^| notation. In \TL{}~7, this translation was + dependent on the system locale settings; now, locale settings do + not influence the \TeX{} programs' behavior. If for some reason + you need the \verb|^^| output, rename the file + \verb|texmf/web2c/cp8bit.tcx|. (Future releases will have cleaner + ways to control this.) +\item This documentation was substantially revised. +\item Finally, since the edition numbers had grown unwieldy, + the version is now simply identified by the year: \TL{} 2003. +\end{itemize*} + + +\subsubsection{2004} + +2004 saw many changes: + +\begin{itemize} + +\item If you have locally-installed fonts which use their own +\filename{.map} or (much less likely) \filename{.enc} support files, you +may need to move those support files. + +\filename{.map} files are now searched for in subdirectories of +\dirname{fonts/map} only (in each \filename{texmf} tree), along the +\envname{TEXFONTMAPS} path. Similarly, \filename{.enc} files are now +searched for in subdirectories of \dirname{fonts/enc} only, along the +\envname{ENCFONTS} path. \cmdname{updmap} will attempt to warn about +problematic files. + +For methods of handling this and other information, please see +\url{http://tug.org/texlive/mapenc.html}. + +\item The \TK\ has been expanded with the addition of a \MIKTEX-based +installable \CD, for those who prefer that implementation to Web2C. +See section~\ref{sec:overview-tl} (\p.\pageref{sec:overview-tl}). + +\item Within \TL, the single large \dirname{texmf} tree of previous +releases has been replaced by three: \dirname{texmf}, +\dirname{texmf-dist}, and \dirname{texmf-doc}. See +section~\ref{sec:tld} (\p.\pageref{sec:tld}), and the \filename{README} +files for each. + +\item All \TeX-related input files are now collected in +the \dirname{tex} subdirectory of \dirname{texmf*} trees, rather than +having separate sibling directories \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex}, etc. See +\CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}. + +\item Helper scripts (not meant to be invoked by users) are now located +in a new \dirname{scripts} subdirectory of \dirname{texmf*} trees, and +can be searched for via \verb|kpsewhich -format=texmfscripts|. So if you have +programs which call such scripts, they'll need to be adjusted. See +\CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}. + +\item Almost all formats leave most characters printable as +themselves via the ``translation file'' \filename{cp227.tcx}, instead of +translating them with the \verb|^^| notation. Specifically, characters +at positions 32--256, plus tab, vertical tab, and form feed are +considered printable and not translated. The exceptions are plain \TeX\ +(only 32--126 printable), \ConTeXt\ (0--255 printable), and the +\OMEGA-related formats. This default behavior is almost the same as in +\TL\,2003, but it's implemented more cleanly, with more possibilities +for customization. See \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. +(By the way, with Unicode input, \TeX\ may output partial character +sequences when showing error contexts, since it is byte-oriented.) + +\item \textsf{pdfetex} is now the default engine for all formats +except (plain) \textsf{tex} itself. (Of course it generates \acro{DVI} +when run as \textsf{latex}, etc.) This means, among other things, that +the microtypographic features of \textsf{pdftex} are available in +\LaTeX, \ConTeXt, etc., as well as the \eTeX\ features +(\OnCD{texmf-dist/doc/etex/base/}). + +It also means it's \emph{more important than ever} to use the +\pkgname{ifpdf} package (works with both plain and \LaTeX) or equivalent +code, because simply testing whether \cs{pdfoutput} or some other +primitive is defined is not a reliable way to determine if \acro{PDF} +output is being generated. We made this backward compatible as best we +could this year, but next year, \cs{pdfoutput} may be defined even when +\acro{DVI} is being written. + +\item pdf\TeX\ (\url{http://pdftex.org}) has many new features: + + \begin{itemize*} + + \item \cs{pdfmapfile} and \cs{pdfmapline} provide font map support + from within a document. + + \item Microtypographic font expansion can be used more easily.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item All parameters previously set through the special configuration + file \filename{pdftex.cfg} must now be set through primitives, + typically in \filename{pdftexconfig.tex}; \filename{pdftex.cfg} is no + longer supported. Any extant \filename{.fmt} files must be redumped + when \filename{pdftexconfig.tex} is changed. + + \item See the pdf\TeX\ manual for more: \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}. + + \end{itemize*} + +\item The \cs{input} primitive in \cmdname{tex} (and \cmdname{mf} and +\cmdname{mpost}) now accepts double quotes containing spaces and other +special characters. Typical examples: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +See the Web2C manual for more: \OnCD{texmf/doc/web2c}. + +\item enc\TeX\ support is now included within Web2C and consequently all +\TeX\ programs, via the \optname{-enc} option\Dash \emph{only when +formats are built}. enc\TeX\ supports general re-encoding of input and +output, enabling full support of Unicode (in \acro{UTF}-8). See +\OnCD{texmf-dist/doc/generic/enctex/} and +\url{http://www.olsak.net/enctex.html}. + +\item Aleph, a new engine combining \eTeX\ and \OMEGA, is available. +A little information is available in \OnCD{texmf-dist/doc/aleph/base} +and \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. The +\LaTeX-based format for Aleph is named \textsf{lamed}. + +\item The latest \LaTeX\ release has a new version of the +\acro{LPPL}\Dash now officially a Debian-approved license. Assorted +other updates, see the \filename{ltnews} files in +\OnCD{texmf-dist/doc/latex/base}. + +\item \cmdname{dvipng}, a new program for converting \acro{DVI} to +\acro{PNG} image files, is included. See \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item We reduced the \pkgname{cbgreek} package to a ``medium'' sized set +of fonts, with the assent and advice of the author (Claudio Beccari). +The excised fonts are the invisible, outline, and transparency ones, +which are relatively rarely used, and we needed the space. The full set +is of course available from \acro{CTAN} +(\url{http://mirror.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} has been removed; just use \cmdname{xdvi}. + +\item The \cmdname{ini} and \cmdname{vir} commands (links) for +\cmdname{tex}, \cmdname{mf}, and \cmdname{mpost} are no longer created, +such as \cmdname{initex}. The \cmdname{ini} functionality has been +available through the command-line option \optname{-ini} for years now. + +\item \textsf{i386-openbsd} platform support was removed. Since the +\pkgname{tetex} package in the \acro{BSD} Ports system is available, and +\acro{GNU/}Linux and Free\acro{BSD} binaries were available, it seemed +volunteer time could be better spent elsewhere. + +\item On \textsf{sparc-solaris} (at least), you may have to set the +\envname{LD\_LIBRARY\_PATH} environment variable to run the +\pkgname{t1utils} programs. This is because they are compiled with C++, +and there is no standard location for the runtime libraries. (This is +not new in 2004, but wasn't previously documented.) Similarly, on +\textsf{mips-irix}, the \acro{MIPS}pro 7.4 runtimes are required. + +\end{itemize} + +\subsubsection{2005} + +2005 saw the usual huge number of updates to packages and programs. +The infrastructure stayed relatively stable from 2004, but inevitably +there were some changes there as well: + +\begin{itemize} + +\item New scripts \cmdname{texconfig-sys}, \cmdname{updmap-sys}, and + \cmdname{fmtutil-sys} were introduced, which modify the + configuration in the system trees. The \cmdname{texconfig}, + \cmdname{updmap}, and \cmdname{fmtutil} scripts now modify + user-specific files, under \dirname{$HOME/.texlive2005}. + +\item Corresponding new variables \envname{TEXMFCONFIG} and + \envname{TEXMFSYSCONFIG} to specify the trees where configuration + files (user or system, respectively) are found. Thus, you may + need to move personal versions of \filename{fmtutil.cnf} and + \filename{updmap.cfg} to these places; another option is to + redefine \envname{TEXMFCONFIG} or \envname{TEXMFSYSCONFIG} in + \filename{texmf.cnf}. In any case the real location of these files + and the values of \envname{TEXMFCONFIG} and \envname{TEXMFSYSCONFIG} + must agree. + See section~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. + +\item Last year, we kept \verb|\pdfoutput| and other primitives undefined + for \dvi\ output, even though the \cmdname{pdfetex} program was + being used. This year, as promised, we undid that compatibility + measure. So if your document uses \verb|\ifx\pdfoutput\undefined| + to test if PDF is being output, it will need to be changed. You + can use the package \pkgname{ifpdf.sty} (which works under both + plain \TeX\ and \LaTeX) to do this, or steal its logic. + +\item Last year, we changed most formats to output (8-bit) characters as + themselves (see previous section). The new TCX file + \filename{empty.tcx} now provides an easier way to get the + original \verb|^^| notation if you so desire, as in: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + +\item The new program \cmdname{dvipdfmx} is included for translation of + DVI to PDF; this is an actively maintained update of + \cmdname{dvipdfm} (which is also still available for now, though + no longer recommended). + +\item The new programs \cmdname{pdfopen} and \cmdname{pdfclose} are included + to allow reloading of pdf files in the Adobe Acrobat Reader without + restarting the program. (Other pdf readers, notably \cmdname{xpdf}, + \cmdname{gv}, and \cmdname{gsview}, have never suffered from this + problem.) + +\item For consistency, the variables \envname{HOMETEXMF} and + \envname{VARTEXMF} have been renamed to \envname{TEXMFHOME} and + \envname{TEXMFSYSVAR}, respectively. There is also + \envname{TEXMFVAR}, which is by default user-specific. See the + first point above. + +\end{itemize} + + +\subsubsection{2006--2007} + +In 2006--2007, the major new addition to \TL{} was the \XeTeX{} program, +available as the \texttt{xetex} and \texttt{xelatex} programs; see +\url{http://scripts.sil.org/xetex}. + +MetaPost also received a notable update, with more planned for the +future (\url{http://tug.org/metapost/articles}), likewise pdf\TeX{} +(\url{http://tug.org/applications/pdftex}). + +The \TeX\ \filename{.fmt} (high-speed format) and the similar files for +MetaPost and \MF\ are now stored in subdirectories of \dirname{texmf/web2c}, +instead of in the directory itself (although the directory is still +searched, for the sake of existing \filename{.fmt}'s). The +subdirectories are named for the `engine' in use, such as \filename{tex} +or \filename{pdftex} or \filename{xetex}. This change should be +invisible in normal use. + +The (plain) \texttt{tex} program no longer reads \texttt{\%\&} first +lines to determine what format to run; it is the pure Knuthian \TeX. +(\LaTeX\ and everything else do still read \texttt{\%\&} lines). + +Of course the year also saw (the usual) hundreds of other updates to +packages and programs. As usual, please check \acro{CTAN} +(\url{http://mirror.ctan.org}) for updates. + +Internally, the source tree is now stored in Subversion, with a standard +web interface for viewing the tree, as linked from our home page. +Although not visible in the final distribution, we expect this will +provide a stable development foundation for future years. + +Finally, in May 2006 Thomas Esser announced that he would no longer be +updating te\TeX{} (\url{http://tug.org/tetex}). As a result, there was +been a surge of interest in \TL{}, especially among \GNU/Linux +distributors. (There is a new \texttt{tetex} installation scheme in +\TL{}, which provides an approximate equivalent.) We hope this will +eventually translate to improvements in the \TeX\ environment for +everyone. + +\subsubsection{2008} + +In 2008, the entire \TL{} infrastructure was redesigned and +reimplemented. Complete information about an installation is now stored +in a plain text file \filename{tlpkg/texlive.tlpdb}. + +Among other things, this finally makes possible upgrading a \TL{} +installation over the Internet after the initial installation, a feature +MiK\TeX\ has provided for many years. We expect to regularly update new +packages as they are released to \CTAN. + +The major new engine Lua\TeX\ (\url{http://luatex.org}) is included; +besides a new level of flexibility in typesetting, this provides an +excellent scripting language for use both inside and outside of \TeX\ +documents. + +Support among Windows and the Unix-based platforms is now much more +uniform. In particular, most Perl and Lua scripts are now available on +Windows, using the Perl internally distributed with \TL. + +The new \cmdname{tlmgr} script (section~\ref{sec:tlmgr}) is the +general interface for managing \TL{} after the initial installation. +It handles package updates and consequent regeneration of formats, map +files, and language files, optionally including local additions. + +With the advent of \cmdname{tlmgr}, the \cmdname{texconfig} actions to +edit the format and hyphenation configuration files are now disabled. + +The \cmdname{xindy} indexing program +(\url{http://xindy.sourceforge.net/}) is now included on most platforms. + +The \cmdname{kpsewhich} tool can now report all matches for a given file +(option \optname{--all}) and limit matches to a given subdirectory +(option \optname{--subdir}). + +The \cmdname{dvipdfmx} program now includes functionality to extract +bounding box information, via the command name \cmdname{extractbb}; this +was one of the last features provided by \cmdname{dvipdfm} not in +\cmdname{dvipdfmx}. + +The font aliases \filename{Times-Roman}, \filename{Helvetica}, and so on +have been removed. Different packages expected them to behave +differently (in particular, to have different encodings), and there was +no good way to resolve this. + +The \pkgname{platex} format has been removed, to resolve a name conflict +with a completely different Japanese \pkgname{platex}; the +\pkgname{polski} package is now the main Polish support. + +Internally, the \web\ string pool files are now compiled into the +binaries, to ease upgrades. + +Finally, the changes made by Donald Knuth in his `\TeX\ tuneup of 2008' +are included in this release. See +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + +\subsubsection{2009} + +In 2009, the default output format for Lua\AllTeX\ is now PDF, to take +advantage of Lua\TeX's OpenType support, et al. New executables named +\code{dviluatex} and \code{dvilualatex} run Lua\TeX\ with DVI output. +The Lua\TeX\ home page is \url{http://luatex.org}. + +The original Omega engine and Lambda format have been excised, after +discussions with the Omega authors. The updated Aleph and Lamed remain, +as do the Omega utilities. + +A new release of the AMS \TypeI\ fonts is included, including Computer +Modern: a few shape changes made over the years by Knuth in the Metafont +sources have been integrated, and the hinting has been updated. The +Euler fonts have been thoroughly reshaped by Hermann Zapf (see +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). In +all cases, the metrics remain unchanged. The AMS fonts home page is +\url{http://www.ams.org/tex/amsfonts.html}. + +The new GUI front end \TeX{}works is included for Windows, and also in +Mac\TeX. For other platforms, and more information, see the \TeX{}works +home page, \url{http://tug.org/texworks}. It is a cross-platform front +end inspired by the \MacOSX\ TeXShop editor, aiming at ease-of-use. + +The graphics program Asymptote is included for several platforms. This +implements a text-based graphics description language vaguely akin to +MetaPost, but with advanced 3D support and other features. Its home +page is \url{http://asymptote.sourceforge.net}. + +The separate \code{dvipdfm} program has been replaced by +\code{dvipdfmx}, which operates in a special compatibility mode under +that name. \code{dvipdfmx} includes \acro{CJK} support and has +accumulated many other fixes over the years since the last +\code{dvipdfm} release. The DVIPDFMx home page is +\url{http://project.ktug.or.kr/dvipdfmx}. + +Executables for the \pkgname{cygwin} and \pkgname{i386-netbsd} platforms +are now included, while we were advised that Open\acro{BSD} users get +\TeX\ through their package systems, plus there were difficulties in +making binaries that have a chance of working on more than one version. + +A miscellany of smaller changes: we now use \pkgname{xz} compression, +the stable replacement for \pkgname{lzma} +(\url{http://tukaani.org/xz/}); a literal |$| is allowed in filenames +when it does not introduce a known variable name; the Kpathsea library +is now multi-threaded (made use of in MetaPost); the entire \TL{} build +is now based on Automake. + +Final note on the past: all releases of \TL{}, along with ancillary +material such as \CD\ labels, are available at +\url{ftp://tug.org/historic/systems/texlive}. + + +\subsubsection{2010} +\label{sec:2010news} % keep with 2010 + +In 2010, the default version for PDF output is now 1.5, enabling more +compression. This applies to all the \TeX\ engines when used to produce +PDF and to \code{dvipdfmx}. Loading the \pkgname{pdf14} \LaTeX\ package +changes back to PDF~1.4, or set |\pdfminorversion=4|. + +pdf\AllTeX\ now \emph{automatically} converts a requested Encapsulated +PostScript (EPS) file to PDF, via the \pkgname{epstopdf} package, when +and if the \LaTeX\ \code{graphics.cfg} configuration file is loaded, and +PDF is being output. The default options are intended to eliminate any +chance of hand-created PDF files being overwritten, but you can also +prevent \code{epstopdf} from being loaded at all by putting +|\newcommand{\DoNotLoadEpstopdf}{}| (or |\def...|) before the +\cs{documentclass} declaration. It is also not loaded if the +\pkgname{pst-pdf} package is used. For more details, see the +\pkgname{epstopdf} package documentation +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +A related change is that execution of a very few external commands from +\TeX, via the \cs{write18} feature, is now enabled by default. These +are commands are \code{repstopdf}, \code{makeindex}, \code{kpsewhich}, +\code{bibtex}, and \code{bibtex8}; the list is defined in +\code{texmf.cnf}. Environments which must disallow all such external +commands can deselect this option in the installer (see +section~\ref{sec:options}), or override the value after installation by +running |tlmgr conf texmf shell_escape 0|. + +Yet another related change is that \BibTeX\ and Makeindex now refuse to +write their output files to an arbitrary directory (like \TeX\ itself), +by default. This is so they can now be enabled for use by the +restricted \cs{write18}. To change this, the \envname{TEXMFOUTPUT} +environment variable can be set, or the |openout_any| setting changed. + +\XeTeX\ now supports margin kerning along the same lines as pdf\TeX. +(Font expansion is not presently supported.) + +By default, \prog{tlmgr} now saves one backup of each package updated +(\code{tlmgr option autobackup 1}), so broken packages updates can be +easily reverted with \code{tlmgr restore}. If you do post-install +updates, and don't have the disk space for the backups, run \code{tlmgr +option autobackup 0}. + +New programs included: the p\TeX\ engine and related utilities for +typesetting Japanese; the \BibTeX{}U program for Unicode-enabled +\BibTeX; the \prog{chktex} utility +(\url{http://baruch.ev-en.org/proj/chktex}) for checking \AllTeX\ +documents; the \prog{dvisvgm} (\url{http://dvisvgm.sourceforge.net}) +DVI-to-SVG translator. + +Executables for these new platforms are now included: \code{amd64-freebsd}, +\code{amd64-kfreebsd}, \code{i386-freebsd}, \code{i386-kfreebsd}, +\code{x86\_64-darwin}, \code{x86\_64-solaris}. + +A change in \TL{} 2009 that we failed to note: numerous \TeX4ht-related +executables (\url{http://tug.org/tex4ht}) were removed from the binary +directories. The generic \code{mk4ht} program can be used to run any of +the various \code{tex4ht} combinations. + +Finally, the \TL{} release on the \TK\ \DVD\ can no longer be run live +(oddly enough). A single \DVD\ no longer has enough room. One +beneficial side effect is that installation from the physical \DVD\ is +much faster. + +\subsubsection{2011} + +The \MacOSX\ binaries (\code{universal-darwin} and +\code{x86\_64-darwin}) now work only on Leopard or later; Panther and +Tiger are no longer supported. + +The \code{biber} program for bibliography processing is included on +common platforms. Its development is closely coupled with the +\code{biblatex} package, which completely reimplements the +bibliographical facilities provided by LaTeX. + +The MetaPost (\code{mpost}) program no longer creates or uses +\code{.mem} files. The needed files, such as \code{plain.mp}, are +simply read on every run. This is related to supporting MetaPost as a +library, which is another significant though not user-visible change. + +The \code{updmap} implementation in Perl, previously used only on +Windows, has been revamped and is now used on all platforms. There +shouldn't be any user-visible changes as a result, except that it runs +much faster. + +The \cmdname{initex} and \cmdname{inimf} programs were restored (but no +other \cmd{ini*} variants). + +% +\htmlanchor{news} +\subsection{Present} +\label{sec:tlcurrent} + +\code{tlmgr} supports updates from multiple network repositories. The +section on multiple repositories in the \code{tlmgr help} output has +more. + +The parameter \cs{XeTeXdashbreakstate} is set to~1 by default, for both +\code{xetex} and \code{xelatex}. This allows line breaks after +em-dashes and en-dashes, which has always been the behavior of plain +\TeX, \LaTeX, Lua\TeX, etc. Existing \XeTeX\ documents which must +retain perfect line-break compatibility will need to set +\cs{XeTeXdashbreakstate} to~0 explicitly. + +The output files generated by \code{pdftex} and \code{dvips}, among +others, can now exceed 2gb. + +The 35 standard PostScript fonts are included in the output of +\code{dvips} by default, since so many different versions of them are +extant. + +In the restricted \cs{write18} execution mode, set by default, +\code{mpost} is now an allowed program. + +A \code{texmf.cnf} file is also found in \filename{../texmf-local}, +e.g., \filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf}, if it +exists. + +The \code{updmap} script reads a per-tree \code{updmap.cfg} instead of +one global config. This change should be invisible, unless you edited +your updmap.cfg's directly. The \code{updmap --help} output has more. + +Platforms: \pkgname{armel-linux} and \pkgname{mipsel-linux} added; +\pkgname{sparc-linux} and \pkgname{i386-netbsd} are no longer in the +main distribution, but are available for installation as custom +binaries, along with a variety of other platforms: +\url{http://tug.org/texlive/custom-bin.html}. + + +\subsection{Future} + +\emph{\TL{} is not perfect!} (And never will be.) We intend to +continue to release new versions, and would like to provide more help +material, more utilities, more installation programs, and (of course) an +ever-improved and better-checked tree of macros and fonts. This work is +all done by volunteers in their spare time, and so there is always more +to do. Please see \url{http://tug.org/texlive/contribute.html}. + +Please send corrections, suggestions, and offers of help to: +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Happy \TeX ing!} + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-fr/Makefile b/Master/texmf-dist/doc/texlive/texlive-fr/Makefile new file mode 100644 index 00000000000..ad5d26d2c34 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-fr/Makefile @@ -0,0 +1,4 @@ +include ../texlive-en/Makefile +doc = texlive-fr + + diff --git a/Master/texmf-dist/doc/texlive/texlive-fr/live4ht.cfg b/Master/texmf-dist/doc/texlive/texlive-fr/live4ht.cfg new file mode 100644 index 00000000000..4da18b3c746 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-fr/live4ht.cfg @@ -0,0 +1,47 @@ +% tex4ht configuration file for the TeX Live documentation. +% Accumulated over many years. Public domain. +% +% html specifies the main output format. +% info for extra debugging info in the log files. + +% better approach is to have html in one piece (including footnotes). +% charset=utf-8 fails for French, all accented letters get lost. +\Preamble{html,info,fn-in} + +% add extra stylesheet +\Configure{@HEAD}{\HCode{% +\Hnewline +\Hnewline +}} + +% or LaTeX complains it is missing. +\begin{document} + +\EndPreamble + +% simplify output for HTML. We leave TeX and LaTeX alone, since tex4ht +% actually does the lowered E (and raised A) in CSS. +\def\OMEGA{Omega} +\def\LaTeXe{LaTeX2e} +\def\eTeX{e-\TeX} +\def\acro#1{#1} +\def\MF{Metafont} +\def\BibTeX{BibTeX} +\def\warningbox{} +\def\endwarningbox{} + +\newif\ifhackliterals +\ifx\tldocenglish\undefined \else \hackliteralstrue \fi +\ifx\tldocrussian\undefined \else \hackliteralstrue \fi +\ifx\tldocgerman\undefined \else \hackliteralstrue \fi +% +\ifhackliterals + % these definitions cause "missing } inserted" at \end{tabularx} in + % French and Czech. don't know why. + % + % don't make these into links, as happens with \path. We only have a couple + % special characters that actually occur. + \def\dirname{\texttt\bgroup\catcode`\$=12 \catcode`\_=12 \finishliteral} + \def\finishliteral#1{#1\egroup} + \let\filename=\dirname +\fi diff --git a/Master/texmf-dist/doc/texlive/texlive-fr/notes b/Master/texmf-dist/doc/texlive/texlive-fr/notes new file mode 100644 index 00000000000..75d4504473a --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-fr/notes @@ -0,0 +1,83 @@ +Notes sur la VF +--------------- + +1976: trop d'espace avant le alltt, ou pas assez après. À régler dans le +préambule ? + +Suggestions pour texlive-en.tex +------------------------------- + +win32 supported: add Seven + +3.1: be clearer about admin install (in general) + +Ajout df, fin de 1.1 : +Les utilisateurs des éditions précédentes de \TL{} sont invités +à lire, \emph{avant toute mise à jour}, la section~\ref{sec:tlcurrent} +page~\pageref{sec:tlcurrent} qui présente les principaux changements intervenus +cette année. + +233: the translated README's are no more at the top-level, but +in readme-*.dir as described above. + +244: maybe mention that the TeX Live documentation is what the +reader is currently reading? + +271: addition by df: nothing should be manually added, modified +of removed from this tree. (mpg: actually, this is a common mistake) + +326: addition by df: eg, \dirname{texmf/tex/latex} for you +personnal LaTeX macros files. + +369: xetex/ (trailing slash) + +678: the numbering is weird (a, c, e, f, ...) and + +804: additional precisions here may be useful, like: +"The default paper size selection for tools such as \prog{dvips}, \prog{pdftex}, +\prog{xdvi}. It does not influence, and may be overridden by, the default paper +size used by macros such as the LaTeX classes and packages. Of course, +individual document..." + +816: is it clear for everyone that the context here is \write18? +"execution of external programs" does not seem explicit enough to me. + +1042: s/filename/pkgname/ + +1053: Isn't conf.d Debian-specific? + +1142: "this" looks like it means "using XeTeX", but probably +refers to "installing fonts". + +1236: the first sentence is about system fonts, while the end of +the paragraph says \TL fonts. Which one is correct? + +1267: quite messy, sometimes the description says "is free +software", sometimes not. We'd better say "all are free software unless stated +otherwise". We could say which items are Windows-only. Why is there 2 Emacs +items? Concerning Vim, add a reference to latex-suite. Why not put TW first, +then other free cross-platform software, then free platform-specific, then +non-free? Add Kile for Linux? + +1296: the term "installation" may be confusing (I thought it was +about the net installer first), maybe "using TL from a network" would be better? + +1340: addition by df: nothing is touched on the host system +outside ~/.tlportable2009 + +1389: s/location/repository/ + +1506: IMO, TeXworks should come first, and Perl/GS last (I doubt +the average user cares about it). + +1544: s/Xe\TeX/\XeTeX/ (in other places, too) + +1562: this section sounds rather theoretical: how does all this relate to TL? + +3076: Final note on the past is \section{Present}??? + +Suggestions pour texlive-en.sty +------------------------------- + +- TeXworks logo, XeTeX logo? +- More systematic use of \xspace? diff --git a/Master/texmf-dist/doc/texlive/texlive-fr/tex-live.css b/Master/texmf-dist/doc/texlive/texlive-fr/tex-live.css new file mode 100644 index 00000000000..5062bc0d229 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-fr/tex-live.css @@ -0,0 +1,44 @@ +/* $Id$ + Simple CSS for TeX Live that adds margins and a little color. + original by Bzyl Wlodzimierz, edited by Karl Berry, 2005. + Public domain. */ + +html { + // top left bottom right + margin: 15pt 15pt 15pt 15pt; + background: rgb(255,255,224); +} + +body { + margin: 0 5pt 0 5pt; + padding: 0; + //matw: background: rgb(224,255,224); + // (It looks better to me to have a consistent background --karl) +// fonts in browser are low resolution; +// therefore generated serif are poor quality, +// so they disturb reading (that is my opinion) + font-family: sans-serif; + font-style: normal; +} + +/* (It looks better to me to not vary colors at every level --karl) */ + +h3.sectionHead { + padding: 12pt 10pt 12pt 20pt; + //matw: background: rgb(192,224,255); + background: rgb(224,224,255); + color: rgb(0,0,32); +} + +h4.subsectionHead { + padding: 7pt 10pt 7pt 40pt; + background: rgb(224,224,255); + color: rgb(0,0,32); +} + +h5.subsubsectionHead { + padding: 3pt 10pt 3pt 40pt; + //matw: background: rgb(224,255,255); + background: rgb(224,224,255); + color: rgb(0,0,32); +} diff --git a/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.css b/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.css new file mode 100644 index 00000000000..42ab2f78e4c --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.css @@ -0,0 +1,478 @@ + +/* start css.sty */ +.ec-lmri-12x-x-172{font-size:206%; font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmss-17{font-size:170%; font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmr-12{font-size:120%;} +.lmsy-10x-x-120{font-size:120%;} +.ec-lmtt-12{font-size:120%; font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmri-12{font-size:120%; font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmri-12{ font-style:italic;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmr-9{font-size:90%;} +.ec-lmr-8{font-size:80%;} +.ec-lmri-8{font-size:80%; font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmri-8{ font-style:italic;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtt-8{font-size:80%; font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmtt-9{font-size:90%; font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmssbx-10{ font-family: sans-serif; font-weight: bold;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmr-7{font-size:70%;} +p.noindent { text-indent: 0em } +td p.noindent { text-indent: 0em; margin-top:0em; } +p.nopar { text-indent: 0em; } +p.indent{ text-indent: 1.5em } +@media print {div.crosslinks {visibility:hidden;}} +a img { border-top: 0; border-left: 0; border-right: 0; } +center { margin-top:1em; margin-bottom:1em; } +td center { margin-top:0em; margin-bottom:0em; } +.Canvas { position:relative; } +img.math{vertical-align:middle;} +li p.indent { text-indent: 0em } +li p:first-child{ margin-top:0em; } +li p:last-child, li div:last-child { margin-bottom:0.5em; } +li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } +.enumerate1 {list-style-type:decimal;} +.enumerate2 {list-style-type:lower-alpha;} +.enumerate3 {list-style-type:lower-roman;} +.enumerate4 {list-style-type:upper-alpha;} +div.newtheorem { margin-bottom: 2em; margin-top: 2em;} +.obeylines-h,.obeylines-v {white-space: nowrap; } +div.obeylines-v p { margin-top:0; margin-bottom:0; } +.overline{ text-decoration:overline; } +.overline img{ border-top: 1px solid black; } +td.displaylines {text-align:center; white-space:nowrap;} +.centerline {text-align:center;} +.rightline {text-align:right;} +div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } +.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.fbox {display:table} +div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.minipage{width:100%;} +div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} +div.center div {text-align: left;} +div.flushright, div.flushright div.flushright {text-align: right;} +div.flushright div {text-align: left;} +div.flushleft {text-align: left;} +.underline{ text-decoration:underline; } +.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } +.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +.framebox-c {text-align:center;} +.framebox-l {text-align:left;} +.framebox-r {text-align:right;} +span.thank-mark{ vertical-align: super } +span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } +div.footnotes{border-top:solid 1px black; border-bottom:solid 1px black; padding-bottom:1ex; padding-top:0.5ex; margin-right:15%; margin-top:2ex; font-style:italic; font-size:85%;} +div.footnotes p{margin-top:0; margin-bottom:0; text-indent:0;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +.tabbing-right {text-align:right;} +span.TEX {letter-spacing: -0.125em; } +span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} +a span.TEX span.E {text-decoration: none; } +span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} +span.LATEX span.TEX{ position:relative; left: -0.4em; } +div.float, div.figure {margin-left: auto; margin-right: auto;} +div.float img {text-align:center;} +div.figure img {text-align:center;} +.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} +.marginpar p{margin-top:0.4em; margin-bottom:0.4em;} +table.equation {width:100%;} +.equation td{text-align:center; } +td.equation { margin-top:1em; margin-bottom:1em; } +td.equation-label { width:5%; text-align:center; } +td.eqnarray4 { width:5%; white-space: normal; } +td.eqnarray2 { width:5%; } +table.eqnarray-star, table.eqnarray {width:100%;} +div.eqnarray{text-align:center;} +div.array {text-align:center;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.pmatrix img{vertical-align:middle;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.bar-css {text-decoration:overline;} +img.cdots{vertical-align:middle;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +div.array {text-align:center;} +.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} +.index-item, .index-subitem, .index-subsubitem {display:block} +div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} +div.caption span.id{font-weight: bold; white-space: nowrap; } +h1.partHead{text-align: center} +p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} +.subparagraphHead, .likesubparagraphHead { font-weight: bold;} +.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} +.verse{white-space:nowrap; margin-left:2em} +div.maketitle {text-align:center;} +h2.titleHead{text-align:center;} +div.maketitle{ margin-bottom: 2em; } +div.author, div.date {text-align:center;} +div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } +.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } +.abstract p {margin-left:5%; margin-right:5%;} +div.abstract {width:100%;} +.frenchb-nbsp{font-size:75%;} +.frenchb-thinspace{font-size:75%;} +.alltt P { margin-bottom : 0em; margin-top : 0em; } +.alltt { margin-bottom : 1em; margin-top : 1em; } +.figure img.graphics {margin-left:10%;} +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +div.longtable{text-align:center;} +.uline{ text-decoration:underline; } +.uuline{ text-decoration:underline; } +span.sout {text-decoration: line-through } +span.xout {text-decoration: line-through } +span.uwave {text-decoration:underline } +P.fancyvrb {white-space: nowrap; margin:0em;} +div#fancyvrb1{ border-top: solid 0.4pt; } +div#fancyvrb1{ border-left: solid 0.4pt; } +div#fancyvrb1{ border-bottom: solid 0.4pt; } +div#fancyvrb1{ border-right: solid 0.4pt; } +div#fancyvrb2{ border-top: solid 0.4pt; } +div#fancyvrb2{ border-left: solid 0.4pt; } +div#fancyvrb2{ border-bottom: solid 0.4pt; } +div#fancyvrb2{ border-right: solid 0.4pt; } +div#fancyvrb3{ border-top: solid 0.4pt; } +div#fancyvrb3{ border-left: solid 0.4pt; } +div#fancyvrb3{ border-bottom: solid 0.4pt; } +div#fancyvrb3{ border-right: solid 0.4pt; } +div#fancyvrb4{ border-top: solid 0.4pt; } +div#fancyvrb4{ border-left: solid 0.4pt; } +div#fancyvrb4{ border-bottom: solid 0.4pt; } +div#fancyvrb4{ border-right: solid 0.4pt; } +/* end css.sty */ + diff --git a/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.html b/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.html new file mode 100644 index 00000000000..79a9411e08c --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.html @@ -0,0 +1,6668 @@ + + + +Guide pratique de TeX Live +TeX Live 2012 + + + + + + + + + + +

+ + + + + +

Guide pratique de TEX Live
+TEX Live 2012

+
Karl Berry, éditeur +
http://tug.org/texlive/ +
Version française +
Manuel Pégourié-Gonnard*
+
+
Juin 2012
+
+

Table des matières

+
+1 Introduction +
 1.1 TEX Live et TEX Collection +
 1.2 Support des différents systèmes d’exploitation +
 1.3 Installation élémentaire de TEX Live +
 1.4 Remarques sur la sécurité +
 1.5 Obtenir de l’aide +
2 Structure de TEX Collection +
 2.1 TEX Collection : TEX Live, proTEXt, MacTEX +
 2.2 Répertoires situés à la racine de TEX Live +
 2.3 Description des arborescences « texmf » de TEX Live +
 2.4 Les extensions de TEX +
 2.5 Quelques autres programmes intéressants dans TEX Live +
 2.6 Fontes incluses dans TEX Live +
3 Installation +
 3.1 Démarrage de l’installation +
  3.1.1 Installation sous Unix +
  3.1.2 Installation sous Mac OS X +
  3.1.3 Installation sous Windows +
  3.1.4 Installation sous Cygwin +
  3.1.5 Installation en mode texte +
  3.1.6 Installation en mode graphique-expert +
  3.1.7 L’installation en mode magique +
 3.2 Choix des options d’installation +
  3.2.1 Choix des binaires (Unix seulement) +
  3.2.2 Sélection de ce qui va être installé +
  3.2.3 Répertoires d’installation + + +
  3.2.4 Options +
 3.3 Options de install-tl en ligne de commande +
  3.3.1 L’option -repository +
 3.4 Étapes post-installation +
  3.4.1 Variables d’environnement sous Unix +
  3.4.2 Variables d’environnement : configuration multi-utilisateur +
  3.4.3 Mises à jour par Internet après une installation par le DVD +
 3.5 Configuration des fontes pour XeTEX et LuaTEX +
  3.5.1 ConTEXt Mark IV +
  3.5.2 Ajout de fichiers locaux ou personnels +
  3.5.3 Ajout de fontes externes à TEX Live +
 3.6 Tester l’installation +
 3.7 Liens vers d’autres logiciels téléchargeables +
4 Installations spécialisées +
 4.1 Installation partagée entre plusieurs utilisateurs ou machines +
5 Installations « portable » de TEX Live +
 5.1 Installation sur DVD ou image ISO +
6 Maintenance de l’installation avec tlmgr +
 6.1 tlmgr en mode graphique +
 6.2 Exemples d’utilisation de tlmgr en ligne de commande +
7 Notes concernant Windows +
 7.1 Fonctionnalités supplémentaires à l’installation +
 7.2 Programmes supplémentaires +
 7.3 Répertoire personnel +
 7.4 Base de registre Windows +
 7.5 Droits d’accès sous Windows +
  7.5.1 Augmentation de la limite de mémoire sous Windows et Cygwin +
8 Guide d’utilisation du système Web2C +
 8.1 Kpathsea et la recherche de fichiers +
  8.1.1 Les différentes sources +
  8.1.2 Fichiers de configuration +
  8.1.3 Expansion d’un chemin de recherche +
  8.1.4 Expansion par défaut +
  8.1.5 Expansion spécifiée par les accolades +
  8.1.6 Expansion des sous-répertoires +
  8.1.7 Liste des caractères spéciaux et de leur signification : récapitulatif +
 8.2 Les bases de données +
  8.2.1 Le fichier base de données +
  8.2.2 kpsewhich : programme de recherche dans une arborescence +
  8.2.3 Exemples d’utilisation +
  8.2.4 Opérations de débogage +
 8.3 Options à l’exécution +
9 Remerciements +
10 Historique des versions successives +
 10.1 Les éditions précédentes +
  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.1.7 2010 +
  10.1.8 2011 +
 10.2 Version présente +
 10.3 Versions futures +
+

+

1 Introduction

+

+

1.1 TEX Live et TEX Collection

+

Ce document décrit les principales caractéristiques de la distribution TEX Live, une distribution complète de +TEX pour Linux et autres Unix, Mac OS X et systèmes Windows. +

Cette distribution peut être obtenue par téléchargement, sur le DVD TEX Collection distribué par les groupes +d’utilisateurs de TEX à leurs membres, ou par d’autres moyens. La section 2.1 décrit brièvement le contenu du +DVD. TEX Live et TEX Collection sont le fruit des efforts des groupes d’utilisateurs de TEX. La description +qui suit porte essentiellement sur TEX Live. +

La distribution TEX Live comprend les binaires pré-compilés de TEX, LaTeX2e, ConTEXt, Metafont, +MetaPost, BibTeX et de nombreux autres programmes ainsi qu’une bibliothèque étendue de macros, de fontes +et de documentations. Elle permet aussi la composition de textes dans la plupart des langues utilisées dans le +monde. +

On trouvera à la fin du document, section 10 (page 76), un bref historique des principales modifications +apportées au fil du temps à la distribution TEX Live. +

Les utilisateurs des éditions précédentes de TEX Live sont invités à lire, avant toute mise à jour, la +section 10.2 page 85 qui présente les principaux changements intervenus cette année. +

+

1.2 Support des différents systèmes d’exploitation

+

TEX Live contient les exécutables pour les principales architectures Unix, dont GNU/Linux, Mac OS X et +Cygwin. Les sources inclus dans la distribution devraient être compilables sur des plate-formes pour lesquelles +nous ne fournissons pas d’exécutables. +

Concernant Windows, XP et les versions ultérieures sont supportés. Windows 2000 devrait probablement +fonctionner (en bonne partie). Il n’y a pas d’exécutables spécifiques 64-bit pour Windows, mais les exécutables +32-bit devraient focntionner sur les systèmes 64-bit. +

Consulter la section 2.1 pour des solutions alternatives sous Windows et Mac OS X. +

+

1.3 Installation élémentaire de TEX Live

+

Vous pouvez installer TEX Live de deux façons différentes : soit depuis le DVD, soit depuis Internet +(http://tug.org/texlive/acquire.html). L’installateur réseau est petit et télécharge tout ce qu’il faut +depuis Internet. + + +

L’installateur du DVD vous permet d’installer sur votre disque dur. Il n’est plus possible de lancer TEX Live +directement depuis le DVD TEX Collection (ou une image .iso), mais vous pouvez créer une installation +portable, par exemple sur une clé USB (voir section 5). +

La procédure d’installation est décrite en détail dans les sections suivantes (page 12), mais voici de quoi +commencer rapidement. +

    +
  • Le script d’installation s’appelle install-tl. Il peut fonctionner en mode « magique 1 » + avec l’option -gui=wizard (c’est le mode par défaut sous Windows), en mode texte avec l’option + -gui=text (mode par défaut partout ailleurs), ou en mode graphique expert avec -gui=perltk. +
  • +
  • Ce script installe en particulier le programme « TEX Live Manager » appelé tlmgr. Comme + l’installeur, il peut être utilisé en mode graphique ou en mode texte. Il permet d’ajouter ou de + supprimer des composants et de procéder à différents réglages de configuration. +
+

+

1.4 Remarques sur la sécurité

+

À notre connaissance, les programmes TEX de base en eux-mêmes sont (et ont toujours été) extrêmement +robustes. Cependant, d’autres programmes livrés avec TEX Live ne le sont peut-être pas autant, bien que +chacun fasse de son mieux. De façon générale, il faut faire preuve de prudence avant de lancer des programmes +sur des données en lesquelles vous n’avez pas toute confiance. Pour plus de sécurité, travaillez dans un nouveau +répertoire créé à cet effet. +

Il convient d’être particulièrement vigilant sous Windows, qui en général cherche les programmes dans le +répertoire courant avant tout, quel que soit le chemin de recherche défini. Nous avons comblé +de nombreuses failles, mais il en reste certainement d’autres, notamment avec les programmes +maintenus extérieurement. C’est pourquoi nous recommandons de vérifier s’il n’y a pas de fichiers +suspects dans le répertoire courant, en particulier les exécutables (binaires ou scripts). En général, il +ne devrait pas y en avoir, et le simple fait de compiler un document devrait encore moins en +créer. +

Enfin, TEX (et les programmes associés) ont la capacité d’écrire des fichiers en compilant des +documents, capacité qui peut être exploitée à des fins malignes de nombreuses façons. Ici aussi, la +meilleure protection est de compiler les documents inconnus dans un répertoire nouvellement +créé. +

+

1.5 Obtenir de l’aide

+

La communauté TEX est active et conviviale ; la plupart des questions finissent par obtenir une réponse. Par +contre, le support est informel, assuré par des volontaires et des lecteurs occasionnels, aussi est-il +particulièrement important que vous fassiez votre propre travail de recherche avant de poser une question (si +vous préférez un support commercial, vous pouvez renoncer à TEX Live et acheter un système payant ; voir +une liste à http://tug.org/interest.html#vendors). +

Voici une liste de ressources, classées selon l’ordre dans lequel nous recommandons de les utiliser : +

+

+Getting Started
– pour ceux qui débutent en TEX, la page web http://tug.org/begin.html + contient une courte description du système. +
+FAQ TEX
– la FAQ TEX est un vaste recueil de réponses à toutes sortes de questions, + de la plus élémentaire à la plus complexe. Elle est enregistrée sur le DVD dans + texmf-dist/doc/generic/FAQ-en/html/index.html et elle est disponible sur Internet à l’adresse + http://www.tex.ac.uk/faq. Merci de consulter cette FAQ avant toute question. + + +
+Catalogue TEX
– si vous recherchez une extension, une fonte, un programme, etc., le mieux est de + consulter le catalogue TEX ici : http://mirror.ctan.org/help/Catalogue/. +
+Ressources TEX sur le Web
– la page web http://tug.org/interest.html propose beaucoup de + liens relatifs à TEX, en particulier concernant des livres, manuels et articles portant sur tous les + aspects du système. +
+Archives des forums d’aide
– les principaux forums dédiés au support de TEX sont les groupes de + nouvelles Usenet news:comp.text.tex (en anglais) et news:fr.comp.text.tex (en français) ainsi + que les listes de diffusion texhax@tug.org (en anglais) et gut@ens.fr (en français). Les archives + correspondantes contiennent des milliers de questions et réponses déjà traitées et permettent + une recherche fructueuse. Voir http://groups.google.com/groups?group=fr.comp.text.tex + et http://tug.org/mail-archives/texhax, respectivement. Une question posée sur un moteur + de recherche, tel que http://google.com, peut aussi fournir des réponses pertinentes. +
+Poster une question
– si vous ne trouvez pas de réponse, vous pouvez poser la question (en français) + sur fr.comp.text.tex via Google ou votre lecteur de nouvelles, ou encore par messagerie à + texhax@tug.org (en anglais). Mais avant de le faire, merci de lire l’introduction de la FAQ + donnant les conseils sur la façon de rédiger la question pour avoir des chances d’obtenir une + réponse pertinente : http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion. Pour + de l’aide en anglais, vous pouvez également vous tourner vers le site LATEX Community : + http://www.latex-community.org/ et son forum http://www.latex-community.org/forum/, + ainsi que le site TEX StackExchange à http://tex.stackexchange.com/. +
+Support de TEX Live
– si vous voulez faire un rapport d’anomalie, émettre des suggestions ou + des commentaires sur la distribution TEX Live, son installation ou sa documentation, utilisez + la liste de diffusion tex-live@tug.org. Mais attention, si la question concerne l’utilisation d’un + programme particulier inclus dans TEX Live, il vaut mieux que vous vous adressiez directement + à la personne ou à la liste de diffusion qui maintient le programme. Il suffit souvent d’ajouter + l’option --help lors de l’exécution du programme pour trouver à qui adresser le rapport. +
+

L’autre aspect du sujet concerne l’aide à apporter aux personnes soumettant des questions. Les forums +comp.text.tex, fr.comp.text.tex ainsi que les listes de diffusion texhax et gut sont ouverts à tous, aussi +n’hésitez pas à vous y joindre, à commencer la lecture et à fournir de l’aide là où cela vous est +possible. +

+

2 Structure de TEX Collection

+

Nous décrivons ici le contenu de TEX Collection qui est un sur-ensemble de TEX Live. +

+

2.1 TEX Collection : TEX Live, proTEXt, MacTEX

+

Le DVD TEX Collection contient les éléments suivants : +

+

+TEX Live
– un système TEX complet à installer. Sa page web est http://tug.org/texlive/. +
+MacTEX
– un système TEX pour Mac OS X, qui ajoute à TEX Live un installateur spécifique + à Mac OS X et quelques applications propres au système Mac. Le site de MacTEX est + http://tug.org/mactex/. + + +
+proTEXt
– une extension du système MiKTEX pour Windows qui en facilite l’installation et ajoute + quelques outils. Cette distribution est totalement indépendante de TEX Live, elle nécessite un + mode d’installation spécifique. Le site de proTEXt est http://tug.org/protext. +
+CTAN
– une image du site d’archives CTAN. +
+texmf-extra
– un répertoire contenant quelques extensions supplémentaires. +
+

Les droits d’utilisation des fichiers présents dans CTAN, proTEXt et texmf-extra diffèrent de ceux de TEX +Live, pensez à lire les licences si vous envisagez de modifier ou de redistribuer certains de ces +fichiers. +

+

2.2 Répertoires situés à la racine de TEX Live

+

Voici une petite liste des répertoires situés à la racine d’une installation TEX Live avec une courte +description. +

+

+ bin
+

– programmes de la famille TEX, rangés dans des sous-répertoires selon les plates-formes. +

+ readme-*.dir
+

– une brève introduction et quelques liens utiles pour TEX Live, dans divers langages, sous forme + de pages HTML ou de texte brut. +

+ source
+

– le code source de tous les programmes, dont les principaux programmes TEX basés sur Web2C. +

+ texmf
+

– répertoire contenant les programmes et leur documentation ; ne contient ni les formats ni les + extensions (la variable TEXMFMAIN de la section suivante pointe sur ce répertoire). +

+ texmf-dist
+

– répertoire principal où se trouvent les extensions, les fontes, etc., avec leur documentation (la + variable TEXMFDIST de la section suivante pointe sur ce répertoire). +

+ tlpkg
+

– scripts et programmes d’installation, et éléments spécifiques pour Windows.

+

On trouve également, au même niveau que les répertoires mentionnés ci-dessus, les scripts d’installation et le +fichier README principal en anglais (disponible en différentes langues dans les répertoires readme-*.dir +susmentionnés). +

Concernant la documentation, le fichier doc.html, qui contient une liste exhaustive de liens vers les fichiers de +documentation, peut être bien utile. La documentation des programmes (manuels, pages de man, fichiers info) +se trouve dans texmf/doc. Celle des autres paquets et des formats est dans texmf-dist/doc. +Vous pouvez utiliser le programme texdoc pour trouver chaque fichier de documentation, où qu’il +soit. +

La documentation de TEX Live proprement dite (que vous consultez actuellement) est disponible dans le +répertoire texmf/doc/texlive en plusieurs langues, +

+

+

2.3 Description des arborescences « texmf » de TEX Live

+

Nous donnons ici la liste des variables prédéfinies qui contiennent les noms des différentes arborescences de +type « texmf », l’usage qui en est fait, et leurs valeurs par défaut dans TEX Live. La commande tlmgr conf +montre les valeurs de ces variables, ce qui permet de savoir où se trouvent ces différentes arborescences dans +une installation donnée. +

Notez bien que toutes ces arborescences, y compris les arborescences personnelles, doivent suivre la structure +standard des répertoires de TEX (TDS : http://tug.org/tds) avec sa pléthore de sous-répertoires, +ou les fichiers ne seront pas pris en compte. La section 3.5.2 page 41 donne plus de détails à ce +sujet. +

+

+ TEXMFMAIN
+

– contient les éléments essentiels du système, comme les fichiers de configuration, des scripts + utilitaires, et la documentation des programmes. +

+ TEXMFDIST
+

– contient les fichiers de macros (Plain, LATEX, ConTEXt, etc.), les fontes, etc. Rien ne devrait + être ajouté, modifié ni supprimé manuellement dans cette arborescence. +

+ TEXMFLOCAL
+

– c’est là que l’administrateur de la machine doit placer les classes et extensions locales, les fontes + non disponibles dans TEX Live, etc. +

+ TEXMFHOME
+

– contient les fichiers personnels (extensions, classes, fontes) de l’utilisateur ; ce répertoire est + installé automatiquement dans le répertoire personnel de l’utilisateur. +

+ TEXMFCONFIG
+

– c’est là que les scripts texconfig updmap et fmtutil recherchent leurs fichiers de configuration + (personnelles) en priorité. +

+ TEXMFSYSCONFIG
+

– c’est là que les scripts texconfig-sys, updmap-sys et fmtutil-sys recherchent leurs fichiers de + configuration (globaux) en priorité. +

+ TEXMFVAR
+

– c’est là que les scripts texconfig, updmap et fmtutil rangent les (versions personnelles de) données + générées, comme les formats et les fichiers .map. +

+ TEXMFSYSVAR
+

– c’est là que les scripts texconfig-sys, updmap-sys et fmtutil-sys rangent les (versions globales des) + données générées, comme les formats et les fichiers .map. + + +

+ TEXMFCACHE
+

– arborescence(s) utilisée(s) par ConTEXt MkIV pour stocker des (versions de cache de) fichiers + de travails.

+

La structure de l’arborescence TEX Live est par défaut la suivante : +

+racine multi-utilisateur
(par exemple /usr/local/texlive, D:\texlive,...) qui contient éventuellement + plusieurs distributions : +
+ 2011
+

– la distribution précédente, +

+ 2012
+

– la distribution actuelle, +

+ bin
+

  +

+ i386-linux
+

– exécutables Linux, +

+ ...
+

+

+ universal-darwin
+

– exécutables Mac OS X, +

+ win32
+

– exécutables Windows,

+
+ texmf       
+

– correspond à TEXMFMAIN, +

+ texmf-dist  
+

– correspond à TEXMFDIST, +

+ texmf-var   
+

– correspond à TEXMFSYSVAR, +

+ texmf-config
+

– correspond à TEXMFSYSCONFIG,

+
+ texmf-local
+

– correspond à TEXMFLOCAL, normalement commun à plusieurs distributions TEX Live (2007, 2008, + etc.),

+
+répertoire personnel de l’utilisateur
$HOME ou %USERPROFILE% : +
+ .texlive2011
+

– fichiers propres à l’utilisateur générés automatiquement par la distribution TEX Live + précédente, +

+ .texlive2012
+

– fichiers propres à l’utilisateur générés automatiquement par la distribution TEX Live + actuelle, + + +

+ texmf-var   
+

– correspond à TEXMFVAR, TEXMFCACHE, +

+ texmf-config
+

– correspond à TEXMFCONFIG,

+
+ texmf
+

– correspond à TEXMFHOME, répertoire regroupant tous les répertoires de macros personnelles : + texmf/tex/latex par exemple pour les fichiers de macros LATEX, etc.

+
+

+

2.4 Les extensions de TEX

+

Le programme TEX original de Knuth est figé, sauf corrections de bugs, rares. C’est toujours le programme +tex présent dans TEX Live, et ceci ne changera pas autant dans un futur prévisible. TEX Live contient +plusieurs variantes étendues de TEX. +

+

+e-TEX
ajoute un jeu de nouvelles primitives et les extensions TEX--XE T pour l’écriture de droite à + gauche ; e-TEX est, en mode normal, 100% compatible avec TEX standard. Pour plus de détails + consulter le fichier texmf-dist/doc/etex/base/etex_man.pdf du DVD. +
+pdfTEX
inclut les extensions e-TEX et produit, au choix, des fichiers au format Acrobat PDF + ou au format DVI ; il inclut aussi de nombreuses extensions indépendantes du format + de sortie. C’est le moteur de base sur lequel sont construits tous les formats autres + que plainTEX, comme etex, latex et pdflatex. Son site web est http://www.pdftex.org/. + Le manuel d’utilisation se trouve sur le DVD dans texmf/doc/pdftex/manual/. Le fichier + texmf/doc/pdftex/pdftex/manual/samplepdf/samplepdf.tex donne des exemples d’utilisation. +
+LuaTEX
est le successeur de pdfTEX avec lequel il reste en grande partie (mais pas totalement) + compatible. Ses possibilités sont aussi censées être un sur-ensemble de celles d’Aleph (voir + ci-dessous), bien qu’il ne soit pas prévu pour être techniquement compatible. LuaTEX inclut le + langage de script Lua (voir http://www.lua.org/) qui apporte des solutions élégantes à beaucoup + de problèmes épineux en TEX pur. La commande texlua fonctionne comme un interpréteur Lua + indépendant, et est déjà utilisée en tant que telle dans TEX Live. Voir http://www.luatex.org/ + et texmf-dist/doc/luatex/luatexref-t.pdf. +
+XeTEX
ajoute la possibilité d’utiliser en entrée le codage Unicode et en sortie les fontes + OpenType et les fontes système de la machine, ceci grâce à des bibliothèques externes : voir + http://tug.org/xetex/. +
+Omega (Omega)
fonctionne en utilisant Unicode et des caractères 16 bits, ce qui lui permet de + travailler directement et simultanément avec presque toutes les écritures du monde. L’extension + supporte aussi le chargement dynamique d’OTP (Omega Translation Processes) qui permet à + l’utilisateur d’appliquer sur des flux d’entrée quelconques des transformations complexes qu’il + aura lui-même définies. TEX Live n’inclut plus Omega en tant que programme séparé ; seul Alpeh + est fourni. +
+Aleph
combine les fonctionnalités de Omega et de e-TEX ; voir texmf-dist/doc/aleph/base. +
+ + +

+

2.5 Quelques autres programmes intéressants dans TEX Live

+

Voici quelques autres programmes couramment utilisés et présents dans TEX Live : +

+

+ bibtex, bibtex8
+

– traitement des bibliographies. +

+ makeindex, xindy
+

– traitement des index. +

+ dvips
+

– conversion DVI vers PostScript. +

+ xdvi
+

– visualisation DVI pour le système X Window. +

+ dvilj
+

– pilote DVI pour les imprimantes HP LaserJet. +

+ dviconcat, dviselect
+

– couper/Coller de pages à partir de fichiers DVI. +

+ dvipdfmx
+

– conversion DVI vers PDF, une alternative à pdfTEX (mentionné ci-dessus) pour produire des + fichiers PDF. +

+ psselect, psnup, ...
+

– utilitaires PostScript. +

+ pdfjam, pdfjoin, ...
+

– utilitaires PDF. +

+ texexec, texmfstart
+

– processeurs ConTEXt et PDF. +

+ tex4ht
+

– conversion TEX vers HTML et XML. +

+

+

2.6 Fontes incluses dans TEX Live

+

La distribution TEX Live contient un grand nombre de fontes vectorielles de haute qualité : voir +http://tug.org/fonts et texmf-dist/doc/fonts/free-math-fonts-survey. +

+

3 Installation

+ + +

+

3.1 Démarrage de l’installation

+

La première chose à faire est de récupérer le DVD TEX Collection ou de télécharger le programme +d’installation par le réseau. Le programme d’installation s’appelle install-tl pour Unix et install-tl.bat +pour Windows. La page http://tug.org/texlive/acquire.html donne plus d’informations sur les différentes +façons d’obtenir le logiciel. +

+

+Installeur réseau
– à télécharger sur CTAN + dans systems/texlive/tlnet ; l’url http://mirror.ctan.org/systems/texlive/tlnet vous + redirigera automatiquement vers le serveur d’archive le plus proche de chez vous. Deux versions + sont disponibles, install-tl.zip utilisable sous Unix et Windows, et install-unx.tar.gz pour + Unix seulement (y compris Mac OS X). Après décompression de l’un de ces deux fichiers, les + scripts install-tl et install-tl.bat se trouveront dans le sous-répertoire install-tl. +
+DVD TEX Collection
– aller dans son répertoire texlive. Sous Windows, l’installation démarre + en principe automatiquement quand vous insérerez le DVD, sinon, il faudra exécuter le + script d’installation install-tl ou install-tl.bat. Le DVD TEX Collection est distribué + gratuitement aux membres des groupes d’utilisateurs de TEX (Gutenberg par exemple en France, + voir la liste des groupes sur http://tug.org/usergroups.html). Il est également possible de + l’acheter séparément (http://tug.org/store) ou de graver une image ISO téléchargée, voire de + la monter directement, sur la plupart des systèmes. Après avoir installé depuis le DVD, si vous + voulez accéder aux mises à jour en continu depuis Internet, consultez la section 3.4.3.
+

Le même programme d’installation est utilisé quelle que soit la source d’installation. La différence la plus +visible entre ces deux modes et qu’avec l’installation par le réseau, vous obtenez les version courantes des +différents paquets, contrairement au DVD (ou image ISO) qui n’est pas mis à jour entre deux versions +majeures. +

Les sections suivantes expliquent plus en détails le fonctionnement de l’installateur. +

+

3.1.1 Installation sous Unix
+

Dans ce qui suit l’invite du shell est notée > ; les commandes de l’utilisateur sont en gras. Le programme +install-tl est un script Perl ; la façon la plus simple de le démarrer sur un système Unix est la suivante. +

+

+> cd /chemin/de/installateur +
> perl install-tl +
+
(Vous pouvez aussi invoquer perl /chemin/de/installateur/install-tl ou ./install-tl si le +fichier est toujours exécutable, etc. ; nous ne répéterons plus toutes ces variantes.) Il est possible +que vous deviez agrandir la fenêtre de votre terminal pour voir le texte complet de l’installateur +(figure 1). +

Pour travailler en mode graphique expert (figure 2 – attention, le module Perl/TK doit être disponible, avec le +support de XFT, ce qui est en général le cas sous GNU/Linux, mais pas nécessairement sous d’autres +systèmes) :

+

+> cd /chemin/de/installeur +
> ./install-tl -gui + + +
+
+

La liste complète des options est donnée par

+

+> perl install-tl -help +
+
+

Attention : le matériel installé doit normalement être accessible à tous les utilisateurs de la machine ; si celui +qui installe n’est pas root, il devra s’assurer que son umask est adapté, par exemple umask 022 ou umask 002. +Consulter la documentation système pour plus de précisions. +

Remarques particulières pour Cygwin : contrairement aux autres système compatibles Unix, Cygwin ne +comprend pas par défaut tous les programmes requis pour faire fonctionner l’installateur TEX Live. Voir la +section 3.1.4 pour plus de détails. +

+

3.1.2 Installation sous Mac OS X
+

Une distribution spécifique, MacTEX (http://tug.org/mactex), a été mise au point pour Mac OS X. Nous +recommandons d’utiliser son installateur natif, plutôt que d’installer la distribution TEX Live en suivant la +procédure indiquée pour Unix. En effet, MacTEX comprend des ajustements spécifiques pour le système +Mac OS X et facilite la cohabitation entre plusieurs distributions TEX (MacTEX, Fink, MacPorts, +etc.). +

MacTEX est fortement basée sur TEX Live et les arborescences principales sont en tous points identiques. +Quelques répertoires contenant de la documentation et des applications spécifiques au Mac sont +ajoutés. +

+

3.1.3 Installation sous Windows
+

Si vous utilisez l’installeur réseau ou si l’insertion du DVD ne lance pas l’installation automatiquement, +double-cliquez sur install-tl.bat. Pour disposer de plus d’options, par exemple pour sélectionner +des collections de paquets spécifiques au lieu de faire une installation complète, utilisez plutôt +install-tl-advanced.bat. +

Il est également possible de travailler en ligne de commande ; dans ce qui suit l’invite du shell +est notée >, les commandes de l’utilisateur sont notées en gras. Voici les commandes à lancer : +

+

+> install-tl +
+
à condition d’être dans le répertoire du script d’installation, sinon
+

+> D:\texlive\install-tl +
+
D : désigne le lecteur de DVD où se trouve la collection TEX. La figure 3 montre l’installateur en mode +magique, qui est le mode par défaut pour Windows. +

Pour travailler en mode texte :

+ + +

+> install-tl -no-gui +
+
La liste complète des options est donnée par
+

+> install-tl -help +
+
+


+ + + + + +
  Installing TeX Live 2012 from: ...
  Platform: i386-linux => ’Intel x86 with GNU/Linux’
  Distribution: inst (compressed) +
  ...
   Detected platform: Intel x86 with GNU/Linux
  
   <B> platforms: 1 out of 19
  
   <S> installation scheme (scheme-full) +
       84 collections out of 85, disk space required: 3091 MB
  
   Customizing installation scheme: +
     <C> standard collections
     <L> language collections
  
   <D> directories:
     TEXDIR (the main TeX directory): +
       /usr/local/texlive/2012
     ...
  
   <O> options:
     [ ] use letter size instead of A4 by default
     ...
   +
   <V> set up for portable installation
  
  Actions:
   <I> start installation to hard disk
   <H> help
   <Q> quit
+
Figure 1: Écran principal de l’installateur en mode texte (GNU/Linux)
+ + +


+


+ + + + + + +

pict +

Figure 2: Installateur graphique en mode expert (GNU/Linux)
+ + +


+


+ + + + + + +

pict +

Figure 3: Installateur graphique en mode expert (Windows)
+ + +


+

+

3.1.4 Installation sous Cygwin
+

L’installateur TEX Live fonctionne uniquement sous Cygwin 1.7. Avant de commencer l’installation, utilisez le +programme setup.exe de Cygwin pour installer les paquets perl et wget si ce n’est déjà fait. Il est également +recommandé d’installer les paquets suivants : +

    +
  • fontconfig, utilisé par XeTEX ; +
  • +
  • ghostscript, nécessaire pour divers utilitaires ; +
  • +
  • libXaw7, utilisé par xdvi ; +
  • +
  • ncurses, qui fournit la commande clear utilisée par l’installateur.
+

+

3.1.5 Installation en mode texte
+

La figure 1 présente l’écran principal de configuration en mode texte sous Unix/Linux, où c’est le mode par +défaut. +

Il s’agit d’un installateur en mode ligne de commande, il n’y a pas de notion de curseur ; par exemple, vous ne +pouvez pas naviguer entre les cases à cocher et les champs d’entrée avec la touche tabulation. Tapez une des +lettres proposées (en respectant la casse) suivie de « entrée » (retour-chariot), l’écran se mettra +automatiquement à jour. +

L’interface est volontairement rudimentaire afin de permettre son utilisation sur le plus grand nombre possible +de systèmes même avec des versions très dépouillées de Perl. +

+

3.1.6 Installation en mode graphique-expert
+

La figure 2 page 20 présente l’écran principal de configuration en mode graphique sous GNU/Linux. À part +l’utilisation de boutons et menus, cet installateur ne diffère pas beaucoup de l’installateur en mode +texte. +

Ce mode peut être demandé explicitement avec

+

+> install-tl -gui=perltk +
+
+

+

3.1.7 L’installation en mode magique
+

Sous Windows, l’installateur démarre par défaut dans le mode le plus simple que nous avons pu concevoir, le +mode « magique » (figure 3. Dans ce mode, tout est installé et presque aucune question n’est posée. +Par contre, si vous souhaitez personnaliser votre installation, vous devriez utiliser un des autres +modes. +

Ce mode peut être demandé explicitement avec

+ + +

+> install-tl -gui=wizard +
+
+

+

3.2 Choix des options d’installation

+

Les options proposées sont censées être assez explicites, voici cependant quelques précisions. +

+

3.2.1 Choix des binaires (Unix seulement)
+


+ + + + + +
  Available platforms:
  =============================================================================== +
     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
+
Figure 4: Menu pour le choix des binaires
+ + +


+

La figure 4 présente les choix de binaires possibles en mode texte. Seuls les binaires correspondant à +l’architecture détectée seront installés par défaut. Rien n’empêche d’en sélectionner d’autres si nécessaire, +ce qui peut être intéressant dans le cas de machines en réseau ou sur des systèmes en « double +boot ». +

3.2.2 Sélection de ce qui va être installé
+


+ + + + + +
  Select scheme:
  ===============================================================================
   a [X] full scheme (everything) +
   b [ ] medium scheme (small + more packages and languages)
   c [ ] small scheme (basic + xetex, metapost, a few languages) +
   d [ ] basic scheme (plain and latex)
   e [ ] minimal scheme (plain only)
   f [ ] ConTeXt scheme
   g [ ] GUST TeX Live scheme +
   h [ ] teTeX scheme (more than medium, but nowhere near full)
   i [ ] XML scheme
   j [ ] custom selection of collections
+
Figure 5: Menu « Scheme »
+ + +


+

Dans le menu « Scheme » (voir figure 5) on choisit un schéma général de configuration qui détermine un +ensemble de collections à installer. Le schéma par défaut (full) consiste à tout installer, ce qui est +recommandé. Vous pouvez également choisir basic pour un petit système, minimal pour des tests +uniquement, medium ou teTeX pour quelque chose d’intermédiaire. Il existe aussi des schémas spécialisés ou +spécifiques à un pays. +


+ + + + + + +

pict +

Figure 6: Menu « Collections » (Linux)
+ + +


+

Une fois choisi le schéma (scheme) général, il est possible d’ajouter ou de supprimer des composants, appelés +ici collections. Il y a deux types de collections : les « Standard Collections » qui concernent les fontes, les +extensions, les formats, etc. (voir figure 6) et les « Language Collections » qui permettent de préciser la liste +des langues qui seront utilisables sur le système (indispensable !). Attention, si vous travaillez en mode texte, +dans ces menus la casse des lettres est importante. En mode graphique, il suffit de cocher ou de décocher les +cases en cliquant. +

Il est possible de raffiner encore les choix mais il faudra alors utiliser le gestionnaire de paquets TeX Live +(tlmgr) ultérieurement, voir la section 6. +

3.2.3 Répertoires d’installation
+

L’arrangement par défaut des différents répertoire est donné à la section 2.3, page 9. La racine +de l’installation principale, TEXDIR, vaut par défaut /usr/local/texlive/2012 sous Unix et +%SystemDrive%\texlive\2012 sous Windows. +

Il peut être nécessaire de changer la valeur de TEXDIR lorsque celui qui procède à l’installation n’a pas les +droits d’écriture sur le répertoire TEXDIR (l’installation n’est pas réservée au superutilisateur root ou +« Administrateur », il suffit d’avoir les droits en écriture sur le répertoire TEXDIR). +

Un autre choix raisonnable est d’installer TEX Live dans votre répertoire personnel, surtout si vous prévoyez +d’en être le seul utilisateur. Vous pouvez utiliser ~ à cet effet, par exemple ~/texlive/2012. +

Dans tous les cas, il est recommandé d’inclure l’année dans le chemin afin de pouvoir conserver plusieurs +versions de TEX Live en parallèle. Rien n’empêche d’ajouter un lien symbolique (par exemple +/usr/local/texlive-current) qui pointe sur la version actuellement utilisée. Ceci facilite les basculements +d’une version à une autre. +

Le répertoire TEXMFHOME est destiné à regrouper les répertoires de macros personnelles. Par défaut, son +emplacement est ~/texmf ; ici, le ~ est préservé dans les fichiers de configurations crées, de façon à être +remplacé dynamiquement pour chaque utilisateur de TEX, par la valeur des variables d’environnement \$HOME +sous Unix et %USERPROFILE% sous Windows. Attention, comme tous les autres répertoires, TEXMFHOME doit +respecter la structure TDS ou les fichier ne seront pas trouvés. +

Enfin, TEXMFVAR est l’emplacement où sont stockées les fichiers de cache spécifiques à chaque +utilisateur. TEXMFCACHE est utilisé par ConTEXt MkIV pour le même but (voir la section 3.5.1 +page 40). +

+

3.2.4 Options
+


+ + + + + +
  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:
   <Y> after installation, get package updates from CTAN: [X]
+
Figure 7: menu « Options » (Unix)
+ + +


+

La figure 7 présente le menu « Options » en mode texte, sur lesquelles voici quelques précisions. +

+use letter size instead of A4 by default
– la taille du papier par défaut pour des outils comme + dvips, pdftex, xdvi. Cette option n’a pas d’influence sur les tailles par défaut utilisées par des jeux + de macros comme les classes standard de LATEX ou ses modules, qui seront prioritaires. Dans + tous les cas, il est possible et recommandé de préciser la taille de papier souhaitée au sein de + chaque document. +
+execution of restricted list of programs
– à compter de TEX Live 2010, l’exécutions de certains + programmes externes depuis TEX est autorisée par défaut. La (très courte) liste de programmes + autorisés se trouve dans le fichier texmf.cnf. Voir la section 10.1.7 pour plus de détails. +
+create format files
– création de tous les formats à l’installation. Bien que cette opération prenne un + peu de temps, il est conseillé de ne pas la supprimer, sinon les formats seront créés au coup par + coup dans les répertoires personnels des utilisateurs (sous TEXMFVAR). Les formats personnels ainsi + créés ne bénéficieront pas des mises à jour éventuelles effectuées ultérieurement sur l’installation + TEX Live, ce qui peut engendrer des incompatibilités. +
+install font/macro . . . tree
– ces options permettent de ne pas installer les fichiers de documentation + et les sources présents dans la plupart des paquets. Il est recommandé de conserver la valeur par + défaut. +
+create symlinks in standard directories
– cette option (pour Unix seulement) permet d’éviter + d’avoir à modifier les variables d’environnement PATH, MANPATH et INFOPATH après l’installation. + Elle nécessite les droits d’écriture dans les répertoires cibles. Il est fortement recommandé de ne + pas utiliser cette option si un système TEX est déjà installé par votre système d’exploitation. + Elle est destinée uniquement à permettre l’accès à TEX depuis des répertoires standard comme + /usr/local/bin sur les systèmes où aucune autre installation TEX n’est présente. +
+after installation . . . CTAN
– lors d’une installation depuis le DVD, cette option est activés par + défaut, car on souhaite généralement bénéficier des mises à jour de paquets depuis la partie du + CTAN les hébergeant, qui est mise à jour toute l’année. La seule raison probable de la désactiver + est si vous installez seulement un sous-ensemble de TEX Live depuis le DVD et prévoyez de la + compléter ultérieurement, toujours depuis le DVD. Dans tous les cas, le dépôt de paquets utilisé + par l’installateur et celui utilisé après installation peuvent être choisis de façon indépendante ; + voir les sections 3.3.1 et 3.4.3.
+

Lorsque vous êtes satisfait des réglages faits, il vous reste à taper I pour lancer le processus d’installation. +Lorsque celui-ci sera terminé, sautez à la section 3.4 pour voir s’il y a d’autres choses à faire. +

3.3 Options de install-tl en ligne de commande

+

Tapez

+

+> install-tl -help +
+
pour obtenir la liste de toutes les options disponibles. Vous pouvez utiliser - ou -- pour introduire le noms des +options. Voici les plus courantes : +

+

+ -gui
+ + +

 : exécution en mode graphique (si possible). Ceci + nécessite le module Perl/Tk (http://tug.org/texlive/distro.html#perltk) avec support de + XFT ; si Perl/Tk n’est pas disponible, l’installation se poursuit en mode texte. +

+ -no-gui
+

 : exécution en mode texte, même sous Windows. +

+ -lang LL
+

 : langue utilisé par l’interface de l’installateur, spécifiée par son code standard (généralement + sur deux lettres). Le programme s’efforce de déterminer automatiquement la langue à utiliser et + se rabat sur l’anglais en cas d’échec. Vous pouvez obtenir la liste des langues disponibles avec + install-tl –help. +

+

+ -in-place
+

 : si vous possédez déjà une copie de TEX Live acquise par rsync, svn ou un autre moyen + (voir http://tug.org/texlive/acquire-mirror.html), cette option vous permet de l’utiliser + directement, en l’état, de de procéder uniquement aux opération post-installation. Attention, ceci + peut écraser le fichier tlpkg/texlive.tlpdb, c’est à vous de le sauvegarder auparavant si vous + le désirez. Aussi, une éventuelle déinstallation de paquet est à faire manuellement. N’utilisez pas + cette option à moins de savoir ce que vous faites. Cette option ne peut pas être activée depuis + l’interface de l’installateur. +

+ -portable
+

 : créer une installation utilisable de façon portable sur une clé USB ou un DVD ; peut aussi être + activé depuis l’interface textuelle de l’installateur avec la commande V, ainsi que depuis l’interface + graphique. Voir la section 5 pour les détails. +

+ -profile fichier
+

 : charger le profil d’installation depuis le fichier et installer sans interaction avec l’utilisateur. À + chaque exécution, le script d’installation écrit un compte-rendu dans le fichier texlive.profile + du sous-répertoire tlpkg de votre installation TEX Live. Ce fichier peut être donné en argument + pour refaire exactement la même installation sur une machine différente, par exemple. Sinon, vous + pouvez utiliser un profil personnalisé ; la façon la plus facile de le créer est de partir d’un profil + généré et de modifier les valeurs, ou d’utiliser un fichier vide pour utiliser toutes les valeurs par + défaut. +

+ -repository url-ou-répertoire
+

 : choix d’une source où récupérer le matériel à installer, voir ci-dessous.

+

+

3.3.1 L’option -repository
+

L’emplacement par défaut du dépôt de paquets en ligne est un miroir du CTAN choisi automatiquement par le +service de redirection http://mirror.ctan.org/. +

Si vous voulez en utiliser un autre, vous pouvez utiliser l’option -repository avec pour valeur une url +commençant par ftp :, http : ou file :/, ou un chemin vers un répertoire local. (Dans le cas d’une url en +http : ou ftp :, un éventuel caractère « / » à la fin, de même qu’une éventuelle composante tlpkg/ finale, +sont ignorés.) +

Par exemple, vous pouvez choisir un miroir du CTAN en particulier avec un valeur comme +http://ctan.example.org/tex-archive/systems/texlive/tlnet/, en substituant le nom d’un vrai miroir +et le chemine ver l’archive TEX spécifique à la place de ctan.example.org. La liste des miroirs du CTAN est +disponible sur http://ctan.org/mirrors. +

Si l’argument donné est local (un chemin ou une url en file :/) et que les paquets sont présents +à la fois sous forme de fichiers non compressés et d’archives compressées, ces dernières seront +utilisées. + + +

+

3.4 Étapes post-installation

+

Selon les cas quelques opérations supplémentaires peuvent être nécessaires. +

+

3.4.1 Variables d’environnement sous Unix
+

Si vous avez choisi de créer des liens symboliques dans les répertoires standard (voir la section 3.2.4), alors il +est inutile de modifier vos variables d’environnement. Sinon, sur les systèmes Unix, le répertoire contenant les +binaires pour votre plateforme doit être ajouté au PATH. (Sous Windows, l’installateur s’en occupe, il n’y a rien +à faire.) +

À chaque architecture correspond un sous-répertoire de TEXDIR/bin, voir la liste à la figure 4 +27. +

Si vous voulez que votre système trouve les fichiers de documentation concernant TEX Live aux formats man +et Info, il faut également ajuster les variables MANPATH et INFOPATH. Sur certains systèmes, ceci +ne sera pas nécessaire et il suffira de régler le PATH pour que les pages de man et d’Info soient +trouvées. +

Pour les shells dits « Bourne-compatible » tels que bash sous GNU/Linux, le fichier à éditer peut être +\$HOME/.bash_profile ou \$HOME/.profile et les lignes à ajouter sont de la forme suivante : +

+

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

Pour les shells csh ou tcsh, le fichier à éditer est en principe $HOME/.cshrc et les lignes à ajouter sont de la +forme suivante : +

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

Si vous avez déjà des réglages concernant ces variables dans vos fichiers de configurations, il suffit bien sûr d’y +rajouter les répertoires concernant TEX Live. +

+

3.4.2 Variables d’environnement : configuration multi-utilisateur
+

Il est possible d’ajuster les variables PATH, MANPATH et INFOPATH globalement pour tous les utilisateurs présents +et futurs sans avoir à éditer les fichiers personnels de chacun mais les façons de le faire sont trop différentes +d’un système à l’autre pour être présentées ici. +

Voici quelques pistes : pour MANPATH chercher un fichier /etc/manpath.config, s’il est présent lui ajouter des +lignes comme +

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

Pour les deux autres, chercher un fichier/etc/environment, il est éventuellement possible d’y définir les +valeurs des variables d’environnement telles que PATH et INFOPATH. +

Nous créons aussi à l’installation un lien symbolique nommé man dans les répertoires des binaires Unix. +Certains programmes man, comme celui livré en standard sur Mac OS X, l’utilisent pour trouver +automatiquement les pages de man, rendant inutile tout réglage de MANPATH. + + +

+

3.4.3 Mises à jour par Internet après une installation par le DVD
+

Si vous avez installé TEX Live depuis le DVD et souhaitez ensuite accéder aux mises à jour par Internet, il +vous faudra exécuter la commande suivante (après avoir réglé votre PATH si nécessaire, comme expliqué à la +section précédente) : +

+

+> tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet +
+
+

Ceci dit à tlmgr d’utiliser pour les futures mises à jour un miroir du CTAN proche. Ceci est fait par défaut +lors d’une installation depuis le DVD, via l’option décrite dans la section 3.2.4. +

Si vous rencontrez des problèmes avec la sélection automatique du miroir, vous pouvez en sélectionner un en +particulier depuis la liste disponible en http://ctan.org/mirrors. Utilisez le chemin complet vers le répertoir +tlnet pour ce miroir, comme ci-dessus. +

+

3.5 Configuration des fontes pour XeTEX et LuaTEX

+

XeTEX et LuaTEX peuvent utiliser toutes les polices installées au niveau du système et pas seulement +celles des arborescences TEX. Pour cela, ils utilisent des méthodes différentes mais pas tout à fait +indépendantes. +

Sous Windows, les fontes livrées avec TEX Live sont automatiquement rendues utilisables par XeTEX, mais si +vous avez installé le paquet xetex sur un système de type Unix, vous avez besoin de le configurer un peu pour +que XeTEX puisse trouver les fontes installées par TEX Live par leur nom sans être obligé d’utiliser le nom du +fichier. +

Pour faciliter ce réglage, lorsque le paquet xetex est installé, un fichier de configuration adéquat est créé : +TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf. +

Pour permettre à votre système l’accès aux polices TEX Live, si vous avez les privilèges suffisants, vous +pouvez procéder ainsi : +

    +
  1. Copiez le fichier texlive-fontconfig.conf dans /etc/fonts/conf.d/09-texlive.conf. +
  2. +
  3. Exécutez fc-cache -fsv.
+

Si vous n’avez pas les privilèges suffisants pour utiliser la méthode ci-dessus, ou si vous préférez ne rendre les +polices disponibles que pour un utilisateur, vous pouvez procéder comme suit. +

    +
  1. Copiez le fichier texlive-fontconfig.conf vers ~/.fonts.conf, où ~ représente votre répertoire + personnel. +
  2. +
  3. Exécutez fc-cache -fv.
+

Vous pouvez utiliser fc-list pour voir les noms des polices du système. L’incantation fc-list : +family style file spacing (avec ces arguments tels quels) donne en général des informations +utiles. +

+

3.5.1 ConTEXt Mark IV
+

La « vieille » version de ConTEXt (Mark II) ainsi que la « nouvelle » version (Mark IV) devraient fonctionner +directement après l’installation de TEX Live et ne réclamer aucune action particulière tant que vous n’utilisez +que tlmgr pour les mises à jour. + + +

Cependant, comme ConTEXt MkIV n’utilise pas la bibliothèque kpathsea, il faudra mettre à jour +manuellement le cache de fichiers de ConTEXt si jamais vous installez des nouveaux fichiers manuellement +(c’est-à-dire sans utiliser tlmgr). Pour cela, exécutez +

  context --generate
+

après chaque installation manuelle. Les fichiers résultants sont stockés dans TEXMFCACHE, dont la valeur par +défaut sous TEX Live est TEXMFSYSVAR ;TEXMFVAR. +

ConTEXt MkIV lira les fichiers de toutes les arborescences mentionnées dans TEXMFCACHE et les écrira dans le +premier de ces répertoire accessible en écriture. Lors de la lecture, les dernières informations lues sont prises en +compte de façon prioritaire par rapport à celles lues précédemment, dans le cas où certaines données de cache +seraient dupliquées. +

Pour plus d’informations, voir http://wiki.contextgarden.net/Running_Mark_IV. +

+

3.5.2 Ajout de fichiers locaux ou personnels
+

Comme cela a déjà été indiqué à la section 2.3, TEXMFLOCAL (par défaut /usr/local/texlive/texmf-local +ou %SystemDrive%\texlive\texmf-local sous Windows) est la racine de l’arborescence prévue pour +regrouper les fichiers de macros, les fontes et le matériel utilisable par l’ensemble des utilisateurs du système. +D’autre part TEXMFHOME (par défaut \$HOME/texmf (ou %USERPROFILE%\texmf) regroupe le matériel personnel +de chaque utilisateur. +

Dans les deux cas, les fichiers ajoutés doivent être placés, non pas en vrac à la racine de TEXMFLOCAL ou +TEXMFHOME mais dans des sous-répertoires bien choisis (voir http://tug.org/tds ou lire le fichier texmf.cnf). +Par exemple, une classe ou une extension LATEX ne sera trouvée que si elle est dans TEXMFLOCAL/tex/latex +ou TEXMFHOME/tex/latex ou dans un sous-répertoire de ceux-ci. +

Enfin, si les ajouts ont été faits sous TEXMFLOCAL, il y a lieu de régénérer les bases de données ls-R +(commande mktexlsr ou, en mode graphique, bouton « Reinit file database » du gestionnaire de paquets TEX +Live). +

L’emplacement des répertoires TEXMFLOCAL et TEXMFHOME est fixe (il ne change pas d’une version à l’autre de +TEX Live). Leur contenu est pris en compte par toutes les versions de TEX Live aussi est-il préférable de ne +pas changer la valeur des variables TEXMFLOCAL et TEXMFHOME à l’installation. +

Par défaut, chacune de ces variables est définie comme étant un seul répertoire, comme illustré ci-dessus. +Cependant, ceci n’est pas obligatoire. Si vous voulez par exemple changer rapidement de versions +pour des paquets importants vous pouvez maintenir plusieurs arborescences pour votre usage +personne, en spécifiant dans TEXMFHOME une liste de répertoires entre accolades, séparés par des +virgules : + + +

+
    TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir}
+
+

+

La section 8.1.5 décrit plus en détails la façon dont sont traitées de telles listes entre accolades. +

+

3.5.3 Ajout de fontes externes à TEX Live
+

Cette question est malheureusement trop complexe pour être abordée ici. Renoncez-y sauf si vous connaissez +bien les arcanes d’une installation TEX. Vérifiez en premier lieu ce qui existe déjà en libre : voir la +section 2.6. +

Une alternative possible est d’utiliser XeTEX ou LuaTEX (voir section 2.4) qui permettent l’accès aux fontes +disponibles sur le système sans aucune installation supplémentaire. +

Si vous ne pouvez pas y couper, le document essayant au mieux de décrire la procédure est +http://tug.org/fonts/fontinstall.html. Si vous maintenez vos propres associations de fontes (fichiers +.map) localement, la commande tlmgr generate updmap pourrait éventuellement vous être utile ; consultez la +documentation de tlmgr pour les détails. +

+

3.6 Tester l’installation

+

Une fois l’installation de TEX Live terminée, il faut la tester avant de créer des documents ou des fontes. Les +tests doivent être faits par un utilisateur non privilégié (autre que root). +

On donne ici quelques procédures de base pour vérifier que le nouveau système est opérationnel. On les décrit +pour Unix ; pour Mac OS X ou Windows, il vaut mieux tester au travers d’une interface graphique mais les +principes sont les mêmes. +

+

    +
  1. S’assurer en premier lieu que le programme tex fonctionne : +
    +

    + > tex --version +
    TeX 3.1415926 (TeX Live ...) +
    kpathsea version 6.0.1 +
    Copyright ... D.E. Knuth. +
    ...
    +
    +

    Si la réponse est command not found ou si le numéro de version est différent, il est fort probable que + vous n’ayez pas le bon répertoire de binaires dans votre PATH. Voir les informations sur l’environnement + page 39. +

  2. +
  3. Traiter un fichier LATEX simple : +
    +

    + > latex sample2e.tex +
    pdfTeX 3.1415926-... (TeX Live ...) +
    ... +
    Output written on sample2e.dvi (3 pages, 7484 bytes). +
    Transcript written on sample2e.log. + + +
    +
    Si le fichier sample2e.tex ou d’autres ne sont pas trouvés, il y a probablement des interférences avec + vos anciennes variables d’environnement ou fichiers de configuration. Pour analyser en détail votre + problème, vous pouvez demander à TEX de dire exactement ce qu’il cherche et trouve ; voir la + section 8.2.4 page 69. +
  4. +
  5. Prévisualiser les résultats :
    +

    + > xdvi sample2e.dvi    # Unix +
    > dviout sample2e.dvi  # Windows
    +
    Une nouvelle fenêtre doit s’ouvrir et montrer un joli document expliquant les bases de LATEX + (document dont la lecture attentive est recommandée si vous êtes débutant !). Vous devez travailler sous + X pour que xdvi fonctionne. Dans le cas contraire, votre variable d’environnement DISPLAY ne sera pas + correcte et vous obtiendrez l’erreur « Can’t open display ». +
  6. +
  7. Créer un fichier PostScript pour l’imprimer ou l’afficher : +
    +

    + > dvips sample2e.dvi -o sample2e.ps
    +
    +
  8. +
  9. Créer un fichier PDF au lieu de DVI ; cet exemple traite le fichier sample2e.tex et crée directement un + fichier PDF : +
    +

    + > pdflatex sample2e.tex
    +
    +
  10. +
  11. Prévisualiser le fichier PDF : +
    +

    + > gv sample2e.pdf +
    ou +
    > xpdf sample2e.pdf
    +
    +

    Ni gv ni xpdf ne sont inclus dans TEX Live, aussi devez-vous les installer séparément si ce n’est déjà fait. + Voir respectivement http://www.gnu.org/software/gv et http://www.foolabs.com/xpdf. Il y a + bien d’autres lecteurs de fichiers PDF ; pour Windows, nous recommandons Sumatra PDF + (http://blog.kowalczyk.info/software/sumatrapdf). +

  12. +
  13. Autres fichiers de tests utiles en plus de sample2e.tex : +

    +

    + small2e.tex
    +

    à compiler avant sample2e si celui-ci pose des problèmes. +

    + testpage.tex
    +

    teste que l’imprimante n’introduit pas de décalages. + + +

    + nfssfont.tex
    +

    imprime des tables des fontes et des tests. +

    + testfont.tex
    +

    aussi pour les tables de fontes mais en (plain)TEX. +

    + story.tex
    +

    le fichier de test de (plain)TEX le plus canonique de tous. Il faut taper « \bye » à l’invite * + après « tex story.tex ».

    +
  14. +
  15. Si vous avez installé le paquet xetex, vous pouvez vérifier s’il a bien accès aux polices du système ainsi +
    +

    + > xetex opentype-info.tex +
    This is XeTeX, Version 3.1415926... +
    ... +
    Output written on opentype-info.pdf (1 page). +
    Transcript written on opentype-info.log.
    +
    (De même pour luatex.) +

    Si vous obtenez un message d’erreur disant « « Invalid fontname ‘Latin Modern Roman/ICU’... » », + alors vous devez revoir la configuration de votre système pour que XeTEX puisse accéder aux polices + livrées avec TEX Live comme indiqué en section 3.5. +

+

+

3.7 Liens vers d’autres logiciels téléchargeables

+

Si vous êtes débutant ou si vous avez besoin d’aide pour réaliser des documents TEX ou LATEX, n’hésitez +pas à consulter http://tug.org/begin.html. +

Voici quelques liens vers d’autres outils qui peuvent être utiles à installer. +

+Ghostscript
http://www.cs.wisc.edu/~ghost/ +
+Perl
http://www.perl.org/ avec des paquets supplémentaires du CPAN, http://www.cpan.org/ +
+ImageMagick
http://www.imagemagick.com pour les conversions entre formats graphiques, + notamment. +
+NetPBM
http://netpbm.sourceforge.net/ également pour les graphiques. +
+Éditeurs orientés TEX
Le choix est large, et est en bonne partie une question de goût personnel. Voici + une sélection classée par ordre alphabétique (dont certains ne sont disponibles que sous + Windows). + +
+

Voir http://tug.org/interest.html pour une liste plus complète de programmes. +

+

4 Installations spécialisées

+

Les sections précédentes décrivaient le processus pour installation « normale ». Celle-ci concerne des cas plus +spécialisés. +

+

4.1 Installation partagée entre plusieurs utilisateurs ou machines

+

TEX Live a été conçue pour pouvoir être partagée par plusieurs utilisateurs sur le même système et/ou +différents systèmes sur un réseau. Avec la disposition standard des répertoires, aucun chemin n’est codé en +dur : les emplacements des fichiers dont TEX Live a besoin sont trouvés automatiquement à partir des +emplacements des programmes. Vous pouvez le constater dans le fichier de configuration principal +\$TEXMFMAIN/web2c/texmf.cnf, qui contient des lignes comme +

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

Ceci signifie qu’il suffit aux utilisateurs d’ajouter à leur PATH le chemin des exécutables pour leurs +plate-formes, pour obtenir une configuration qui marche. +

Pour la même raison, vous pouvez aussi installer TEX Live localement et ensuite déplacer l’arborescence +complète vers un emplacement réseau. +

Pour Windows, un exemple de script d’installation nommé w32client peut être téléchargé sur +http://tug.org/texlive/w32client.html. Il installe les réglages et les raccourcis pour utiliser un système +TEX Live installé sur un réseau local. Il déclare aussi un désinstallateur w32client, disponible dans la même +archive zip. Consultez la page web pour plus de détails. +

+

5 Installations « portable » de TEX Live

+

L’option -portable de l’installateur (ou la commande V dans l’installateur en mode texte ou l’option +correspondante en mode grapghique) crée une installation de TEX Live entièrement contenue dans une seul + + +répertoire et n’effectue aucune intégration au système. Vous pouvez créer une telle installation directement sur +une clé USB ou la copier sur une clé ultérieurement. +

Pour utiliser TEX depuis cette installation portable, il suffit d’ajouter le bon répertoire de binaires à votre +path pour la session de terminal en cours, comme d’habitude. Sous Windows, vous pouvez double-cliquer sur le +fichier tl-tray-menu à la racine de l’installation pour choisir parmi quelques actions communes, comme dans +cette capture d’écran : + +

pict +

L’entrée « More... » explique comment personnaliser ce menu. +

+

5.1 Installation sur DVD ou image ISO

+

Si vous n’avez pas besoin de mettre à jour ni de modifier votre installation souvent, et/ou que vous désirez +utiliser TEX Live sur plusieurs systèmes, il peut être commode de créer une image ISO de votre installation +TEX Live, pour les raisons suivantes : +

    +
  • il est nettement plus rapide de copier d’une machine à l’autre une image ISO qu’une installation + classique ; +
  • +
  • si vous êtes en multi-boot sur plusieurs systèmes et voulez leur faire partager une même installation + de TEX Live, une image ISO vous isole des idiosyncrasies et limitations des divers systèmes de fichiers + (FAT32, NTFS, HFS+). +
  • +
  • les machines virtuelles peuvent monter une image ISO très simplement.
+

Bien sûr vous pouvez aussi graver votre image ISO sur une DVD, si cela vous est utile. +

Les systèmes GNU/Linux et autres Unix de bureau, y compris Mac OS X, sont capables de monter une image +ISO. À part ce montage, rien de change par rapport à une installation normale sur le disque dur, voir la +section 3.4.1. +

Dans la préparation d’une telle installation, il est préférable d’omettre le sous-répertoire avec le numéro de +l’année, et d’avoir texmf-local au même niveau que les autres arborescences (texmf, texmf-dist, etc.), ce +qui est possible avec les options habituelles de l’installateur. +

Pour une machine Windows physique (et non virtuelle) vous pouvez graver l’ISO sur un DVD. Cependant, il +est peut-être plus rentable pour vous de vous renseigner sur les différentes options libres ou gratuites de +montage d’images ISO. Pour XP, Microsoft propose winxpvirtualcdcontrolpanel. +

Pour l’intégration au système sous Windows, vous pouvez inclure dans l’image le script w32client décrit en +section 4.1 et à l’adresse http://tug.org/texlive/w32client.html ; il fonctionne aussi bien pour une image +ISO que pour une installation partagée par le réseau. +

Sous Mac OS X, TeXshop et TEXworks peuvent utiliser une telle installation si un lien symbolique +/usr/texbin existe et pointe vers le bon répertoire, par exemple + + +

+
  sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin
+
+

+

Remarque historique : TEX Live 2010 a été la première édition à ne pas être distribuée en version « live ». +Cependant, toutes les éditions précédentes exigeaient quelques acrobaties pour être utilisées depuis le DVD ; +en particulier il n’y avait pas moyen de s’en sortir sans devoir régler au moins une variable d’environnement +supplémentaire. Si vous créez votre ISO ou DVD depuis une installation existante ceci n’est plus +nécessaire. +

+

6 Maintenance de l’installation avec tlmgr

+


+ + + + + + +

pict +

Figure 8: tlmgr en mode graphique. La liste des paquets, collections et schémas d’installation +n’apparaît qu’après avoir cliqué sur le bouton « Charger le dépôt par défaut »).
+ + +


+


+ + + + + + +

pict +

Figure 9: tlmgr en mode graphique : options générales
+

pict +

Figure 10: tlmgr en mode graphique : +options de taille du papier
+ + +


+

TEX Live fournit un programme appelé tlmgr pour assurer la maintenance de la distribution après son +installation initiale. Les programmes updmap, fmtutil et texconfig ont été conservés et le seront à l’avenir, mais +tlmgr est désormais considéré comme l’interface standard pour ces opérations. tlmgr permet en +particulier +

    +
  • d’installer, de mettre à jour ou de désinstaller des paquets individuellement, éventuellement en + respectant les dépendances ; +
  • +
  • de rechercher des paquets, d’obtenir leur liste, etc. ; +
  • +
  • de voir la liste des plate-formes binaires et d’en installer ou d’en supprimer ; +
  • +
  • de modifier la configuration, par exemple la taille du papier par défaut, le dépôt de paquets par + défaut (voir la section 3.3.1).
+

6.1 tlmgr en mode graphique

+

On lance tlmgr en mode graphique (figure 8) par la commande

+

+> tlmgr -gui +
+
ou sous Windows dans le menu « Démarrer » : Démarrer Programmes TeX Live +2012 TeX Live Manager. La première chose à faire est de cliquer sur le bouton +« Load 2 » +ce qui affiche la liste des collections, extensions, etc. (à condition bien sûr qu’il soit possible de se connecter au +dépôt utilisé). +

Les figures 9 et 10 montrent les écrans de réglage des options générales et de celles concernant la taille du +papier. +

+

6.2 Exemples d’utilisation de tlmgr en ligne de commande

+

Après l’installation initiale, vous pouvez mettre à jour votre système en utilisant : +

+

+> tlmgr update -all +
+
Si cela vous inquiète, vous pouvez commencer par
+

+> tlmgr update -all -dry-run +
+
ou (moins bavard) :
+

+> tlmgr update -list + + +
+
+

L’exemple suivant, plus complexe, ajoute une collection, pour le moteur XeTEX, depuis un dépôt +local. +

+

+> tlmgr -repository /local/mirror/tlnet install collection-xetex +
+
La sortie, abrégée, ressemble à ceci : +
  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/2012/texmf/ls-R...
  ...
  running fmtutil-sys --missing
  ... +
  Transcript written on xelatex.log.
  fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed.
+

Comme vous pouvez le constater, tlmgr prend en compte les dépendances et effectue automatiquement toutes +les opérations nécessaires, comme la mise à jour des bases de données de fichiers et la génération de formats +(ici un nouveau format a été créé pour XeTEX). +

La commande suivante permet d’obtenir la description d’un paquet.

+

+> tlmgr show collection-latexextra +
+
Elle retourne par exemple : +
  package:    collection-latexextra
  category:   Collection
  shortdesc:  LaTeX supplementary packages +
  longdesc:   A large collection of add-on packages for LaTeX.
  installed:  Yes
  revision:   14675
+

Enfin, le plus important, pour la documentation complète, consultez http://tug.org/texlive/tlmgr.html, +ou tapez :

+

+> tlmgr help +
+
+

+

7 Notes concernant Windows

+

+

7.1 Fonctionnalités supplémentaires à l’installation

+

Sous Windows le programme d’installation effectue quelques tâches supplémentaires : +

+Menus et raccourcis
– un sous-menu « TEX Live » est ajouté au menu « Démarrer », contenant des + entrées pour quelques programmes graphiques comme tlmgr, texdoctk, PS_View (psv) et pour de + la documentation. +
+Associations de fichiers
– si cette option n’est pas désactivée, TeXworks, Dviout et PS_view + deviennent le programme par défaut pour ouvrir leurs types de fichiers respectifs, ou, s’il y a déjà + un tel programme, sont ajoutés à la liste « Ouvrir avec... » du menu contextuel. + + +
+Convertisseur bitmap vers eps
– une entrée bitmap2eps est ajoutée à l’entrée « Ouvrir avec... » du + menu contextuel pour de nombreux formats d’images bitmap. Bitmap2eps est un script simple qui + utilise sam2p ou bmeps pour faire le vrai travail. +
+Ajustement automatique du path
– aucune intervention manuelle n’est nécessaire. +
+Désinstallation
– une entrée est ajoutée pour TEX Live dans le menu « Ajout et suppression de + programmes ». L’onglet « Uninstall » de tlmgr renvoie à ceci.
+

+

7.2 Programmes supplémentaires

+

Pour être complète, une installation TEX Live a besoin de quelques utilitaires qui ne sont pas présents en +général sur les machines Windows. TEX Live comprend donc les outils suivants. +

+Perl et Ghostscript
TEX Live installe des copies « cachées » de ces programmes : ce sont des + versions spécifiques adaptées à TEX Live, elles sont invisibles hors de TEX Live et n’interfèrent + donc en aucune façon avec d’autres versions éventuellement présentes sur la machine. +
+PS_View
– nouveau lecteur PostScript et PDF sous licence libre, voir figure 11. +


pict +
Figure 11: PS_View : de très forts grossissements sont possibles !
+


+
+dviout
– lecteur de DVI. La première fois que vous visualisez un fichier avec dviout, il va créer des polices, car + les versions des fontes pour écran ne sont pas installées. Au bout d’un moment, la plupart des polices que + vous utilisez auront été créées, et vous ne verrez plus que rarement la fenêtre de création des fontes. + Vous pouvez trouver plus d’informations dans le menu d’aide du logiciel (dont la lecture est + recommandée). +
+TEXworks
TEXworks est un éditeur conçu pour les fichiers TEX, avec un lecteur de PDF intégré. +
+Outils en ligne de commande
– des versions pour Windows de programmes Unix sont installées, en + particulier gzip, chktex, jpeg2ps, unzip, wget et quelques utilitaires de la suite xpdf (pdfinfo, pdffonts, ...). + Le lectuer xpdf lui-même n’est pas disponible sous Windows mais vous pouvez télécharger Sumatra + PDF, qui est basé dessus, voir http://blog.kowalczyk.info/software/sumatrapdf). +
+fc-list, fc-cache, etc.
– outils de la bibliothèque fontconfig, qui permettent à XeTEX d’accéder aux polices + système sous Windows. Vous pouvez utiliser fc-list pour connaître la liste des noms de police utilisables + avec la commande \font de XeTEX.
+

+

7.3 Répertoire personnel

+

L’équivalent du répertoire personnel noté $HOME sous Unix s’appelle %USERPROFILE% sous Windows. +Cette variable vaut en général C:\Documents and Settings\<username> sous Windows XP et +C:\Utilisateurs\<username> sous Vista et Windows 7. La notation ~, utilisée dans texmf.cnf et dans +Kpathsea en général pour désigner un répertoire personnel, est correctement interprétée sous Windows +comme sous Unix. + + +

+

7.4 Base de registre Windows

+

Windows stocke pratiquement tous les paramètres de configuration dans sa base de registre. Celle-ci contient +un ensemble de clés organisées par niveau. Les clés les plus importantes pour l’installation de programmes sont +HKEY_CURRENT_USER et HKEY_LOCAL_MACHINE, HKCU et HKLM en abrégé. La partie HKCU de la base de registre se +trouve dans le répertoire personnel de l’utilisateur (voir section 7.3). La partie HKLM est normalement dans un +sous-répertoire du répertoire Windows. +

Certaines informations système peuvent s’obtenir à partir des variables d’environnement mais +pour d’autres, la localisation des raccourcis par exemple, la consultation de la base de registre +est indispensable. La modification des variables d’environnement nécessite l’accès à la base de +registre. +

+

7.5 Droits d’accès sous Windows

+

Dans les versions récentes de Windows, la distinction est faite entre « utilisateurs » et « administrateurs », ces +derniers ayant accès en écriture à la totalité du système. En pratique on devrait plutôt parler d’utilisateurs +« non privilégiés » et d’utilisateurs « normaux » car être « administrateur » est la règle et non +l’exception. +

Nous nous sommes efforcés de rendre l’installation de TEX Live possible aux utilisateurs non +privilégiés. +

Si celui qui fait l’installation est « administrateur », il dispose d’une option d’installation pour tous les +utilisateurs : si cette option est choisie, les raccourcis et les entrées de menu sont créés pour tous +les utilisateurs, et l’environnement est modifié au niveau du système. Sinon, les raccourcis et +entrées de menu sont créés pour l’utilisateur courant, et seul son environnement utilisateur est +modifié. +

Dans tous les cas, le répertoire proposé comme racine de l’installation est %SystemDrive%. Le programme +install-tl vérifie si le répertoire choisi comme racine est accessible en écriture pour celui qui procède à +l’installation. +

Lorsqu’une installation TEX est présente sur la machine, l’installation de TEX Live par un utilisateur non +privilégié est problématique : cet utilisateur n’aura jamais accès aux exécutables TEX Live car la recherche +s’effectue d’abord dans les répertoires système, puis dans les répertoires de l’utilisateur. Une parade sommaire +a été prévue : l’installateur crée un raccourci vers une fenêtre de ligne de commande où les exécutables TEX +Live sont prioritaires : TEX Live est ainsi utilisable en ligne de commande à partir de ce raccourci. De même, le +raccourci pour TEXworks, s’il est installé, fait ce qu’il faut pour que les outils TEX Live soient +utilisés. +

Pour Vista et Windows 7, il y a une subtilité supplémentaire : même si vous êtes connecté en +tant qu’administrateur, vous devez explicitement demander les privilèges d’administrateur. En +fait, il ne sert pas à grand chose de se connecter en tant qu’administrateur ; le mieux est de faire +un clic droit sur le programme ou raccourci à utiliser, et d’utiliser l’entrée « exécuter en tant +qu’administrateur ». +

+

7.5.1 Augmentation de la limite de mémoire sous Windows et Cygwin
+

Les utilisateurs de Windows et Cygwin (voir la section 3.1.4 pour les spécificités de l’installation sous Cygwin) +peuvent parfois arriver à court de mémoire en utilisant certains des programmes fournis avec +TEX Live. Par exemple, asy peut manquer de mémoire si vous essayez d’allouer un tableau de +25 000 000 réels, et LuaTEX aussi si vous essayez de traiter un document avec beaucoup de fontes +lourdes. +

Pour Cygwin, vous pouvez augmenter la quantité de mémoire disponible en suivant les instructions données +dans le guide de l’utilisateur Cygwin (http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html). +

Pour Windows, il vous faudra créer un fichier, nommé par exemple ajoutmemoire.ref, contenant les quatre +lignes suivantes. + + +

+

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

puis exécuter la commande regedit /s ajoutmemoire.reg en tant qu’administrateur. (Si vous souhaitez +modifier la limite mémoire uniquement pour l’utilisateur courant plutôt qu’au niveau du système, utilisez +HKEY_CURRENT_USER.) +

+

8 Guide d’utilisation du système Web2C

+

Web2C est une collection intégrée de programmes relatifs à TEX, c.-à-d. TEX lui-même, Metafont, MetaPost, +BibTeX, etc. C’est le cœur de TEX Live. Le site de référence est http://tug.org/web2c. +

Un peu d’histoire : la première implémentation a été réalisée par Tomas Rokicki qui, en 1987, a développé un +premier système TEX-to-C en adaptant les change files pour Unix (travail de Howard Trickey et +Pavel Curtis principalement). Tim Morgan assura la maintenance du système, dont le nom fut +remplacé durant cette période par Web-to-C. En 1990, Karl Berry reprit le travail, assisté par +des dizaines de contributeurs et en 1997 il passa le relais à Olaf Weber qui le rendit à Karl en +2006. +

Le système Web2C fonctionne sur Unix, sur les systèmes Windows 32 bits, sur Mac OS X et sur de nombreux +autres systèmes d’exploitation. Il utilise les sources originales de Knuth pour TEX et les autres programmes de +base écrits en WEB (système de programmation documentée) qui sont tous traduits en langage C. Les +composants du noyau de TEX issus de ce processus sont : +

+

+ bibtex
+

– gère les bibliographies. +

+ dvicopy
+

– copie le fichier DVI en supprimant les fontes virtuelles. +

+ dvitomp
+

– convertit le fichier DVI en MPX (dessins MetaPost). +

+ dvitype
+

– convertit le fichier DVI en un texte lisible. +

+ gftodvi
+

– visualisation de fontes génériques GF. +

+ gftopk
+

– convertit les fontes génériques GF en fontes bitmap PK. +

+ gftype
+

– convertit le fichier GF en un texte lisible. +

+ mf
+

– création de fontes. +

+ mft
+

– mise en page de code source Metafont. +

+ mpost
+

– création de diagrammes techniques. + + +

+ patgen
+

– création de motifs de césure. +

+ pktogf
+

– convertit les fontes bitmap PK en fontes génériques GF. +

+ pktype
+

– convertit les fontes PK en un texte lisible. +

+ pltotf
+

– convertit les fichiers PL (lisibles) en TFM. +

+ pooltype
+

– affiche les fichiers WEB pool. +

+ tangle
+

WEB vers Pascal. +

+ tex
+

– composition de textes. +

+ tftopl
+

– convertit les fichiers TFM en PL (lisibles). +

+ vftovp
+

– convertit les fontes virtuelles VF en VPL (lisibles). +

+ vptovf
+

– convertit les fontes VPL en fontes virtuelles VF. +

+ weave
+

WEB vers TEX.

+

La syntaxe et les fonctions précises de ces programmes sont décrites dans la documentation des composants +individuels et dans le manuel Web2C lui-même. Toutefois, connaître un certain nombre de principes régissant +l’ensemble de la famille de programmes peut aider à exploiter de façon optimale votre installation +Web2C. +

Presque tous ces programmes suivent les options standard de GNU : +

+--help
imprime le sommaire de l’utilisation, +
+--verbose
imprime le rapport détaillé du processus, +
+--version
imprime seulement le numéro de version.
+

Pour localiser les fichiers, les programmes Web2C utilisent la bibliothèque de recherche Kpathsea +(http://tug.org/kpathsea). Cette bibliothèque utilise une combinaison de variables d’environnement et un +certain nombre de fichiers de paramètres pour optimiser la recherche dans l’énorme arborescence TEX. Web2C +peut exécuter une recherche dans plusieurs arborescences simultanément, ce qui est utile si l’on +souhaite maintenir la distribution standard de TEX et les extensions locales dans deux arborescences +distinctes. Afin d’accélérer la recherche de fichiers, la racine de chaque arborescence possède un +fichier ls-R contenant une entrée donnant le nom et le chemin de chaque fichier situé sous la +racine. + + +

+

8.1 Kpathsea et la recherche de fichiers

+

Décrivons en premier lieu le mécanisme de recherche de la bibliothèque Kpathsea. +

Nous appelons chemin de recherche une liste d’éléments, séparés par « deux-points » ou « point-virgule », et +appelés éléments de chemin, qui sont des noms de répertoires. Un chemin de recherche peut provenir de +plusieurs sources. Pour rechercher un fichier « my-file » le long d’un chemin « . :/dir », Kpathsea vérifie +chaque élément du chemin : d’abord ./my-file, puis /dir/my-file et renvoie la première occurrence (voire +toutes). +

Afin d’optimiser l’adaptation à tous les systèmes d’exploitation, Kpathsea peut utiliser dans les noms de +fichiers des séparateurs différents de deux-points (« : ») et barre oblique (« / ») pour les systèmes +non-Unix. +

Pour vérifier un élément de chemin particulier p, Kpathsea vérifie d’abord si une base de données +existante (voir page 65) contient p, c.-à-d. si la base de données se trouve dans un répertoire qui est +un préfixe de p. Si oui, la spécification du chemin est comparée avec le contenu de la base de +données. +

Si la base de données n’existe pas, si elle ne s’applique pas à cet élément de chemin ou si elle ne contient +aucune correspondance, la recherche est lancée sur tout le système de fichiers (si cela n’a pas été interdit par +une commande commençant par « ! ! » et si le fichier cherché est censé exister). Kpathsea construit la liste des +répertoires qui correspondent à cet élément de chemin, puis cherche le fichier dans chaque élément de cette +liste. +

La condition « le fichier est censé exister » est liée aux fichiers « .vf » et aux fichiers d’entrée lus par la +commande TEX \openin. De tels fichiers peuvent ne pas exister (par exemple cmr10.vf), il est donc inutile +de les rechercher sur le disque. De plus, si vous n’actualisez pas le fichier ls-R lors de l’installation d’un +nouveau fichier « .vf », il ne sera jamais trouvé. Chaque élément de chemin est alors vérifié : d’abord dans la +base de données puis sur le disque. Si une occurrence est trouvée, la recherche s’arrête et le résultat est +obtenu. +

Bien que l’élément de chemin le plus simple et le plus fréquent soit un nom de répertoire, Kpathsea supporte +d’autres types d’éléments dans les chemins de recherche : des valeurs par défaut différentes pour chaque +programme, des noms de variables d’environnement, des valeurs de fichiers de configuration, les répertoires de +l’utilisateur et la recherche récursive de sous-répertoires. Nous disons alors que Kpathsea étend un élément, +c’est-à-dire que Kpathsea transforme toutes ces spécifications en noms de répertoires de base. Cette opération +est décrite dans les sections suivantes. +

Notons que si le nom de fichier cherché est absolu ou explicitement relatif, c’est-à-dire commençant par « / », +« ./ » ou « ../ », Kpathsea ne vérifie que l’existence de ce fichier. +

+

8.1.1 Les différentes sources
+

Un chemin de recherche peut provenir de plusieurs sources. Voici l’ordre dans lequel Kpathsea les +utilise. +

+

    +
  1. Une variable d’environnement définie par l’utilisateur, par exemple TEXINPUTS. Les variables + d’environnement avec une extension attachée (nom de programme) sont d’abord prises en compte : + par exemple, si « latex » est le nom du programme exécuté, TEXINPUTS.latex passera avant + TEXINPUTS. +
  2. +
  3. Un fichier de configuration de programme spécifique, par exemple une ligne « S /a :/b » dans le + fichier config.ps de dvips. +
  4. +
  5. Un fichier de configuration texmf.cnf de Kpathsea contenant une ligne telle que
    « TEXINPUTS=/c :/d » (voir ci-dessous). +
  6. +
  7. La valeur par défaut obtenue à la compilation.
+ + +

On peut voir chacune de ces valeurs pour un chemin de recherche donné en utilisant l’option de débogage (voir +page 69). +

+

8.1.2 Fichiers de configuration
+

Kpathsea lit les chemins de recherche et d’autres définitions dans des fichiers de configuration à l’exécution +nommés texmf.cnf . Le chemin pour accéder à ces fichiers dans l’arborescence est stocké dans la variable +TEXMFCNF, mais il n’est pas conseillé de modifier cette variable (ou une autre) au moyen d’une variable +d’environnement du même nom. +

À la place, un fichier .../2012/texmf.cnf est créé à la suite d’une installation normale. Si vous devez changer +les valeurs par défaut de certaines variables (ce qui n’est en général pas nécessaire), c’est le bon endroit pour +le faire. Le fichier de configuration principal est dans .../2012/texmf/web2c/texmf.cnf. Vous ne devriez +jamais éditer ce fichier, car vos changements seraient alors perdus lors de futures mises à jour de la +distribution. +

Il est important de noter que tous les fichier texmf.cnf trouvés seront lus, et qu’en cas de conflit, la première +définition lue l’emporte. Par exemple, si les fichiers texmf.cnf sont cherchés dans le chemin .:$TEXMF, les +valeurs de ./texmf.cnf l’emportent sur celles de $TEXMF/texmf.cnf. +

    +
  • Les commentaires sont signalés par un % et se terminent à la fin de la ligne. +
  • +
  • Les lignes vides sont ignorées. +
  • +
  • Un \ à la fin d’une ligne joue le rôle d’un lien entre deux lignes, c’est-à-dire que la ligne courante se + poursuit à la ligne suivante. Dans ce cas, les espaces présents au début de la ligne suivante ne sont + pas ignorés. +
  • +
  • Toutes les autres lignes sont de la forme :
    +

    +   variable[.progname] [=] value
    +
    où le « = » et les espaces autour sont optionnels. +
  • +
  • Le nom de la variable peut contenir n’importe quel caractère autre que les espaces, « = », ou « . » mais on + recommande d’utiliser « A-Za-z_ » pour éviter les problèmes. +
  • +
  • Si « .progname » est présent, sa définition s’applique seulement si le programme exécuté se nomme + progname ou progname.exe. Ceci permet par exemple à différentes variantes de TEX d’avoir des chemins + de recherche différents. +
  • +
  • value peut contenir n’importe quel caractère excepté « % » et « @ ». L’option $var.prog n’est pas disponible + à droite du signe « = » ; à la place, on doit utiliser une variable supplémentaire. Un « ; » dans value est + compris comme un « : » si on travaille sous Unix ; ceci est très utile et permet d’avoir un seul texmf.cnf + pour les systèmes Unix, MS-DOS et Windows. +
  • +
  • Toutes les définitions sont lues avant tout désarchivage ou décompactage, de telle façon que les variables + peuvent être référencées avant d’être définies.
+

Voici un fichier de configuration illustrant les points précédents + + +

+
  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 Expansion d’un chemin de recherche
+

Kpathsea reconnaît certains caractères et constructions spéciales dans les chemins de recherche, semblables à +ceux disponibles dans les shells Unix. Ainsi, le chemin complexe, ~$USER/{foo,bar}//baz étend la recherche +vers tous les sous-répertoires situés sous les répertoires foo et bar dans le répertoire utilisateur $USER +contenant un répertoire ou un fichier appelé baz. Ces expansions sont explicitées dans les sections +suivantes. +

+

8.1.4 Expansion par défaut
+

Si le chemin de recherche le plus prioritaire (voir section 8.1.1) contient un « : » supplémentaire (c.-à-d. en +début ou fin de ligne ou double), Kpathsea insère à cet endroit le chemin suivant dont la priorité définie est +immédiatement inférieure. Si ce chemin inséré possède un « : » supplémentaire, le même processus se répète +pour le chemin prioritaire suivant. Par exemple, étant donné une variable d’environnement définie +ainsi +

+

+> setenv TEXINPUTS /home/karl: +
+
la valeur de TEXINPUTS d’après le fichier texmf.cnf étant +
+

+  .:$TEXMF//tex +
+
alors la valeur finale utilisée pour la recherche sera +
+

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

Comme il est inutile d’insérer la valeur par défaut en plusieurs endroits, Kpathsea applique la substitution à +seulement un « : » supplémentaire et laisse les autres inchangés : il cherche d’abord un « : » en début de ligne, +puis en fin de ligne et enfin un double « : ». + + +

+

8.1.5 Expansion spécifiée par les accolades
+

Option utile, l’expansion par le biais des accolades signifie, par exemple, que v{a,b}w va permettre la +recherche dans vaw:vbw. Les définitions emboîtées sont autorisées. Ceci peut être utilisé pour établir +des hiérarchies TEX multiples en attribuant une liste entre accolades à $TEXMF. Par exemple, +dans texmf.cnf, on trouve une définition qui ressemble (il y a en fait plus de répertoires) à la +suivante. + + +

+
    TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFSYSVAR,!!$TEXMFMAIN}
+
+

Avec ceci, on peut écrire quelque chose comme + + +

+
    TEXINPUTS = .;$TEXMF/tex//
+
+

ce qui signifie que, après avoir cherché dans le répertoire courant, les arborescences complètes +$TEXMFHOME/tex suivie de $TEXMFLOCAL/tex (sur le disque) et ensuite les arborescences ! !$TEXMFVAR/tex +et ! !$TEXMFMAIN/tex (définies dans le fichier de référence ls-R seulement) seront inspectées. C’est un moyen +pratique permettant d’utiliser en parallèle deux distributions TEX, une « figée » (sur un CD, par exemple) et +une autre régulièrement mise à jour avec de nouvelles versions quand elles deviennent disponibles. En utilisant +la variable $TEXMF dans toutes les définitions, on est toujours sûr d’inspecter d’abord l’arborescence la plus +récente. +

+

8.1.6 Expansion des sous-répertoires
+

Deux barres « // » ou plus consécutives dans une partie d’un chemin suivant un répertoire d sont remplacées +par tous les sous-répertoires de d : d’abord les sous-répertoires directement présents dans d, ensuite les +sous-répertoires de ceux-ci et ainsi de suite. À chaque niveau, l’ordre dans lequel les répertoires sont inspectés +est non-déterminé. +

Dans le cas où l’on spécifie une partie de nom de fichier après le « // », seuls sont inclus les sous-répertoires +auxquels le nom correspond. Par exemple, « /a//b » va correspondre aux répertoires /a/1/b, /a/2/b, +/a/1/1/b et ainsi de suite, mais pas à /a/b/c ni /a/1. +

Des « // » multiples et successifs dans un chemin sont possibles, mais « // » au début d’un chemin est +ignoré. +

+

8.1.7 Liste des caractères spéciaux et de leur signification : récapitulatif
+

La liste suivante récapitule la signification des caractères spéciaux dans les fichiers de configuration de +Kpathsea. +

+

+  :
+

Séparateur dans un chemin de recherche ; au début ou à la fin d’un chemin, il remplace le chemin + par défaut. +

+  ;
+

Séparateur dans les systèmes non-Unix (joue le rôle de :). +

+ $
+

Substitue le contenu d’une variable. +

+ ~
+

Représente le répertoire racine de l’utilisateur. +

+ {...}
+

Expansion par les accolades, par exemple a{1,2}b devient a1b:a2b. +

+ //
+

La recherche concernera aussi les sous-répertoires (peut être inséré n’importe où dans un chemin + sauf au début). +

+ %
+

Début d’un commentaire. + + +

+ \
+

Caractère de continuation de ligne (permet les entrées sur plusieurs lignes). +

+  ! !
+

Cherche seulement dans la base de données pour localiser le fichier et ne cherche pas sur le disque. +

+

+

8.2 Les bases de données

+

Kpathsea a une certaine profondeur d’investigation pour minimiser les accès disque durant les recherches. +Néanmoins, dans le cas de distributions comprenant beaucoup de répertoires, inspecter chaque répertoire +possible pour un fichier donné peut durer excessivement longtemps (ceci est typiquement le cas quand +plusieurs centaines de répertoires de polices de caractères doivent être parcourus). En conséquence, Kpathsea +peut utiliser un fichier texte appelé ls-R — en fait une base de données construite au préalable — qui fait +correspondre les fichiers à leur répertoire, ce qui permet d’éviter une recherche exhaustive sur le +disque. +

Un deuxième fichier appelé aliases (qui est également une base de données) permet de donner des noms +différents aux fichiers listés dans ls-R. Ceci peut aider à adapter ses fichiers source aux conventions de +DOS 8.3 pour les noms de fichiers. +

+

8.2.1 Le fichier base de données
+

Comme nous l’avons expliqué ci-dessus, le nom du principal fichier-base de données doit être ls-R. Dans votre +installation, vous pouvez en mettre un à la racine de chaque arborescence TEX que vous désirez voir inspectée +($TEXMF par défaut) ; la plupart des sites ont une seule arborescence TEX. Kpathsea cherche les fichiers ls-R +dans le chemin spécifié dans la variable TEXMFDBS. +

La meilleure façon de créer et mettre à jour le fichier ls-R est d’exécuter le script mktexlsr inclus dans la +distribution. Il est appelé par les divers scripts mktex... En principe, ce script exécute uniquement la +commande

+

+cd /your/texmf/root && \ls -1LAR ./ >ls-R +
+
en supposant que la commande ls de votre système produise le bon format de sortie (le ls de GNU convient +parfaitement). Pour s’assurer que la base de données est toujours à jour, le meilleur moyen est de la +reconstruire en utilisant la table des cron, de telle façon que le fichier ls-R prenne automatiquement en +compte les changements dans les fichiers installés, par exemple après une installation ou une mise à jour d’un +composant LATEX. +

Si un fichier n’est pas trouvé dans la base de données, par défaut Kpathsea décide de le chercher sur le disque. +Par contre, si un élément du chemin commence par « ! ! », seule la base de données sera inspectée pour cet +élément, jamais le disque. +

+

8.2.2 kpsewhich : programme de recherche dans une arborescence
+

Le programme kpsewhich effectue une recherche dans une arborescence indépendamment de toute application. +On peut le considérer comme une sorte de find pour localiser des fichiers dans les arborescences TEX (ceci est +largement utilisé dans les scripts mktex... de la distribution). +

+ + +

+> kpsewhich option... filename... +
+
Les options spécifiées dans option peuvent commencer soit par « - » soit par « -- » ; n’importe quelle +abréviation claire est acceptée. +

Kpathsea considère tout argument non optionnel dans la ligne de commande comme un nom de fichier et +renvoie la première occurrence trouvée. Il n’y a pas d’option pour renvoyer tous les fichiers ayant un nom +particulier (vous pouvez utiliser le find d’Unix pour cela). +

Les options les plus importantes sont décrites ci-après. +

+

+ --dpi=num
+


Définit la résolution à num ; ceci affecte seulement la recherche des fichiers « gf » et « pk ». « -D » + est un synonyme pour assurer la compatibilité avec dvips. Le défaut est 600. +

+ --format=name
+


Définit le format pour la recherche à name. Par défaut, le format est estimé en fonction du nom + de fichier. Pour les formats qui n’ont pas de suffixe clair associé, comme les fichiers de support + MetaPost et les fichiers de configuration dvips, vous devez spécifier le nom connu de Kpathsea, + comme tex ou enc files. Exécutez la commande kpsewhich --help pour obtenir la liste précise. +

+ --mode=string
+


Définit le nom du mode comme étant string ; ceci affecte seulement la recherche des « gf » et des + « pk ». Pas d’option par défaut, n’importe quel mode sera trouvé. +

+ --must-exist
+


Fait tout ce qui est possible pour trouver les fichiers, ce qui inclut une recherche sur le disque. + Par défaut, seule la base de données ls-R est inspectée, dans un souci d’efficacité. +

+ --path=string
+


Recherche dans le chemin string (séparé par deux-points comme d’habitude), au lieu de prendre + le chemin à partir du nom de fichier. « // » et toutes les expansions habituelles sont supportées. + Les options « --path » et « --format » s’excluent mutuellement. +

+ --progname=name
+


Définit le nom de programme comme étant name. Ceci peut affecter les chemins de recherche via + l’option .progname dans les fichiers de configuration. Le défaut est kpsewhich. +

+ --show-path=name
+


Montre le chemin utilisé pour la recherche des fichiers de type name. On peut utiliser soit une + extension de fichier (.pk, .vf, etc.), soit un nom de fichier, comme avec l’option « --format ». +

+ --debug=num
+


Définit les options de débogage comme étant num.

+ + +

+

8.2.3 Exemples d’utilisation
+

Jetons un coup d’œil à Kpathsea en action ; voici une recherche toute simple : +

+

+> kpsewhich  article.cls +
/usr/local/texmf-dist/tex/latex/base/article.cls +
+
Nous recherchons le fichier article.cls. Puisque le suffixe .cls est non-ambigu, nous n’avons pas besoin de +spécifier que nous voulons rechercher un fichier de type tex (répertoires des fichiers sources de TEX). Nous le +trouvons dans le sous-répertoire tex/latex/base du répertoire racine « TEXMF ». De même, le suffixe +non-ambigu permet de trouver facilement les autres fichiers.
+

+> 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 +
+
+

Le dernier exemple est une base de données bibliographiques pour BibTeX servant aux articles de +TUGBoat. +

+

+> kpsewhich cmr10.pk +
+
Les fichiers de glyphes de fontes bitmaps, de type .pk, sont utilisés pour l’affichage par des programmes +comme dvips et xdvi. Rien n’est renvoyé dans ce cas puisque il n’y a pas de fichier Computer Modern .pk +pré-créé sur nos systèmes (nous utilisons les versions type 1).
+

+> kpsewhich wsuipa10.pk +
+
  /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +
+
Pour ces fontes (alphabet phonétique de l’université de Washington), nous avons dû créer les fichiers .pk et, +puisque le mode Metafont par défaut sur notre installation est ljfour avec une résolution de base de 600dpi +(dots per inch), cette instance est trouvée.
+

+> kpsewhich -dpi=300 wsuipa10.pk + + +
+
Dans ce cas, lorsque l’on spécifie que nous recherchons une résolution de 300dpi (-dpi=300) nous voyons +qu’aucune fonte pour cette résolution n’est disponible dans le système. En fait, un programme comme dvips ou +xdvi ne s’en préoccuperait pas et créerait les fichiers .pk à la résolution demandée en utilisant le script +mktexpk. +

Intéressons-nous à présent aux fichiers d’en-tête et de configuration pour dvips. Regardons en premier le fichier +tex.pro communément utilisé pour le support de TEX avant de regarder le fichier de configuration générique +(config.ps) et la liste des fontes PostScript psfonts.map. Depuis l’édition 2004, les fichiers .map et les fichiers +de codage ont changé de place dans l’arborescence texmf. Comme le suffixe .ps est ambigu, nous +devons spécifier quel type particulier du fichier config.ps nous considérons (dvips config). +

+

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

Regardons plus en détail les fichiers de support Times PostScript d’URW. Leur nom standard dans le schéma +de nommage des fontes est « utm ». Le premier fichier que nous voyons est le fichier de configuration, qui +contient le nom du fichier de la liste :

+

+> kpsewhich --format="dvips config" config.utm +
   /usr/local/texmf-dist/dvips/psnfss/config.utm +
+
Le contenu de ce fichier est
+

+  p +utm.map +
+
qui pointe vers le fichier utm.map, que nous cherchons à localiser ensuite.
+

+> kpsewhich utm.map +
  /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +
+
Ce fichier liste les noms des fichiers des fontes PostScript de type 1 dans la collection URW. Son contenu +ressemble à (nous ne montrons qu’une partie des lignes) :
+

+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 + + +
+
Prenons par exemple le cas de Times Roman utmr8a.pfb et trouvons sa position dans l’arborescence texmf +en utilisant une recherche applicable aux fichiers de fontes de type 1 :
+

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

Il devrait être clair, d’après ces quelques exemples, qu’il est facile de trouver l’endroit où se cache un fichier +donné. C’est particulièrement important si vous suspectez que c’est, pour une raison quelconque, une +mauvaise version du fichier qui est utilisée, puisque kpsewhich va vous montrer le premier fichier +trouvé. +

+

8.2.4 Opérations de débogage
+

Il est quelquefois nécessaire de savoir comment un programme référence les fichiers. Pour permettre cela, +Kpathsea offre plusieurs niveaux de débogage : +

+  1
+

Appels à stat (test d’existence de fichier). Lors d’une exécution utilisant une base de données + ls-R à jour, ce niveau ne devrait donner presque aucune information en sortie. +

+  2
+

Références aux différentes tables (comme la base de données ls-R, les fichiers de correspondance + de fontes, les fichiers de configuration). +

+  4
+

Opérations d’ouverture et de fermeture des fichiers. +

+  8
+

Information globale sur la localisation des types de fichiers recherchés par Kpathsea. Ceci est utile + pour trouver où a été défini le chemin particulier pour un fichier. +

+ 16
+

Liste des répertoires pour chaque élément du chemin (utilisé uniquement en cas de recherche sur + le disque). +

+ 32
+

Recherche de fichiers. +

+ 64
+

Valeur des variables.

+

Une valeur de -1 activera toutes les options ci-dessus ; en pratique, c’est habituellement la valeur la plus +adaptée. +

De la même façon, avec le programme dvips, en utilisant une combinaison d’options de débogage, on peut +suivre en détail la localisation des différents fichiers. De plus, lorsqu’un fichier n’est pas trouvé, la trace du +débogage montre les différents répertoires dans lesquels le programme va chercher tel ou tel fichier, donnant +ainsi des indices sur le problème. +

Généralement, comme la plupart des programmes appellent la bibliothèque Kpathsea en interne, on peut +sélectionner une option de débogage en utilisant la variable d’environnement KPATHSEA_DEBUG et +en la définissant égale à une valeur (ou à une combinaison de valeurs) décrite(s) dans la liste +ci-dessus. + + +

Note à l’intention des utilisateurs de Windows : il n’est pas facile de rediriger les messages d’erreur +vers un fichier sur ces systèmes. À des fins de diagnostic, vous pouvez temporairement affecter +KPATHSEA_DEBUG_OUTPUT=err.log pour capturer le flux standard d’erreur dans le fichier err.log. +

Considérons comme exemple un petit fichier source LATEX, hello-world.tex, dont le contenu est le +suivant. + + +

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

Ce petit fichier utilise simplement la fonte cmr10, aussi allons voir comment dvips prépare le fichier +PostScript (nous voulons utiliser la version type 1 des fontes Computer Modern, d’où l’option -Pcms). +

+

+> dvips -d4100 hello-world -Pcms -o +
+
Dans ce cas, nous avons combiné le niveau 4 de débogage de dvips (chemins des fontes) avec +l’option d’expansion des éléments du chemin de Kpathsea (voir dvips Reference Manual, +texmf/doc/html/dvips/dvips_toc.html sur le DVD). La sortie (légèrement formatée) apparaît dans la +figure 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
+
Figure 12: Recherche des fichiers de configuration
+
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
+
Figure 13: Recherche du fichier prolog
+
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]
+
Figure 14: Recherche du fichier de fontes
+ + +

+

dvips commence par localiser ses fichiers de fonctionnement. D’abord, texmf.cnf est trouvé, ce qui donne les +définitions pour les chemins de recherche servant à localiser les autres fichiers, ensuite le fichier base de +données ls-R (pour optimiser la recherche des fichiers) et le fichier aliases, qui permet de déclarer plusieurs +noms (par exemple un nom DOS de type 8.3 court et une version longue plus naturelle) pour le même fichier. +Ensuite dvips continue en cherchant le fichier de configuration générique config.ps avant de rechercher le +fichier de paramétrisation .dvipsrc (qui, dans notre cas, n’est pas trouvé). Enfin, dvips localise le fichier +de configuration pour les fontes PostScript Computer Modern config.cms (ceci est lancé par +l’option -Pcms de la commande dvips). Ce fichier contient la liste des fichiers qui définissent la +relation entre les noms des fontes selon TEX, selon PostScript et dans le système de fichiers. +

+

+> more /usr/local/texmf/dvips/cms/config.cms +
   p +ams.map +
   p +cms.map +
   p +cmbkm.map +
   p +amsbkm.map +
+
dvips veut chercher tous ces fichiers, y compris le fichier générique d’association psfonts.map, qui est toujours +chargé (il contient des déclarations pour les fontes PostScript les plus communément utilisées ; voir +la dernière partie de la Section 8.2.3 pour plus de détails sur la gestion du fichier d’association +PostScript). +

Arrivé là, dvips s’identifie à l’utilisateur :

+

+ This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +
  +
+
+

pour continuer ensuite en cherchant le fichier prologue 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 +
+
+

Après avoir trouvé ce fichier, dvips affiche la date et l’heure, nous informe qu’il va générer le fichier +hello-world.ps puis qu’il a besoin du fichier de fonte cmr10 et que ce dernier est déclaré comme « résident » +(pas besoin de bitmaps) :

+

+
TeX output 1998.02.26:1204’ -> hello-world.ps +
Defining font () cmr10 at 10.0pt +
Font cmr10 <CMR10> is resident. +
+
Maintenant la recherche concerne le fichier cmr10.tfm, qui est trouvé, puis quelques fichiers de prologue de +plus (non montrés) sont référencés ; finalement le fichier de la fonte type 1 cmr10.pfb est localisé et inclus +dans le fichier de sortie (voir la dernière ligne).
+ + +

+
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 Options à l’exécution

+

Web2C offre la possibilité de contrôler à l’exécution bon nombre de paramètres concernant la mémoire (en +particulier la taille des tableaux utilisés) à partir du fichier texmf.cnf qui est lu par Kpathsea. Les paramètres +en question se trouvent dans la troisième partie du fichier inclus dans la distribution TEX Live. Les variables +les plus importantes sont : +

+ main_memory
+

Nombre total de mots mémoire disponibles pour TEX, Metafont et MetaPost. Vous devez générer + un nouveau fichier de format pour chaque nouveau paramétrage. Par exemple, vous pouvez générer + une version large de TEX et appeler le fichier de format hugetex.fmt. En utilisant la méthode + supportée par Kpathsea qui consiste à suffixer la variable par le nom du programme, la valeur + particulière de la variable main_memory destinée à ce fichier de format sera lue dans le fichier + texmf.cnf. +

+ extra_mem_bot
+

Espace supplémentaire pour certaines structures de données de TEX : boîtes, glue, points + d’arrêt... Surtout utile si vous utilisez PI CTEX par exemple. +

+ font_mem_size
+

Nombre de mots mémoire disponibles pour décrire les polices. C’est plus ou moins l’espace occupé + par les fichiers TFM lus. +

+ hash_extra
+

Espace supplémentaire pour la table de hachage des noms de séquences de contrôle. Environ + 10 000 de ces noms peuvent être stockés dans la table principale ; si vous avez un document très + volumineux avec beaucoup de références croisées, il se peut que ce ne soit pas suffisant. La valeur + par défaut hash_extra est 50000.

+

Évidemment, cette possibilité ne remplace pas une véritable allocation dynamique des tableaux et de la +mémoire mais puisque c’est complexe à implémenter dans le présent source TEX, ces paramètres lus à +l’exécution fournissent un compromis pratique qui procure une certaine souplesse. +

+

9 Remerciements

+

TEX Live est le résultat des efforts collectifs de pratiquement tous les groupes d’utilisateurs de TEX. +La présente édition de TEX Live a été coordonnée par Karl Berry. Voici la liste des principaux +contributeurs : + + +

    +
  • Les associations d’utilisateurs anglaise, allemande, néerlandaise et polonaise (TUG, DANTE + e.V., NTG, et GUST, respectivement) qui contribuent ensemble à l’infrastructure technique et + administrative. Soutenez votre association locale (voir la liste http://tug.org/usergroups.html) ! +
  • +
  • L’équipe du CTAN, en particulier Robin Fairbairns, Jim Hefferon et Rainer Schöpf, qui distribue les + images des distributions TEX Live et fournit les sites d’hébergement pour le stockage et la mise à + jour des extensions qui sont la base de TEX Live. +
  • +
  • Nelson Beebe, pour avoir permis l’accès à de nombreuses plate-formes aux développeurs TEX Live, + et avoir lui-même participé aux tests de façon étendue. +
  • +
  • John Bowman, pour avoir effectué de nombreux changements dans son programme Asymptote pour + le faire fonctionner dans TEX Live. +
  • +
  • Peter Breitenlohner et toute l’équipe e-TEX qui construisent les bases des successeurs de TEX, et + Peter tout particulièrement pour son aide concernant l’usage des autotools de GNU partout dans + TEX Live. +
  • +
  • Jin-Hwan Cho et toute l’équipe de DVIPDFMx pour leur excellent programme et leur réactivité face + aux problèmes de configuration. +
  • +
  • Thomas Esser et sa merveilleuse distribution teTEX sans laquelle TEX Live n’aurait jamais vu le + jour. +
  • +
  • Michel Goossens, en tant que co-auteur de la documentation initiale. +
  • +
  • Eitan Gurari, dont le programme TEX4ht est utilisé pour créer la version HTML de cette + documentation et qui travaillait inlassablement à l’améliorer, ce dans des délais très courts. Eitan + nous a quitté prématurément en juin 2009, et nous dédions la présente documentation à sa mémoire. +
  • +
  • Hans Hagen qui, outre sa + participation active aux tests, a adapté le format ConTEXt (http://pragma-ade.com) aux besoins + de TEX Live. +
  • +
  • Hàn Thế Thành, Martin Schröder et toute l’équipe pdfTEX qui continuent inlassablement à étendre + les performances de TEX. +
  • +
  • Hartmut Henkel, pour ses contributions au développement de pdfTEX et LuaTEX entre autres. +
  • +
  • Taco Hoekwater, pour son travail important et incessant sur le développement de MetaPost et de + (Lua)TEX (http://luatex.org) lui-même, pour l’intégration de ConTEXt dans TEX Live, pour + les nouvelles fonctionnalités mutli-thread de Kpathsea, et bien plus encore. +
  • +
  • Paweł Jackowski pour l’installeur Windows tlpm et Tomasz Łuczak pour la version graphique tlpmgui + utilisée dans l’édition précédente. +
  • +
  • Akira Kakuto, pour son aide précieuse qui nous a permis d’intégrer dans TEX Live les binaires + Windows de sa distribution W32TEX (http://w32tex.org). +
  • +
  • Jonathan Kew, pour avoir produit XeTEX, pour l’avoir intégré dans TEX Live, pour avoir créé la + première version de l’installeur MacTEXet enfin pour l’éditeur TEXworks que nous recommandons. +
  • +
  • Dick Koch, pour la maintenance de MacTEX (http://tug.org/mactex) faite en symbiose avec TEX + Live. +
  • +
  • Reinhard Kotucha, pour ses contributions majeures à l’infrastructure de TEX Live 2008 et à son + programme d’installation, pour ses contributions sous Windows et pour son script getnonfreefonts + en particulier. +
  • + + +
  • Siep Kroonenberg, également pour ses contributions majeures à l’infrastructure de TEX Live 2008 et + à son programme d’installation ainsi que pour la réécriture de cette documentation concernant ces + fonctionnalités. +
  • +
  • Heiko Oberdieck, pour le paquet epstopdf et bien d’autres, pour avoir compressé l’énorme pst-geo de + façon à ce que nous puissions l’inclure, et, par-dessus tout, son travail remarquable sur hyperref. +
  • +
  • Petr Olšak, qui coordonna et vérifia minutieusement toute la partie tchèque et slovaque. +
  • +
  • Toshio Oshima, pour le visualisateur dviout pour Windows. +
  • +
  • Manuel Pégourié-Gonnard, pour son aide concernant le programme de mise à jour de la distribution, + la documentation et pour le développement de texdoc. +
  • +
  • Fabrice Popineau, pionnier du développement de TEX Live sous Windows et pour son travail sur la + documentation française. +
  • +
  • Norbert Preining, principal architecte de la distribution TEX Live 2008 et de son installeur et + coordinateur (avec Frank Küster) de la version Debian de TEX Live. +
  • +
  • Sebastian Rahtz, qui a créé la distribution TEX Live et en a assuré la maintenance pendant de + nombreuses années. +
  • +
  • Phil Taylor, pour la mise en place du téléchargement par BitTorrent. +
  • +
  • Tomasz Trzeciak, pour son aide générale concernant Windows. +
  • +
  • Vladimir Volovich, pour son aide substantielle, en particulier pour avoir rendu possible l’intégration + de xindy dans TEX Live. +
  • +
  • Staszek Wawrykiewicz, principal testeur de TEX Live et coordinateur des contributions polonaises + (fontes, installation Windows, etc.). +
  • +
  • Olaf Weber, pour son patient assemblage de Web2C. +
  • +
  • Gerben Wierda, qui a créé et maintenu initialement la partie Mac OS X et participé activement aux + tests. +
  • +
  • Graham Williams, pour son travail sur le catalogue TEX. +
+

Les binaires ont été compilés par : Ettore Aldrovandi (i386-solaris, x86_64-solaris), Alan Braslau +(amd64-kfreebsd, i386-kfreebsd), Peter Breitenlohner (x86_64-linux), Karl Berry (i386-linux), Ken Brown +(i386-cygwin), Akira Kakuto (win32), Dick Koch (universal-darwin, x86_64-darwin), Nikola Lečić +(amd64-freebsd, i386-freebsd), Mojca Miklavec (mipsel-linux), Norbert Preining (alpha-linux), Thomas Schmitz +(powerpc-linux), Boris Veytsman (armel-linux), Vladimir Volovich (powerpc-aix, sparc-solaris), Olaf Weber +(mips-irix). +

Traducteurs de ce manuel : Boris Veytsman (russe), Jjgod Jiang, Jinsong Zhao, Yue Wang, & Helin Gai +(chinois), Uwe Ziegenhagen (German), Manuel Pégourié-Gonnard (français), Marco Pallante (italien), Nikola +Lečić (serbe), Petr Sojka & Jan Busa (thèque et slovaque), Staszek Wawrykiewicz (polonais). La page +d’accueil de la documentation TEX Live est http://tug.org/texlive/doc.html. +

Bien sûr, notre gratitude va en premier lieu à Donald Knuth pour avoir inventé TEX et l’avoir offert au monde +entier. +

+

10 Historique des versions successives

+ + +

+

10.1 Les éditions précédentes

+

La discussion commença à la fin de 1993 quand le Groupe des Utilisateurs Néerlandais de TEX commençait à +travailler à son CD 4AllTEX pour les utilisateurs de MS-DOS et on espérait à ce moment sortir un CD unique +pour tous les systèmes. C’était un objectif beaucoup trop ambitieux mais il permit la naissance du CD +4AllTEX, projet couronné de succès et aussi d’un groupe de travail « TUG Technical Council » pour mettre en +place TDS (TEX Directory Structure : http://tug.org/tds), qui spécifiait la gestion des fichiers TEX sous +une forme logique. La mouture finale de TDS fut publiée dans le numéro de décembre 1995 de TUGboat et il +était clair depuis un certain temps qu’il fallait proposer un produit contenant une structure modèle sur CD. La +distribution que vous possédez est le résultat direct des délibérations de ce groupe de travail. +Il était également clair que le succès des CD 4AllTEX démontrait que les utilisateurs d’Unix +trouveraient leur bonheur avec une distribution aussi simple et ceci a été l’autre objectif de TEX +Live. +

Nous avons d’abord entrepris de créer un nouveau CD TDS Unix à l’automne 1995 et nous avons rapidement +choisi teTEX de Thomas Esser comme étant la configuration idéale, car il supportait déjà plusieurs +plates-formes et avait été construit en gardant à l’esprit la portabilité entre systèmes. Thomas accepta de nous +aider et commença à travailler sérieusement au début de 1996. La première édition sortit en mai 1996. Au +début de 1997, Karl Berry acheva une nouvelle distribution de Web2C, qui incluait presque toutes les +caractéristiques que Thomas Esser avait ajoutées dans teTEX et il fut décidé de baser la deuxième édition du +CD sur le standard Web2C, en y ajoutant le script texconfig de teTEX. La troisième édition du CD était +basée sur une version majeure de Web2C, 7.2, par Olaf Weber ; en même temps, une nouvelle version +révisée de teTEX était achevée dont TEX Live partageait presque toutes les caractéristiques. La +quatrième édition a suivi le même schéma, en utilisant une nouvelle version de teTEX et une nouvelle +version de Web2C (7.3). Le système incluait dorénavant un programme complet d’installation pour +Windows. +

Pour la cinquième édition (mars 2000), de nombreuses parties du CD ont été vérifiées et révisées, des +centaines de composants mis à jour. Le contenu détaillé des composants était décrit par des fichiers XML. +Mais le changement majeur de cette cinquième édition a été la suppression de tout logiciel non libre de droits. +Tout ce qui se trouve dans TEX Live devait être compatible avec la licence Debian (Debian Free Software +Guidelines : http://www.debian.org/intro/free) ; nous avons fait de notre mieux pour vérifier +les termes des licences de chaque composant et nous souhaiterions que toute erreur nous soit +signalée. +

La sixième édition (juillet 2001) contient un grand nombre de mises à jour. Le changement majeur de cette +version réside dans la refonte du processus d’installation : l’utilisateur peut désormais choisir les collections de +manière plus précise. Les collections concernant les langues ont été entièrement réorganisées, aussi le choix +d’une langue installe non seulement les macros, les fontes, etc. mais prépare également un fichier +language.dat adéquat. +

La septième édition (mai 2002) a comme ajout majeur une installation pour Mac OS X et l’habituelle myriade +de mises à jour de composants et de programmes. Un objectif important a été de fusionner à nouveau les +sources avec ceux de teTEX, alors que les versions 5 et 6 s’en étaient éloignées. +

+

10.1.1 2003
+

En 2003, le flot de mises à jour et d’additions a continué mais nous avons constaté que TEX Live était devenu +si volumineux qu’il ne pouvait plus tenir sur un seul CD, aussi l’avons-nous divisé en trois distributions +distinctes (voir section 2.1, page 7). Par ailleurs : +

    +
  • À la demande de l’équipe LATEX, nous avons modifié les commandes standard latex et pdflatex pour + qu’elles utilisent e-TEX (voir page 11). +
  • +
  • Les nouvelles fontes Latin Modern sont disponibles (et recommandées). +
  • +
  • Le support pour Alpha OSF a été supprimé (celui pour HPUX l’avait été auparavant), car personne + disposant des machines nécessaires ne s’est proposé pour compiler les nouveaux binaires. +
  • +
  • L’installation pour Windows a été largement modifiée ; un environnement de travail intégré basé sur + + + XEmacs a été introduit. +
  • +
  • Des programmes supplémentaires importants pour Windows (Perl, Ghostscript, ImageMagick, Ispell) + sont maintenant installés dans le répertoire d’installation de TEX Live. +
  • +
  • Les fichiers font map utilisés par dvips, dvipdfm et pdftex sont maintenant générés par le nouveau + programme updmap et installés dans texmf/fonts/map. +
  • +
  • Dorénavant, TEX, Metafont et MetaPost écrivent les caractères 8 bits présentés en entrée sans + modification et non pas avec la notation ^^, que ce soit dans des fichiers (par la commande write), + dans les fichiers de trace (.log) ou sur le terminal. Dans le TEX Live 7, l’écriture de ces caractères + 8 bits était influencée par les paramètres de localisation du système ; maintenant ces paramètres + n’influent plus du tout sur le comportement des programmes TEX. Si pour quelque raison que ce + soit, vous avez besoin de la notation ^^ en sortie, renommez le fichier texmf/web2c/cp8bit.tcx. Les + prochaines versions disposeront d’un moyen plus propre pour contrôler cette sortie. +
  • +
  • La documentation de TEX Live a été largement révisée. +
  • +
  • Enfin, comme la numérotation séquentielle des versions devenait peu maniable, il a été décidé + d’identifier désormais la version de TEX Live par l’année : TEX Live 2003 au lieu de TEX Live 8.
+

+

10.1.2 2004
+

2004 a apporté beaucoup de changements (et quelques incompatibilités avec les versions précédentes) : +

    +
  • Si vous avez installé des fontes supplémentaires qui ont leur propre fichier .map ou des fichiers .enc + spécifiques, vous devrez vraisemblablement déplacer ces fichiers. +

    Les fichiers .map sont désormais recherchés uniquement dans les sous-répertoires fonts/map (dans + chaque arborescence texmf), leur chemin de recherche est donné par la variable TEXFONTMAPS + de texmf.cnf. De même, les fichiers .enc sont désormais recherchés uniquement dans les + sous-répertoires fonts/enc, leur chemin de recherche est donné par la variable ENCFONTS de + texmf.cnf. Le script updmap devrait émettre des messages d’avertissement pour les fichiers .map et + .enc mal placés. +

    Sur les différentes façons de traiter le problème, consulter http://tug.org/texlive/mapenc.html. +

  • +
  • La distribution pour Windows a changé cette année : l’installation de la distribution fpTEX (basée + sur Web2C) de Fabrice Popineau n’est plus proposée. À la place, vous pouvez tester et installer la + distribution proTEXt basée sur MiKTEX (indépendante de Web2C), voir section 2, page 7. +
  • +
  • L’ancien répertoire texmf a été éclaté en trois parties : texmf, texmf-dist et texmf-doc. Voir + section 2.2, page 8. +
  • +
  • Tous les fichiers relatifs aux différents avatars + de TEX sont désormais regroupés dans le même sous-répertoire tex des arborescences texmf* (ils + étaient jusqu’ici placés dans des sous-répertoires spécifiques tex, etex, pdftex, pdfetex, etc.). Voir + texmf-dist/doc/generic/tds/tds.html#Extensions. +
  • +
  • Les scripts auxiliaires, normalement pas exécutés directement par les utilisateurs, sont regroupés + dans des sous-répertoires scripts des arborescences texmf*. On les localise grâce à la commande + kpsewhich -format=texmfscripts. Au cas où vous en auriez, les programmes utilisant ces scripts + nécessiteront une adaptation. Voir texmf-dist/doc/generic/tds/tds.html#Scripts. +
  • +
  • La plupart des formats affichent en clair (dans les fichiers .log en particulier) les caractères + imprimables au lieu de les transcrire en notation hexadécimale ^^. Ceci se fait grâce au fichier + cp227.tcx, qui considère comme imprimables les caractères 32 à 256, ainsi que les tabulations et les + changements de page (caractères 9 à 11). Les formats faisant exception sont plain TEX (seuls les + + + caractères 32 à 127 sont déclarés imprimables), ConTEXt (0 à 255 imprimables) et les formats basés + sur Omega. Il y a peu de différence avec le comportement de TEX Live 2003 mais la mise en œuvre + est plus propre et plus facilement configurable. Voir texmf/doc/web2c/web2c.html#TCX-files. Noter + que l’utilisation du codage Unicode en entrée peut provoquer des affichages défectueux en sortie (TeX + code sur un seul octet). +
  • +
  • Tous les formats, sauf plain TEX, font appel au moteur pdfetex (qui produit bien sûr par défaut des + fichiers DVI lorsque le format choisi est LATEX). Ceci permet aux formats LATEX, ConTEXt, etc., + d’avoir accès aux fonctionnalités micro-typographiques de pdfTEX (alignement optique des marges + par exemple) et aux fonctionnalités de e-TEX (texmf-dist/doc/etex/base/). +

    Ceci rend indispensable le recours à l’extension ifpdf (qui fonctionne aussi bien avec plain que LATEX) + pour déterminer si le format de sortie est DVI ou PDF. Tester si la commande \pdfoutput est définie + ou non n’est pas un moyen fiable de le faire. +

  • +
  • pdfTEX (http://pdftex.org) offre de nouvelles fonctionnalités : +
      +
    • Les commandes \pdfmapfile et \pdfmapline permettent de spécifier le choix des fichiers .map à + utiliser pour le document en cours. +
    • +
    • L’amélioration du gris typographique par + variation (infime) de la largeur des caractères (font expansion) est plus facile à mettre en œuvre, + voir http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html +
    • +
    • Le fichier pdftex.cfg n’est plus utilisé. Toutes les affectations de paramètres doivent désormais + être faites dans le préambule en utilisant les primitives ad hoc. +
    • +
    • Pour plus d’informations, consulter le manuel de pdfTEX  : texmf/doc/pdftex/manual. +
    +
  • +
  • La primitive \input de tex, mf et mpost, accepte désormais les espaces et autres caractères + spéciaux dans les noms de fichiers à condition d’utiliser des double quotes, en voici deux exemples + typiques : + + +
    +
      \input "filename with spaces"   % plain
      \input{"filename with spaces"}  % latex
    +
    +

    Consulter le manuel Web2C pour plus d’informations : texmf/doc/web2c. +

  • +
  • Les fonctionnalités de encTEX sont désormais incluses dans Web2C. Ainsi, tous les formats + construits avec l’option -enc y ont accès. encTEX permet le transcodage en entrée et en sortie et + l’utilisation transparente du codage Unicode UTF-8. Voir texmf-dist/doc/generic/enctex/ et + http://www.olsak.net/enctex.html. +
  • +
  • Un nouveau moteur combinant les fonctionnalités de e-TEX et d’Omega, appelé Aleph, est disponible. + texmf-dist/doc/aleph/base et http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph fournissent une + information succincte. Le format LATEX utilisant Aleph s’appelle lamed. +
  • +
  • La licence LPPL de LATEX (version décembre 2003) a changé, elle est désormais compatible + avec les prescriptions Debian. Les autres changements sont décrits dans le fichier ltnews, voir + texmf-dist/doc/latex/base. +
  • +
  • Un nouveau programme, dvipng, qui convertit les fichiers DVI en images PNG a été ajouté. Voir + texmf/doc/man/man1/dvipng.1. +
  • +
  • Nous avons dû réduire le nombre de fontes incluses dans l’extension cbgreek, ceci a été fait avec l’accord et + l’aide de l’auteur (Claudio Beccari). Les fontes exclues (invisibles, transparentes, contours) sont rarement + utilisées et la place nous manquait. La collection complète des fontes cbgreek est disponible sur CTAN + (http://mirror.ctan.org/tex-archive/fonts/greek/cb). +
  • +
  • La commande oxdvi a été supprimée, il suffit utiliser xdvi à la place. +
  • +
  • Les commandes initex, virtex et leurs homologues pour mf et mpost ont disparu. Vous pouvez les recréer si + nécessaire mais elles sont avantageusement remplacées, depuis des années maintenant, par l’option -ini (tex + -ini pour initex et virtex). +
  • +
  • Les binaires pour l’architecture i386-openbsd ont été supprimés par manque de volontaires pour les + compiler. +

    Sur sparc-solaris (au moins) il sera probablement nécessaire de positionner la variable d’environnement + LD_LIBRARY_PATH pour utiliser les programmes de la famille t1utils. Ceci vient du fait qu’ils sont compilés en + C++ et que l’emplacement des bibliothèques dynamiques est variable. Ce n’est pas une nouveauté 2004 + mais ce point n’était pas documenté précédemment. De même, sur mips-irix, les bibliothèques dynamiques + MIPSpro 7.4 sont nécessaires. +

+

+

10.1.3 2005
+

2005 a apporté son lot habituel d’innombrables mises à jour d’extensions et de programmes. L’infrastructure +est restée relativement stable par rapport à 2004, à quelques changements inévitables près : +

    +
  • Trois nouveaux scripts texconfig-sys, updmap-sys et fmtutil-sys ont été introduits ; ils agissent sur + la configuration générale de la machine, comme le faisaient les scripts texconfig, updmap et fmtutil + jusqu’à l’an dernier. Les nouveaux scripts texconfig, updmap et fmtutil modifient maintenant la + configuration personnelle de l’utilisateur qui les lance ; le résultat est placé dans le répertoire personnel + de l’utilisateur (sous $HOME/.texlive2005). +
  • +
  • De nouvelles variables, TEXMFCONFIG (resp. TEXMFSYSCONFIG) ont été introduites ; elles définissent les + répertoires où doivent se trouver les fichiers de configuration de l’utilisateur (resp. de la machine), + comme fmtutil.cnf et updmap.cfg. Les utilisateurs de fichiers de configuration locaux fmtutil.cnf + ou updmap.cfg devront probablement les déplacer ; une autre possibilité est de modifier la définition + des variables TEXMFCONFIG ou TEXMFSYSCONFIG dans texmf.cnf. L’important est de s’assurer de la + + + cohérence entre les définitions de ces variables dans texmf.cnf et l’emplacement réel de ces fichiers. + Voir section 2.3, page 9 pour la description des différentes arborescences texmf utilisées. +
  • +
  • L’an dernier nous avions rendu « undefined » certaines primitives propres à pdftex (comme + \pdfoutput) dans les formats créés à partir de pdfetex (latex amstex, context par exemple)). C’était + à titre transitoire, aussi cette année, ces primitives sont de nouveau définies dans tous les formats à + base pdf(e)tex, même lorsqu’ils sont utilisés pour produire des fichiers .dvi. Ceci implique qu’il vous + faudra modifier vos documents qui utilisent le test \ifx\pdfoutput\undefined pour déterminer si + la sortie est en DVI ou en PDF. Le mieux est d’utiliser l’extension ifpdf.sty et son test \ifpdf qui + fonctionne même en plain TEX. +
  • +
  • L’an dernier nous avions fait en sorte que la plupart des formats impriment dans les sorties .log des + caractères 8 bits lisibles à la place des notations hexadécimales ^^ (voir section précédente). Le nouveau + fichier TCX empty.tcx permet de revenir facilement à la notation traditionnelle ^^, il suffit de + coder : + + +
    +
      latex --translate-file=empty.tcx fichier.tex
    +
    +

    +

  • +
  • Le nouveau programme dvipdfmx est disponible pour convertir des fichier DVI en PDF ; ce programme + remplace dvipdfm, toujours disponible mais dont l’usage est maintenant déconseillé. +
  • +
  • Les variables HOMETEXMF et VARTEXMF ont été renommées en TEXMFHOME et TEXMFSYSVAR respectivement + pour raisons de cohérence avec les autres noms de variables. Il y a aussi TEXMFVAR qui désigne maintenant + un répertoire personnel de l’utilisateur (cf. le premier point de la présente liste). +
+

+

10.1.4 2006–2007
+

En 2006–2007, la nouveauté majeure a été l’arrivée dans TEX Live de XeTEX disponible sous forme de deux +programmes xetex et xelatex, voir http://scripts.sil.org/xetex. +

MetaPost a subi une mise à jour importante et d’autres améliorations sont prévues, voir +http://tug.org/metapost/articles. Il en va de même pour pdfTEX, voir http://tug.org/applications/pdftex. +

Le format tex.fmt et les formats pour MetaPost and Metafont ne se trouvent plus dans texmf/web2c mais +dans des sous-répertoires de texmf/web2c (la recherche de fichiers .fmt est néanmoins faite aussi dans +texmf/web2c). Ces sous-répertoires portent le nom du moteur utilisé pour construire le format, +par exemple tex, pdftex ou xetex. Ce changement ne devrait pas avoir d’effet visible pour les +utilisateurs. +

Le programme (plain) tex ignore désormais les lignes commençant par %& qui permettent de déterminer le +format à utiliser ; c’est un vrai TEX « à la Knuth » ! LATEX et tous les autres prennent toujours en compte les +lignes commençant par %&. +

Comme chaque année des centaines d’extensions et de programmes ont été mis à jour, voir les sites CTAN +(http://mirror.ctan.org). +

L’arborescence utilisée en interne a été réorganisée avec de nouveaux outils qui devraient fournir une meilleure +base de travail pour les développements futurs. +

Enfin, en mai 2006 Thomas Esser a annoncé qu’il renonçait à poursuivre le développement de teTEX +(http://tug.org/tetex). Sa décision a relancé l’intérêt pour TEX Live, en particulier chez les distributeurs +de solutions GNU/Linux (un nouveau schéma d’installation tetex a été ajouté dans le script d’installation de +TEX Live pour produire une distribution proche de l’ancienne teTEX). La distribution TEX Live existe déjà +sous forme de paquets Debian, espérons que les autres acteurs du monde Linux (RedHat, SuSe, etc.) suivront +et que les utilisateurs se verront proposer à l’avenir des distributions TEX riches et plus faciles à +installer. +

+

10.1.5 2008
+

En 2008, l’infrastructure de la distribution TEX Live a été entièrement remaniée. Un nouveau fichier texte, +tlpkg/texlive.tlpdb, regroupe toutes les informations concernant la configuration TEX Live de la +machine. +

Ce fichier permet entre autres choses de procéder à des mises à jour par le réseau après l’installation initiale. +Cette possibilité était offerte depuis des années par MiKTEX. Nous espérons pouvoir fournir des mises à jour +régulières du contenu des archives CTAN. +

Le nouveau moteur LuaTEX (http://luatex.org) a été intégré ; il offre de nouvelles fonctionnalités +typographiques et repose sur l’excellent langage de commande Lua qui peut aussi être utilisé en dehors de +TEX. +

Les versions Windows et Unix sont beaucoup plus proches que par le passé. En particulier les scripts en Perl et +en Lua sont communs aux deux architectures. +

TEX Live dispose d’une nouvelle interface pour la maintenance (tlmgr voir section 6), elle permet les ajouts, + + +mises à jour et suppressions de composants et prend en charge la régénération des bases ls-R, des formats et +des fichiers .map lorsque c’est nécessaire. +

Les fonctionnalités de tlmgr englobent toutes les tâches dévolues auparavant à texconfig qui ne devrait plus +être utilisé (il est conservé mais avec un champ d’action réduit). +

Le programme d’indexation xindy (http://xindy.sourceforge.net/) est maintenant disponible pour la +plupart des plates-formes. +

L’utilitaire kpsewhich dispose de deux options nouvelles : –all qui retourne toutes les occurrences du fichier +recherché et –subdir qui limite la recherche à un sous-répertoire donné. +

Le programme dvipdfmx permet maintenant d’extraire les informations concernant la bounding box par le biais +de la commande extractbb ; c’était une des dernières fonctionnalités de dvipdfm qui manquaient à +dvipdfmx. +

Les alias de polices Times-Roman, Helvetica, etc. ont été supprimés, les conflits de codage qu’ils induisaient +n’ayant pas pu être résolus. +

Le format platex a été supprimé afin de résoudre un conflit de nom avec son homonyme japonais ; le support +pour le polonais est assuré maintenant par l’extension polski. +

Les fichiers WEB d’extension .pool sont maintenant inclus dans les binaires afin de faciliter les mises à +jour. +

Enfin, les changements décrits par Donald Knuth dans « TEX tuneup of 2008 » (voir +http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf) sont inclus dans la présente édition. +

+

10.1.6 2009
+

En 2009, le format de sortie par défaut de Lua(LA )TEX est maintenant le PDF afin de profiter de la prise en +charge des polices OpenType et autres fonctionnalités de LuaTEX. De nouveaux exécutables +nommés dviluatex et dvilualatex fournissent une sortie DVI. La page d’accueil de LuaTEX est +http://luatex.org. +

Le moteur Omega ainsi que le format Lambda ont été retirés, après discussion avec les auteurs +d’Omega. Les versions à jour d’Aleph et de Lamed ont été conservées, ainsi que les utilitaires +Omega. +

TEX Live fournit la nouvelle version des polices Type 1 de l’AMS, y compris Computer Modern : les +quelques changements de formes faits au cours des ans par Knuth dans les sources Metafont ont +été intégrés, et le hinting a été amélioré. Les polices Euler ont été en grande partie redessinées +par Hermann Zapf (voir http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf). +Dans tous les cas, les métriques n’ont pas changé. La page d’accueil des polices de l’AMS est +http://www.ams.org/tex/amsfonts.html. +

Le nouvel éditeur intégré TEXworks est fourni pour Windows, ainsi que dans MacTEX. Pour les autres +plate-formes, ainsi que d’autres informations, voir la page de TEXworks : http://tug.org/texworks. Cet +éditeur fonctionnant sur de nombreuses plate-formes, inspiré par l’éditeur TEXshop de Mac OS X, vise à +faciliter l’utilisation de TEX. +

Le programme de création de graphiques Asymptote est fourni pour plusieurs plate-formes. Il +fournit un langage de description de graphiques en mode texte plus ou moins du même genre +que MetaPost, mais avec, entre autres, des fonctionnalités 3D avancées. Sa page d’accueil est +http://asymptote.sourceforge.net. +

Le programme dvipdfm séparé a été remplacé par dvipdfmx qui, lorsqu’il est appelé par ce nom, travaille +dans un mode de compatibilité spécifique. Le programme dvipdfmx fournit des fonctionnalités pour les +écritures CJK et inclut de nombreux correctifs accumulés au fil des ans depuis la dernière sortie de dvipdfm. +Sa page d’accueil est http://project.ktug.or.kr/dvipdfmx. +

Des exécutables pour les plate-formes cygwin et i386-netbsd sont maintenant fournis, tandis que les +autres distributions BSD ont été abandonnées ; nous avons entendu dire que OpenBSD et FreeBSD +fournissent TEX via leurs propres systèmes de gestion de paquets, et par ailleurs il était difficile +sur ces plate-formes de fabriquer des binaires qui aient une chance de fonctionner sur plus d’une +version. +

Quelques autres changements en vrac : nous utilisons maintenant xz, qui remplace lzma (http://tukaani.org/xz/), +pour comprimer nos archives ; un $littéral est autorisé dans les noms de fichiers s’il n’est pas suivi + + +du nom d’une variable connue ; la bibliothèque Kpathsea est maintenant multi-threadée (ce qui +sert dans MetaPost) ; le processus complet de compilation de TEX Live est maintenant basé sur +Automake. +

Remarque finale concernant le passé : toutes les anciennes distributions TEX Live ainsi que les jaquettes des +CD correspondants sont disponibles ici : ftp://tug.org/historic/systems/texlive. +

+

10.1.7 2010
+

En 2010, les PDF générés utilisent par défaut la version 1.5 du format PDF, ce qui permet une plus grande +compression. Ceci concerne tous les moteurs TEX produisant directement du PDF, ainsi qu’à dvipdfmx. Pour +revenir au format PDF 1.4, vous pouvez charger le paquet pdf14 sous LATEX, ou régler manuellement +\pdfminorversion=4 (sous pdfTEX). +

pdf(LA )TEX convertit maintenant automatiquement les fichiers EPS utilisés au format PDF, en utilisant le +paquet epstopdf, dans tous les cas où le fichier de configuration LATEX graphics.cfg est chargé, et que le +format de sortie est le PDF. Les options par défaut sont choisies pour éviter autant que possible tout risque +d’écrasement d’un fichier PDF créé manuellement, mais vous pouvez aussi empêcher le chargement d’epstopdf +en plaçant \newcommand{\DoNotLoadEpstopdf}{} (ou \def... avant la déclaration \documentclass. Le +paquet n’est pas chargé non plus si pst-pdf est utilisé. Pour plus de détails, reportez-vous à la documentation +du paquet epstopdf (http://ctan.org/pkg/epstopdf-pkg). +

Un autre changement, relié au précédent, est que l’exécution d’un tout petit nombre de commandes externes +depuis TEX (avec le commande \write18) est désormais autorisée par défaut. Ces commandes sont +repstopdf, makeindex, kpsewhich, bibtex, et bibtex8 ; cette liste est définie dans texmf.cnf. Si vous +souhaitez désactiver cette fonctionnalité, vous pouvez désélectionner cette option à l’installation +(section 3.2.4), ou modifier la valeur après installation en exécutant tlmgr conf texmf shell_escape 0. +

Un autre changement est encore relié aux deux derniers : BibTeX et Makindex refusent désormais par défaut +d’écrire leur fichier de sortie dans n’importe quel répertoire (ce que TEX refusait déjà). Ceci a pour but de +permettre leur inclusion dans la liste ci-dessus. Pour modifier ce comportement, vous pouvez utiliser la variable +d’environnement TEXMFOUTPUT, ou modifier la valeur de openout_any. +

XeTEX offre désormais un ajustement optique des marges similaire à celui de pdfTEX. (La dilatation des +fontes n’est pas contre pas disponible actuellement.) +

Par défaut, tlmgr garde maintenant une copie de sauvegarde de tous les paquets mis à jour (tlmgr +option autobackup 1) pour permettre de revenir facilement à l’ancienne version au cas où la +nouvelle soit cassée, en utilisant tlmgr restore. Si vous faites des mises à jour après l’installation, +et n’avez pas la place de garder ces copies de sauvegarde, exécutez tlmgr option autobackup +0. +

De nouveaux programmes sont inclus : le moteur pTEX et les utilitaires reliés pour la composition du +japonais ; le programme BibTeXU qui est une version de BibTeX gérant Unicode ; l’utilitaire chktex +(http://baruch.ev-en.org/proj/chktex) pour vérifier les documents (LA )TEX ; le programme de conversion +DVI vers SVG dvisvgm (http://dvisvgm.sourceforge.net). +

Nous fournissons des exécutables pour les nouvelles plate-formes suivantes : amd64-freebsd, amd64-kfreebsd, +i386-freebsd, i386-kfreebsd, x86_64-darwin et x86_64-solaris. +

Un changement dans TEX Live que nous avions oublié de noter : de nombreux exécutables relatifs à TEX4ht +ont été retirés de la liste des exécutables. La commande générique mk4ht permet de lancer les nombreuses +variantes de tex4ht. +

Enfin, TEX Live telle qu’elle est présentée dans le DVD TEX Collection ne peut plus être exécutée de façon +portable (en live) — contrairement à ce qu’indique le nom. Il n’y a désormais plus assez de place sur un seul +DVD. Un effet secondaire agréable de cette nouvelle disposition est que l’installation depuis un DVD physique +est maintenant être beaucoup plus rapide. +

+

10.1.8 2011
+

Les binaires pour Mac OS X (universal-darwin et x86_64-darwin) ne fonctionnent désormais que sous +Leopard ou une version ultérieure ; Panther et Tiger ne sont plus supportés. + + +

Le programme biber pour le traitement des bibliographies est inclus pour les plateformes les plus courantes. +Son développement suit de près celui du paquet biblatex qui réimplémente totalement la gestion des +bibliographies sous LATEX. +

Le programme MetaPost (mpost) ne crée plus et n’utilise plus de fichiers .mem. Les fichiers utiles, comme +plain.mp, sont simplement traités à chaque exécution. Ceci est relié au support de MetaPost +en tant que bibliothèque, qui est un autre changement important bien que peu visible par les +utilisateurs. +

L’implémentation en Perl de updmap, qui n’était utilisée que sous Windows, a été remaniée et est désormais +utilisée sur toutes les plateformes. Il ne devrait pas y avoir de changement visible par les utilisateurs, mis à par +une exécution bien plus rapide. +

+

10.2 Version présente

+

tlmgr permet d’utiliser plusieurs dépôts de paquets simultanément pour les mises à jour. Pour plus de +détails, consulter la section sur les dépôts multiples dans l’aide de tlmgr (utiliser tlmgr help par +exemple). +

Le paramètre \XeTeXdashbreakstate est réglé à 1 par défaut, pour xetex et xelatex. Ceci autorise les +coupures de lignes après les tirets quadratins et demi-quadratins, ce qui a toujours été le comportement de +TEX, LATEX, LuaTEX, etc. Si des documents XeTEX existants doivent conserver une parfaite +compatibilité au niveau des coupures de lignes, il devront mettre \XeTeXdashbreakstate à 0 +explicitement. +

Les fichiers de sortie générés par pdftex et dvips, entre autres, peuvent maintenant dépasser les +2 Go. +

Les 35 polices Postscript standard sont incluses par défaut dans la sortie de dvips, car il y en a trop de +versions différentes dans la nature. +

Dans le mode d’éxécution par \write18 limité (le mode par défaut), la commande mpost est maintenant +autorisée. +

Un fichier texmf.cnf placé dans ../texmf-local (par exemple : /usr/local/texlive/texmf-local/web2c/texmf.cnf) +sera trouvé et utilisé s’il existe. +

Le script updmap lit maintenant un fichier updmap.cfg par arborescence au lieu d’un seul fichier global. Ce +changement devrait être invisible à moins que vous n’ayez édité vos fichiers updmap.cfg directement. Voir la +sortie de updmap –help pour plus de détails. +

Plate-formes : armel-linux et mipsel-linux ont été ajoutés ; sparc-linux et i386-netbsd ne font plus partie de la +distribution principale, mais sont disponibles en tant que plate-formes complémentaires, ainsi que d’autres +plate-formes : http://tug.org/texlive/custom-bin.html. +

+

10.3 Versions futures

+

TEX Live n’est pas un produit parfait ! (et ne le sera jamais). Nous prévoyons de continuer à produire de +nouvelles versions et aimerions fournir plus d’aide, de fonctionnalités, de programmes d’installation et (bien +sûr) une arborescence améliorée et vérifiée de macros et de fontes. Ce travail est effectué par des volontaires +sur leur temps libre, et il y a toujours plus à faire. Si vous pouvez nous aider, n’hésitez pas à nous contacter +(cf. http://tug.org/texlive/contribute.html). +

Corrections, suggestions et propositions d’aide doivent être envoyées à : +

+

Bon travail avec TEX ! + + +

+*Précédentes versions françaises par Daniel Flipo, Éric Picheral, Jacques André, Fabrice Popineau et peut-être +d’autres avant eux — qu’ils en soient tous remerciés. Mes remerciements aussi aux aimables relecteurs : Arnaud +Schmittbuhl, Denis Bitouzé, Élie Roux, Hervé Vigier, Jean-Yves Beaudais, Laurent Méhats, tdc ; je suis bien +sûr responsable des erreurs restantes. N’hésitez pas à me les signaler par mail à mpg@elzevir.fr ! +

+

1.wizard mode en anglais +

2.Dans la description qui suit, le nom des boutons est celui de la version anglaise par souci de cohérence avec les figures. +L’affichage se fait normalement dans la langue de l’utilisateur (variable LANG sous Unix).

+ + + + + + diff --git a/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.pdf b/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.pdf new file mode 100644 index 00000000000..c1abff07477 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.pdf differ diff --git a/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.tex b/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.tex new file mode 100644 index 00000000000..b37ad2475af --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-fr/texlive-fr.tex @@ -0,0 +1,3653 @@ +% $Id$ +% +% French translation of the TeX Live documentation. +% See ../texlive-en for original version. +% This translation is released under the terms of the WTFPL v2. +% +% Last update based on ../texlive-en/texlive-en.tex r26703 +% +% Change history (started May 18th 2002) +% 2009/09/21: synced with 2009 English version, by Manuel Pégourié-Gonnard +% 2008/07/26: synced with 2008 English version, by Daniel Flipo +% 2007/01/18: synced with 2007 English version, by Daniel Flipo +% 2005/11/01: synced with 2005 English version, by Daniel Flipo +% 2005/05/05: re-added section on building binaries (Daniel Flipo) +% 2004/10/28: synced with 2004 English version, by Daniel Flipo +% 2003/08/28: synced with 2003 English version, by Éric Picheral & Jacques André +% 2002/05/25: proof-reading and corrections, by Daniel Flipo +% 2002/05/18: synced with English version, by Fabrice + +\documentclass{article} + +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\let\tldocfrench=1 % pour live4ht.cfg (ou en fait inutilisé?) (mpg) + +\usepackage[english, frenchb]{babel} +\usepackage{xspace} +\frenchbsetup{AutoSpacePunctuation=false, og=«, fg=»} + +\usepackage{tex-live} + +% Francisation de tex-live.sty (df) +\renewcommand{\samp}[1]{\og \texttt{#1}\fg{}} +% (df) La commande \TeXLive n'est pas utilisée en v.f. +\renewcommand{\TL}{\TeX{} Live\xspace}% Robuste (pas besoin de \protect)... +\renewcommand{\TK}{\TeX{} Collection\xspace}% idem. +% tex-live.sty fait précéder les no de page d'une fine... +% en français, une insécable normale est préférable +\def\p.{page~} + +% correction du support pour tex4ht relatif à frenchb.ldf 2.3 ou supérieur +\ifnum\Status=2 % generating html + \makeatletter + \AtBeginDocument{\let\FDP@space\FDP@colonspace} + \makeatother +\fi + +% plus de macros (mpg) +\newcommand\eng[1]{\foreignlanguage{english}{\emph{#1}}} +\newcommand*\semail[1]{\href{mailto:#1}{#1}} + +\setlength{\parindent}{0mm} +\addtolength{\parskip}{.25\baselineskip} + +\begin{document} + +\title{% + {\huge\itshape Guide pratique de \TL \\\smallskip}% + {\LARGE\sffamily \TL 2012}% +} + +\author{ + Karl Berry, éditeur \\[3mm] + \url{http://tug.org/texlive/} \\[6mm] + \textit{Version française} \\[3mm] + Manuel Pégourié-Gonnard\thanks{% + Précédentes versions françaises par Daniel + Flipo, Éric Picheral, Jacques André, Fabrice Popineau et peut-être + d'autres avant eux --- qu'ils en soient tous remerciés. Mes remerciements + aussi aux aimables relecteurs : + Arnaud Schmittbuhl, + Denis Bitouzé, + Élie Roux, + Hervé Vigier, + Jean-Yves Beaudais, + Laurent Méhats, + tdc + ; je suis bien sûr responsable des erreurs restantes. N'hésitez pas à me + les signaler par mail à \semail{mpg@elzevir.fr} ! + } +} + +% relecteurs 2009 : +% Denis Bitouzé, +% Élie Roux, +% Hervé Vigier, +% Jean-Yves Beaudais, +% Laurent Méhats, +% tdc +% relecteurs 2010 : +% Denis Bitouzé, +% Hervé Vigier, +% Arnaud Schmittbuhl + +\date{Juin 2012} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +\end{multicols} + +\section{Introduction} +\label{sec:intro} + +\subsection{\TeX\ Live et \TeX\ Collection} + +Ce document décrit les principales caractéristiques de la +distribution \TL{}, une distribution complète de \TeX{} +pour Linux et autres Unix, \MacOSX{} et systèmes Windows. + +Cette distribution peut être obtenue par téléchargement, sur le \DVD{} \TK{} +distribué par les groupes d'utilisateurs de \TeX{} à leurs membres, ou par +d'autres moyens. +La section \ref{sec:tl-coll-dists} décrit brièvement le contenu du \DVD. +\TL{} et \TK{} sont le fruit des efforts des groupes d'utilisateurs de +\TeX. La description qui suit porte essentiellement sur \TL. + +La distribution \TL comprend les binaires +pré-compilés de \TeX, \LaTeXe, \ConTeXt, \MF, \MP, \BibTeX{} et de nombreux +autres programmes ainsi qu'une bibliothèque étendue de macros, de +fontes et de documentations. Elle permet aussi la composition de textes +dans la plupart des langues utilisées dans le monde. + +On trouvera à la fin du document, section~\ref{sec:history} +(page~\pageref{sec:history}), un bref historique des principales modifications +apportées au fil du temps à la distribution \TL. + +Les utilisateurs des éditions précédentes de \TL{} sont invités à lire, +\emph{avant toute mise à jour}, la section~\ref{sec:tlcurrent} +page~\pageref{sec:tlcurrent} qui présente les principaux changements +intervenus cette année. + +\htmlanchor{platforms} +\subsection{Support des différents systèmes d'exploitation} +\label{sec:os-support} + +\TL{} contient les exécutables pour les principales architectures Unix, dont +\GNU/Linux, \MacOSX et Cygwin. Les sources inclus dans +la distribution devraient être compilables sur des plate-formes pour lesquelles +nous ne fournissons pas d'exécutables. + +Concernant Windows, \acro{XP} et les versions ultérieures sont supportés. +Windows~2000 devrait probablement fonctionner (en bonne partie). Il n'y a pas +d'exécutables spécifiques 64-bit pour Windows, mais les exécutables 32-bit +devraient fonctionner sur les systèmes 64-bit. + +Consulter la section~\ref{sec:tl-coll-dists} pour des solutions alternatives +sous Windows et \MacOSX. + +\subsection{Installation élémentaire de \TL{}} +\label{sec:basic} + +Vous pouvez installer \TL{} de deux façons différentes : soit depuis le \DVD, +soit depuis Internet (\url{http://tug.org/texlive/acquire.html}). +L'installateur réseau est petit et télécharge tout ce +qu'il faut depuis Internet. + +L'installateur du \DVD vous permet d'installer sur votre disque dur. Il n'est +plus possible de lancer \TL directement depuis le \DVD{} \TK{} (ou une image +\code{.iso}), mais vous pouvez créer une installation portable, par exemple +sur une clé \USB{} (voir section~\ref{sec:portable-tl}). + +La procédure d'installation est décrite en détail dans les sections suivantes +(\p.\pageref{sec:install}), mais voici de quoi commencer rapidement. + +\begin{itemize*} + +\item Le script d'installation s'appelle \filename{install-tl}. Il peut + fonctionner en mode « magique\footnote{\eng{wizard mode} en anglais} » avec + l'option \code{-gui=wizard} (c'est le mode par défaut sous Windows), en mode + texte avec l'option \code{-gui=text} (mode par défaut partout ailleurs), ou + en mode graphique expert avec \code{-gui=perltk}. + +\item Ce script installe en particulier le programme « \TL\ Manager » appelé + \prog{tlmgr}. Comme l'installeur, il peut être utilisé en mode graphique ou + en mode texte. Il permet d'ajouter ou de supprimer des composants et de + procéder à différents réglages de configuration. + +\end{itemize*} + +\htmlanchor{security} +\subsection{Remarques sur la sécurité} +\label{sec:security} + +À notre connaissance, les programmes \TeX{} de base en eux-mêmes sont (et ont +toujours été) extrêmement robustes. Cependant, d'autres programmes livrés avec +\TL{} ne le sont peut-être pas autant, bien que chacun fasse de son mieux. De +façon générale, il faut faire preuve de prudence avant de lancer des +programmes sur des données en lesquelles vous n'avez pas toute confiance. Pour +plus de sécurité, travaillez dans un nouveau répertoire créé à cet effet. + +Il convient d'être particulièrement vigilant sous Windows, qui en général +cherche les programmes dans le répertoire courant avant tout, quel que soit le +chemin de recherche défini. Nous avons comblé de nombreuses failles, mais il +en reste certainement d'autres, notamment avec les programmes maintenus +extérieurement. C'est pourquoi nous recommandons de vérifier s'il n'y a pas de +fichiers suspects dans le répertoire courant, en particulier les exécutables +(binaires ou scripts). En général, il ne devrait pas y en avoir, et le simple +fait de compiler un document devrait encore moins en créer. + +Enfin, \TeX{} (et les programmes associés) ont la capacité d'écrire des +fichiers en compilant des documents, capacité qui peut être exploitée à des +fins malignes de nombreuses façons. Ici aussi, la meilleure protection est de +compiler les documents inconnus dans un répertoire nouvellement créé. + +\subsection{Obtenir de l'aide} +\label{sec:help} + +La communauté \TeX{} est active et conviviale ; la plupart des questions +finissent par obtenir une réponse. Par contre, le support est informel, assuré +par des volontaires et des lecteurs occasionnels, aussi est-il +particulièrement important que vous fassiez votre propre travail de recherche +avant de poser une question (si vous préférez un support commercial, vous +pouvez renoncer à \TL{} et acheter un système payant ; voir une liste à +\url{http://tug.org/interest.html#vendors}). + +Voici une liste de ressources, classées selon l'ordre dans lequel nous +recommandons de les utiliser : + +\begin{description} +\item [Getting Started] -- pour ceux qui débutent en \TeX, la page web +\url{http://tug.org/begin.html} contient une courte description +du système. + +\item [\acro{FAQ} \TeX{}] -- la \acro{FAQ} \TeX{} est un vaste recueil + de réponses à toutes sortes de questions, de la plus élémentaire à la + plus complexe. Elle est enregistrée sur le \DVD{} dans + \OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html} + et elle est disponible sur Internet à + l'adresse \url{http://www.tex.ac.uk/faq}. + Merci de consulter cette FAQ avant toute question. + +\item [Catalogue \TeX{}] -- si vous recherchez une extension, une fonte, + un programme, etc., le mieux est de consulter le catalogue + \TeX{} ici : \url{http://mirror.ctan.org/help/Catalogue/}. + +\item [Ressources \TeX{} sur le Web] -- la page web + \url{http://tug.org/interest.html} propose + beaucoup de liens relatifs à \TeX{}, en particulier concernant des + livres, manuels et articles portant sur tous les aspects du système. + +\item [Archives des forums d'aide] -- les principaux forums dédiés + au support de \TeX{} sont les groupes de nouvelles Usenet + \url{news:comp.text.tex} (en anglais) et \url{news:fr.comp.text.tex} + (en français) ainsi que les listes de diffusion + \email{texhax@tug.org} (en anglais) et \email{gut@ens.fr} (en français). + Les archives correspondantes contiennent des + milliers de questions et réponses déjà traitées et permettent + une recherche fructueuse. Voir + \url{http://groups.google.com/groups?group=fr.comp.text.tex} + et \url{http://tug.org/mail-archives/texhax}, respectivement. Une + question posée sur un moteur de recherche, tel que + \url{http://google.com}, peut aussi fournir des réponses pertinentes. + +\item [Poster une question] -- si vous ne trouvez pas de réponse, vous pouvez + poser la question (en français) sur \dirname{fr.comp.text.tex} via Google ou + votre lecteur de nouvelles, ou encore par messagerie à + \email{texhax@tug.org} (en + anglais). Mais avant de le faire, merci de lire l'introduction de la + \acro{FAQ} donnant les conseils sur la façon de rédiger la question pour + avoir des chances d'obtenir une réponse pertinente : + \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. Pour de + l'aide en anglais, vous pouvez également vous tourner vers le site \LaTeX{} + Community : \url{http://www.latex-community.org/} et son forum + \url{http://www.latex-community.org/forum/}, ainsi que le site \TeX\ + StackExchange à \url{http://tex.stackexchange.com/}. + +\item [Support de \TL{}] -- si vous voulez faire un rapport + d'anomalie, émettre des suggestions ou des commentaires sur la + distribution \TL{}, son installation ou sa documentation, utilisez + la liste de diffusion \email{tex-live@tug.org}. Mais attention, si + la question concerne l'utilisation d'un programme particulier inclus + dans \TL{}, il vaut mieux que vous vous adressiez directement à la + personne ou à la liste de diffusion qui maintient le programme. Il suffit + souvent d'ajouter l'option \code{-{}-help} lors de l'exécution du programme + pour trouver à qui adresser le rapport. + +\end{description} + +L'autre aspect du sujet concerne l'aide à apporter aux personnes +soumettant des questions. Les forums \dirname{comp.text.tex}, +\dirname{fr.comp.text.tex} ainsi que les listes de diffusion \code{texhax} +et \code{gut} +sont ouverts à tous, aussi n'hésitez pas à vous y joindre, à commencer +la lecture et à fournir de l'aide là où cela vous est possible. + +% No \protect needed as \TL is defined in French with \newcommand (robust). +\section{Structure de \TK} +\label{sec:overview-tl} + +Nous décrivons ici le contenu de \TK{} qui est un sur-ensemble de \TL. + +\subsection {\TK{} : \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tl-coll-dists} + +Le \DVD{} \TK{} contient les éléments suivants : + +\begin{description} + +\item [\TL{}] -- un système \TeX{} complet à installer. Sa + page web est \url{http://tug.org/texlive/}. + +\item [Mac\TeX] -- un système \TeX\ pour \MacOSX, qui ajoute à \TL un + installateur spécifique à \MacOSX{} et quelques applications propres au + système Mac. Le site de Mac\TeX{} est \url{http://tug.org/mactex/}. + +\item [pro\TeX{}t] -- une extension du système \MIKTEX\ pour Windows qui en + facilite l'installation et ajoute quelques outils. Cette distribution est + totalement indépendante de \TL{}, elle nécessite un mode d'installation + spécifique. Le site de \ProTeXt\ est \url{http://tug.org/protext}. + +\item [CTAN] -- une image du site d'archives \CTAN. + +\item [\texttt{texmf-extra}] -- un répertoire contenant quelques extensions + supplémentaires. + +\end{description} + +Les droits d'utilisation des fichiers présents dans \CTAN, \ProTeXt{} +et \texttt{texmf-extra} diffèrent de ceux de \TL{}, pensez à lire +les licences si vous envisagez de modifier ou de redistribuer certains de +ces fichiers. + +\subsection{Répertoires situés à la racine de \TL{}} +\label{sec:tld} + +Voici une petite liste des répertoires situés à la racine d'une installation +\TL avec une courte description. + +\begin{ttdescription} +\item[bin] -- programmes de la famille \TeX{}, rangés dans des + sous-répertoires selon les plates-formes. +% +\item[readme-*.dir] -- une brève introduction et quelques liens utiles pour + \TL, dans divers langages, sous forme de pages \HTML\ ou de texte brut. +% +\item[source] -- le code source de tous les programmes, dont les principaux + programmes \TeX{} basés sur \Webc{}. +% +\item[texmf] -- répertoire contenant les programmes et leur documentation ; ne + contient ni les formats ni les extensions (la variable \envname{TEXMFMAIN} + de la section suivante pointe sur ce répertoire). +% +\item[texmf-dist] -- répertoire principal où se trouvent les extensions, + les fontes, etc., avec leur documentation (la variable \envname{TEXMFDIST} + de la section suivante pointe sur ce répertoire). +% +\item[tlpkg] -- scripts et programmes d'installation, et + éléments spécifiques pour Windows. +\end{ttdescription} + +On trouve également, au même niveau que les répertoires mentionnés ci-dessus, +les scripts d'installation et le fichier \filename{README} principal en +anglais (disponible en différentes langues dans les répertoires +\filename{readme-*.dir} susmentionnés). + +Concernant la documentation, le fichier \OnCD{doc.html}, qui contient une +liste exhaustive de liens vers les fichiers de documentation, peut être bien +utile. La documentation des programmes (manuels, pages de \cmdname{man}, +fichiers \cmdname{info}) se trouve dans \dirname{texmf/doc}. Celle des autres +paquets et des formats est dans \dirname{texmf-dist/doc}. Vous pouvez utiliser +le programme \cmdname{texdoc} pour trouver chaque fichier de documentation, où +qu'il soit. + +La documentation de \TL\ proprement dite (que vous consultez actuellement) est +disponible dans le répertoire \dirname{texmf/doc/texlive} en plusieurs +langues, + +\begin{itemize*} +\item{anglais :} \OnCD{texmf/doc/texlive/texlive-en}, +\item{allemand :} \OnCD{texmf/doc/texlive/texlive-de}, +\item{chinois (simplifié) :} \OnCD{texmf/doc/texlive/texlive-zh-cn}, +\item{français :} \OnCD{texmf/doc/texlive/texlive-fr}, +\item{italien :} \OnCD{texmf/doc/texlive/texlive-it} +\item{polonais :} \OnCD{texmf/doc/texlive/texlive-pl}, +\item{russe :} \OnCD{texmf/doc/texlive/texlive-ru}, +\item{tchèque \& slovaque :} \OnCD{texmf/doc/texlive/texlive-cz}. +\end{itemize*} + +\subsection{Description des arborescences « texmf » de \TL} +\label{sec:texmftrees} + +Nous donnons ici la liste des variables prédéfinies qui contiennent les noms +des différentes arborescences de type « texmf », l'usage qui en est fait, et +leurs valeurs par défaut dans \TL. La commande \cmdname{tlmgr~conf} montre +les valeurs de ces variables, ce qui permet de savoir où se trouvent ces +différentes arborescences dans une installation donnée. + +Notez bien que toutes ces arborescences, y compris les arborescences +personnelles, doivent suivre la structure standard des répertoires de \TeX{} +(\TDS{} : \url{http://tug.org/tds}) avec sa pléthore de sous-répertoires, ou +les fichiers ne seront pas pris en compte. La section +\ref{sec:local-personal-macros} page \pageref{sec:local-personal-macros} +donne plus de détails à ce sujet. + +\begin{ttdescription} +\item [TEXMFMAIN] -- contient les éléments essentiels du système, comme les + fichiers de configuration, des scripts utilitaires, et la documentation des + programmes. +\item [TEXMFDIST] -- contient les fichiers de macros (Plain, \LaTeX, \ConTeXt, + etc.), les fontes, etc. Rien ne devrait être ajouté, modifié ni supprimé + manuellement dans cette arborescence. +\item [TEXMFLOCAL] -- c'est là que l'administrateur de la machine doit + placer les classes et extensions locales, les fontes non disponibles + dans \TL, etc. +\item [TEXMFHOME] -- contient les fichiers personnels (extensions, classes, + fontes) de l'utilisateur ; ce répertoire est installé automatiquement dans + le répertoire personnel de l'utilisateur. +\item [TEXMFCONFIG] -- c'est là que les scripts \cmdname{texconfig} + \cmdname{updmap} et \cmdname{fmtutil} recherchent leurs fichiers de + configuration (personnelles) en priorité. +\item [TEXMFSYSCONFIG] -- c'est là que les scripts \cmdname{texconfig-sys}, + \cmdname{updmap-sys} et \cmdname{fmtutil-sys} recherchent leurs fichiers de + configuration (globaux) en priorité. +\item [TEXMFVAR] -- c'est là que les scripts \cmdname{texconfig}, + \cmdname{updmap} et \cmdname{fmtutil} rangent les (versions personnelles de) + données générées, comme les formats et les fichiers \verb+.map+. +\item [TEXMFSYSVAR] -- c'est là que les scripts \cmdname{texconfig-sys}, + \cmdname{updmap-sys} et \cmdname{fmtutil-sys} rangent les (versions globales + des) données générées, comme les formats et les fichiers \verb+.map+. +\item [TEXMFCACHE] -- arborescence(s) utilisée(s) par \ConTeXt\ Mk\acro{IV} + pour stocker des (versions de cache de) fichiers de travails. +\end{ttdescription} + +La structure de l'arborescence \TL{} est par défaut la suivante : +\begin{description} +\item[racine multi-utilisateur] (par exemple \verb|/usr/local/texlive|, + \verb|D:\texlive|,\dots) qui contient éventuellement plusieurs + distributions : + \begin{ttdescription} + \item[2011] -- la distribution précédente, + \item[2012] -- la distribution actuelle, + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] -- exécutables Linux, + \item [...] + \item [universal-darwin] -- exécutables \MacOSX, + \item [win32] -- exécutables Windows, + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] -- correspond à \envname{TEXMFMAIN}, + \item [texmf-dist\ \ ] -- correspond à \envname{TEXMFDIST}, + \item [texmf-var\ \ \ ] -- correspond à \envname{TEXMFSYSVAR}, + \item [texmf-config] -- correspond à \envname{TEXMFSYSCONFIG}, + \end{ttdescription} + \item [texmf-local] -- correspond à \envname{TEXMFLOCAL}, normalement + commun à plusieurs distributions \TL{} (2007, 2008, etc.), + \end{ttdescription} + \item[répertoire personnel de l'utilisateur] \texttt{\$HOME} ou + \texttt{\%USERPROFILE\%} : + \begin{ttdescription} + \item[.texlive2011] -- fichiers propres à l'utilisateur générés + automatiquement par la distribution \TL{} précédente, + \item[.texlive2012] -- fichiers propres à l'utilisateur générés + automatiquement par la distribution \TL{} actuelle, + \begin{ttdescription} + \item [texmf-var\ \ \ ] -- correspond à \envname{TEXMFVAR}, + \envname{TEXMFCACHE}, + \item [texmf-config] -- correspond à \envname{TEXMFCONFIG}, + \end{ttdescription} + \item[texmf] -- correspond à \envname{TEXMFHOME}, répertoire regroupant + tous les répertoires de macros personnelles : \dirname{texmf/tex/latex} + par exemple pour les fichiers de macros \LaTeX, etc. + \end{ttdescription} +\end{description} + +\subsection{Les extensions de \TeX} +\label{sec:tex-extensions} + +Le programme \TeX\ original de Knuth est figé, sauf corrections de bugs, +rares. C'est toujours le programme \prog{tex} présent dans \TL, et ceci ne +changera pas autant dans un futur prévisible. \TL contient plusieurs variantes +étendues de \TeX. + +\begin{description} + +\item [\eTeX{}] \label{text:etex} ajoute un jeu de nouvelles + primitives et les extensions \TeXXeT{} pour l'écriture de droite + à gauche ; \eTeX{} est, en mode normal, 100\% compatible avec + \TeX{} standard. Pour plus de détails consulter le + fichier \OnCD{texmf-dist/doc/etex/base/etex_man.pdf} du \DVD{}. + +\item [pdf\TeX{}] inclut les extensions \eTeX{} et produit, au choix, des + fichiers au format Acrobat \acro{PDF} ou au format \dvi{} ; il inclut aussi + de nombreuses extensions indépendantes du format de sortie. C'est le moteur + de base sur lequel sont construits tous les formats autres que plain\TeX{}, + comme \prog{etex}, \prog{latex} et \prog{pdflatex}. Son site web est + \url{http://www.pdftex.org/}. Le manuel d'utilisation se trouve sur le + \DVD{} dans \OnCD{texmf/doc/pdftex/manual/}. Le fichier + \OnCD{texmf/doc/pdftex/pdftex/manual/samplepdf/samplepdf.tex} donne des + exemples d'utilisation. + +\item [Lua\TeX] est le successeur de pdf\TeX{} avec lequel il reste en grande + partie (mais pas totalement) compatible. Ses possibilités sont aussi censées + être un sur-ensemble de celles d'Aleph (voir ci-dessous), bien qu'il ne soit + pas prévu pour être techniquement compatible. Lua\TeX{} inclut le langage + de script Lua (voir \url{http://www.lua.org/}) qui apporte des solutions + élégantes à beaucoup de problèmes épineux en \TeX{} pur. La commande + \filename{texlua} fonctionne comme un interpréteur Lua indépendant, et est + déjà utilisée en tant que telle dans \TL. Voir \url{http://www.luatex.org/} + et \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [Xe\TeX] ajoute la possibilité d'utiliser en entrée le codage Unicode + et en sortie les fontes OpenType et les fontes système de la machine, ceci + grâce à des bibliothèques externes : voir \url{http://tug.org/xetex/}. + +\item [\OMEGA{} (Omega)] fonctionne en utilisant Unicode et des caractères 16 + bits, ce qui lui permet de travailler directement et simultanément avec + presque toutes les écritures du monde. L'extension supporte aussi le + chargement dynamique d'\acro{OTP} (\OMEGA{} \emph{Translation Processes}) + qui permet à l'utilisateur d'appliquer sur des flux d'entrée quelconques des + transformations complexes qu'il aura lui-même définies. \TL n'inclut plus + Omega en tant que programme séparé ; seul Alpeh est fourni. + +\item [Aleph] combine les fonctionnalités de \OMEGA\ et de \eTeX ; voir + \OnCD{texmf-dist/doc/aleph/base}. + +\end{description} + +\subsection{Quelques autres programmes intéressants + dans \TL} + +Voici quelques autres programmes couramment utilisés et présents dans +\TL{} : + +\begin{cmddescription} + +\item [bibtex, bibtex8] -- traitement des bibliographies. + +\item [makeindex, xindy] -- traitement des index. + +\item [dvips] -- conversion \dvi{} vers \PS{}. + +\item [xdvi] -- visualisation \dvi{} pour le système X Window. + +\item [dvilj] -- pilote \dvi{} pour les imprimantes HP LaserJet. + +\item [dviconcat, dviselect] -- couper/Coller de pages à partir de fichiers + \dvi{}. + +\item [dvipdfmx] -- conversion \dvi{} vers \acro{PDF}, une alternative à + pdf\TeX{} (mentionné ci-dessus) pour produire des fichiers \acro{PDF}. + +\item [psselect, psnup, \ldots] -- utilitaires \PS{}. + +\item [pdfjam, pdfjoin, \ldots] -- utilitaires \acro{PDF}. + +\item [texexec, texmfstart] -- processeurs Con\TeX{}t et \acro{PDF}. + +\item [tex4ht] -- conversion \TeX{} vers \acro{HTML} et \acro{XML}. + +\end{cmddescription} + +\subsection{Fontes incluses dans \TL} +\label{sec:tl-fonts} + +La distribution \TL{} contient un grand nombre de fontes vectorielles de haute +qualité : voir \url{http://tug.org/fonts} et +\OnCD{texmf-dist/doc/fonts/free-math-fonts-survey}. + + +\htmlanchor{installation} +\section{Installation} +\label{sec:install} + +\subsection{Démarrage de l'installation} +\label{sec:inst_start} + +La première chose à faire est de récupérer le \DVD{} \TK ou de +télécharger le programme d'installation par le réseau. +Le programme d'installation s'appelle \filename{install-tl} pour Unix +et \filename{install-tl.bat} pour Windows. La page +\url{http://tug.org/texlive/acquire.html} donne plus d'informations sur les +différentes façons d'obtenir le logiciel. + +\begin{description} +\item [Installeur réseau] -- à télécharger sur CTAN dans + \dirname{systems/texlive/tlnet}; l'url + \url{http://mirror.ctan.org/systems/texlive/tlnet} vous redirigera + automatiquement vers le serveur d'archive le plus proche de chez vous. + Deux versions sont disponibles, \filename{install-tl.zip} utilisable sous + Unix et Windows, et \filename{install-unx.tar.gz} pour Unix seulement + (y compris \MacOSX). Après décompression de l'un de ces deux fichiers, les + scripts \filename{install-tl} et \filename{install-tl.bat} se trouveront + dans le sous-répertoire \dirname{install-tl}. + +\item [\DVD \TK{}] -- aller dans son répertoire \dirname{texlive}. + Sous Windows, l'installation démarre en principe + automatiquement quand vous insérerez le \DVD, sinon, il faudra exécuter le + script d'installation \filename{install-tl} ou \filename{install-tl.bat}. + Le \DVD \TK{} est distribué gratuitement aux membres des groupes + d'utilisateurs de \TeX{} (Gutenberg par exemple en France, voir la liste + des groupes sur \url{http://tug.org/usergroups.html}). Il est également + possible de l'acheter séparément (\url{http://tug.org/store}) ou de graver + une image \ISO{} téléchargée, voire de la monter directement, sur la plupart + des systèmes. Après avoir installé depuis le \DVD{}, si vous voulez accéder + aux mises à jour en continu depuis Internet, consultez la + section~\ref{sec:dvd-install-net-updates}. +\end{description} + +Le même programme d'installation est utilisé quelle que soit la source +d'installation. La différence la plus visible entre ces deux modes et qu'avec +l'installation par le réseau, vous obtenez les version courantes des +différents paquets, contrairement au \DVD{} (ou image \ISO) qui n'est pas mis +à jour entre deux versions majeures. + +Les sections suivantes expliquent plus en détails le fonctionnement de +l'installateur. + +\subsubsection{Installation sous Unix} + +Dans ce qui suit l'invite du \textit{shell} est notée \texttt{>} ; les +commandes de l'utilisateur sont en \Ucom{\texttt{gras}}. Le programme +\filename{install-tl} est un script Perl ; la façon la plus simple de +le démarrer sur un système Unix est la suivante. +\begin{alltt} +> \Ucom{cd /chemin/de/installateur} +> \Ucom{perl install-tl} +\end{alltt} +(Vous pouvez aussi invoquer \Ucom{perl /chemin/de/installateur/install-tl} ou +\Ucom{./install-tl} si le fichier est toujours exécutable, etc. ; nous ne +répéterons plus toutes ces variantes.) Il est possible que vous deviez +agrandir la fenêtre de votre terminal pour voir le texte complet de +l'installateur (figure~\ref{fig:text-main}). + +Pour travailler en mode graphique expert (figure~\ref{fig:gui-main} -- +attention, le module \dirname{Perl/TK} doit être disponible, avec le support +de \acro{XFT}, ce qui est en général le cas sous \GNU/Linux, mais pas +nécessairement sous d'autres systèmes) : +\begin{alltt} +> \Ucom{cd /chemin/de/installeur} +> \Ucom{./install-tl -gui} +\end{alltt} + +La liste complète des options est donnée par +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{Attention} : le matériel installé doit normalement être accessible à +tous les utilisateurs de la machine ; si celui qui installe n'est pas +\textit{root}, il devra s'assurer que son \code{umask} est adapté, par +exemple \code{umask 022} ou \code{umask 002}. +Consulter la documentation système pour plus de précisions. + +\textbf{Remarques particulières pour Cygwin} : contrairement aux autres +système compatibles Unix, Cygwin ne comprend pas par défaut tous les +programmes requis pour faire fonctionner l'installateur \TL. Voir la +section~\ref{sec:cygwin} pour plus de détails. + +\subsubsection{Installation sous Mac\,OS\,X} + +Une distribution spécifique, Mac\TeX\ (\url{http://tug.org/mactex}), a été +mise au point pour \MacOSX. Nous recommandons d'utiliser son installateur +natif, plutôt que d'installer la distribution \TL{} en suivant la procédure +indiquée pour Unix. En effet, Mac\TeX{} comprend des ajustements spécifiques +pour le système \MacOSX{} et facilite la cohabitation entre plusieurs +distributions \TeX{} (Mac\TeX, Fink, MacPorts, etc.). + +Mac\TeX\ est fortement basée sur \TL et les arborescences principales sont en +tous points identiques. Quelques répertoires contenant de la documentation et +des applications spécifiques au Mac sont ajoutés. + +\subsubsection{Installation sous Windows} + +Si vous utilisez l'installeur réseau ou si l'insertion du \DVD{} ne lance pas +l'installation automatiquement, double-cliquez sur \filename{install-tl.bat}. +Pour disposer de plus d'options, par exemple pour sélectionner des collections +de paquets spécifiques au lieu de faire une installation complète, utilisez +plutôt \filename{install-tl-advanced.bat}. + +Il est également possible de travailler en ligne de commande ; +dans ce qui suit l'invite du \textit{shell} est notée \texttt{>}, les +commandes de l'utilisateur sont notées \Ucom{\texttt{en gras}}. Voici les +commandes à lancer : +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} +à condition d'être dans le répertoire du script d'installation, sinon +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +où \texttt{D:} désigne le lecteur de \DVD où se trouve la collection \TeX. +La figure~\ref{fig:wizard-w32} montre l'installateur en mode magique, qui est +le mode par défaut pour Windows. + +Pour travailler en mode texte : +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} +La liste complète des options est donnée par +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2012 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + platforms: 1 out of 19 + + installation scheme (scheme-full) + 84 collections out of 85, disk space required: 3091 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + options: + [ ] use letter size instead of A4 by default + ... + + set up for portable installation + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{Écran principal de l'installateur en mode texte (\GNU/Linux)}% +\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth, trim=10 4 0 20, clip} +\caption{Installateur graphique en mode expert (\GNU/Linux)} +\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth,trim=0 4 0 0,clip} +\caption{Installateur graphique en mode expert (Windows)} +\label{fig:wizard-w32} +\end{figure} + + +\htmlanchor{cygwin} +\subsubsection{Installation sous Cygwin} +\label{sec:cygwin} + +L'installateur \TL fonctionne uniquement sous Cygwin 1.7. Avant de commencer +l'installation, utilisez le programme \filename{setup.exe} de Cygwin pour +installer les paquets \filename{perl} et \filename{wget} si ce n'est déjà +fait. Il est également recommandé d'installer les paquets suivants : +\begin{itemize*} +\item \filename{fontconfig}, utilisé par \XeTeX ; +\item \filename{ghostscript}, nécessaire pour divers utilitaires ; +\item \filename{libXaw7}, utilisé par \code{xdvi} ; +\item \filename{ncurses}, qui fournit la commande \code{clear} utilisée par + l'installateur. +\end{itemize*} + +\subsubsection{Installation en mode texte} + +La figure~\ref{fig:text-main} présente l'écran principal de configuration en +mode texte sous Unix/Linux, où c'est le mode par défaut. + +Il s'agit d'un installateur en mode ligne de commande, il n'y a pas de notion +de curseur ; par exemple, vous ne pouvez pas naviguer entre les cases à cocher +et les champs d'entrée avec la touche tabulation. Tapez une des lettres proposées +(en respectant la casse) suivie de « entrée » (retour-chariot), l'écran se +mettra automatiquement à jour. + +L'interface est volontairement rudimentaire afin de permettre son utilisation +sur le plus grand nombre possible de systèmes même avec des versions très +dépouillées de Perl. + +\subsubsection{Installation en mode graphique-expert} + +La figure~\ref{fig:gui-main} page~\pageref{fig:gui-main} présente l'écran +principal de configuration en mode graphique sous \GNU/Linux. À part +l'utilisation de boutons et menus, cet installateur ne diffère pas beaucoup de +l'installateur en mode texte. + +Ce mode peut être demandé explicitement avec +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} + +\subsubsection{L'installation en mode magique} + +Sous Windows, l'installateur démarre par défaut dans le mode le plus simple +que nous avons pu concevoir, le mode « magique » (figure~\ref{fig:wizard-w32}. +Dans ce mode, tout est installé et presque aucune question n'est posée. Par +contre, si vous souhaitez personnaliser votre installation, vous devriez +utiliser un des autres modes. + +Ce mode peut être demandé explicitement avec +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + +\subsection{Choix des options d'installation} +\label{sec:runinstall} + +Les options proposées sont censées être assez explicites, voici cependant +quelques précisions. + +\subsubsection{Choix des binaires (Unix seulement)} +\label{sec:binary} + +\begin{figure}[tbh] +\centering +\begin{boxedverbatim} +Available platforms: +=============================================================================== + 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 +\end{boxedverbatim} +\caption{Menu pour le choix des binaires}\label{fig:bin-text} +\end{figure} + +La figure~\ref{fig:bin-text} présente les choix de binaires possibles en mode +texte. Seuls les binaires correspondant à l'architecture détectée seront +installés par défaut. Rien n'empêche d'en sélectionner d'autres si nécessaire, +ce qui peut être intéressant dans le cas de machines en réseau ou sur des +systèmes en « double boot ». + +\subsubsection{Sélection de ce qui va être installé} +\label{sec:components} + +\begin{figure}[tbh] +\centering +\begin{boxedverbatim} +Select scheme: +=============================================================================== + a [X] full scheme (everything) + b [ ] medium scheme (small + more packages and languages) + c [ ] small scheme (basic + xetex, metapost, a few languages) + d [ ] basic scheme (plain and latex) + e [ ] minimal scheme (plain only) + f [ ] ConTeXt scheme + g [ ] GUST TeX Live scheme + h [ ] teTeX scheme (more than medium, but nowhere near full) + i [ ] XML scheme + j [ ] custom selection of collections +\end{boxedverbatim} +\caption{Menu « Scheme »}\label{fig:scheme-text} +\end{figure} + +Dans le menu « Scheme » (voir figure~\ref{fig:scheme-text}) on choisit un +schéma général de configuration qui détermine un ensemble de collections à +installer. Le schéma par défaut (\optname{full}) consiste à tout installer, +ce qui est recommandé. Vous pouvez également choisir \optname{basic} pour un +petit système, \optname{minimal} pour des tests uniquement, \optname{medium} +ou \optname{teTeX} pour quelque chose d'intermédiaire. Il existe aussi des +schémas spécialisés ou spécifiques à un pays. + +\begin{figure}[tbh] +\centering +\tlpng{stdcoll}{.7\linewidth,trim=0 4 0 0,clip} +\caption{Menu « Collections » (Linux)}\label{fig:collections-gui} +\end{figure} + +Une fois choisi le schéma (\eng{scheme}) général, il est possible d'ajouter ou +de supprimer des composants, appelés +ici collections. Il y a deux types de collections : les +« Standard Collections » qui concernent les fontes, les extensions, les +formats, etc. (voir figure~\ref{fig:collections-gui}) et les +« Language Collections » qui permettent de préciser la liste des langues +qui seront utilisables sur le système (indispensable !). Attention, si vous +travaillez en mode texte, dans ces menus la casse des lettres est importante. +En mode graphique, il suffit de cocher ou de décocher les cases en cliquant. + +Il est possible de raffiner encore les choix mais il faudra alors utiliser le +gestionnaire de paquets TeX Live (\prog{tlmgr}) ultérieurement, voir la +section~\ref{sec:tlmgr}. + +\subsubsection{Répertoires d'installation} +\label{sec:directories} + +L'arrangement par défaut des différents répertoire est donné à la +section~\ref{sec:texmftrees}, page~\pageref{sec:texmftrees}. La racine de +l'installation principale, \dirname{TEXDIR}, vaut par défaut +\dirname{/usr/local/texlive/2012} sous Unix et |%SystemDrive%\texlive\2012| +sous Windows. + +Il peut être nécessaire de changer la valeur de \dirname{TEXDIR} +lorsque celui qui procède à l'installation n'a pas les droits d'écriture +sur le répertoire \dirname{TEXDIR} (l'installation n'est pas réservée au +superutilisateur \eng{root} ou « Administrateur », il suffit d'avoir les droits +en écriture sur le répertoire \dirname{TEXDIR}). + +Un autre choix raisonnable est d'installer \TL{} dans votre répertoire +personnel, surtout si vous prévoyez d'en être le seul utilisateur. Vous +pouvez utiliser |~| à cet effet, par exemple |~/texlive/2012|. + +Dans tous les cas, il est recommandé d'inclure l'année dans le chemin afin de +pouvoir conserver plusieurs versions de \TL{} en parallèle. +Rien n'empêche d'ajouter un lien symbolique (par exemple +\dirname{/usr/local/texlive-current}) qui pointe sur la version actuellement +utilisée. Ceci facilite les basculements d'une version à une autre. + +Le répertoire \envname{TEXMFHOME} est destiné à +regrouper les répertoires de macros personnelles. Par défaut, son emplacement +est |~/texmf| ; ici, le |~| est préservé dans les fichiers de configurations +crées, de façon à être remplacé dynamiquement pour chaque utilisateur de \TeX, +par la valeur des variables d'environnement \dirname{\$HOME} sous Unix et +|%USERPROFILE%| sous Windows. +Attention, comme tous les autres répertoires, \envname{TEXMFHOME} doit +respecter la structure \TDS{} ou les fichier ne seront pas trouvés. + +Enfin, \dirname{TEXMFVAR} est l'emplacement où sont stockées les fichiers de +cache spécifiques à chaque utilisateur. \dirname{TEXMFCACHE} est utilisé par +\ConTeXt\ Mk\acro{IV} pour le même but (voir la section~\ref{sec:context-mkiv} +page~\pageref{sec:context-mkiv}). + +\subsubsection{Options} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Options setup: +=============================================================================== +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: + after installation, get package updates from CTAN: [X] +\end{boxedverbatim} +\caption{menu « Options » (Unix)}\label{fig:options-text} +\end{figure} + +La figure~\ref{fig:options-text} présente le menu « Options » en mode +texte, sur lesquelles voici quelques précisions. + +\begin{description} +\item[use letter size instead of A4 by default] -- la taille du papier + par défaut pour des outils comme \prog{dvips}, \prog{pdftex}, \prog{xdvi}. + Cette option n'a pas d'influence sur les tailles par défaut utilisées par + des jeux de macros comme les classes standard de \LaTeX\ ou ses modules, qui + seront prioritaires. Dans tous les cas, il est possible et recommandé de + préciser la taille de papier souhaitée au sein de chaque document. + +\item[execution of restricted list of programs] -- à compter de \TL 2010, + l'exécutions de certains programmes externes depuis \TeX{} est autorisée par + défaut. La (très courte) liste de programmes autorisés se trouve dans le + fichier \filename{texmf.cnf}. Voir la section~\ref{sec:2010news} pour plus + de détails. + +\item[create format files] -- création de tous les formats à l'installation. + Bien que cette opération prenne un peu de temps, il est conseillé de ne pas + la supprimer, sinon les formats seront créés au coup par coup dans les + répertoires personnels des utilisateurs (sous \envname{TEXMFVAR}). Les + formats personnels ainsi créés ne bénéficieront pas des mises à jour + éventuelles effectuées ultérieurement sur l'installation \TL{}, ce qui + peut engendrer des incompatibilités. + +\item[install font/macro \ldots\ tree] -- ces options permettent de ne pas + installer les fichiers de documentation et les sources présents dans la + plupart des paquets. Il est recommandé de conserver la valeur par défaut. + +\item[create symlinks in standard directories] -- + cette option (pour Unix seulement) permet d'éviter d'avoir à modifier les + variables d'environnement + \envname{PATH}, \envname{MANPATH} et \envname{INFOPATH} après + l'installation. Elle nécessite les droits d'écriture dans les répertoires + cibles. Il est fortement recommandé de \emph{ne pas} utiliser cette option + si un système \TeX\ est déjà installé par votre système d'exploitation. Elle + est destinée uniquement à permettre l'accès à \TeX\ depuis des répertoires + standard comme \dirname{/usr/local/bin} sur les systèmes où aucune autre + installation \TeX\ n'est présente. + +\item[after installation \ldots\ \CTAN] -- lors d'une installation depuis le + \DVD, cette option est activés par défaut, car on souhaite généralement + bénéficier des mises à jour de paquets depuis la partie du \CTAN\ les + hébergeant, qui est mise à jour toute l'année. La seule raison probable de + la désactiver est si vous installez seulement un sous-ensemble de \TL\ + depuis le \DVD\ et prévoyez de la compléter ultérieurement, toujours depuis + le \DVD. Dans tous les cas, le dépôt de paquets utilisé par l'installateur + et celui utilisé après installation peuvent être choisis de façon + indépendante ; voir les sections~\ref{sec:location} + et~\ref{sec:dvd-install-net-updates}. +\end{description} + +Lorsque vous êtes satisfait des réglages faits, il vous reste à taper +\code{I} pour lancer le processus d'installation. Lorsque celui-ci sera +terminé, sautez à la section~\ref{sec:postinstall} pour voir s'il y a +d'autres choses à faire. + +\subsection{Options de install-tl en ligne de commande} +\label{sec:cmdline} + +Tapez +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +pour obtenir la liste de toutes les options disponibles. Vous pouvez utiliser +|-| ou |--| pour introduire le noms des options. Voici les plus courantes : + +\begin{ttdescription} +\item[-gui] : exécution en mode graphique (si possible). Ceci nécessite le + module Perl/Tk (\url{http://tug.org/texlive/distro.html#perltk}) avec + support de \acro{XFT} ; si + Perl/Tk n'est pas disponible, l'installation se poursuit en mode texte. + +\item[-no-gui] : exécution en mode texte, même sous Windows. + +\item[-lang {\sl LL}] : langue utilisé par l'interface de l'installateur, + spécifiée par son code standard (généralement sur deux lettres). + Le programme s'efforce de déterminer automatiquement + la langue à utiliser et se rabat sur l'anglais en cas d'échec. Vous pouvez + obtenir la liste des langues disponibles avec \code{install-tl --help}. + +\htmlanchor{opt-in-place} +\item[-in-place] : si vous possédez déjà une copie de \TL{} acquise par rsync, + svn ou un autre moyen (voir + \url{http://tug.org/texlive/acquire-mirror.html}), cette option vous permet + de l'utiliser directement, en l'état, de de procéder uniquement aux + opération post-installation. Attention, ceci peut écraser le fichier + \filename{tlpkg/texlive.tlpdb}, c'est à vous de le sauvegarder auparavant si + vous le désirez. Aussi, une éventuelle déinstallation de paquet est à faire + manuellement. N'utilisez pas cette option à moins de savoir ce que vous + faites. Cette option ne peut pas être activée depuis l'interface de + l'installateur. + +\item[-portable] : créer une installation utilisable de façon portable sur une + clé \acro{USB} ou un \DVD ; peut aussi être activé depuis l'interface + textuelle de l'installateur avec la commande \code{V}, ainsi que depuis + l'interface graphique. Voir la section~\ref{sec:portable-tl} pour les + détails. + +\item[-profile {\sl fichier}] : charger le profil d'installation depuis le + \var{fichier} et installer sans interaction avec l'utilisateur. + À chaque exécution, le script d'installation + écrit un compte-rendu dans le fichier \filename{texlive.profile} du + sous-répertoire \dirname{tlpkg} de votre installation \TL. Ce fichier peut + être donné en argument pour refaire exactement la même installation sur une + machine différente, par exemple. Sinon, vous pouvez utiliser un profil + personnalisé ; la façon la plus facile de le créer est de partir d'un profil + généré et de modifier les valeurs, ou d'utiliser un fichier vide pour + utiliser toutes les valeurs par défaut. + +\item [-repository {\sl url-ou-répertoire}] : choix d'une source où récupérer + le matériel à installer, voir ci-dessous. +\end{ttdescription} + +\subsubsection{L'option \optname{-repository}} +\label{sec:location} + +L'emplacement par défaut du dépôt de paquets en ligne est un miroir du \CTAN{} +choisi automatiquement par le service de redirection +\url{http://mirror.ctan.org/}. + +Si vous voulez en utiliser un autre, vous pouvez utiliser l'option +\optname{-repository} avec pour valeur une url commençant par \texttt{ftp:}, +\texttt{http:} ou \texttt{file:/}, ou un chemin vers un répertoire local. +(Dans le cas d'une url en \texttt{http:} ou \texttt{ftp:}, un éventuel +caractère « \texttt{/} » à la fin, de même qu'une éventuelle composante +\texttt{tlpkg/} finale, sont ignorés.) + +Par exemple, vous pouvez choisir un miroir du \CTAN{} en particulier avec un +valeur comme \url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +en substituant le nom d'un vrai miroir et le chemine ver l'archive \TeX{} +spécifique à la place de |ctan.example.org|. La liste des miroirs du CTAN est +disponible sur \url{http://ctan.org/mirrors}. + +Si l'argument donné est local (un chemin ou une url en \texttt{file:/}) et que +les paquets sont présents à la fois sous forme de fichiers non compressés et +d'archives compressées, ces dernières seront utilisées. + +\subsection{Étapes post-installation} +\label{sec:postinstall} + +Selon les cas quelques opérations supplémentaires peuvent être nécessaires. + + +\subsubsection{Variables d'environnement sous Unix} +\label{sec:env} + +Si vous avez choisi de créer des liens symboliques dans les répertoires +standard (voir la section~\ref{sec:options}), alors il est inutile de modifier +vos variables d'environnement. Sinon, sur les systèmes Unix, le répertoire +contenant les binaires pour votre plateforme doit être ajouté au \envname{PATH}. +(Sous Windows, l'installateur s'en occupe, il n'y a rien à faire.) + +À chaque architecture correspond un sous-répertoire +de \dirname{TEXDIR/bin}, voir la liste à la figure~\ref{fig:bin-text} +\pageref{fig:bin-text}. + +Si vous voulez que votre système trouve les fichiers de documentation +concernant \TL{} aux formats man et Info, il faut également ajuster les +variables \envname{MANPATH} et \envname{INFOPATH}. Sur certains systèmes, ceci +ne sera pas nécessaire et il suffira de régler le \envname{PATH} pour que les +pages de man et d'Info soient trouvées. + +Pour les \textit{shells} dits « Bourne-compatible » tels que +\prog{bash} sous GNU/Linux, le fichier à éditer peut être +\filename{\$HOME/.bash_profile} ou \filename{\$HOME/.profile} et les lignes à +ajouter sont de la forme suivante : + +\begin{sverbatim} +PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} +%stopzone + +Pour les \textit{shells} \prog{csh} ou \prog{tcsh}, le fichier à éditer +est en principe \filename{$HOME/.cshrc} %$ +et les lignes à ajouter sont de la forme suivante : +\begin{sverbatim} +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{sverbatim} + +Si vous avez déjà des réglages concernant ces variables dans vos fichiers de +configurations, il suffit bien sûr d'y rajouter les répertoires concernant +\TL{}. + +\subsubsection{Variables d'environnement : configuration multi-utilisateur} +\label{sec:envglobal} + +Il est possible d'ajuster les variables \envname{PATH}, \envname{MANPATH} +et \envname{INFOPATH} globalement pour tous les utilisateurs présents et +futurs sans avoir à éditer les fichiers personnels de chacun mais les façons +de le faire sont trop différentes d'un système à l'autre pour être présentées +ici. + +Voici quelques pistes : pour \envname{MANPATH} chercher un fichier +\filename{/etc/manpath.config}, s'il est présent lui ajouter +des lignes comme +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man +\end{sverbatim} +Pour les deux autres, chercher un fichier\filename{/etc/environment}, il est +éventuellement possible d'y définir les valeurs des variables d'environnement +telles que \envname{PATH} et \envname{INFOPATH}. + +Nous créons aussi à l'installation un lien symbolique nommé \code{man} dans +les répertoires des binaires Unix. Certains programmes \code{man}, comme celui +livré en standard sur \MacOSX{}, l'utilisent pour trouver automatiquement les +pages de \code{man}, rendant inutile tout réglage de \envname{MANPATH}. + +\subsubsection{Mises à jour par Internet après une installation par le \DVD} +\label{sec:dvd-install-net-updates} + +Si vous avez installé \TL{} depuis le \DVD{} et souhaitez ensuite accéder aux +mises à jour par Internet, il vous faudra exécuter la commande suivante (après +avoir réglé votre \envname{PATH} si nécessaire, comme expliqué à la section +précédente) : + +\begin{alltt} +> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +Ceci dit à \cmdname{tlmgr} d'utiliser pour les futures mises à jour un miroir +du \CTAN\ proche. Ceci est fait par défaut lors d'une installation depuis le +\DVD, via l'option décrite dans la section~\ref{sec:options}. + +Si vous rencontrez des problèmes avec la sélection automatique du miroir, vous +pouvez en sélectionner un en particulier depuis la liste disponible en +\url{http://ctan.org/mirrors}. Utilisez le chemin complet vers le répertoir +\dirname{tlnet} pour ce miroir, comme ci-dessus. + + +\htmlanchor{xetexfontconfig} % keep historical anchor working +\htmlanchor{sysfontconfig} +\subsection{Configuration des fontes pour \XeTeX\ et Lua\TeX} +\label{sec:font-conf-sys} + +\XeTeX\ et Lua\TeX\ peuvent utiliser toutes les polices installées au niveau du +système et pas seulement celles des arborescences \TeX. Pour cela, ils +utilisent des méthodes différentes mais pas tout à fait indépendantes. + +Sous Windows, les fontes livrées avec \TL\ sont automatiquement rendues +utilisables par \XeTeX, mais si vous avez installé le paquet \pkgname{xetex} +sur un système de type Unix, vous avez besoin de le configurer un peu pour que +\XeTeX{} puisse trouver les fontes installées par \TL{} par leur nom sans être +obligé d'utiliser le nom du fichier. + +Pour faciliter ce réglage, lorsque le paquet \pkgname{xetex} est installé, un +fichier de configuration adéquat est créé : +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. + +Pour permettre à votre système l'accès aux polices \TL, si vous avez les +privilèges suffisants, vous pouvez procéder ainsi : +\begin{enumerate*} +\item Copiez le fichier \filename{texlive-fontconfig.conf} dans +\dirname{/etc/fonts/conf.d/09-texlive.conf}. +\item Exécutez \Ucom{fc-cache -fsv}. +\end{enumerate*} + +Si vous n'avez pas les privilèges suffisants pour utiliser la méthode +ci-dessus, ou si vous préférez ne rendre les polices disponibles que pour un +utilisateur, vous pouvez procéder comme suit. +\begin{enumerate*} +\item Copiez le fichier \filename{texlive-fontconfig.conf} vers + \filename{~/.fonts.conf}, où \filename{~} représente votre répertoire + personnel. +\item Exécutez \Ucom{fc-cache -fv}. +\end{enumerate*} + +Vous pouvez utiliser \code{fc-list} pour voir les noms des polices du système. +L'incantation \code{fc-list : family style file spacing} (avec ces arguments +tels quels) donne en général des informations utiles. + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context-mkiv} + +La \og vieille\fg version de \ConTeXt{} (Mark \acro{II}) ainsi que la \og +nouvelle \fg version (Mark \acro{IV}) devraient fonctionner directement après +l'installation de \TL et ne réclamer aucune action particulière tant que vous +n'utilisez que \code{tlmgr} pour les mises à jour. + +Cependant, comme \ConTeXt{} Mk\acro{IV} n'utilise pas la bibliothèque +kpathsea, il faudra mettre à jour manuellement le cache de fichiers de +\ConTeXt{} si jamais vous installez des nouveaux fichiers manuellement +(c'est-à-dire sans utiliser \code{tlmgr}). Pour cela, exécutez +\begin{sverbatim} +context --generate +\end{sverbatim} +après chaque installation manuelle. Les fichiers résultants sont stockés dans +\code{TEXMFCACHE}, dont la valeur par défaut sous \TL{} est +\envname{TEXMFSYSVAR;TEXMFVAR}. + +\ConTeXt\ Mk\acro{IV} lira les fichiers de toutes les arborescences +mentionnées dans \envname{TEXMFCACHE} et les écrira dans le premier de ces +répertoire accessible en écriture. Lors de la lecture, les dernières +informations lues sont prises en compte de façon prioritaire par rapport à +celles lues précédemment, dans le cas où certaines données de cache seraient +dupliquées. + +Pour plus d'informations, voir +\url{http://wiki.contextgarden.net/Running_Mark_IV}. + + +\subsubsection{Ajout de fichiers locaux ou personnels} +\label{sec:local-personal-macros} + +Comme cela a déjà été indiqué à la section~\ref{sec:texmftrees}, +\envname{TEXMFLOCAL} (par défaut \dirname{/usr/local/texlive/texmf-local} ou +\verb|%SystemDrive%\texlive\texmf-local| sous Windows) est la racine de +l'arborescence prévue pour regrouper les fichiers de macros, les fontes et le +matériel utilisable par l'ensemble des utilisateurs du système. +D'autre part \envname{TEXMFHOME} (par défaut \dirname{\$HOME/texmf} %$ +(ou |%USERPROFILE%\texmf|) regroupe le matériel personnel de chaque +utilisateur. + +Dans les deux cas, les fichiers ajoutés doivent être placés, non pas en vrac à +la racine de \envname{TEXMFLOCAL} ou \envname{TEXMFHOME} mais dans des +sous-répertoires bien choisis (voir \url{http://tug.org/tds} ou lire le +fichier \filename{texmf.cnf}). Par exemple, une classe ou une extension +\LaTeX{} ne sera trouvée que si elle est dans \dirname{TEXMFLOCAL/tex/latex} ou +\dirname{TEXMFHOME/tex/latex} ou dans un sous-répertoire de ceux-ci. + +Enfin, si les ajouts ont été faits sous \envname{TEXMFLOCAL}, il y a lieu de +régénérer les bases de données \filename{ls-R} (commande \cmdname{mktexlsr} +ou, en mode graphique, bouton « Reinit file database » du gestionnaire de +paquets \TL). + +L'emplacement des répertoires \envname{TEXMFLOCAL} et \envname{TEXMFHOME} est +fixe (il ne change pas d'une version à l'autre de \TL{}). Leur contenu est +pris en compte par toutes les versions de \TL{} aussi est-il préférable de ne +pas changer la valeur des variables \envname{TEXMFLOCAL} et \envname{TEXMFHOME} +à l'installation. + +Par défaut, chacune de ces variables est définie comme étant un seul +répertoire, comme illustré ci-dessus. Cependant, ceci n'est pas obligatoire. +Si vous voulez par exemple changer rapidement de versions pour des paquets +importants vous pouvez maintenir plusieurs arborescences pour votre usage +personne, en spécifiant dans \dirname{TEXMFHOME} une liste de répertoires +entre accolades, séparés par des virgules : + +\begin{verbatim} + TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir} +\end{verbatim} + +La section~\ref{sec:brace-expansion} décrit plus en détails la façon dont sont +traitées de telles listes entre accolades. + +\subsubsection{Ajout de fontes externes à \TL{}} + +Cette question est malheureusement trop complexe pour être abordée ici. +Renoncez-y sauf si vous connaissez bien les arcanes d'une installation \TeX. +Vérifiez en premier lieu ce qui existe déjà en libre : voir la +section~\ref{sec:tl-fonts}. + +Une alternative possible est d'utiliser \XeTeX{} ou Lua\TeX{} (voir +section~\ref{sec:tex-extensions}) qui permettent l'accès aux fontes disponibles +sur le système sans aucune installation supplémentaire. + +Si vous ne pouvez pas y couper, le document essayant au mieux de décrire la +procédure est \url{http://tug.org/fonts/fontinstall.html}. Si vous maintenez +vos propres associations de fontes (fichiers \code{.map}) localement, la +commande \texttt{tlmgr generate updmap} pourrait \emph{éventuellement} vous +être utile ; consultez la documentation de \cmdname{tlmgr} pour les détails. + + +\subsection{Tester l'installation} +\label{sec:test-install} + +Une fois l'installation de \TL{} terminée, il faut la tester avant de créer +des documents ou des fontes. Les tests doivent être faits par un utilisateur +non privilégié (autre que \eng{root}). + +On donne ici quelques procédures de base pour vérifier que le nouveau +système est opérationnel. On les décrit pour Unix ; pour \MacOSX{} ou +Windows, il vaut mieux tester au travers d'une interface graphique +mais les principes sont les mêmes. + +\begin{enumerate} + +\item S'assurer en premier lieu que le programme \cmdname{tex} fonctionne : + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live ...) +kpathsea version 6.0.1 +Copyright ... D.E. Knuth. +... +\end{alltt} + +Si la réponse est \texttt{command not found} ou si le numéro de version est +différent, il est fort probable que vous n'ayez pas le bon répertoire +de binaires dans votre \envname{PATH}. +Voir les informations sur l'environnement page~\pageref{sec:env}. + +\item Traiter un fichier \LaTeX{} simple : + +\begin{alltt} +> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-... (TeX Live ...) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +Si le fichier \filename{sample2e.tex} ou d'autres ne sont pas trouvés, +il y a probablement des interférences avec vos anciennes variables +d'environnement ou fichiers de configuration. Pour analyser en détail +votre problème, vous pouvez demander à \TeX{} de dire exactement ce +qu'il cherche et trouve ; voir la section~\ref{sec:debugging} +page~\pageref{sec:debugging}. + +\item Prévisualiser les résultats : +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +Une nouvelle fenêtre doit s'ouvrir et montrer un joli document expliquant les +bases de \LaTeX{} (document dont la lecture attentive est recommandée si vous +êtes débutant !). +Vous devez travailler sous X pour que \cmdname{xdvi} fonctionne. Dans le cas contraire, votre +variable d'environnement \envname{DISPLAY} ne sera pas correcte et vous +obtiendrez l'erreur \samp{Can't open display}. + +\item Créer un fichier \PS{} pour l'imprimer ou l'afficher : + +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Créer un fichier \acro{PDF} au lieu de \dvi{} ; +cet exemple traite le fichier \filename{sample2e.tex} et crée directement +un fichier \acro{PDF} : + +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Prévisualiser le fichier \acro{PDF} : + +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{ou} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} + +Ni \cmdname{gv} ni \cmdname{xpdf} ne sont inclus dans +\TL{}, aussi devez-vous les installer séparément si ce n'est déjà fait. +Voir respectivement +\url{http://www.gnu.org/software/gv} et +\url{http://www.foolabs.com/xpdf}. Il y a bien d'autres lecteurs de +fichiers \acro{PDF} ; pour Windows, nous recommandons Sumatra PDF +(\url{http://blog.kowalczyk.info/software/sumatrapdf}). + + +\item Autres fichiers de tests utiles en plus de \filename{sample2e.tex} : + +\begin{ttdescription} + +\item [small2e.tex] à compiler avant \filename{sample2e} si celui-ci pose des + problèmes. + +\item [testpage.tex] teste que l'imprimante n'introduit pas de décalages. + +\item [nfssfont.tex] imprime des tables des fontes et des tests. +\item [testfont.tex] aussi pour les tables de fontes mais en (plain)\TeX. +\item [story.tex] le fichier de test de (plain)\TeX{} le plus canonique +de tous. Il faut taper \samp{\bs bye} à l'invite \code{*} après +\samp{tex story.tex}. +\end{ttdescription} + +\item Si vous avez installé le paquet \pkgname{xetex}, vous pouvez vérifier + s'il a bien accès aux polices du système ainsi +\begin{alltt} +> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +(De même pour \filename{luatex}.) + +Si vous obtenez un message d'erreur disant « \samp{Invalid fontname `Latin Modern +Roman/ICU'\dots} », alors vous devez revoir la configuration de votre système +pour que \XeTeX{} puisse accéder aux polices livrées avec \TL comme indiqué en +section~\ref{sec:font-conf-sys}. + +\end{enumerate} + +\subsection{Liens vers d'autres logiciels téléchargeables} + +Si vous êtes débutant ou si vous avez besoin d'aide pour réaliser des +documents \TeX{} ou \LaTeX{}, n'hésitez pas à consulter +\url{http://tug.org/begin.html}. + +% liens GUTenberg + +Voici quelques liens vers d'autres outils qui peuvent être utiles à installer. +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} avec des paquets supplémentaires du + \acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com} pour les conversions entre + formats graphiques, notamment. +\item[NetPBM] \url{http://netpbm.sourceforge.net/} également pour les + graphiques. + +\item[Éditeurs orientés \TeX] Le choix est large, et est en bonne partie une + question de goût personnel. Voici une sélection classée par ordre + alphabétique (dont certains ne sont disponibles que sous Windows). + \begin{itemize*} + \item \cmdname{GNU Emacs} existe en version native pour Windows, + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs} avec Auc\TeX\ pour Windows est disponible sur le + \CTAN. Sa page est \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} (Windows seulement, non libre) est disponible sur + \url{http://mirror.ctan.org/support/LEd}. + \item \cmdname{SciTE} (Windows seulement) est disponible sur + \url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} est disponible sur + \url{http://www.xm1math.net/texmaker/index_fr.html }. + \item \cmdname{TexmakerX} est un \eng{fork} de \cmdname{Texmaker} avec des + fonctionnalités supplémentaires : \url{http://texmakerx.sourceforge.net}. + \item \cmdname{TeXnicCenter} est disponible sur + \url{http://www.texniccenter.org} et dans la distribution pro\TeX{}t + \item \cmdname{TeXworks} est disponible sur + \url{http://tug.org/texworks} et inclus dans \TL sur Windows et + \MacOSX. + \item \cmdname{Vim} est disponible sur \url{http://www.vim.org}. + \item \cmdname{WinEdt} (Windows seulement, non libre) est disponible sur + \url{http://tug.org/winedt} or \url{http://www.winedt.com}. + \item \cmdname{WinShell} (Windows seulement) est disponible sur + \url{http://www.winshell.de}. + \end{itemize*} +\end{description} +Voir \url{http://tug.org/interest.html} pour une liste plus complète de +programmes. + + +\section{Installations spécialisées} + +Les sections précédentes décrivaient le processus pour installation \og +normale \fg. Celle-ci concerne des cas plus spécialisés. + +\htmlanchor{tlsharedinstall} +\subsection{Installation partagée entre plusieurs utilisateurs ou machines} +\label{sec:sharedinstall} + +\TL a été conçue pour pouvoir être partagée par plusieurs utilisateurs sur le +même système et/ou différents systèmes sur un réseau. +Avec la disposition standard des répertoires, aucun chemin n'est +codé en dur : les emplacements des fichiers dont \TL a besoin sont trouvés +automatiquement à partir des emplacements des programmes. Vous pouvez le +constater dans le fichier de configuration principal +\filename{\$TEXMFMAIN/web2c/texmf.cnf}, qui contient des lignes comme +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +Ceci signifie qu'il suffit aux utilisateurs d'ajouter à leur \envname{PATH} le +chemin des exécutables pour leurs plate-formes, pour obtenir une configuration +qui marche. + +Pour la même raison, vous pouvez aussi installer \TL localement et ensuite +déplacer l'arborescence complète vers un emplacement réseau. + +Pour Windows, un exemple de script d'installation nommé \filename{w32client} +peut être téléchargé sur \url{http://tug.org/texlive/w32client.html}. Il +installe les réglages et les raccourcis pour utiliser un système \TL installé +sur un réseau local. Il déclare aussi un désinstallateur \filename{w32client}, +disponible dans la même archive zip. Consultez la page web pour plus de +détails. + +\htmlanchor{tlportable} +\section{Installations « portable » de \TL} +\label{sec:portable-tl} + +L'option \code{-portable} de l'installateur (ou la commande \code{V} dans +l'installateur en mode texte ou l'option correspondante en mode grapghique) +crée une installation de \TL{} entièrement contenue dans une seul répertoire +et n'effectue aucune intégration au système. Vous pouvez créer une telle +installation directement sur une clé \USB{} ou la copier sur une clé +ultérieurement. + +Pour utiliser \TeX\ depuis cette installation portable, il suffit d'ajouter le +bon répertoire de binaires à votre \code{path} pour la session de terminal en +cours, comme d'habitude. Sous Windows, vous pouvez double-cliquer sur le +fichier \filename{tl-tray-menu} à la racine de l'installation pour choisir +parmi quelques actions communes, comme dans cette capture d'écran : + +\medskip +\tlpng{tray-menu}{4cm} +\smallskip + +\noindent L'entrée « More\dots » explique comment personnaliser ce menu. + +\htmlanchor{tlisoinstall} +\subsection{Installation sur \DVD ou image \ISO} +\label{sec:isoinstall} + +Si vous n'avez pas besoin de mettre à jour ni de modifier votre installation +souvent, et/ou que vous désirez utiliser \TL{} sur plusieurs systèmes, il peut +être commode de créer une image \ISO\ de votre installation \TL, pour les +raisons suivantes : + +\begin{itemize} + \item il est nettement plus rapide de copier d'une machine à l'autre une + image \ISO\ qu'une installation classique ; + \item si vous êtes en multi-boot sur plusieurs systèmes et voulez leur faire + partager une même installation de \TL, une image \ISO\ vous isole des + idiosyncrasies et limitations des divers systèmes de fichiers + (\acro{FAT32}, \acro{NTFS}, \acro{HFS+}). + \item les machines virtuelles peuvent monter une image \ISO\ très + simplement. +\end{itemize} + +Bien sûr vous pouvez aussi graver votre image \ISO\ sur une \DVD, si cela vous +est utile. + +Les systèmes \GNU/Linux et autres Unix de bureau, y compris \MacOSX, sont +capables de monter une image \ISO. À part ce montage, rien de change par +rapport à une installation normale sur le disque dur, voir la +section~\ref{sec:env}. + +Dans la préparation d'une telle installation, il est préférable d'omettre le +sous-répertoire avec le numéro de l'année, et d'avoir \filename{texmf-local} +au même niveau que les autres arborescences (\filename{texmf}, +\filename{texmf-dist}, etc.), ce qui est possible avec les options habituelles +de l'installateur. + +Pour une machine Windows physique (et non virtuelle) vous pouvez graver +l'\ISO\ sur un \DVD. Cependant, il est peut-être plus rentable pour vous de +vous renseigner sur les différentes options libres ou gratuites de montage +d'images \ISO. Pour \acro{XP}, Microsoft propose +\filename{winxpvirtualcdcontrolpanel}. + +Pour l'intégration au système sous Windows, vous pouvez inclure dans l'image +le script \filename{w32client} décrit en section~\ref{sec:sharedinstall} et à +l'adresse \url{http://tug.org/texlive/w32client.html} ; il fonctionne aussi +bien pour une image \ISO\ que pour une installation partagée par le réseau. + +Sous \MacOSX, TeXshop et \TeX{}works peuvent utiliser une telle installation +si un lien symbolique \filename{/usr/texbin} existe et pointe vers le bon +répertoire, par exemple +\begin{verbatim} +sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin +\end{verbatim} + +Remarque historique : \TL\ 2010 a été la première édition à ne pas être +distribuée en version « live ». Cependant, toutes les éditions précédentes +exigeaient quelques acrobaties pour être utilisées depuis le \DVD ; en +particulier il n'y avait pas moyen de s'en sortir sans devoir régler au moins +une variable d'environnement supplémentaire. Si vous créez votre \ISO\ ou +\DVD\ depuis une installation existante ceci n'est plus nécessaire. + +\htmlanchor{tlmgr} +\section{Maintenance de l'installation avec \cmdname{tlmgr}} +\label{sec:tlmgr} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} en mode graphique. La liste des paquets, collections et + schémas d'installation n'apparaît qu'après avoir cliqué sur le bouton « + Charger le dépôt par défaut »).}% +\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\hbox to \hsize{% + \vtop{\hsize=.59\linewidth + \null % make figures align at the top + \tlpng{tlmgr-general-options}{\hsize} + \caption{\texttt{tlmgr} en mode graphique : options générales} + \label{fig:tlmgr-general-options} + } + \hfil + \vtop{\hsize=.39\linewidth + \null + \tlpng{tlmgr-paper-options}{\hsize} + \caption{\texttt{tlmgr} en mode graphique : options de taille du papier} + \label{fig:tlmgr-paper-options} + } +} +\end{figure} + +\TL fournit un programme appelé \prog{tlmgr} pour assurer la maintenance de la +distribution après son installation initiale. Les programmes \prog{updmap}, +\prog{fmtutil} et \prog{texconfig} ont été conservés et le seront à l'avenir, +mais \prog{tlmgr} est désormais considéré comme l'interface standard pour ces +opérations. \prog{tlmgr} permet en particulier +\begin{itemize} +\item d'installer, de mettre à jour ou de désinstaller des paquets + individuellement, éventuellement en respectant les dépendances ; +\item de rechercher des paquets, d'obtenir leur liste, etc. ; +\item de voir la liste des plate-formes binaires et d'en installer ou d'en + supprimer ; +\item de modifier la configuration, par exemple la taille du papier par défaut, + le dépôt de paquets par défaut (voir la section~\ref{sec:location}). +\end{itemize} + +\subsection{\cmdname{tlmgr} en mode graphique} + +On lance \prog{tlmgr} en mode graphique (figure~\ref{fig:tlmgr-gui}) par la +commande +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +ou sous Windows dans le menu « Démarrer » : \texttt{Démarrer} $\rightarrow$ +\texttt{Programmes} $\rightarrow$ \texttt{TeX Live 2012} $\rightarrow$ +\texttt{TeX Live Manager}. +La première chose à faire est de cliquer sur le bouton « Load% +\footnote{Dans la description qui suit, le nom des boutons est celui de la + version anglaise par souci de cohérence avec les figures. L'affichage se + fait normalement dans la langue de l'utilisateur (variable \envname{LANG} + sous Unix).} » ce qui affiche la liste des collections, extensions, etc. (à +condition bien sûr qu'il soit possible de se connecter au dépôt utilisé). + +Les figures~\ref{fig:tlmgr-general-options} et~\ref{fig:tlmgr-paper-options} +montrent les écrans de réglage des options générales et de celles concernant +la taille du papier. + +\subsection{Exemples d'utilisation de \cmdname{tlmgr} en ligne de commande} + +Après l'installation initiale, vous pouvez mettre à jour votre système en +utilisant : + +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +Si cela vous inquiète, vous pouvez commencer par +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +ou (moins bavard) : +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} + +L'exemple suivant, plus complexe, ajoute une collection, pour le moteur +\XeTeX, depuis un dépôt local. + +\begin{alltt} +> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +La sortie, abrégée, ressemble à ceci : +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2012/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} +Comme vous pouvez le constater, \prog{tlmgr} prend en compte les dépendances +et effectue automatiquement toutes les opérations nécessaires, comme la mise à +jour des bases de données de fichiers et la génération de formats (ici un +nouveau format a été créé pour \XeTeX). + +La commande suivante permet d'obtenir la description d'un paquet. +\begin{alltt} +> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +Elle retourne par exemple : +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +Enfin, le plus important, pour la documentation complète, consultez +\url{http://tug.org/texlive/tlmgr.html}, ou tapez : +\begin{alltt} +> \Ucom{tlmgr help} +\end{alltt} + +\section{Notes concernant Windows} +\label{sec:windows} + +\subsection{Fonctionnalités supplémentaires à l'installation} +\label{sec:winfeatures} + +Sous Windows le programme d'installation effectue quelques tâches +supplémentaires : +\begin{description} +\item[Menus et raccourcis] -- un sous-menu «\TL{}» est ajouté au menu + « Démarrer », contenant des entrées pour quelques programmes graphiques + comme \prog{tlmgr}, \prog{texdoctk}, PS\_View (\prog{psv}) et pour de la + documentation. +\item[Associations de fichiers] -- si cette option n'est pas désactivée, + \prog{TeXworks}, \prog{Dviout} et \prog{PS\_view} deviennent le programme + par défaut pour ouvrir leurs types de fichiers respectifs, ou, s'il y a déjà + un tel programme, sont ajoutés à la liste « Ouvrir avec... » du menu + contextuel. +\item[Convertisseur bitmap vers eps] -- une entrée \cmdname{bitmap2eps} est + ajoutée à l'entrée « Ouvrir avec... » du menu contextuel pour de nombreux + formats d'images bitmap. \prog{Bitmap2eps} est un script simple qui utilise + \cmdname{sam2p} ou \cmdname{bmeps} pour faire le vrai travail. +\item[Ajustement automatique du \code{path}] -- aucune intervention manuelle + n'est nécessaire. +\item[Désinstallation] -- une entrée est ajoutée pour \TL{} dans le menu + « Ajout et suppression de programmes ». L'onglet « Uninstall » de + \prog{tlmgr} renvoie à ceci. +\end{description} + +\subsection{Programmes supplémentaires} + +Pour être complète, une installation \TL a besoin de quelques utilitaires qui +ne sont pas présents en général sur les machines Windows. \TL comprend donc +les outils suivants. +\begin{description} +\item[Perl et Ghostscript] -- \TL{} installe des copies « cachées » de ces + programmes : ce sont des versions spécifiques adaptées à \TL{}, elles + sont invisibles hors de \TL{} et n'interfèrent donc en aucune façon avec + d'autres versions éventuellement présentes sur la machine. + +\item[PS\_View] -- nouveau lecteur PostScript et \acro{PDF} sous licence libre, + voir figure~\ref{fig:psview}. + +\begin{figure}[tb] \centering +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: de très forts grossissements sont possibles !}% +\label{fig:psview} +\end{figure} + +\item[dviout] -- lecteur de \acro{DVI}. La première fois que vous + visualisez un fichier avec \prog{dviout}, il va créer des polices, car les + versions des fontes pour écran ne sont pas installées. Au bout d'un moment, + la plupart des polices que vous utilisez auront été créées, et vous ne + verrez plus que rarement la fenêtre de création des fontes. Vous pouvez + trouver plus d'informations dans le menu d'aide du logiciel (dont la lecture + est recommandée). + +\item[\TeX{}works] \TeX{}works est un éditeur conçu pour les fichiers \TeX, avec + un lecteur de \acro{PDF} intégré. + +\item[Outils en ligne de commande] -- des versions pour Windows de programmes + Unix sont installées, en particulier \cmdname{gzip}, \cmdname{chktex}, + \cmdname{jpeg2ps}, \cmdname{unzip}, \cmdname{wget} et quelques utilitaires + de la suite \cmdname{xpdf} (\cmdname{pdfinfo}, \cmdname{pdffonts}, \ldots). + Le lectuer \cmdname{xpdf} lui-même n'est pas disponible + sous Windows mais vous pouvez télécharger Sumatra \acro{PDF}, qui est basé + dessus, voir \url{http://blog.kowalczyk.info/software/sumatrapdf}). +\item[\prog{fc-list}, \prog{fc-cache}, etc.] -- outils de la bibliothèque + fontconfig, qui permettent à \XeTeX{} d'accéder aux polices système sous + Windows. Vous pouvez utiliser \prog{fc-list} pour connaître la liste des + noms de police utilisables avec la commande \cs{font} de \XeTeX. +\end{description} + +\subsection{Répertoire personnel} +\label{sec:winhome} + +L'équivalent du répertoire personnel noté \envname{\$HOME} sous +Unix s'appelle \verb|%USERPROFILE%| sous Windows. % +Cette variable vaut en général +\verb|C:\Documents and Settings\| sous Windows \acro{XP} +et \verb|C:\Utilisateurs\| sous Vista et Windows 7. +La notation \verb|~|, utilisée dans \filename{texmf.cnf} et dans \KPS{} en +général pour désigner un répertoire personnel, est correctement interprétée +sous Windows comme sous Unix. + + +\subsection{Base de registre Windows} +\label{sec:registry} +%NdT% choix : "registre", pas "registres" + +Windows stocke pratiquement tous les paramètres de configuration dans sa base +de registre. Celle-ci contient un ensemble de clés organisées par niveau. +Les clés les plus importantes pour l'installation de programmes sont +\path{HKEY_CURRENT_USER} et \path{HKEY_LOCAL_MACHINE}, \path{HKCU} et +\path{HKLM} en abrégé. La partie \path{HKCU} de la base de registre +se trouve dans le répertoire personnel de l'utilisateur (voir +section~\ref{sec:winhome}). La partie \path{HKLM} est normalement dans un +sous-répertoire du répertoire Windows. + +Certaines informations système peuvent s'obtenir à partir des variables +d'environnement mais pour d'autres, la localisation des raccourcis par +exemple, la consultation de la base de registre est indispensable. +La modification des variables d'environnement nécessite l'accès à la base de +registre. + + +\subsection{Droits d'accès sous Windows} +\label{sec:winpermissions} + +Dans les versions récentes de Windows, la distinction est faite entre +« utilisateurs » et « administrateurs », ces derniers ayant accès en écriture +à la totalité du système. En pratique on devrait plutôt parler d'utilisateurs +« non privilégiés » et d'utilisateurs « normaux » car être « administrateur » +est la règle et non l'exception. + +Nous nous sommes efforcés de rendre l'installation de \TL{} possible aux +utilisateurs non privilégiés. + +Si celui qui fait l'installation est « administrateur », il dispose d'une +option d'installation pour tous les utilisateurs : si cette option est +choisie, les raccourcis +et les entrées de menu sont créés pour tous les utilisateurs, et +l'environnement est modifié au niveau du système. +Sinon, les raccourcis et entrées de menu sont créés pour l'utilisateur +courant, et seul son environnement utilisateur est modifié. + +Dans tous les cas, le répertoire proposé comme racine de l'installation est +\verb|%SystemDrive%|. % +Le programme \prog{install-tl} vérifie si le répertoire choisi comme racine +est accessible en écriture pour celui qui procède à l'installation. + +Lorsqu'une installation \TeX{} est présente sur la machine, l'installation +de \TL{} par un utilisateur non privilégié est problématique : +cet utilisateur n'aura jamais accès aux exécutables \TL{} car la recherche +s'effectue d'abord dans les répertoires système, puis dans les répertoires de +l'utilisateur. Une parade sommaire a été prévue : l'installateur crée un +raccourci vers une fenêtre de ligne de commande où les exécutables \TL sont +prioritaires : \TL{} est ainsi utilisable en ligne de commande à partir de ce +raccourci. De même, le raccourci pour \TeX{}works, s'il est installé, fait ce +qu'il faut pour que les outils \TL soient utilisés. + +Pour Vista et Windows~7, il y a une subtilité supplémentaire : même si vous +êtes connecté +en tant qu'administrateur, vous devez explicitement demander les privilèges +d'administrateur. En fait, il ne sert pas à grand chose de se connecter en +tant qu'administrateur ; le mieux est de faire un clic droit sur le programme +ou raccourci à utiliser, et d'utiliser l'entrée « exécuter en tant +qu'administrateur ». + + +\subsubsection{Augmentation de la limite de mémoire sous Windows et Cygwin} +\label{sec:cygwin-maxmem} + +Les utilisateurs de Windows et Cygwin (voir la section~\ref{sec:cygwin} pour +les spécificités de l'installation sous Cygwin) peuvent parfois arriver à court +de mémoire en utilisant certains des programmes fournis avec \TL. Par exemple, +\prog{asy} peut manquer de mémoire si vous essayez d'allouer un tableau de +25\,000\,000 réels, et Lua\TeX\ aussi si vous essayez de traiter un document +avec beaucoup de fontes lourdes. + +Pour Cygwin, vous pouvez augmenter la quantité de mémoire disponible en +suivant les instructions données dans le guide de l'utilisateur Cygwin +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +Pour Windows, il vous faudra créer un fichier, nommé par exemple +\code{ajoutmemoire.ref}, contenant les quatre lignes suivantes. + +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +\noindent puis exécuter la commande \code{regedit /s ajoutmemoire.reg} en tant +qu'administrateur. (Si vous souhaitez modifier la limite mémoire uniquement +pour l'utilisateur courant plutôt qu'au niveau du système, utilisez +\code{HKEY\_CURRENT\_USER}.) + + +\section{Guide d'utilisation du système Web2C} + +\Webc{} est une collection intégrée de programmes relatifs à \TeX, +c.-à-d. \TeX{} lui-même, \MF{}, \MP, \BibTeX{}, etc. +C'est le cœur de \TL{}. Le site de référence est \url{http://tug.org/web2c}. + +Un peu d'histoire : la première implémentation a été réalisée par Tomas +Rokicki qui, en 1987, a développé un premier système \TeX{}-to-C en adaptant +les \textit{change files} pour Unix (travail de Howard Trickey et Pavel Curtis +principalement). Tim Morgan assura la maintenance du système, dont le nom fut +remplacé durant cette période par Web-to-C. En 1990, Karl Berry reprit le +travail, assisté par des dizaines de contributeurs et en 1997 il passa le +relais à Olaf Weber qui le rendit à Karl en 2006. + +%NdT% ci-dessous, "sources originales", on ne pense pas au /fichiers/ source. +% (enfin, je crois... (mpg)) +Le système \Webc{} fonctionne sur Unix, sur les systèmes Windows 32 bits, +sur \MacOSX{} et sur de nombreux autres systèmes d'exploitation. Il utilise les +sources originales de Knuth pour \TeX{} et les autres programmes de base +écrits en \web{} (système de programmation documentée) qui sont tous traduits +en langage C. Les composants du noyau de \TeX{} issus de ce processus sont : + +\begin{cmddescription} +\item[bibtex] -- gère les bibliographies. +\item[dvicopy] -- copie le fichier \dvi{} en supprimant les fontes virtuelles. +\item[dvitomp] -- convertit le fichier \dvi{} en MPX (dessins \MP{}). +\item[dvitype] -- convertit le fichier \dvi{} en un texte lisible. +\item[gftodvi] -- visualisation de fontes génériques GF. +\item[gftopk] -- convertit les fontes génériques GF en fontes bitmap PK. +\item[gftype] -- convertit le fichier GF en un texte lisible. +\item[mf] -- création de fontes. +\item[mft] -- mise en page de code source \MF{}. +\item[mpost] -- création de diagrammes techniques. +\item[patgen] -- création de motifs de césure. +\item[pktogf] -- convertit les fontes bitmap PK en fontes génériques GF. +\item[pktype] -- convertit les fontes PK en un texte lisible. +\item[pltotf] -- convertit les fichiers PL (lisibles) en TFM. +\item[pooltype] -- affiche les fichiers \web{} pool. +\item[tangle] -- \web{} vers Pascal. +\item[tex] -- composition de textes. +\item[tftopl] -- convertit les fichiers TFM en PL (lisibles). +\item[vftovp] -- convertit les fontes virtuelles VF en VPL (lisibles). +\item[vptovf] -- convertit les fontes VPL en fontes virtuelles VF. +\item[weave] -- \web{} vers \TeX. +\end{cmddescription} + +La syntaxe et les fonctions précises de ces programmes sont décrites dans +la documentation des composants individuels et dans le manuel \Webc{} +lui-même. Toutefois, connaître un certain nombre de principes régissant +l'ensemble de la famille de programmes peut aider à exploiter de façon +optimale votre installation \Webc{}. + + Presque tous ces programmes suivent les options standard de \GNU : +\begin{description} + \item[\texttt{-{}-help}] imprime le sommaire de l'utilisation, + \item[\texttt{-{}-verbose}] imprime le rapport détaillé du processus, + \item[\texttt{-{}-version}] imprime seulement le numéro de version. +\end{description} + +Pour localiser les fichiers, les programmes \Webc{} utilisent la bibliothèque +de recherche \KPS{} (\url{http://tug.org/kpathsea}). Cette bibliothèque +utilise une combinaison de variables d'environnement et un certain nombre de +fichiers de paramètres pour optimiser la recherche dans l'énorme arborescence +\TeX{}. \Webc{} peut exécuter une recherche dans plusieurs arborescences +simultanément, ce qui est utile si l'on souhaite maintenir la distribution +standard de \TeX{} et les extensions locales dans deux arborescences +distinctes. Afin d'accélérer la recherche de fichiers, la racine de chaque +arborescence possède un fichier \file{ls-R} contenant une entrée donnant le +nom et le chemin de chaque fichier situé sous la racine. + +\subsection{Kpathsea et la recherche de fichiers} +\label{sec:kpathsea} + +Décrivons en premier lieu le mécanisme de recherche de la bibliothèque \KPS{}. + +Nous appelons \emph{chemin de recherche} une liste d'éléments, séparés par +« deux-points» ou « point-virgule», et appelés +\emph{éléments de chemin}, qui sont des noms de répertoires. +Un chemin de recherche peut provenir de plusieurs sources. +Pour rechercher un fichier \samp{my-file} le long +d'un chemin \samp{.:/dir}, \KPS{} vérifie chaque élément du chemin : +d'abord \filename{./my-file}, puis \filename{/dir/my-file} et renvoie la +première occurrence (voire toutes). + +Afin d'optimiser l'adaptation à tous les systèmes d'exploitation, \KPS{} peut +utiliser dans les noms de fichiers des séparateurs différents de deux-points +(\samp{:}) et barre oblique (\samp{/}) pour les systèmes non-Unix. + +Pour vérifier un élément de chemin particulier \var{p}, \KPS{} +vérifie d'abord si une base de données existante (voir +page~\pageref{sec:filename-database}) contient \var{p}, +c.-à-d. si la base de données se trouve dans un +répertoire qui est un préfixe de \var{p}. Si oui, la spécification +du chemin est comparée avec le contenu de la base de données. + +Si la base de données n'existe pas, si elle ne s'applique pas à cet élément de +chemin ou si elle ne contient aucune correspondance, la recherche est lancée +sur tout le système de fichiers (si cela n'a pas été interdit par une commande +commençant par \samp{!!} et si le fichier cherché est censé exister). \KPS{} +construit la liste des répertoires qui correspondent à cet élément de chemin, +puis cherche le fichier dans chaque élément de cette liste. + +La condition « le fichier est censé exister » est liée aux fichiers~\samp{.vf} +et aux fichiers d'entrée lus par la commande \TeX\ \cs{openin}. De tels +fichiers peuvent ne pas exister (par exemple \file{cmr10.vf}), il est donc +inutile de les rechercher sur le disque. De plus, si vous n'actualisez pas le +fichier \file{ls-R} lors de l'installation d'un nouveau fichier \samp{.vf}, il +ne sera jamais trouvé. Chaque élément de chemin est alors vérifié : d'abord +dans la base de données puis sur le disque. Si une occurrence est trouvée, la +recherche s'arrête et le résultat est obtenu. + +Bien que l'élément de chemin le plus simple et le plus fréquent soit un nom de +répertoire, \KPS{} supporte d'autres types d'éléments dans les chemins de +recherche : des valeurs par défaut différentes pour chaque programme, des noms +de variables d'environnement, des valeurs de fichiers de configuration, les +répertoires de l'utilisateur et la recherche récursive de +sous-répertoires. Nous disons alors que \KPS{} \emph{étend} un élément, +c'est-à-dire que \KPS{} transforme toutes ces spécifications en noms de +répertoires de base. Cette opération est décrite dans les sections suivantes. + +Notons que si le nom de fichier cherché est absolu ou explicitement +relatif, c'est-à-dire commençant par \samp{/}, \samp{./} ou +\samp{../}, \KPS{} ne vérifie que l'existence de ce fichier. +\ifSingleColumn +\else +\begin{figure*} +\centering +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{Un exemple de fichier de configuration} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Les différentes sources} +\label{sec:path-sources} + +Un chemin de recherche peut provenir de plusieurs sources. Voici l'ordre +dans lequel \KPS\ les utilise. + +\begin{enumerate} +\item Une variable d'environnement définie par l'utilisateur, par exemple + \envname{TEXINPUTS}. Les variables d'environnement avec une extension + attachée (nom de programme) sont d'abord prises en compte : par exemple, si + \samp{latex} est le nom du programme exécuté, \envname{TEXINPUTS.latex} + passera avant \envname{TEXINPUTS}. +\item Un fichier de configuration de programme spécifique, par exemple une + ligne « \texttt{S /a:/b} » dans le fichier \file{config.ps} de + \cmdname{dvips}. +\item Un fichier de configuration \file{texmf.cnf} de \KPS{} contenant une + ligne telle que \\ \samp{TEXINPUTS=/c:/d} (voir ci-dessous). +\item La valeur par défaut obtenue à la compilation. +\end{enumerate} +\noindent On peut voir chacune de ces valeurs pour un chemin de recherche +donné en utilisant l'option de débogage (voir page~\pageref{sec:debugging}). + +\subsubsection{Fichiers de configuration} + +\KPS{} lit les chemins de recherche et +d'autres définitions dans des \emph{fichiers de configuration à + l'exécution} nommés \file{texmf.cnf} . Le chemin pour accéder à ces fichiers dans +l'arborescence est stocké dans la variable \envname{TEXMFCNF}, mais il n'est +pas conseillé de modifier cette variable (ou une autre) au moyen d'une +variable d'environnement du même nom. + +À la place, un fichier \file{\dots/2012/texmf.cnf} est créé à la suite d'une +installation normale. Si vous devez changer les valeurs par défaut de +certaines variables (ce qui n'est en général pas nécessaire), c'est le bon +endroit pour le faire. Le fichier de configuration principal est dans +\file{\dots/2012/texmf/web2c/texmf.cnf}. Vous ne devriez jamais éditer ce +fichier, car vos changements seraient alors perdus lors de futures mises à jour +de la distribution. + +Il est important de noter que \emph{tous} les fichier \file{texmf.cnf} trouvés +seront lus, et qu'en cas de conflit, la première définition lue l'emporte. Par +exemple, si les fichiers \file{texmf.cnf} sont cherchés dans le chemin +\verb|.:$TEXMF|, les valeurs de \file{./texmf.cnf} l'emportent sur celles de +\verb|$TEXMF/texmf.cnf|. + +\begin{itemize} +\item Les commentaires sont signalés par un \texttt{\%} et se terminent à la + fin de la ligne. +\item Les lignes vides sont ignorées. +\item Un \bs{} à la fin d'une ligne joue le rôle d'un lien entre deux lignes, + c'est-à-dire que la ligne courante se poursuit à la ligne suivante. Dans ce + cas, les espaces présents au début de la ligne suivante ne sont pas ignorés. +\item Toutes les autres lignes sont de la forme : +\begin{alltt} + \emph{variable}[.\emph{progname}] [=] \emph{value} +\end{alltt} + où le \samp{=} et les espaces autour sont optionnels. +\item Le nom de la \ttvar{variable} peut contenir n'importe quel caractère + autre que les espaces, \samp{=}, ou \samp{.} mais on recommande d'utiliser + \samp{A-Za-z\_} pour éviter les problèmes. +\item Si \samp{.\var{progname}} est présent, sa définition s'applique + seulement si le programme exécuté se nomme \texttt{\var{progname}} ou + \texttt{\var{progname}.exe}. Ceci permet par exemple à différentes variantes + de \TeX{} d'avoir des chemins de recherche différents. +\item \var{value} peut contenir n'importe quel caractère excepté « \code{\%} » et + \samp{@}. L'option \code{\$\var{var}.\var{prog}} n'est pas disponible à + droite du signe \samp{=} ; à la place, on doit utiliser une variable + supplémentaire. Un \samp{;}\ dans \var{value} est compris comme un \samp{:}\ + si on travaille sous Unix ; ceci est très utile et permet d'avoir un seul + \file{texmf.cnf} pour les systèmes Unix, \acro{MS-DOS} et Windows. +\item Toutes les définitions sont lues avant tout désarchivage ou + décompactage, de telle façon que les variables peuvent être référencées + avant d'être définies. +\end{itemize} +Voici un fichier de configuration illustrant les points précédents +\ifSingleColumn + +\begin{verbatim} +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;}// +\end{verbatim} + +\else +dans la figure~\ref{fig:config-sample}. +\fi + +\subsubsection{Expansion d'un chemin de recherche} +\label{sec:path-expansion} + +\KPS{} reconnaît certains caractères et constructions spéciales dans +les chemins de recherche, semblables à ceux disponibles dans les +\textit{shells} Unix. Ainsi, le chemin complexe, +\verb+~$USER/{foo,bar}//baz+ %$ +étend la recherche vers tous les sous-répertoires situés sous les +répertoires \file{foo} et \file{bar} dans le répertoire utilisateur +\texttt{\$USER} contenant un répertoire ou un fichier appelé %$ +\file{baz}. Ces expansions sont explicitées dans les sections +suivantes. + +\subsubsection{Expansion par défaut} +\label{sec:default-expansion} + +Si le chemin de recherche le plus prioritaire (voir +section~\ref{sec:path-sources}) contient un \samp{:} +\emph{supplémentaire} (\mbox{c.-à-d.} en début ou fin de ligne ou +double), \KPS{} insère à cet endroit le chemin suivant dont la +priorité définie est immédiatement inférieure. Si ce chemin inséré +possède un \samp{:} supplémentaire, le même processus se +répète pour le chemin prioritaire suivant. +Par exemple, étant donné une variable d'environnement définie ainsi + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +la valeur de \code{TEXINPUTS} d'après le fichier \file{texmf.cnf} étant + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +alors la valeur finale utilisée pour la recherche sera + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Comme il est inutile d'insérer la valeur par défaut en plusieurs +endroits, \KPS{} applique la substitution à seulement un \samp{:} +supplémentaire et laisse les autres inchangés : il cherche d'abord un +\samp{:} en début de ligne, puis en fin de ligne et enfin un double +\samp{:}. + +\subsubsection{Expansion spécifiée par les accolades} +\label{sec:brace-expansion} + +Option utile, l'expansion par le biais des accolades signifie, par exemple, +que \verb+v{a,b}w+ va permettre la recherche dans \verb+vaw:vbw+. Les +définitions emboîtées sont autorisées. Ceci peut être utilisé pour établir des +hiérarchies \TeX{} multiples en attribuant une liste entre accolades à +\code{\$TEXMF}. Par exemple, dans \file{texmf.cnf}, on trouve une définition +qui ressemble (il y a en fait plus de répertoires) à la suivante. +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFSYSVAR,!!$TEXMFMAIN} +\end{verbatim} +Avec ceci, on peut écrire quelque chose comme +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +ce qui signifie que, après avoir cherché dans le répertoire courant, les +arborescences complètes \code{\$TEXMFHOME/tex} suivie de +\code{\$TEXMFLOCAL/tex} (sur le disque) et ensuite les arborescences +\code{!!\$TEXMFVAR/tex} et \code{!!\$TEXMFMAIN/tex} +(définies dans le fichier de référence \file{ls-R} \emph{seulement}) seront +inspectées. C'est un moyen pratique permettant d'utiliser en parallèle deux +distributions \TeX{}, une « figée » (sur un \CD, par exemple) et une +autre régulièrement mise à jour avec de nouvelles versions quand elles +deviennent disponibles. En utilisant la variable \code{\$TEXMF} dans toutes +les définitions, on est toujours sûr d'inspecter d'abord l'arborescence la +plus récente. + +\subsubsection{Expansion des sous-répertoires} +\label{sec:subdirectory-expansion} + +Deux barres \samp{//} ou plus consécutives dans une partie d'un chemin suivant +un répertoire \var{d} sont remplacées par tous les sous-répertoires de +\var{d} : d'abord les sous-répertoires directement présents dans +\var{d}, ensuite les sous-répertoires de ceux-ci et ainsi de suite. À +chaque niveau, l'ordre dans lequel les répertoires sont inspectés est +\emph{non-déterminé}. + +Dans le cas où l'on spécifie une partie de nom de fichier après le +\samp{//}, seuls sont inclus les sous-répertoires auxquels le nom +correspond. Par exemple, \samp{/a//b} va correspondre aux répertoires +\file{/a/1/b}, \file{/a/2/b}, \file{/a/1/1/b} et ainsi de suite, +mais pas à \file{/a/b/c} ni \file{/a/1}. + +Des \samp{//} multiples et successifs dans un chemin sont possibles, +mais \samp{//} au début d'un chemin est ignoré. + +\subsubsection{Liste des caractères spéciaux et de leur signification : + récapitulatif} + +La liste suivante récapitule la signification des caractères spéciaux +dans les fichiers de configuration de \KPS{}. + +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} + +\begin{ttdescription} + +\item[\CODE{:}] Séparateur dans un chemin de recherche ; au début + ou à la fin d'un chemin, il remplace le chemin par défaut. + +\item[\CODE{;}] Séparateur dans les systèmes non-Unix + (joue le rôle de \code{:}). + +\item[\CODE{\$}] Substitue le contenu d'une variable. + +\item[\CODE{\string~}] Représente le répertoire racine de + l'utilisateur. + +\item[\CODE{\char`\{...\char`\}}] Expansion par les accolades, + par exemple \verb+a{1,2}b+ devient \verb+a1b:a2b+. + +\item[\CODE{//}] La recherche concernera aussi les sous-répertoires + (peut être inséré n'importe où dans un chemin sauf au début). + +\item[\CODE{\%}] Début d'un commentaire. + +\item[\CODE{\bs}] Caractère de continuation de ligne (permet les + entrées sur plusieurs lignes). + +\item[\CODE{!!}] Cherche \emph{seulement} dans la base de + données pour localiser le fichier et \emph{ne cherche pas} sur le disque. + +\end{ttdescription} + +\subsection{Les bases de données} +\label{sec:filename-database} + +\KPS{} a une certaine profondeur d'investigation pour minimiser les +accès disque durant les recherches. Néanmoins, dans le cas de +distributions comprenant beaucoup de répertoires, inspecter chaque +répertoire possible pour un fichier donné peut durer excessivement +longtemps (ceci est typiquement le cas quand plusieurs centaines de +répertoires de polices de caractères doivent être parcourus). En +conséquence, \KPS{} peut utiliser un fichier texte appelé \file{ls-R} --- en +fait une base de données construite au préalable --- qui fait correspondre +les fichiers à leur répertoire, ce qui permet d'éviter une recherche +exhaustive sur le disque. + +Un deuxième fichier appelé \file{aliases} (qui est également une base de +données) permet de donner des noms différents aux fichiers listés dans +\mbox{\file{ls-R}}. Ceci peut aider à adapter ses fichiers source aux +conventions de \acro{DOS}~8.3 pour les noms de fichiers. + +\subsubsection{Le fichier base de données} +\label{sec:ls-R} + +Comme nous l'avons expliqué ci-dessus, le nom du principal fichier-base de +données doit être \mbox{\file{ls-R}}. +Dans votre installation, vous pouvez en mettre un à la racine de chaque +arborescence \TeX{} que vous désirez voir +inspectée (\code{\$TEXMF} par défaut) ; la plupart des sites ont +une seule arborescence \TeX{}. \KPS{} cherche les fichiers \file{ls-R} +dans le chemin spécifié dans la variable \code{TEXMFDBS}. + +La meilleure façon de créer et mettre à jour le fichier \file{ls-R} +est d'exécuter le script \cmdname{mktexlsr} inclus dans la +distribution. Il est appelé par les divers scripts \cmdname{mktex}\dots\ +En principe, ce script exécute uniquement la commande +%NdT% le \ls est correct (ça sert à ignorer les alias) +\begin{alltt} +cd \var{/your/texmf/root} && \boi{}ls -1LAR ./ >ls-R +\end{alltt} +en supposant que la commande \code{ls} de votre système produise le bon +format de sortie (le \code{ls} de \GNU convient +parfaitement). Pour s'assurer que la base de données est toujours à +jour, le meilleur moyen est de la reconstruire en utilisant la table +des \code{cron}, de telle façon que le fichier \file{ls-R} prenne +automatiquement en compte les changements dans les fichiers +installés, par exemple après une installation ou une +mise à jour d'un composant \LaTeX{}. + +Si un fichier n'est pas trouvé dans la base de données, par défaut +\KPS{} décide de le chercher sur le disque. Par contre, si un élément du +chemin commence par \samp{!!}, \emph{seule} la base de données +sera inspectée pour cet élément, jamais le disque. + +\subsubsection{kpsewhich : programme de recherche dans une arborescence} +\label{sec:invoking-kpsewhich} + +Le programme \texttt{kpsewhich} effectue une recherche dans une +arborescence indépendamment de toute application. On peut le +considérer comme une sorte de \code{find} pour localiser des fichiers +dans les arborescences \TeX{} (ceci est largement utilisé dans les +scripts \cmdname{mktex}\dots\ de la distribution). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +Les options spécifiées dans \ttvar{option} peuvent +commencer soit par \samp{-} soit par \samp{-{}-} ; n'importe quelle +abréviation claire est acceptée. + +\KPS{} considère tout argument non optionnel dans la ligne de commande +comme un nom de fichier et renvoie la première occurrence trouvée. Il +n'y a pas d'option pour renvoyer tous les fichiers ayant un nom +particulier (vous pouvez utiliser le \cmdname{find} d'Unix pour cela). + +Les options les plus importantes sont décrites ci-après. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} \\ + Définit la résolution à \ttvar{num} ; ceci affecte + seulement la recherche des fichiers \samp{gf} et \samp{pk}. \samp{-D} est un + synonyme pour assurer la compatibilité avec \cmdname{dvips}. Le défaut + est 600. +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Définit le format pour la recherche à \ttvar{name}. + Par défaut, le format est estimé en fonction du nom de fichier. + Pour les formats qui n'ont pas de suffixe clair associé, comme les + fichiers de support \MP{} et les fichiers de configuration + \cmdname{dvips}, vous devez spécifier le nom connu de \KPS, comme + \texttt{tex} ou \texttt{enc files}. Exécutez la commande + \texttt{kpsewhich -{}-help} pour obtenir la liste précise. + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Définit le nom du mode comme étant \ttvar{string} ; +ceci affecte seulement la recherche des \samp{gf} et des \samp{pk}. +Pas d'option par défaut, n'importe quel mode sera trouvé. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Fait tout ce qui est possible pour trouver les fichiers, ce qui +inclut une recherche sur le disque. Par défaut, seule la base de +données \file{ls-R} est inspectée, dans un souci d'efficacité. +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Recherche dans le chemin \ttvar{string} (séparé par +deux-points comme d'habitude), au lieu de prendre le chemin à partir +du nom de fichier. \samp{//} et toutes les expansions habituelles sont +supportées. + Les options \samp{-{}-path} et \samp{-{}-format} s'excluent mutuellement. +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Définit le nom de programme comme étant \ttvar{name}. + Ceci peut affecter les chemins de recherche via l'option + \texttt{.\var{progname}} dans les fichiers de configuration. + Le défaut est \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + Montre le chemin utilisé pour la recherche des fichiers de type +\ttvar{name}. + On peut utiliser soit une extension de fichier (\code{.pk}, \code{.vf}, + etc.), soit un nom de fichier, comme avec l'option \samp{-{}-format}. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + Définit les options de débogage comme étant + \ttvar{num}. +\end{ttdescription} + +\subsubsection{Exemples d'utilisation} +\label{sec:examples-of-use} + +Jetons un coup d'œil à \KPS{} en action ; voici une recherche +toute simple : + +\begin{alltt} +> \Ucom{kpsewhich article.cls} +/usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +Nous recherchons le fichier \file{article.cls}. Puisque le suffixe +\file{.cls} est non-ambigu, nous n'avons pas besoin de spécifier que +nous voulons rechercher un fichier de type \optname{tex} (répertoires des +fichiers sources de \TeX{}). Nous le trouvons dans le sous-répertoire +\filename{tex/latex/base} du répertoire racine \samp{TEXMF}. De même, + le suffixe non-ambigu permet de trouver facilement les autres fichiers. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +Le dernier exemple est une base de données bibliographiques pour \BibTeX{} +servant aux articles de \textsl{TUGBoat}. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Les fichiers de glyphes de fontes bitmaps, de type +\file{.pk}, sont +utilisés pour l'affichage par des programmes comme \cmdname{dvips} et +\cmdname{xdvi}. Rien n'est renvoyé dans ce cas puisque il n'y a pas +de fichier Computer Modern \file{.pk} pré-créé sur nos systèmes +(nous utilisons les versions type~1). +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn + /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +Pour ces fontes (alphabet phonétique de l'université de Washington), +nous avons dû créer les fichiers \file{.pk} et, puisque le mode \MF{} par +défaut sur notre installation est \texttt{ljfour} avec une résolution de +base de 600\dpi{} \textit{(dots per inch)}, cette instance est trouvée. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +Dans ce cas, lorsque l'on spécifie que nous recherchons une +résolution de 300\dpi{} (\texttt{-dpi=300}) nous voyons qu'aucune fonte +pour cette résolution n'est disponible dans le système. En fait, un +programme comme \cmdname{dvips} ou \cmdname{xdvi} ne s'en +préoccuperait pas et créerait les fichiers \file{.pk} à la +résolution demandée en utilisant le script \cmdname{mktexpk}. + +Intéressons-nous à présent aux fichiers d'en-tête et de configuration +pour \cmdname{dvips}. +Regardons en premier le fichier \file{tex.pro} communément utilisé +pour le support de \TeX{} avant de regarder le fichier +de configuration générique (\file{config.ps}) et la liste des fontes +\PS{} \file{psfonts.map}. Depuis l'édition 2004, les fichiers +\file{.map} et les fichiers de codage ont changé de place dans +l'arborescence \dirname{texmf}. Comme le suffixe \file{.ps} est +ambigu, nous devons spécifier quel type particulier du fichier +\texttt{config.ps} nous considérons (\optname{dvips config}). +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich -{}-format="dvips config" config.ps} + /usr/local/texmf-var/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf-var/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +Regardons plus en détail les fichiers de support Times +\PS{} d'\acro{URW}. Leur nom standard dans le schéma de nommage des fontes +est \samp{utm}. Le premier fichier que nous voyons est le +fichier de configuration, qui contient le nom du fichier +de la liste : +\begin{alltt} +> \Ucom{kpsewhich -{}-format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +Le contenu de ce fichier est +\begin{alltt} + p +utm.map +\end{alltt} +qui pointe vers le fichier \file{utm.map}, que nous cherchons à +localiser ensuite. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +Ce fichier liste les noms des fichiers des +fontes \PS{} de type~1 dans la collection URW. Son contenu +ressemble à (nous ne montrons qu'une partie des lignes) : +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +Il devrait être clair, d'après ces quelques exemples, qu'il est facile +de trouver l'endroit où se cache un fichier donné. C'est +particulièrement important si vous suspectez que c'est, pour une +raison quelconque, une mauvaise version du fichier qui est utilisée, +puisque \cmdname{kpsewhich} va vous montrer le premier fichier +trouvé. + +\subsubsection{Opérations de débogage} +\label{sec:debugging} + +Il est quelquefois nécessaire de savoir comment un programme référence +les fichiers. Pour permettre cela, \KPS{} offre +plusieurs niveaux de débogage : +\begin{ttdescription} +\item[\texttt{\ 1}] Appels à \texttt{stat} (test d'existence de fichier). Lors d'une + exécution utilisant une base de données \file{ls-R} à jour, ce niveau + ne devrait donner presque aucune information en sortie. +\item[\texttt{\ 2}] Références aux différentes tables (comme la base + de données \file{ls-R}, les fichiers de correspondance de fontes, les fichiers de + configuration). +\item[\texttt{\ 4}] Opérations d'ouverture et de fermeture des + fichiers. +\item[\texttt{\ 8}] Information globale sur la localisation des types + de fichiers recherchés par \KPS. Ceci est utile pour trouver où a été + défini le chemin particulier pour un fichier. +\item[\texttt{16}] Liste des répertoires pour chaque élément du + chemin (utilisé uniquement en cas de recherche sur le disque). +\item[\texttt{32}] Recherche de fichiers. +\item[\texttt{64}] Valeur des variables. +\end{ttdescription} +Une valeur de \texttt{-1} activera toutes les options ci-dessus ; en +pratique, c'est habituellement la valeur la plus adaptée. + +De la même façon, avec le programme \cmdname{dvips}, en utilisant une +combinaison d'options de débogage, on peut suivre en détail la +localisation des +différents fichiers. De plus, lorsqu'un fichier n'est +pas trouvé, la trace du débogage montre les différents répertoires dans +lesquels le programme va chercher tel ou tel fichier, donnant ainsi +des indices sur le problème. + +Généralement, comme la plupart des programmes appellent la +bibliothèque \KPS{} en interne, on peut sélectionner une option de +débogage en utilisant la variable d'environnement +\envname{KPATHSEA\_DEBUG} et en la définissant égale à une valeur (ou +à une combinaison de valeurs) décrite(s) dans la liste ci-dessus. + +Note à l'intention des utilisateurs de Windows : il n'est pas facile +de rediriger les messages d'erreur vers un fichier sur ces +systèmes. À des fins de diagnostic, vous pouvez temporairement +affecter \texttt{KPATHSEA\_DEBUG\_OUTPUT=err.log} pour capturer le flux +standard d'erreur dans le fichier \texttt{err.log}. + +Considérons comme exemple un petit fichier source \LaTeX{}, +\file{hello-world.tex}, dont le contenu est le suivant. +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +Ce petit fichier utilise simplement la fonte \file{cmr10}, aussi +allons voir comment \cmdname{dvips} prépare le fichier \PS{} +(nous voulons utiliser la version type~1 +des fontes Computer Modern, d'où l'option \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +Dans ce cas, nous avons combiné le niveau 4 de débogage de +\cmdname{dvips} (chemins des fontes) avec l'option d'expansion des +éléments du chemin de \KPS\ (voir \cmdname{dvips} Reference Manual, +\OnCD{texmf/doc/html/dvips/dvips_toc.html} sur le \DVD{}). +La sortie (légèrement formatée) apparaît dans la +figure~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Recherche des fichiers de configuration}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Recherche du fichier prolog}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Recherche du fichier de fontes}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} commence par localiser ses fichiers de +fonctionnement. D'abord, \file{texmf.cnf} est trouvé, ce qui donne les +définitions pour les chemins de recherche servant à localiser les +autres fichiers, ensuite le fichier base de données \file{ls-R} (pour +optimiser la recherche des fichiers) et le fichier \file{aliases}, qui +permet de déclarer plusieurs noms (par exemple un nom \acro{DOS} de type +8.3 court et une version longue plus naturelle) pour le même +fichier. Ensuite \cmdname{dvips} continue en cherchant le fichier de +configuration générique \file{config.ps} avant de rechercher le fichier +de paramétrisation \file{.dvipsrc} (qui, dans notre cas, \emph{n'est +pas trouvé}). Enfin, \cmdname{dvips} localise le fichier de +configuration pour les fontes \PS{} Computer Modern +\file{config.cms} (ceci est lancé par l'option \mbox{\texttt{-Pcms}} de la +commande \cmdname{dvips}). Ce fichier contient la liste des fichiers + qui définissent la relation entre les noms des fontes +selon \TeX{}, selon \PS{} et dans le système de fichiers. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} veut chercher tous ces fichiers, y compris le +fichier générique d'association \file{psfonts.map}, qui est toujours +chargé (il contient des déclarations pour les fontes \PS{} les +plus communément utilisées ; voir la dernière partie de la Section +\ref{sec:examples-of-use} pour plus de détails sur la gestion du fichier +d'association \PS{}). + +Arrivé là, \cmdname{dvips} s'identifie à l'utilisateur : + \begin{alltt} + This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) + \end{alltt} + +\ifSingleColumn +pour continuer ensuite en cherchant le fichier prologue \file{texc.pro}, +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +pour continuer ensuite en cherchant le fichier prologue \file{texc.pro} +(voir la figure~\ref{fig:dvipsdbgb}). +\fi + +Après avoir trouvé ce fichier, \cmdname{dvips} affiche la date et +l'heure, nous informe qu'il va générer le fichier +\file{hello-world.ps} puis qu'il a besoin du fichier de fonte +\file{cmr10} et que ce dernier est déclaré comme « résident» +(pas besoin de bitmaps) : +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Maintenant la recherche concerne le fichier \file{cmr10.tfm}, qui est +trouvé, puis quelques fichiers de prologue de plus (non montrés) sont +référencés ; finalement le fichier de la fonte type~1 \file{cmr10.pfb} +est localisé et inclus dans le fichier de sortie (voir la dernière ligne). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Options à l'exécution} + +\Webc{} offre la possibilité de contrôler à l'exécution bon nombre de +paramètres concernant la mémoire (en particulier la taille des +tableaux utilisés) à partir du fichier +\file{texmf.cnf} qui est lu par \KPS. +Les paramètres en question se trouvent +dans la troisième partie du fichier inclus dans la distribution \TL{}. + Les variables les plus importantes sont : +\begin{ttdescription} +\item[\texttt{main\_memory}] + Nombre total de mots mémoire disponibles pour + \TeX{}, \MF{} et \MP. Vous devez générer un nouveau fichier de + format pour chaque nouveau paramétrage. Par exemple, vous pouvez + générer une version large de \TeX{} et appeler le fichier de format + \texttt{hugetex.fmt}. En utilisant la méthode supportée par \KPS{} + qui consiste à suffixer la variable par le nom du programme, la valeur + particulière de la variable \texttt{main\_memory} destinée à ce + fichier de format sera lue dans le fichier \file{texmf.cnf}. +\item[\texttt{extra\_mem\_bot}] + Espace supplémentaire pour certaines structures de données de \TeX{} : + boîtes, \textit{glue}, points d'arrêt\dots{} Surtout utile si vous utilisez + \PiCTeX{} par exemple. +\item[\texttt{font\_mem\_size}] + Nombre de mots mémoire disponibles pour décrire les polices. C'est + plus ou moins l'espace occupé par les fichiers \acro{TFM} lus. +\item[\texttt{hash\_extra}] + Espace supplémentaire pour la table de hachage des noms de séquences + de contrôle. Environ 10~000 de ces noms peuvent être stockés dans la + table principale ; si vous avez un document très volumineux avec + beaucoup de références croisées, il se peut que ce ne soit pas + suffisant. La valeur par défaut \texttt{hash\_extra} est \texttt{50000}. +\end{ttdescription} + +\noindent Évidemment, cette possibilité ne remplace pas une véritable +allocation dynamique des tableaux et de la mémoire mais puisque c'est +complexe à implémenter dans le présent source \TeX{}, ces paramètres lus +à l'exécution fournissent un compromis pratique qui procure une certaine +souplesse. + +\begin{comment} +\section{Compilation sur un nouveau système Unix} + +Si vous avez un système Unix ne correspondant à aucun des exécutables +fournis, il faut compiler vous-même \TeX{} et tous ses programmes +satellites à partir des sources. Cela n'est pas aussi difficile qu'il +y paraît. Tout ce dont vous aurez besoin est contenu dans le +répertoire \texttt{source} qui se trouve sur le \DVD. + +\subsection{Prérequis} + +Il faut au moins 400\,Mo d'espace sur disque pour compiler la +totalité de \TeX{} et des programmes associés. +Vous aurez aussi besoin d'un +compilateur C \acro{ANSI}, de l'utilitaire \cmdname{make}, +d'un générateur d'analyseur lexical et d'un générateur d'analyseur +syntaxique. Nous recommandons les versions \GNU des programmes suivants +(\cmdname{gcc}, \GNU{}\cmdname{make}, \cmdname{m4}, +\cmdname{flex}, \cmdname{bison}). Vous pouvez utiliser d'autres compilateurs C +et d'autres programmes \cmdname{make} si vous maîtrisez +correctement la programmation sous Unix pour résoudre les +problèmes éventuels. La commande \texttt{uname} doit renvoyer une valeur +raisonnable. + +\subsection{Configuration} + +Tout d'abord, effectuez l'installation normale de \TL{} sur le disque +dur (voir section~\ref{sec:install}, +page~\pageref{sec:install}). Vous pouvez sauter l'installation de +tous les binaires précompilés. +Décompactez ensuite sur le disque le fichier +\file{source.tar.bz2} (archive compressée) trouvé dans +le répertoire \dirname{source} et placez-vous dans +le répertoire où vous avez transféré l'ensemble. +\begin{alltt} +> \Ucom{cd /tmp/tl-source} +> \Ucom{bunzip2 source.tar.bz2} +> \Ucom{tar xf source.tar} +\end{alltt} + +Lancez maintenant \textsf{configure} de la façon suivante : +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/texlive/2007} +\end{alltt} + +Le répertoire \optname{-prefix} est le répertoire de base de +l'arborescence \TL{}, il est désigné par \var{TEXDIR} dans la suite. +Les répertoires utilisés sont les suivants : + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/texmf-dist} & répertoire de base pour les fontes, + macros, etc\\ + \dirname{$TEXDIR/man} & pages du manuel Unix\\ + \dirname{$TEXDIR/info} & manuels \GNU en format Info\\ + \dirname{$TEXDIR/bin/$archname} & exécutables.\\ +\end{tabular}\\ + +Si vous ne voulez pas créer de répertoire \dirname{$archname} spécifique %$ +au système choisi pour stocker les exécutables (c.-à-d. les +copier directement dans \dirname{$TEXDIR/bin}), %$ +il faut exécuter \textsf{configure} avec l'option \\ +\verb|--disable-multiplatform|. + +Tapez \verb|./configure --help|, le programme affichera +les options supplémentaires disponibles (telles que supprimer l'installation +des extensions optionnelles comme \OMEGA\ ou \eTeX). + +\subsection{Exécuter \textsf{make}} +S'assurer que la variable ou l'option \texttt{noclobber} n'est pas définie. + et lancer le \cmdname{make} à la racine de l'arborescence de la façon +suivante : +\begin{alltt} +>> \Ucom{make world} +\end{alltt} +et aller prendre un café\dots + +Il peut être utile de garder une trace complète dans un fichier log en tapant : +\begin{alltt} +>> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} +Avant de conclure que tout va bien, vérifier que le fichier log ne contient +pas de message d'erreur : le \cmdname{make} de \GNU renvoie toujours +le message \samp{***} à chaque erreur d'exécution. Vérifier aussi que +tous les exécutables ont été créés. +\begin{alltt} +>> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +>> \Ucom{ls | wc} +\end{alltt} +Le résultat doit être supérieur à 200 (on peut tester le nombre exact +dans le répertoire \dirname{bin} de la distribution). + +Si vous avez besoin de droits spéciaux pour exécuter \texttt{make install}, +vous pouvez séparer \samp{make world} en deux processus différents : +\begin{alltt} +>> \Ucom{make all} +>> \Ucom{su} +>> \Ucom{make install strip} +\end{alltt} + +Après avoir installé vos nouveaux binaires, il faut suivre les procédures +normales de la post-installation, indiquées dans la +section~\ref{sec:postinstall}, page~\pageref{sec:postinstall}. + +Par ailleurs, si vous souhaitez rendre vos binaires disponibles pour les +autres, n'hésitez pas à nous contacter ; nous les ajouterons volontiers sur +les pages web de \TL. +\end{comment} + +\htmlanchor{ack} +\section{Remerciements} + +\TL{} est le résultat des efforts +collectifs de pratiquement tous les groupes d'utilisateurs de \TeX. +La présente édition de \TL{} a été coordonnée par Karl Berry. +Voici la liste des principaux contributeurs : + +\begin{itemize*} + +%NdT% on considère que ce sont les nationalités des associations : +% elles regroupent en pratique des adhérents d'originies diverses +\item Les associations d'utilisateurs anglaise, allemande, néerlandaise et + polonaise (\acro{TUG}, \acro{DANTE} e.V., \acro{NTG}, et \acro{GUST}, + respectivement) qui contribuent ensemble à l'infrastructure technique et + administrative. Soutenez votre association locale (voir la liste + \url{http://tug.org/usergroups.html}) ! + +\item L'équipe du \acro{CTAN}, en particulier Robin Fairbairns, Jim Hef{}feron + et Rainer Schöpf, qui distribue les images des distributions \TL{} et + fournit les sites d'hébergement pour le stockage et la mise à jour des + extensions qui sont la base de \TL. + +\item Nelson Beebe, pour avoir permis l'accès à de nombreuses plate-formes aux + développeurs \TL, et avoir lui-même participé aux tests de façon étendue. + +\item John Bowman, pour avoir effectué de nombreux changements dans son + programme Asymptote pour le faire fonctionner dans \TL. + +\item Peter Breitenlohner et toute l'équipe \eTeX{} qui construisent + les bases des successeurs de \TeX, et Peter tout particulièrement pour son + aide concernant l'usage des autotools de GNU partout dans \TL. + +\item Jin-Hwan Cho et toute l'équipe de DVIPDFM$x$ pour leur excellent + programme et leur réactivité face aux problèmes de configuration. + +\item Thomas Esser et sa merveilleuse distribution \teTeX{} sans laquelle + \TL{} n'aurait jamais vu le jour. + +\item Michel Goossens, en tant que co-auteur de la documentation initiale. + +\item Eitan Gurari, dont le programme \TeX4ht est utilisé pour créer la + version \HTML{} de cette documentation et qui travaillait inlassablement à + l'améliorer, ce dans des délais très courts. Eitan nous a quitté + prématurément en juin 2009, et nous dédions la présente documentation à sa + mémoire. + +\item Hans Hagen qui, outre sa participation active aux tests, a adapté le + format \ConTeXt\ (\url{http://pragma-ade.com}) aux besoins de \TL{}. + +\item \Thanh, Martin Schr\"oder et toute l'équipe pdf\TeX\ qui continuent + inlassablement à étendre les performances de \TeX. + +\item Hartmut Henkel, pour ses contributions au développement + de pdf\TeX{} et Lua\TeX{} entre autres. + +\item Taco Hoekwater, pour son travail important et incessant sur le + développement de \MP{} et de (Lua)\TeX\ (\url{http://luatex.org}) + lui-même, pour l'intégration de \ConTeXt\ dans \TL, pour les nouvelles + fonctionnalités mutli-thread de Kpathsea, et bien plus encore. + +\item Pawe{\l} Jackowski pour l'installeur Windows \cmdname{tlpm} et Tomasz + {\L}uczak pour la version graphique \cmdname{tlpmgui} utilisée dans + l'édition précédente. + +\item Akira Kakuto, pour son aide précieuse qui nous a permis + d'intégrer dans \TL{} les binaires Windows de sa distribution \acro{W32TEX} + (\url{http://w32tex.org}). + +\item Jonathan Kew, pour avoir produit Xe\TeX{}, pour l'avoir intégré dans + \TL{}, pour avoir créé la première version de l'installeur Mac\TeX et enfin + pour l'éditeur \TeX{}works que nous recommandons. + +\item Dick Koch, pour la maintenance de Mac\TeX\ (\url{http://tug.org/mactex}) + faite en symbiose avec \TL. + +\item Reinhard Kotucha, pour ses contributions majeures à l'infrastructure de + \TL{} 2008 et à son programme d'installation, pour ses contributions sous + Windows et pour son script \texttt{getnonfreefonts} en particulier. + +\item Siep Kroonenberg, également pour ses contributions majeures à + l'infrastructure de \TL{} 2008 et à son programme d'installation ainsi que + pour la réécriture de cette documentation concernant ces fonctionnalités. + +\item Heiko Oberdieck, pour le paquet \pkgname{epstopdf} et bien d'autres, + pour avoir compressé l'énorme \pkgname{pst-geo} de façon à ce que nous + puissions l'inclure, et, par-dessus tout, son travail remarquable sur + \pkgname{hyperref}. + +\item Petr Ol\v{s}ak, qui coordonna et vérifia minutieusement toute la + partie tchèque et slovaque. + +\item Toshio Oshima, pour le visualisateur \cmdname{dviout} pour Windows. + +\item Manuel Pégourié-Gonnard, pour son aide concernant le programme de mise à + jour de la distribution, la documentation et pour le développement de + \cmdname{texdoc}. + +\item Fabrice Popineau, pionnier du développement de \TL{} sous Windows et + pour son travail sur la documentation française. + +\item Norbert Preining, principal architecte de la distribution \TL{} 2008 et + de son installeur et coordinateur (avec Frank K\"uster) de la + version Debian de \TL. + +\item Sebastian Rahtz, qui a créé la distribution \TL{} et en a assuré la + maintenance pendant de nombreuses années. + +\item Phil Taylor, pour la mise en place du téléchargement par BitTorrent. + +\item Tomasz Trzeciak, pour son aide générale concernant Windows. + +\item Vladimir Volovich, pour son aide substantielle, en particulier pour + avoir rendu possible l'intégration de \cmdname{xindy} dans \TL. + +\item Staszek Wawrykiewicz, principal testeur de \TL{} et coordinateur des + contributions polonaises (fontes, installation Windows, etc.). + +\item Olaf Weber, pour son patient assemblage de \Webc. + +\item Gerben Wierda, qui a créé et maintenu initialement la partie \MacOSX{} + et participé activement aux tests. + +\item Graham Williams, pour son travail sur le catalogue \TeX. + +\end{itemize*} + +Les binaires ont été compilés par : +Ettore Aldrovandi (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}), +Alan Braslau (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}), +Peter Breitenlohner (\pkgname{x86\_64-linux}), +Karl Berry (\pkgname{i386-linux}), +Ken Brown (\pkgname{i386-cygwin}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}), +Nikola Le\v{c}i\'c (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +Mojca Miklavec (\pkgname{mipsel-linux}), +Norbert Preining (\pkgname{alpha-linux}), +Thomas Schmitz (\pkgname{powerpc-linux}), +Boris Veytsman (\pkgname{armel-linux}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix}). + +Traducteurs de ce manuel : +Boris Veytsman (russe), +Jjgod Jiang, Jinsong Zhao, Yue Wang, \& Helin Gai (chinois), +Uwe Ziegenhagen (German), +Manuel P\'egouri\'e-Gonnard (français), +Marco Pallante (italien), +Nikola Le\v{c}i\'c (serbe), +Petr Sojka \& Jan Busa (thèque et slovaque), +Staszek Wawrykiewicz (polonais). +La page d'accueil de la documentation \TL{} est +\url{http://tug.org/texlive/doc.html}. + +Bien sûr, notre gratitude va en premier lieu à Donald Knuth pour avoir +inventé \TeX{} et l'avoir offert au monde entier. + +\section{Historique des versions successives} +\label{sec:history} + +\subsection{Les éditions précédentes} + +La discussion commença à la fin de 1993 quand le Groupe des Utilisateurs +Néerlandais de \TeX{} commençait à travailler à son \CD{} 4All\TeX{} pour les +utilisateurs de \acro{MS-DOS} et on espérait à ce moment sortir un \CD{} +unique pour tous les systèmes. C'était un objectif beaucoup trop ambitieux +mais il permit la naissance du \CD{} 4All\TeX{}, projet couronné de succès et +aussi d'un groupe de travail « \acro{TUG} Technical Council » pour +mettre en place TDS (\emph{\TeX{} Directory Structure} : +\url{http://tug.org/tds}), qui spécifiait la gestion des fichiers \TeX{} sous +une forme logique. La mouture finale de \TDS{} fut publiée dans le numéro de +décembre 1995 de \textsl{TUGboat} et il était clair depuis un certain temps +qu'il fallait proposer un produit contenant une structure modèle sur \CD{}. +La distribution que vous possédez est le résultat direct des délibérations de +ce groupe de travail. Il était également clair que le succès des \CD{} +4All\TeX{} démontrait que les utilisateurs d'Unix trouveraient leur bonheur +avec une distribution aussi simple et ceci a été l'autre objectif de +\TL. + +Nous avons d'abord entrepris de créer un nouveau \CD{} \TDS{} Unix à l'automne +1995 et nous avons rapidement choisi \teTeX{} de Thomas Esser comme étant la +configuration idéale, car il supportait déjà plusieurs plates-formes et avait +été construit en gardant à l'esprit la portabilité entre systèmes. Thomas +accepta de nous aider et commença à travailler sérieusement au début de 1996. +La première édition sortit en mai 1996. Au début de 1997, Karl Berry acheva +une nouvelle distribution de \Webc{}, qui incluait presque toutes les +caractéristiques que Thomas Esser avait ajoutées dans \teTeX{} et il fut décidé +de baser la deuxième édition du \CD{} sur le standard \Webc, en y ajoutant le +script \texttt{texconfig} de \teTeX. La troisième édition du \CD{} était +basée sur une version majeure de \Webc, 7.2, par Olaf Weber ; en même temps, +une nouvelle version révisée de \teTeX{} était achevée dont \TL{} partageait +presque toutes les caractéristiques. La quatrième édition a suivi le même +schéma, en utilisant une nouvelle version de \teTeX{} et une nouvelle version +de \Webc{} (7.3). Le système incluait dorénavant un programme complet +d'installation pour Windows. + +Pour la cinquième édition (mars 2000), de nombreuses parties du \CD{} +ont été vérifiées et révisées, des centaines de composants +mis à jour. +Le contenu détaillé des composants était décrit par des +fichiers XML. Mais le changement majeur de cette cinquième édition a +été la suppression de tout logiciel non libre de droits. +Tout ce qui se trouve dans \TL{} devait être compatible avec la licence +Debian (\emph{Debian Free Software Guidelines} : +\url{http://www.debian.org/intro/free}) ; nous avons +fait de notre mieux pour vérifier les termes des licences de chaque +composant et nous souhaiterions que toute erreur nous soit signalée. + +La sixième édition (juillet 2001) contient un grand nombre de mises à jour. +Le changement majeur de cette version réside dans la refonte du +processus d'installation : l'utilisateur peut désormais choisir +les collections de manière plus précise. Les collections concernant +les langues ont été entièrement réorganisées, aussi le choix d'une +langue installe non seulement les macros, les fontes, etc. mais +prépare également un fichier \file{language.dat} adéquat. + +La septième édition (mai 2002) a comme ajout majeur une installation +pour \MacOSX{} et l'habituelle myriade de mises à jour de composants et +de programmes. Un objectif important a été de fusionner à +nouveau les sources avec ceux de \teTeX{}, alors que les versions +5 et 6 s'en étaient éloignées. + +\subsubsection{2003} + +En 2003, le flot de mises à jour et d'additions a continué mais nous +avons constaté que \TL{} était devenu si volumineux qu'il ne +pouvait plus tenir sur un seul \CD, aussi l'avons-nous divisé en trois +distributions distinctes (voir section~\ref{sec:tl-coll-dists}, +page~\pageref{sec:tl-coll-dists}). Par ailleurs : +\begin{itemize} +\item À la demande de l'équipe \LaTeX{}, nous avons modifié les + commandes standard \cmdname{latex} et \cmdname{pdflatex} pour + qu'elles utilisent \eTeX{} (voir page~\pageref{text:etex}). +\item Les nouvelles fontes Latin Modern sont disponibles (et + recommandées). +\item Le support pour Alpha \acro{OSF} a été supprimé + (celui pour \acro{HPUX} l'avait été auparavant), car personne + disposant des machines nécessaires ne s'est + proposé pour compiler les nouveaux binaires. +\item L'installation pour Windows a été largement modifiée ; un environnement + de travail intégré basé sur \cmdname{XEmacs} a été introduit. +\item Des programmes supplémentaires importants pour Windows (Perl, + Ghost\-script, Image\-Magick, Ispell) sont maintenant installés dans le + répertoire d'installation de \TL{}. +\item Les fichiers \emph{font map} utilisés par \cmdname{dvips}, + \cmdname{dvipdfm} et \cmdname{pdftex} sont maintenant générés par le + nouveau programme \cmdname{updmap} et installés dans + \dirname{texmf/fonts/map}. +\item Dorénavant, \TeX{}, \MF{} et \MP{} écrivent les caractères 8 bits + présentés en entrée sans modification et non pas avec la notation + \verb|^^|, que ce soit dans des fichiers (par la commande + \verb|write|), dans les fichiers de trace (\verb|.log|) ou sur le + terminal. Dans le \TL{}~7, l'écriture de ces caractères + 8 bits était influencée par les paramètres de localisation du + système; maintenant ces paramètres n'influent plus du tout sur le + comportement des programmes \TeX{}. Si pour quelque raison que ce + soit, vous avez besoin de la notation \verb|^^| en sortie, + renommez le fichier \verb|texmf/web2c/cp8bit.tcx|. Les prochaines + versions disposeront d'un moyen plus propre pour contrôler cette + sortie. +\item La documentation de \TL{} a été largement révisée. +\item Enfin, comme la numérotation séquentielle des versions + devenait peu maniable, il a été décidé d'identifier désormais la version + de \TL{} par l'année : \TL{}~2003 au lieu de \TL{}~8. +\end{itemize} + + +\subsubsection{2004} + +2004 a apporté beaucoup de changements (et quelques incompatibilités avec les +versions précédentes) : + +\begin{itemize} + +\item Si vous avez installé des fontes supplémentaires qui ont leur propre +fichier \file{.map} ou des fichiers \file{.enc} spécifiques, vous +devrez vraisemblablement déplacer ces fichiers. + +Les fichiers \file{.map} sont désormais recherchés uniquement dans les +sous-répertoires \dirname{fonts/map} (dans chaque arborescence +\filename{texmf}), leur chemin de recherche est donné par la variable +\envname{TEXFONTMAPS} de \filename{texmf.cnf}. +De même, les fichiers \file{.enc} sont désormais recherchés uniquement +dans les sous-répertoires \dirname{fonts/enc}, leur chemin de recherche est +donné par la variable \envname{ENCFONTS} de \filename{texmf.cnf}. +Le script \cmdname{updmap} devrait émettre des messages d'avertissement +pour les fichiers \file{.map} et \file{.enc} mal placés. + +Sur les différentes façons de traiter le problème, consulter +\url{http://tug.org/texlive/mapenc.html}. + +\item La distribution pour Windows a changé cette année : +l'installation de la distribution \fpTeX{} (basée sur \Webc{}) de Fabrice +Popineau n'est plus proposée. À la place, vous pouvez tester et installer +la distribution \ProTeXt{} basée sur \MIKTEX{} (indépendante de \Webc{}), +voir section~\ref{sec:overview-tl}, page~\pageref{sec:overview-tl}. + +\item L'ancien répertoire \dirname{texmf} a été éclaté en trois parties : +\dirname{texmf}, \dirname{texmf-dist} et \dirname{texmf-doc}. Voir +section~\ref{sec:tld}, page~\pageref{sec:tld}. + +\item Tous les fichiers relatifs aux différents avatars de \TeX{} sont +désormais regroupés dans le même sous-répertoire \dirname{tex} des +arborescences \dirname{texmf*} (ils étaient jusqu'ici placés dans des +sous-répertoires spécifiques \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex}, etc.). Voir +\CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}. + +\item Les scripts auxiliaires, normalement pas exécutés directement +par les utilisateurs, sont regroupés dans des sous-répertoires \dirname{scripts} +des arborescences \dirname{texmf*}. On les localise grâce à la +commande \verb|kpsewhich -format=texmfscripts|. Au cas où vous en +auriez, les programmes utilisant ces scripts nécessiteront une adaptation. +Voir \CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}. + +\item La plupart des formats affichent en clair (dans les fichiers +\file{.log} en particulier) les caractères imprimables au lieu +de les transcrire en notation hexadécimale \verb|^^|. Ceci se fait +grâce au fichier \filename{cp227.tcx}, qui considère comme imprimables +les caractères 32 à 256, ainsi que les tabulations et les changements +de page (caractères 9 à 11). Les formats faisant exception sont +plain \TeX\ (seuls les caractères 32 à 127 sont déclarés imprimables), +\ConTeXt{} (0 à 255 imprimables) et les formats basés sur \OMEGA. +Il y a peu de différence avec le comportement de \TL\,2003 +mais la mise en œuvre est plus propre et plus facilement configurable. +Voir \OnCD{texmf/doc/web2c/web2c.html\#TCX-files}. +Noter que l'utilisation du codage Unicode en entrée peut provoquer +des affichages défectueux en sortie (TeX code sur un seul octet). + +\item Tous les formats, sauf plain \TeX, font appel au moteur +\textsf{pdfetex} (qui produit bien sûr par défaut des fichiers \acro{DVI} +lorsque le format choisi est \LaTeX). Ceci permet aux formats +\LaTeX, \ConTeXt, etc., d'avoir accès aux fonctionnalités +micro-typographiques de pdf\TeX{} (alignement optique des marges par exemple) +et aux fonctionnalités de \eTeX{} (\OnCD{texmf-dist/doc/etex/base/}). + +Ceci rend \emph{indispensable} le recours à l'extension \pkgname{ifpdf} +(qui fonctionne aussi bien avec plain que \LaTeX) pour déterminer si +le format de sortie est \acro{DVI} ou \acro{PDF}. Tester si la commande +\cs{pdfoutput} est définie ou non \emph{n'est pas} un moyen fiable +de le faire. + +\item pdf\TeX\ (\url{http://pdftex.org}) offre de nouvelles fonctionnalités : + + \begin{itemize} + + \item Les commandes \cs{pdfmapfile} et \cs{pdfmapline} permettent + de spécifier le choix des fichiers \file{.map} à utiliser + pour le document en cours. + + \item L'amélioration du gris typographique par variation (infime) de la + largeur des caractères (\textit{font expansion}) est plus facile à + mettre en œuvre, voir + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item Le fichier \filename{pdftex.cfg} n'est plus utilisé. + Toutes les affectations de paramètres doivent désormais être + faites dans le préambule en utilisant les primitives ad~hoc. + + \item Pour plus d'informations, consulter le manuel de pdf\TeX\ : + \OnCD{texmf/doc/pdftex/manual}. + + \end{itemize} + +\item La primitive \cs{input} de \cmdname{tex}, \cmdname{mf} et +\cmdname{mpost}, accepte désormais les espaces et autres caractères +spéciaux dans les noms de fichiers à condition d'utiliser des +\textit{double quotes}, en voici deux exemples typiques : +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +Consulter le manuel \Webc{} pour plus d'informations : \OnCD{texmf/doc/web2c}. + +\item Les fonctionnalités de enc\TeX\ sont désormais incluses dans \Webc{}. +Ainsi, tous les formats \emph{construits avec l'option \optname{-enc}} y ont +accès. enc\TeX\ permet le transcodage en entrée et en sortie et +l'utilisation transparente du codage Unicode \acro{UTF}-8. Voir +\OnCD{texmf-dist/doc/generic/enctex/} et +\url{http://www.olsak.net/enctex.html}. + +\item Un nouveau moteur combinant les fonctionnalités de \eTeX\ +et d'\OMEGA, appelé Aleph, est disponible. \OnCD{texmf-dist/doc/aleph/base} +et \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph} +fournissent une information succincte. Le format \LaTeX{} utilisant +Aleph s'appelle \textsf{lamed}. + +\item La licence \acro{LPPL} de \LaTeX\ (version décembre 2003) a changé, +elle est désormais compatible avec les prescriptions Debian. +Les autres changements sont décrits dans le fichier \filename{ltnews}, voir +\OnCD{texmf-dist/doc/latex/base}. + +\item Un nouveau programme, \cmdname{dvipng}, qui convertit les fichiers +\acro{DVI} en images \acro{PNG} a été ajouté. Voir +\OnCD{texmf/doc/man/man1/dvipng.1}. + +\item Nous avons dû réduire le nombre de fontes incluses dans l'extension +\pkgname{cbgreek}, ceci a été fait avec l'accord et l'aide de l'auteur +(Claudio Beccari). Les fontes exclues (invisibles, transparentes, contours) +sont rarement utilisées et la place nous manquait. La collection complète +des fontes \pkgname{cbgreek} est disponible sur \acro{CTAN} +(\url{http://mirror.ctan.org/tex-archive/fonts/greek/cb}). + +\item La commande \cmdname{oxdvi} a été supprimée, il suffit utiliser +\cmdname{xdvi} à la place. + +\item Les commandes \cmdname{initex}, \cmdname{virtex} et leurs +homologues pour \cmdname{mf} et \cmdname{mpost} ont disparu. +Vous pouvez les recréer si nécessaire mais elles sont avantageusement +remplacées, depuis des années maintenant, par l'option \optname{-ini} +(\cmdname{tex} \optname{-ini} pour \cmdname{initex} et \cmdname{virtex}). + +\item Les binaires pour l'architecture \textsf{i386-openbsd} ont été + supprimés par manque de volontaires pour les compiler. + +Sur \textsf{sparc-solaris} (au moins) il sera probablement +nécessaire de positionner la variable d'environnement +\envname{LD\_LIBRARY\_PATH} pour utiliser les programmes de la famille +\pkgname{t1utils}. Ceci vient du fait qu'ils sont compilés en C++ et +que l'emplacement des bibliothèques dynamiques est variable. +Ce n'est pas une nouveauté 2004 mais ce point n'était pas documenté +précédemment. De même, sur \textsf{mips-irix}, les bibliothèques dynamiques +\acro{MIPS}pro 7.4 sont nécessaires. + +\end{itemize} + +\subsubsection{2005} + +2005 a apporté son lot habituel d'innombrables mises à jour d'extensions +et de programmes. L'infrastructure est restée relativement stable par rapport +à 2004, à quelques changements inévitables près : + +\begin{itemize} + +\item Trois nouveaux scripts \cmdname{texconfig-sys}, \cmdname{updmap-sys} et + \cmdname{fmtutil-sys} ont été introduits ; ils agissent sur la + configuration générale de la machine, comme le faisaient les + scripts \cmdname{texconfig}, \cmdname{updmap} et \cmdname{fmtutil} + jusqu'à l'an dernier. Les nouveaux scripts \cmdname{texconfig}, + \cmdname{updmap} et \cmdname{fmtutil} modifient maintenant + la configuration \emph{personnelle} de l'utilisateur qui les lance ; + le résultat est placé dans le répertoire personnel de l'utilisateur + (sous \dirname{$HOME/.texlive2005}). \iffalse$\fi + +\item De nouvelles variables, \envname{TEXMFCONFIG} (resp. + \envname{TEXMFSYSCONFIG}) ont été introduites ; elles définissent + les répertoires où doivent se trouver les fichiers de configuration de + l'utilisateur (resp. de la machine), comme \filename{fmtutil.cnf} et + \filename{updmap.cfg}. Les utilisateurs de fichiers de configuration + locaux \filename{fmtutil.cnf} ou \filename{updmap.cfg} devront + probablement les déplacer ; une autre possibilité est de modifier la + définition des variables \envname{TEXMFCONFIG} ou + \envname{TEXMFSYSCONFIG} dans \filename{texmf.cnf}. L'important est + de s'assurer de la cohérence entre les définitions de ces variables + dans \filename{texmf.cnf} et l'emplacement réel de ces fichiers. + Voir section~\ref{sec:texmftrees}, page~\pageref{sec:texmftrees} pour + la description des différentes arborescences texmf utilisées. + +\item L'an dernier nous avions rendu « \texttt{undefined} » certaines + primitives propres à \cmdname{pdftex} (comme \verb|\pdfoutput|) + dans les formats créés à partir de \cmdname{pdfetex} (\cmdname{latex} + \cmdname{amstex}, \cmdname{context} par exemple)). + C'était à titre transitoire, aussi cette année, ces primitives sont de + nouveau définies dans tous les formats à base \cmdname{pdf(e)tex}, + \emph{même lorsqu'ils sont utilisés pour produire des fichiers + \file{.dvi}}. Ceci implique qu'il vous faudra modifier vos + documents qui utilisent le test \verb|\ifx\pdfoutput\undefined| + pour déterminer si la sortie est en DVI ou en PDF. Le mieux est + d'utiliser l'extension \pkgname{ifpdf.sty} et son test + \verb|\ifpdf| qui fonctionne même en plain \TeX. + +\item L'an dernier nous avions fait en sorte que la plupart des formats + impriment dans les sorties \file{.log} des caractères 8 bits + lisibles à la place des notations hexadécimales \verb|^^| + (voir section précédente). + Le nouveau fichier TCX \filename{empty.tcx} permet + de revenir facilement à la notation traditionnelle \verb|^^|, il suffit + de coder : +\begin{verbatim} +latex --translate-file=empty.tcx fichier.tex +\end{verbatim} + +\item Le nouveau programme \cmdname{dvipdfmx} est disponible pour convertir + des fichier DVI en PDF ; ce programme remplace \cmdname{dvipdfm}, + toujours disponible mais dont l'usage est maintenant déconseillé. + +\item Les variables \envname{HOMETEXMF} et \envname{VARTEXMF} ont été renommées + en \envname{TEXMFHOME} et \envname{TEXMFSYSVAR} respectivement pour + raisons de cohérence avec les autres noms de variables. Il y a aussi + \envname{TEXMFVAR} qui désigne maintenant un répertoire personnel + de l'utilisateur (cf. le premier point de la présente liste). + +\end{itemize} + +\subsubsection{2006--2007} + +En 2006--2007, la nouveauté majeure a été l'arrivée dans \TL{} de Xe\TeX{} +disponible sous forme de deux programmes \texttt{xetex} et \texttt{xelatex}, +voir \url{http://scripts.sil.org/xetex}. + +\MP{} a subi une mise à jour importante et d'autres améliorations +sont prévues, voir \url{http://tug.org/metapost/articles}. Il en va de même +pour pdf\TeX{}, voir \url{http://tug.org/applications/pdftex}. + +Le format \filename{tex.fmt} et les formats pour \MP{} and \MF\ ne +se trouvent plus dans \dirname{texmf/web2c} mais dans des +sous-répertoires de \dirname{texmf/web2c} (la recherche de fichiers +\filename{.fmt} est néanmoins faite aussi dans \dirname{texmf/web2c}). +Ces sous-répertoires portent le nom du moteur utilisé pour construire +le format, par exemple \filename{tex}, \filename{pdftex} ou +\filename{xetex}. Ce changement ne devrait pas avoir d'effet visible +pour les utilisateurs. + +Le programme (plain) \texttt{tex} ignore désormais les lignes commençant +par \texttt{\%\&} qui permettent de déterminer le format à utiliser ; +c'est un vrai \TeX{} « à la Knuth » ! +\LaTeX\ et tous les autres prennent toujours en compte les lignes commençant +par \texttt{\%\&}. + +Comme chaque année des centaines d'extensions et de programmes ont été mis à +jour, voir les sites \acro{CTAN} (\url{http://mirror.ctan.org}). + +L'arborescence utilisée en interne a été réorganisée avec de nouveaux outils +qui devraient fournir une meilleure base de travail pour les développements +futurs. + +Enfin, en mai 2006 Thomas Esser a annoncé qu'il renonçait à poursuivre le +développement de te\TeX{} (\url{http://tug.org/tetex}). Sa décision a relancé +l'intérêt pour \TL, en particulier chez les distributeurs de solutions +\GNU/Linux (un nouveau schéma d'installation \texttt{tetex} a été ajouté dans +le script d'installation de \TL{} pour produire une distribution proche de +l'ancienne te\TeX). La distribution \TL{} existe déjà sous forme de paquets +Debian, espérons que les autres acteurs du monde Linux (RedHat, SuSe, etc.) +suivront et que les utilisateurs se verront proposer à l'avenir des +distributions \TeX{} riches et plus faciles à installer. + +\subsubsection{2008} + +En 2008, l'infrastructure de la distribution \TL{} a été entièrement remaniée. +Un nouveau fichier texte, \filename{tlpkg/texlive.tlpdb}, regroupe toutes les +informations concernant la configuration \TL{} de la machine. + +Ce fichier permet entre autres choses de procéder à des mises à jour par le +réseau après l'installation initiale. Cette possibilité était offerte depuis +des années par MiK\TeX. Nous espérons pouvoir fournir des mises à jour +régulières du contenu des archives \CTAN. + +Le nouveau moteur Lua\TeX\ (\url{http://luatex.org}) a été intégré ; +il offre de nouvelles fonctionnalités typographiques et repose +sur l'excellent langage de commande Lua qui peut aussi être utilisé +en dehors de \TeX. + +Les versions Windows et Unix sont beaucoup plus proches que par le passé. +En particulier les scripts en Perl et en Lua sont communs aux deux +architectures. + +\TL{} dispose d'une nouvelle interface pour la maintenance (\cmdname{tlmgr} +voir section~\ref{sec:tlmgr}), elle permet les ajouts, mises à jour et +suppressions de composants et prend en charge la régénération des bases +\texttt{ls-R}, des formats et des fichiers \filename{.map} lorsque c'est +nécessaire. + +Les fonctionnalités de \cmdname{tlmgr} englobent toutes les tâches dévolues +auparavant à \cmdname{texconfig} qui ne devrait plus être utilisé (il est +conservé mais avec un champ d'action réduit). + +Le programme d'indexation \cmdname{xindy} (\url{http://xindy.sourceforge.net/}) +est maintenant disponible pour la plupart des plates-formes. + +L'utilitaire \cmdname{kpsewhich} dispose de deux options nouvelles : +\optname{--all} qui retourne toutes les occurrences du fichier recherché +et \optname{--subdir} qui limite la recherche à un sous-répertoire donné. + +Le programme \cmdname{dvipdfmx} permet maintenant d'extraire les informations +concernant la \textit{bounding box} par le biais de la commande +\cmdname{extractbb}; c'était une des dernières fonctionnalités de +\cmdname{dvipdfm} qui manquaient à \cmdname{dvipdfmx}. + +Les alias de polices \filename{Times-Roman}, \filename{Helvetica}, etc. +ont été supprimés, les conflits de codage qu'ils induisaient n'ayant pas pu +être résolus. + +Le format \pkgname{platex} a été supprimé afin de résoudre un conflit de nom +avec son homonyme japonais ; le support pour le polonais est assuré +maintenant par l'extension \pkgname{polski}. + +Les fichiers \web{} d'extension \filename{.pool} sont maintenant inclus dans +les binaires afin de faciliter les mises à jour. + +Enfin, les changements décrits par Donald Knuth dans « \TeX\ tuneup of 2008 » +(voir \url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}) sont inclus +dans la présente édition. + +\subsubsection{2009} +\label{sec:2009news} % keep with 2009 + +En 2009, le format de sortie par défaut de Lua\AllTeX\ est maintenant le +\acro{PDF} afin de profiter de la prise en charge des polices OpenType et +autres fonctionnalités de Lua\TeX. De nouveaux exécutables nommés +\code{dviluatex} et \code{dvilualatex} fournissent une sortie \acro{DVI}. La +page d'accueil de Lua\TeX{} est \url{http://luatex.org}. + +Le moteur Omega ainsi que le format Lambda ont été retirés, après discussion +avec les auteurs d'Omega. Les versions à jour d'Aleph et de Lamed ont été +conservées, ainsi que les utilitaires Omega. + +\TL fournit la nouvelle version des polices \TypeI{} de l'\acro{AMS}, y compris +Computer Modern : les quelques changements de formes faits au cours des ans par +Knuth dans les sources \MF{} ont été intégrés, et le \eng{hinting} a été +amélioré. Les polices Euler ont été en grande partie redessinées par Hermann +Zapf (voir \url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). +Dans tous les cas, les métriques n'ont pas changé. La page d'accueil des +polices de l'\acro{AMS} est \url{http://www.ams.org/tex/amsfonts.html}. + +Le nouvel éditeur intégré \TeX{}works est fourni pour Windows, ainsi que dans +Mac\TeX. Pour les autres plate-formes, ainsi que d'autres informations, voir la +page de \TeX{}works : \url{http://tug.org/texworks}. Cet éditeur fonctionnant +sur de nombreuses plate-formes, inspiré par l'éditeur \TeX{}shop de \MacOSX, +vise à faciliter l'utilisation de \TeX. + +Le programme de création de graphiques Asymptote est fourni pour plusieurs +plate-formes. Il fournit un langage de description de graphiques en mode texte +plus ou moins du même genre que \MP{}, mais avec, entre autres, des +fonctionnalités 3D avancées. Sa page d'accueil est +\url{http://asymptote.sourceforge.net}. + +Le programme \code{dvipdfm} séparé a été remplacé par \code{dvipdfmx} qui, +lorsqu'il est appelé par ce nom, travaille dans un mode de compatibilité +spécifique. Le programme \code{dvipdfmx} fournit des fonctionnalités pour les +écritures \acro{CJK} et inclut de nombreux correctifs accumulés au fil des ans +depuis la dernière sortie de \code{dvipdfm}. Sa page d'accueil est +\url{http://project.ktug.or.kr/dvipdfmx}. + +Des exécutables pour les plate-formes \pkgname{cygwin} et \pkgname{i386-netbsd} +sont maintenant fournis, tandis que les autres distributions BSD ont été +abandonnées ; nous avons entendu dire que OpenBSD et FreeBSD fournissent \TeX\ +via leurs propres systèmes de gestion de paquets, et par ailleurs il était +difficile sur ces plate-formes de fabriquer des binaires qui aient une chance +de fonctionner sur plus d'une version. + +Quelques autres changements en vrac : nous utilisons maintenant \pkgname{xz}, +qui remplace \pkgname{lzma} (\url{http://tukaani.org/xz/}), +pour comprimer nos archives ; un |$|\iffalse|$|\fi littéral est autorisé dans +les noms de +fichiers s'il n'est pas suivi du nom d'une variable connue ; la bibliothèque +Kpathsea est maintenant multi-threadée (ce qui sert dans \MP{}) ; le +processus complet de compilation de \TL est maintenant basé sur Automake. + +Remarque finale concernant le passé : toutes les anciennes distributions \TL{} +ainsi que les jaquettes des \CD{} correspondants sont disponibles ici : +\url{ftp://tug.org/historic/systems/texlive}. + +% +\subsubsection{2010} +\label{sec:2010news} % keep with 2010 + +En 2010, les PDF générés utilisent par défaut la version 1.5 du format PDF, ce +qui permet une plus grande compression. Ceci concerne tous les moteurs \TeX{} +produisant directement du PDF, ainsi qu'à \code{dvipdfmx}. Pour revenir au +format PDF 1.4, vous pouvez charger le paquet \pkgname{pdf14} sous \LaTeX{}, +ou régler manuellement |\pdfminorversion=4| (sous pdf\TeX). + +pdf\AllTeX\ convertit maintenant \emph{automatiquement} les fichiers EPS +utilisés au format PDF, en utilisant le paquet \pkgname{epstopdf}, dans tous +les cas où le fichier de configuration \LaTeX{} \code{graphics.cfg} est +chargé, et que le format de sortie est le PDF. Les options par défaut sont +choisies pour éviter autant que possible tout risque d'écrasement d'un fichier +PDF créé manuellement, mais vous pouvez aussi empêcher le chargement +d'\pkgname{epstopdf} en plaçant |\newcommand{\DoNotLoadEpstopdf}{}| (ou +|\def...| avant la déclaration \cs{documentclass}. Le paquet n'est pas chargé +non plus si \pkgname{pst-pdf} est utilisé. Pour plus de détails, reportez-vous +à la documentation du paquet \pkgname{epstopdf} +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +Un autre changement, relié au précédent, est que l'exécution d'un tout petit +nombre de commandes externes depuis \TeX{} (avec le commande |\write18|) est +désormais autorisée par défaut. Ces commandes sont \code{repstopdf}, +\code{makeindex}, \code{kpsewhich}, \code{bibtex}, et \code{bibtex8} ; cette +liste est définie dans \file{texmf.cnf}. Si vous souhaitez désactiver cette +fonctionnalité, vous pouvez désélectionner cette option à l'installation +(section~\ref{sec:options}), ou modifier la valeur après installation en +exécutant |tlmgr conf texmf shell_escape 0|. + +Un autre changement est encore relié aux deux derniers : \BibTeX\ et Makindex +refusent désormais par défaut d'écrire leur fichier de sortie dans n'importe +quel répertoire (ce que \TeX\ refusait déjà). Ceci a pour but de permettre +leur inclusion dans la liste ci-dessus. Pour modifier ce comportement, vous +pouvez utiliser la variable d'environnement \envname{TEXMFOUTPUT}, ou modifier +la valeur de |openout_any|. + +\XeTeX{} offre désormais un ajustement optique des marges similaire à celui de +pdf\TeX. (La dilatation des fontes n'est pas contre pas disponible +actuellement.) + +Par défaut, \prog{tlmgr} garde maintenant une copie de sauvegarde de tous les +paquets mis à jour (\code{tlmgr option autobackup 1}) pour permettre de +revenir facilement à l'ancienne version au cas où la nouvelle soit +cassée, en utilisant \code{tlmgr restore}. Si vous faites des mises à jour +après l'installation, et n'avez pas la place de garder ces copies de +sauvegarde, exécutez \code{tlmgr option autobackup 0}. + +De nouveaux programmes sont inclus : le moteur p\TeX{} et les utilitaires reliés +pour la composition du japonais ; le programme \BibTeX{}U qui est une version +de \BibTeX\ gérant Unicode ; l'utilitaire \prog{chktex} +(\url{http://baruch.ev-en.org/proj/chktex}) pour vérifier les documents +\AllTeX ; le programme de conversion DVI vers SVG \prog{dvisvgm} +(\url{http://dvisvgm.sourceforge.net}). + +Nous fournissons des exécutables pour les nouvelles plate-formes suivantes : +\code{amd64-freebsd}, \code{amd64-kfreebsd}, \code{i386-freebsd}, +\code{i386-kfreebsd}, \code{x86\_64-darwin} et \code{x86\_64-solaris}. + +Un changement dans \TL que nous avions oublié de noter : de nombreux +exécutables relatifs à \TeX4ht ont été retirés de la liste des exécutables. La +commande générique \code{mk4ht} permet de lancer les nombreuses variantes de +\code{tex4ht}. + +Enfin, \TL telle qu'elle est présentée dans le \DVD\ \TK{} ne peut plus être +exécutée de façon portable (en \emph{live}) --- contrairement à ce qu'indique +le nom. Il n'y a désormais plus assez de place sur un seul \DVD. Un effet +secondaire agréable de cette nouvelle disposition est que l'installation +depuis un \DVD\ physique est maintenant être beaucoup plus rapide. + +\subsubsection{2011} + +Les binaires pour \MacOSX\ (\code{universal-darwin} et \code{x86\_64-darwin}) +ne fonctionnent désormais que sous Leopard ou une version ultérieure ; Panther +et Tiger ne sont plus supportés. + +Le programme \code{biber} pour le traitement des bibliographies est inclus +pour les plateformes les plus courantes. Son développement suit de près celui +du paquet \code{biblatex} qui réimplémente totalement la gestion des +bibliographies sous \LaTeX. + +Le programme MetaPost (\code{mpost}) ne crée plus et n'utilise plus de +fichiers \code{.mem}. Les fichiers utiles, comme \code{plain.mp}, sont +simplement traités à chaque exécution. Ceci est relié au support de MetaPost +en tant que bibliothèque, qui est un autre changement important bien que peu +visible par les utilisateurs. + +L'implémentation en Perl de \code{updmap}, qui n'était utilisée que sous +Windows, a été remaniée et est désormais utilisée sur toutes les plateformes. +Il ne devrait pas y avoir de changement visible par les utilisateurs, mis à +par une exécution bien plus rapide. + +% +\htmlanchor{news} +\subsection{Version présente} +\label{sec:tlcurrent} + +\code{tlmgr} permet d'utiliser plusieurs dépôts de paquets simultanément pour +les mises à jour. Pour plus de détails, consulter la section sur les dépôts +multiples dans l'aide de \code{tlmgr} (utiliser \code{tlmgr help} par +exemple). + +Le paramètre \cs{XeTeXdashbreakstate} est réglé à~1 par défaut, pour +\code{xetex} et \code{xelatex}. Ceci autorise les coupures de lignes après les +tirets quadratins et demi-quadratins, ce qui a toujours été le comportement de +\TeX, \LaTeX, Lua\TeX, etc. Si des documents \XeTeX\ existants doivent +conserver une parfaite compatibilité au niveau des coupures de lignes, il +devront mettre \cs{XeTeXdashbreakstate} à~0 explicitement. + +Les fichiers de sortie générés par \code{pdftex} et \code{dvips}, entre +autres, peuvent maintenant dépasser les 2~Go. + +Les 35 polices Postscript standard sont incluses par défaut dans la sortie de +\code{dvips}, car il y en a trop de versions différentes dans la nature. + +Dans le mode d'éxécution par \cs{write18} limité (le mode par défaut), la +commande \code{mpost} est maintenant autorisée. + +Un fichier \code{texmf.cnf} placé dans \filename{../texmf-local} (par exemple +: \filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf}) sera trouvé et +utilisé s'il existe. + +Le script \code{updmap} lit maintenant un fichier \code{updmap.cfg} par +arborescence au lieu d'un seul fichier global. Ce changement devrait être +invisible à moins que vous n'ayez édité vos fichiers \code{updmap.cfg} +directement. Voir la sortie de \code{updmap --help} pour plus de détails. + +Plate-formes : \pkgname{armel-linux} et \pkgname{mipsel-linux} ont été ajoutés +; \pkgname{sparc-linux} et \pkgname{i386-netbsd} ne font plus partie de la +distribution principale, mais sont disponibles en tant que plate-formes +complémentaires, ainsi que d'autres plate-formes : +\url{http://tug.org/texlive/custom-bin.html}. + +\subsection{Versions futures} + +\emph{\TL{} n'est pas un produit parfait !} (et ne le sera jamais). Nous +prévoyons de continuer à produire de nouvelles versions et aimerions fournir +plus d'aide, de fonctionnalités, de programmes d'installation et (bien sûr) +une arborescence améliorée et vérifiée de macros et de fontes. Ce travail est +effectué par des volontaires sur leur temps libre, et il y a toujours plus à +faire. Si vous pouvez nous aider, n'hésitez pas à nous contacter (cf. +\url{http://tug.org/texlive/contribute.html}). + +Corrections, suggestions et propositions d'aide doivent être envoyées à : +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Bon travail avec \TeX{} !} + +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% mode: flyspell +%%% ispell-local-dictionary: "francais" +%%% TeX-master: t +%%% coding: utf-8 +%%% End: +% vim: spell spelllang=fr diff --git a/Master/texmf-dist/doc/texlive/texlive-it/Makefile b/Master/texmf-dist/doc/texlive/texlive-it/Makefile new file mode 100644 index 00000000000..17dc5c0fd90 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-it/Makefile @@ -0,0 +1,3 @@ +# public domain +include ../texlive-en/Makefile +doc = texlive-it diff --git a/Master/texmf-dist/doc/texlive/texlive-it/texlive-it.html b/Master/texmf-dist/doc/texlive/texlive-it/texlive-it.html new file mode 100644 index 00000000000..61509be4915 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-it/texlive-it.html @@ -0,0 +1,6532 @@ + + + + Guida a TeX Live +TeX Live 2012 + + + + + + + + + + +

+ + + + + +

Guida a TEX Live
+TEX Live 2012

+
+
Giugno 2012
+
+

Indice

+
+ 1 Introduzione +
 1.1 TEX Live e la TEX Collection +
 1.2 Supporto per i sistemi operativi +
 1.3 Installazione base di TEX Live +
 1.4 Considerazioni sulla sicurezza +
 1.5 Ottenere aiuto +
2 Panoramica di TEX Live +
 2.1 La TEX Collection: TEX Live, proTEXt, MacTEX +
 2.2 Directory primarie di TEX Live +
 2.3 Panoramica dei percorsi predefiniti in texmf +
 2.4 Estensioni di TEX +
 2.5 Altri rilevanti programmi in TEX Live +
 2.6 Font in TEX Live +
3 Installazione +
 3.1 Avviare l’installatore +
  3.1.1 Unix +
  3.1.2 MacOSX +
  3.1.3 Windows +
  3.1.4 Cygwin +
  3.1.5 L’installatore testuale +
  3.1.6 L’installatore grafico avanzato +
  3.1.7 La semplice installazione guidata +
 3.2 Eseguire l’installatore +
  3.2.1 Menu delle architetture (solo Unix) +
  3.2.2 Selezionare cosa deve essere installato +
  3.2.3 Directory +
  3.2.4 Opzioni +
 3.3 Opzioni della riga di comando di install-tl +
  3.3.1 L’opzione -repository +
 3.4 Azioni successive all’installazione +
  3.4.1 Variabili d’ambiente per Unix +
  3.4.2 Variabili d’ambiente: configurazione globale +
  3.4.3 Aggiornamenti da Internet dopo l’installazione del DVD +
  3.4.4 Configurazione dei font di sistema per XeTEX e LuaTEX +
  3.4.5 ConTEXt Mark IV +
  3.4.6 Integrare macro locali e personali + + +
  3.4.7 Integrare font di terze parti +
 3.5 Collaudare l’installazione +
 3.6 Collegamenti ad ulteriori software scaricabili +
4 Installazione specializzate +
 4.1 Installazioni condivise tra utenti o macchine +
5 Installazioni portatili (USB) +
 5.1 Installazioni degli ISO (o del DVD) +
6 tlmgr: gestire la vostra installazione +
 6.1 Modalità GUI di tlmgr +
 6.2 Esempi di invocazioni di tlmgr dalla riga di comando +
7 Note relative a Windows +
 7.1 Funzionalità specifiche per Windows +
 7.2 Software aggiuntivo incluso sotto Windows +
 7.3 Il profilo utente è “home” +
 7.4 Il registro di configurazione di Windows +
 7.5 Permessi di Windows +
 7.6 Incrementare la memoria massima sotto Windows e Cygwin +
8 Una guida a Web2C +
 8.1 Ricerca dei percorsi con Kpathsea +
  8.1.1 Fonti dei percorsi +
  8.1.2 File di configurazione +
  8.1.3 Espansione dei percorsi +
  8.1.4 Espansione predefinita +
  8.1.5 Espansione delle parentesi graffe +
  8.1.6 Espansione delle sotto directory +
  8.1.7 Elenco dei caratteri speciali e loro significato: un riepilogo +
 8.2 Database di nomi di file +
  8.2.1 Il database di nomi +
  8.2.2 kpsewhich: ricerca indipendente di percorsi +
  8.2.3 Esempi d’uso +
  8.2.4 Risoluzione dei problemi +
 8.3 Opzioni di esecuzione +
9 Ringraziamenti +
10 Storia delle edizioni +
 10.1 Passato +
  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 2010 +
  10.2.1 2011 +
 10.3 Present +
 10.4 Futuro +
+

+

Note all’edizione italiana

+

Dopo tanti anni, finalmente abbiamo anche un’edizione italiana di questa guida alla distribuzione TEX Live. +Vorrei premettere che, per garantirne il completamento entro l’uscita di TEX Live 2009, mi sono fatto in +quattro destinando praticamente ogni attimo libero a questo lavoro; ho tenuto sempre acceso il computer, con +l’editor aperto e, spesso, passandoci davanti, mi fermavo a tradurre una sola frase o addirittura una sola parola +pur di non restare fermo. + + +

Ovviamente il risultato è un lavoro fatto con i piedi, uno stile incoerente, parti che nemmeno io riesco a +capire, errori di battitura e di grammatica. Di tutto questo chiedo scusa. Però, adesso, il grosso dello sforzo è +stato fatto e revisionare periodicamente questa guida per limarla e migliorarla sarà un’opera di gran lunga più +semplice. +

Purtroppo, ho mancato l’appuntamento con TEX Live 2010 e la guida lì presente era la stessa del 2009, +con tutti i suoi difetti. Questa volta, per l’edizione 2011, mi sono impegnato un po’ di più, ho ripreso +l’intero lavoro, l’ho aggiornato prima con le modifiche del 2010 e quindi con quelle del 2011, ho +corretto una valanga di errori e ritradotto frasi che con l’italiano avevano davvero poco a che +vedere. +

Ovviamente ci saranno ancora tanti errori, frasi incomprensibili, incoerenze e chi più ne ha più ne metta, +ma spero nuovamente che il mio piccolo contributo a TEX sia apprezzato. Potete contattarmi per qualunque +cosa, aiuti, suggerimenti, correzioni, all’indirizzo marco.pallante@gmail.com. +

Vorrei dedicare questo lavoro alla mia città. +

Marco Pallante
L’Aquila, 20 giugno 2011. +

+

1 Introduzione

+

+

1.1 TEX Live e la TEX Collection

+

Questo documento descrive le caratteristiche principali della distribuzione TEX Live — TEX e i programmi ad +esso correlati per i sistemi GNU/Linux e altre versioni di Unix, Mac OS X e Windows. +

Potete ottenere TEX Live scaricandola, oppure sul DVD TEX Collection, che i gruppi di utenti TEX +distribuiscono ai propri membri, o in altri modi. La sezione 2.1 descrive brevemente il contenuto del DVD. Sia +TEX Live che TEX Collection sono progetti cooperativi dei gruppi di utenti TEX. Questo descrive +principalmente TEX Live. +

TEX Live include gli eseguibili per TEX, LaTeX2e, ConTEXt, Metafont, MetaPost, BibTeX e molti altri +programmi, una vasta collezione di macro, font e documentazione e il supporto per la composizione tipografica +in molti diversi alfabeti provenienti da tutte le parti del mondo. +

Per un breve riassunto dei principali cambiamenti in questa edizione di TEX Live, consultate la fine di +questo documento, sezione 10 (p. 73). +

+

1.2 Supporto per i sistemi operativi

+

TEX Live contiene gli eseguibili per molte piattaforme basate su Unix, inclusi GNU/Linux, Mac OS X e +Cygwin. I sorgenti inclusi possono essere compilati per quelle piattaforme per le quali non forniamo i +binari. +

Per quanto riguarda Windows: Windows XP e successivi sono supportati. Windows 2000 probabilmente +continuerà a funzionare quasi del tutto. Non ci sono specifici eseguibili a 64-bit per Windows, ma quelli a +32-bit dovrebbero funzionare sui sistemi a 64-bit. +

Consulta la sezione 2.1 per scoprire soluzioni alternative per Windows e Mac OS X. +

+

1.3 Installazione base di TEX Live

+

È possibile installare TEX Live dal DVD oppure attraverso Internet (http://tug.org/texlive/acquire.html). Il +programma di installazione via rete è piccolo e scarica tutto ciò che è necessario da Internet. +

Il programma di installazione nel DVD vi permette l’installazione su un disco locale. Non è possibile +eseguire TEX Live direttamente dal DVD TEX Collection (o dalla sua immagine .iso), ma potete preparare +un’installazione pronta per l’uso su, per esempio, una pennetta USB (consultate la sezione 5). L’installazione è +descritta nelle prossime sezioni (p. 12), ma eccone un rapido accenno: + + +

    +
  • Lo script di installazione è chiamato install-tl. Può operare in “modalità guidata” (wizard) + dando l’opzione -gui=wizard (predefinita sotto Windows), in modalità testuale dando l’opzione + -gui=text (predefinito per gli altri sistemi) e in modalità GUI esperta dando -gui=perltk. +
  • +
  • Uno degli elementi installati è il programma “TEX Live Manager”, chiamato tlmgr. Così come + l’installatore, può essere usato sia in modalità GUI che in modalità testuale. Lo si può usare per + installare e disinstallare i pacchetti e per compiere varie operazioni di configurazione. +
+

+

1.4 Considerazioni sulla sicurezza

+

Sulla base delle nostre conoscenze, i programmi centrali di TEX sono (e sono sempre stati) estremamente +robusti. Tuttavia, gli altri programmi in TEX Live potrebbero non raggiungere lo stesso livello, nonostante il +massimo impegno di tutti. Come sempre, dovreste essere attenti nell’eseguire i programmi su documenti di +origine inaffidabile; per la massima sicurezza, eseguiteli in una nuova sotto directory. +

Questo bisogno di attenzone è particolarmente pressante sotto Windows, dato che generalmente Windows +cerca i programmi nella directory attuale prima che in qualunque altra posizione, indipendentemente dal +percorso di ricerca. Questo comportamento crea un’ampia varietà di possibili attacchi. Abbiamo +chiuso molte falle, ma indubbiamente alcune ne rimangono, soprattutto con i programmi di terze +parti. Perciò raccomandiamo di controllare la presenza di file sospetti nella directory attuale, +soprattutto quella di eseguibili (binari o script). Normalmente questi non dovrebbero essere presenti +e senza alcun dubbio normalmente non dovrebbero essere creati semplicemente elaborando un +documento. +

Infine, TEX (e i programmi che lo accompagnano) è capace di creare nuovi file quando elabora i +documento, una funzionalità che può anche essere abusata in una grande quantità di modi. Di nuovo, elaborare +documenti sconosciuti in una nuova sotto directory è la cosa più sicura. +

+

1.5 Ottenere aiuto

+

La comunità TEX è attiva ed amichevole e le domande più importanti finiscono per ricevere una risposta. +Tuttavia il supporto è informale, offerto da volontari e lettori casuali, per cui è particolarmente importante +fare la propria parte prima di chiedere (se preferite un supporto commerciale garantito, potete rinunciare del +tutto a TEX Live e ordinare il sistema di un fornitore; alla pagina http://tug.org/interest.html#vendors +trovate un elenco). +

Ecco una lista di risorse, approssimativamente nell’ordine in cui noi raccomandiamo di usarle: +

+

+Per Cominciare
Se siete nuovi di TEX, alla pagina web http://tug.org/begin.html troverete una + breve introduzione al sistema. +
+TEX FAQ
Le TEX + FAQ sono un enorme compendio di risposte ad ogni genere di domanda, dalle più elementari alle + più oscure. Sono incluse in TEX Live in texmf-dist/doc/generic/FAQ-en/html/index.html e sono + disponibili su Internet alla pagina http://www.tex.ac.uk/faq. Controllate prima qui. +
+TEX Catalogue
Se state cercando uno specifico pacchetto, font, programma, ecc., il TEX Catalogue + è il luogo dove guardare. È un enorme catalogo con tutte le voci relative a TEX. Visitate + http://mirror.ctan.org/help/Catalogue/. +
+Risorse Web per TEX
La pagina web http://tug.org/interest.html ha molti collegamenti + relativi a TEX, in particolare a numerosi libri, manuali ed articoli su tutti gli aspetti del sistema. + + +
+archivi di supporto
I due principali forum di supporto sono il gruppo Usenet news:comp.text.tex + e la mailing list texhax@tug.org. I loro archivi raccolgono anni di domande e risposte per il + vostro piacere di ricerca tramite http://groups.google.com/group/comp.text.tex/topics e + http://tug.org/mail-archives/texhax, rispettivamente. E una generica ricerca su web, ad + esempio da http://google.com, non fa mai male. +
+porre domande
Se non + riuscite a trovare una risposta, potete formulare la vostra domanda su comp.text.tex tramite + Google o un programma per Usenet, oppure tramite posta elettronica su texhax@tug.org. Ma + prima di scrivere, leggete questa voce delle FAQ, al fine di massimizzare le probabilità di ottenere + una risposta utile: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion. Vale + anche la pena nominare il sito della Comunità LATEX su http://www.latex-community.org/ + e il suo forum http://www.latex-community.org/forum/ e il TEX StackExchange su + http://tex.stackexchange.com/. +
+supporto TEX Live
Se volete segnalare un bug o avete dei suggerimenti o commenti sulla + distribuzione TEX Live, sull’installazione o la documentazione, la mailing list è tex-live@tug. + org. Tuttavia, se la vostra domanda è relativa all’uso di un particolare programma incluso in TEX + Live, scrivete al mantenitore o alla mailing list di quel programma. Spesso eseguire un programma + con l’opzione --help fornisce un indirizzo al quale segnalare i bug. +
+

L’altra faccia della medaglia è aiutare coloro che hanno domande. Sia comp.text.tex che texhax +sono aperte a chiunque, quindi sentevi liberi di unirvi, iniziare a leggere e dare una mano dove +potete. +

+

2 Panoramica di TEX Live

+

Questa sezione descrive i contenuti di TEX Live e della TEX Collection di cui è parte. +

+

2.1 La TEX Collection: TEX Live, proTEXt, MacTEX

+

Il DVD TEX Collection include quanto segue: +

+

+TEX Live
Un sistema TEX completo da installare sul proprio disco. La sua pagina web è + http://tug.org/texlive/. +
+MacTEX
per Mac OS X, aggiunge a TEX Live un installatore nativo per Mac OS X ed altre + applicazioni Mac. La sua pagina web è http://tug.org/mactex/. +
+proTEXt
Un miglioramento della distribuzione MiKTEX per Windows, proTEXt aggiunge alcuni + strumenti supplementari a MiKTEX e semplifica l’installazione. È interamente indipendente + da TEX Live e ha le proprie istruzioni per l’installazione. La pagina web di proTEXt è + http://tug.org/protext. +
+CTAN
Un’instantanea dell’archivio CTAN (http://www.ctan.org). +
+texmf-extra
Una directory con pacchetti aggiuntivi assortiti. +
+ + +

CTAN, protext e texmf-extra non seguono necessariamente le stesse condizioni di licenza di TEX Live, per +cui fate attenzione nel ridistribuirli o modificarli. +

+

2.2 Directory primarie di TEX Live

+

Segue un breve elenco e una descrizione delle directory primarie in un’installazione di TEX Live. +

+

+ bin
+

I programmi del sistema TEX, raggruppati per piattaforma. +

+ readme-*.dir
+

Una rapida panoramica e collegamenti utili per TEX Live, in varie lingue, sia in HTML che in + formato testuale. +

+ source
+

I sorgenti di tutti i programmi inclusi, comprese le distribuzioni TEX basate su Web2C. +

+ texmf
+

Vedi TEXMFMAIN sotto. +

+ texmf-dist
+

Vedi TEXMFDIST sotto. +

+ tlpkg
+

Script, programmi e dati per l’amministrazione dell’installazione e per il supporto specifico di + Windows.

+

In aggiunta alle precedenti directory, gli script di installazione e i file README (in varie lingue) si trovano +nella directory della distribuzione. +

Per quanto riguarda la documentazione, i collegamenti nel file doc.html possono risultare utili. La +documentazione per i programmi (manuali, pagine di manuale, file Info) si trova in texmf/doc. La +documentazione per i pacchetti ed i formati TEX si trova nella directory texmf-dist/doc. Potete usare il +programma texdoc per trovare una qualsiasi documentazione, ovunque sia collocata. +

Questa stessa documentazione di TEX Live si trova in texmf/doc/texlive, disponibile in varie +lingue: +

+

+

2.3 Panoramica dei percorsi predefiniti in texmf

+

Questa sezione elenca le variabili predefinite che specificano i percorsi dentro texmf usati dal sistema, il loro +scopo e la strutturazione predefinita di TEX Live. Il comando tlmgr conf mostra i valori di queste variabili, +così che sia possibile scoprire con facilità come queste siano riferite alle specifiche directory nella propria +installazione. +

Tutti i percorsi, inclusi quelli personali, dovrebbero seguire la Struttura delle Directory di +TEX (TEX Directory Structure, TDS, http://tug.org/tds) con tutta la sua miriade di sotto directory, +altrimenti i file potrebbero non essere trovati. La sezione 3.4.6 (p. 40) descrive ciò con maggior +dettaglio. +

+

+ TEXMFMAIN
+

Il percorso che contiene le parti vitali del sistema, come i file di configurazione, gli script di + supporto e la documentazione dei programmi. +

+ TEXMFDIST
+

Il percorso che contiene il gruppo principale di pacchetti di macro, di font, ecc. +

+ TEXMFLOCAL
+

Il percorso che un amministratore può usare per l’installazione di macro, di font, ecc., aggiuntivi + o aggiornati nel proprio sistema, in modo che siano disponibili per tutti gli utenti. +

+ TEXMFHOME
+

Il percorso che ciascun utente può usare per la propria installazione personale di macro, font, + ecc., aggiuntivi o aggiornati. L’espansione di questa variabile si adatta dinamicamente per ciascun + utente alla directory individuale dell’utente stesso. +

+ TEXMFCONFIG
+

Il percorso relativo a ciascun utente usato dai programmi texconfig, updmap e fmtutil per + memorizzare i dati di configurazione modificati. +

+ TEXMFSYSCONFIG
+

Il percorso relativo all’intero sistema usato dai programmi texconfig-sys, updmap-sys e + fmtutil-sys per memorizzare i dati di configurazione modificati. +

+ TEXMFVAR
+

Il percorso relativo a ciascun utente usato da texconfig, updmap e fmtutil per memorizzare i + dati generati durante l’esecuzione, come i file dei formati e le mappe per i font. +

+ TEXMFSYSVAR
+

Il percorso relativo all’intero sistema usato da texconfig-sys, updmap-sys, fmtutil-sys ed + anche da tlmgr per memorizzare i dati generati durante l’esecuzione, come i file dei formati e le + mappe per i font. +

+ TEXMFCACHE
+

I percorsi usati da ConTEXt MkIV per memorizzare i dati generati durante l’esecuzione.

+

La strutturazione predefinita è: + + +

+percorso del sistema
può contenere diverse edizioni di TEX Live: +
+ 2011
+

Un’edizione precedente. +

+ 2012
+

L’attuale edizione. +

+ bin
+

  +

+ i386-linux
+

Esebuibili per GNU/Linux +

+ ...
+

+

+ universal-darwin
+

Eseguibili per Mac OS X +

+ win32
+

Eseguibili per Windows

+
+ texmf       
+

This is TEXMFMAIN. +

+ texmf-dist  
+

TEXMFDIST +

+ texmf-var   
+

TEXMFSYSVAR +

+ texmf-config
+

TEXMFSYSCONFIG

+
+ texmf-local
+

TEXMFLOCAL, pensato per essere mantenuto tra diverse edizioni.

+
+home dell’utente
($HOME o %USERPROFILE%) +
+ .texlive2011
+

Dati privati generati e di configurazione per un’edizione precedente. +

+ .texlive2012
+

Dati privati generati e di configurazione per l’attuale edizione. +

+ texmf-var   
+

TEXMFVAR, TEXMFCACHE +

+ texmf-config
+

TEXMFCONFIG

+
+ texmf
+

TEXMFHOME Macro personali, ecc.

+ + +
+

+

2.4 Estensioni di TEX

+

Lo sviluppo dell’originale TEX di Knuth è congelato, se si escludono rare correzioni di bug. È ancora presente +in TEX Live come tex e vi rimarrà nel prossimo futuro. TEX Live contiene diverse versioni estese di +TEX: +

+

+e-TEX
aggiunge un insieme di nuove primitive (riguardanti l’espansione delle macro, la scansione dei + caratteri, le classi di segnaposti, caratteristiche di debug aggiuntive ed altro ancora) e le estensioni + TEX--XE T per la scrittura bidirezionale. Nella modalità di base, e-TEX è compatibile al 100% + con il TEX ordinario. Consultate texmf-dist/doc/etex/base/etex_man.pdf. +
+pdfTEX
parte dalle estensioni di e-TEX, aggiunge il supporto per la generazione di file PDF + oltre che dei DVI e molte estensioni che non sono legate alla generazione dell’output. Questo + programma è invocato dalla maggior parte dei formati, come etex, latex, pdflatex. Il suo sito + web è http://www.pdftex.org/. Consultate texmf-dist/doc/pdftex/manual/pdftex-a.pdf per il + manuale e texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex per gli esempi d’uso di alcune + delle sue caratteristiche. +
+LuaTEX
è il successore prescelto di pdfTEXed è quasi del tutto (ma non completamente) + compatibile con i predecessori. È anche destinato a sostituire le funzioni di Aleph (vedi sotto), + per quanto non sia stata predisposta la compatibilità tecnica. L’interprete Lua incorportato + (http://www.lua.org/) permette soluzioni eleganti a molti problemi spinosi di TEX. Quando + è invocato come texlua, si comporta come un interprete Lua autonomo ed è già usato in + questo modo all’interno di TEX Live. Il suo sito web è http://www.luatex.org e il manuale di + riferimento è texmf-dist/doc/luatex/luatexref-t.pdf. +
+XeTEX
aggiunge il supporto per l’input in Unicode e per i font OpenType e di sistema, implementato + usando librerie di terze parti standard. Visitate http://tug.org/xetex. +
+Omega (Omega)
è basato sull’Unicode (caratteri a 16 bit) e dunque consente di lavorare con quasi + tutti gli alfabeti del mondo contemporaneamente. Supporta anche i cosiddetti “Omega Translation + Process” (OTP, Processi di Traduzione Omega), per compiere trasformazioni complesse su input + arbitrari. Omega non è più incluso in TEX Live come programma separato; soltanto Aleph è + fornito. +
+Aleph
combina le estensioni Omega e e-TEX. Consultate texmf-dist/doc/aleph/base. +
+

+

2.5 Altri rilevanti programmi in TEX Live

+

Seguono alcuni altri programmi di uso comune inclusi in TEX Live: +

+

+ bibtex, bibtex8
+

supporto per la bibliografia. +

+ makeindex, xindy
+

supporto per gli indici. + + +

+ dvips
+

converte i DVI in PostScript. +

+ xdvi
+

programma di anteprima dei DVI per l’X Window System. +

+ dvilj
+

convertitore di DVI per la famiglia di stampanti HP LaserJet. +

+ dviconcat, dviselect
+

tagliano ed incollano le pagine contenute nei file DVI. +

+ dvipdfmx
+

converte i DVI in PDF, un approccio alternativo a pdfTEX (citato in precedenza). +

+ psselect, psnup,
+

programmi di manipolazione dei PostScript. +

+ pdfjam, pdfjoin,
+

programmi di manipolazione dei PDF. +

+ texexec, texmfstart
+

processore ConTEXt e PDF. +

+ tex4ht
+

convertitore da TEX a HTML (e a XML ed altro ancora). +

+

+

2.6 Font in TEX Live

+

TEX Live è fornito con molti caratteri tipografici scalabili di alta qualità. Visita http://tug.org/fonts e +texmf-dist/doc/fonts/free-math-font-survey. +

+

3 Installazione

+

+

3.1 Avviare l’installatore

+

Per cominciare, procuratevi il DVD TEX Collection oppure scaricate l’installatore di rete di TEX Live ed +individuate il programma di installazione: install-tl per Unix, install-tl.bat per Windows. Consulate +http://tug.org/texlive/acquire.html per maggiori informazioni ed altri metodi per ottenere il +software. +

+

+Installatore di rete:
Scaricatelo da CTAN, dal percorso systems/texlive/tlnet; l’indirizzo + http://mirror.ctan.org/systems/texlive/tlnet reindirizzerà automaticamente ad un mirror + aggiornato vicino. Potete scaricare sia install-tl.zip che può essere usato sotto Unix e + Windows, sia il notevolmente più piccolo install-unx.tar.gz solo per Unix. Dopo averlo + decompresso, install-tl e install-tl.bat si troveranno nella sotto directory install-tl. + + +
+DVD TEX Collection:
aprite la sotto directory texlive del DVD. Sotto Windows, il programma + di installazione dovrebbe partire automaticamente quando inserite il DVD. Potete ottenere il + DVD diventando membri di un gruppo + utenti TEX (caldamente consigliato, http://tug.org/usergroups.html) oppure acquistandolo + separatamente (http://tug.org/store) o ancora masterizzandolo a partire dall’immagine ISO. + Sulla maggior parte dei sistemi potete anche montare direttamente l’ISO. Dopo l’installazione dal + DVD o dall’immagine ISO, se volete ottenere gli aggiornamenti da Internet, consulate 3.4.3. +
+

Indipendentemente dall’origine, viene eseguito lo stesso programma di installazione. La differenza più +evidente tra i due è che con l’installatore di rete riceverete i pacchetti che sono disponibili al momento. +Questo contrasta con le immagini DVD e ISO, che non vengono aggiornate tra le principali versioni +pubbliche. +

Le sezioni seguenti spiegano l’avvio dell’installazione in maggiore dettaglio. +

+

3.1.1 Unix
+

Di seguito, > denota il prompt della shell; l’input dell’utente è in grassetto. Il programma install-tl è +uno script Perl. Il modo più semplice per avviarlo su un sistema compatibile Unix è il seguente: +

+

+> cd /percorso/verso/il/programma +
> perl install-tl +
+
In alternativa potete invocare perl /percorso/verso/il/programma/install-lt, oppure ./install-tl se +avete i permessi di esecuzione, ecc.; non ripeteremo tutte queste varianti. Potreste dover ingrandire la finestra +di terminale affinché mostri l’intera schermata dell’installatore testuale (Figura 1). +

Per eseguire l’installazione nella modalità GUI avanzata (figura 2) avete bisogno del modulo Perl/TK) +compilato con il supporto per XFT, che avviene normalmente con GNU/Linux, ma non necessariamente con +altri sistemi. Detto questo, potete eseguire:

+

+> perl install-tl -gui +
+
+

Per un elenco completo delle diverse opzioni:

+

+> perl install-tl -help +
+
+

Attenzione riguardo i permessi Unix: La tua umask nel momento dell’installazione sarà rispettata +dall’installatore di TEX Live. Quindi se vuoi che l’installazione sia usabile da altri utenti oltre che te, sii sicuro +che le tue impostazioni siano permissive a sufficienza, per esempio, umask 002. Per ulteriori informazioni +riguardo umask, consulta la documentazione del tuo sistema. +

Considerazioni speciali per Cygwin: Diversamente da altri sistemi Unix-compatibili, Cygwin non è +preimpostato per includere tutti i programmi di cui l’installatore di TEX Live ha bisogno. Consulta la +sezione 3.1.4 per i dettagli. + + +

+

3.1.2 MacOSX
+

Come accennato nella sezione 2.1, abbiamo preparato una distribuzione separata per Mac OS X chiamata +MacTEX (http://tug.org/mactex). Su Mac OS X raccomandiamo di usare l’installatore nativo di +MacTEX al posto dell’installatore di TEX Live in quanto quello nativo esegue alcuni aggiustamenti specifici +per il Mac, in particolare per consentire con semplicità il passaggio tra le varie distribuzioni TEX per +Mac OS X (MacTEX, Fink, MacPorts, …). +

MacTEX è strettamente basato su TEX Live e le rispettive strutture delle directory sono esattamente le +stesse. Il primo aggiunge alcune ulteriori cartelle con documentazione e applicazioni specifici per il +Mac. +

+

3.1.3 Windows
+

Se state usando l’installatore di rete oppure se l’installatore su DVD non si avvia automaticamente, fate +doppio click su install-tl.bat. Per ottenere maggiori opzioni di configurazione, come la selezione di +specifiche collezioni di pacchetti, lanciate install-tl-advanced.bat. +

Potete avviare l’installatore anche dal prompt dei comandi. Qui sotto, > denota il prompt; l’input +dell’utente è in grassetto. Se vi trovate nella cartella dell’installatore, eseguite semplicemente: +

+

+> install-tl +
+
+

In aternativa potete lanciarlo con un percorso assoluto, come:

+

+> D:\texlive\install-tl +
+
per il DVD TEX Collection, supponendo che D: sia il lettore DVD. La figura 3 mostra l’installazione +guidata, che è quella preimpostata per Windows. +

Per installare in modalità testuale, usate:

+

+> install-tl -no-gui +
+
+

Per un elenco completo delle diverse opzioni:

+

+> install-tl -help +
+
+


+ + + + + +
  Installing TeX Live 2012 from: ...
  Platform: i386-linux => ’Intel x86 with GNU/Linux’
  Distribution: inst (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: 3091 MB
  
   Customizing installation scheme: +
     <C> standard collections
     <L> language collections
  
   <D> directories:
     TEXDIR (the main TeX directory): +
       /usr/local/texlive/2012
     ...
  
   <O> options:
     [ ] use letter size instead of A4 by default
     ...
   +
   <V> set up for portable installation
  
  Actions:
   <I> start installation to hard disk
   <H> help
   <Q> quit
+
Figura 1: Schermata principale dell’installatore testuale (GNU/Linux)
+ + +


+


+ + + + + + +

pict +

Figura 2: Schermata dell’installatore grafico avanzato (GNU/Linux)
+ + +


+


+ + + + + + +

pict +

Figura 3: Schermata dell’installazione guidata (Windows)
+ + +


+

+

3.1.4 Cygwin
+

L’installatore di TEX Live supporta soltanto Cygwin 1.7. Prima di iniziare l’installazione, usate il programma +setup.exe di Cygwin per installare i pacchetti perl e wget, a meno che non lo abbiate già fatto. I seguenti +pacchetti aggiuntivi sono raccomandati: +

    +
  • fontconfig [richiesto da XeTEX] +
  • +
  • ghostscript [richiesto da vari programmi] +
  • +
  • libXaw7 [richiesto da xdvi] +
  • +
  • ncurses [fornisce il comando ’clear’ usato dall’installatore]
+

+

3.1.5 L’installatore testuale
+

La figura 1 mostra la schermata principale della modalità testuale sotto Unix. L’installatore testuale è quello +predefinito sotto Unix. +

Questo è soltanto un installatore a riga di comando; non c’è alcun supporto per il movimento +del cursore di inserimento. Ad esempio, non potete muovervi tra le caselle di spunta o i campi +di inserimento. Voi semplicemente digitate qualcosa al prompt (MAIUSCOLE e minuscole sono +differenti), premete il tasto Invio e l’intera schermata del terminale sarà aggiornata, con il contenuto +alterato. +

L’interfaccia dell’installatore testuale è così primitiva per una ragione: è progettata per funzionare sul +maggior numero di piattaforme possibile, anche con una versione minimale di Perl. +

+

3.1.6 L’installatore grafico avanzato
+

La figura 2 mostra l’installatore grafico avanzato sotto GNU/Linux. Al di là dell’uso di pulsanti e menu, +questo installatore non differisce di molto da quello testuale. +

Questa modalità può essere invocata esplicitamente tramite

+

+> install-tl -gui=perltk +
+
+

+

3.1.7 La semplice installazione guidata
+

Sotto Windows, l’azione predefinita è di eseguire il più semplice metodo di installazione che potessimo +escogitare, chiamato “installazione guidata”. Questa installa tutto e praticamente non pone domande. Se volete +personalizzare la vostra installazione, dovete lanciare uno degli altri installatori. +

Questa modalità può essere invocata esplicitamente con

+

+> install-tl -gui=wizard +
+
+ + +

+

3.2 Eseguire l’installatore

+

L’installatore è pensato per essere perlopiù autoesplicativo, ma seguono alcune note riguardo varie opzioni e +sottomenu. +

+

3.2.1 Menu delle architetture (solo Unix)
+


+ + + + + +
  Available platforms:
  =============================================================================== +
     a [ ] alpha-linux      DEC Alpha with GNU/Linux
     b [ ] amd64-freebsd    x86_64 with FreeBSD +
     c [ ] amd64-kfreebsd   x86_64 with GNU/kFreeBSD
     d [ ] armel-linux      ARM with GNU/Linux +
     e [ ] i386-cygwin      Intel x86 with Cygwin
     f [ ] i386-freebsd     Intel x86 with FreeBSD +
     g [ ] i386-kfreebsd    Intel x86 with GNU/FreeBSD
     h [X] i386-linux       Intel x86 with GNU/Linux +
     i [ ] i386-solaris     Intel x86 with Solaris
     j [ ] mips-irix        SGI IRIX
     k [ ] mipsel-linux     mipsel with Linux +
     l [ ] powerpc-aix      PowerPC with AIX
     m [ ] powerpc-linux    PowerPC 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
+
Figura 4: Menu delle architetture
+ + +


+

La figura 4 mostra il menu delle architetture in modalità testuale. Di base, saranno installati solo gli +eseguibili per la propria piattaforma attuale. Da questo menu si può selezionare l’installazione dei binari anche +per altre piattaforme. Questa opzione è utile se si condivide un’installazione di TEX in una rete di macchine +eterogenee, oppure per una macchina con due sistemi operativi. +

3.2.2 Selezionare cosa deve essere installato
+


+ + + + + +
  Select scheme:
  ===============================================================================
   a [X] full scheme (everything) +
   b [ ] medium scheme (small + more packages and languages)
   c [ ] small scheme (basic + xetex, metapost, a few languages) +
   d [ ] basic scheme (plain and latex)
   e [ ] minimal scheme (plain only)
   f [ ] ConTeXt scheme
   g [ ] GUST TeX Live scheme +
   h [ ] teTeX scheme (more than medium, but nowhere near full)
   i [ ] XML scheme
   j [ ] custom selection of collections
+
Figura 5: Menu degli schemi
+ + +


+

La figura 5 mostra il menu degli schemi di TEX Live; da qui potete scegliere uno “schema”, che è un +insieme di collezioni di pacchetti. Questo è lo schema raccomandato, ma potete anche scegliere basic per un +sistema piccolo, minimal per scopi di prova e medium o teTeX per una via di mezzo. Ci sono anche ulteriori +schemi specializzati e specifici per particolari paesi. +


+ + + + + + +

pict +

Figura 6: Menu delle collezioni
+ + +


+

Potete rifinire la vostra scelta dello schema con i menu “Collezioni di base” e “Collezioni di lingue” +(figura 6, mostrati, per cambiare, in modalità GUI). +

Le collezioni stanno ad un livello di dettaglio maggiore rispetto agli schemi —  in pratica, uno schema +consiste in varie collezioni, una collezione consiste in uno o più pacchetti e un pacchetto (la più +piccola forma di raggruppamento in TEX Live) contiene i file con le macro TEX, i font e così +via. +

Se desiderate un controllo maggiore di quello fornito dal menu delle collezioni, potete usare il programma +TEX Live Manager (tlmgr) dopo l’installazione (cfr. la sezione 6); tramite tale programma, potete controllare +l’installazione al livello di dettaglio dei singoli pacchetti. +

3.2.3 Directory
+

La strutturazione predefinita è descritta nella sezione 2.3, p. 9. La posizione predefinita di TEXDIR è +/usr/local/texlive/2012 sotto Unix e %SystemDrive%\texlive\2012 sotto Windows. +

La ragione principale per cambiare il valore preimpostato si ha quando non avete i permessi di scrittura per +tale percorso. Non dovete essere root o l’amministratore per installare TEX Live, ma avete bisogno dell’accesso +in scrittura sulla directory di destinazione. +

Una ragionevole scelta alternativa è una directory all’interno della vostra home, soprattutto se sarete gli +unici utilizzatori. Usate “~” per specificare la vostra home, come ad esempio in “~/texlive/2012”. +

Raccomandiamo di includere l’anno nel percorso, così da poter tenere diverse edizioni di TEX Live fianco a +fianco (potete usare un collegamento simbolico con il nome indipendente dalla edizione, come +/usr/local/texlive-cur, da aggiornare dopo aver provato la nuova edizione). +

Modificare TEXDIR durante l’installazione causerà anche la modifica di TEXMFLOCAL, TEXMFSYSVAR e +TEXMFSYSCONFIG. +

TEXMFHOME è la posizione raccomandata per le macro e i pacchetti personali. Il suo valore +predefinito è ~/texmf. A differenza di TEXDIR, qui il carattere ~ viene mantenuto all’interno dei file di +configurazione creati, dato che è utile che si riferisca alla home di ciascuna persona che esegue TEX. Si +espande in $HOME sotto Unix e %USERPROFILE% sotto Windows. Speciale nota ridondante: TEXMFHOME, +come tutti gli altri percorsi, deve essere organizzata secondo il TDS, o i file potrebbero non essere +trovati. +

TEXMFVAR è la posizione in cui vengono memorizzati la maggior parte dei dati generati durante l’esecuzione +specifici per ciascun utente. TEXMFCACHE è usato per lo stesso scopo da ConTEXt MkIV (consultate la +sezione 3.4.5, p. 39). +

+

3.2.4 Opzioni
+


+ + + + + +
  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:
   <Y> after installation, get package updates from CTAN: [X]
+
Figura 7: Menu delle opzioni (Unix)
+ + +


+

La figura 7 mostra il menu delle opzioni in modalità testuale. Ulteriori informazioni su ciascuna +opzione: +

+Usa come predefinito il formato di pagina lettera al posto dell’A4:
Questa è la selezione del + formato di carta predefinito. Ovviamente, se lo si desidera, si potrà e si dovrebbe specificare il + formato della carta in ogni singolo documento. +
+execution of restricted list of programs:
A partire da TEX Live 2010, è consentita l’esecuzione + da parte di TEX di pochi programmo esterni. La (molto breve) lista di questi programmi è data + nel file texmf.cnf. Consultate le novità 2010 (sezione 10.2) per maggiori dettagli. +
+Crea i file di formato:
Per quanto i file di formato non strettamente necessari richiedano tempo per + essere generati e spazio su disco per essere memorizzati, è comunque raccomandato di lasciare + questa opzione attiva: se non lo fate, allora i file di formato saranno generati, quando necessari, + all’interno delle directory private TEXMFVAR di ciascun utente. In tali posizioni, non saranno + aggiornati automaticamente se lo sono (ad esempio) gli eseguibili o i modelli di sillabazione + nell’installazione, e così potreste trovarvi ad avere formati incompatibili. +
+Installa  per font e macro:
Queste opzioni consentono di omettere lo scaricamento e l’installazione + della documentazione e dei file sorgenti presenti nella maggior parte dei pacchetti. Non sono + raccomandate. +
+Crea i collegamenti nelle directory di sistema:
Questa opzione (solo Unix) scavalca la necessità + di modificare le variabili di ambiente. Senza di essa, le directory di TEX Live devono + solitamente essere aggiunte alle variabili PATH, MANPATH e INFOPATH. Avete bisogno dei permessi + di scrittura nelle directory di destinazione. Suggeriamo vivamente di non usare questa opzione + per sovrascrivere un’installazione TEX fornita con il vostro sistema. Questa opzione è pensata + principalmente per accedere al sistema TEX tramite directory già note agli utenti, come + /usr/local/bin, che non contengono già alcun file di TEX. +
+after installation  CTAN:
Quando si esegue l’installazione da DVD, questa opzione è abilitata di + default, dato che di solito si vuole prendere ogni successivo aggiornamento di pacchetti dall’area + CTAN che è aggiornata durante l’anno. L’unica ragione plausibile per disabilitarla è quando + si vuole installare solo un sottoinsieme dal DVD e si ha intenzione di estendere l’installazione + successivamente. In ogni caso, l’archivio dei pacchetti per l’installatore e per gli aggiornamenti + successivi all’installazione può essere impostato in modo indipendente secondo le necessità; + consultate le sezioni 3.3.1 e 3.4.3.
+

Quando tutte le impostazioni sono come le desiderate, potete digitare “I” per avviare il processo di +installazione. Quando questo è completo, passate alla sezione 3.4 per leggere cos’altro dovete fare, se ce n’è +bisogno. +

3.3 Opzioni della riga di comando di install-tl

+

Digitate

+

+> install-tl -help +
+
per ottenere un elenco delle opzioni della riga di comando. Sia - che -- possono essere usati per introdurre i +nomi delle opzioni. Ecco le più comuni: +

+ + +

+ -gui
+

Se possibile, usa l’installatore grafico. Questa opzione richiede il modulo Perl/Tk + (http://tug.org/texlive/distro.html#perltk) compilato con il supporto per XFT; se + Perl/Tk non è disponibile, l’installazione prosegue in modalità testuale. +

+ -no-gui
+

Costringe all’uso dell’installatore testuale, anche sotto Windows. +

+ -lang LL
+

Specifica la lingua dell’interfaccia dell’installatore sotto forma di codice standard (di solito a due + lettere). L’installatore cerca di determinare automaticamente la lingua corretta, ma se fallisce o se + la lingua corretta non è disponibile, allora usa l’inglese come ripiego. Lanciate install-tl –help + per la lista delle lingue disponibili. +

+

+ -in-place
+

Se avete già una copia di TEX Live, anche ottenuta tramite rsync o svn (consultate + http://tug.org/texlive/acquire-mirror.html), allora questa opzione userà ciò che avete + ottenuto, così com’è, ed eseguirà solo le necessarie procedure di post installazione. Siete avvisati + che il file tlpkg/texlive.tlpdb potrebbe venire sovrascritto; salvarne una copia è vostra + responsabilità. Inoltre, la rimozione dei pacchetti deve essere eseguita manualmente. Non usate + questa opzione a meno che non sappiate cosa state facendo. Questa opzione non può essere attivata + dall’interfaccia dell’installatore. +

+ -portable
+

Installa per un uso portatile su una chiavetta USB. Questa oprione è selezionabile dall’installatore + testuale con il comando V e dall’installatore grafico. Consultate la sezione 5. +

+ -profile file
+

Carica il profilo di installazione file ed esegue l’installazione senza interazione con l’utente. Il + programma di installazione scrive sempre un file texlive.profile nella sotto directory tlpkg + della vostra installazione. Quel file può essere passato come argomento per ripetere esattamente la + stessa installazione su un sistema differente. In alternativa, potete usare un profilo personalizzato, + creato facilmente partendo da uno generato automaticamente e modificandone i valori, oppure + potete usare un file vuoto, che prenderà come valori tutti quelli predefiniti. +

+ -repository url-o-directory
+

Specifica l’archivio dei pacchetti da cui installare; vedi più avanti.

+

+

3.3.1 L’opzione -repository
+

L’archivio dei pacchetti di rete predefinito è uno dei mirror di CTAN scelto automaticamente tramite +http://mirror.ctan.org. +

Per rimpiazzare questa scelta, potete specificare un url che comincia per ftp:, http: o file:/, oppure il +semplice nome di una directory (quando specificate un indirizzo http: o ftp:, l’eventuale carattere finale “/” e +l’eventuale “/tlpkg” conclusivo saranno ignorati). +

Per esempio, potete scegliere uno specifico mirror di CTAN con qualcosa del tipo: +http://ctan.example.org/tex-archive/systems/texlive/tlnet/, sostituendo a ctan.example.org/tex-archive +il vero nome del sito e il percorso che ospita CTAN. L’elenco dei mirror di CTAN si trova alla pagina +http://ctan.org/mirrors. +

Se il valore specificato è locale (sia tramite percorso che tramite un url file:/), saranno usati i file +compressi contenuti in una sotto directory archive del percorso (anche se sono disponibili anche file non +compressi). + + +

+

3.4 Azioni successive all’installazione

+

Potrebbero essere necessarie alcune azioni successivie all’installazione. +

+

3.4.1 Variabili d’ambiente per Unix
+

Se avete deciso di creare i collegamenti simbolici nelle directory standard (descritto nella sezione 3.2.4), allora +non c’è bisogno di modificare le variabili d’ambiente. Altrimenti, nei sistemi Unix, la directory degli eseguibili +per la vostra piattaforma deve essere aggiunta al percorso di ricerca (sotto Windows, è l’installatore ad +occuparsene). +

Ogni piattaforma supportata ha la propria sotto directory all’interno di TEXDIR/bin. Consultate la figura 4 +per la lista delle sotto directory e delle corrispondenti piattaforme. +

Facoltativamente potete anche aggiungere le directory della documentazione man e Info ai propri rispettivi +percorsi di ricerca, se volete che gli strumenti di sistema la trovino. Le pagine di manuale potrebbero essere +trovate magicamente dopo l’aggiunta al PATH. +

Per le shell compatibili con la Bourne, come bash, e usando GNU/Linux per Intel x86 e le directory +predefinite come esempio, il file da modificare dovrebbe essere $HOME/.profile (o un qualunque altro file +aperto da .profile), e le linee da aggiungere sarebbero simili alle seguenti: +

+

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

Per csh o tcsh, il file da modificare tipicamente è $HOME/.cshrc e le linee da aggiungere sarebbero del +tipo: +

+

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

Se già avete delle impostazioni del genere in uno dei file citati, naturalmente dovete semplicemente unirvi le +directory di TEX Live come è più opportuno. +

+

3.4.2 Variabili d’ambiente: configurazione globale
+

Se volete che questi cambiamenti siano globali oppure che si applichino a ciascun nuovo utente aggiunto nel +sistema, allora dovete cavarvela da soli; c’è semplicemente troppa varietà tra i diversi sistemi nel come e nel +dove queste cose siano configurate. +

I nostri due suggerimenti sono: 1) potete controllare il file /etc/manpath.config e, se esiste, aggiungere +linee come +

+

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

E 2) verificate la presenza di un file /etc/environment che potrebbe definire il percorso di ricerca ed altre +variabili di ambiente predefinite. +

In ciascuna directory contenente eseguibili (per Unix), noi creiamo anche un collegamento simbolico +chiamato man alla directory texmf/doc/man. Alcuni programmi man, come quello di Mac OS X, lo +individueranno automaticamente, ovviando alla necessità di qualunque configurazione per le pagine di +manuale. +

+

3.4.3 Aggiornamenti da Internet dopo l’installazione del DVD
+

Se avete installato TEX Live dal DVD e successivamente volete ottenere gli aggiornamenti da Internet, dovete +eseguire questo comando—dopo aver aggiornato il vostro percorso di ricerca (come descritto nella sezione +precedente): +

+ + +

+> tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet +
+
+

Questo dice a tlmgr di usare un mirror di CTAN nelle vicinanze per gli aggiornamenti futuri. È l’azione +predefinita quando si installa dal DVD, tramite l’opzione descritta nella sezione 3.2.4. +

Se ci sono problemi con la selezione automatica di un mirror, potete specificarne uno in particolare +dall’elenco alla pagina http://ctan.org/mirrors. Usate il percorso esatto alla sotto directory tlnet su quel +mirror, come mostrato in precedenza. +

+

3.4.4 Configurazione dei font di sistema per XeTEX e LuaTEX
+

XeTEX e LuaTEX possono usare qualsiasi font installato nel sistema, non solo quelli nelle directory di TEX. +Fanno questo tramite metodi correlati, ma non identici. +

Su Windows, i font distribuiti con TEX Live sono resi disponibili a XeTEX automaticamente. Ma se avete +installato il pacchetto xetex su un sistema Unix, dovete configurare il vostro sistema in modo che sia capace di +trovare i font distribuiti con TEX Live tramite il meccanismo di ricerca dei nomi di sistema e non +semplicemente la ricerca di nomi di file. +

Per facilitare il compito, quando il pacchetto xetex è installato (sia durante l’installazione iniziale che in +seguito), viene creato il file di configurazione necessario in TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf. +

Per impostare i font di TEX Live per l’uso nell’intero sistema (assumendo che abbiate gli opportuni +privilegi), procedete come segue: +

    +
  1. Copiate il file texlive-fontconfig.conf in /etc/fonts/conf.d/09-texlive.conf. +
  2. +
  3. Eseguite fc-cache -fsv.
+

Se non avete privilegi sufficienti per completare i passi precedenti, p se volete semplicemente rendere +disponibili i font di TEX Live ad un solo utente, fate quello che segue: +

    +
  1. Copiate il file texlive-fontconfig.conf in ~/.fonts.conf, dove ~è la vostra directory di home. +
  2. +
  3. Eseguite fc-cache -fv.
+

Potete eseguire fc-list per vedere i nomi dei font di sistema. L’incantesimo fc-list : family style +file spacing (dove tutti gli argomenti sono esattamente come mostrati) generalmente fornisce delle +informazioni interessanti. +

+

3.4.5 ConTEXt Mark IV
+

Sia il “vecchio” ConTEXt (Mark II) che il “nuovo” ConTEXt (Mark IV) dovrebbero funzionare così come sono +dopo l’installazione di TEX Live e non dovrebbero richiedere alcuna attenzione particolare finché restate fedeli +a tlmgr per gli aggiornamenti. +

Comunque, dato che ConTEXt MkIV non usa la libreria kpathsea, sarà richiesta un po’ di configurazione +ogni qual volta installate nuovi file manualmente (senza usare tlmgr). Dopo ogni installazione del genere, ogni +utente di MkIV deve eseguire: +

  context --generate
+

per aggiornare i dati della cache di ConTEXt sul disco. I file risultanti sono memorizzati dentro TEXMFCACHE il cui +valore predefinito in TEX Live è TEXMFSYSVAR;TEXMFVAR. +

ConTEXt MkIV leggerà da tutti i percorsi menzionati in TEXMFCACHE e scriverà nel primo percorso che sia +scrivibile. Durante la lettura, in caso di dati di cache duplicati avrà la precedenza l’ultima corrispondenza +trovata. +

Per ulteriori informazioni, consultate le pagine http://wiki.contextgarden.net/Running_Mark_IV. + + +

+

3.4.6 Integrare macro locali e personali
+

Questa questione è già stata citata implicitamente nella sezione 2.3: TEXMFLOCAL (/usr/local/texlive/texmf-local +o %SystemDrive%\texlive\texmf-local su Windows, di default) è pensato per i font e le macro locali, ma +disponibili per l’intero sistema; mentre TEXMFHOME ($HOME/texmf o %USERPROFILE%\texmf, come predefiniti) è +per le macro e i font personali.Queste directory sono pensare per rimanere fisse da un’edizione all’altra e il loro +contenuto è visto automaticamente da una nuova versione di TEX Live. Quindi, è meglio trattenersi +dal modificare la definizione di TEXMFLOCAL in modo che punti ad una directory troppo diversa +da quella principale di TEX Live, oppure potreste doverla modificare manualmente nelle future +edizioni. +

In entrambe le posizioni, i file dovrebbero essere posti ognuno nella propria sotto directory +secondo la Struttura delle Directory di TEX (TDS); visitate http://tug.org/tds o consultate +texmf/web2c/texmf.cnf. Ad esempio, il file di una classe o di un pacchetto LATEX andrebbero posizionati in +TEXMFLOCAL/tex/latex o in TEXMFHOME/tex/latex, oppure in una sotto directory di una delle +due. +

TEXMFLOCAL richiede un database dei nomi dei file aggiornato, altrimenti i file non saranno trovati. Potete +aggiornarlo con il comando mktexlsr o utilizzando il pulsante “Aggiorna il database dei nomi dei file” nel +pannello di configurazione della GUI di TEX Live Manager. +

Di default, ciascuna di queste variabili è definita come una directory singola, come mostrato. Questo non è +un requisito rigido. Se dovete passare facilmente tra diverse versioni di grandi pacchetti, ad esempio, potete +mantenere directory multiple per i vostri scopi. Questo è ottenuto impostando TEXMFHOME alla lista delle +directory, tra parentesi graffe, separate da virgole: + + +

+
    TEXMFHOME = {/mia/dir1,/miadir2,/una/terza/dir}
+
+

+

La sezione 8.1.5 descrive ulteriormente l’espansione delle graffe. +

+

3.4.7 Integrare font di terze parti
+

Sfortunatamente, si tratta di un argomento ingarbugliato. Dimenticatevene a meno che non vogliate +addentrarvi nei numerosi dettagli dell’installazione di TEX. Non dimenticate per prima cosa di controllare +quello che ricevete liberamente: consultate la sezione 2.6. +

Una possibile alternativa è quella di usare XeTEX o LuaTEX (consultate la sezione 2.4), che vi +consentono di usare i font del sistema operativo senza alcuna installazione in TEX. +

Se avete comunque bisogno di farlo, visitate la pagina http://tug.org/fonts/fontinstall.html dove +abbiamo fatto del nostro meglio nel descrivere la procedura. Se mantenete le vostre mappe di font locali in +modo rigoroso, tlmgr generate updmap potrebbe essere utile, soprattutto nel muoversi tra una versione e +l’altra; consultate la documentazione di tlmgr. +

+

3.5 Collaudare l’installazione

+

Dopo aver installato TEX Live nel modo migliore, naturalmente vorrete collaudarla, così da poter iniziare a +creare bellissimi documenti e/o font. +

Questa sezione fornisce alcune procedure elementari per verificare che il nuovo sistema funzioni. Qui +daremo i comandi per Unix; è più facile che sotto Mac OS X e Windows eseguiate le prove tramite +un’interfaccia grafica, ma i principi sono gli stessi. +

+

    +
  1. Assicuratevi per prima cosa di poter eseguire il programma tex:
    +

    + > tex --version +
    TeX 3.1415926 (TeX Live ...) +
    kpathsea version 6.0.1 +
    Copyright ... D.E. Knuth. +
    ... +
    +
    Se questo restituisce “comando non trovato” al posto delle informazioni sulla versione e sul + copyright, oppure una versione più vecchia, verosimilmente non avete la giusta directory bin + nel vostro PATH. Consultate le informazioni sull’impostazione delle variabili d’ambiente a + p. 38. +
  2. +
  3. Elaborate un file LATEX elementare:
    +

    + > latex sample2e.tex +
    pdfTeX 3.1415926-... (TeX Live ...) +
    ... +
    Output written on sample2e.dvi (3 pages, 7484 bytes). +
    Transcript written on sample2e.log. + + +
    +
    Se questo non riesce a trovare sample2e.tex o altri file, verosimilmente avete qualche interferenza + proveniente da vecchie variabili d’ambiente o vecchi file di configurazione; noi raccomandiamo, tanto per + iniziare, di eliminare tutte le variabili d’ambiente relative a TEX (per un’analisi approfondita, potete + chiedere a TEX di fare un resoconto su ciò che esattamente stia cercando e che trovi; consultate + “Risoluzione dei problemi” a pagina 67). +
  4. +
  5. Mostrate un’anteprima del risultato:
    +

    + > xdvi sample2e.dvi    # Unix +
    > dviout sample2e.dvi  # Windows +
    +
    Dovreste vedere una nuova finestra con un bel documento che spiega alcuni dei fondamenti di LATEX + (ad ogni modo, vale la pena leggerlo se siete nuovi a TEX). Dovete avere X in esecuzione affinché xdvi + funzioni; se non è così, oppure se la vostra variabile d’ambiente DISPLAY è impostata non correttamente, + otterrete un errore ‘Can’t open display’. +
  6. +
  7. Create un file PostScript per la stampa o la visualizzazione:
    +

    + > dvips sample2e.dvi -o sample2e.ps +
    +
    +
  8. +
  9. Create un file PDF al posto di un DVI; questo comando elabora il file .tex e scrive direttamente un + PDF:
    +

    + > pdflatex sample2e.tex +
    +
    +
  10. +
  11. Mostrate un’anteprima del PDF:
    +

    + > gv sample2e.pdf +
    o: +
    > xpdf sample2e.pdf +
    +
    gv, né xpdf sono inclusi in TEX Live, quindi dovete installarli separatamente. Visitate + http://www.gnu.org/software/gv e http://www.foolabs.com/xpdf, rispettivamente. Ci sono + tantissimi altri visualizzatori PDF. Per Windows, noi raccomandiamo di provare Sumatra PDF + (http://blog.kowalczyk.info/software/sumatrapdf). +
  12. +
  13. Potreste trovare utili, in aggiunta a sample2e.tex, i seguenti file di prova predefiniti: +

    + + +

    + small2e.tex
    +

    Un documento più semplice di sample2e, per ridurre la dimensione dell’input qualora si + riscontrino problemi. +

    + testpage.tex
    +

    Verifica se la vostra stampante introduce qualche margine. +

    + nfssfont.tex
    +

    Per stampare tabelle e prove riguardanti i font. +

    + testfont.tex
    +

    Anche questo per le tabelle dei font, ma usando plain TEX. +

    + story.tex
    +

    Il più canonico tra tutti file di prova per (plain) TEX. Dovete digitare ‘\bye’ al prompt * + dopo ‘tex story.tex’.

    +
  14. +
  15. Se avete installato il pacchetto xetex, potete verificare che riesca ad accedere ai font di sistema in questo + modo:
    +

    + > xetex opentype-info.tex +
    This is XeTeX, Version 3.1415926 +
    ... +
    Output written on opentype-info.pdf (1 page). +
    Transcript written on opentype-info.log. +
    +
    (vale lo stesso per luatex.) +

    Se ricevete un messaggio di errore che riporta “Invalid fontname ‘Latin Modern Roman/ICU…”, allora + dovete configurare il vostro sistema in modo che XeTEX possa trovare i font distribuiti con TEX Live. + Consultate la sezione 3.4.4. +

+

+

3.6 Collegamenti ad ulteriori software scaricabili

+

Se siete nuovi di TEX oppure in alternativa avete bisogno di aiuto nella scrittura di documenti TEX o +LATEX, visitate la pagina http://tug.org/begin.html per alcune risorse introduttive. +

Ecco i collegamenti ad alcuni altri strumenti che potete prendere in considerazione per l’installazione: +

+Ghostscript
http://www.cs.wisc.edu/~ghost/ +
+Perl
http://www.perl.org/ con i pacchetti supplementari da CPAN, http://www.cpan.org/ +
+ImageMagick
http://www.imagemagick.com, per l’elaborazione e la conversione di immagini +
+NetPBM
http://netpbm.sourceforge.net/, anch’esso per le immagini. +
+Editor orientati a TEX
C’è un’ampia scelta ed è una questione di gusto dell’utente. Eccone una selezione + in ordine alfabetico (alcuni sono solo per Windows). + + + +
+

Per un elenco molto più lungo di pacchetti e programmi, visitate http://tug.org/interest.html. +

+

4 Installazione specializzate

+

Le sezioni precedenti hanno descritto il processo di installazione di base. Qui ci rivolgiamo ad alcuni casi +speciali. +

+

4.1 Installazioni condivise tra utenti o macchine

+

TEX Live è stato progettato per essere condivisibile tra diversi utenti di un solo sistema, ma anche tra sistemi +differenti in una rete. Con l’organizzazione predefinita delle directory, nessun percorso assoluto viene +configurato: le posizioni dei file necessari ai programmi di TEX Live sono relative ai programmi stessi. Potete +vedere questo nel file di configurazione principale $TEXMFMAIN/web2c/texmf.cnf, che contiene linee +come: +

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

Questo significa che aggiungere la directory degli eseguibili di TEX Live appropriati alla propria piattaforma al +percorso di ricerca è sufficiente per ottenere una configurazione funzionante. +

Per la stessa ragione, potete anche installare TEX Live localmente e successivamente muovere l’intera +struttura verso una locazione di rete. +

Per Windows, uno script di installazione di rete esemplificativo chiamato w32client può essere +scaricato da http://tug.org/texlive/w32client.html. Questo script crea le impostazioni e i +collegamenti nei menu per usare una installazione di TEX Live esistente su una LAN. Registra anche un +disinstallatore w32unclient, disponibile nello stesso file zip. Visitate la pagina web indicata per maggiori +informazioni. +

+ + +

5 Installazioni portatili (USB)

+

L’opzione -portable dell’installazione (o il comando V nell’installatore testuale o la corrispondente opzione +della GUI) crea un’installazione di TEX Live contenuta completamente in sé stessa all’interno di una radice +comune e rinuncia all’integrazione con il sistema. Potete creare una tale installazione direttamente su una +penna USB o copiarla su una penna USB successivamente. +

Per eseguire TEX usando l’installazione portatile, avete bisogno di aggiungere la directory degli eseguibili +appropriata al percorso di ricerca durante la sessione di terminale, come al solito. Sotto Windows, potete fare +doppio click su tl-tray-menu alla radice dell’installazione per scegliere tra alcuni compiti comuni, come +mostrati in questa schermata: + +

pict +

+

5.1 Installazioni degli ISO (o del DVD)

+

Se non avete bisogno di aggiornare o in qualunque altro modo modificare spesso la vostra installazione e/o +avete diversi sistemi sui quali usare TEX Live, potrebbe essere conveniente creare un’ISO della vostra +installazione di TEX Live perché: +

    +
  • Copiare una ISO tra diversi computer è molto più rapido che copiare un’installazione normale. +
  • +
  • Se avete due sistemi operativi sulla stessa macchina e volete che condividano un’installazione + di TEX Live, un’installazione ISO non è vincolata alle idiosincrasie e alle limitazioni di altri + filesystem reciprocamente supportati (FAT32, NTFS, HFS+). +
  • +
  • Le macchine virtuali possono semplicemente montare tale ISO.
+

Ovviamente potete anche masterizzare un’ISO su un DVD, se lo ritenete utile per voi. +

I sistemi desktop GNU/Linux/Unix, incluso Mac OS X, sono capaci di montare una ISO. Al di là di questo, +non cambia nulla confrontato con una normale installazione su hard disk, consulate la sezione +3.4.1. +

Quando preparate tale installazione su ISO, è meglio omettere la sottodirectory per l’anno dell’edizione e +avere texmf-local allo stesso livello degli altri alberi (texmf, texmf-dist, ecc.). Potete fare ciò con le normali +opzioni per le directory nell’installatore. +

Per un sistema Windows fisico (piuttosto che virtuale), potete masterizzare la ISO su un DVD. Comunque, +potrebbe valere la pena investigare le varie opzioni gratuite per il montaggio delle ISO. Per Windows XP, +Microsoft offre winxpvirtualcdcontrolpanel. +

Per l’integrazione con il sistema Windows, potete includere gli script w32client descritti nella sezione 4.1 e +su http://tug.org/texlive/w32client.html, che funzionano per un’installazione ISO così come per una +condivisa. +

Su Mac OS X, TeXShop e TEXworks saranno capaci di usare l’installazione su DVD se un collegamento +simbolico /usr/texbin punta alla directory degli eseguibili appropriata, per esempio, + + +

+
  sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin
+
+

+

Nota storica: TEX Live 2010 è stata la prima edizione di TEX Live che non è stata più distribuita “live”. +Comunque, richiedeva sempre alcune acrobazie per funzionare da DVD o da ISO; in particolare, non c’era +alcun modo di evitare di impostare almeno un’ulteriore variabile d’ambiente. Se create la vostra ISO da +un’installazione esistente, allora non c’è bisogno di questo. +

+

6 tlmgr: gestire la vostra installazione

+


+ + + + + + +

pict +

Figura 8: tlmgr in modalità GUI: la finestra principale dopo aver premuto il pulsante “Carica”.
+ + +


+


+ + + + + + +

pict +

Figura 9: tlmgr in modalità GUI: opzioni generali
+

pict +

Figura 10: tlmgr in modalità GUI: +opzioni della dimensione del foglio
+ + +


+

TEX Live include un programma chiamato tlmgr per gestire TEX Live dopo l’installazione iniziale. I +programmi updmap, fmtutil e texconfig sono ancora inclusi e saranno mantenuti nel futuro, ma tlmgr è ora +l’interfaccia preferita. Le sue funzionalità includono: +

    +
  • installare, aggiornare, archiviare, ripristinare e disinstallare i singoli pacchetti, eventualmente + tenendo conto delle dipendenze; +
  • +
  • cercare ed elencare pacchetti, ecc.; +
  • +
  • elencare, aggiungere e rimuovere le piattaforme disponibili; +
  • +
  • cambiare le opzioni di installazione come la dimensione del foglio e il percorso di installazione + (consultate la sezione 3.3.1).
+

6.1 Modalità GUI di tlmgr

+

tlmgr può essere avviato in modalità GUI (figura 8 con

+

+> tlmgr -gui +
+
oppure sotto Windows tramite il menu Start: Start, Programmi, TeX Live 2012, TeX Live +Manager. Dopo aver premuto il pulsante “Carica” il programma mostra un elenco dei pacchetti +disponibili ed installati. Ovviamente assumiamo che il percorso di installazione attuale sia valido e +raggiungibile. +

Le figure 910 mostrano le schermate con le opzioni generali e il formato di pagina. +

+

6.2 Esempi di invocazioni di tlmgr dalla riga di comando

+

Dopo l’installazione iniziale, potete aggiornare il vostro sistema alle ultime versioni disponibili con: +

+

+> tlmgr update -all +
+
Se questo vi rende nervosi, provate prima
+

+> tlmgr update -all -dry-run +
+
o (meno prolisso):
+

+> tlmgr update -list +
+
+

Questo esempio più complesso aggiunge una collezione, per il motore XeTEX, da una directory +locale: +

+ + +

+> tlmgr -repository /local/mirror/tlnet install collection-xetex +
+
Genera il seguente risultato (ridotto): +
  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/2012/texmf/ls-R...
  ...
  running fmtutil-sys --missing
  ... +
  Transcript written on xelatex.log.
  fmtutil: /usr/local/texlive/2011/texmf-var/web2c/xetex/xelatex.fmt installed.
+

Come potete vedere, tlmgr installa le dipendenze e si occupa di ogni azione necessaria dopo l’installazione, +incluso l’aggiornamento del database dei nomi dei file e la generazione (o rigenerazione) dei formati. +Nell’esempio precedente, abbiamo generato nuovi formati per XeTEX. +

Per ottenere la descrizione di un pacchetto (o di una collezione o di uno schema):

+

+> tlmgr show collection-latexextra +
+
che produce +
  package:    collection-latexextra
  category:   Collection
  shortdesc:  LaTeX supplementary packages +
  longdesc:   A large collection of add-on packages for LaTeX.
  installed:  Yes
  revision:   14675
+

Infine, cosa più importante, per ottenere la documentazione completa, visitate http://tug.org/texlive/tlmgr.html +oppure eseguite:

+

+> tlmgr -help +
+
+

+

7 Note relative a Windows

+

+

7.1 Funzionalità specifiche per Windows

+

Sotto Windows, l’installatore fa alcune cose in più: +

+Menu e collegamenti.
Viene creato nel menu Start un nuovo sotto menu “TEX Live” che contiene le + voci per alcuni programmi grafici (tlmgr, texdoctk, il visualizzatore PostScript PS_View —  psv) + e per un po’ di documentazione. PS_View riceve anche un collegamento sul desktop per avere + un’icona sulla quale trascinare i file PostScript per l’apertura diretta. +
+Associazioni dei file.
Se abilitati, TeXworks, Dviout e PS_view diventano ciascuno il programma + predefinito per i loro rispettivi tipi di file, oppure ottengono una voce nei menu contestuali “Apri + con” per quei tipi di file. +
+Convertitore da bitmap ad eps.
I vari formati bitmap ricevono una voce bitmap2eps nei loro menu + contestuali “Apri con”. Bitmap2eps è un semplice script che permette a sam2p o bmeps di compiere + il vero lavoro. +
+Impostazione automatica delle variabili di ambiente.
Non sono richiesti passi manuali. + + +
+Disinstallatore.
Il programma di installazione crea una voce per TEX Live in “Installazione + Applicazioni”. La pagina di disinstallazione della GUI TEX Live Manager fa riferimento a questo.
+

+

7.2 Software aggiuntivo incluso sotto Windows

+

Per essere completa, un’installazione di TEX Live ha bisogno di alcuni pacchetti di supporto che non si +trovano abitualmente su una macchina Windows. TEX Live fornisce questi pezzi mancanti: +

+Perl e Ghostscript.
A causa dell’importanza di Perl e Ghostscript, TEX Live include una copia + “nascosta” di questi programmi. I programmi di TEX Live che ne hanno bisogno sanno dove + trovarli, ma non ne tradiscono la presenza tramite variabili d’ambiente o impostazioni sul registro + di sistema. Non si tratta di installazioni complete e non dovrebbero interferire con installazioni + nel sistema di Perl o Ghostscript. +
+PS_View.
Viene installato anche PS_View, un visualizzatore di file PostScript e PDF; osservate la + figura 11. +


pict +
Figura 11: PS_View: ingrandimenti elevatissimi disponibili!
+


+
+dviout.
Viene installato anche dviout, un visualizzatore di DVI. All’inizio, quando visualizzate i file con + dviout, questo creerà i font in quanto quelli per la visione su schermo non sono isntallati. Dopo un po’, + avrete creato la maggior parte dei font che usate e raramente vedrete la finestra di creazione dei + font. Maggiori informazioni possono essere trovate nell’aiuto del programma (altamente + raccomandato). +
+TEXworks.
TEXworks è un editor orientato a TEX con un visualizzatore per PDF incorporato. +
+Strumenti a riga di comando.
Assieme ai soliti programmi di TEX Live vengono installate alcune versioni + per Windows di tipici programmi Unix a riga di comando. Questi programmi includono gzip, unzip e gli + strumenti della suite xpdf (pdfinfo, pdffonts, …). Il visualizzatore xpdf non è disponibile per Windows. + Come alternativa, tra le altre, potete scaricare Sumatra PDF, che è basato su xpdf, da + http://blog.kowalczyk.info/software/sumatrapdf. +
+fc-list, fc-cache,
Gli strumenti dalla libreria fontconfig consentono a XeTEX di gestire i font di sistema + sotto Windows. Potete usare fc-list per trovare i nomi dei font da passare al comando esteso di + XeTEX \font. Se è necessario, eseguite prima fc-cache per aggiornare le informazioni sui + font. +
+

+

7.3 Il profilo utente è “home”

+

La controparte Windows di una directory di home di Unix è la directory %USERPROFILE%. Sotto Windows XP, +di solito è C:\Documents and Settings\<nomeutente> e sotto Windows Vista e Windows 7 è +C:\Users\<nomeutente>. Nel file texmf.cnf e in generale in Kpathsea, ~ verrà interpretato in modo +appropriato sia sotto Windows che sotto Unix. + + +

+

7.4 Il registro di configurazione di Windows

+

Windows memorizza quasi tutti i dati di configurazione nel suo registro. Il registro contiene un insieme di +chiavi organizzate gerarchicamente, con varie gerarchie. Le più importanti per i programmi di installazione +sono HKEY_CURRENT_USER e HKEY_LOCAL_MACHINE, abbreviate in HKCU e HKLM. La porzione HKCU del registro si +trova nella directory di home dell’utente (vedi sezione 7.3). HKLM si trova di solito in una sotto directory della +cartella Windows. +

In alcuni casi, le informazioni di sistema possono essere ottenute dalle variabili d’ambiente, ma per altre +informazioni, come la posizione dei collegamenti, è necessario consultare il registro. Impostare +permanentemente le variabili d’ambiente richiede ugualmente l’accesso al registro. +

+

7.5 Permessi di Windows

+

Nelle ultime versioni di Windows si fa distinzione tra utenti normali ed amministratori e solo questi ultimi +hanno libero accesso all’intero sistema operativo. In pratica, però, si potrebbero meglio descrivere queste +classi come “utenti senza privilegi” e “utenti normali”: essere un amministratore è la regola, non +l’eccezione. Ciononostante, ci siamo sforzati di rendere TEX Live installabile senza i privilegi +amministrativi. +

Se l’utente è un amministratore, c’è un’opzione per rendere l’installazione disponibile a tutti gli utenti. Se +questa opzione è selezionata, i collegamenti sono creati per tutti gli utenti e l’ambiente di sistema è modificato. +In alternativa, i collegamenti e le voci nel menu sono creati solo per l’utente corrente e viene modificato +l’ambiente dell’utente. +

Indipendentemente dallo stato di amministratore, la cartella predefinita di TEX Live proposta dal +programma di installazione si trova sempre sotto %SystemDrive%. L’installatore verifica sempre se l’utente +corrente ha i permessi di scrittura in tale cartella. +

Possono sorgere dei problemi se l’utente non è un amministratore e TEX già esiste nel percorso di ricerca. +Dato che nel percorso di ricerca vengono prima le impostazioni di sistema e poi quelle dell’utente, la nuova +TEX Live non avrebbe mai la precedenza. Come precauzione, il programma di installazione crea un +collegamento ad un prompt dei comandi in cui la nuova directory degli eseguibili di TEX Live è anteposta al +percorso di ricerca locale. La nuova TEX Live sarà sempre accessibile usando questo prompt. Anche il +collegamento a TEXworks, se è installato, antepone TEX Live al percorso di ricerca, quindi dovrebbe essere +immune a questo problema. +

Sotto Vista e Windows 7 c’è un ulteriore colpo di scena: anche se avete eseguito l’accesso come +amministratori, dovete chiedere esplicitamente i privilegi di amministrazione. In pratica, non serve a molto +entrare come amministratore. Invece, facendo clic con il tasto destro sul programma o sul collegamento che +volete eseguire, solitamente appare la voce “Esegui come amministratore”. +

+

7.6 Incrementare la memoria massima sotto Windows e Cygwin

+

Gli utenti di Windows e Cygwin (consulta la sezione 3.1.4 per i dettagli sull’installazione con Cygwin) possono +ritrovarsi con la memoria esaurita durante l’esecuzione di alcuni dei programmi forniti con TEX Live. Ad +esempio, asy potrebbe esaurire la memoria se tentate di allocare un array di 20.000.000 di reali e +LuaTEX potrebbe esaurirla se tentate di elaborare un documento con un gran numero di font +grandi. +

Per Cygwin, potete incrementare la quantità di memoria disponibile seguendo le istruzioni nella Guida +dell’Utente di Cygwin (http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html). +

Per Windows, dovete creare un file, ad esempio moremem.reg, con le seguenti quattro righe: +

+

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

ed eseguire il comando regedit /s moremem.reg come amministratore (se volete cambiare la memoria +unicamente per l’utente corrente invece che per l’intero sistema, usate HKEY_CURRENT_USER). + + +

+

8 Una guida a Web2C

+

Web2C è una collezione integrata di programmi legati a TEX: TEX stesso, Metafont, MetaPost, +BibTeX, ecc. È il cuore di TEX Live. Il sito web di Web2C, con il manuale corrente e molto altro, è +http://tug.org/web2c. +

Ecco un po’ di storia: l’implementazione originale fu realizzata da Tomas Rokicki il quale, nel 1987, +sviluppò un primo sistema TEX-to-C cambiando dei file sotto Unix, che erano principalmente un lavoro +originale di Howard Trickey e Pavel Curtis. Tim Morgan divenne il manutentore del sistema e durante +questo periodo il nome cambiò in Web-to-C. Nel 1990, Karl Berry prese in mano il lavoro, con il +contributo di molte persone, e nel 1997 passò il testimone a Olaf Weber, il quale lo restituì a Karl nel +2006. +

Il sistema Web2C gira sotto Unix, sotto i sistemi Windows a 32 bit, sotto MacOSX e sotto altri sistemi +operativi. Usa i sorgenti originali di Knuth per TEX e per altri programmi scritti nel sistema di +programmazione letterata WEB e li traduce in codice C. I programmi basilari di TEX gestiti in questo modo +sono: +

+

+ bibtex
+

Per mantenere le bibliografie. +

+ dvicopy
+

Espande i riferimenti ai font virtuali nei file DVI. +

+ dvitomp
+

Converte da DVI a MPX (MetaPost picture). +

+ dvitype
+

Converte i DVI in testo leggibile +

+ gftodvi
+

Provini dei font generici. +

+ gftopk
+

Converte da font generici ad impacchettati. +

+ gftype
+

Converte i font generici in testo leggibile. +

+ mf
+

Crea famiglie di caratteri tipografici. +

+ mft
+

Formatta i sorgenti Metafont. +

+ mpost
+

Crea diagrammi tecnici. +

+ patgen
+

Crea modelli di sillabazione. +

+ pktogf
+

Converte da font impacchettati a generici. + + +

+ pktype
+

Converte i font impacchettati in testo leggibile. +

+ pltotf
+

Converte le liste di proprietà da testo leggibile in TFM. +

+ pooltype
+

Mostra i file delle riserve di WEB. +

+ tangle
+

Converte da WEB al Pascal. +

+ tex
+

Compone tipograficamente i documenti. +

+ tftopl
+

Converte le liste di proprietà da TFM in testo leggibile +

+ vftovp
+

Converte da font virtuali a liste di proprietà virtuali. +

+ vptovf
+

Converte da liste di proprietà virtuali a font virtuali. +

+ weave
+

Converte da WEB a TEX.

+

Le esatte funzioni e la sintassi di questi programmi sono descritte nella documentazione dei singoli pacchetti e +di Web2C stesso. Tuttavia, conoscere alcuni principi che governano l’intera famiglia di programmi vi aiuterà a +trarre vantaggio dalla vostra installazione Web2C. +

Tutti i programmi rispettano queste opzioni GNU standard: +

+ --help
+

stampa un semplice sommario d’uso. +

+ --verbose
+

stampa un rapporto dettagliato sull’avanzamento. +

+ --version
+

stampa le informazioni sulla versione, quindi esce.

+

Per individuare i file, i programmi Web2C usano la libreria di ricerca dei percorsi Kpathsea +(http://tug.org/kpathsea). Questa libreria usa una combinazione di variabili d’ambiente e file di +configurazione per ottimizzare la ricerca nella (enorme) raccolta di file di TEX. Web2C può controllare +simultaneamente molte directory, cosa utile per mantenere la distribuzione standard TEX, le estensioni locali e +quelle personali in directory distinte. Per velocizzare le ricerche dei file, alla radice di ogni albero di directory +c’è un file ls-R contenente una voce con il nome ed il percorso relativo per ciascun file all’interno di +quell’albero. + + +

+

8.1 Ricerca dei percorsi con Kpathsea

+

Per prima cosa descriviamo il generico meccanismo di ricerca dei percorsi della libreria Kpathsea. +

Chiameremo percorso di ricerca una lista separata da un due punti o da un punto e virgola di elementi di +percorso, che sono fondamentalmente nomi di directory. Un percorso di ricerca può provenire da (una +combinazione di) molte fonti. Per cercare un file ‘my-file’ attraverso un percorso ‘.:/dir’, Kpathsea controlla +a turno ogni elemento del percorso: prima ./my-file, poi /dir/my-file, restituendo la prima corrispondenza +(o, eventualmente, tutte). +

Al fine di adattarsi al meglio alle convenzioni di tutti i sistemi operativi, sui sistemi non Unix Kpathsea può +usare separatori di nomi di file diversi dai due punti (‘:’) e barra (slash, ‘/’). +

Per controllare un particolare elemento p di un percorso, Kpathsea per prima cosa verifica se può applicare +a p un database precostruito (consulta “Database di file” a pagina 63), cioè se il database è in una +directory che è prefisso di p. Se è così, la specifica del percorso è confrontata con il contenuto del +database. +

Se il database non esiste o non si applica a questo elemento del percorso, oppure se non contiene +corrispondenze, viene eseguita una ricerca sul disco (se non è stata proibita da una specifica che comincia con +‘!!’ e se il file viene cercato per scoprire se esiste). Kpathsea costruisce la lista di directory che +corrispondono a questo elemento del percorso e verifica all’interno di ciascuna di esse se può individuare il +file. +

La condizione “il file deve esistere” entra in gioco con i file ‘.vf’ e i file letti tramite il comando \openin di +TEX. Questi file potrebbero non esistere (ad esempio cmr10.vf) e dunque sarebbe sbagliato cercarli sul disco. +Quindi, se non siete riusciti ad aggiornare correttamente il file ls-R quando avete installato un nuovo ‘.vf’, +quest’ultimo non sarà mai trovato. A turno, viene controllato ogni elemento del percorso: prima il +database, poi il disco. Se viene trovata una corrispondenza, la ricerca si interrompe e il risultato è +restituito. +

Per quanto il più semplice e comune elemento di un percorso sia il nome di una directory, Kpathsea +supporta caratteristiche aggiuntive nei percorsi di ricerca: valori predefiniti stratificati, nomi di variabili +d’ambiente, valori di file di configurazione, directory personali degli utenti e ricerca ricorsiva di sotto directory. +Dunque, diciamo che Kpathsea espande un elemento di percorso, intendendo che trasforma tutte le specifiche +in semplici nomi di directory. Questa trasformazione è descritta nelle seguenti sezioni nello stesso ordine in cui +avviene. +

Notate che se il nome del file cercato è assoluto o esplicitamente relativo, ossia se comincia con ‘/’, ‘./’ o +‘../’, Kpathsea controlla semplicemente se quel file esiste. +

+

8.1.1 Fonti dei percorsi
+

Un percorso di ricerca può provenire da molte fonti. Nell’ordine in cui Kpathsea le usa: +

+

    +
  1. Una variabile d’ambiente impostata dall’utente, per esempio TEXINPUTS. Le variabili d’ambiente + a cui è stato aggiunto un punto ed il nome di un programma hanno la precedenza; per esempio, + se ‘latex’ è il nome del programma in esecuzione, allora TEXINPUTS.latex avrà la precedenza su + TEXINPUTS. +
  2. +
  3. Il file di configurazione specifico per un programma, per esempio una riga ‘S /a:/b’ nel file di + configurazione config.ps di dvips. +
  4. +
  5. Un file di configurazione texmf.cnf di Kpathsea, contenente una riga del tipo ‘TEXINPUTS=/c:/d’ + (vedi più avanti). +
  6. +
  7. Il valore predefinito alla compilazione del programma.
+

Potete vedere ciascuno di questi valori per un dato percorso di ricerca usando le opzioni di debug (consultate +“Risoluzione dei problemi” a pagina 67). + + +

+

8.1.2 File di configurazione
+

Kpathsea legge i percorsi di ricerca ed altre definizioni nei file di configurazione a tempo di esecuzione chiamati +texmf.cnf. Il percorso di ricerca usato per cercare questi file è chiamato TEXMFCNF, ma non raccomandiamo di +impostare questa (o qualunque altra) variabile d’ambiente. +

Invece, l’installazione normale dà luogo ad un file .../2012/texmf.cnf. Se dovete apportare delle +modifiche ai valori predefiniti (di norma non è necessario), questo è il posto in cui piazzarle. Il +file di configurazione principale è .../2012/texmf/web2c/texmf.cnf. Non dovreste modificare +quest’ultimo file, dato che le vostre modifiche andrebbero perdute quando la versione distribuita viene +aggiornata. +

Tutti i file texmf.cnf nel percorso di ricerca saranno letti e le definizioni in quelli che appaiono per primi +sostituiranno quelle nei file che appaiono per ultimi. Ad esempio, con un percorso di ricerca di .:$TEXMF, i +valori provenienti da ./texmf.cnf sostituiranno quelli provenienti da $TEXMF/texmf.cnf. +

    +
  • I commenti iniziano con % e continuano fino alla fine della riga. +
  • +
  • Le righe vuote sono ignorate. +
  • +
  • Un \ alla fine di una riga funziona come un carattere di continuazione, cioè la linea successiva + viene apposta. Gli spazi bianchi all’inizio delle righe di continuazione non sono ignorati. +
  • +
  • Ogni riga rimanente ha la forma:
    +

    +   variabile[.nomeprogramma] [=] valore +
    +
    dove il carattere ‘=’ e gli spazi che lo circondano sono opzionali. +
  • +
  • Il nome variabile può contenere un qualunque carattere diverso dallo spazio, da ‘=’ e da ‘.’, ma usare solo + i caratteri ‘A-Za-z_’ è più sicuro. +
  • +
  • Se la parte ‘.nomeprogramma’ è presente, la definizione si applica solo se il programma che è in + esecuzione ha il nome nomeprogramma oppure nomeprogramma.exe. Questo consente, ad esempio, alle + diverse varianti di TEX di avere diversi percorsi di ricerca. +
  • +
  • valore può contentere qualunque carattere tranne che % e ‘@’. La caratteristica $variabile.programma non + è disponibile come valore valido; in alternativa, dovete usare una variabile aggiuntiva. Un ‘;’ in valore è + tradotto automaticamente in ‘:’ se state usando Unix; questa caratteristica è utile per avere un singlo + texmf.cnf per Unix, MS-DOS e Windows. +
  • +
  • Tutte le definizioni vengono lette prima che qualunque cosa sia espanza, quindi si può fare riferimento + alle variabili prima che siano definite.
+

Un frammento di file di configurazione che mostra la maggior parte di questi punti è mostrato sotto: +

+

+  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 Espansione dei percorsi
+

Kpathsea riconosce nei percorsi di ricerca alcuni caratteri e costrutti speciali, simili a quelli disponibili nelle +shell di Unix. Come esempio generale, il complesso percorso ~$USER/{foo,bar}//baz viene espanso in tutte le +directory sotto foo e bar nella home dell’utente $USER, che contengono a loro volta una directory o un file di +nome baz. Queste espansioni sono spiegate nelle prossime sezioni- +

8.1.4 Espansione predefinita
+

Se il percorso di ricerca a più alta priorità (consultate “Fonti dei percorsi” a pagina 58) contiene un due punti +di troppo (cioè all’inizio, alla fine oppure una coppia di due punti), Kpathsea inserisce in quel punto il percorso +di ricerca con la seconda più alta priorità che sia stato definito. Se questo percorso inserito ha a sua vuolta un +due punti aggiuntivo, accade lo stesso con il successivo in ordine di priorità. Per esempio, data l’impostazione +di una variabile d’ambiente +

+

+> setenv TEXINPUTS /home/karl: +
+
e un valore di TEXINPUTS proveniente da texmf.cnf di +
+

+  .:$TEXMF//tex +
+
allora il valore finale usato nella ricerca sarà: +
+

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

Dato che sarebbe inutile inserire lo stesso valore predefinito in più di un posto, Kpathsea cambia solo uno +dei ‘:’ di troppo e lascia gli altri al loro posto. Per prima cosa cerca un ‘:’ all’inizio, quindi cerca un ‘:’ alla +fine, per ultimo cerca un ‘:’ doppio. +

+

8.1.5 Espansione delle parentesi graffe
+

Una caratteristica utile è l’espansione delle parentesi graffe, che significa che, per esempio, v{a,b}w viene +espanso in vaw:vbw. L’annidamento delle parentesi è permesso. Tale caratteristica è usata per implementare +gerarchie TEX multiple, assegnando una lista di nomi tra graffe a $TEXMF. Ad esempio, in texmf.cnf, è fatta +la seguente definizione (semplificata per questo esempio): + + +

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

Usando questa variabile, potete scrivere qualcosa come + + +

+
    TEXINPUTS = .;$TEXMF/tex//
+
+

che vuol dire che, dopo aver guardato nella directory attuale, la ricerca proseguirà (soltanto) nei rami +$TEXMFHOME/tex, $TEXMFLOCAL/tex, $TEXMFVAR/tex e $TEXMFMAIN/tex (gli ultimi due usando i database +ls-R). È una maniera conveniente per avere due strutture TEX parallele, una “congelata” (ad esempio +su un CD) e l’altra aggiornata di continuo con nuove versioni non appena diventino disponibili. +Usando la variabile $TEXMF in tutte le definizioni, si è sicuri di cercare innanzitutto nel ramo +aggiornato. +

+

8.1.6 Espansione delle sotto directory
+

In un elemento di percorso, due o più barre (slash) consecutive alla fine di una directory d sono sostituite +da tutte le sotto directory di d: prima quelle che si trovano direttamente sotto d, quindi quelle +all’interno delle prime e così via. Ad ogni livello, l’ordine in cui le directory sono cercate non è +specificato. +

Se specificate il nome di un file dopo il ‘//’, saranno incluse solo le sotto directory che lo contengono. Ad +esempio, ‘/a//b’ si espande nelle directory /a/1/b, /a/2/b, /a/1/1/b e così via, ma non in /a/b/c o +/a/1. +

È possibile usare più volte il costrutto ‘//’ in un percorso, ma ogni ‘//’ all’inizio di un percorso viene +ignorato. +

+

8.1.7 Elenco dei caratteri speciali e loro significato: un riepilogo
+

Il seguente elenco riassume i caratteri speciali nei file di configurazione di Kpathsea. +

+

+ :
+

Separatore nella specifica di un percorso; all’inizio o alla fine di un percorso sostituisce l’espansione + di percorso predefinita. +

+ ;
+

Separatore nei sistemi non Unix (si comporta come :). +

+ $
+

Espansione di una variabile. +

+ ~
+

Rappresenta la directory di home di un utente. +

+ {...}
+

Espansione di parentesi graffe. +

+ //
+

Espansione di sotto directory (può trovarsi ovunque in un percorso tranne che al suo inizio). +

+ %
+

Inizio di un commento. +

+ \
+

Carattere di continuazione (consente alle voci di continuare su più linee). + + +

+ !!
+

Cerca solo nei database per individuare un file, non cerca sul disco.

+

+

8.2 Database di nomi di file

+

Kpathsea si sforza di minimizzare gli accessi al disco per le ricerche. Infatti, in installazioni con parecchie +directory, cercare un dato file in ognuna di esse può richiedere una quantità di tempo eccessiva (vero +soprattutto se devono essere attraversate molte centinaia di directory di font). Quindi, Kpathsea può usare un +file di “database” testuale costruito esternamente, chiamato ls-R, che associa file a directory, evitando in +questo modo di cercare esaustivamente sul disco. +

Un secondo file di database, aliases, permette di dare nomi aggiuntivi ai file elencati in ls-R. +Questa caratteristica può essere utile per conformare i file sorgenti alla convenzione dei nomi DOS +8.3. +

+

8.2.1 Il database di nomi
+

Come spiegato in precedenza, il nome del database principale di nomi di file deve essere ls-R. Potete metterne +uno alla radice di ogni ramo TEX della vostra installazione nel quale volete che si effettuino le ricerche ($TEXMF +di base). Kpathsea cerca i file ls-R nel percorso TEXMFDBS. +

Il metodo raccomandato per creare e mantenere ‘ls-R’ è quello di eseguire lo script mktexlsr incluso nella +distribuzione. Esso è invocato dai vari script ‘mktex’…. In teoria, questo script esegue semplicemente il +comando

+

+cd /la/vostra/radice/texmf && \ls -1LAR ./ >ls-R +
+
assumendo che il comando ls del vostro sistema produca il giusto formato di output (ls del progetto GNU lo +fa). Per garantire che l’archivio sia sempre aggiornato, la cosa più semplice è rigenerarlo regolarmente tramite +cron, così che sia automaticamente ricostruito quando i file installati cambiano, ad esempio dopo aver +installato o aggiornato un pacchetto LATEX. +

Se un file non è trovato nel database, per default Kpathsea va avanti e cerca sul disco. Se un particolare +elemento di percorso comincia con ‘!!’, però, la ricerca per quell’elemento sarà effettuata solo nel database, +mai sul disco. +

+

8.2.2 kpsewhich: ricerca indipendente di percorsi
+

Il programma kpsewhich compie la ricerca di percorsi indipendentemente da qualunque particolare +applicazione. Può essere utile come una sorta di programma find per individuare i file nelle gerarchie TEX (è +ampiamente usato negli script ‘mktex’… distribuiti). +

+

+> kpsewhich opzioni nomefile +
+
Le opzioni specificate in opzioni cominciano con ‘-’ oppure con ‘--’ ed è accettata qualunque abbreviazione +non ambigua. +

Kpathsea cerca ogni argomento sulla riga di comando che non sia un’opzione come se fosse il nome di un +file e restituisce il primo trovato. Non ci sono opzioni per restituire tutti i file con un particolare nome (per fare +questo, potete eseguire il programma Unix ‘find’). +

Le opzioni più comuni sono descritte in seguito. +

+ + +

+ --dpi=num
+

Imposta la risoluzione a num; questa opzione ha effetto solo nelle ricerche dei file ‘gf’ e ‘pk’. ‘-D’ + è un sinonimo, per compatibilità con dvips. Il valore preimpostato è 600. +

+ --format=nome
+


Imposta il formato da cercare a nome. Di base, il formato è ipotizzato a partire dal nome del + file. Per i formati che non hanno associato un suffisso non ambiguo, come i file di supporto di + MetaPost e i file di configurazione di dvips, dovete specificare il nome così come è conosciuto da + Kpathsea, come tex o enc files. Eseguite kpsewhich --help per un elenco. +

+ --mode=stringa
+


Imposta il nome della modalità a stringa; questa opzione ha effetto solo sulle ricerche dei file ‘gf’ + e ‘pk’. Non esiste un valore preimpostato: sarà trovata qualunque tipo di modalità. +

+ --must-exist
+


Fa tutto ciò che è possibile per trovare il file, inclusa nello specifico la ricerca sul disco. Di base, + per questioni di efficienza, è controllato solo l’archivio ls-R. +

+ --path=stringa
+


Cerca nel percorso di ricerca stringa (separata da due punti, come al solito), invece di ricavarlo dal + nome del file. ‘//’ e tutte le solite espansioni sono supportate. Le opzioni ‘--path’ e ‘--format’ + si escludono a vicenda. +

+ --progname=nome
+


Imposta il nome del programma a nome. Questa opzione può modificare i percorsi di ricerca per + mezzo della funzionalità .nomeprogramma. Il valore predefinito è kpsewhich. +

+ --show-path=nome
+


Mostra il percorso usato per la ricerca dei file il cui tipo sia nome. Può essere usata sia un’estensione + (.pk, .vf, ecc.) che un nome, proprio come per l’opzione ‘--format’. +

+ --debug=num
+


Imposta le opzioni per la ricerca degli errori a num.

+

+

8.2.3 Esempi d’uso
+

Diamo uno sguardo a Kpathsea in azione. Ecco una ricerca semplice: +

+

+> kpsewhich article.cls +
   /usr/local/texmf-dist/tex/latex/base/article.cls + + +
+
Stiamo cercando il file article.cls. Dato che il suffisso ‘.cls’ non è ambiguo, non abbiamo +bisogno di specificare che vogliamo cercare un file di tipo tex (file sorgente TEX). Lo troviamo +nella sotto directory tex/latex/base sotto la directory di TEX Live ‘texmf-dist’. In modo +simile, tutti i file seguenti sono trovati senza problemi grazia alla non ambiguità dei loro suffissi. +
+

+> 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 +
+
+

Ad ogni modo, quest’ultimo è un registro bibliografico in formato BibTeX per gli articoli di +TUGboat. +

+

+> kpsewhich cmr10.pk +
+
I file di glifi dei font bitmat di tipo .pk sono usati dai programmi di visualizzazione come dvips e xdvi. +Non viene restituito nulla in questo caso dato che in TEX Live non ci sono file ‘.pk’ pregenerati +per il carattere tipografico Computer Modern — come predefinite sono usate le varianti Type 1. +
+

+> kpsewhich wsuipa10.pk +
   /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +
+
Per questi font (un alfabeto fonetico creato dall’Università di Washington) dobbiamo generare i file +‘.pk’ e dato che la modalità predefinita di Metafont nella nostra installazione è ljfour con una +risoluzione di base di 600dpi (dots per inch, punti per pollice), viene restituito questo valore. +
+

+> kpsewhich -dpi=300 wsuipa10.pk +
+
In questo caso, quando specifichiamo di essere interessati ad una risoluzione di 300dpi (-dpi=300) osserviamo +che questo font non è disponibile nel sistema. Un programma come dvips o xdvi andrebbe avanti e genererebbe i +file .pk richiesti usando lo script mktexpk. +

Adesso spostiamo la nostra attenzione sui file di intestazione e di configurazione di dvips. Cercheremo +innanzitutto un file tra quelli usati comunemente, il prologo generale tex.pro per il supporto a TEX, prima di +spostare l’attenzione sul generico file di configurazione (config.ps) e la mappa dei font PostScript +psfonts.map —  a partire dal 2004, i file di mappatura e di codifica hanno i propri percorsi di +ricerca e una nuova posizione negli alberi texmf. Dato che il suffisso ‘.ps’ è ambiguo, dobbiamo +specificare esplicitamente quale tipo stiamo considerando (dvips config) per il file 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 +
+
+

Diamo ora uno sguardo ravvicinato ai file di supporto per il carattere PostScript URW Times. Il prefisso +per questi file nello schema dei nomi dei font è ‘utm’. Il primo file che cerchiamo è quello di configurazione, che +contiene il nome del file di mappatura:

+

+> kpsewhich --format="dvips config" config.utm +
   /usr/local/texmf-dist/dvips/psnfss/config.utm +
+
Il contenuto di questo file è
+

+  p +utm.map +
+
che punta al file utm.map, che sarà il prossimo che cercheremo.
+

+> kpsewhich utm.map +
   /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +
+
Questo file di mappatura definisce i nomi dei file dei font PostScript Type 1 nella collezione URW. Il suo +contenuto è simile al seguente (mostriamo solo una parte delle righe):
+

+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 +
+
Prendiamo, ad esempio, il file per il Times Roman utmr8a.pfb e cerchiamo la sua posizione nell’albero delle +directory texmf con una ricerca dei file di font Type 1:
+

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

Dovrebbe essere chiaro da questi esempi come potete individuare facilmente dove si trovi un dato file. Tutto +ciò è particolarmente importante se sospettate che in qualche modo venga prelevata la versione sbagliata di un +file, in quanto kpsewhich mostrerà il primo file incontrato. + + +

+

8.2.4 Risoluzione dei problemi
+

A volte è necessario investigare sul come un programma determina i riferimenti ad un file. Per rendere pratico +ciò, Kpathsea offre vari livelli di messaggi diagnostici: +

+

+  1
+

Chiamate a stat (accessi al disco). Quando si compie una ricerca avendo a disposizione un + database ls-R aggiornato, questo livello non dovrebbe mostrare quasi nessun messaggio. +

+  2
+

Riferimenti alle tabelle dei dati (come i database ls-R, i file di mappatura, quelli di configurazione). +

+  4
+

Operazioni di apertura e chiusura dei file. +

+  8
+

Informazioni generali sui percorsi per i tipi di file cercati da Kpathsea. Utile per scoprire dove è + stato definito un particolare percorso per un file. +

+ 16
+

Elenco delle directory per ogni elemento di un percorso (rilevante solo per le ricerche su disco). +

+ 32
+

Ricerche di file. +

+ 64
+

Valori delle variabili.

+

Un valore di -1 attiverà tutte le opzioni precedenti; nella pratica, questo valore è di solito il più +conveniente. +

Analogamente, con il programma dvips, impostando una combinazione di opzioni di diagnostica, è possibile +seguire in dettaglio le posizioni da cui i file sono prelevati. In alternativa, quando un file non viene trovato, la +traccia dei messaggi mostra in quali directory il programma ha cercato il file, così che si possa ottenere +un’indicazione sull’origine del problema. +

In termini generali, dato che la maggior parte dei programmi invoca la libreria Kpathsea internamente, è +possibile selezionare il livello di diagnostica usando la variabile d’ambiente KPATHSEA_DEBUG ed impostandola +ad una combinazione dei valori descritti nell’elenco di cui sopra. +

(Nota per gli utenti Windows: in questo sistema non è semplice redirigere tutti i messaggi verso un file. Per +scopi di diagnostica potete impostare temporaneamente SET KPATHSEA_DEBUG_OUTPUT=err.log). +

Consideriamo, come esempio, un piccolo file sorgente di LATEX, hello-world.tex, che contiene il +seguente testo. + + +

+
    \documentclass{article}
    \begin{document}
    Ciao Mondo!
    \end{document}
+
+

Questo piccolo file usa solo il font cmr10, quindi vediamo come dvips prepara il file PostScript (vogliamo usare +la versione Type 1 dei font Computer Modern, da qui l’opzione -Pcms).

+

+> dvips -d4100 hello-world -Pcms -o +
+
In questo caso abbiamo combinato la classe di diagnostica 4 di dvips (percorsi dei font) con l’espansione degli +elementi di percorso di Kpathsea (vedi il Manuale di Riferimento di dvips, texmf/doc/dvips/dvips.pdf). Il +risultato (leggermente riorganizzato) appare in figura 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
+
Figura 12: Ricerca dei file di configurazione
+
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
+
Figura 13: Ricerca del file di prologo
+
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]
+
Figura 14: Ricerca del file del font
+ + +

+

dvips inizia individuando i propri file di lavoro. Per primo viene trovato texmf.cnf, che fornisce le +definizioni dei percorsi di ricerca per gli altri file, quindi il file di database ls-R (per ottimizzare la ricerca) e il +file aliases, che rende possibile dichiarare diversi nomi (ad esempio, una versione breve in formato DOS 8.3 e +una più lunga e più naturale) per lo stesso file. Quindi dvips prosegue nel cercare il file di configurazione +generico config.ps prima di guardare al file personalizzato .dvipsrc (che in questo caso non viene trovato). +Infine, dvips individua il file di configurazione config.cms per il font PostScript Computer Modern (questo +passo è stato attivato con l’opzione -Pcms data al comando dvips). Questo file contiene la lista delle +mappature che definiscono la relazione tra il modo di chiamare i font in TEX, in PostScript e sul disco. +

+

+> more /usr/local/texmf/dvips/cms/config.cms +
   p +ams.map +
   p +cms.map +
   p +cmbkm.map +
   p +amsbkm.map +
+
dvips, quindi, procede nel trovare tutti questi file, più il generico file di mappatura psfonts.map, che è +caricato sempre (contiene le dichiarazioni per i font PostScript usati comunemente; consultate la parte finale +della sezione 8.2.3 per ulteriori dettagli sulla gestione delle mappature PostScript). +

A questo punto, dvips si presenta all’utente:

+

+This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +
+
Quindi prosegue nel cercare il file di prologo 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 +
+
+

Dopo aver trovato il file in questione, dvips mostra la data e l’ora, ci informa che genererà il file +hello-world.ps, poi che avrà bisogno del file del font cmr10 e che quest’ultimo è dichiarato “residente” (non +sono necessarie bitmap):

+

+
TeX output 1998.02.26:1204’ -> hello-world.ps +
Defining font () cmr10 at 10.0pt +
Font cmr10 <CMR10> is resident. +
+
Adesso la ricerca prosegue con il file cmr10.tfm, che viene trovato, quindi viene fatto riferimento ad alcuni +ulteriori file di prologo (non mostrati) e, infine, l’istanza Type 1 del font, cmr10.pfb, è individuata ed inclusa +del file in uscita (vedi l’ultima linea).
+

+
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 Opzioni di esecuzione

+

Un’altra funzionalità utile di Web2C è la sua possibilità di controllare un certo numero di parametri relativi +alla memoria (nello specifico la dimensione degli array) tramite il file texmf.cnf letto da Kpathsea durante +l’esecuzione. Le impostazioni della memoria possono essere trovate nella Parte 3 di quel file nella distribuzione +TEX Live. Le più importanti sono: +

+

+ main_memory
+

La quantità complessiva di memoria disponibile per TEX, Metafont e MetaPost. Dovete creare un + nuovo file di formato per ogni impostazione differente. Per esempio, potreste generare una versione + “enorme” di TEX e chiamare il file di formato hugetex.fmt. Usando il modo normale di specificare + il nome del programma usato da Kpathsea, l’opportuno valore della variabile main_memory sarà + letto da texmf.cnf. +

+ extra_mem_bot
+

Spazio aggiuntivo per le strutture dati “grandi” di TEX: scatole, colle, interruzioni, ecc. Utile + specialmente se usate PI CTEX. +

+ font_mem_size
+

Numero di registri per le informazioni sui font disponibili in TEX. Questo valore è più o meno + pari alla dimensione totale di tutti i file TFM che vengono letti. +

+ hash_extra
+

Spazio aggiuntivo per la tabella con i nomi delle sequenze di controllo. Nella tabella principale + possono essere memorizzate solo approssimativamente 10.000 sequenze di controllo; se lavorate + su un libro di grandi dimensioni con numerosi riferimenti incrociati, questo valore potrebbe non + essere sufficiente. Il valore predefinito per hash_extra è 50000.

+

Ovviamente questa funzionalità non è un sostituto per una vera allocazione dinamica di memoria e +array, ma dato che questi sono estremamente difficili da implementare negli attuali sorgenti di +TEX, questi parametri di esecuzione forniscono un compromesso pratico per offrire un minimo di +flessibilità. +

+

9 Ringraziamenti

+

TEX Live è il risultato dello sforzo congiunto di praticamente tutti i gruppi utenti TEX. Questa edizione di +TEX Live è stata supervisionata da Karl Berry. Gli altri contributori principali, passati e presenti, sono +elencati qui sotto. +

    +
  • I gruppi utenti TEX Inglese, Tedesco, Olandese e Polacco (TUG, DANTE e.V., NTG e GUST, + rispettivamente), che forniscono la necessaria infrastruttura tecnica ed amministrativa. Unitevi al + gruppo utenti TEX più vicino a voi (consultate la pagina http://tug.org/usergroups.html)! + + +
  • +
  • Il team di CTAN, in particolare Robin Fairbairns, Jim Hefferon e Rainer Schöpf, che distribuiscono + le immagini di TEX Live e forniscono l’infrastruttura comune per gli aggiornamenti dei pacchetti, + dalla quale dipende TEX Live. +
  • +
  • Nelson Beebe per aver reso disponibili molte piattaforme agli sviluppatori di TEX Live e per i + suoi esaustivi collaudi. +
  • +
  • John Bowman per aver fatto molti cambiamenti al suo programma di grafica avanzata Asymptote + affinché funzionasse in TEX Live. +
  • +
  • Peter Breitenlohner ed il team di e-TEX per le stabili fondamenta del TEX del futuro e Peter in + particolare per l’aiuto stellare con l’uso degli strumenti GNU autotool in TEX Live. +
  • +
  • Jin-Hwan Cho e tutti i membri del team di DVIPDFMx per il loro eccellente driver e la velocità + di risposta ai problemi di configurazione. +
  • +
  • Thomas Esser, senza il cui meraviglioso pacchetto teTEX TEX Live non sarebbe mai esistito. +
  • +
  • Michel Goossens, che è stato coautore della documentazione originale. +
  • +
  • Eitan Gurari, il cui TEX4ht è stato usato per creare la versione HTML di questa documentazione e + che ha lavorato instancabilmente per migliorarlo con brevi preavvisi ogni anno. Eitan è scomparso + prematuramente nel giugno 2009 e dedichiamo questa documentazione alla sua memoria. +
  • +
  • Hans Hagen per la grande quantità di collaudi e per aver permesso al suo formato ConTEXt + (http://pragma-ade.com) di lavorare all’interno dell’infrastruttura di TEX Live. +
  • +
  • Hàn Thế Thành, Martin Schröder e il team di pdfTEX (http://pdftex.prg) per i continui + miglioramenti delle capacità di TEX. +
  • +
  • Hartmut Henkel per i significativi contributi allo sviluppo di pdfTEX, LuaTEX e molto ancora. +
  • +
  • Taco Hoekwater per gli importanti forzi nel rinnovato sviluppo di MetaPost e (Lua)TEX + (http://luatex.org) stesso, per aver incorporato ConTEXt in TEX Live, per aver dato a + Kpathsea le funzionalità multi-thread e per molto altro ancora. +
  • +
  • Paweł Jackowski per l’installatore Windows tlpm e Tomasz Łuczak per tlpmgui, usati nelle edizioni + passate. +
  • +
  • Akira Kakuto per aver fornito gli eseguibili per Windows a partire dalla sua distribuzione TEX + giapponese W32TEX e per molti altri contributi allo sviluppo. +
  • +
  • Jonathan Kew per aver sviluppato il notevole motore XeTEX e per aver investito tempo e fatica + per integrarlo in TEX Live, così come per la versione iniziale dell’installatore di MacTEX e per + il programma TEXworks, che raccomandiamo. +
  • +
  • Dick Koch per mantenere MacTEX (http://tug.org/mactex) a distanza molto ravvicinata da + TEX Live e per il suo gran buon umore nel farlo. +
  • +
  • Reinhard Kotucha per i maggiori contributi all’infrastruttura e all’installatore di TEX Live 2008, + così come per gli sforzi di ricerca sotto Windows, lo script getnonfreefonts e molto altro. +
  • +
  • Anche Siep Kroonenberg per maggiori contributi all’infrastruttura e all’installatore di TEX Live + 2008, specialmente sotto Windows, e il grosso del lavoro di aggiornamento di questo manuale per + descrivere queste funzionalità. +
  • +
  • Heiko Oberdiek per il pacchetto epstopdf e molti altri, per aver compresso gli enormi file di dati + di pst-geo così che potessimo includerli e, più di tutto, per il suo notevole lavoro su hyperref. +
  • + + +
  • Petr Okšak che ha coordinato e controllato con grande attenzione tutto il materiale ceco e slovacco. +
  • +
  • Toshio Oshima per il suo visualizzatore per Windows dviout. +
  • +
  • Manuel Pégourié-Gonnard per aver aiutato con gli aggiornamenti dei pacchetti, con i + miglioramenti alla documentazione e con lo sviluppo di texdoc. +
  • +
  • Fabrice Popineau per l’originale supporto per Windows in TEX Live e per il lavoro sulla + documentazione in francese. +
  • +
  • Norbert Preining, l’architetto principale dell’infrastruttura e dell’installatore di TEX Live 2008, + anche per aver coordinato la versione Debian di TEX Live (insieme con Frank Küster), offrendo + molti suggerimenti lungo il cammino. +
  • +
  • Sebastian Rahtz per aver originariamente creato TEX Live ed averne curato la manutenzione per + molti anni. +
  • +
  • Phil Taylor per aver allestito gli scaricamenti tramite BitTorrent. +
  • +
  • Tomasz Trzeciak per aiuti su vasta scala con Windows. +
  • +
  • Vladimir Volovich per il sostanziale aiuto nel porting e in altre questioni di mantenimento e + specialmente per aver reso possibile includere xindy. +
  • +
  • Staszek Wawrykiewicz, il collaudatore principale di tutta TEX Live e coordinatore di molti dei + maggiori contributori polacchi: font, installazione sotto Windows e molto altro. +
  • +
  • Olaf Weber per la sua paziente manutenzione a Web2C. +
  • +
  • Gerben Wierda per aver creato e fatto manutenzione all’originale supporto per Mac OS X e per + molte integrazioni e collaudi. +
  • +
  • Graham Williams, sul cui lavoro dipende il Catalogo TEX dei pacchetti. +
+

Preparatori degli eseguibili: Ettore Aldrovandi (i386-solaris, x86_64-solaris), Alan Braslau (amd64-kfreebsd, +i386-kfreebsd), Peter Breitenlohner (x86_64-linux), Karl Berry (i386-linux), Ken Brown (i386-cygwin), Akira +Kakuto (win32), Dick Koch (universal-darwin, x86_64-darwin), Nikola Lečić (amd64-freebsd, i386-freebsd), +Mojca Miklavec (mipsel-linux), Norbert Preining (alpha-linux), Thomas Schmitz (powerpc-linux), Boris +Veytsman (armel-linux), Vladimir Volovich (powerpc-aix, sparc-solaris), Olaf Weber (mips-irix). Per informazioni +sul processo di compilazione di TEX Live, visitate http://tug.org/texlive/build.html. +

Attuali traduttori della documentazione: Boris Veytsman (russo), Jjgod Jiang, Jinsong Zhao, Yue Wang & +Helin Gai (cinese), Klaus Höppner (tedesco), Manuel Pégourié-Gonnard (francese), Marco Pallante (italiano), +Nikola Lečić (serbo), Petr Sojka & Jan Busa (ceco/slovacco), Staszek Wawrykiewicz (polacco). La pagina web +della documentazione di TEX Live è http://tug.org/texlive/doc.html. +

Ovviamente il più importante ringraziamento deve andare a Donald Knuth, innanzitutto per aver inventato +TEX e poi per averlo donato al mondo. +

+

10 Storia delle edizioni

+

+

10.1 Passato

+

La discussione iniziò nel tardo 1993 quando il gruppo utenti TEX olandese stava iniziando a lavorare al proprio +CD 4AllTEX per gli utenti MS-DOS e si sperava a quel tempo di rilasciare un solo razionale CD per tutti i +sistemi. Questo era un obiettivo troppo ambizioso per il tempo, ma non solo diede vita al CD di grande +successo 4AllTEX, ma spinse il gruppo di lavoro del TUG Technical Council verso una Struttura delle + + +Directory TEX (TDS, TEX Directory Structure, http://tug.org/tds), che specificò come creare collezioni +consistenti e gestibili di file di supporto a TEX. Una bozza completa della TDS fu pubblicata nel numero di +dicembre 1995 di TUGboat e fu chiaro dalle fasi iniziali che un prodotto desiderabile sarebbe +stata una struttura di modello su CD. La distribuzione che hai ora è il risultato diretto delle +decisioni del gruppo di lavoro. Fu anche chiaro dal successo del CD 4AllTEX che gli utenti Unix +avrebbero beneficiato da un simile semplice sistema e questa è l’altro filone principale di TEX +Live. +

Per prima cosa ci mettemmo all’opera per realizare un nuovo CD della TDS basato su Unix nell’autunno +del 1995 e rapidamente identificammo il teTEX di Thomas Esser come l’impianto ideale, dato che già aveva il +supporto per più piattaforme ed era costruito con la portabilità tra diversi file system in mente. Thomas +acconsentì ad aiutarci e il lavoro cominciò seriamente all’inizio del 1996. La prima edizione fu rilasciata nel +maggio 1996. All’inizio del 1996, Karl Berry completò una nuova versione di Web2c, che includeva +praticamente tutte le funzionalità che Thomas Esser aveva aggiunto in teTEX e decidemmo di basare la +seconda edizione del CD sul Web2C standard, con l’inclusione dello script texconfig proveniente da teTEX. +La terza edizione del CD fu basata su una nuova grande revisione di Web2C, la 7.2, realizzata da +Olaf Weber; allo stesso tempo, era stata fatta una nuova revisione di teTEX e TEX Live incluse +quasi tutte le sue funzionalità. La quarta edizione seguì lo stesso modello, usando una nuova +versione di teTEX e di Web2C (7.3). Il sistema adesso includeva anche un completo allestimento per +Windows. +

Per la quinta edizione (marzo 2000) furono riviste e controllate molte parti del CD, aggiornando centinaia +di pacchetti. I dettagli sui pacchetti furono memorizzati in file XML. Ma il cambiamento maggiore per +TEX Live 5 fu che tutto il software non libero fu rimosso. Tutto in TEX Live era pensato per +essere compatibile con le Debian Free Software Guidelines (linee guida Debian sul software libero, +http://www.debian.org/intro/free); abbiamo fatto del nostro meglio per controllare le condizioni di licenza +di tutti i pacchetti, ma apprezzeremo tantissimo ogni segnalazione di errori. +

La sesta edizione (luglio 2001) aveva aggiornato ancora più materiale. Il cambiamento più grande fu un +nuovo concetto di installazione: l’utente poteva selezionare un insieme più esatto delle collezioni desiderate. Le +collezioni relative alle lingue furono completamente riorganizzate, così che, selezionandone una qualunque, +non solo venissero installati le macro, i font, ecc., ma fosse anche preparato un opportuno file +language.dat. +

La settima edizione del 2002 ebbe la notevole aggiunta del supporto per Mac OS X e la solita miriade di +aggiornamenti ad ogni genere di pacchetto e programma. Un traguardo importante fu l’integrazione dei +sorgenti con quelli di teTEX per correggere l’allontanamento l’uno dall’altro avvenuto nelle versioni 5 +e 6. +

+

10.1.1 2003
+

Nel 2003, con il continuo flusso di aggiornamenti ed aggiunte, trovammo che TEX Live era cresciuta così tanto +che non poteva più essere contenuta in un singolo CD, quindi la dividemmo in tre diverse distribuzioni +(consultate la sezione 2.1, p. 7). In più: +

    +
  • Su richiesta del team di LATEX, cambiammo i comandi latex e pdflatex affinché usassero e-TEX + (consultate la p. 11). +
  • +
  • I nuovi font Latin Modern furono inclusi (e sono raccomandati). +
  • +
  • Il supporto per Alpha OSF fu rimosso (il supporto per HPUX era già stato rimosso in precedenza) + dato che nessuno aveva (o voleva donare) l’hardware su cui compilare i nuovi eseguibili. +
  • +
  • L’allestimento per Windows fu cambiato sostanzialmente; per la prima volta fu introdotto un + ambiente integrato basato su XEmacs. +
  • +
  • Importanti programmi aggiuntivi per Windows (Perl, Ghostscript, ImageMagic, Ispell) sono ora + installati nelle directory TEX Live. +
  • +
  • I file di mappatura per i font usati da dvips, dvipdfm e pdftex sono ora generati da un nuovo + programma updmap ed installati in texmf/fonts/map. + + +
  • +
  • TEX, Metafont e MetaPost adesso mostrano la maggior parte dei caratteri in ingresso (dal numero + 32 ASCII in su) come sé stessi nei file che vengono generati (ad esempio, con \write), nei file di + registro e sul terminale, ossia non sono più tradotti usando la notazione ^^. In TEX Live 7 questa + traduzione dipendeva dalle impostazioni sulla lingua del sistema; adesso, queste impostazioni non + influenzano il comportamento dei programmi TEX. Se per qualche ragione avete bisogno della + notazione ^^, rinominate il file texmf/web2c/cp8bit.tcx (le edizioni future avranno un modo + più pulito per controllare questa opzione). +
  • +
  • Questa documentazione fu revisionata sostanzialmente. +
  • +
  • Infine, dato che i numeri delle edizioni erano cresciuti in modo poco agevole, da adesso la versione + è identificata semplicemente dall’anno: TEX Live 2003.
+

+

10.1.2 2004
+

Il 2004 vide molti cambiamenti: +

    +
  • Se avete font installati localmente che usano i propri file di supporto .map o (molto meno + probabilmente) .enc, potreste aver bisogno di muovere questi file. +

    I file .map adesso sono cercati soltanto in sotto directory di fonts/map (per ciascuna gerarchia + texmf, lungo il percorso TEXFONTMAPS). In modo simile, i file .enc sono cercati soltanto nelle + sottodirectory di font/enc, lungo il percorso ENCFONTS. updmap tenterà di avvisarvi su file che + possono provocare problemi. +

    Per i metodi per gestire questa ed altre informazioni, visitate la pagina + http://tug.org/texlive/mapenc.html. +

  • +
  • TEX Collection è stata espansa con l’aggiunta di un CD installabile basato su MiKTEX, per + coloro che preferiscono quell’implementazione a Web2C. Consultate la sezione 2 (p. 7). +
  • +
  • All’interno di TEX Live, la singola grande directory texmf delle edizioni precedenti è stata + sostituita da: texmf, texmf-dist e texmf-doc. Consultate la sezione 2.2 (p. 8 e il file README + contenuto in ciascuna di esse. +
  • +
  • Tutti file in ingresso relativi a TEX sono adesso raccolti nella sotto directory tex delle varie + texmf*, piuttosto che avere le diverse posizioni tex, etex, pdftex, pdfetex, ecc. Consultate + texmf-dist/doc/generic/tds/tds.html#Extensions. +
  • +
  • Gli script di supporto (pensati per non essere invocati dagli utenti) sono adesso posizionati in + una nuova sotto directory delle varie texmf* chiamata scripts e possono essere cercati usando + kpsewhich -format=texmfscripts. Se quindi avete dei programmi che richiamano questi script, + allora dovranno essere corretti. Consultate texmf-dist/doc/generic/tds/tds.html#Scripts. +
  • +
  • Quasi tutti i formati lasciano la maggior parte dei caratteri stampabili uguali a se stessi + tramite il “file di traduzione” cp227.tcx, piuttosto che trasformarli nella notazione ^^. Nello + specifico, i caratteri alle posizioni ASCII 32–256, la tabulazione orizzontale, quella verticale e + il “form feed” sono considerati stampabili e non vengono trasformati. Le eccezioni sono plain + TEX (solo i caratteri 32–126 sono stampabili), ConTEXt (caratteri 0–255) e i formati legati + ad Omega. Questo comportamento predefinito è quasi lo stesso che in TEX Live 2003, ma è + implementato in maniera più pulita, con maggiori possibilità di personalizzazione. Consultate + texmf/doc/web2c/web2c.html#TCX-files (ad ogni modo, con l’input in formato Unicode, TEX + potrebbe stampare sequenze parziali di caratteri quando viene mostrato il contesto degli errori + dato che legge l’input come una sequenza di byte, non di caratteri). + + +
  • +
  • pdfetex è adesso il motore predefinito per tutti i formati tranne (plain) tex stesso (ovviamente + genera file DVI quando è eseguito come latex, ecc.). Questo significa, tra le altre cose, che le + caratteristiche di microtipografia di pdftex sono disponibili in LATEX, ConTEXt, ecc., così come + le funzionalità di e-TEX (texmf-dist/doc/etex/base/). +

    Significa anche che è più importante che mai usare il pacchetto ifpdf (funziona sia con plain + TEX, che con LATEX) o del codice equivalente, perché verificare semplicemente se \pdfoutput o + qualche altra primitiva sono definiti non è un modo affidabile per determinare se si sta generando + un file PDF. Per quest’anno abbiamo cercato di rendere questo aspetto compatibile con le edizioni + passate al meglio delle nostra capacità, ma a partire dal prossimo anno \pdfoutput potrebbe + essere definito anche se il file generato è un DVI. +

  • +
  • pdfTEX (http://pdftex.org) ha molte nuove funzionalità: +
      +
    • \pdfmapfile e \pdfmapline forniscono il supporto alle mappature dei font direttamente + all’interno di un documento. +
    • +
    • L’espansione microtipografica dei font può essere usata più facilmente.
      http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html +
    • +
    • Tutti i parametri che prima erano impostati tramite lo speciale file di configurazione + pdftex.cfg devono essere adesso impostati tramite primitive, tipicamente in pdftexconfig. + tex; pdftex.cfg non è più supportato. Ogni file .fmt deve essere rigenerato quando + pdftexconfig.tex viene modificato. +
    • +
    • Per saperne di più, consultate il manuale di pdfTEX: + texmf-dist/doc/pdftex/manual/pdftex-a.pdf. +
    +
  • +
  • La primitiva \input in tex (e in mf e mpost) adesso accetta nomi con spazi ed altri caratteri speciali + racchiusi tra doppi apici. Esempi tipici: + + +
    +
      \input "file con spazi"   % plain
      \input{"file con spazi"}  % latex
    +
    +

    Consultate il manuale di Web2C per saperne di più: texmf/doc/web2c. +

  • +
  • Il supporto per encTEX è ora incluso in Web2C e, di conseguenza, in tutti i programmi TEX, per mezzo + dell’opzione -enc —  solo quando i formati sono stati generati. encTEX supporta la ricodifica generale + dell’input e dell’output, permettendo il supporto completo per l’Unicode (in UTF-8). Consultate + texmf-dist/doc/generic/enctex/ e http://www.olsak.net/enctex.html. +
  • +
  • Aleph, un nuovo motore che combina e-TEX ed Omega, è disponibile. Alcune informazioni sono disponibili + in texmf-dist/doc/aleph/base e su http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph. Il + formato basato su LATEX per Aleph è chiamato lamed. +
  • +
  • L’ultimo aggiornamento di LATEX ha una nuova versione della LPPL —  ora una licenza + ufficialmente approvata da Debian. Per altri aggiornamenti assortiti, consultiate i file ltnews in + texmf-dist/doc/latex/base. +
  • +
  • dvipng, un nuovo programma per convertire i DVI in immagini PNG, è incluso. Consultate + texmf/doc/man/man1/dvipng.1. +
  • +
  • Abbiamo ridotto il pacchetto cbgreek ad un insieme di font di “medie” dimensioni, con il consenso e i + suggerimenti dell’autore (Claudio Beccari). I font omessi sono quelli invisibili, quelli profilati e i trasparenti, + che sono usati abbastanza raramente, mentre noi avevamo bisogno di spazio. L’insieme completo è + ovviamente disponibile su CTAN (http://mirror.ctan.org/tex-archive/fonts/greek/cb). +
  • +
  • oxdvi è stato rimosso; usate semplicemente xdvi. +
  • +
  • I comandi (collegamenti) ini e vir per tex, mf e mpost non sono più creati, così come initex. Le + funzionalità di ini sono disponibili oramai da anni tramite l’opzione su riga di comando + -ini. +
  • +
  • Il supporto per la piattaforma i386-openbsd è stato rimosso. Dato che è disponibile il pacchetto tetex nel + sistema BSD Port e gli eseguibili per GNU/Linux e FreeBSD erano disponibili, ci è sembrato che il + tempo dedicato dai volontari potesse essere meglio speso da altre parti. +
  • +
  • Su sparc-solaris (almeno), potreste dover impostare la variabile d’ambiente LD_LIBRARY_PATH per eseguire + i programmi delle t1utils. La ragione è che questi sono compilati con il C++ e non esiste una posizione + comune per le librerie (questo problema non è nuovo dell’edizione 2004, ma non era stato documentato in + precedenza). In modo simile, su mips-irix, sono richieste le librerie di runtime del MIPSpro + 7.4. +
+

+

10.1.3 2005
+

L’edizione del 2005 ha visto il solito enorme numero di aggiornamenti ai pacchetti ed ai programmi. +L’infrastruttura è rimasta sostanzialmente invariata dal 2004, ma inevitabilmente ci sono stati comunque dei +cambiamenti: + + +

    +
  • Sono stati introdotti i nuovi script texconfig-sys, updmap-sys e fmtutil-sys che modificano la + configurazione nei percorsi di sistema. Gli script texconfig, updmap e fmtutil ora modificano i file + specifici per i singoli utenti, sotto $HOME/.texlive2005. +
  • +
  • Sono state introdotte le corrispondenti nuove variabili TEXMFCONFIG e TEXMFSYSCONFIG per + specificare i percorsi dove trovare i file di configurazione (per il singolo utente e per l’intero sistema, + rispettivamente). Quindi, potreste dover spostare le versioni personali di fmtutil.cnf e updmap. + cfg in questi posti; un’altra possibilità è quella di ridefinire TEXMFCONFIG o TEXMFSYSCONFIG in + texmf.cfg. In ogni caso la posizione reale di questi file e i valori di TEXMFCONFIG e TEXMFSYSCONFIG + devono concordare. Consultate la sezione 2.3, p. 9. +
  • +
  • L’anno precedente, abbiamo tenuto \pdfoutput ed altre primitive non definite per l’output in DVI, + anche quando veniva usato il programma pdfetex. Quest’anno, come promesso, abbiamo annullato + quella misura di compatibilità. Per cui, se il vostro documento usa \ifx\pdfoutput\undefined + per verificare se viene generato un PDF, dovrà essere cambiato. Potete usare il pacchetto ifpdf.sty + (che funziona sia sotto plain TEX che sotto LATEX) per fare ciò, oppure rubarne la logica. +
  • +
  • L’anno precedente, abbiamo cambiato la maggior parte dei formati per stampare i caratteri (a 8 + bit) come sé stessi (consultate la sezione precedente). Il nuovo file TCX empty.tcx adesso + offre un modo più semplice per ottenere l’originaria notazione ^^ se la desiderate, come + in: + + +
    +
      latex --translate-file=empty.tcx vostrofile.tex
    +
    +

    +

  • +
  • È incluso il nuovo programma dvipdfmx per la trasformazione dei DVI in PDF; si tratta di un + aggiornamento attivamente mantenuto di dvipdfm (che per ora è ancora disponibile, anche se non più + raccomandato). +
  • +
  • Sono inclusi i nuovi programmi pdfopen e pdfclose per consentire di ricaricare i file pdf nel lettore Adobe + Acrobat Reader senza riavviare il programma (altri lettori pdf, in particolare xpdf, gv e gsview, non + hanno mai sofferto di questo problema). +
  • +
  • Per consistenza, le variabili HOMETEXMF e VARTEXMF sono state rinominate TEXMFHOME e TEXMFVAR, + rispettivamente. C’è anche TEXMFVAR, che è specifica per ogni utente. Consultate il primo punto + dell’elenco. +
+

+

10.1.4 2006–2007
+

Nell’edizione 2006–2007, la nuova più grande aggiunta a TEX Live è stato il programma XeTEX, disponibile +con i comandi xetex e xelatex; visitate il sito http://scripts.sil.org/xetex. +

Anche MetaPost ha ricevuto un aggiornamento degno di nota, mentre altri ne sono stati pianificati per il futuro +(http://tug.org/metapost/articles), così come per pdfTEX (http://tug.org/applications/pdftex). +

I .fmt di TEX (formati ad alta velocità) e i file simili per MetaPost e Metafont adesso sono posizionati in +sotto directory di texmf/web2c, invece che nella directory stessa (sebbene la directory sia ancora visitata +durante la ricerca, a beneficio dei .fmt esisitenti). Le sotto directory sono chiamate in base al +“motore” usato, come tex o pdftex o xetex. Questo cambiamento dovrebbe essere invisibile nell’uso +normale. +

Il programma (plain) tex non legge più le prime linee identificate da %& per determinare quale +formato adoperare; è il puro TEX Knuthiano (LATEX e tutto il resto leggono ancora le linee +%&). +

Ovviamente anche quest’anno ha visto (i soliti) centinaia di altri aggiornamenti ai pacchetti ed ai +programmi. Come sempre, visitate CTAN (http://mirror.ctan.org) per tutti gli aggiornamenti. +

Internamente, i sorgenti sono ora memorizzati tramite Subversion, con un’interfaccia web standard per +visitarli; il collegamento è sulla nostra pagina home. Sebbene invisibile nella distribuzione finale, ci aspettiamo +che questo fornisca un fondamento stabile per lo sviluppo negli anni a venire. +

Infine, nel maggio 2006 Thomas Esser ha annunciato che non avrebbe più aggiornato teTEX +(http://tug.org/tetex). Come risultato, c’è stata una nascita di interesse verso TEX Live, specialmente tra +i distributori di GNU/Linux (c’è un nuovo schema di installazione in TEX Live chiamato tetex, che fornisce +un equivalente approssimativo). Speriamo che alla fine questo si traduca in miglioramenti per tutti all’ambiente +TEX. +

+

10.1.5 2008
+

Nell’edizione del 2008, l’intera infrastruttura di TEX Live è stata riprogettata e reimplementata. +Le informazioni complete su un’installazione sono adesso memorizzate in un file di testo puro +tlpkg/texlive.tlpdb. +

Tra le altre cose, ciò rende finalmente possibile aggiornare un’installazione TEX Live tramite Internet dopo +l’installazione iniziale, una caratteristica che MikTEX ha offerto per anni. Ci attendiamo di aggiornare +regolarmente i nuovi pacchetti così come diventano disponibili su CTAN. +

Il nuovo motore LuaTEX (http://luatex.org) è ora incluso; accanto ad un nuovo livello di flessibilità +nella composizione tipografica, questo fornisce un eccellente linguaggio di scripting da usare sia dentro che fuori +i documenti TEX. + + +

Il supporto tra Windows e le piattaforme basate su Unix è ora molto più uniforme. In particolare, la +maggior parte degli script Perl e Lua sono ora disponibili sotto Windows tramite l’interprete Perl distribuito +internamente con TEX Live. +

Il nuovo script tlmgr (sezione 6) è l’interfaccia generale per amministrare TEX Live dopo l’installazione +iniziale. Esso gestice l’aggiornamento dei pacchetti e la conseguente rigenerazione dei formati, dei file di +mappatura e dei file delle lingue, incluse opzionalmente le aggiunte locali. +

Con l’avvento di tlmgr, è ora disabilitata l’azione di modifica dei file di configurazione dei formati e delle +sillabazioni operata da texconfig. +

Il programma per la creazione degli indici xindy (http://xindy.sourceforge.net/) è ora incluso nella +maggior parte delle piattaforme. +

Lo strumento kpsewhich può ora riportare tutte le corrispondenze per un dato file (opzione –all) e limitarle +ad una data sotto directory (opzione –subdir). +

Il programma dvipdfmx adesso include la funzionalità di estrarre le informazioni sulla bounding box +attraverso il comando extractbb; si tratta di una delle ultime caratteristiche che erano fornite da dvipdfm ma +non ancora incluse in dvipdfmx. +

Gli alias dei font Times-Roman, Helvetica e così via sono stati rimossi. Diversi pacchetti si aspettavano +che funzionassero in modo diverso (in particolare, che avessero codifiche differenti) e non c’era un buon modo +per risolverlo. +

Il formato platex è stato rimosso per risolvere un conflitto di nome con un completamente +diverso platex giapponese; il pacchetto polski contiene ora il principale supporto per la lingua +polacca. +

Internamente, i file con le riserve di stringhe di WEB sono compilati dentro gli eseguibili, per semplificare gli +aggiornamenti. +

Infine, in questa edizione sono stati inclusi i cambiamenti fatti da Donald Knuth nella sua “messa a punto +di TEX del 2008”. Consultate http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf. +

+

10.1.6 2009
+

Nell’edizione 2009, il formato di output predefinito di Lua(LA )TEX è ora il PDF per avvalersi del supporto +OpenType di LuaTEX, ecc. I nuovi eseguibili chiamati dviluatex e dvilualatex eseguono LuaTEX con +l’output in DVI. La pagina web di LuaTEX è http://luatex.org. +

Il motore Omega e il formato Lambda originari sono stati rimossi dopo averne discusso con gli autori di +Omega. Restano le versioni aggiornate Aleph e Lamed, così come le utilità di Omega. +

È stata inclusa una nuova versione dei font AMS Type 1, compreso il Computer Modern: sono stati +integrati alcuni cambiamenti nelle forme fatti da Knuth nei sorgenti Metafont nel corso degli anni e +l’hinting è stato aggiornato. I font Euler sono stati ridisegnati a fondo da Hermann Zapf (visitate +http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf). In ogni caso, le metriche non hanno +subito modifiche. La pagina dei font AMS è http://www.ams.org/tex/amsfonts.html. +

Il nuovo editor GUI TEXworks è incluso per Windows così come in MacTEX. Per le altre piattaforme e +per ulteriori informazioni, consultate il sito di TEXworks, http://tug.org/texworks. Si tratta di un +programma multi piattaforma ispirato all’editor TeXShop per Mac OS X e che ha come obiettivo la facilità +d’uso. +

Il programma per la grafica Asymptote è stato incluso per diverse piattaforme. Esso implementa un +linguaggio descrittivo per la grafica basato su testo vagamente simile a MetaPost, ma con un supporto +avanzato al 3D ed altre caratteristiche. Il suo sito web è http://asymptote.sourceforge.net. +

Il programma dvipdfm è stato sostituito da dvipdfmx, che opera in una speciale modalità di compatibilità +quando viene invocato con il primo nome. dvipdfmx include il supporto per CJK (Chinese-Japanese-Korean, +Cinese-Giapponese-Coreano) ed ha accumulato molte correzione negli anni trascorsi dall’ultima versione di +dvipdfm. Il sito di DVIPDFMx è http://project.ktug.or.kr/dvipdfmx. +

Gli eseguibili per le piattaforme cygwin e i386-netbsd sono ora inclusi, mentre siamo stati avvisati +che gli utenti di OpenBSD ottengono TEX tramite il loro sistema di pacchetti, e in più c’erano +difficoltà nel produrre eseguibili che avessero una qualche possibilità di funzionare su più di una +versione. +

Una varietà di cambiamenti più piccoli: adesso usiamo la compressione xz, il rimpiazzo stabile per lzma +(http://tukaani.org/xz/); il carattere $ è ammesso nei nomi dei file quando non introduce il nome di +variabile noto; la libreria Kpathsea è ora multi-thread (lo sfrutta MetaPost); l’intera compilazione di TEX Live +è ora basata su Automake. +

Nota finale sul passato: tutte le edizioni di TEX Live, assieme al materiale ausiliario come le etichette dei + + +CD, sono disponibili all’indirizzo ftp://tug.org/historic/systems/texlive. +

+

10.2 2010

+

Nell’edizione 2010, la versione predefinita per l’output PDF è ora la 1.5, che consente una maggiore +compressione. Questo si applica a tutti i motori TEX quando vengono usati per produrre PDF e a +dvipdfmx. Caricando il pacchetto LATEX pdf14 o impostando \pdfminorversion=4, si si ritorna al +PDF 1.4. +

pdf(LA )TEX ora converte automaticamente un file Encapsulated Postscript (EPS) richiesto in PDF tramite +il pacchetto epstopdf quando e se viene caricato il file di configurazione per LATEX graphics.cfg e viene +richiesto l’output in PDF. Le opzioni predefinite sono tali da eliminare ogni possibilità che siano +sovrascritti i file PDF creati a mano, ma potete del tutto evitare che epstopdf sia caricato mettendo +\newcommand{\DoNotLoadEpstopdf}{} (o \def...) prima della dichiarazione \documentclass. Non viene +caricato neppure se viene usato il pacchetto pst-pdf. Per maggiori dettagli, consultate la documentazione del +pacchetto epstopdf (http://ctan.org/pkg/epstopdf-pkg). +

Un cambiamento correlato è che adesso è abilitata per default l’esecuzione di alcuni comandi esterni a +TEX, tramite la funzionalità \write18. Questi comandi sono repstopdf, makeindex, kpsewhich, bibtex e +bibtex8; la lista è definita in texmf.cnf. Gli ambienti che devono disabilitare tutti questi comandi esterni +possono deselezionare questa opzione nell’installatore (consultate la sezione 3.2.4), oppure rimpiazzare il valore +dopo l’installazione eseguendo tlmgr conf texmf shell_escape 0. +

Ancora un altro cambiamento correlato è che ora BibTeX e Makeindex si rifiutano di scrivere il +proprio output in una directory arbitraria (come lo stesso TEX) per default. In questo modo +diventa ora possibile consentirne l’uso tramite lo stringente \write18. Per cambiare questo, può +essere impostata la variabile d’ambiente TEXMFOUTPUT oppure può essere modificata l’opzione +openout_any. +

XeTEX ora supporta la crenatura al margine lungo le stesse righe come pdfTEX (l’espansione dei caratteri +non è supportata al momento). +

Per default, tlmgr ora salva un backup di ciascun pacchetto aggiornato (tlmgr option autobackup 1), +così che gli aggiornamenti con pacchetti danneggiati possano essere facilmente ripristinati con tlmgr restore. +Se eseguite aggiornamenti successivi all’installazione e non avete spazio sul disco per i backup, eseguite tlmgr +option autobackup 0. +

Nuovi programmi inclusi: il motore pTEX e le utilità correlate per la composizione in +giapponese; il programma BibTeXU per un BibTeX compatibile con Unicode; l’utilità chktex +(http://baruch.ev-en.org/proj/chktex) per controllare i documenti (LA )TEX; il traduttore da DVI a SVG +dvisvgm (http://dvisvgm.sourceforge.net). +

Ora sono inclusi gli eseguibili per queste nuove piattaforme: amd64-freebsd, amd64-kfreebsd, +i386-freebsd, i386-kfreebsd, x86_64-darwin, x86_64-solaris. +

Un cambiamento in TEX Live 2009 che ci siamo dimenticati di notare: numerosi eseguibili +legati a TEX4ht (http://tug.org/tex4ht) sono stati rimossi dalle directory degli eseguibili. Il +programma generico mk4ht può essere usato per eseguire una qualunque tra le varie combinazioni di +tex4ht. +

Infine, la versione di TEX Live sul DVD TK non può più essere eseguita “live” (curiosamente). Un singolo +DVD non ha più abbastanza spazio. Un effetto collaterale benefico è che l’installazione da un DVD fisico è ora +molto più rapida. +

+

10.2.1 2011
+

Gli eseguibili per Mac OS X (universal-darwin e x86_64-darwin ora funzionano solo su Leopard e succesivi; +Panther e Tiger non sono più supportati. +

Il programma biber per l’elaborazione delle bibliografie è incluso per le piattaforme comuni. Il suo +sviluppo è strettamente accoppiato con il pacchetto biblatex, che reimplementa completamente +l’infrastruttura bibliografica fornita da LaTeX. +

Il programma MetaPost (mpost) non crea né usa più i file .mem. I file necessari, come plain.mp, sono +semplicemente letti ad ogni esecuzione. Questo è correlato al supporto di MetaPost come libreria, che è +un’altra modifica significativa non visibile dall’utente. +

L’implementazione di updmap in Perl, precedentemente usata solo su Windows, è stata rimodernata ed è +ora usata su tutte le piattaforme. Non dovrebbe esserci alcun cambiamento visibile dall’utente, tranne che ora + + +gira molto più velocemente. +

+

10.3 Present

+

tlmgr supporta gli aggiornamenti da archivi di rete multipli. La sezione sugli archivi multipli nel messaggio di +tlmgr help ha ulteriori informazioni. +

Il parametro \XeTeXdashbreakstate ha il valore predefinito di 1 sia per xetex che per xelatex. +Questo permette l’interruzione delle linee dopo i trattini lunghi e medi, che è stato sempre il +comportamento di TEX, LATEX, LuaTEX, ecc. I documenti XeTEX esistenti che devono mantenere la +perfetta compatibilità con le interruzioni di linee, devono impostare \XeTeXdashbreakstate a 0 +esplicitamente. +

I file di output generati, tra gli altri, da pdftex e dvips possono ora superare i 2gb. +

I 35 font standard di PostScript sono ora inclusi nell’output di dvips per default, dato che ne esistono così +tante versioni differenti. +

Nel modo di esecuzione ristretto \write18, impostato per default, mpost è diventato un programma +ammissibile. +

Un file texmf.cnf viene trovato anche in ../texmf-local, se esiste (ad esempio, +/usr/local/texlive/texmf-local/web2c/texmf.cnf). +

Lo script updmap legge un file updmap.cfg in ciascuna directory invece di una configurazione globale. +Questo cambiamento dovrebbe essere invisibile, a meno che non abbiate modificato il vostro updmap.cfg +direttamente. Il messaggio mostrato da updmap –help dà ulteriori informazioni. +

Piattaforme: aggiunte armel-linux e mipsel-linux; sparc-linux e i386-netbsd non fanno più parte della +distribuzione principale, ma sono disponibili per l’installazione come eseguibili personalizzati, insieme con una +varietà di altre piattaforme: http://tug.org/texlive/custom-bin.html. +

+

10.4 Futuro

+

TEX Live non è perfetto! (e mai lo sarà). Intendiamo di continuare a fornire nuove versione e vorremmo fornire +ulteriore materiale d’aiuto, più programmi di utilità, più programmi di installazione e (ovviamente) un ancor +più migliorato e meglio controllato insieme di macro e font. Questo lavoro è fatto completamente da +volontari sovraccaricati nel loro limitato tempo libero e quindi c’è sempre molto da fare. Visita il sito +http://tug.org/texlive/contribute.html. +

Potete inviare correzioni, suggerimenti e offerte d’aiuto a: +

+

Buon lavoro con TEX! + + + + + + diff --git a/Master/texmf-dist/doc/texlive/texlive-it/texlive-it.pdf b/Master/texmf-dist/doc/texlive/texlive-it/texlive-it.pdf new file mode 100644 index 00000000000..cf4f0897ad7 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-it/texlive-it.pdf differ diff --git a/Master/texmf-dist/doc/texlive/texlive-it/texlive-it.tex b/Master/texmf-dist/doc/texlive/texlive-it/texlive-it.tex new file mode 100644 index 00000000000..a83fda0f0ba --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-it/texlive-it.tex @@ -0,0 +1,3587 @@ +% $Id$ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. +% +% Traduzione italiana a cura di Marco Pallante. +% +\documentclass{article} +%\let\tldocenglish=1 % for live4ht.cfg +\usepackage{tex-live} +\usepackage[italian]{babel} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} + +\begin{document} + +\title{% + {\huge \textit{Guida a \TeX\ Live}\\\smallskip}% + {\LARGE \textsf{\TL{} 2012}}% +} + +\author{Karl Berry\\[3mm] + \url{http://tug.org/texlive/} + } + +\date{Giugno 2012} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +%\listoftables +\end{multicols} + + +\section*{Note all'edizione italiana} + +Dopo tanti anni, finalmente abbiamo anche un'edizione italiana di questa +guida alla distribuzione \TL. Vorrei premettere che, per garantirne il +completamento entro l'uscita di \TL{} 2009, mi sono fatto in quattro +destinando praticamente ogni attimo libero a questo lavoro; ho tenuto +sempre acceso il computer, con l'editor aperto e, spesso, passandoci +davanti, mi fermavo a tradurre una sola frase o addirittura una sola +parola pur di non restare fermo. + +Ovviamente il risultato è un lavoro fatto con i piedi, uno stile +incoerente, parti che nemmeno io riesco a capire, errori di battitura e di +grammatica. Di tutto questo chiedo scusa. Però, adesso, il grosso dello +sforzo è stato fatto e revisionare periodicamente questa guida per limarla +e migliorarla sarà un'opera di gran lunga più semplice. + +Purtroppo, ho mancato l'appuntamento con \TL\ 2010 e la guida lì presente +era la stessa del 2009, con tutti i suoi difetti. Questa volta, per +l'edizione 2011, mi sono impegnato un po' di più, ho ripreso l'intero +lavoro, l'ho aggiornato prima con le modifiche del 2010 e quindi con quelle +del 2011, ho corretto una valanga di errori e ritradotto frasi che con +l'italiano avevano davvero poco a che vedere. + +Ovviamente ci saranno ancora tanti errori, frasi incomprensibili, incoerenze +e chi più ne ha più ne metta, ma spero nuovamente che il mio piccolo +contributo a \TeX{} sia apprezzato. Potete contattarmi per qualunque cosa, +aiuti, suggerimenti, correzioni, all'indirizzo +\email{marco.pallante@gmail.com}. + +Vorrei dedicare questo lavoro alla mia città. + +\bigskip + +\noindent Marco Pallante\\ +\emph{L'Aquila, 20 giugno 2011}. + + +\section{Introduzione} +\label{sec:intro} + +\subsection{\TeX\ Live e la \TeX\ Collection} + +Questo documento descrive le caratteristiche principali della +distribuzione \TL{}\Dash \TeX{} e i programmi ad esso correlati per +i sistemi GNU/Linux e altre versioni di Unix, \MacOSX{} e Windows. + +Potete ottenere \TL{} scaricandola, oppure sul \DVD{} \TK, che i gruppi di +utenti \TeX{} distribuiscono ai propri membri, o in altri modi. La sezione +\ref{sec:tl-coll-dists} descrive brevemente il contenuto del \DVD. Sia +\TL{} che \TK{} sono progetti cooperativi dei gruppi di utenti \TeX. +Questo descrive principalmente \TL. + +\TL{} include gli eseguibili per \TeX, \LaTeXe, \ConTeXt, \MF, \MP, +\BibTeX{} e molti altri programmi, una vasta collezione di macro, font e +documentazione e il supporto per la composizione tipografica in molti +diversi alfabeti provenienti da tutte le parti del mondo. + +Per un breve riassunto dei principali cambiamenti in questa edizione di +\TL, consultate la fine di questo documento, sezione~\ref{sec:history} +(\p.\pageref{sec:history}). + + + +\htmlanchor{platforms} +\subsection{Supporto per i sistemi operativi} +\label{sec:os-support} + +\TL{} contiene gli eseguibili per molte piattaforme basate su Unix, +inclusi \GNU/Linux, \MacOSX{} e Cygwin. I sorgenti inclusi possono essere +compilati per quelle piattaforme per le quali non forniamo i binari. + +Per quanto riguarda Windows: Windows \acro{XP} e successivi sono supportati. +Windows~2000 probabilmente continuerà a funzionare quasi del tutto. Non ci +sono specifici eseguibili a 64-bit per Windows, ma quelli a 32-bit +dovrebbero funzionare sui sistemi a 64-bit. + +Consulta la sezione~\ref{sec:tl-coll-dists} per scoprire soluzioni +alternative per Windows e \MacOSX. + +\subsection{Installazione base di \protect\TL{}} +\label{sec:basic} + +È possibile installare \TL{} dal \DVD{} oppure attraverso Internet +(\url{http://tug.org/texlive/acquire.html}). Il programma di installazione +via rete è piccolo e scarica tutto ciò che è necessario da Internet. + +Il programma di installazione nel \DVD{} vi permette l'installazione su un +disco locale. Non è possibile eseguire \TL{} direttamente dal \DVD{} \TK{} +(o dalla sua immagine \code{.iso}), ma potete preparare un'installazione +pronta per l'uso su, per esempio, una pennetta \USB{} (consultate la +sezione~\ref{sec:portable-tl}). L'installazione è descritta nelle prossime +sezioni (\p.\pageref{sec:install}), ma eccone un rapido accenno: + +\begin{itemize*} + +\item Lo script di installazione è chiamato \filename{install-tl}. + Può operare in ``modalità guidata'' (\emph{wizard}) dando l'opzione + \code{-gui=wizard} (predefinita sotto Windows), in modalità testuale + dando l'opzione \code{-gui=text} (predefinito per gli altri sistemi) e + in modalità \GUI{} esperta dando \code{-gui=perltk}. + +\item Uno degli elementi installati è il programma ``\TL\ Manager'', + chiamato \prog{tlmgr}. Così come l'installatore, può essere usato sia in + modalità \GUI{} che in modalità testuale. Lo si può usare per installare + e disinstallare i pacchetti e per compiere varie operazioni di + configurazione. + +\end{itemize*} + + +\htmlanchor{security} +\subsection{Considerazioni sulla sicurezza} +\label{sec:security} + +Sulla base delle nostre conoscenze, i programmi centrali di \TeX\ sono (e +sono sempre stati) estremamente robusti. Tuttavia, gli altri programmi in +\TeX\ Live potrebbero non raggiungere lo stesso livello, nonostante il +massimo impegno di tutti. Come sempre, dovreste essere attenti +nell'eseguire i programmi su documenti di origine inaffidabile; per la +massima sicurezza, eseguiteli in una nuova sotto directory. + +Questo bisogno di attenzone è particolarmente pressante sotto Windows, +dato che generalmente Windows cerca i programmi nella directory attuale +prima che in qualunque altra posizione, indipendentemente dal percorso di +ricerca. Questo comportamento crea un'ampia varietà di possibili attacchi. +Abbiamo chiuso molte falle, ma indubbiamente alcune ne rimangono, +soprattutto con i programmi di terze parti. Perciò raccomandiamo di +controllare la presenza di file sospetti nella directory attuale, +soprattutto quella di eseguibili (binari o script). Normalmente questi non +dovrebbero essere presenti e senza alcun dubbio normalmente non dovrebbero +essere creati semplicemente elaborando un documento. + +Infine, \TeX\ (e i programmi che lo accompagnano) è capace di creare nuovi +file quando elabora i documento, una funzionalità che può anche essere +abusata in una grande quantità di modi. Di nuovo, elaborare documenti +sconosciuti in una nuova sotto directory è la cosa più sicura. + + +\subsection{Ottenere aiuto} +\label{sec:help} + +La comunità \TeX{} è attiva ed amichevole e le domande più importanti +finiscono per ricevere una risposta. Tuttavia il supporto è informale, +offerto da volontari e lettori casuali, per cui è particolarmente +importante fare la propria parte prima di chiedere (se preferite un +supporto commerciale garantito, potete rinunciare del tutto a \TL{} e +ordinare il sistema di un fornitore; alla pagina +\url{http://tug.org/interest.html#vendors} trovate un elenco). + +Ecco una lista di risorse, approssimativamente nell'ordine in cui noi +raccomandiamo di usarle: + +\begin{description} +\item [Per Cominciare] Se siete nuovi di \TeX, alla pagina web + \url{http://tug.org/begin.html} troverete una breve introduzione al sistema. + +\item [\TeX{} \acro{FAQ}] Le \TeX{} \acro{FAQ} sono un enorme compendio di + risposte ad ogni genere di domanda, dalle più elementari alle più + oscure. Sono incluse in \TL{} in + \OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html} e sono disponibili + su Internet alla pagina \url{http://www.tex.ac.uk/faq}. Controllate + prima qui. + +\item [\TeX{} Catalogue] Se state cercando uno specifico pacchetto, font, + programma, ecc., il \TeX{} Catalogue è il luogo dove guardare. È un + enorme catalogo con tutte le voci relative a \TeX. Visitate + \url{http://mirror.ctan.org/help/Catalogue/}. + + +\item [Risorse Web per \TeX{}] La pagina web + \url{http://tug.org/interest.html} ha molti collegamenti relativi a + \TeX, in particolare a numerosi libri, manuali ed articoli su tutti + gli aspetti del sistema. + +\item [archivi di supporto] I due principali forum di supporto sono il + gruppo Usenet \url{news:comp.text.tex} e la mailing list + \email{texhax@tug.org}. I loro archivi raccolgono anni di domande e + risposte per il vostro piacere di ricerca tramite + \url{http://groups.google.com/group/comp.text.tex/topics} e + \url{http://tug.org/mail-archives/texhax}, rispettivamente. E una + generica ricerca su web, ad esempio da \url{http://google.com}, non fa + mai male. + +\item [porre domande] Se non riuscite a trovare una risposta, potete + formulare la vostra domanda su \dirname{comp.text.tex} tramite Google o + un programma per Usenet, oppure tramite posta elettronica su + \email{texhax@tug.org}. Ma prima di scrivere, \emph{leggete} questa voce + delle \acro{FAQ}, al fine di massimizzare le probabilità di ottenere una + risposta utile: + \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + Vale anche la pena nominare il sito della Comunità \LaTeX{} su + \url{http://www.latex-community.org/} e il suo forum + \url{http://www.latex-community.org/forum/} e il \TeX\ StackExchange su + \url{http://tex.stackexchange.com/}. + +\item [supporto \TL{}] Se volete segnalare un bug o avete dei suggerimenti o + commenti sulla distribuzione \TL{}, sull'installazione o la + documentazione, la mailing list è \email{tex-live@tug.org}. Tuttavia, se + la vostra domanda è relativa all'uso di un particolare programma incluso in + \TL{}, scrivete al mantenitore o alla mailing list di quel programma. + Spesso eseguire un programma con l'opzione \code{-{}-help} fornisce un + indirizzo al quale segnalare i bug. + +\end{description} + +L'altra faccia della medaglia è aiutare coloro che hanno domande. Sia +\dirname{comp.text.tex} che \code{texhax} sono aperte a chiunque, quindi +sentevi liberi di unirvi, iniziare a leggere e dare una mano dove potete. + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{Panoramica di \protect\TeX\protect\ Live} +\label{sec:overview-tl} + +Questa sezione descrive i contenuti di \TL{} e della \TK{} di cui è parte. + +\subsection{La \protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tl-coll-dists} + +Il \DVD{} \TK{} include quanto segue: + +\begin{description} + +\item [\TL] Un sistema \TeX{} completo da installare sul proprio disco. La sua + pagina web è \url{http://tug.org/texlive/}. + +\item [Mac\TeX] per \MacOSX, aggiunge a \TL{} un installatore nativo per \MacOSX + ed altre applicazioni Mac. La sua pagina web è \url{http://tug.org/mactex/}. + +\item [pro\TeX{}t] Un miglioramento della distribuzione \MIKTEX\ per + Windows, \ProTeXt\ aggiunge alcuni strumenti supplementari a \MIKTEX\ e + semplifica l'installazione. È interamente indipendente da \TL{} e ha le + proprie istruzioni per l'installazione. La pagina web di \ProTeXt\ è + \url{http://tug.org/protext}. + +\item [CTAN] Un'instantanea dell'archivio \CTAN{} + (\url{http://www.ctan.org}). + +\item [\texttt{texmf-extra}] Una directory con pacchetti aggiuntivi + assortiti. + +\end{description} + +\CTAN{}, \pkgname{protext} e \dirname{texmf-extra} non seguono +necessariamente le stesse condizioni di licenza di \TL{}, per cui fate +attenzione nel ridistribuirli o modificarli. + + +\subsection{Directory primarie di \TL{}} +\label{sec:tld} + +Segue un breve elenco e una descrizione delle directory primarie in +un'installazione di \TL. + +\begin{ttdescription} +\item[bin] I programmi del sistema \TeX{}, raggruppati per piattaforma. +% +\item[readme-*.dir] Una rapida panoramica e collegamenti utili per \TL{}, + in varie lingue, sia in \HTML{} che in formato testuale. +% +\item[source] I sorgenti di tutti i programmi inclusi, comprese le + distribuzioni \TeX{} basate su \Webc{}. +% +\item[texmf] Vedi \dirname{TEXMFMAIN} sotto. +% +\item[texmf-dist] Vedi \dirname{TEXMFDIST} sotto. +% +\item[tlpkg] Script, programmi e dati per l'amministrazione + dell'installazione e per il supporto specifico di Windows. +\end{ttdescription} + +In aggiunta alle precedenti directory, gli script di installazione e i +file \filename{README} (in varie lingue) si trovano nella directory della +distribuzione. + +Per quanto riguarda la documentazione, i collegamenti nel file +\OnCD{doc.html} possono risultare utili. La documentazione per i programmi +(manuali, pagine di manuale, file Info) si trova in \dirname{texmf/doc}. +La documentazione per i pacchetti ed i formati \TeX\ si trova nella +directory \dirname{texmf-dist/doc}. Potete usare il programma +\cmdname{texdoc} per trovare una qualsiasi documentazione, ovunque sia +collocata. + +Questa stessa documentazione di \TL\ si trova in +\dirname{texmf/doc/texlive}, disponibile in varie lingue: + +\begin{itemize*} +\item{Ceco/Slovacco:} \OnCD{texmf/doc/texlive/texlive-cz} +\item{Cinese Semplificato:} \OnCD{texmf/doc/texlive/texlive-zh-cn} +\item{Francese:} \OnCD{texmf/doc/texlive/texlive-fr} +\item{Inglese:} \OnCD{texmf/doc/texlive/texlive-en} +\item{Italiano:} \OnCD{texmf/doc/texlive/texlive-it} +\item{Polacco:} \OnCD{texmf/doc/texlive/texlive-pl} +\item{Russo:} \OnCD{texmf/doc/texlive/texlive-ru} +\item{Serbo:} \OnCD{texmf/doc/texlive/texlive-sr} +\item{Tedesco:} \OnCD{texmf/doc/texlive/texlive-de} +\end{itemize*} + +\subsection{Panoramica dei percorsi predefiniti in texmf} +\label{sec:texmftrees} + +Questa sezione elenca le variabili predefinite che specificano i percorsi +dentro texmf usati dal sistema, il loro scopo e la strutturazione +predefinita di \TL{}. Il comando \texttt{tlmgr~conf} mostra i valori di +queste variabili, così che sia possibile scoprire con facilità come queste +siano riferite alle specifiche directory nella propria installazione. + +Tutti i percorsi, inclusi quelli personali, dovrebbero seguire la Struttura +delle Directory di \TeX\ (\TeX\ Directory Structure, \TDS, +\url{http://tug.org/tds}) con tutta la sua miriade di sotto directory, +altrimenti i file potrebbero non essere trovati. La sezione +\ref{sec:local-personal-macros} (\p.\pageref{sec:local-personal-macros}) +descrive ciò con maggior dettaglio. + +\begin{ttdescription} +\item [TEXMFMAIN] Il percorso che contiene le parti vitali del sistema, + come i file di configurazione, gli script di supporto e la + documentazione dei programmi. +\item [TEXMFDIST] Il percorso che contiene il gruppo principale di + pacchetti di macro, di font, ecc. +\item [TEXMFLOCAL] Il percorso che un amministratore può usare per + l'installazione di macro, di font, ecc., aggiuntivi o aggiornati nel + proprio sistema, in modo che siano disponibili per tutti gli utenti. +\item [TEXMFHOME] Il percorso che ciascun utente può usare per la propria + installazione personale di macro, font, ecc., aggiuntivi o aggiornati. + L'espansione di questa variabile si adatta dinamicamente per ciascun + utente alla directory individuale dell'utente stesso. +\item [TEXMFCONFIG] Il percorso relativo a ciascun utente usato dai + programmi \verb+texconfig+, \verb+updmap+ e \verb+fmtutil+ per + memorizzare i dati di configurazione modificati. +\item [TEXMFSYSCONFIG] Il percorso relativo all'intero sistema usato dai + programmi \verb+texconfig-sys+, \verb+updmap-sys+ e \verb+fmtutil-sys+ + per memorizzare i dati di configurazione modificati. +\item [TEXMFVAR] Il percorso relativo a ciascun utente usato da + \verb+texconfig+, \verb+updmap+ e \verb+fmtutil+ per memorizzare i dati + generati durante l'esecuzione, come i file dei formati e le mappe per i + font. +\item [TEXMFSYSVAR] Il percorso relativo all'intero sistema usato da + \verb+texconfig-sys+, \verb+updmap-sys+, \verb+fmtutil-sys+ ed anche da + \verb+tlmgr+ per memorizzare i dati generati durante l'esecuzione, come + i file dei formati e le mappe per i font. +\item [TEXMFCACHE] I percorsi usati da \ConTeXt\ Mk\acro{IV} per memorizzare + i dati generati durante l'esecuzione. +\end{ttdescription} + +\noindent +La strutturazione predefinita è: +\begin{description} + \item[percorso del sistema] può contenere diverse edizioni di \TL{}: + \begin{ttdescription} + \item[2011] Un'edizione precedente. + \item[2012] L'attuale edizione. + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] Esebuibili per \GNU/Linux + \item [...] + \item [universal-darwin] Eseguibili per \MacOSX + \item [win32] Eseguibili per Windows + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] This is \envname{TEXMFMAIN}. + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var \ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, pensato per essere mantenuto + tra diverse edizioni. + \end{ttdescription} + \item[home dell'utente] (\texttt{\$HOME} o \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2011] Dati privati generati e di configurazione per + un'edizione precedente. + \item[.texlive2012] Dati privati generati e di configurazione per + l'attuale edizione. + \begin{ttdescription} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR}, \envname{TEXMFCACHE} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} Macro personali, ecc. + \end{ttdescription} +\end{description} + + +\subsection{Estensioni di \protect\TeX} +\label{sec:tex-extensions} + +Lo sviluppo dell'originale \TeX{} di Knuth è congelato, se si escludono +rare correzioni di bug. È ancora presente in \TL\ come \prog{tex} e vi +rimarrà nel prossimo futuro. \TL{} contiene diverse versioni estese di +\TeX: + +\begin{description} + +\item [\eTeX] aggiunge un insieme di nuove primitive \label{text:etex} +(riguardanti l'espansione delle macro, la scansione dei caratteri, le +classi di segnaposti, caratteristiche di debug aggiuntive ed altro ancora) +e le estensioni \TeXXeT{} per la scrittura bidirezionale. Nella modalità +di base, \eTeX{} è compatibile al 100\% con il \TeX{} ordinario. +Consultate \OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] parte dalle estensioni di \eTeX, aggiunge il supporto per +la generazione di file \acro{PDF} oltre che dei \dvi{} e molte estensioni +che non sono legate alla generazione dell'output. Questo programma è +invocato dalla maggior parte dei formati, come \prog{etex}, \prog{latex}, +\prog{pdflatex}. Il suo sito web è \url{http://www.pdftex.org/}. +Consultate \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf} per il manuale +e \OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex} per gli +esempi d'uso di alcune delle sue caratteristiche. + +\item [Lua\TeX] è il successore prescelto di pdf\TeX ed è quasi del tutto +(ma non completamente) compatibile con i predecessori. È anche destinato a +sostituire le funzioni di Aleph (vedi sotto), per quanto non sia stata +predisposta la compatibilità tecnica. L'interprete Lua incorportato +(\url{http://www.lua.org/}) permette soluzioni eleganti a molti problemi +spinosi di \TeX. Quando è invocato come \filename{texlua}, si comporta +come un interprete Lua autonomo ed è già usato in questo modo all'interno +di \TL. Il suo sito web è \url{http://www.luatex.org} e il manuale di +riferimento è \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [\XeTeX] aggiunge il supporto per l'input in Unicode e per i font +OpenType e di sistema, implementato usando librerie di terze parti +standard. Visitate \url{http://tug.org/xetex}. + +\item [\OMEGA\ (Omega)] è basato sull'Unicode (caratteri a 16 bit) e +dunque consente di lavorare con quasi tutti gli alfabeti del mondo +contemporaneamente. Supporta anche i cosiddetti ``\OMEGA{} Translation +Process'' (\acro{OTP}, Processi di Traduzione Omega), per compiere +trasformazioni complesse su input arbitrari. Omega non è più incluso in +\TL{} come programma separato; soltanto Aleph è fornito. + +\item [Aleph] combina le estensioni \OMEGA\ e \eTeX. Consultate +\OnCD{texmf-dist/doc/aleph/base}. + +\end{description} + + +\subsection{Altri rilevanti programmi in \protect\TL} + +Seguono alcuni altri programmi di uso comune inclusi in \TL{}: + +\begin{cmddescription} + +\item [bibtex, bibtex8] supporto per la bibliografia. + +\item [makeindex, xindy] supporto per gli indici. + +\item [dvips] converte i \dvi{} in \PS{}. + +\item [xdvi] programma di anteprima dei \dvi{} per l'X Window System. + +\item [dvilj] convertitore di \dvi{} per la famiglia di stampanti HP +LaserJet. + +\item [dviconcat, dviselect] tagliano ed incollano le pagine contenute nei +file \dvi{}. + +\item [dvipdfmx] converte i \dvi{} in \acro{PDF}, un approccio alternativo +a pdf\TeX\ (citato in precedenza). + +\item [psselect, psnup, \ldots] programmi di manipolazione dei \PS{}. + +\item [pdfjam, pdfjoin, \ldots] programmi di manipolazione dei \acro{PDF}. + +\item [texexec, texmfstart] processore Con\TeX{}t e \acro{PDF}. + +\item [tex4ht] convertitore da \TeX{} a \acro{HTML} (e a \acro{XML} ed +altro ancora). + +\end{cmddescription} + + +\subsection{Font in \protect\TL} +\label{sec:tl-fonts} + +\TL{} è fornito con molti caratteri tipografici scalabili di alta qualità. +Visita \url{http://tug.org/fonts} e +\OnCD{texmf-dist/doc/fonts/free-math-font-survey}. + + +\htmlanchor{installation} +\section{Installazione} +\label{sec:install} + +\subsection{Avviare l'installatore} +\label{sec:inst-start} + +Per cominciare, procuratevi il \DVD{} \TK{} oppure scaricate +l'installatore di rete di \TL{} ed individuate il programma di +installazione: \filename{install-tl} per Unix, \filename{install-tl.bat} +per Windows. Consulate \url{http://tug.org/texlive/acquire.html} per +maggiori informazioni ed altri metodi per ottenere il software. + +\begin{description} +\item [Installatore di rete:] Scaricatelo da \CTAN, dal percorso +\dirname{systems/texlive/tlnet}; l'indirizzo +\url{http://mirror.ctan.org/systems/texlive/tlnet} reindirizzerà +automaticamente ad un mirror aggiornato vicino. Potete scaricare sia +\filename{install-tl.zip} che può essere usato sotto Unix e Windows, sia +il notevolmente più piccolo \filename{install-unx.tar.gz} solo per Unix. +Dopo averlo decompresso, \filename{install-tl} e \filename{install-tl.bat} +si troveranno nella sotto directory \dirname{install-tl}. + +\item [\DVD{} \TeX{} Collection:] aprite la sotto directory +\dirname{texlive} del \DVD. Sotto Windows, il programma di installazione +dovrebbe partire automaticamente quando inserite il \DVD. Potete ottenere il +\DVD\ diventando membri di un gruppo utenti \TeX\ (caldamente consigliato, +\url{http://tug.org/usergroups.html}) oppure acquistandolo separatamente +(\url{http://tug.org/store}) o ancora masterizzandolo a partire +dall'immagine \ISO. Sulla maggior parte dei sistemi potete anche montare +direttamente l'\ISO. Dopo l'installazione dal \DVD\ o dall'immagine \ISO, se +volete ottenere gli aggiornamenti da Internet, consulate +\ref{sec:dvd-install-net-updates}. + +\end{description} + +Indipendentemente dall'origine, viene eseguito lo stesso programma di +installazione. La differenza più evidente tra i due è che con l'installatore +di rete riceverete i pacchetti che sono disponibili al momento. Questo +contrasta con le immagini \DVD\ e \ISO, che non vengono aggiornate tra le +principali versioni pubbliche. + +\noindent +Le sezioni seguenti spiegano l'avvio dell'installazione in maggiore +dettaglio. + +\subsubsection{Unix} + +Di seguito, \texttt{>} denota il prompt della shell; l'input dell'utente è +in \Ucom{\texttt{grassetto}}. +Il programma \filename{install-tl} è uno script Perl. Il modo più semplice +per avviarlo su un sistema compatibile Unix è il seguente: +\begin{alltt} +> \Ucom{cd /percorso/verso/il/programma} +> \Ucom{perl install-tl} +\end{alltt} +In alternativa potete invocare +\Ucom{perl /percorso/verso/il/programma/install-lt}, oppure +\Ucom{./install-tl} se avete i permessi di esecuzione, ecc.; non ripeteremo +tutte queste varianti. Potreste dover ingrandire la finestra di terminale +affinché mostri l'intera schermata dell'installatore testuale +(Figura~\ref{fig:text-main}). + +Per eseguire l'installazione nella modalità \GUI\ avanzata +(figura~\ref{fig:gui-main}) avete bisogno del modulo \dirname{Perl/TK}) +compilato con il supporto per \acro{XFT}, che avviene normalmente con +\GNU/Linux, ma non necessariamente con altri sistemi. Detto questo, potete +eseguire: +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +Per un elenco completo delle diverse opzioni: +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{Attenzione riguardo i permessi Unix:} La tua \code{umask} nel +momento dell'installazione sarà rispettata dall'installatore di \TL{}. +Quindi se vuoi che l'installazione sia usabile da altri utenti oltre che +te, sii sicuro che le tue impostazioni siano permissive a sufficienza, per +esempio, \code{umask 002}. Per ulteriori informazioni riguardo +\code{umask}, consulta la documentazione del tuo sistema. + +\textbf{Considerazioni speciali per Cygwin:} Diversamente da altri sistemi +Unix-compatibili, Cygwin non è preimpostato per includere tutti i +programmi di cui l'installatore di \TL{} ha bisogno. Consulta la +sezione~\ref{sec:cygwin} per i dettagli. + + +\subsubsection{MacOSX} + +Come accennato nella sezione~\ref{sec:tl-coll-dists}, abbiamo preparato +una distribuzione separata per \MacOSX{} chiamata Mac\TeX\ +(\url{http://tug.org/mactex}). Su \MacOSX{} raccomandiamo di usare +l'installatore nativo di Mac\TeX\ al posto dell'installatore di \TL\ in +quanto quello nativo esegue alcuni aggiustamenti specifici per il Mac, in +particolare per consentire con semplicità il passaggio tra le varie +distribuzioni \TeX\ per \MacOSX\ (Mac\TeX, Fink, MacPorts, \ldots). + +Mac\TeX\ è strettamente basato su \TL\ e le rispettive strutture delle +directory sono esattamente le stesse. Il primo aggiunge alcune ulteriori +cartelle con documentazione e applicazioni specifici per il Mac. + + +\subsubsection{Windows} + +Se state usando l'installatore di rete oppure se l'installatore su \DVD\ +non si avvia automaticamente, fate doppio click su +\filename{install-tl.bat}. Per ottenere maggiori opzioni di +configurazione, come la selezione di specifiche collezioni di pacchetti, +lanciate \filename{install-tl-advanced.bat}. + +Potete avviare l'installatore anche dal prompt dei comandi. Qui sotto, +\texttt{>} denota il prompt; l'input dell'utente è in +\Ucom{\texttt{grassetto}}. Se vi trovate nella cartella dell'installatore, +eseguite semplicemente: +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} + +In aternativa potete lanciarlo con un percorso assoluto, come: +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +per il \DVD\ \TK, supponendo che \dirname{D:} sia il lettore \DVD. La +figura~\ref{fig:wizard-w32} mostra l'installazione guidata, che è quella +preimpostata per Windows. + +Per installare in modalità testuale, usate: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +Per un elenco completo delle diverse opzioni: +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +%%% TODO +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2012 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + binary systems: 1 out of 19 + + Installation scheme (scheme-full) + 84 collections out of 85, disk space required: 3091 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + options: + [ ] use letter size instead of A4 by default + ... + + set up for portable installation + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{Schermata principale dell'installatore testuale + (\GNU/Linux)}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth,trim=10 4 0 20,clip} +\caption{Schermata dell'installatore grafico avanzato + (\GNU/Linux)}\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth,trim=0 4 0 0,clip} +\caption{Schermata dell'installazione guidata + (Windows)}\label{fig:wizard-w32} +\end{figure} + + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +L'installatore di \TL{} supporta soltanto Cygwin 1.7. +Prima di iniziare l'installazione, usate il programma \filename{setup.exe} +di Cygwin per installare i pacchetti \filename{perl} e \filename{wget}, a +meno che non lo abbiate già fatto. I seguenti pacchetti aggiuntivi sono +raccomandati: +\begin{itemize*} +\item \filename{fontconfig} [richiesto da \XeTeX] +\item \filename{ghostscript} [richiesto da vari programmi] +\item \filename{libXaw7} [richiesto da xdvi] +\item \filename{ncurses} [fornisce il comando 'clear' usato + dall'installatore] +\end{itemize*} + +\subsubsection{L'installatore testuale} + +La figura~\ref{fig:text-main} mostra la schermata principale della +modalità testuale sotto Unix. L'installatore testuale è quello +predefinito sotto Unix. + +Questo è soltanto un installatore a riga di comando; non c'è alcun +supporto per il movimento del cursore di inserimento. Ad esempio, non +potete muovervi tra le caselle di spunta o i campi di inserimento. +Voi semplicemente digitate qualcosa al prompt (MAIUSCOLE e minuscole sono +differenti), premete il tasto Invio e l'intera schermata del terminale +sarà aggiornata, con il contenuto alterato. + +L'interfaccia dell'installatore testuale è così primitiva per una ragione: +è progettata per funzionare sul maggior numero di piattaforme possibile, +anche con una versione minimale di Perl. + +\subsubsection{L'installatore grafico avanzato} + +La figura~\ref{fig:gui-main} mostra l'installatore grafico avanzato sotto +\GNU/Linux. Al di là dell'uso di pulsanti e menu, questo installatore non +differisce di molto da quello testuale. + +Questa modalità può essere invocata esplicitamente tramite +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} + + +\subsubsection{La semplice installazione guidata} + +Sotto Windows, l'azione predefinita è di eseguire il più semplice metodo +di installazione che potessimo escogitare, chiamato ``installazione +guidata''. Questa installa tutto e praticamente non pone domande. Se +volete personalizzare la vostra installazione, dovete lanciare uno degli +altri installatori. + +Questa modalità può essere invocata esplicitamente con +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + + +\subsection{Eseguire l'installatore} +\label{sec:runinstall} + +L'installatore è pensato per essere perlopiù autoesplicativo, ma seguono +alcune note riguardo varie opzioni e sottomenu. + +\subsubsection{Menu delle architetture (solo Unix)} +\label{sec:binary} + +%TODO figura! +\begin{figure}[tb] +\begin{boxedverbatim} +Available platforms: +=============================================================================== + a [ ] alpha-linux DEC Alpha with GNU/Linux + b [ ] amd64-freebsd x86_64 with FreeBSD + c [ ] amd64-kfreebsd x86_64 with GNU/kFreeBSD + d [ ] armel-linux ARM with GNU/Linux + e [ ] i386-cygwin Intel x86 with Cygwin + f [ ] i386-freebsd Intel x86 with FreeBSD + g [ ] i386-kfreebsd Intel x86 with GNU/FreeBSD + h [X] i386-linux Intel x86 with GNU/Linux + i [ ] i386-solaris Intel x86 with Solaris + j [ ] mips-irix SGI IRIX + k [ ] mipsel-linux mipsel with Linux + l [ ] powerpc-aix PowerPC with AIX + m [ ] powerpc-linux PowerPC 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 +\end{boxedverbatim} +\caption{Menu delle architetture}\label{fig:bin-text} +\end{figure} + +La figura~\ref{fig:bin-text} mostra il menu delle architetture in modalità +testuale. Di base, saranno installati solo gli eseguibili per la propria +piattaforma attuale. Da questo menu si può selezionare l'installazione +dei binari anche per altre piattaforme. Questa opzione è utile se si +condivide un'installazione di \TeX\ in una rete di macchine eterogenee, +oppure per una macchina con due sistemi operativi. + +\subsubsection{Selezionare cosa deve essere installato} +\label{sec:components} + +% TODO +\begin{figure}[tbh] +\begin{boxedverbatim} +Select scheme: +=============================================================================== + a [X] full scheme (everything) + b [ ] medium scheme (small + more packages and languages) + c [ ] small scheme (basic + xetex, metapost, a few languages) + d [ ] basic scheme (plain and latex) + e [ ] minimal scheme (plain only) + f [ ] ConTeXt scheme + g [ ] GUST TeX Live scheme + h [ ] teTeX scheme (more than medium, but nowhere near full) + i [ ] XML scheme + j [ ] custom selection of collections +\end{boxedverbatim} +\caption{Menu degli schemi}\label{fig:scheme-text} +\end{figure} + +La figura~\ref{fig:scheme-text} mostra il menu degli schemi di \TL; da qui +potete scegliere uno ``schema'', che è un insieme di collezioni di pacchetti. +Questo è lo schema raccomandato, ma potete anche scegliere \optname{basic} +per un sistema piccolo, \optname{minimal} per scopi di prova e +\optname{medium} o \optname{teTeX} per una via di mezzo. Ci sono anche +ulteriori schemi specializzati e specifici per particolari paesi. + +\begin{figure}[tbh] +\tlpng{stdcoll}{.7\linewidth} +\caption{Menu delle collezioni}\label{fig:collections-gui} +\end{figure} + +Potete rifinire la vostra scelta dello schema con i menu ``Collezioni di +base'' e ``Collezioni di lingue'' (figura~\ref{fig:collections-gui}, +mostrati, per cambiare, in modalità \GUI). + +Le collezioni stanno ad un livello di dettaglio maggiore rispetto agli +schemi \Dash\ in pratica, uno schema consiste in varie collezioni, una +collezione consiste in uno o più pacchetti e un pacchetto (la più piccola +forma di raggruppamento in \TL) contiene i file con le macro \TeX, i font +e così via. + +Se desiderate un controllo maggiore di quello fornito dal menu delle +collezioni, potete usare il programma \TeX\ Live Manager (\prog{tlmgr}) +dopo l'installazione (cfr. la sezione~\ref{sec:tlmgr}); tramite tale +programma, potete controllare l'installazione al livello di dettaglio dei +singoli pacchetti. + +\subsubsection{Directory} +\label{sec:directories} + +La strutturazione predefinita è descritta nella +sezione~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. La posizione +predefinita di \dirname{TEXDIR} è \dirname{/usr/local/texlive/2012} sotto +Unix e |%SystemDrive%\texlive\2012| sotto Windows. + +La ragione principale per cambiare il valore preimpostato si ha quando non +avete i permessi di scrittura per tale percorso. Non dovete essere root o +l'amministratore per installare \TL, ma avete bisogno dell'accesso in +scrittura sulla directory di destinazione. + +Una ragionevole scelta alternativa è una directory all'interno della +vostra home, soprattutto se sarete gli unici utilizzatori. Usate ``|~|'' +per specificare la vostra home, come ad esempio in ``|~/texlive/2012|''. + +Raccomandiamo di includere l'anno nel percorso, così da poter tenere +diverse edizioni di \TL{} fianco a fianco (potete usare un collegamento +simbolico con il nome indipendente dalla edizione, come +\dirname{/usr/local/texlive-cur}, da aggiornare dopo aver provato la nuova +edizione). + +Modificare \dirname{TEXDIR} durante l'installazione causerà anche la +modifica di \dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} e +\dirname{TEXMFSYSCONFIG}. + +\dirname{TEXMFHOME} è la posizione raccomandata per le macro e i pacchetti +personali. Il suo valore predefinito è |~/texmf|. A differenza di +\dirname{TEXDIR}, qui il carattere |~| viene mantenuto all'interno dei +file di configurazione creati, dato che è utile che si riferisca alla home +di ciascuna persona che esegue \TeX. Si espande in \dirname{$HOME} sotto +Unix e \verb|%USERPROFILE%| sotto Windows. Speciale nota ridondante: +\envname{TEXMFHOME}, come tutti gli altri percorsi, deve essere organizzata +secondo il \TDS, o i file potrebbero non essere trovati. %stopzone + +\dirname{TEXMFVAR} è la posizione in cui vengono memorizzati la maggior +parte dei dati generati durante l'esecuzione specifici per ciascun utente. +\dirname{TEXMFCACHE} è usato per lo stesso scopo da \ConTeXt\ Mk\acro{IV} +(consultate la sezione~\ref{sec:context-mkiv}, +\p.\pageref{sec:context-mkiv}). + + +\subsubsection{Opzioni} +\label{sec:options} + +% TODO FIGURA!!! +\begin{figure}[tbh] +\begin{boxedverbatim} +Options setup: +=============================================================================== +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: + after installation, get package updates from CTAN: [X] +\end{boxedverbatim} +\caption{Menu delle opzioni (Unix)}\label{fig:options-text} +\end{figure} + +La figura~\ref{fig:options-text} mostra il menu delle opzioni in modalità +testuale. Ulteriori informazioni su ciascuna opzione: + +\begin{description} +\item[Usa come predefinito il formato di pagina lettera al posto dell'A4:] + Questa è la selezione del formato di carta predefinito. Ovviamente, se + lo si desidera, si potrà e si dovrebbe specificare il formato della + carta in ogni singolo documento. + +\item[execution of restricted list of programs:] A partire da \TL\ 2010, + è consentita l'esecuzione da parte di \TeX\ di pochi programmo esterni. + La (molto breve) lista di questi programmi è data nel file + \filename{texmf.cnf}. Consultate le novità 2010 + (sezione~\ref{sec:2010news}) per maggiori dettagli. + +\item[Crea i file di formato:] Per quanto i file di formato non + strettamente necessari richiedano tempo per essere generati e spazio su + disco per essere memorizzati, è comunque raccomandato di lasciare questa + opzione attiva: se non lo fate, allora i file di formato saranno + generati, quando necessari, all'interno delle directory private + \dirname{TEXMFVAR} di ciascun utente. In tali posizioni, non saranno + aggiornati automaticamente se lo sono (ad esempio) gli eseguibili o i + modelli di sillabazione nell'installazione, e così potreste trovarvi ad + avere formati incompatibili. + +\item[Installa \ldots\ per font e macro:] Queste opzioni consentono di + omettere lo scaricamento e l'installazione della documentazione e dei + file sorgenti presenti nella maggior parte dei pacchetti. Non sono + raccomandate. + +\item[Crea i collegamenti nelle directory di sistema:] Questa opzione + (solo Unix) scavalca la necessità di modificare le variabili di ambiente. + Senza di essa, le directory di \TL{} devono solitamente essere aggiunte + alle variabili \envname{PATH}, \envname{MANPATH} e \envname{INFOPATH}. + Avete bisogno dei permessi di scrittura nelle directory di destinazione. + Suggeriamo vivamente di \emph{non} usare questa opzione per + sovrascrivere un'installazione \TeX\ fornita con il vostro sistema. + Questa opzione è pensata principalmente per accedere al sistema \TeX\ + tramite directory già note agli utenti, come \dirname{/usr/local/bin}, + che non contengono già alcun file di \TeX. + +\item[after installation \ldots\ \CTAN:] Quando si esegue l'installazione + da \DVD, questa opzione è abilitata di default, dato che di solito si + vuole prendere ogni successivo aggiornamento di pacchetti dall'area + \CTAN\ che è aggiornata durante l'anno. L'unica ragione plausibile per + disabilitarla è quando si vuole installare solo un sottoinsieme dal \DVD + e si ha intenzione di estendere l'installazione successivamente. In + ogni caso, l'archivio dei pacchetti per l'installatore e per gli + aggiornamenti successivi all'installazione può essere impostato in modo + indipendente secondo le necessità; consultate le sezioni~\ref{sec:location} + e \ref{sec:dvd-install-net-updates}. +\end{description} + +Quando tutte le impostazioni sono come le desiderate, potete digitare +``I'' per avviare il processo di installazione. Quando questo è completo, +passate alla sezione~\ref{sec:postinstall} per leggere cos'altro dovete +fare, se ce n'è bisogno. + + +\subsection{Opzioni della riga di comando di install-tl} +\label{sec:cmdline} + +Digitate +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +per ottenere un elenco delle opzioni della riga di comando. Sia |-| che +|--| possono essere usati per introdurre i nomi delle opzioni. Ecco le più +comuni: + +\begin{ttdescription} +\item[-gui] Se possibile, usa l'installatore grafico. Questa opzione + richiede il modulo Perl/Tk + (\url{http://tug.org/texlive/distro.html#perltk}) compilato con il + supporto per \acro{XFT}; se Perl/Tk non è disponibile, l'installazione + prosegue in modalità testuale. + +\item[-no-gui] Costringe all'uso dell'installatore testuale, anche sotto + Windows. + +\item[-lang {\sl LL}] Specifica la lingua dell'interfaccia + dell'installatore sotto forma di codice standard (di solito a due + lettere). L'installatore cerca di determinare automaticamente la lingua + corretta, ma se fallisce o se la lingua corretta non è disponibile, + allora usa l'inglese come ripiego. Lanciate \code{install-tl --help} + per la lista delle lingue disponibili. + +\htmlanchor{opt-in-place} +\item[-in-place] Se avete già una copia di \TL{}, anche ottenuta tramite + rsync o svn (consultate \url{http://tug.org/texlive/acquire-mirror.html}), + allora questa opzione userà ciò che avete ottenuto, così com'è, ed + eseguirà solo le necessarie procedure di post installazione. Siete + avvisati che il file \filename{tlpkg/texlive.tlpdb} potrebbe venire + sovrascritto; salvarne una copia è vostra responsabilità. Inoltre, la + rimozione dei pacchetti deve essere eseguita manualmente. Non usate questa + opzione a meno che non sappiate cosa state facendo. Questa opzione non può + essere attivata dall'interfaccia dell'installatore. + +\item[-portable] Installa per un uso portatile su una chiavetta \USB{}. + Questa oprione è selezionabile dall'installatore testuale con il comando + \code{V} e dall'installatore grafico. Consultate la + sezione~\ref{sec:portable-tl}. + +\item[-profile {\sl file}] Carica il profilo di installazione \var{file} ed + esegue l'installazione senza interazione con l'utente. Il programma di + installazione scrive sempre un file \filename{texlive.profile} nella sotto + directory \dirname{tlpkg} della vostra installazione. Quel file può essere + passato come argomento per ripetere esattamente la stessa installazione su + un sistema differente. In alternativa, potete usare un profilo + personalizzato, creato facilmente partendo da uno generato automaticamente + e modificandone i valori, oppure potete usare un file vuoto, che prenderà + come valori tutti quelli predefiniti. + +\item [-repository {\sl url-o-directory}] Specifica l'archivio dei + pacchetti da cui installare; vedi più avanti. +\end{ttdescription} + + +\subsubsection{L'opzione \optname{-repository}} +\label{sec:location} + +L'archivio dei pacchetti di rete predefinito è uno dei mirror di \CTAN{} +scelto automaticamente tramite \url{http://mirror.ctan.org}. + +Per rimpiazzare questa scelta, potete specificare un url che comincia per +\texttt{ftp:}, \texttt{http:} o \texttt{file:/}, oppure il semplice nome +di una directory (quando specificate un indirizzo \texttt{http:} o +\texttt{ftp:}, l'eventuale carattere finale ``\texttt{/}'' e l'eventuale +``\texttt{/tlpkg}'' conclusivo saranno ignorati). + +Per esempio, potete scegliere uno specifico mirror di \CTAN\ con qualcosa +del tipo: +\url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +sostituendo a |ctan.example.org/tex-archive| il vero nome del sito e il +percorso che ospita \CTAN. L'elenco dei mirror di \CTAN\ si trova alla +pagina \url{http://ctan.org/mirrors}. + +Se il valore specificato è locale (sia tramite percorso che tramite un url +\texttt{file:/}), saranno usati i file compressi contenuti in una sotto +directory \dirname{archive} del percorso (anche se sono disponibili anche +file non compressi). + + +\subsection{Azioni successive all'installazione} +\label{sec:postinstall} + +Potrebbero essere necessarie alcune azioni successivie all'installazione. + + +\subsubsection{Variabili d'ambiente per Unix} +\label{sec:env} + +Se avete deciso di creare i collegamenti simbolici nelle directory standard +(descritto nella sezione~\ref{sec:options}), allora non c'è bisogno di +modificare le variabili d'ambiente. Altrimenti, nei sistemi Unix, la +directory degli eseguibili per la vostra piattaforma deve essere aggiunta al +percorso di ricerca (sotto Windows, è l'installatore ad occuparsene). + +Ogni piattaforma supportata ha la propria sotto directory all'interno di +\dirname{TEXDIR/bin}. Consultate la figura~\ref{fig:bin-text} per la lista +delle sotto directory e delle corrispondenti piattaforme. + +Facoltativamente potete anche aggiungere le directory della documentazione +man e Info ai propri rispettivi percorsi di ricerca, se volete che gli +strumenti di sistema la trovino. Le pagine di manuale potrebbero essere +trovate magicamente dopo l'aggiunta al \envname{PATH}. + +Per le shell compatibili con la Bourne, come \prog{bash}, e usando +\GNU/Linux per Intel x86 e le directory predefinite come esempio, il file +da modificare dovrebbe essere \filename{$HOME/.profile} %stopzone +(o un qualunque altro file aperto da \filename{.profile}), e le linee da +aggiungere sarebbero simili alle seguenti: + +\begin{sverbatim} +PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} +%stopzone + +Per csh o tcsh, il file da modificare tipicamente è +\filename{$HOME/.cshrc} e le linee da aggiungere sarebbero del +tipo: + +\begin{sverbatim} +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{sverbatim} + +Se già avete delle impostazioni del genere in uno dei file citati, +naturalmente dovete semplicemente unirvi le directory di \TL\ come è più +opportuno. + + +\subsubsection{Variabili d'ambiente: configurazione globale} +\label{sec:envglobal} + +Se volete che questi cambiamenti siano globali oppure che si applichino a +ciascun nuovo utente aggiunto nel sistema, allora dovete cavarvela da +soli; c'è semplicemente troppa varietà tra i diversi sistemi nel come e +nel dove queste cose siano configurate. + +I nostri due suggerimenti sono: 1)~potete controllare il file +\filename{/etc/manpath.config} e, se esiste, aggiungere linee come + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man +\end{sverbatim} + +E 2)~verificate la presenza di un file \filename{/etc/environment} che +potrebbe definire il percorso di ricerca ed altre variabili di ambiente +predefinite. + +In ciascuna directory contenente eseguibili (per Unix), noi creiamo anche +un collegamento simbolico chiamato \code{man} alla directory +\dirname{texmf/doc/man}. Alcuni programmi \code{man}, come quello di +\MacOSX, lo individueranno automaticamente, ovviando alla necessità di +qualunque configurazione per le pagine di manuale. + + +\subsubsection{Aggiornamenti da Internet dopo l'installazione del \DVD} +\label{sec:dvd-install-net-updates} + +Se avete installato \TL\ dal \DVD\ e successivamente volete ottenere gli +aggiornamenti da Internet, dovete eseguire questo comando---\emph{dopo} aver +aggiornato il vostro percorso di ricerca (come descritto nella sezione +precedente): + +\begin{alltt} +> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +Questo dice a \cmdname{tlmgr} di usare un mirror di \CTAN\ nelle vicinanze +per gli aggiornamenti futuri. È l'azione predefinita quando si installa dal +\DVD, tramite l'opzione descritta nella sezione~\ref{sec:options}. + +Se ci sono problemi con la selezione automatica di un mirror, potete +specificarne uno in particolare dall'elenco alla pagina +\url{http://ctan.org/mirrors}. Usate il percorso esatto alla sotto directory +\dirname{tlnet} su quel mirror, come mostrato in precedenza. + + +\htmlanchor{xetexfontconfig} % manteniamo il link storico funzionante +\htmlanchor{sysfontconfig} +\subsubsection{Configurazione dei font di sistema per \XeTeX\ e Lua\TeX} +\label{sec:font-conf-sys} + +\XeTeX\ e Lua\TeX\ possono usare qualsiasi font installato nel sistema, +non solo quelli nelle directory di \TeX. Fanno questo tramite metodi +correlati, ma non identici. + +Su Windows, i font distribuiti con \TL\ sono resi disponibili a \XeTeX\ +automaticamente. Ma se avete installato il pacchetto \filename{xetex} su +un sistema Unix, dovete configurare il vostro sistema in modo che sia +capace di trovare i font distribuiti con \TL\ tramite il meccanismo di +ricerca dei nomi di sistema e non semplicemente la ricerca di nomi di +file. + +Per facilitare il compito, quando il pacchetto \pkgname{xetex} è +installato (sia durante l'installazione iniziale che in seguito), viene +creato il file di configurazione necessario in +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. + +Per impostare i font di \TL{} per l'uso nell'intero sistema (assumendo che +abbiate gli opportuni privilegi), procedete come segue: +\begin{enumerate*} +\item Copiate il file \filename{texlive-fontconfig.conf} in + \dirname{/etc/fonts/conf.d/09-texlive.conf}. + +\item Eseguite \Ucom{fc-cache -fsv}. +\end{enumerate*} + +Se non avete privilegi sufficienti per completare i passi precedenti, +p se volete semplicemente rendere disponibili i font di \TL{} ad un +solo utente, fate quello che segue: +\begin{enumerate*} +\item Copiate il file \filename{texlive-fontconfig.conf} in + \filename{~/.fonts.conf}, dove \filename{~} è la vostra directory di + home. + +\item Eseguite \Ucom{fc-cache -fv}. +\end{enumerate*} + +Potete eseguire \code{fc-list} per vedere i nomi dei font di sistema. +L'incantesimo \code{fc-list : family style file spacing} (dove tutti gli +argomenti sono esattamente come mostrati) generalmente fornisce delle +informazioni interessanti. + + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context-mkiv} + +Sia il ``vecchio'' \ConTeXt{} (Mark \acro{II}) che il ``nuovo'' \ConTeXt{} +(Mark \acro{IV}) dovrebbero funzionare così come sono dopo l'installazione +di \TL{} e non dovrebbero richiedere alcuna attenzione particolare finché +restate fedeli a \verb+tlmgr+ per gli aggiornamenti. + +Comunque, dato che \ConTeXt{} Mk\acro{IV} non usa la libreria kpathsea, +sarà richiesta un po' di configurazione ogni qual volta installate nuovi +file manualmente (senza usare \verb+tlmgr+). Dopo ogni installazione del +genere, ogni utente di Mk\acro{IV} deve eseguire: +\begin{sverbatim} +context --generate +\end{sverbatim} +per aggiornare i dati della cache di \ConTeXt{} sul disco. +I file risultanti sono memorizzati dentro \code{TEXMFCACHE} il cui valore +predefinito in \TL\ è \verb+TEXMFSYSVAR;TEXMFVAR+. + +\ConTeXt\ Mk\acro{IV} leggerà da tutti i percorsi menzionati in +\verb+TEXMFCACHE+ e scriverà nel primo percorso che sia scrivibile. Durante +la lettura, in caso di dati di cache duplicati avrà la precedenza l'ultima +corrispondenza trovata. + +Per ulteriori informazioni, consultate le pagine +\url{http://wiki.contextgarden.net/Running_Mark_IV}. + + +\subsubsection{Integrare macro locali e personali} +\label{sec:local-personal-macros} + +Questa questione è già stata citata implicitamente nella +sezione~\ref{sec:texmftrees}: +\dirname{TEXMFLOCAL} (\dirname{/usr/local/texlive/texmf-local} o +\verb|%SystemDrive%\texlive\texmf-local| su Windows, di default) è pensato +per i font e le macro locali, ma disponibili per l'intero sistema; mentre +\dirname{TEXMFHOME} (\dirname{$HOME/texmf} o \verb|%USERPROFILE%\texmf|, +come predefiniti) è per le macro e i font personali.%stopzone +Queste directory sono pensare per rimanere fisse da un'edizione all'altra +e il loro contenuto è visto automaticamente da una nuova versione di \TL. +Quindi, è meglio trattenersi dal modificare la definizione di +\dirname{TEXMFLOCAL} in modo che punti ad una directory troppo diversa da +quella principale di \TL, oppure potreste doverla modificare manualmente +nelle future edizioni. + +In entrambe le posizioni, i file dovrebbero essere posti ognuno nella +propria sotto directory secondo la Struttura delle Directory di \TeX\ +(\TDS); visitate \url{http://tug.org/tds} o consultate +\filename{texmf/web2c/texmf.cnf}. Ad esempio, il file di una +classe o di un pacchetto \LaTeX{} andrebbero posizionati in +\dirname{TEXMFLOCAL/tex/latex} o in \dirname{TEXMFHOME/tex/latex}, oppure +in una sotto directory di una delle due. + +\dirname{TEXMFLOCAL} richiede un database dei nomi dei file aggiornato, +altrimenti i file non saranno trovati. Potete aggiornarlo con il comando +\cmdname{mktexlsr} o utilizzando il pulsante ``Aggiorna il database dei +nomi dei file'' nel pannello di configurazione della \GUI\ di \TeX\ Live +Manager. + +Di default, ciascuna di queste variabili è definita come una directory +singola, come mostrato. Questo non è un requisito rigido. Se dovete passare +facilmente tra diverse versioni di grandi pacchetti, ad esempio, potete +mantenere directory multiple per i vostri scopi. Questo è ottenuto +impostando \dirname{TEXMFHOME} alla lista delle directory, tra parentesi +graffe, separate da virgole: + +\begin{verbatim} + TEXMFHOME = {/mia/dir1,/miadir2,/una/terza/dir} +\end{verbatim} + +La sezione~\ref{sec:brace-expansion} descrive ulteriormente l'espansione +delle graffe. + + +\subsubsection{Integrare font di terze parti} + +Sfortunatamente, si tratta di un argomento ingarbugliato. Dimenticatevene +a meno che non vogliate addentrarvi nei numerosi dettagli +dell'installazione di \TeX{}. Non dimenticate per prima cosa di +controllare quello che ricevete liberamente: consultate la +sezione~\ref{sec:tl-fonts}. + +Una possibile alternativa è quella di usare \XeTeX\ o Lua\TeX\ (consultate +la sezione~\ref{sec:tex-extensions}), che vi consentono di usare i font +del sistema operativo senza alcuna installazione in \TeX. + +Se avete comunque bisogno di farlo, visitate la pagina +\url{http://tug.org/fonts/fontinstall.html} dove abbiamo fatto del nostro +meglio nel descrivere la procedura. Se mantenete le vostre mappe di font +locali in modo rigoroso, \texttt{tlmgr generate updmap} \textit{potrebbe} +essere utile, soprattutto nel muoversi tra una versione e l'altra; +consultate la documentazione di \cmdname{tlmgr}. + + +\subsection{Collaudare l'installazione} +\label{sec:test-install} + +Dopo aver installato \TL{} nel modo migliore, naturalmente vorrete +collaudarla, così da poter iniziare a creare bellissimi documenti e\slash +o font. + +Questa sezione fornisce alcune procedure elementari per verificare che il +nuovo sistema funzioni. Qui daremo i comandi per Unix; è più facile che +sotto \MacOSX e Windows eseguiate le prove tramite un'interfaccia grafica, +ma i principi sono gli stessi. + +\begin{enumerate} + +\item Assicuratevi per prima cosa di poter eseguire il programma +\cmdname{tex}: +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live ...) +kpathsea version 6.0.1 +Copyright ... D.E. Knuth. +... +\end{alltt} +Se questo restituisce ``comando non trovato'' al posto delle informazioni +sulla versione e sul copyright, oppure una versione più vecchia, +verosimilmente non avete la giusta directory \dirname{bin} nel vostro +\envname{PATH}. Consultate le informazioni sull'impostazione delle +variabili d'ambiente a \p.\pageref{sec:env}. + +\item Elaborate un file \LaTeX{} elementare: +\begin{alltt} +> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-... (TeX Live ...) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +Se questo non riesce a trovare \filename{sample2e.tex} o altri file, +verosimilmente avete qualche interferenza proveniente da vecchie variabili +d'ambiente o vecchi file di configurazione; noi raccomandiamo, tanto per +iniziare, di eliminare tutte le variabili d'ambiente relative a \TeX\ (per +un'analisi approfondita, potete chiedere a \TeX{} di fare un resoconto su +ciò che esattamente stia cercando e che trovi; consultate ``Risoluzione +dei problemi'' a pagina~\pageref{sec:debugging}). + +\item Mostrate un'anteprima del risultato: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +Dovreste vedere una nuova finestra con un bel documento che spiega alcuni +dei fondamenti di \LaTeX{} (ad ogni modo, vale la pena leggerlo se siete +nuovi a \TeX). Dovete avere X in esecuzione affinché \cmdname{xdvi} +funzioni; se non è così, oppure se la vostra variabile d'ambiente +\envname{DISPLAY} è impostata non correttamente, otterrete un errore +\samp{Can't open display}. + +\item Create un file \PS{} per la stampa o la visualizzazione: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Create un file \acro{PDF} al posto di un \dvi{}; questo comando +elabora il file \filename{.tex} e scrive direttamente un \acro{PDF}: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Mostrate un'anteprima del \acro{PDF}: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{o:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Né \cmdname{gv}, né \cmdname{xpdf} sono inclusi in \TL{}, quindi dovete +installarli separatamente. Visitate \url{http://www.gnu.org/software/gv} e +\url{http://www.foolabs.com/xpdf}, rispettivamente. Ci sono tantissimi +altri visualizzatori \acro{PDF}. Per Windows, noi raccomandiamo di provare +Sumatra PDF (\url{http://blog.kowalczyk.info/software/sumatrapdf}). + +\item Potreste trovare utili, in aggiunta a \filename{sample2e.tex}, i +seguenti file di prova predefiniti: + +\begin{ttdescription} +\item [small2e.tex] Un documento più semplice di \filename{sample2e}, per +ridurre la dimensione dell'input qualora si riscontrino problemi. +\item [testpage.tex] Verifica se la vostra stampante introduce qualche +margine. +\item [nfssfont.tex] Per stampare tabelle e prove riguardanti i font. +\item [testfont.tex] Anche questo per le tabelle dei font, ma usando plain +\TeX{}. +\item [story.tex] Il più canonico tra tutti file di prova per (plain) \TeX{}. +Dovete digitare \samp{\bs bye} al prompt \code{*} dopo \samp{tex story.tex}. +\end{ttdescription} + +\item Se avete installato il pacchetto \filename{xetex}, potete verificare che +riesca ad accedere ai font di sistema in questo modo: +\begin{alltt} +> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +(vale lo stesso per \filename{luatex}.) + +Se ricevete un messaggio di errore che riporta ``Invalid fontname `Latin +Modern Roman/ICU\dots'', allora dovete configurare il vostro sistema in +modo che \XeTeX{} possa trovare i font distribuiti con \TL. Consultate la +sezione~\ref{sec:font-conf-sys}. + +\end{enumerate} + +\subsection{Collegamenti ad ulteriori software scaricabili} + +Se siete nuovi di \TeX{} oppure in alternativa avete bisogno di aiuto +nella scrittura di documenti \TeX{} o \LaTeX, visitate la pagina +\url{http://tug.org/begin.html} per alcune risorse introduttive. + +Ecco i collegamenti ad alcuni altri strumenti che potete prendere in +considerazione per l'installazione: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} con i pacchetti supplementari da + \acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, per l'elaborazione e + la conversione di immagini +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, anch'esso per le + immagini. + +\item[Editor orientati a \TeX] C'è un'ampia scelta ed è una questione di + gusto dell'utente. Eccone una selezione in ordine alfabetico (alcuni + sono solo per Windows). + \begin{itemize*} + \item \cmdname{GNU Emacs} è disponibile per Windows, visita + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs con Auc\TeX} per Windows è disponibile su \CTAN. La + home page di Auc\TeX\ è \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} è disponibile su + \url{http://mirror.ctan.org/support/LEd}. \item \cmdname{SciTE} è + disponibile su \url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} è un software libero disponibile su + \url{http://www.xmlmath.net/texmaker/}. + \item \cmdname{TexMakerX} è un fork di \cmdname{Texmaker} con funzionalità + aggiuntive; \url{http://texmakerx.sourceforge.net}. + \item \cmdname{TeXnicCenter} è un software libero, disponibile su + \url{http://www.texniccenter.org} e nella distribuzione + pro\TeX{}t. + \item \cmdname{TeXworks} è un software libero disponibile su + \url{http://tug.org/texworks} e installato per Windows e \MacOSX\ + come parte di \TL. + \item \cmdname{Vim} è un software libero disponibile su + \url{http://www.vim.org}. + \item \cmdname{WinEdt} è un software shareware disponibile su + \url{http://tug.org/winedt} o \url{http://www.winedt.com}. + \item \cmdname{WinShell} è disponibile su \url{http://www.winshell.de}. + \end{itemize*} +\end{description} +Per un elenco molto più lungo di pacchetti e programmi, visitate +\url{http://tug.org/interest.html}. + + +\section{Installazione specializzate} + +Le sezioni precedenti hanno descritto il processo di installazione di base. +Qui ci rivolgiamo ad alcuni casi speciali. + +\htmlanchor{tlsharedinstall} +\subsection{Installazioni condivise tra utenti o macchine} +\label{sec:sharedinstall} + +\TL{} è stato progettato per essere condivisibile tra diversi utenti di un +solo sistema, ma anche tra sistemi differenti in una rete. Con +l'organizzazione predefinita delle directory, nessun percorso assoluto +viene configurato: le posizioni dei file necessari ai programmi di \TL{} +sono relative ai programmi stessi. Potete vedere questo nel file di +configurazione principale \filename{$TEXMFMAIN/web2c/texmf.cnf}, che +contiene linee come:%stopzone +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +Questo significa che aggiungere la directory degli eseguibili di \TL{} +appropriati alla propria piattaforma al percorso di ricerca è sufficiente +per ottenere una configurazione funzionante. + +Per la stessa ragione, potete anche installare \TL{} localmente e +successivamente muovere l'intera struttura verso una locazione di rete. + +Per Windows, uno script di installazione di rete esemplificativo chiamato +\filename{w32client} può essere scaricato da +\url{http://tug.org/texlive/w32client.html}. Questo script crea le +impostazioni e i collegamenti nei menu per usare una installazione di +\TL{} esistente su una \acro{LAN}. Registra anche un disinstallatore +\filename{w32unclient}, disponibile nello stesso file zip. Visitate la +pagina web indicata per maggiori informazioni. + + +\htmlanchor{tlportable} +\section{Installazioni portatili (\USB)} +\label{sec:portable-tl} + +L'opzione \code{-portable} dell'installazione (o il comando \code{V} +nell'installatore testuale o la corrispondente opzione della \GUI) crea +un'installazione di \TL{} contenuta completamente in sé stessa all'interno +di una radice comune e rinuncia all'integrazione con il sistema. Potete +creare una tale installazione direttamente su una penna \USB{} o copiarla su +una penna \USB{} successivamente. + +Per eseguire \TeX\ usando l'installazione portatile, avete bisogno di +aggiungere la directory degli eseguibili appropriata al percorso di ricerca +durante la sessione di terminale, come al solito. Sotto Windows, potete fare +doppio click su \filename{tl-tray-menu} alla radice dell'installazione per +scegliere tra alcuni compiti comuni, come mostrati in questa schermata: + +\medskip +\tlpng{tray-menu}{4cm} +\smallskip + + +\htmlanchor{tlisoinstall} +\subsection{Installazioni degli \ISO\ (o del \DVD)} +\label{sec:isoinstall} + +Se non avete bisogno di aggiornare o in qualunque altro modo modificare +spesso la vostra installazione e\slash o avete diversi sistemi sui quali +usare \TL, potrebbe essere conveniente creare un'\ISO\ della vostra +installazione di \TL{} perché: + +\begin{itemize} +\item Copiare una \ISO\ tra diversi computer è molto più rapido che copiare + un'installazione normale. +\item Se avete due sistemi operativi sulla stessa macchina e volete che + condividano un'installazione di \TL, un'installazione \ISO\ non è + vincolata alle idiosincrasie e alle limitazioni di altri filesystem + reciprocamente supportati (\acro{FAT32}, \acro{NTFS}, \acro{HFS+}). +\item Le macchine virtuali possono semplicemente montare tale \ISO. +\end{itemize} + +Ovviamente potete anche masterizzare un'\ISO\ su un \DVD, se lo ritenete +utile per voi. + +I sistemi desktop \GNU/Linux/Unix, incluso \MacOSX, sono capaci di montare +una \ISO. Al di là di questo, non cambia nulla confrontato con una normale +installazione su hard disk, consulate la sezione \ref{sec:env}. + +Quando preparate tale installazione su \ISO, è meglio omettere la +sottodirectory per l'anno dell'edizione e avere \filename{texmf-local} allo +stesso livello degli altri alberi (\filename{texmf}, \filename{texmf-dist}, +ecc.). Potete fare ciò con le normali opzioni per le directory +nell'installatore. + +Per un sistema Windows fisico (piuttosto che virtuale), potete masterizzare +la \ISO\ su un \acro{DVD}. Comunque, potrebbe valere la pena investigare le +varie opzioni gratuite per il montaggio delle \ISO. Per Windows \acro{XP}, +Microsoft offre \filename{winxpvirtualcdcontrolpanel}. + +Per l'integrazione con il sistema Windows, potete includere gli script +\filename{w32client} descritti nella sezione~\ref{sec:sharedinstall} e su +\url{http://tug.org/texlive/w32client.html}, che funzionano per +un'installazione \ISO\ così come per una condivisa. + +Su \MacOSX, TeXShop e \TeX{}works saranno capaci di usare l'installazione su +\acro{DVD} se un collegamento simbolico \filename{/usr/texbin} punta alla +directory degli eseguibili appropriata, per esempio, +\begin{verbatim} +sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin +\end{verbatim} + +Nota storica: \TL{} 2010 è stata la prima edizione di \TL{} che non è stata +più distribuita ``live''. Comunque, richiedeva sempre alcune acrobazie per +funzionare da \DVD\ o da \ISO; in particolare, non c'era alcun modo di +evitare di impostare almeno un'ulteriore variabile d'ambiente. Se create la +vostra \ISO\ da un'installazione esistente, allora non c'è bisogno di +questo. + + +\htmlanchor{tlmgr} +\section{\cmdname{tlmgr}: gestire la vostra installazione} +\label{sec:tlmgr} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} in modalità \GUI: la finestra principale dopo aver + premuto il pulsante ``Carica''.}\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\hbox to \hsize{% + \vtop{\hsize=.59\linewidth + \null % make figures align at the top + \tlpng{tlmgr-general-options}{\hsize} + \caption{\texttt{tlmgr} in modalità \GUI: opzioni generali} + \label{fig:tlmgr-general-options} + } + \hfil + \vtop{\hsize=.39\linewidth + \null + \tlpng{tlmgr-paper-options}{\hsize} + \caption{\texttt{tlmgr} in modalità \GUI: opzioni della dimensione del + foglio} + \label{fig:tlmgr-paper-options} + } +} +\end{figure} + +\TL{} include un programma chiamato \prog{tlmgr} per gestire \TL{} dopo +l'installazione iniziale. I programmi \prog{updmap}, \prog{fmtutil} e +\prog{texconfig} sono ancora inclusi e saranno mantenuti nel futuro, ma +\prog{tlmgr} è ora l'interfaccia preferita. Le sue funzionalità includono: + +\begin{itemize*} +\item installare, aggiornare, archiviare, ripristinare e disinstallare i + singoli pacchetti, eventualmente tenendo conto delle dipendenze; +\item cercare ed elencare pacchetti, ecc.; +\item elencare, aggiungere e rimuovere le piattaforme disponibili; +\item cambiare le opzioni di installazione come la dimensione del foglio e + il percorso di installazione (consultate la sezione~\ref{sec:location}). +\end{itemize*} + +\subsection{Modalità GUI di \cmdname{tlmgr}} +\prog{tlmgr} può essere avviato in modalità \GUI{} +(figura~\ref{fig:tlmgr-gui} con +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +oppure sotto Windows tramite il menu Start: \texttt{Start}, +\texttt{Programmi}, \texttt{TeX Live 2012}, \texttt{TeX Live Manager}. +Dopo aver premuto il pulsante ``Carica'' il programma mostra un elenco dei +pacchetti disponibili ed installati. Ovviamente assumiamo che il percorso +di installazione attuale sia valido e raggiungibile. + +Le figure~\ref{fig:tlmgr-general-options} e~\ref{fig:tlmgr-paper-options} +mostrano le schermate con le opzioni generali e il formato di pagina. + +\subsection{Esempi di invocazioni di \cmdname{tlmgr} dalla riga di comando} + +Dopo l'installazione iniziale, potete aggiornare il vostro sistema alle +ultime versioni disponibili con: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +Se questo vi rende nervosi, provate prima +%If this makes you nervous, first try +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +o (meno prolisso): +%or (less verbose): +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} + +Questo esempio più complesso aggiunge una collezione, per il motore +Xe\TeX, da una directory locale: + +\begin{alltt} +> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +Genera il seguente risultato (ridotto): +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2012/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2011/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} + +Come potete vedere, \prog{tlmgr} installa le dipendenze e si occupa di ogni +azione necessaria dopo l'installazione, incluso l'aggiornamento del +database dei nomi dei file e la generazione (o rigenerazione) dei formati. +Nell'esempio precedente, abbiamo generato nuovi formati per \XeTeX. + +Per ottenere la descrizione di un pacchetto (o di una collezione o di uno +schema): +\begin{alltt} +> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +che produce +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +Infine, cosa più importante, per ottenere la documentazione completa, +visitate \url{http://tug.org/texlive/tlmgr.html} oppure eseguite: +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + + +\section{Note relative a Windows} +\label{sec:windows} + + +\subsection{Funzionalità specifiche per Windows} +\label{sec:winfeatures} + +Sotto Windows, l'installatore fa alcune cose in più: +\begin{description} +\item[Menu e collegamenti.] Viene creato nel menu Start un nuovo sotto + menu ``\TL'' che contiene le voci per alcuni programmi grafici + (\prog{tlmgr}, \prog{texdoctk}, il visualizzatore PostScript PS\_View + \Dash\ \prog{psv}) e per un po' di documentazione. PS\_View riceve anche + un collegamento sul desktop per avere un'icona sulla quale trascinare i + file PostScript per l'apertura diretta. +\item[Associazioni dei file.] Se abilitati, \prog{TeXworks}, \prog{Dviout} e + \prog{PS\_view} diventano ciascuno il programma predefinito per i loro + rispettivi tipi di file, oppure ottengono una voce nei menu contestuali + ``Apri con'' per quei tipi di file. +\item[Convertitore da bitmap ad eps.] I vari formati bitmap ricevono una + voce \cmdname{bitmap2eps} nei loro menu contestuali ``Apri con''. + Bitmap2eps è un semplice script che permette a \cmdname{sam2p} o + \cmdname{bmeps} di compiere il vero lavoro. +\item[Impostazione automatica delle variabili di ambiente.] Non sono + richiesti passi manuali. +\item[Disinstallatore.] Il programma di installazione crea una voce per + \TL\ in ``Installazione Applicazioni''. La pagina di disinstallazione + della \GUI\ \TeX\ Live Manager fa riferimento a questo. +\end{description} + +\subsection{Software aggiuntivo incluso sotto Windows} + +Per essere completa, un'installazione di \TL\ ha bisogno di alcuni +pacchetti di supporto che non si trovano abitualmente su una macchina +Windows. \TL{} fornisce questi pezzi mancanti: +\begin{description} +\item[Perl e Ghostscript.] A causa dell'importanza di Perl e Ghostscript, + \TL{} include una copia ``nascosta'' di questi programmi. I programmi di + \TL{} che ne hanno bisogno sanno dove trovarli, ma non ne tradiscono la + presenza tramite variabili d'ambiente o impostazioni sul registro di + sistema. Non si tratta di installazioni complete e non dovrebbero + interferire con installazioni nel sistema di Perl o Ghostscript. + +\item[PS\_View.] Viene installato anche PS\_View, un visualizzatore di + file \PS{} e \acro{PDF}; osservate la figura~\ref{fig:psview}. + +\begin{figure}[tb] +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: ingrandimenti elevatissimi disponibili!} +\label{fig:psview} +\end{figure} + +\item[dviout.] Viene installato anche \prog{dviout}, un visualizzatore di + \acro{DVI}. All'inizio, quando visualizzate i file con \cmdname{dviout}, + questo creerà i font in quanto quelli per la visione su schermo non sono + isntallati. Dopo un po', avrete creato la maggior parte dei font che + usate e raramente vedrete la finestra di creazione dei font. Maggiori + informazioni possono essere trovate nell'aiuto del programma (altamente + raccomandato). + +\item[\TeX{}works.] \TeX{}works è un editor orientato a \TeX\ con un + visualizzatore per \acro{PDF} incorporato. + +\item[Strumenti a riga di comando.] Assieme ai soliti programmi di \TL{} + vengono installate alcune versioni per Windows di tipici programmi Unix + a riga di comando. Questi programmi includono \cmdname{gzip}, + \cmdname{unzip} e gli strumenti della suite \cmdname{xpdf} + (\cmdname{pdfinfo}, \cmdname{pdffonts}, \ldots). Il visualizzatore + \cmdname{xpdf} non è disponibile per Windows. Come alternativa, tra le + altre, potete scaricare Sumatra \acro{PDF}, che è basato su xpdf, da + \url{http://blog.kowalczyk.info/software/sumatrapdf}. + +\item[fc-list, fc-cache, \ldots] Gli strumenti dalla libreria fontconfig + consentono a \XeTeX{} di gestire i font di sistema sotto Windows. Potete + usare \prog{fc-list} per trovare i nomi dei font da passare al comando + esteso di \XeTeX\ \cs{font}. Se è necessario, eseguite prima + \prog{fc-cache} per aggiornare le informazioni sui font. + +\end{description} + + +\subsection{Il profilo utente è ``home''} +\label{sec:winhome} + +La controparte Windows di una directory di home di Unix è la directory +\verb|%USERPROFILE%|. Sotto Windows \acro{XP}, di solito +è \verb|C:\Documents and Settings\| e sotto Windows Vista e +Windows~7 è \verb|C:\Users\|. Nel file \filename{texmf.cnf} e in +generale in \KPS{}, \verb|~| verrà interpretato in modo appropriato sia +sotto Windows che sotto Unix. + + +\subsection{Il registro di configurazione di Windows} +\label{sec:registry} + +Windows memorizza quasi tutti i dati di configurazione nel suo registro. +Il registro contiene un insieme di chiavi organizzate gerarchicamente, +con varie gerarchie. Le più importanti per i programmi di installazione +sono \path{HKEY_CURRENT_USER} e \path{HKEY_LOCAL_MACHINE}, abbreviate in +\path{HKCU} e \path{HKLM}. La porzione \path{HKCU} del registro si trova +nella directory di home dell'utente (vedi sezione~\ref{sec:winhome}). +\path{HKLM} si trova di solito in una sotto directory della cartella +Windows. + +In alcuni casi, le informazioni di sistema possono essere ottenute dalle +variabili d'ambiente, ma per altre informazioni, come la posizione dei +collegamenti, è necessario consultare il registro. Impostare +permanentemente le variabili d'ambiente richiede ugualmente l'accesso al +registro. + + +\subsection{Permessi di Windows} +\label{sec:winpermissions} + +Nelle ultime versioni di Windows si fa distinzione tra utenti normali ed +amministratori e solo questi ultimi hanno libero accesso all'intero +sistema operativo. In pratica, però, si potrebbero meglio descrivere +queste classi come ``utenti senza privilegi'' e ``utenti normali'': essere +un amministratore è la regola, non l'eccezione. Ciononostante, ci siamo +sforzati di rendere \TL{} installabile senza i privilegi amministrativi. + +Se l'utente è un amministratore, c'è un'opzione per rendere +l'installazione disponibile a tutti gli utenti. Se questa opzione è +selezionata, i collegamenti sono creati per tutti gli utenti e l'ambiente +di sistema è modificato. In alternativa, i collegamenti e le voci nel menu +sono creati solo per l'utente corrente e viene modificato l'ambiente +dell'utente. + +Indipendentemente dallo stato di amministratore, la cartella predefinita +di \TL{} proposta dal programma di installazione si trova sempre sotto +\verb|%SystemDrive%|. L'installatore verifica sempre se l'utente corrente +ha i permessi di scrittura in tale cartella. + +Possono sorgere dei problemi se l'utente non è un amministratore e \TeX{} +già esiste nel percorso di ricerca. Dato che nel percorso di ricerca +vengono prima le impostazioni di sistema e poi quelle dell'utente, la +nuova \TL{} non avrebbe mai la precedenza. Come precauzione, il programma +di installazione crea un collegamento ad un prompt dei comandi in cui la +nuova directory degli eseguibili di \TL{} è anteposta al percorso di +ricerca locale. La nuova \TL{} sarà sempre accessibile usando questo +prompt. Anche il collegamento a \TeX{}works, se è installato, antepone +\TL{} al percorso di ricerca, quindi dovrebbe essere immune a questo +problema. + +Sotto Vista e Windows~7 c'è un ulteriore colpo di scena: anche se avete +eseguito l'accesso come amministratori, dovete chiedere esplicitamente i +privilegi di amministrazione. In pratica, non serve a molto entrare come +amministratore. Invece, facendo clic con il tasto destro sul programma o +sul collegamento che volete eseguire, solitamente appare la voce ``Esegui +come amministratore''. + +\subsection{Incrementare la memoria massima sotto Windows e Cygwin} +\label{sec:cygwin-maxmem} + +Gli utenti di Windows e Cygwin (consulta la sezione~\ref{sec:cygwin} per i +dettagli sull'installazione con Cygwin) possono ritrovarsi con la memoria +esaurita durante l'esecuzione di alcuni dei programmi forniti con \TL. Ad +esempio, \prog{asy} potrebbe esaurire la memoria se tentate di allocare un +array di 20.000.000 di reali e Lua\TeX\ potrebbe esaurirla se tentate di +elaborare un documento con un gran numero di font grandi. + +Per Cygwin, potete incrementare la quantità di memoria disponibile seguendo +le istruzioni nella Guida dell'Utente di Cygwin +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +Per Windows, dovete creare un file, ad esempio \code{moremem.reg}, con le +seguenti quattro righe: + +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +\noindent ed eseguire il comando \code{regedit /s moremem.reg} come +amministratore (se volete cambiare la memoria unicamente per l'utente +corrente invece che per l'intero sistema, usate \code{HKEY\_CURRENT\_USER}). + + +\section{Una guida a Web2C} + +\Webc{} è una collezione integrata di programmi legati a \TeX: \TeX{} +stesso, \MF{}, \MP, \BibTeX{}, ecc. È il cuore di \TL{}. Il sito web di +\Webc{}, con il manuale corrente e molto altro, è +\url{http://tug.org/web2c}. + +Ecco un po' di storia: l'implementazione originale fu realizzata da Tomas +Rokicki il quale, nel 1987, sviluppò un primo sistema \TeX{}-to-C +cambiando dei file sotto Unix, che erano principalmente un lavoro +originale di Howard Trickey e Pavel Curtis. Tim Morgan divenne il +manutentore del sistema e durante questo periodo il nome cambiò in +Web-to-C\@. Nel 1990, Karl Berry prese in mano il lavoro, con il +contributo di molte persone, e nel 1997 passò il testimone a Olaf Weber, +il quale lo restituì a Karl nel 2006. + +Il sistema \Webc{} gira sotto Unix, sotto i sistemi Windows a 32 bit, +sotto MacOSX{} e sotto altri sistemi operativi. Usa i sorgenti originali +di Knuth per \TeX{} e per altri programmi scritti nel sistema di +programmazione letterata \web{} e li traduce in codice C. I programmi +basilari di \TeX{} gestiti in questo modo sono: + +\begin{cmddescription} +\item[bibtex] Per mantenere le bibliografie. +\item[dvicopy] Espande i riferimenti ai font virtuali nei file \dvi{}. +\item[dvitomp] Converte da \dvi{} a MPX (MetaPost picture). +\item[dvitype] Converte i \dvi{} in testo leggibile +\item[gftodvi] Provini dei font generici. +\item[gftopk] Converte da font generici ad impacchettati. +\item[gftype] Converte i font generici in testo leggibile. +\item[mf] Crea famiglie di caratteri tipografici. +\item[mft] Formatta i sorgenti \MF{}. +\item[mpost] Crea diagrammi tecnici. +\item[patgen] Crea modelli di sillabazione. +\item[pktogf] Converte da font impacchettati a generici. +\item[pktype] Converte i font impacchettati in testo leggibile. +\item[pltotf] Converte le liste di proprietà da testo leggibile in TFM. +\item[pooltype] Mostra i file delle riserve di \web{}. +\item[tangle] Converte da \web{} al Pascal. +\item[tex] Compone tipograficamente i documenti. +\item[tftopl] Converte le liste di proprietà da TFM in testo leggibile +\item[vftovp] Converte da font virtuali a liste di proprietà virtuali. +\item[vptovf] Converte da liste di proprietà virtuali a font virtuali. +\item[weave] Converte da \web{} a \TeX. +\end{cmddescription} + +\noindent Le esatte funzioni e la sintassi di questi programmi sono +descritte nella documentazione dei singoli pacchetti e di \Webc{} stesso. +Tuttavia, conoscere alcuni principi che governano l'intera famiglia di +programmi vi aiuterà a trarre vantaggio dalla vostra installazione \Webc{}. + +Tutti i programmi rispettano queste opzioni \GNU{} standard: +\begin{ttdescription} +\item[-{}-help] stampa un semplice sommario d'uso. +\item[-{}-verbose] stampa un rapporto dettagliato sull'avanzamento. +\item[-{}-version] stampa le informazioni sulla versione, quindi esce. +\end{ttdescription} + +Per individuare i file, i programmi \Webc{} usano la libreria di ricerca +dei percorsi \KPS{} (\url{http://tug.org/kpathsea}). Questa libreria usa +una combinazione di variabili d'ambiente e file di configurazione per +ottimizzare la ricerca nella (enorme) raccolta di file di \TeX{}. \Webc{} +può controllare simultaneamente molte directory, cosa utile per mantenere +la distribuzione standard \TeX{}, le estensioni locali e quelle personali +in directory distinte. Per velocizzare le ricerche dei file, alla radice +di ogni albero di directory c'è un file \file{ls-R} contenente una voce +con il nome ed il percorso relativo per ciascun file all'interno di +quell'albero. + + +\subsection{Ricerca dei percorsi con Kpathsea} +\label{sec:kpathsea} + +Per prima cosa descriviamo il generico meccanismo di ricerca dei percorsi +della libreria \KPS. + +Chiameremo \emph{percorso di ricerca} una lista separata da un due punti o +da un punto e virgola di \emph{elementi di percorso}, che sono +fondamentalmente nomi di directory. Un percorso di ricerca può provenire +da (una combinazione di) molte fonti. Per cercare un file \samp{my-file} +attraverso un percorso \samp{.:/dir}, \KPS{} controlla a turno ogni +elemento del percorso: prima \file{./my-file}, poi \file{/dir/my-file}, +restituendo la prima corrispondenza (o, eventualmente, tutte). + +Al fine di adattarsi al meglio alle convenzioni di tutti i sistemi +operativi, sui sistemi non Unix \KPS{} può usare separatori di nomi di +file diversi dai due punti (\samp{:}) e barra (slash, \samp{/}). + +Per controllare un particolare elemento \var{p} di un percorso, \KPS{} per +prima cosa verifica se può applicare a \var{p} un database precostruito +(consulta ``Database di file'' a pagina~\pageref{sec:filename-database}), +cioè se il database è in una directory che è prefisso di \var{p}. Se è +così, la specifica del percorso è confrontata con il contenuto del +database. + +Se il database non esiste o non si applica a questo elemento del percorso, +oppure se non contiene corrispondenze, viene eseguita una ricerca sul +disco (se non è stata proibita da una specifica che comincia con +\samp{!!}\ e se il file viene cercato per scoprire se esiste). \KPS{} +costruisce la lista di directory che corrispondono a questo elemento del +percorso e verifica all'interno di ciascuna di esse se può individuare il +file. + +La condizione ``il file deve esistere'' entra in gioco con i file +\samp{.vf} e i file letti tramite il comando \cs{openin} di \TeX. Questi +file potrebbero non esistere (ad esempio \file{cmr10.vf}) e dunque sarebbe +sbagliato cercarli sul disco. Quindi, se non siete riusciti ad aggiornare +correttamente il file \file{ls-R} quando avete installato un nuovo +\samp{.vf}, quest'ultimo non sarà mai trovato. A turno, viene controllato +ogni elemento del percorso: prima il database, poi il disco. Se viene +trovata una corrispondenza, la ricerca si interrompe e il risultato è +restituito. + +Per quanto il più semplice e comune elemento di un percorso sia il nome di +una directory, \KPS{} supporta caratteristiche aggiuntive nei percorsi di +ricerca: valori predefiniti stratificati, nomi di variabili +d'ambiente, valori di file di configurazione, directory personali degli +utenti e ricerca ricorsiva di sotto directory. Dunque, diciamo che \KPS{} +\emph{espande} un elemento di percorso, intendendo che trasforma tutte le +specifiche in semplici nomi di directory. Questa trasformazione è +descritta nelle seguenti sezioni nello stesso ordine in cui avviene. + +Notate che se il nome del file cercato è assoluto o esplicitamente relativo, +ossia se comincia con \samp{/}, \samp{./} o \samp{../}, \KPS{} controlla +semplicemente se quel file esiste. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{Un pezzo illustrativo di file di configurazione} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Fonti dei percorsi} +\label{sec:path-sources} + +Un percorso di ricerca può provenire da molte fonti. Nell'ordine in cui +\KPS{} le usa: + +\begin{enumerate} +\item + Una variabile d'ambiente impostata dall'utente, per esempio + \envname{TEXINPUTS}\@. Le variabili d'ambiente a cui è stato aggiunto un + punto ed il nome di un programma hanno la precedenza; per esempio, se + \samp{latex} è il nome del programma in esecuzione, allora + \envname{TEXINPUTS.latex} avrà la precedenza su \envname{TEXINPUTS}. +\item + Il file di configurazione specifico per un programma, per esempio una + riga \samp{S /a:/b} nel file di configurazione \file{config.ps} di + \cmdname{dvips}. +\item + Un file di configurazione \file{texmf.cnf} di \KPS, contenente una riga + del tipo \samp{TEXINPUTS=/c:/d} (vedi più avanti). +\item Il valore predefinito alla compilazione del programma. +\end{enumerate} +\noindent Potete vedere ciascuno di questi valori per un dato percorso di +ricerca usando le opzioni di debug (consultate ``Risoluzione dei +problemi'' a pagina~\pageref{sec:debugging}). + +\subsubsection{File di configurazione} + +\KPS{} legge i percorsi di ricerca ed altre definizioni nei \emph{file di +configurazione a tempo di esecuzione} chiamati \file{texmf.cnf}. Il +percorso di ricerca usato per cercare questi file è chiamato +\envname{TEXMFCNF}, ma non raccomandiamo di impostare questa (o qualunque +altra) variabile d'ambiente. + +Invece, l'installazione normale dà luogo ad un file +\file{.../2012/texmf.cnf}. Se dovete apportare delle modifiche ai valori +predefiniti (di norma non è necessario), questo è il posto in cui +piazzarle. Il file di configurazione principale è +\file{.../2012/texmf/web2c/texmf.cnf}. Non dovreste modificare +quest'ultimo file, dato che le vostre modifiche andrebbero perdute quando +la versione distribuita viene aggiornata. + +\emph{Tutti} i file \file{texmf.cnf} nel percorso di ricerca saranno letti +e le definizioni in quelli che appaiono per primi sostituiranno quelle nei +file che appaiono per ultimi. Ad esempio, con un percorso di ricerca di +\verb|.:$TEXMF|, i valori provenienti da \file{./texmf.cnf} sostituiranno +quelli provenienti da \verb|$TEXMF/texmf.cnf|. + +\begin{itemize} +\item + I commenti iniziano con \code{\%} e continuano fino alla fine della + riga. +\item + Le righe vuote sono ignorate. +\item + Un \bs{} alla fine di una riga funziona come un carattere di + continuazione, cioè la linea successiva viene apposta. Gli spazi bianchi + all'inizio delle righe di continuazione non sono ignorati. +\item + Ogni riga rimanente ha la forma: +\begin{alltt} + \var{variabile}[.\var{nomeprogramma}] [=] \var{valore} +\end{alltt} + dove il carattere \samp{=} e gli spazi che lo circondano sono opzionali. +\item + Il nome \ttvar{variabile} può contenere un qualunque carattere diverso + dallo spazio, da \samp{=} e da \samp{.}, ma usare solo i caratteri + \samp{A-Za-z\_} è più sicuro. +\item + Se la parte \samp{.\var{nomeprogramma}} è presente, la definizione si + applica solo se il programma che è in esecuzione ha il nome + \texttt{\var{nomeprogramma}} oppure \texttt{\var{nomeprogramma}.exe}. + Questo consente, ad esempio, alle diverse varianti di \TeX{} di avere + diversi percorsi di ricerca. +\item \var{valore} può contentere qualunque carattere tranne che \code{\%} + e \samp{@}. La caratteristica \code{\$\var{variabile}.\var{programma}} + non è disponibile come valore valido; in alternativa, dovete usare una + variabile aggiuntiva. Un \samp{;}\ in \var{valore} è tradotto + automaticamente in \samp{:}\ se state usando Unix; questa caratteristica + è utile per avere un singlo \file{texmf.cnf} per Unix, \acro{MS-DOS} e + Windows. +\item + Tutte le definizioni vengono lette prima che qualunque cosa sia espanza, + quindi si può fare riferimento alle variabili prima che siano definite. +\end{itemize} +Un frammento di file di configurazione che mostra la maggior parte di +questi punti è +\ifSingleColumn +mostrato sotto: + +\verbatiminput{examples/ex5.tex} +\else +mostrato nella figura~\ref{fig:config-sample}. +\fi + +\subsubsection{Espansione dei percorsi} +\label{sec:path-expansion} + +\KPS{} riconosce nei percorsi di ricerca alcuni caratteri e costrutti +speciali, simili a quelli disponibili nelle shell di Unix. Come esempio +generale, il complesso percorso \verb+~$USER/{foo,bar}//baz+ viene espanso +in tutte le directory sotto \file{foo} e \file{bar} nella home dell'utente +\texttt{\$USER}, che contengono a loro volta una directory o un file di +nome \file{baz}. Queste espansioni sono spiegate nelle prossime sezioni- +%$ +\subsubsection{Espansione predefinita} +\label{sec:default-expansion} + +Se il percorso di ricerca a più alta priorità (consultate ``Fonti dei +percorsi'' a pagina~\pageref{sec:path-sources}) contiene un \emph{due +punti di troppo} (cioè all'inizio, alla fine oppure una coppia di due +punti), \KPS{} inserisce in quel punto il percorso di ricerca con la +seconda più alta priorità che sia stato definito. Se questo percorso +inserito ha a sua vuolta un due punti aggiuntivo, accade lo stesso con il +successivo in ordine di priorità. Per esempio, data l'impostazione di una +variabile d'ambiente + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +e un valore di \code{TEXINPUTS} proveniente da \file{texmf.cnf} di + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +allora il valore finale usato nella ricerca sarà: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Dato che sarebbe inutile inserire lo stesso valore predefinito in più di +un posto, \KPS{} cambia solo uno dei \samp{:}\ di troppo e lascia gli +altri al loro posto. Per prima cosa cerca un \samp{:} all'inizio, quindi +cerca un \samp{:} alla fine, per ultimo cerca un \samp{:} doppio. + +\subsubsection{Espansione delle parentesi graffe} +\label{sec:brace-expansion} + +Una caratteristica utile è l'espansione delle parentesi graffe, che +significa che, per esempio, \verb+v{a,b}w+ viene espanso in +\verb+vaw:vbw+. L'annidamento delle parentesi è permesso. Tale +caratteristica è usata per implementare gerarchie \TeX{} multiple, +assegnando una lista di nomi tra graffe a \code{\$TEXMF}. Ad esempio, in +\file{texmf.cnf}, è fatta la seguente definizione (semplificata per questo +esempio): +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +Usando questa variabile, potete scrivere qualcosa come +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +che vuol dire che, dopo aver guardato nella directory attuale, la ricerca +proseguirà (\emph{soltanto}) nei rami \code{\$TEXMFHOME/tex}, +\code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} e \code{\$TEXMFMAIN/tex} +(gli ultimi due usando i database \file{ls-R}). È una maniera conveniente +per avere due strutture \TeX{} parallele, una ``congelata'' (ad +esempio su un \CD) e l'altra aggiornata di continuo con nuove versioni non +appena diventino disponibili. Usando la variabile \code{\$TEXMF} in tutte +le definizioni, si è sicuri di cercare innanzitutto nel ramo +aggiornato. + +\subsubsection{Espansione delle sotto directory} +\label{sec:subdirectory-expansion} + +In un elemento di percorso, due o più barre (slash) consecutive alla fine +di una directory \var{d} sono sostituite da tutte le sotto directory di +\var{d}: prima quelle che si trovano direttamente sotto \var{d}, quindi +quelle all'interno delle prime e così via. Ad ogni livello, l'ordine in +cui le directory sono cercate \emph{non è specificato}. + +Se specificate il nome di un file dopo il \samp{//}, saranno incluse solo +le sotto directory che lo contengono. Ad esempio, \samp{/a//b} si +espande nelle directory \file{/a/1/b}, \file{/a/2/b}, \file{/a/1/1/b} e +così via, ma non in \file{/a/b/c} o \file{/a/1}. + +È possibile usare più volte il costrutto \samp{//} in un percorso, ma ogni +\samp{//} all'inizio di un percorso viene ignorato. + +\subsubsection{Elenco dei caratteri speciali e loro significato: un + riepilogo} + +Il seguente elenco riassume i caratteri speciali nei file di +configurazione di \KPS{}. + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Separatore nella specifica di un percorso; all'inizio o + alla fine di un percorso sostituisce l'espansione di percorso + predefinita.\par +\item[\CODE{;}] Separatore nei sistemi non Unix (si comporta come + \code{:}). +\item[\CODE{\$}] Espansione di una variabile. +\item[\CODE{\string~}] Rappresenta la directory di home di un utente. +\item[\CODE{\char`\{...\char`\}}] Espansione di parentesi graffe. +\item[\CODE{//}] Espansione di sotto directory (può trovarsi ovunque in un + percorso tranne che al suo inizio). +\item[\CODE{\%}] Inizio di un commento. +\item[\CODE{\bs}] Carattere di continuazione (consente alle voci di + continuare su più linee). +\item[\CODE{!!}] Cerca \emph{solo} nei database per individuare un file, + \emph{non} cerca sul disco. +\end{ttdescription} + + +\subsection{Database di nomi di file} +\label{sec:filename-database} + +\KPS{} si sforza di minimizzare gli accessi al disco per le ricerche. +Infatti, in installazioni con parecchie directory, cercare un dato file +in ognuna di esse può richiedere una quantità di tempo eccessiva (vero +soprattutto se devono essere attraversate molte centinaia di directory di +font). Quindi, \KPS{} può usare un file di ``database'' testuale costruito +esternamente, chiamato \file{ls-R}, che associa file a directory, evitando +in questo modo di cercare esaustivamente sul disco. + +Un secondo file di database, \file{aliases}, permette di dare nomi +aggiuntivi ai file elencati in \file{ls-R}. Questa caratteristica può +essere utile per conformare i file sorgenti alla convenzione dei nomi +\acro{DOS} 8.3. + +\subsubsection{Il database di nomi} +\label{sec:ls-R} + +Come spiegato in precedenza, il nome del database principale di nomi di +file deve essere \file{ls-R}. Potete metterne uno alla radice di ogni +ramo \TeX{} della vostra installazione nel quale volete che si effettuino +le ricerche (\code{\$TEXMF} di base). \KPS{} cerca i file \file{ls-R} nel +percorso \code{TEXMFDBS}. + +Il metodo raccomandato per creare e mantenere \samp{ls-R} è quello di +eseguire lo script \code{mktexlsr} incluso nella distribuzione. Esso è +invocato dai vari script \samp{mktex}\dots. In teoria, questo script esegue +semplicemente il comando +\begin{alltt} +cd \var{/la/vostra/radice/texmf} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +assumendo che il comando \code{ls} del vostro sistema produca il giusto +formato di output (\code{ls} del progetto \GNU lo fa). Per garantire che +l'archivio sia sempre aggiornato, la cosa più semplice è rigenerarlo +regolarmente tramite \code{cron}, così che sia automaticamente ricostruito +quando i file installati cambiano, ad esempio dopo aver installato o +aggiornato un pacchetto \LaTeX. + +Se un file non è trovato nel database, per default \KPS{} va avanti e +cerca sul disco. Se un particolare elemento di percorso comincia con +\samp{!!}, però, la ricerca per quell'elemento sarà effettuata \emph{solo} +nel database, mai sul disco. + + +\subsubsection{kpsewhich: ricerca indipendente di percorsi} +\label{sec:invoking-kpsewhich} + +Il programma \texttt{kpsewhich} compie la ricerca di percorsi +indipendentemente da qualunque particolare applicazione. Può essere utile +come una sorta di programma \code{find} per individuare i file nelle +gerarchie \TeX{} (è ampiamente usato negli script \samp{mktex}\dots\ +distribuiti). + +\begin{alltt} +> \Ucom{kpsewhich \var{opzioni}\dots{} \var{nomefile}\dots{}} +\end{alltt} +Le opzioni specificate in \ttvar{opzioni} cominciano con \samp{-} oppure +con \samp{-{}-} ed è accettata qualunque abbreviazione non ambigua. + +\KPS{} cerca ogni argomento sulla riga di comando che non sia un'opzione +come se fosse il nome di un file e restituisce il primo trovato. Non ci +sono opzioni per restituire tutti i file con un particolare nome (per fare +questo, potete eseguire il programma Unix \samp{find}). + +Le opzioni più comuni sono descritte in seguito. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + Imposta la risoluzione a \ttvar{num}; questa opzione ha effetto solo + nelle ricerche dei file \samp{gf} e \samp{pk}. \samp{-D} è un sinonimo, + per compatibilità con \cmdname{dvips}. Il valore preimpostato è 600. + +\item[\texttt{-{}-format=\var{nome}}]\mbox{}\\ + Imposta il formato da cercare a \ttvar{nome}. Di base, il formato è + ipotizzato a partire dal nome del file. Per i formati che non hanno + associato un suffisso non ambiguo, come i file di supporto di \MP{} e i + file di configurazione di \cmdname{dvips}, dovete specificare il nome + così come è conosciuto da \KPS{}, come \texttt{tex} o \texttt{enc + files}. Eseguite \texttt{kpsewhich -{}-help} per un elenco. + +\item[\texttt{-{}-mode=\var{stringa}}]\mbox{}\\ + Imposta il nome della modalità a \ttvar{stringa}; questa opzione ha + effetto solo sulle ricerche dei file \samp{gf} e \samp{pk}. Non esiste + un valore preimpostato: sarà trovata qualunque tipo di modalità. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Fa tutto ciò che è possibile per trovare il file, inclusa nello + specifico la ricerca sul disco. Di base, per questioni di efficienza, è + controllato solo l'archivio \file{ls-R}. +\item[\texttt{-{}-path=\var{stringa}}]\mbox{}\\ + Cerca nel percorso di ricerca \ttvar{stringa} (separata da due punti, + come al solito), invece di ricavarlo dal nome del file. \samp{//} e + tutte le solite espansioni sono supportate. Le opzioni \samp{-{}-path} e + \samp{-{}-format} si escludono a vicenda. +\item[\texttt{-{}-progname=\var{nome}}]\mbox{}\\ + Imposta il nome del programma a \texttt{\var{nome}}. Questa opzione può + modificare i percorsi di ricerca per mezzo della funzionalità + \texttt{.\var{nomeprogramma}}. Il valore predefinito è + \cmdname{kpsewhich}. +\item[\texttt{-{}-show-path=\var{nome}}]\mbox{}\\ + Mostra il percorso usato per la ricerca dei file il cui tipo sia + \texttt{\var{nome}}. Può essere usata sia un'estensione (\code{.pk}, + \code{.vf}, ecc.) che un nome, proprio come per l'opzione + \samp{-{}-format}. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + Imposta le opzioni per la ricerca degli errori a \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Esempi d'uso} +\label{sec:examples-of-use} + +Diamo uno sguardo a \KPS{} in azione. Ecco una ricerca semplice: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +Stiamo cercando il file \file{article.cls}. Dato che il suffisso +\samp{.cls} non è ambiguo, non abbiamo bisogno di specificare che vogliamo +cercare un file di tipo \optname{tex} (file sorgente \TeX). Lo troviamo +nella sotto directory \file{tex/latex/base} sotto la directory di \TL\ +\samp{texmf-dist}. In modo simile, tutti i file seguenti sono trovati +senza problemi grazia alla non ambiguità dei loro suffissi. +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +Ad ogni modo, quest'ultimo è un registro bibliografico in formato +\BibTeX{} per gli articoli di \textsl{TUGboat}. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +I file di glifi dei font bitmat di tipo \file{.pk} sono usati dai +programmi di visualizzazione come \cmdname{dvips} e \cmdname{xdvi}. Non +viene restituito nulla in questo caso dato che in \TL\ non ci sono file +\samp{.pk} pregenerati per il carattere tipografico Computer Modern \Dash +come predefinite sono usate le varianti Type~1. +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +Per questi font (un alfabeto fonetico creato dall'Università di +Washington) dobbiamo generare i file \samp{.pk} e dato che la modalità +predefinita di \MF{} nella nostra installazione è \texttt{ljfour} con una +risoluzione di base di 600\dpi{} (dots per inch, punti per pollice), viene +restituito questo valore. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +In questo caso, quando specifichiamo di essere interessati ad una +risoluzione di 300\dpi{} (\texttt{-dpi=300}) osserviamo che questo font +non è disponibile nel sistema. Un programma come \cmdname{dvips} o +\cmdname{xdvi} andrebbe avanti e genererebbe i file \texttt{.pk} richiesti +usando lo script \cmdname{mktexpk}. + +Adesso spostiamo la nostra attenzione sui file di intestazione e di +configurazione di \cmdname{dvips}. Cercheremo innanzitutto un file tra +quelli usati comunemente, il prologo generale \file{tex.pro} per il +supporto a \TeX, prima di spostare l'attenzione sul generico file di +configurazione (\file{config.ps}) e la mappa dei font \PS{} +\file{psfonts.map} \Dash\ a partire dal 2004, i file di mappatura e di +codifica hanno i propri percorsi di ricerca e una nuova posizione negli +alberi \dirname{texmf}. Dato che il suffisso \samp{.ps} è ambiguo, +dobbiamo specificare esplicitamente quale tipo stiamo considerando +(\optname{dvips config}) per il file \texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +Diamo ora uno sguardo ravvicinato ai file di supporto per il carattere +\PS{} \acro{URW} Times. Il prefisso per questi file nello schema dei nomi +dei font è \samp{utm}. Il primo file che cerchiamo è quello di +configurazione, che contiene il nome del file di mappatura: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +Il contenuto di questo file è +\begin{alltt} + p +utm.map +\end{alltt} +che punta al file \file{utm.map}, che sarà il prossimo che cercheremo. +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +Questo file di mappatura definisce i nomi dei file dei font \PS{} Type~1 +nella collezione URW. Il suo contenuto è simile al seguente (mostriamo +solo una parte delle righe): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +Dovrebbe essere chiaro da questi esempi come potete individuare facilmente +dove si trovi un dato file. Tutto ciò è particolarmente importante se +sospettate che in qualche modo venga prelevata la versione sbagliata di un +file, in quanto \cmdname{kpsewhich} mostrerà il primo file incontrato. + +\subsubsection{Risoluzione dei problemi} +\label{sec:debugging} + +A volte è necessario investigare sul come un programma determina i +riferimenti ad un file. Per rendere pratico ciò, \KPS{} offre vari livelli +di messaggi diagnostici: + +\begin{ttdescription} +\item[\texttt{\ 1}] Chiamate a \texttt{stat} (accessi al disco). Quando si + compie una ricerca avendo a disposizione un database \file{ls-R} + aggiornato, questo livello non dovrebbe mostrare quasi nessun messaggio. +\item[\texttt{\ 2}] Riferimenti alle tabelle dei dati (come i database + \file{ls-R}, i file di mappatura, quelli di configurazione). +\item[\texttt{\ 4}] Operazioni di apertura e chiusura dei file. +\item[\texttt{\ 8}] Informazioni generali sui percorsi per i tipi di file + cercati da \KPS. Utile per scoprire dove è stato definito un particolare + percorso per un file. +\item[\texttt{16}] Elenco delle directory per ogni elemento di un percorso + (rilevante solo per le ricerche su disco). +\item[\texttt{32}] Ricerche di file. +\item[\texttt{64}] Valori delle variabili. +\end{ttdescription} +Un valore di \texttt{-1} attiverà tutte le opzioni precedenti; nella +pratica, questo valore è di solito il più conveniente. + +Analogamente, con il programma \cmdname{dvips}, impostando una +combinazione di opzioni di diagnostica, è possibile seguire in dettaglio +le posizioni da cui i file sono prelevati. In alternativa, quando un file +non viene trovato, la traccia dei messaggi mostra in quali directory il +programma ha cercato il file, così che si possa ottenere un'indicazione +sull'origine del problema. + +In termini generali, dato che la maggior parte dei programmi invoca la +libreria \KPS{} internamente, è possibile selezionare il livello di +diagnostica usando la variabile d'ambiente \envname{KPATHSEA\_DEBUG} ed +impostandola ad una combinazione dei valori descritti nell'elenco di cui +sopra. + +(Nota per gli utenti Windows: in questo sistema non è semplice redirigere +tutti i messaggi verso un file. Per scopi di diagnostica potete impostare +temporaneamente \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + +Consideriamo, come esempio, un piccolo file sorgente di \LaTeX, +\file{hello-world.tex}, che contiene il seguente testo. +\begin{verbatim} + \documentclass{article} + \begin{document} + Ciao Mondo! + \end{document} +\end{verbatim} +Questo piccolo file usa solo il font \file{cmr10}, quindi vediamo come +\cmdname{dvips} prepara il file \PS{} (vogliamo usare la versione Type~1 +dei font Computer Modern, da qui l'opzione \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +In questo caso abbiamo combinato la classe di diagnostica 4 di +\cmdname{dvips} (percorsi dei font) con l'espansione degli elementi di +percorso di \KPS{} (vedi il Manuale di Riferimento di \cmdname{dvips}, +\OnCD{texmf/doc/dvips/dvips.pdf}). +Il risultato (leggermente riorganizzato) appare in +figura~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Ricerca dei file di configurazione}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Ricerca del file di prologo}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Ricerca del file del font}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} inizia individuando i propri file di lavoro. Per primo +viene trovato \file{texmf.cnf}, che fornisce le definizioni dei percorsi +di ricerca per gli altri file, quindi il file di database \file{ls-R} (per +ottimizzare la ricerca) e il file \file{aliases}, che rende possibile +dichiarare diversi nomi (ad esempio, una versione breve in formato +\acro{DOS} 8.3 e una più lunga e più naturale) per lo stesso file. Quindi +\cmdname{dvips} prosegue nel cercare il file di configurazione generico +\file{config.ps} prima di guardare al file personalizzato \file{.dvipsrc} +(che in questo caso \emph{non viene trovato}). Infine, +\cmdname{dvips} individua il file di configurazione \file{config.cms} per +il font \PS{} Computer Modern (questo passo è stato attivato con l'opzione +\texttt{-Pcms} data al comando \cmdname{dvips}). Questo file contiene +la lista delle mappature che definiscono la relazione tra il modo di +chiamare i font in \TeX{}, in \PS{} e sul disco. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips}, quindi, procede nel trovare tutti questi file, più il +generico file di mappatura \file{psfonts.map}, che è caricato sempre +(contiene le dichiarazioni per i font \PS{} usati comunemente; consultate +la parte finale della sezione~\ref{sec:examples-of-use} per ulteriori +dettagli sulla gestione delle mappature \PS). + +A questo punto, \cmdname{dvips} si presenta all'utente: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Quindi prosegue nel cercare il file di prologo \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Quindi prosegue nel cercare il file di prologo \file{texc.pro} (vedi la +figura~\ref{fig:dvipsdbgb}). +\fi + +Dopo aver trovato il file in questione, \cmdname{dvips} mostra la data e +l'ora, ci informa che genererà il file \file{hello-world.ps}, poi +che avrà bisogno del file del font \file{cmr10} e che quest'ultimo è +dichiarato ``residente'' (non sono necessarie bitmap): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Adesso la ricerca prosegue con il file \file{cmr10.tfm}, che viene +trovato, quindi viene fatto riferimento ad alcuni ulteriori file di +prologo (non mostrati) e, infine, l'istanza Type~1 del font, +\file{cmr10.pfb}, è individuata ed inclusa del file in uscita (vedi +l'ultima linea). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Opzioni di esecuzione} + +Un'altra funzionalità utile di \Webc{} è la sua possibilità di controllare +un certo numero di parametri relativi alla memoria (nello specifico la +dimensione degli array) tramite il file \file{texmf.cnf} letto da \KPS{} +durante l'esecuzione. Le impostazioni della memoria possono essere trovate +nella Parte 3 di quel file nella distribuzione \TL. Le più importanti +sono: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + La quantità complessiva di memoria disponibile per \TeX, \MF{} e \MP. + Dovete creare un nuovo file di formato per ogni impostazione differente. + Per esempio, potreste generare una versione ``enorme'' di \TeX{} e + chiamare il file di formato \texttt{hugetex.fmt}. Usando il modo normale + di specificare il nome del programma usato da \KPS{}, l'opportuno valore + della variabile \texttt{main\_memory} sarà letto da \file{texmf.cnf}. +\item[\texttt{extra\_mem\_bot}] + Spazio aggiuntivo per le strutture dati ``grandi'' di \TeX: scatole, + colle, interruzioni, ecc. Utile specialmente se usate \PiCTeX. +\item[\texttt{font\_mem\_size}] + Numero di registri per le informazioni sui font disponibili in \TeX. + Questo valore è più o meno pari alla dimensione totale di tutti i file + \acro{TFM} che vengono letti. +\item[\texttt{hash\_extra}] + Spazio aggiuntivo per la tabella con i nomi delle sequenze di + controllo. Nella tabella principale possono essere memorizzate solo + approssimativamente 10.000 sequenze di controllo; se lavorate su un + libro di grandi dimensioni con numerosi riferimenti incrociati, questo + valore potrebbe non essere sufficiente. Il valore predefinito per + \texttt{hash\_extra} è \texttt{50000}. +\end{ttdescription} + +\noindent Ovviamente questa funzionalità non è un sostituto per una vera +allocazione dinamica di memoria e array, ma dato che questi sono +estremamente difficili da implementare negli attuali sorgenti di \TeX, +questi parametri di esecuzione forniscono un compromesso pratico per +offrire un minimo di flessibilità. + + +\begin{comment} +\section{Compilare su una nuova piattaforma Unix} + +Se avete una piattaforma per la quale non sono inclusi gli eseguibili, +avrai bisogno di compilare \TeX{} e compagni. Non è difficile come sembra. +Quello di cui avete bisogno è interamente contenuto nella directory +\texttt{source} della distribuzione. + +\subsection{Prerequisiti} + +Avrete bisogno di almeno 100 megabyte di spazio su disco per compilare +tutto \TeX{} e i suoi programmi di supporto. Avrete anche bisogno di un +compilatore \acro{ANSI} C, un'utilità \cmdname{make}, un analizzatore +lessicale e un generatore di parser. Raccomandiamo la versione \GNU{} di +questi programmi (\cmdname{gcc}, \GNU \cmdname{make}, \cmdname{m4}, +\cmdname{flex}, \cmdname{bison}). Potreste essere in grado di lavorare con +altri compilatori C e programmi \cmdname{make}, ma dovrete conoscere bene +i principi di compilazione di programmi Unix per superare i problemi. + +Inoltre il comando \texttt{uname} deve restituire un valore significativo. + + +\subsection{Configurazione} + +Per cominciare, eseguite una normale installazione di \TL{} sul vostro +disco (consultate la sezione~\ref{sec:install-disk} a +\p.\pageref{sec:install-disk}). Potreste voler saltare l'installazione di +tutti gli eseguibili pregenerati. + +Quindi, prelevate i sorgenti dal file \texttt{tar} compresso presente +nella directory \dirname{source} sul vostro disco e spostatevi nella +directory dove lo avete posizionato. + +Successivamente, eseguite \cmdname{configure} con una riga di comando come +questa: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +La directory \optname{-prefix} è quella dove avete installato l'albero di +supporto; la strutturazione della directory sarà come segue (dove \$TEXDIR +sta per la directory che avete scelto): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & albero principale con + & font, \qquad macro, ecc\\ + \dirname{$TEXDIR/man} & pagine di manuale Unix\\ + \dirname{$TEXDIR/info} & manuali Info in stile \GNU\\ + \dirname{$TEXDIR/bin/$PLATFORM} & eseguibili\\ +\end{tabular} +%$ + +Se volete escludere il livello di directory \dirname{$PLATFORM}, ossia +volete piazzare gli eseguibili direttamente in \dirname{$TEXDIR/bin}, +specificate l'opzione \verb|--disable-multiplatform| a +\cmdname{configure}. + +Date uno sguardo ai messaggi restituiti da \verb|./configure --help| per +ulteriori opzioni che potete usare. Ad esempio, potete saltare la +compilazione di \OMEGA{} ed \eTeX. + + +\subsection{Eseguire \cmdname{make}} + +Siate sicuri che né la variabile d'ambiente, né l'opzione +\texttt{noclobber} siano impostate. Quindi, eseguite il \cmdname{make} +principale in questo modo: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +e rilassatevi\ldots + +In alternativa, potete voler salvare in un registro tutti i messaggi +restituiti, come in: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Prima di credere che tutto sia andato bene, controllate il file di +registro per eventuali errori: \GNU \cmdname{make} usa sempre la stringa +\samp{***} quando un comando fallisce. Inoltre, controllate se tutti i +programmi sono stati compilati: + +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +Il risultato dovrebbe essere oltre 200 (potete controllare il numero +esatto con il contenuto della directory \dirname{bin} della +distribuzione). + +Se avete bisogno di privilegi speciali per \texttt{make install}, potete +separare l'esecuzione di \samp{make world} in due parti, come segue: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +Dopo aver installato i vostri nuovi eseguibili, dovreste eseguire le +normali procedure di post installazione fornite nella +sezione~\ref{sec:postinstall} (\p.\pageref{sec:postinstall}). + +Inoltre, se desiderate rendere disponibili i vostri eseguibili ad altri, +contattateci. Saremo felici di inserirli nelle pagine web di \TL. +\end{comment} + +\htmlanchor{ack} +\section{Ringraziamenti} + +\TL{} è il risultato dello sforzo congiunto di praticamente tutti i gruppi +utenti \TeX. Questa edizione di \TL{} è stata supervisionata da Karl +Berry. Gli altri contributori principali, passati e presenti, sono +elencati qui sotto. + +\begin{itemize*} + +\item I gruppi utenti \TeX{} Inglese, Tedesco, Olandese e Polacco +(\acro{TUG}, \acro{DANTE} e.V., \acro{NTG} e \acro{GUST}, +rispettivamente), che forniscono la necessaria infrastruttura tecnica ed +amministrativa. Unitevi al gruppo utenti \TeX\ più vicino a voi +(consultate la pagina \url{http://tug.org/usergroups.html})! + +\item Il team di \acro{CTAN}, in particolare Robin Fairbairns, Jim +Hef{}feron e Rainer Sch\"opf, che distribuiscono le immagini di \TL{} e +forniscono l'infrastruttura comune per gli aggiornamenti dei pacchetti, +dalla quale dipende \TL. + +\item Nelson Beebe per aver reso disponibili molte piattaforme agli +sviluppatori di \TL{} e per i suoi esaustivi collaudi. + +\item John Bowman per aver fatto molti cambiamenti al suo programma +di grafica avanzata Asymptote affinché funzionasse in \TL. + +\item Peter Breitenlohner ed il team di \eTeX\ per le stabili +fondamenta del \TeX{} del futuro e Peter in particolare per l'aiuto +stellare con l'uso degli strumenti \GNU\ autotool in \TL. + +\item Jin-Hwan Cho e tutti i membri del team di DVIPDFM$x$ per il loro +eccellente driver e la velocità di risposta ai problemi di configurazione. + +\item Thomas Esser, senza il cui meraviglioso pacchetto \teTeX{} \TL{} non +sarebbe mai esistito. + +\item Michel Goossens, che è stato coautore della documentazione +originale. + +\item Eitan Gurari, il cui \TeX4ht è stato usato per creare la versione +\HTML{} di questa documentazione e che ha lavorato instancabilmente per +migliorarlo con brevi preavvisi ogni anno. Eitan è scomparso +prematuramente nel giugno 2009 e dedichiamo questa documentazione alla sua +memoria. + +\item Hans Hagen per la grande quantità di collaudi e per aver permesso al +suo formato \ConTeXt{} (\url{http://pragma-ade.com}) di lavorare +all'interno dell'infrastruttura di \TL. + +\item \Thanh, Martin Schr\"oder e il team di pdf\TeX{} +(\url{http://pdftex.prg}) per i continui miglioramenti delle capacità di +\TeX. + +\item Hartmut Henkel per i significativi contributi allo sviluppo di +pdf\TeX, Lua\TeX{} e molto ancora. + +\item Taco Hoekwater per gli importanti forzi nel rinnovato sviluppo di +MetaPost e (Lua)\TeX{} (\url{http://luatex.org}) stesso, per aver +incorporato \ConTeXt{} in \TL, per aver dato a Kpathsea le funzionalità +multi-thread e per molto altro ancora. + +\item Pawe{\l} Jackowski per l'installatore Windows \cmdname{tlpm} e +Tomasz {\L}uczak per \cmdname{tlpmgui}, usati nelle edizioni passate. + +\item Akira Kakuto per aver fornito gli eseguibili per Windows a partire +dalla sua distribuzione \TeX{} giapponese \acro{W32TEX} e per molti altri +contributi allo sviluppo. + +\item Jonathan Kew per aver sviluppato il notevole motore \XeTeX{} e per +aver investito tempo e fatica per integrarlo in \TL, così come per la +versione iniziale dell'installatore di Mac\TeX{} e per il programma +\TeX{}works, che raccomandiamo. + +\item Dick Koch per mantenere Mac\TeX{} (\url{http://tug.org/mactex}) a +distanza molto ravvicinata da \TL{} e per il suo gran buon umore nel +farlo. + +\item Reinhard Kotucha per i maggiori contributi all'infrastruttura e +all'installatore di \TL{} 2008, così come per gli sforzi di ricerca sotto +Windows, lo script \texttt{getnonfreefonts} e molto altro. + +\item Anche Siep Kroonenberg per maggiori contributi all'infrastruttura e +all'installatore di \TL{} 2008, specialmente sotto Windows, e il grosso +del lavoro di aggiornamento di questo manuale per descrivere queste +funzionalità. + +\item Heiko Oberdiek per il pacchetto \pkgname{epstopdf} e molti altri, +per aver compresso gli enormi file di dati di \pkgname{pst-geo} così che +potessimo includerli e, più di tutto, per il suo notevole lavoro su +\pkgname{hyperref}. + +\item Petr Ok\v{s}ak che ha coordinato e controllato con grande attenzione +tutto il materiale ceco e slovacco. + +\item Toshio Oshima per il suo visualizzatore per Windows +\cmdname{dviout}. + +\item Manuel Pégourié-Gonnard per aver aiutato con gli aggiornamenti dei +pacchetti, con i miglioramenti alla documentazione e con lo sviluppo di +\cmdname{texdoc}. + +\item Fabrice Popineau per l'originale supporto per Windows in \TL{} e per +il lavoro sulla documentazione in francese. + +\item Norbert Preining, l'architetto principale dell'infrastruttura e +dell'installatore di \TL{} 2008, anche per aver coordinato la versione +Debian di \TL{} (insieme con Frank Küster), offrendo molti suggerimenti +lungo il cammino. + +\item Sebastian Rahtz per aver originariamente creato \TL{} ed averne +curato la manutenzione per molti anni. + +\item Phil Taylor per aver allestito gli scaricamenti tramite BitTorrent. + +\item Tomasz Trzeciak per aiuti su vasta scala con Windows. + +\item Vladimir Volovich per il sostanziale aiuto nel porting e in altre +questioni di mantenimento e specialmente per aver reso possibile includere +\cmdname{xindy}. + +\item Staszek Wawrykiewicz, il collaudatore principale di tutta \TL{} e +coordinatore di molti dei maggiori contributori polacchi: font, +installazione sotto Windows e molto altro. + +\item Olaf Weber per la sua paziente manutenzione a \Webc. + +\item Gerben Wierda per aver creato e fatto manutenzione all'originale +supporto per \MacOSX{} e per molte integrazioni e collaudi. + +\item Graham Williams, sul cui lavoro dipende il Catalogo \TeX{} dei +pacchetti. + +\end{itemize*} + +Preparatori degli eseguibili: +Ettore Aldrovandi (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}), +Alan Braslau (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}), +Peter Breitenlohner (\pkgname{x86\_64-linux}), +Karl Berry (\pkgname{i386-linux}), +Ken Brown (\pkgname{i386-cygwin}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}), +Nikola Le\v{c}i\'c (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +Mojca Miklavec (\pkgname{mipsel-linux}), +Norbert Preining (\pkgname{alpha-linux}), +Thomas Schmitz (\pkgname{powerpc-linux}), +Boris Veytsman (\pkgname{armel-linux}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix}). +Per informazioni sul processo di compilazione di \TL, visitate +\url{http://tug.org/texlive/build.html}. + +Attuali traduttori della documentazione: +Boris Veytsman (russo), +Jjgod Jiang, Jinsong Zhao, Yue Wang \& Helin Gai (cinese), +Klaus Höppner (tedesco), +Manuel Pégourié-Gonnard (francese), +Marco Pallante (italiano), +Nikola Le\v{c}ić (serbo), +Petr Sojka \& Jan Busa (ceco\slash slovacco), +Staszek Wawrykiewicz (polacco). La pagina web della documentazione di +\TL{} è \url{http://tug.org/texlive/doc.html}. + +Ovviamente il più importante ringraziamento deve andare a Donald Knuth, +innanzitutto per aver inventato \TeX{} e poi per averlo donato al mondo. + + + +\section{Storia delle edizioni} +\label{sec:history} + +\subsection{Passato} + +La discussione iniziò nel tardo 1993 quando il gruppo utenti \TeX{} +olandese stava iniziando a lavorare al proprio \CD{} 4All\TeX{} per gli +utenti \acro{MS-DOS} e si sperava a quel tempo di rilasciare un solo +razionale \CD{} per tutti i sistemi. Questo era un obiettivo troppo +ambizioso per il tempo, ma non solo diede vita al \CD{} di grande successo +4All\TeX{}, ma spinse il gruppo di lavoro del \acro{TUG} Technical +Council verso una \emph{Struttura delle Directory \TeX{}} (\TDS{}, \TeX{} +Directory Structure, \url{http://tug.org/tds}), che specificò come creare +collezioni consistenti e gestibili di file di supporto a \TeX. Una bozza +completa della \TDS{} fu pubblicata nel numero di dicembre 1995 di +\textsl{TUGboat} e fu chiaro dalle fasi iniziali che un prodotto +desiderabile sarebbe stata una struttura di modello su \CD{}. La +distribuzione che hai ora è il risultato diretto delle decisioni del +gruppo di lavoro. Fu anche chiaro dal successo del \CD{} 4All\TeX{} che +gli utenti Unix avrebbero beneficiato da un simile semplice sistema e +questa è l'altro filone principale di \TL. + +Per prima cosa ci mettemmo all'opera per realizare un nuovo \CD{} della +\TDS{} basato su Unix nell'autunno del 1995 e rapidamente identificammo il +\teTeX{} di Thomas Esser come l'impianto ideale, dato che già aveva il +supporto per più piattaforme ed era costruito con la portabilità tra +diversi file system in mente. Thomas acconsentì ad aiutarci e il lavoro +cominciò seriamente all'inizio del 1996. La prima edizione fu rilasciata +nel maggio 1996. All'inizio del 1996, Karl Berry completò una nuova +versione di Web2c, che includeva praticamente tutte le funzionalità che +Thomas Esser aveva aggiunto in \teTeX{} e decidemmo di basare la seconda +edizione del \CD{} sul \Webc{} standard, con l'inclusione dello script +\texttt{texconfig} proveniente da \teTeX. La terza edizione del \CD{} fu +basata su una nuova grande revisione di \Webc, la 7.2, realizzata da Olaf +Weber; allo stesso tempo, era stata fatta una nuova revisione di \teTeX{} +e \TL{} incluse quasi tutte le sue funzionalità. La quarta edizione seguì +lo stesso modello, usando una nuova versione di \teTeX{} e di \Webc{} +(7.3). Il sistema adesso includeva anche un completo allestimento per +Windows. + +Per la quinta edizione (marzo 2000) furono riviste e controllate molte +parti del \CD, aggiornando centinaia di pacchetti. I dettagli sui +pacchetti furono memorizzati in file XML. Ma il cambiamento maggiore per +\TeX\ Live 5 fu che tutto il software non libero fu rimosso. Tutto in +\TL{} era pensato per essere compatibile con le Debian Free Software +Guidelines (linee guida Debian sul software libero, +\url{http://www.debian.org/intro/free}); abbiamo fatto del nostro meglio +per controllare le condizioni di licenza di tutti i pacchetti, ma +apprezzeremo tantissimo ogni segnalazione di errori. + +La sesta edizione (luglio 2001) aveva aggiornato ancora più materiale. Il +cambiamento più grande fu un nuovo concetto di installazione: l'utente +poteva selezionare un insieme più esatto delle collezioni desiderate. Le +collezioni relative alle lingue furono completamente riorganizzate, così +che, selezionandone una qualunque, non solo venissero installati le macro, i +font, ecc., ma fosse anche preparato un opportuno file +\texttt{language.dat}. + +La settima edizione del 2002 ebbe la notevole aggiunta del supporto per +\MacOSX{} e la solita miriade di aggiornamenti ad ogni genere di pacchetto +e programma. Un traguardo importante fu l'integrazione dei sorgenti con +quelli di \teTeX{} per correggere l'allontanamento l'uno dall'altro +avvenuto nelle versioni~5 e~6. + +\subsubsection{2003} + +Nel 2003, con il continuo flusso di aggiornamenti ed aggiunte, trovammo +che \TL{} era cresciuta così tanto che non poteva più essere contenuta in +un singolo \CD, quindi la dividemmo in tre diverse distribuzioni (consultate +la sezione~\ref{sec:tl-coll-dists}, \p.\pageref{sec:tl-coll-dists}). In +più: + +\begin{itemize*} +\item Su richiesta del team di \LaTeX, cambiammo i comandi \cmdname{latex} e + \cmdname{pdflatex} affinché usassero \eTeX{} (consultate la + \p.\pageref{text:etex}). +\item I nuovi font Latin Modern furono inclusi (e sono raccomandati). +\item Il supporto per Alpha \acro{OSF} fu rimosso (il supporto per + \acro{HPUX} era già stato rimosso in precedenza) dato che nessuno + aveva (o voleva donare) l'hardware su cui compilare i nuovi + eseguibili. +\item L'allestimento per Windows fu cambiato sostanzialmente; per la prima + volta fu introdotto un ambiente integrato basato su XEmacs. +\item Importanti programmi aggiuntivi per Windows (Perl, Ghost\-script, + Image\-Magic, Ispell) sono ora installati nelle directory \TL{}. +\item I file di mappatura per i font usati da \cmdname{dvips}, + \cmdname{dvipdfm} e \cmdname{pdftex} sono ora generati da un nuovo + programma \cmdname{updmap} ed installati in + \dirname{texmf/fonts/map}. +\item \TeX, \MF{} e \MP{} adesso mostrano la maggior parte dei caratteri + in ingresso (dal numero 32 \acro{ASCII} in su) come sé stessi nei + file che vengono generati (ad esempio, con \verb|\write|), nei file + di registro e sul terminale, ossia \emph{non sono più} tradotti + usando la notazione \verb|^^|. In \TL{}~7 questa traduzione + dipendeva dalle impostazioni sulla lingua del sistema; adesso, + queste impostazioni non influenzano il comportamento dei programmi + \TeX. Se per qualche ragione avete bisogno della notazione \verb|^^|, + rinominate il file \verb|texmf/web2c/cp8bit.tcx| (le edizioni future + avranno un modo più pulito per controllare questa opzione). +\item Questa documentazione fu revisionata sostanzialmente. +\item Infine, dato che i numeri delle edizioni erano cresciuti in modo + poco agevole, da adesso la versione è identificata semplicemente + dall'anno: \TL{} 2003. +\end{itemize*} + + +\subsubsection{2004} + +Il 2004 vide molti cambiamenti: + +\begin{itemize} + +\item Se avete font installati localmente che usano i propri file di +supporto \filename{.map} o (molto meno probabilmente) \filename{.enc}, +potreste aver bisogno di muovere questi file. + +I file \filename{.map} adesso sono cercati soltanto in sotto directory di +\dirname{fonts/map} (per ciascuna gerarchia \filename{texmf}, lungo il +percorso \envname{TEXFONTMAPS}). In modo simile, i file \filename{.enc} +sono cercati soltanto nelle sottodirectory di \dirname{font/enc}, lungo il +percorso \envname{ENCFONTS}. \cmdname{updmap} tenterà di avvisarvi su file +che possono provocare problemi. + +Per i metodi per gestire questa ed altre informazioni, visitate la pagina +\url{http://tug.org/texlive/mapenc.html}. + +\item \TK{} è stata espansa con l'aggiunta di un \CD{} installabile basato +su \MIKTEX, per coloro che preferiscono quell'implementazione a Web2C. +Consultate la sezione~\ref{sec:overview-tl} (\p.\pageref{sec:overview-tl}). + +\item All'interno di \TL, la singola grande directory \dirname{texmf} +delle edizioni precedenti è stata sostituita da: \dirname{texmf}, +\dirname{texmf-dist} e \dirname{texmf-doc}. Consultate la +sezione~\ref{sec:tld} (\p.\pageref{sec:tld} e il file \filename{README} +contenuto in ciascuna di esse. + +\item Tutti file in ingresso relativi a \TeX{} sono adesso raccolti nella +sotto directory \dirname{tex} delle varie \dirname{texmf*}, piuttosto che +avere le diverse posizioni \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex}, ecc. Consultate +\CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}. + +\item Gli script di supporto (pensati per non essere invocati dagli +utenti) sono adesso posizionati in una nuova sotto directory delle varie +\dirname{texmf*} chiamata \dirname{scripts} e possono essere cercati +usando \verb|kpsewhich -format=texmfscripts|. Se quindi avete dei programmi +che richiamano questi script, allora dovranno essere corretti. Consultate +\CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}. + +\item Quasi tutti i formati lasciano la maggior parte dei caratteri +stampabili uguali a se stessi tramite il ``file di traduzione'' +\filename{cp227.tcx}, piuttosto che trasformarli nella notazione +\verb|^^|. Nello specifico, i caratteri alle posizioni \acro{ASCII} +32--256, la tabulazione orizzontale, quella verticale e il ``form feed'' +sono considerati stampabili e non vengono trasformati. Le eccezioni sono +plain \TeX{} (solo i caratteri 32--126 sono stampabili), \ConTeXt{} +(caratteri 0--255) e i formati legati ad \OMEGA. Questo comportamento +predefinito è quasi lo stesso che in \TL\,2003, ma è implementato in +maniera più pulita, con maggiori possibilità di personalizzazione. +Consultate \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}} (ad ogni modo, con +l'input in formato Unicode, \TeX{} potrebbe stampare sequenze parziali di +caratteri quando viene mostrato il contesto degli errori dato che legge +l'input come una sequenza di byte, non di caratteri). + +\item \textsf{pdfetex} è adesso il motore predefinito per tutti i formati +tranne (plain) \textsf{tex} stesso (ovviamente genera file \acro{DVI} +quando è eseguito come \textsf{latex}, ecc.). Questo significa, tra le +altre cose, che le caratteristiche di microtipografia di \textsf{pdftex} +sono disponibili in \LaTeX, \ConTeXt, ecc., così come le funzionalità di +\eTeX{} (\OnCD{texmf-dist/doc/etex/base/}). + +Significa anche che è \emph{più importante che mai} usare il pacchetto +\pkgname{ifpdf} (funziona sia con plain \TeX, che con \LaTeX) o del codice +equivalente, perché verificare semplicemente se \cs{pdfoutput} o qualche +altra primitiva sono definiti non è un modo affidabile per determinare se +si sta generando un file \acro{PDF}. Per quest'anno abbiamo cercato di +rendere questo aspetto compatibile con le edizioni passate al meglio delle +nostra capacità, ma a partire dal prossimo anno \cs{pdfoutput} potrebbe +essere definito anche se il file generato è un \acro{DVI}. + +\item pdf\TeX\ (\url{http://pdftex.org}) ha molte nuove funzionalità: + + \begin{itemize*} + + \item \cs{pdfmapfile} e \cs{pdfmapline} forniscono il supporto alle + mappature dei font direttamente all'interno di un documento. + + \item L'espansione microtipografica dei font può essere usata più + facilmente.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item Tutti i parametri che prima erano impostati tramite lo speciale + file di configurazione \filename{pdftex.cfg} devono essere adesso + impostati tramite primitive, tipicamente in \filename{pdftexconfig.tex}; + \filename{pdftex.cfg} non è più supportato. Ogni file \filename{.fmt} + deve essere rigenerato quando \filename{pdftexconfig.tex} viene + modificato. + + \item Per saperne di più, consultate il manuale di pdf\TeX{}: + \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}. + + \end{itemize*} + +\item La primitiva \cs{input} in \cmdname{tex} (e in \cmdname{mf} e +\cmdname{mpost}) adesso accetta nomi con spazi ed altri caratteri speciali +racchiusi tra doppi apici. Esempi tipici: +\begin{verbatim} +\input "file con spazi" % plain +\input{"file con spazi"} % latex +\end{verbatim} +Consultate il manuale di Web2C per saperne di più: \OnCD{texmf/doc/web2c}. + +\item Il supporto per enc\TeX{} è ora incluso in Web2C e, di conseguenza, +in tutti i programmi \TeX, per mezzo dell'opzione \optname{-enc} \Dash\ +\emph{solo quando i formati sono stati generati}. enc\TeX{} supporta la +ricodifica generale dell'input e dell'output, permettendo il supporto +completo per l'Unicode (in \acro{UTF}-8). Consultate +\OnCD{texmf-dist/doc/generic/enctex/} e +\url{http://www.olsak.net/enctex.html}. + +\item Aleph, un nuovo motore che combina \eTeX\ ed \OMEGA, è disponibile. +Alcune informazioni sono disponibili in \OnCD{texmf-dist/doc/aleph/base} e +su \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. Il formato +basato su \LaTeX{} per Aleph è chiamato \textsf{lamed}. + +\item L'ultimo aggiornamento di \LaTeX\ ha una nuova versione della +\acro{LPPL} \Dash\ ora una licenza ufficialmente approvata da Debian. +Per altri aggiornamenti assortiti, consultiate i file \filename{ltnews} in +\OnCD{texmf-dist/doc/latex/base}. + +\item \cmdname{dvipng}, un nuovo programma per convertire i \acro{DVI} in +immagini \acro{PNG}, è incluso. Consultate +\OnCD{texmf/doc/man/man1/dvipng.1}. + +\item Abbiamo ridotto il pacchetto \pkgname{cbgreek} ad un insieme di font +di ``medie'' dimensioni, con il consenso e i suggerimenti dell'autore +(Claudio Beccari). I font omessi sono quelli invisibili, quelli profilati +e i trasparenti, che sono usati abbastanza raramente, mentre noi avevamo +bisogno di spazio. L'insieme completo è ovviamente disponibile su +\acro{CTAN} (\url{http://mirror.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} è stato rimosso; usate semplicemente \cmdname{xdvi}. + +\item I comandi (collegamenti) \cmdname{ini} e \cmdname{vir} per +\cmdname{tex}, \cmdname{mf} e \cmdname{mpost} non sono più creati, così +come \cmdname{initex}. Le funzionalità di \cmdname{ini} sono disponibili +oramai da anni tramite l'opzione su riga di comando \optname{-ini}. + +\item Il supporto per la piattaforma \textsf{i386-openbsd} è stato +rimosso. Dato che è disponibile il pacchetto \pkgname{tetex} nel sistema +\acro{BSD} Port e gli eseguibili per \acro{GNU/}Linux e Free\acro{BSD} +erano disponibili, ci è sembrato che il tempo dedicato dai volontari +potesse essere meglio speso da altre parti. + +\item Su \textsf{sparc-solaris} (almeno), potreste dover impostare la +variabile d'ambiente \envname{LD\_LIBRARY\_PATH} per eseguire i programmi +delle \pkgname{t1utils}. La ragione è che questi sono compilati con il C++ +e non esiste una posizione comune per le librerie (questo problema non è +nuovo dell'edizione 2004, ma non era stato documentato in precedenza). In +modo simile, su \textsf{mips-irix}, sono richieste le librerie di runtime +del \acro{MIPS}pro 7.4. + +\end{itemize} + +\subsubsection{2005} + +L'edizione del 2005 ha visto il solito enorme numero di aggiornamenti ai +pacchetti ed ai programmi. L'infrastruttura è rimasta sostanzialmente +invariata dal 2004, ma inevitabilmente ci sono stati comunque dei +cambiamenti: + +\begin{itemize} + +\item Sono stati introdotti i nuovi script \cmdname{texconfig-sys}, + \cmdname{updmap-sys} e \cmdname{fmtutil-sys} che modificano la + configurazione nei percorsi di sistema. Gli script + \cmdname{texconfig}, \cmdname{updmap} e \cmdname{fmtutil} ora + modificano i file specifici per i singoli utenti, sotto + \dirname{$HOME/.texlive2005}. + +\item Sono state introdotte le corrispondenti nuove variabili + \envname{TEXMFCONFIG} e \envname{TEXMFSYSCONFIG} per specificare i + percorsi dove trovare i file di configurazione (per il singolo + utente e per l'intero sistema, rispettivamente). Quindi, potreste + dover spostare le versioni personali di \filename{fmtutil.cnf} e + \filename{updmap.cfg} in questi posti; un'altra possibilità è quella + di ridefinire \envname{TEXMFCONFIG} o \envname{TEXMFSYSCONFIG} in + \filename{texmf.cfg}. In ogni caso la posizione reale di questi file + e i valori di \envname{TEXMFCONFIG} e \envname{TEXMFSYSCONFIG} + devono concordare. Consultate la sezione~\ref{sec:texmftrees}, + \p.\pageref{sec:texmftrees}. + +\item L'anno precedente, abbiamo tenuto \verb|\pdfoutput| ed altre + primitive non definite per l'output in \dvi, anche quando veniva + usato il programma \cmdname{pdfetex}. Quest'anno, come promesso, + abbiamo annullato quella misura di compatibilità. Per cui, se il + vostro documento usa \verb|\ifx\pdfoutput\undefined| per verificare + se viene generato un PDF, dovrà essere cambiato. Potete usare il + pacchetto \pkgname{ifpdf.sty} (che funziona sia sotto plain \TeX{} + che sotto \LaTeX) per fare ciò, oppure rubarne la logica. + +\item L'anno precedente, abbiamo cambiato la maggior parte dei formati per + stampare i caratteri (a 8 bit) come sé stessi (consultate la sezione + precedente). Il nuovo file TCX \filename{empty.tcx} adesso offre un + modo più semplice per ottenere l'originaria notazione \verb|^^| se + la desiderate, come in: +\begin{verbatim} +latex --translate-file=empty.tcx vostrofile.tex +\end{verbatim} + +\item È incluso il nuovo programma \cmdname{dvipdfmx} per la + trasformazione dei DVI in PDF; si tratta di un aggiornamento + attivamente mantenuto di \cmdname{dvipdfm} (che per ora è ancora + disponibile, anche se non più raccomandato). + +\item Sono inclusi i nuovi programmi \cmdname{pdfopen} e + \cmdname{pdfclose} per consentire di ricaricare i file pdf nel + lettore Adobe Acrobat Reader senza riavviare il programma + (altri lettori pdf, in particolare \cmdname{xpdf}, \cmdname{gv} e + \cmdname{gsview}, non hanno mai sofferto di questo problema). + +\item Per consistenza, le variabili \envname{HOMETEXMF} e + \envname{VARTEXMF} sono state rinominate \envname{TEXMFHOME} e + \envname{TEXMFVAR}, rispettivamente. C'è anche \envname{TEXMFVAR}, + che è specifica per ogni utente. Consultate il primo punto + dell'elenco. + +\end{itemize} + + +\subsubsection{2006--2007} + +Nell'edizione 2006--2007, la nuova più grande aggiunta a \TL{} è stato il +programma \XeTeX, disponibile con i comandi \texttt{xetex} e +\texttt{xelatex}; visitate il sito \url{http://scripts.sil.org/xetex}. + +Anche MetaPost ha ricevuto un aggiornamento degno di nota, mentre altri ne +sono stati pianificati per il futuro +(\url{http://tug.org/metapost/articles}), così come per pdf\TeX{} +(\url{http://tug.org/applications/pdftex}). + +I \filename{.fmt} di \TeX{} (formati ad alta velocità) e i file simili per +MetaPost e \MF{} adesso sono posizionati in sotto directory di +\dirname{texmf/web2c}, invece che nella directory stessa (sebbene la +directory sia ancora visitata durante la ricerca, a beneficio dei +\filename{.fmt} esisitenti). Le sotto directory sono chiamate in base al +``motore'' usato, come \filename{tex} o \filename{pdftex} o +\filename{xetex}. Questo cambiamento dovrebbe essere invisibile nell'uso +normale. + +Il programma (plain) \texttt{tex} non legge più le prime linee +identificate da \texttt{\%\&} per determinare quale formato adoperare; è +il puro \TeX{} Knuthiano (\LaTeX{} e tutto il resto leggono ancora le +linee \texttt{\%\&}). + +Ovviamente anche quest'anno ha visto (i soliti) centinaia di altri +aggiornamenti ai pacchetti ed ai programmi. Come sempre, visitate +\acro{CTAN} (\url{http://mirror.ctan.org}) per tutti gli aggiornamenti. + +Internamente, i sorgenti sono ora memorizzati tramite Subversion, con +un'interfaccia web standard per visitarli; il collegamento è sulla nostra +pagina home. Sebbene invisibile nella distribuzione finale, ci aspettiamo +che questo fornisca un fondamento stabile per lo sviluppo negli anni a +venire. + +Infine, nel maggio 2006 Thomas Esser ha annunciato che non avrebbe più +aggiornato te\TeX{} (\url{http://tug.org/tetex}). Come risultato, c'è +stata una nascita di interesse verso \TL, specialmente tra i distributori +di \GNU/Linux (c'è un nuovo schema di installazione in \TL{} chiamato +\texttt{tetex}, che fornisce un equivalente approssimativo). Speriamo che +alla fine questo si traduca in miglioramenti per tutti all'ambiente \TeX. + +\subsubsection{2008} + +Nell'edizione del 2008, l'intera infrastruttura di \TL{} è stata +riprogettata e reimplementata. Le informazioni complete su +un'installazione sono adesso memorizzate in un file di testo puro +\filename{tlpkg/texlive.tlpdb}. + +Tra le altre cose, ciò rende finalmente possibile aggiornare +un'installazione \TL{} tramite Internet dopo l'installazione iniziale, una +caratteristica che Mik\TeX{} ha offerto per anni. Ci attendiamo di +aggiornare regolarmente i nuovi pacchetti così come diventano disponibili +su \CTAN. + +Il nuovo motore Lua\TeX{} (\url{http://luatex.org}) è ora incluso; +accanto ad un nuovo livello di flessibilità nella composizione +tipografica, questo fornisce un eccellente linguaggio di scripting da +usare sia dentro che fuori i documenti \TeX. + +Il supporto tra Windows e le piattaforme basate su Unix è ora molto più +uniforme. In particolare, la maggior parte degli script Perl e Lua sono +ora disponibili sotto Windows tramite l'interprete Perl distribuito +internamente con \TL. + +Il nuovo script \cmdname{tlmgr} (sezione~\ref{sec:tlmgr}) è l'interfaccia +generale per amministrare \TL{} dopo l'installazione iniziale. Esso +gestice l'aggiornamento dei pacchetti e la conseguente rigenerazione dei +formati, dei file di mappatura e dei file delle lingue, incluse +opzionalmente le aggiunte locali. + +Con l'avvento di \cmdname{tlmgr}, è ora disabilitata l'azione di modifica +dei file di configurazione dei formati e delle sillabazioni operata da +\cmdname{texconfig}. + +Il programma per la creazione degli indici \cmdname{xindy} +(\url{http://xindy.sourceforge.net/}) è ora incluso nella maggior parte +delle piattaforme. + +Lo strumento \cmdname{kpsewhich} può ora riportare tutte le corrispondenze +per un dato file (opzione \optname{--all}) e limitarle ad una data sotto +directory (opzione \optname{--subdir}). + +Il programma \cmdname{dvipdfmx} adesso include la funzionalità di estrarre +le informazioni sulla bounding box attraverso il comando +\cmdname{extractbb}; si tratta di una delle ultime caratteristiche che +erano fornite da \cmdname{dvipdfm} ma non ancora incluse in +\cmdname{dvipdfmx}. + +Gli alias dei font \filename{Times-Roman}, \filename{Helvetica} e così via +sono stati rimossi. Diversi pacchetti si aspettavano che funzionassero in +modo diverso (in particolare, che avessero codifiche differenti) e non +c'era un buon modo per risolverlo. + +Il formato \pkgname{platex} è stato rimosso per risolvere un conflitto di +nome con un completamente diverso \pkgname{platex} giapponese; il +pacchetto \pkgname{polski} contiene ora il principale supporto per la +lingua polacca. + +Internamente, i file con le riserve di stringhe di \web{} sono compilati +dentro gli eseguibili, per semplificare gli aggiornamenti. + +Infine, in questa edizione sono stati inclusi i cambiamenti fatti da +Donald Knuth nella sua ``messa a punto di \TeX\ del 2008''. Consultate +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + + +\subsubsection{2009} + +Nell'edizione 2009, il formato di output predefinito di Lua\AllTeX\ è ora +il PDF per avvalersi del supporto OpenType di Lua\TeX, ecc. I nuovi +eseguibili chiamati \code{dviluatex} e \code{dvilualatex} eseguono +Lua\TeX{} con l'output in DVI. La pagina web di Lua\TeX{} è +\url{http://luatex.org}. + +Il motore Omega e il formato Lambda originari sono stati rimossi dopo +averne discusso con gli autori di Omega. Restano le versioni aggiornate +Aleph e Lamed, così come le utilità di Omega. + +È stata inclusa una nuova versione dei font AMS \TypeI, compreso il +Computer Modern: sono stati integrati alcuni cambiamenti nelle forme +fatti da Knuth nei sorgenti Metafont nel corso degli anni e +l'\emph{hinting} è stato aggiornato. I font Euler sono stati ridisegnati a +fondo da Hermann Zapf (visitate +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). In ogni +caso, le metriche non hanno subito modifiche. La pagina dei font AMS è +\url{http://www.ams.org/tex/amsfonts.html}. + +Il nuovo editor GUI \TeX{}works è incluso per Windows così come in +Mac\TeX. Per le altre piattaforme e per ulteriori informazioni, consultate +il sito di \TeX{}works, \url{http://tug.org/texworks}. Si tratta di un +programma multi piattaforma ispirato all'editor TeXShop per \MacOSX\ e che +ha come obiettivo la facilità d'uso. + +Il programma per la grafica Asymptote è stato incluso per diverse +piattaforme. Esso implementa un linguaggio descrittivo per la grafica +basato su testo vagamente simile a MetaPost, ma con un supporto avanzato +al 3D ed altre caratteristiche. Il suo sito web è +\url{http://asymptote.sourceforge.net}. + +Il programma \code{dvipdfm} è stato sostituito da \code{dvipdfmx}, che +opera in una speciale modalità di compatibilità quando viene invocato con +il primo nome. \code{dvipdfmx} include il supporto per \acro{CJK} +(Chinese-Japanese-Korean, Cinese-Giapponese-Coreano) ed ha accumulato +molte correzione negli anni trascorsi dall'ultima versione di +\code{dvipdfm}. Il sito di DVIPDFMx è +\url{http://project.ktug.or.kr/dvipdfmx}. + +Gli eseguibili per le piattaforme \pkgname{cygwin} e +\pkgname{i386-netbsd} sono ora inclusi, mentre siamo stati avvisati che +gli utenti di Open\acro{BSD} ottengono \TeX\ tramite il loro sistema di +pacchetti, e in più c'erano difficoltà nel produrre eseguibili che +avessero una qualche possibilità di funzionare su più di una versione. + +Una varietà di cambiamenti più piccoli: adesso usiamo la compressione +\pkgname{xz}, il rimpiazzo stabile per \pkgname{lzma} +(\url{http://tukaani.org/xz/}); il carattere |$| è ammesso nei nomi dei +file quando non introduce il nome di variabile noto; la libreria Kpathsea +è ora multi-thread (lo sfrutta MetaPost); l'intera compilazione di +\TL{} è ora basata su Automake.%stopzone + +Nota finale sul passato: tutte le edizioni di \TL{}, assieme al materiale +ausiliario come le etichette dei \CD, sono disponibili all'indirizzo +\url{ftp://tug.org/historic/systems/texlive}. + + +\subsection{2010} +\label{sec:2010news} % keep with 2010 + +Nell'edizione 2010, la versione predefinita per l'output PDF è ora la 1.5, +che consente una maggiore compressione. Questo si applica a tutti i motori +\TeX\ quando vengono usati per produrre PDF e a \code{dvipdfmx}. Caricando +il pacchetto \LaTeX\ \pkgname{pdf14} o impostando |\pdfminorversion=4|, si +si ritorna al PDF~1.4. + +pdf\AllTeX\ ora converte \emph{automaticamente} un file Encapsulated +Postscript (EPS) richiesto in PDF tramite il pacchetto \pkgname{epstopdf} +quando e se viene caricato il file di configurazione per \LaTeX\ +\code{graphics.cfg} e viene richiesto l'output in PDF. Le opzioni +predefinite sono tali da eliminare ogni possibilità che siano sovrascritti i +file PDF creati a mano, ma potete del tutto evitare che \code{epstopdf} sia +caricato mettendo |\newcommand{\DoNotLoadEpstopdf}{}| (o |\def...|) prima +della dichiarazione \cs{documentclass}. Non viene caricato neppure se viene +usato il pacchetto \pkgname{pst-pdf}. Per maggiori dettagli, consultate la +documentazione del pacchetto \pkgname{epstopdf} +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +Un cambiamento correlato è che adesso è abilitata per default l'esecuzione +di alcuni comandi esterni a \TeX, tramite la funzionalità \cs{write18}. +Questi comandi sono \code{repstopdf}, \code{makeindex}, \code{kpsewhich}, +\code{bibtex} e \code{bibtex8}; la lista è definita in \code{texmf.cnf}. Gli +ambienti che devono disabilitare tutti questi comandi esterni possono +deselezionare questa opzione nell'installatore (consultate la +sezione~\ref{sec:options}), oppure rimpiazzare il valore dopo +l'installazione eseguendo |tlmgr conf texmf shell_escape 0|. + +Ancora un altro cambiamento correlato è che ora \BibTeX\ e Makeindex si +rifiutano di scrivere il proprio output in una directory arbitraria (come lo +stesso \TeX) per default. In questo modo diventa ora possibile consentirne +l'uso tramite lo stringente \cs{write18}. Per cambiare questo, può essere +impostata la variabile d'ambiente \envname{TEXMFOUTPUT} oppure può essere +modificata l'opzione |openout_any|. + +\XeTeX\ ora supporta la crenatura al margine lungo le stesse righe come +pdf\TeX\ (l'espansione dei caratteri non è supportata al momento). + +Per default, \prog{tlmgr} ora salva un backup di ciascun pacchetto +aggiornato (\code{tlmgr option autobackup 1}), così che gli aggiornamenti +con pacchetti danneggiati possano essere facilmente ripristinati con +\code{tlmgr restore}. Se eseguite aggiornamenti successivi all'installazione +e non avete spazio sul disco per i backup, eseguite \code{tlmgr option +autobackup 0}. + +Nuovi programmi inclusi: il motore p\TeX\ e le utilità correlate per la +composizione in giapponese; il programma \BibTeX{}U per un \BibTeX\ +compatibile con Unicode; l'utilità \prog{chktex} +(\url{http://baruch.ev-en.org/proj/chktex}) per controllare i documenti +\AllTeX; il traduttore da DVI a SVG \prog{dvisvgm} +(\url{http://dvisvgm.sourceforge.net}). + +Ora sono inclusi gli eseguibili per queste nuove piattaforme: +\code{amd64-freebsd}, \code{amd64-kfreebsd}, \code{i386-freebsd}, +\code{i386-kfreebsd}, \code{x86\_64-darwin}, \code{x86\_64-solaris}. + +Un cambiamento in \TL{} 2009 che ci siamo dimenticati di notare: numerosi +eseguibili legati a \TeX4ht (\url{http://tug.org/tex4ht}) sono stati rimossi +dalle directory degli eseguibili. Il programma generico \code{mk4ht} può +essere usato per eseguire una qualunque tra le varie combinazioni di +\code{tex4ht}. + +Infine, la versione di \TL{} sul \DVD\ TK\ non può più essere eseguita +``live'' (curiosamente). Un singolo \DVD\ non ha più abbastanza spazio. Un +effetto collaterale benefico è che l'installazione da un \DVD\ fisico è ora +molto più rapida. + +\subsubsection{2011} + +Gli eseguibili per \MacOSX\ (\code{universal-darwin} e \code{x86\_64-darwin} +ora funzionano solo su Leopard e succesivi; Panther e Tiger non sono più +supportati. + +Il programma \code{biber} per l'elaborazione delle bibliografie è incluso +per le piattaforme comuni. Il suo sviluppo è strettamente accoppiato con il +pacchetto \code{biblatex}, che reimplementa completamente l'infrastruttura +bibliografica fornita da LaTeX. + +Il programma MetaPost (\code{mpost}) non crea né usa più i file \code{.mem}. +I file necessari, come \code{plain.mp}, sono semplicemente letti ad ogni +esecuzione. Questo è correlato al supporto di MetaPost come libreria, che è +un'altra modifica significativa non visibile dall'utente. + +L'implementazione di \code{updmap} in Perl, precedentemente usata solo su +Windows, è stata rimodernata ed è ora usata su tutte le piattaforme. Non +dovrebbe esserci alcun cambiamento visibile dall'utente, tranne che ora gira +molto più velocemente. + +% +\htmlanchor{news} +\subsection{Present} +\label{sec:tlcurrent} + +\code{tlmgr} supporta gli aggiornamenti da archivi di rete multipli. La +sezione sugli archivi multipli nel messaggio di \code{tlmgr help} ha +ulteriori informazioni. + +Il parametro \cs{XeTeXdashbreakstate} ha il valore predefinito di~1 sia per +\code{xetex} che per \code{xelatex}. Questo permette l'interruzione delle +linee dopo i trattini lunghi e medi, che è stato sempre il comportamento di +\TeX, \LaTeX, Lua\TeX, ecc. I documenti \XeTeX\ esistenti che devono +mantenere la perfetta compatibilità con le interruzioni di linee, devono +impostare \cs{XeTeXdashbreakstate} a~0 esplicitamente. + +I file di output generati, tra gli altri, da \code{pdftex} e \code{dvips} +possono ora superare i 2gb. + +I 35 font standard di PostScript sono ora inclusi nell'output di \code{dvips} +per default, dato che ne esistono così tante versioni differenti. + +Nel modo di esecuzione ristretto \cs{write18}, impostato per default, +\code{mpost} è diventato un programma ammissibile. + +Un file \code{texmf.cnf} viene trovato anche in \filename{../texmf-local}, +se esiste (ad esempio, \filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf}). + +Lo script \code{updmap} legge un file \code{updmap.cfg} in ciascuna directory +invece di una configurazione globale. Questo cambiamento dovrebbe essere invisibile, +a meno che non abbiate modificato il vostro updmap.cfg direttamente. Il messaggio +mostrato da \code{updmap --help} dà ulteriori informazioni. + +Piattaforme: aggiunte \pkgname{armel-linux} e \pkgname{mipsel-linux}; +\pkgname{sparc-linux} e \pkgname{i386-netbsd} non fanno più parte della +distribuzione principale, ma sono disponibili per l'installazione come +eseguibili personalizzati, insieme con una varietà di altre piattaforme: +\url{http://tug.org/texlive/custom-bin.html}. + + +\subsection{Futuro} +%\subsection{Future} + +\emph{\TL{} non è perfetto!} (e mai lo sarà). Intendiamo di continuare a +fornire nuove versione e vorremmo fornire ulteriore materiale d'aiuto, più +programmi di utilità, più programmi di installazione e (ovviamente) un +ancor più migliorato e meglio controllato insieme di macro e font. Questo +lavoro è fatto completamente da volontari sovraccaricati nel loro +limitato tempo libero e quindi c'è sempre molto da fare. Visita il sito +\url{http://tug.org/texlive/contribute.html}. + +Potete inviare correzioni, suggerimenti e offerte d'aiuto a: +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Buon lavoro con \TeX!} + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-pl/Makefile b/Master/texmf-dist/doc/texlive/texlive-pl/Makefile new file mode 100644 index 00000000000..f91a1e554a1 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-pl/Makefile @@ -0,0 +1,2 @@ +include ../texlive-en/Makefile +doc = texlive-pl diff --git a/Master/texmf-dist/doc/texlive/texlive-pl/live4ht.cfg b/Master/texmf-dist/doc/texlive/texlive-pl/live4ht.cfg new file mode 100644 index 00000000000..508794f6918 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-pl/live4ht.cfg @@ -0,0 +1,52 @@ +% tex4ht configuration file for the TeX Live documentation. +% Accumulated over many years. Public domain. +% +% html specifies the main output format. +% info for extra debugging info in the log files. + +% have html in one piece (including footnotes). +%\Preamble{charset=iso-8559-2,html,info,fn-in} +\Preamble{html,info,fn-in} + +% add extra stylesheet +\Configure{@HEAD}{\HCode{% +\Hnewline +\Hnewline +}} +% use png graphics as-is +\Configure{graphics*} + {png} + {\Needs{""}% + \Picture[pict]{../texlive-common/\csname Gin@base\endcsname.png}% + } +% or LaTeX complains it is missing. +\begin{document} + +\EndPreamble + +% simplify output for HTML. We leave TeX and LaTeX alone, since tex4ht +% actually does the lowered E (and raised A) in CSS. +%\def\OMEGA{Omega} +\def\LaTeXe{LaTeX2e} +\def\eTeX{e-\TeX} +\def\acro#1{#1} +\def\MF{Metafont} +\def\BibTeX{BibTeX} +\def\warningbox{} +\def\endwarningbox{} + +\Configure{crosslinks}{[}{] + }{nastêpny}{poprzedni}{wstecz} + {pocz±tek}{koniec}{spis} + +\ifx\tldocenglish\undefined \else + % these definitions cause "missing } inserted" at \end{tabularx} in + % other langs. don't know why. + % + % don't make these into links, as happens with \path. We only have a few + % special characters that actually occur. + \def\dirname{\texttt\bgroup\catcode`\$=12 \catcode`\_=12 \catcode`\~=12 + \finishliteral} + \def\finishliteral#1{#1\egroup} + \let\filename=\dirname +\fi diff --git a/Master/texmf-dist/doc/texlive/texlive-pl/tex-live.css b/Master/texmf-dist/doc/texlive/texlive-pl/tex-live.css new file mode 100644 index 00000000000..b8aa763a0df --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-pl/tex-live.css @@ -0,0 +1,44 @@ +/* $Id: tex-live.css 3436 2007-01-13 22:34:01Z karl $ + Simple CSS for TeX Live that adds margins and a little color. + original by Bzyl Wlodzimierz, edited by Karl Berry, 2005. + Public domain. */ + +html { + // top left bottom right + margin: 15pt 15pt 15pt 15pt; + background: rgb(255,255,224); +} + +body { + margin: 0 5pt 0 5pt; + padding: 0; + //matw: background: rgb(224,255,224); + // (It looks better to me to have a consistent background --karl) +// fonts in browser are low resolution; +// therefore generated serif are poor quality, +// so they disturb reading (that is my opinion) + font-family: sans-serif; + font-style: normal; +} + +/* (It looks better to me to not vary colors at every level --karl) */ + +h3.sectionHead { + padding: 12pt 10pt 12pt 20pt; + //matw: background: rgb(192,224,255); + background: rgb(224,224,255); + color: rgb(0,0,32); +} + +h4.subsectionHead { + padding: 7pt 10pt 7pt 40pt; + background: rgb(224,224,255); + color: rgb(0,0,32); +} + +h5.subsubsectionHead { + padding: 3pt 10pt 3pt 40pt; + //matw: background: rgb(224,255,255); + background: rgb(224,224,255); + color: rgb(0,0,32); +} diff --git a/Master/texmf-dist/doc/texlive/texlive-pl/tex-livep.sty b/Master/texmf-dist/doc/texlive/texlive-pl/tex-livep.sty new file mode 100644 index 00000000000..4f4f54ea9e5 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-pl/tex-livep.sty @@ -0,0 +1,497 @@ +% TeX Live documentation style. Written by many people over many years. +% Public domain. +% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +\ProvidesPackage{tex-livep}[2010/07/10 v1.8 TeX Live documentation style] +% +% colortbl and other packages otherwise make the default be letter, it seems. +\RequirePackage[a4paper,hscale=0.75,lines=60,vmarginratio=10:8]{geometry} +% +\RequirePackage{alltt} +\RequirePackage{array} +\RequirePackage{colortbl} +\RequirePackage{comment} +\RequirePackage{float} +\RequirePackage{graphicx} +\RequirePackage{longtable} +\RequirePackage{shortvrb} +\RequirePackage[normalem]{ulem} +\RequirePackage[obeyspaces]{url} +\RequirePackage{xspace} +% +\RequirePackage{lmodern} +\usepackage{textcomp}% including \textbullet +\usepackage[T1]{fontenc} +%\usepackage[latin1]{inputenc} +% +% for a proper \acro command (even in the context of the definition in +% ltugboat -- \DRC overrides without checking) +\RequirePackage{relsize} +%\DeclareRobustCommand{\acro}[1]{\textsmaller{#1}\@} +\def\acro#1{\textscale{.9}{#1}\@} +% +\RequirePackage{fancyvrb} +\DefineVerbatimEnvironment{verbatim}{Verbatim}{fontsize=\normalsize} +\DefineVerbatimEnvironment{fverbatim}{Verbatim}{fontsize=\footnotesize} +\DefineVerbatimEnvironment{sverbatim}{Verbatim}{fontsize=\small} +\DefineVerbatimEnvironment{boxedverbatim} + {Verbatim}{fontsize=\footnotesize,frame=single} +\DefineVerbatimEnvironment{Verbatim}{Verbatim}{fontsize=\normalsize} +\def\verbatiminput#1{\VerbatimInput[fontsize=\scriptsize]{#1}} +\def\boxedverbatiminput#1{\VerbatimInput[frame=single,fontsize=\scriptsize]{#1}} +\def\listinginput#1#2{\VerbatimInput[fontsize=\scriptsize,firstnumber=#1,numbers=left]{#2}} +\MakeShortVerb\| +% +% +% Done with packages. +% +% Page layout. +\message{dimens: textwidth=\the\textwidth\space + oddsidemargin=\the\oddsidemargin\space + evensidemargin=\the\evensidemargin\space + textheight=\the\textheight\space + topmargin=\the\topmargin\space + footskip=\the\footskip} +% +% with settings above, and without a4 (hence letter): +% textwidth=424.49744pt oddsidemargin=22.25128pt evensidemargin=22.25128pt +% textheight=622.26999pt topmargin=-20.135pt footskip=-6.135pt +% +% with default a4paper geometry settings (not enough height): +% textwidth=418.25368pt oddsidemargin=17.3571pt evensidemargin=17.3571pt +% textheight=591.5302pt topmargin=-7.86334pt footskip=30.0pt +% +% with geometry settings [a4paper,hscale=0.75,lines=60,vmarginratio=10:8]: +% textwidth=448.1309pt oddsidemargin=2.41849pt evensidemargin=2.41849pt +% textheight=718.0pt topmargin=-38.68848pt footskip=30.0pt +% +%%\advance\textwidth by 1.1in +%%\advance\oddsidemargin by -.55in +%%\advance\evensidemargin by -.55in +%% +%\advance\textheight by 1in +%\advance\topmargin by -.5in +%\advance\footskip by -.5in +\pagestyle{headings} +% +% LaTeX parameters. +\renewcommand{\topfraction}{0.85} +\renewcommand{\floatpagefraction}{0.86} +\renewcommand{\textfraction}{0.1} +\renewcommand{\abovecaptionskip}{4pt} +\renewcommand{\belowcaptionskip}{4pt} +\setcounter{tocdepth}{3} +\setcounter{secnumdepth}{3} +\setcounter{topnumber}{5} +\setcounter{totalnumber}{5} +% +% linebreaking, etc. +\hbadness=4000 +\vbadness=4000 +\emergencystretch=.1\hsize +\relpenalty=500 +% +\def\slash{/\penalty\z@\hskip\z@skip } +% +% various sorts of names +\newcommand*{\pkgname}[1]{\textsf{#1}}% package name +\newcommand*{\optname}[1]{\texttt{#1}}% (package,class) option name +\newcommand*{\cmdname}[1]{\textsf{#1}}% command name +\newcommand*{\colname}[1]{\emph{#1}}% collection name +\newcommand*{\dirname}[1]{\path{#1}}% directory name +\def\filename#1{\path{#1}}% file name +\newcommand*{\envname}[1]{\texttt{#1}}% environment variable name +\newcommand{\code}[1]{\texttt{#1}} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\prog}[1]{\textsf{#1}}% same as \cmdname +\newcommand{\samp}[1]{`\texttt{#1}'} +\newcommand{\var}[1]{{\sl #1}}% not \textsl, for roman not typewriter slanted. +\newcommand{\ttvar}[1]{\texttt{\var{#1}}} +% +% underlined command input. +%\def\Ucom#1{% +% \uline{\rule[-.2\baselineskip]{0pt}{.9\baselineskip}\ttfamily #1}} +% bold command input +\def\Ucom#1{{\bfseries\ttfamily #1}} + +% \CDref is for url's with a #, where we need to write the target url and +% displayed url separately in the input, due to catcode madness. +% (We could simplify/remove this next time, I think.) +\def\CDref#1#2{\texttt{#1}} +% +% \OnCD is currently for any other reference to a file or directory in +% the distribution. PDF readers only open .pdf files, though, so we +% should change this to only use \href for those. Or more likely use +% different macros in the source. +% \OnCD no longer has any use at all, since we don't have unpacked files +% on the DVD and it has never worked when reading the PDF online. +\def\OnCD#1{\path{#1}} +%\def\OnCD#1{\href{../../../../#1}{\path{#1}}} +% +% \href incorrectly appends .pdf to anything without an extension; these +% definitions using \hyper@linkurl do not, but they fail for .pdf +% references -- which are the only ones that work anyway. So this is +% useless, in practice. +%\def\CDref#1#2{\hyper@linkurl{#2}{../../../../#1}} +%\def\OnCD#1{\hyper@linkurl{\path{#1}}{../../../../#1}} + +% GUI menu/button/tab sequence: +\def\guiseq#1{\textsf{#1}} +\def\arw{\unskip$\rightarrow$\ignorespaces} +% +% Special names. +\def\dpi{$\,$dpi\xspace} +\def\bs{{\protect\normalfont\ttfamily\char'134}} +\DeclareRobustCommand{\cs}[1]{{\normalfont\ttfamily\char`\\#1}} +\def\Q#1{\par\vskip6pt\leftline{#1}\par} +\def\hyph{-} +% +% many abbreviations. +\def\AllTeX{(\La\kern-.075em)\kern-.075em\TeX} +%\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% +% \hbox{$\mathcal{S}$}\kern-.075em $} +\def\AFMtoTFM{\cmdname{AFM2TFM}\null} +\def\bv{\emph{Baskerville}} +\let\BV=\bv +\newcommand{\CS}{$\mathcal{C}\kern-.1667em\lower.5ex% + \hbox{$\mathcal{S}$}\kern-.075em $} +\def\Dash{\unskip\nobreak\thinspace---\thinspace\ignorespaces} +\def\dvicopy{\cmdname{dvicopy}} +\def\dvidvi{\cmdname{dvidvi}} +\def\dvips{\cmdname{dvips}} +\def\eTeX{$\varepsilon$-\TeX} +\def\fpTeX{\textrm{fp}\TeX\xspace} +\def\GFtoDVI{\cmdname{GFtoDVI}\null} +\def\GFtoPK{\cmdname{GFtoPK}\null} +\def\GFtype{\cmdname{GFtype}} +\def\GUI{\acro{GUI}\xspace} +\def\KPS{Kpathsea} +% This code % is hacked from its definition of \cs{LaTeX}; it allows +% slants (for example) to propagate into the raised (small) `A': +\newcommand{\La}% + {L\kern-.36em + {\setbox0\hbox{T}% + \vbox to\ht0{\hbox{$\m@th$% + \csname S@\f@size\endcsname + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + A}% + \vss}% + }} +\def\OMEGA{$\Omega$} +\def\OzMF{OzMF} +\def\OzMP{OzMP} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\OzTeX{O\kern-.03em z\kern-.15em\TeX} +\def\p.{p.\,} +\def\PKtype{\cmdname{PKtype}} +\def\PLtoTF{\cmdname{PLtoTF}\null} +\def\ProTeXt{pro\TeX t} +\def\teTeX{\textrm{te}\TeX\xspace} +\def\TeXLive{\TeX{} Live\xspace} +\def\TFtoPL{\cmdname{TFtoPL}\null} +\def\TK{\TeX\ Collection} +\let\TL=\TeXLive +\def\TypeI{Type~1} +\def\VFtoVP{\cmdname{VFtoVP}\null} +\def\VPtoVF{\cmdname{VPtoVF}\null} +\def\Thanh{H\`an~Th\ifx % get Unicode char in tex4ht's HTML output + \HCode\UnDef\^e\llap{\raise 0.5ex\hbox{\'{}}}\else + \HCode{\string&\#x1EBF;}\fi~Th\`anh} +\def\XEmTeX{\textrm{XEm}\TeX\xspace} +\def\XEmacs{\textrm{XEmacs}\xspace} +\def\XeTeX{Xe\TeX} +\def\Webc{Web2C} +\providecommand*{\CD}{\acro{CD}\xspace} +\providecommand*{\CTAN}{\acro{CTAN}\xspace} +\providecommand*{\DVD}{\texorpdfstring{\acro{DVD}}{DVD}\xspace} +\providecommand*{\ISO}{\texorpdfstring{\acro{ISO}}{ISO}\xspace} +\providecommand*{\GNU}{\acro{GNU}\xspace} +\providecommand*{\HTML}{\acro{HTML}\xspace} +\providecommand*{\MacOSX}{Mac\,\acro{OS\,X}\xspace} +\providecommand*{\PS}{Post\-Script\xspace} +\providecommand*{\TDS}{\acro{TDS}\xspace} +\providecommand*{\USB}{\texorpdfstring{\acro{USB}}{USB}\xspace} +\providecommand*{\dvi}{\acro{DVI}\xspace} +\providecommand*{\web}{\texttt{WEB}\xspace} + +% Include an image. +% #1 - name of image (pictures/#1.jpg, always .jpg please) +% #2 - bb for html +% #3 - width for TeX +% +\def\tlimage#1#2#3{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[#2]{../../general/texlive-common/pictures/#1.jpg} + \else % not html, handled by TEXINPUTS in Makefile + \includegraphics[width=#3]{pictures/#1.jpg} + \fi + \\[5mm] +} + +\def\tlpng#1#2{% + \ifnum \Status=2 % html, want relative path in output + \includegraphics[bb=0 0 1 1]{#1.png}% + \else % not html, handled by TEXINPUTS in Makefile +% \includegraphics[width=#2]{#1.png}% + \includegraphics[width=#2]{#1.png}% + \fi +} + +% +% description-like environment that uses tt instead of bf, and doesn't +% go to the left margin. Without the \hfil, get an underfull box. +% Don't know why \descriptionlabel doesn't. +% +\newenvironment{ttdescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt % these lists tend to have short descriptions + \parindent=0pt + \let\makelabel=\ttdescriptionlabel}}% + {\end{list}} +\newcommand*\ttdescriptionlabel[1]{\hspace\labelsep + \normalfont\ttfamily #1\hfil} +% +% Likewise, for commands using sans serif. +\newenvironment{cmddescription} + {\begin{list}{label must be supplied}{% + \itemsep=0pt + \let\makelabel=\cmddescriptionlabel}}% + {\end{list}} +\newcommand*\cmddescriptionlabel[1]{\hspace\labelsep + \normalfont\sffamily #1\hfil} + +% General squeezed itemize/enumerate. +\newenvironment{itemize*}% + {\begin{itemize}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{itemize}} + +\newenvironment{enumerate*}% + {\begin{enumerate}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}}% + {\end{enumerate}} + +\newsavebox{\wbox} +\newenvironment{warningbox} + {\begin{lrbox}{\wbox} + \begin{minipage}{.95\textwidth}} + {\end{minipage}\end{lrbox}\fbox{\usebox{\wbox}}} +% +% lrbox is used as a representation marking. I changed it to +% lrBox in tne source file, to get closer to logical marking +\newsavebox{\mylrbox} +\newenvironment{lrBox} + {\begin{lrbox}{\mylrbox}} + {\end{lrbox}} + + +% emacs-page output setup +% +\ifx \HCode\UnDef + \providecommand{\Status}{0}% running TeX +\else + \providecommand{\Status}{2}% running TeX4ht +\fi +%\typeout{Status is \Status} +% +\newif\ifSingleColumn +% +% By default, we won't be creating hyperlinks. +\def\href#1#2{#2} +\def\hypertarget#1#2{} +\def\email#1{\href{mailto:#1}{\path{#1}}} % \path comes from url +\def\htmlanchor#1{} +% +\definecolor{hypercolor}{rgb}{0.5,0.0,0.5} % purplish external links. +% +% +\ifcase\Status + % \Status = 0 + \typeout{TeX Live documentation in DVI format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 1 + \typeout{TeX Live documentation in PDF format} + \RequirePackage[breaklinks, + colorlinks,linkcolor=hypercolor,citecolor=hypercolor, + urlcolor=hypercolor,filecolor=hypercolor, + bookmarksopen, + %pdfstartview={FitBH -320000}, % fails with acrobat7 + hyperindex] + {hyperref} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + \or + % \Status = 2 + \typeout{TeX Live documentation in HTML format} + \SingleColumntrue + \newenvironment{multicols}[1]{}{} + % read our config file, live4ht.cfg; q.v., for more definitions. + % hyperref load must come after the tex4ht load. + \RequirePackage[live4ht]{tex4ht} + \RequirePackage[tex4ht]{hyperref} \hyperlinkfileprefix{} + % definitions need simplifying for TeX4ht to make relative paths work. + \def\CDref#1#2{\href{../../../../#1}{#2}} + \def\OnCD#1{\href{../../../../#1}{#1}} + \def\htmlanchor#1{\HCode{}} + \or + % \Status = 3 + \typeout{TeX Live documentation as a Baskerville issue} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \RequirePackage{bvoutln}% outline of baskerville + \SingleColumnfalse + \RequirePackage{multicol} + \or + % \Status = 4 + \typeout{TeX Live documentation as a TUB article} + \@ifundefined{Fonts}% + {\RequirePackage{ae}}% + {\RequirePackage[T1]{\Fonts}} + \SingleColumnfalse + \newenvironment{multicols}[1]{}{} +\fi +% +\ifnum \Status=4 +\else + \RequirePackage{texnames} + \providecommand\TeXXeT{\TeX-{}-% + \kern-.1emX\kern-.125em\lower.5ex\hbox{E}\kern-.1667emT\@} + \def\MP{MetaPost} + \let\mf\MF + \newcommand\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} + \newcommand\MIKTEX{MiK\kern-.025em \TeX}% per www.miktex.org + % from pictex.tex: + \ifx\PiC\undefined \def\PiC{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} \fi + \ifx\PiCTeX\undefined \def\PiCTeX{\PiC\kern-.11em\TeX} \fi +\fi +% +% hacking at sections etc., to pay attention to baskerville status +\newcommand{\@condend@multicols}{% + \ifSingleColumn + \else + \def\@tempa{multicols}% + \ifx\@tempa\@currenvir + \end{multicols}% + \fi + \fi +} +\let\Section\section +\renewcommand{\section}{% + \@ifstar + {\Section*}% + {% + \@condend@multicols + \@dblarg\@full@section + }% +} +\def\@full@section[#1]#2{% + \Section[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} +\let\SubSection\subsection +\renewcommand{\subsection}{% + \@ifstar{\SubSection*}% + {% + \@condend@multicols + \@dblarg\@full@subsection + } +} +\def\@full@subsection[#1]#2{% + \SubSection[#1]{#2}% + \ifSingleColumn\else\begin{multicols}{2}\fi +} + +% calm things down a bit if we're in a multiple-column version +\ifSingleColumn +\else + \def\@listI{\leftmargin\leftmargini + \parsep \z@ + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \itemsep \z@ \@plus .1\p@ + } + \let\@listi\@listI + \@listi + \def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii\advance\labelwidth-\labelsep + \topsep 2\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \itemsep \z@ \@plus .1\p@ + } + \def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii\advance\labelwidth-\labelsep + \topsep 1\p@ \@plus 1\p@ \@minus 1\p@ + \parsep \z@ + \partopsep \z@ + \itemsep \topsep + } + \def\@listiv{\leftmargin\leftmarginiv + \labelwidth\leftmarginiv\advance\labelwidth-\labelsep + } + \def\@listv{\leftmargin\leftmarginv + \labelwidth\leftmarginv\advance\labelwidth-\labelsep + } + \def\@listvi{\leftmargin\leftmarginvi + \labelwidth\leftmarginvi\advance\labelwidth-\labelsep + } +\fi +% +% array package stuff +\def\arraybackslash{\let\\=\@arraycr} +\newcolumntype{P}[1]{>{\raggedright\arraybackslash}p{#1}} +% +% shaded rows (using facilities of colortbl) +% +\definecolor{pale}{gray}{.9} +\newcount\colrow +\gdef\RowColor{pale} +\def\SetRowColor{% + \rowcolor{\RowColor}% + \global\advance\colrow by1\relax + \ifodd\colrow + \gdef\RowColor{pale}% + \else + \gdef\RowColor{white}% + \fi +} +% redefine to hack up a reference even though we don't need it... +\renewcommand\@bibitem[1]{\if@filesw \immediate\write\@auxout + {\string\bibcite{#1}{?}}\fi\ignorespaces} +% +% \unknownTeXlive is a dummy texlive entry for the biblio +\newcommand\unknownTeXlive[2][\relax]{\textbf{\textsc{unknown}}% + \global\@all@unknown\expandafter{\the\@all@unknown{#2}}% +} +\newtoks\@all@unknown +\global\@all@unknown{} +\AtEndDocument{\@message@unknowns} +\def\@message@unknowns{\edef\@tempa{\the\@all@unknown}% + \ifx\@tempa\@empty + \else + \def\@tempa{*** TeX Live package location of }% + \expandafter\@output@unknowns\the\@all@unknown\@empty + \fi +} +\def\@output@unknowns#1{\edef\@tempb{#1}% + \ifx\@tempb\@empty + \typeout{ unknown}% + \else + \message{\@tempa#1,}% + \def\@tempa{}% + \expandafter\@output@unknowns + \fi +} + + +% Silence font warnings about no bold typewriter in LM. +\def\@font@warning#1{}% + +% Silence hyperref warnings about \kern. +\def\HyPsd@Warning#1{}% + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.css b/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.css new file mode 100644 index 00000000000..ba915268b0b --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.css @@ -0,0 +1,380 @@ + +/* start css.sty */ +.ec-lmr-17{font-size:170%;} +.ec-lmri-12x-x-172{font-size:206%; font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmri-12x-x-172{ font-style:italic;} +.ec-lmss-17{font-size:170%; font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmss-17{ font-family: sans-serif;} +.ec-lmr-12{font-size:120%;} +.ec-lmtt-12{font-size:120%; font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-12{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmtt-10{ font-family: monospace;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmss-10{ font-family: sans-serif;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmri-10{ font-style:italic;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmbx-10{ font-weight: bold;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtk-10{ font-family: monospace;} +.ec-lmtt-8{font-size:80%; font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmtt-8{ font-family: monospace;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmro-10{ font-style: oblique;} +.ec-lmtt-9{font-size:90%; font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtt-9{ font-family: monospace;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmtti-10{ font-family: monospace; font-style:italic;} +.ec-lmr-7{font-size:70%;} +.ec-lmtt-8x-x-87{font-size:69%; font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +.ec-lmtt-8x-x-87{ font-family: monospace;} +p.noindent { text-indent: 0em } +td p.noindent { text-indent: 0em; margin-top:0em; } +p.nopar { text-indent: 0em; } +p.indent{ text-indent: 1.5em } +@media print {div.crosslinks {visibility:hidden;}} +a img { border-top: 0; border-left: 0; border-right: 0; } +center { margin-top:1em; margin-bottom:1em; } +td center { margin-top:0em; margin-bottom:0em; } +.Canvas { position:relative; } +img.math{vertical-align:middle;} +li p.indent { text-indent: 0em } +li p:first-child{ margin-top:0em; } +li p:last-child, li div:last-child { margin-bottom:0.5em; } +li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } +.enumerate1 {list-style-type:decimal;} +.enumerate2 {list-style-type:lower-alpha;} +.enumerate3 {list-style-type:lower-roman;} +.enumerate4 {list-style-type:upper-alpha;} +div.newtheorem { margin-bottom: 2em; margin-top: 2em;} +.obeylines-h,.obeylines-v {white-space: nowrap; } +div.obeylines-v p { margin-top:0; margin-bottom:0; } +.overline{ text-decoration:overline; } +.overline img{ border-top: 1px solid black; } +td.displaylines {text-align:center; white-space:nowrap;} +.centerline {text-align:center;} +.rightline {text-align:right;} +div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } +.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.fbox {display:table} +div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.minipage{width:100%;} +div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} +div.center div {text-align: left;} +div.flushright, div.flushright div.flushright {text-align: right;} +div.flushright div {text-align: left;} +div.flushleft {text-align: left;} +.underline{ text-decoration:underline; } +.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } +.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +.framebox-c {text-align:center;} +.framebox-l {text-align:left;} +.framebox-r {text-align:right;} +span.thank-mark{ vertical-align: super } +span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } +div.footnotes{border-top:solid 1px black; border-bottom:solid 1px black; padding-bottom:1ex; padding-top:0.5ex; margin-right:15%; margin-top:2ex; font-style:italic; font-size:85%;} +div.footnotes p{margin-top:0; margin-bottom:0; text-indent:0;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +.tabbing-right {text-align:right;} +span.TEX {letter-spacing: -0.125em; } +span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} +a span.TEX span.E {text-decoration: none; } +span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} +span.LATEX span.TEX{ position:relative; left: -0.4em; } +div.float, div.figure {margin-left: auto; margin-right: auto;} +div.float img {text-align:center;} +div.figure img {text-align:center;} +.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} +.marginpar p{margin-top:0.4em; margin-bottom:0.4em;} +table.equation {width:100%;} +.equation td{text-align:center; } +td.equation { margin-top:1em; margin-bottom:1em; } +td.equation-label { width:5%; text-align:center; } +td.eqnarray4 { width:5%; white-space: normal; } +td.eqnarray2 { width:5%; } +table.eqnarray-star, table.eqnarray {width:100%;} +div.eqnarray{text-align:center;} +div.array {text-align:center;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.pmatrix img{vertical-align:middle;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.bar-css {text-decoration:overline;} +img.cdots{vertical-align:middle;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +div.array {text-align:center;} +.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} +.index-item, .index-subitem, .index-subsubitem {display:block} +div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} +div.caption span.id{font-weight: bold; white-space: nowrap; } +h1.partHead{text-align: center} +p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} +.subparagraphHead, .likesubparagraphHead { font-weight: bold;} +.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} +.verse{white-space:nowrap; margin-left:2em} +div.maketitle {text-align:center;} +h2.titleHead{text-align:center;} +div.maketitle{ margin-bottom: 2em; } +div.author, div.date {text-align:center;} +div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } +.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } +.abstract p {margin-left:5%; margin-right:5%;} +div.abstract {width:100%;} +.alltt P { margin-bottom : 0em; margin-top : 0em; } +.alltt { margin-bottom : 1em; margin-top : 1em; } +.figure img.graphics {margin-left:10%;} +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +div.longtable{text-align:center;} +.uline{ text-decoration:underline; } +.uuline{ text-decoration:underline; } +span.sout {text-decoration: line-through } +span.xout {text-decoration: line-through } +span.uwave {text-decoration:underline } +P.fancyvrb {white-space: nowrap; margin:0em;} +div#fancyvrb1{ border-top: solid 0.4pt; } +div#fancyvrb1{ border-left: solid 0.4pt; } +div#fancyvrb1{ border-bottom: solid 0.4pt; } +div#fancyvrb1{ border-right: solid 0.4pt; } +div#fancyvrb2{ border-top: solid 0.4pt; } +div#fancyvrb2{ border-left: solid 0.4pt; } +div#fancyvrb2{ border-bottom: solid 0.4pt; } +div#fancyvrb2{ border-right: solid 0.4pt; } +div#fancyvrb3{ border-top: solid 0.4pt; } +div#fancyvrb3{ border-left: solid 0.4pt; } +div#fancyvrb3{ border-bottom: solid 0.4pt; } +div#fancyvrb3{ border-right: solid 0.4pt; } +div#fancyvrb4{ border-top: solid 0.4pt; } +div#fancyvrb4{ border-left: solid 0.4pt; } +div#fancyvrb4{ border-bottom: solid 0.4pt; } +div#fancyvrb4{ border-right: solid 0.4pt; } +/* end css.sty */ + diff --git a/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.html b/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.html new file mode 100644 index 00000000000..0e2ea49f78d --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.html @@ -0,0 +1,6942 @@ + + + + Przewodnik po TEX Live +TeX Live 2012 + + + + + + + + + + +

+ + + + + +

Przewodnik po TEX Live
+TEX Live 2012

+
Redakcja: Karl Berry +
http://tug.org/texlive/

+
Czerwiec 2012
+
+

Spis treści

+
+ 1 Wstęp +
 1.1 TEX Live i TEX Collection +
 1.2 Obsługiwane systemy operacyjne +
 1.3 Podstawy instalacji TEX Live +
 1.4 Uwagi dotyczące bezpieczeństwa +
 1.5 Dostępna pomoc +
2 Struktura TEX Live +
 2.1 TEX Collection: TEX Live, proTEXt, MacTEX +
 2.2 Główne katalogi TEX Live +
 2.3 Predefiniowane drzewa katalogów texmf +
 2.4 Rozszerzenia TEX-a +
 2.5 Inne ważniejsze programy TEX Live +
 2.6 Pakiety i ich zestawy +
 2.7 Fonty w TEX Live +
3 Instalacja +
 3.1 Start instalacji +
  3.1.1 Unix +
  3.1.2 MacOSX +
  3.1.3 Windows +
  3.1.4 Cygwin +
  3.1.5 Instalator w trybie tekstowym +
  3.1.6 Zaawansowany program instalacyjny w trybie graficznym +
  3.1.7 Uproszczony program instalacyjny +
 3.2 Podczas instalacji +
  3.2.1 Menu: binary systems (tylko Unix) +
  3.2.2 Wybór składników do instalacji +
  3.2.3 Katalogi +
  3.2.4 Opcje +
 3.3 Parametry instalacji z linii poleceń +
  3.3.1 Parametr -repository +
 3.4 Czynności poinstalacyjne +
  3.4.1 Zmienne środowiska dla Unix +
  3.4.2 Zmienne środowiska: konfiguracja globalna +
  3.4.3 Aktualizacje z internetu po instalacji z DVD +
  3.4.4 Konfiguracja fontów dla XeTEX i LuaTEX +
  3.4.5 ConTEXt Mark IV + + +
  3.4.6 Integracja lokalnych i prywatnych pakietów makr +
  3.4.7 Integracja fontów z innych źródeł +
 3.5 Testowanie instalacji +
 3.6 Programy pomocnicze dla Windows +
4 Instalacje zaawansowane +
 4.1 Instalacje dla wielu użytkowników (lub wieloplatformowe) +
 4.2 Przenośna instalacja na pen drivie USB +
 4.3 Instalacje z pliku obrazu ISO (lub DVD) +
5 tlmgr: zarządzanie instalacją +
 5.1 tlmgr – tryb graficzny (GUI) +
 5.2 Przykładowe wywołania tlmgr z linii poleceń +
6 Uwagi dotyczące Windows +
 6.1 Cechy specyficzne w systemie Windows +
 6.2 User Profile to inaczej Home (katalog domowy) +
 6.3 Rejestr Windows +
 6.4 Uprawnienia w Windows +
 6.5 Zwiększanie maksymalnej ilości dostępnej pamięci w Windows i Cygwin +
7 W razie problemów +
 7.1 Co zrobić gdy latex nie może znaleźć potrzebnych plików? +
8 Instrukcja obsługi systemu Web2C +
 8.1 Przeszukiwanie ścieżek przez Kpathsea +
  8.1.1 Źródła ścieżek +
  8.1.2 Pliki konfiguracyjne +
  8.1.3 Rozwijanie ścieżek +
  8.1.4 Rozwijanie domyślne +
  8.1.5 Rozwijanie nawiasów +
  8.1.6 Rozwijanie podkatalogów +
  8.1.7 Lista znaków specjalnych i ich znaczeń – podsumowanie +
 8.2 Bazy nazw plików +
  8.2.1 Baza nazw plików +
  8.2.2 kpsewhich – program do przeszukiwania ścieżek +
  8.2.3 Przykłady użycia +
  8.2.4 Diagnostyka błędów +
 8.3 Parametry kontrolujące działanie programów +
9 Budowa systemu na nowej platformie uniksowej +
 9.1 Warunki wstępne +
 9.2 Konfiguracja +
 9.3 Uruchamianie make +
 9.4 Końcowe kroki konfiguracyjne +
10 Podziękowania +
11 Historia +
 11.1 Poprzednie wersje +
 11.2 Wydanie 2004 +
 11.3 Wydanie 2005 +
 11.4 Wydanie 2006–2007 +
 11.5 Wydanie 2008 +
 11.6 Wydanie 2009 +
 11.7 Wydanie 2010 +
 11.8 Wydanie 2011 +
 11.9 Obecna edycja +
 11.10 Przyszłe wersje +
+

1. Wstęp

+ + +

+

1.1. TEX Live i TEX Collection

+

Niniejsza dokumentacja opisuje oprogramowanie TEX Live – dystrybucję TEX-a wraz z programami +pomocniczymi, dostępną dla różnych wersji Unix, w tym GNU/Linux, Mac OS X i Cygwin, oraz +Windows. +

TEX Live można ściągnąć z sieci bądź otrzymać na płytce DVD TEX Collection, dostarczanej swoim +członkom przez Grupy Użytkowników Systemu TEX. Część 2.1 omawia pokrótce zawartość tej płytki. +Zarówno TEX Live, jak i TEX Collection powstały dzięki zbiorowemu wysiłkowi Grup. W tym dokumencie +omówimy głównie samą dystrybucję TEX Live. +

TEX Live zawiera skompilowane programy: TEX, LaTeX2e, Metafont, MetaPost, BibTeX i wiele innych +oraz bogaty zestaw pakietów makr o wielorakim zastosowaniu, a także fonty i dokumentacje. Wszystko to +umożliwia skład publikacji w wielu językach. +

Pakiety zawarte w TEX Live są regularnie aktualizowane z serwerów CTAN (Comprehensive TeX Archive +Network), które gromadzą wszelkie zasoby dotyczące systemu TEX: http://www.ctan.org. +

Lista najważniejszych zmian dokonanych w tej edycji TEX Live znajduje się w części 11.9, na +str. 92. +

Nie opisujemy tu, czym jest system TEX, a jedynie kwestię instalacji i konfiguracji oprogramowania TEX +Live. Początkujący użytkownicy mogą się zapoznać z podstawowymi pojęciami np. w artykule Przewodnik po +systemie TEX: texmf-dist/doc/generic/tex-virtual-academy-pl/cototex.html. +

+

1.2. Obsługiwane systemy operacyjne

+

TEX Live zawiera oprogramowanie dla wielu platform uniksowych, w tym GNU/Linux, Mac OS X +i Cygwin. Załączone pliki źródłowe pozwalają też na jego instalację na platformach innych systemów +operacyjnych. +

Spośród systemów Windows obsługiwane są tylko XP i nowsze wersje (choć w Windows 2000 TEX Live +też w zasadzie działa). Wprawdzie brak jest oprogramowania dedykowanego dla wersji 64-bitowych, ale +aplikacje 32-bitowe powinny na nich działać. +

W części 2.1 omówiono alternatywne dystrybucje, przeznaczone dla Windows oraz Mac OS X. +

+

1.3. Podstawy instalacji TEX Live

+

TEX Live można zainstalować z płytki DVD lub internetu (http://tug.org/texlive/acquire.html). +Program instalacyjny jest niewielki i pozwala pobrać z sieci wszystkie potrzebne pakiety. Jest to wygodne, +zwłaszcza gdy potrzebujemy jedynie części oprogramowania TEX Live i nie chcemy pobierać niepotrzebnie +obrazu całej płyty instalacyjnej. +

Posiadając płytkę TEX Collection DVD (lub jej obraz w pliku .iso) możemy jedynie zaistalować TEX +Live na twardym dysku, lub przygotować przenośną instalację np. na pen drivie (patrz część 4.2). +Szczegółowy opis instalacji TEX Live znajduje się w dalszych rozdziałach tego dokumentu, tu podamy +skrócony przepis: +

    +
  • program instalacyjny install-tl może działać w kilku trybach: tzw. „wizard” (graficznym, + parametr -gui=wizard) – domyślnym dla Windows; tekstowym (-gui=text, domyślnym dla + Unix/Linux) i graficznym trybie „expert” (parametr -gui=perltk). Dla wygody użytkowników + Windows uruchomienie install-tl-advanced.bat przełącza instalator w tryb „expert”. +
  • +
  • jednym z instalowanych programów jest tlmgr (menedżer TEX Live), który również można + uruchamiać w trybie tekstowym bądź graficznym; pozwala on doinstalować lub usunąć pakiety, + aktualizować je z sieci, a także wykonać różne czynności konfiguracyjne. +
+

+ + +

1.4. Uwagi dotyczące bezpieczeństwa

+

Zgodnie z naszą najlepszą wiedzą, główne programy TEX-owe są (i zawsze były) nadzwyczaj odporne. Jednak +mimo dokładania najwyższej staranności, inne programy wspierające, zawarte w TEX Live, nie zawsze +osiągają ten sam poziom. Jak zawsze, należy być ostrożnym przy uruchamianiu programów z danymi +pochodzącymi z niepewnych źródeł. Dla uzyskania najwyższego stopnia bezpieczeństwa zalecamy stosowania +podczas pracy nowych podfolderów. +

Konieczność zachowania staranności jest szczególnie ważna w systemie Windows, ponieważ +niezależnie od zawartości ścieżki przeszukiwania poszukuje on programów zawsze najpierw w bieżącym +folderze. To zachowanie systemu otwiera szerokie możliwości ataku. Usunęliśmy wiele luk, lecz +niewątpliwie niektóre jeszcze pozostały, szczególnie przy uruchamianiu programów pochodzących +z innych źródeł. Zalecamy więc sprawdzanie bieżących folderów pod kątem obecności podejrzanych +plików, w szczególności plików wykonywalnych (binarnych lub skryptów). Zwykle nie powinno +ich być, a w szczególności nie powinny być one tworzone w wyniku zwykłego przetwarzania +dokumentów. +

I na koniec: TEX (oraz towarzyszące mu programy) mogą tworzyć pliki przy przetwarzaniu dokumentów. +Własność ta jest na wiele różnych sposobów podatna na nadużycia. Także w tych przypadkach, +przetwarzanie nieznanych dokumentów w nowych podfolderach jest najlepszym znanym sposobem +zabezpieczenia. +

+

1.5. Dostępna pomoc

+

Społeczność TEX-owa jest bardzo aktywna i pomocna, stąd też większość poważnych zapytań nie pozostaje +bez odpowiedzi. Przed zadaniem pytania warto je uprzednio dobrze przemyśleć i sformułować, ponieważ +respondenci to wolontariusze, wśród których znaleźć się mogą mniej lub bardziej doświadczeni użytkownicy. +(Jeśli preferujemy komercyjne wsparcie techniczne, możemy zamiast TEX Live zakupić system u jednego +z dostawców, których listę można znaleźć na http://tug.org/interest.html#vendors.) +

Oto lista źródeł pomocy, w kolejności przez nas rekomendowanej: +

+

+TEX FAQ
TEX-owy FAQ jest obszernym zbiorem odpowiedzi na wiele pytań, od najprostszych do + najbardziej zaawansowanych. Jest on + załączony na TEX Live w katalogu texmf-dist/doc/generic/FAQ-en/html/index.html, a także + dostępny w sieci: http://www.tex.ac.uk/faq. Proponujemy zajrzeć najpierw tam. Uruchomiono + też serwis FAQ w języku polskim: http://faq.gust.org.pl. +
+TEX Catalogue
Jeśli poszukujemy konkretnego pakietu, fontu, programu itp., to polecamy TEX + Catalogue. Jest to obszerne zestawienie wszelkich pakietów dotyczących TEX-a. Patrz: + http://mirror.ctan.org/help/Catalogue/. +
+TEX Web Resources
Strona http://tug.org/interest.html zawiera wiele odsyłaczy, + w szczególności do książek, podręczników i artykułów poświęconych wszelkim aspektom pracy + z systemem TEX. +
+archiwa pomocy
+ Dwa główne fora pomocy to grupa Usenet news:comp.text.tex oraz lista dyskusyjna texhax@ + tug.org. Warto przeszukać archiwa list dyskusyjnych, zawierające wiele pytań i odpowiedzi + zbieranych przez wiele lat: http://groups.google.com/group/comp.text.tex/topics oraz + http://tug.org/mail-archives/texhax. Nie zaszkodzi skorzystanie z wyszukiwarki, np. + http://www.google.com. +
+wysyłanie pytań
Jeśli nadal nie znajdujemy rozwiązania problemu, to możemy wysłać pytanie do + comp.text.tex, korzystając z Google, czytnika wiadomości bądź pisząc list na adres texhax@ + tug.org. Przedtem jednak należy zapoznać się z poradami dotyczącymi sposobu zadawania + pytań, zawartymi w FAQ: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion. + + + Warto wspomnieć stronę LATEX Community (http://www.latex-community.org/), forum + http://www.latex-community.org/forum/ oraz TEX StackExchange + (http://tex.stackexchange.com/). Polscy użytkownicy mają do dyspozycji listę dyskusyjną + GUST (polskiej Grupy Użytkowników Systemu TEX); informacje o niej znajdziemy na stronie + http://www.gust.org.pl. +
+wsparcie ze strony społeczności TEX Live
Gdy chcemy zgłosić błąd bądź sugestie i komentarze + dotyczące dystrybucji TEX Live, instalacji lub dokumentacji, mamy do dyspozycji listę dyskusyjną + tex-live@tug.org. Jeśli kwestia dotyczy konkretnego programu (pakietu makr itp.) z TEX + Live, to lepiej jednak skierować pytanie do osoby opiekującej się danym programem lub na + specjalistyczną listę dyskusyjną. +
+

Druga strona medalu to pomaganie tym, którzy mają problemy. Zarówno comp.text.tex, jak i texhax +(oraz lista dyskusyjna GUST) są otwarte dla każdego, tak więc zapraszamy do włączenia się, czytania +wiadomości i pomagania innym w miarę własnych możliwości. Witamy wśród użytkowników systemu +TEX! +

+

2. Struktura TEX Live

+

Omówimy tutaj strukturę i zawartość dystrybucji TEX Live, a także TEX Collection – płytki DVD, w skład +której wchodzi TEX Live. +

+

2.1. TEX Collection: TEX Live, proTEXt, MacTEX

+

TEX Collection DVD zawiera: +

+

+TEX Live
kompletny system na DVD, pozwala na instalację na twardym dysku lub przygotowanie + przenośnej instalacji np. na pen drivie; strona domowa projektu: http://tug.org/texlive/. +
+MacTEX
dla systemu Mac OS X; posiada własny program instalacyjny i dodatkowe programy dla + tego systemu; strona domowa projektu: http://tug.org/mactex/; +
+proTEXt
dystrybucja dla Windows, oparta na dystrybucji MiKTEX, rozszerzonej o dodatkowe + narzędzia; całkowicie niezależna od TEX Live; proTEXt posiada własny, łatwy w obsłudze + program instalacyjny; strona domowa projektu: http://tug.org/protext; +
+CTAN
zrzut zawartości archiwów CTAN; (http://www.ctan.org). +
+texmf-extra
katalog z wybranymi pakietami dodatkowymi. +
+

CTAN, protext, i texmf-extra nie spełniają przyjętych dla TEX Live wymogów dotyczących swobody +kopiowania, wobec tego należy ten fakt uwzględnić przy redystrybucji bądź modyfikacji zawartości +wymienionych katalogów. + + +

+

2.2. Główne katalogi TEX Live

+

Poniżej wymieniono ważniejsze podkatalogi głównego katalogu instalacji TEX Live (na płytce +TEX Collection DVD cała dystrybucja TEX Live została umieszczona w katalogu texlive, którego struktura +nieco się różni, nie zaś w katalogu głównym; poniżej traktujemy katalog texlive jako katalog główny we +wszystkich odniesieniach do TEX Live). +

+

+ bin
+

skompilowane programy TEX-owe, zorganizowane w podkatalogach według platform + systemowych; +

+ readme-*.html
+

krótkie omówienie z użytecznymi odnośnikami, w kilku językach, w formacie HTML i zwykłym + tekstowym; +

+ source
+

źródła wszystkich programów, włącznie z głównymi dystrybucjami Web2C TEX-a; +

+ texmf
+

drzewo katalogów plików pomocniczych i dokumentacji dla programów (patrz: TEXMFMAIN + w następnej części); +

+ texmf-dist
+

główne drzewo katalogów formatów i pakietów (zawiera makra, fonty i dokumentacje; patrz: + TEXMDIST w następnej części); +

+ tlpkg
+

skrypty, programy i inne dane potrzebne do instalacji; katalog zawiera także „prywatne” dla TEX + Live kopie oprogramowania Perl i Ghostscript dla Windows (nie kolidują one z posiadanymi przez + użytkownika podobnymi programami i działają tylko w ramach instalacji); poza tym dołączono + szybki i wygodny program do podglądu plików postscriptowych i PDF – PS_View dla Windows.

+

Prócz podkatalogów wymienionych powyżej, katalog główny zawiera skrypty instalacyjne oraz pliki +README, w formacie tekstowym lub HTML, w kilku językach (również polskim). +

Do znalezienia dokumentacji przydatne mogą być dowiązania zawarte w pliku doc.html, który znajdziemy +w głównym katalogu instalacji. Dokumentacje programów (man, info, także w formacie PDF) znajdują się +w katalogu texmf/doc, zaś dokumentacje pakietów makr, fontów i formatów w katalogu texmf-dist/doc. +W odszukaniu konkretnej dokumentacji w dowolnym z wymienionych katalogów mogą pomóc programy +texdoc lub texdoctk. +

Niniejsza dokumentacja w kilku językach znajduje się na płytce TEX CollectionDVD w podkatalogach +katalogu texlive-doc, zaś po instalacji w podkatalogach katalogu texmf/doc/texlive: +

+

+

2.3. Predefiniowane drzewa katalogów texmf

+

W tej części wymieniono wszystkie używane przez system, predefiniowane zmienne specyfikujące drzewa +katalogów texmf; omówiono też ich przeznaczenie. Uruchomiając polecenie tlmgr conf, wyświetlimy wartości +tych zmiennych, dzięki czemu łatwo ustalimy, które katalogi w naszej instalacji są przypisane do konkretnych +zmiennych. +

Wszystkie drzewa katalogów, włącznie z prywatnymi katalogami użytkownika, powinny posiadać strukturę +zgodną z zaleceniami TEX Directory Structure (TDS, http://tug.org/tds), konsekwentnie wraz z +mnóstwem podkatalogów. W przeciwnym wypadku potrzebne pliki mogą nie zostać odnalezione. W części +3.4.6 (str. 39) będzie to omówione dokładniej. +

+

+ TEXMFMAIN
+

Drzewo katalogów zawierające podstawowe dla dystrybucji elementy systemu, jak skrypty i inne + pliki pomocnicze oraz dokumentację programów (nie zawiera zatem pakietów makr ani formatów). +

+ TEXMFDIST
+

Drzewo katalogów zawierające pakiety makr, fontów itp., drzewo to może być współdzielone + z dowolną dystybucją. +

+ TEXMFLOCAL
+

Drzewo katalogów, które administratorzy mogą wykorzystać do przechowywania lokalnych makr, + fontów itp., dostępnych dla wszystkich użytkowników serwera. +

+ TEXMFHOME
+

Drzewo katalogów dla prywatnych makr, fontów itp. użytkownika. Rozwinięcie tej zmiennej zależy + domyślnie od wartości przypisanej zmiennej systemowej $HOME (w Windows %USERPROFILE%). +

+ TEXMFCONFIG
+

Lokalne drzewo katalogów wykorzystywane przez narzędzia texconfig, updmap oraz fmtutil do + przechowywania danych konfiguracyjnych (domyślnie w ramach TEXMFHOME). +

+ TEXMFSYSCONFIG
+

Drzewo katalogów wykorzystywane przez narzędzia texconfig-sys, updmap-sys oraz + fmtutil-sys do przechowywania danych konfiguracyjnych dla całej instalacji (np. sieciowej). +

+ TEXMFVAR
+

Lokalne drzewo katalogów wykorzystywane przez texconfig, updmapfmtutil do + przechowywania wygenerowanych plików formatów i map fontowych (domyślnie w ramach + TEXMFHOME). +

+ TEXMFCACHE
+

Drzewa katalogów wykorzystywane przez ConTEXt MkIV do przechowywania buforowanych + danych z przetwarzania. + + +

+ TEXMFSYSVAR
+

Drzewo katalogów wykorzystywane przez texconfig-sys, updmap-sys, fmtutil-sys, a także + przez program tlmgr do przechowywania wygenerowanych plików formatów i map fontowych dla + całej instalacji.

+

Domyślny układ katalogów: +

+ogólnosystemowy katalog instalacji
może zawierać kilka wydań TEX Live: +
+ 2011
+

poprzednie wydanie, +

+ 2012
+

wydanie aktualne: +

+ bin
+

  +

+ i386-linux
+

programy dla GNU/Linux +

+ ...
+

+

+ universal-darwin
+

programy dla Mac OS X +

+ win32
+

programy dla Windows

+
+ texmf    
+

określany zmienną TEXMFMAIN +

+ texmf-dist  
+

TEXMFDIST +

+ texmf-var  
+

TEXMFSYSVAR +

+ texmf-config
+

TEXMFSYSCONFIG

+
+ texmf-local
+

TEXMFLOCAL, katalog zachowywany od wydania do wydania,

+
+katalog domowy użytkownika
($HOME lub %USERPROFILE%) +
+ .texlive2011
+

prywatne pliki konfiguracyjne poprzedniego wydania +

+ .texlive2012
+

prywatne pliki konfiguracyjne dla bieżącego wydania: +

+ texmf-var  
+

TEXMFVAR, TEXMFCACHE + + +

+ texmf-config
+

TEXMFCONFIG

+
+ texmf
+

TEXMFHOME prywatne makra, fonty itp.

+
+

+

2.4. Rozszerzenia TEX-a

+

Oryginalny TEX, stworzony przez prof. Knutha, został zamrożony, ale jest i będzie w przyszłości +dostępny w dystrybucji. TEX Live zawiera ponadto kilka wersji rozszerzonych standardowego +TEX-a: +

+

+e-TEX
wersja programu TEX, w której dodano pożyteczny zestaw nowych poleceń wbudowanych + (dotyczących głównie rozwijania makr, leksemów znakowych, interpretacji znaczników itp.) + oraz rozszerzenie TEX--XE T dla składu od prawej do lewej. W trybie domyślnym e-TEX + jest w 100% zgodny ze standardowym programem TEX. Więcej szczegółów można znaleźć + w texmf-dist/doc/etex/base/etex_man.pdf. +
+pdfTEX
program zawierający silnik e-TEX i dalsze rozszerzenia, który umożliwia tworzenie plików + zarówno w formacie PDF, jak i DVI. Jest on domyślnym programem dla większości formatów + (prócz plain TEX), nie ma więc obecnie rozróżnienia na „maszyny” pdftex i pdfetex, jak to + miało miejsce w poprzednich wersjach programów i w poprzednich dystrybucjach TEX Live. + Podręczniki znajdziemy w katalogu texmf-dist/doc/pdftex/manual/pdftex-a.pdf, zaś przykład + wykorzystania w pliku texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex. +
+LuaTEX
docelowo sukcesor pdfTEX-a, z którym ma być, aczkolwiek niecałkowicie, zgodny + wstecz. Powinien także zastąpić Aleph (patrz niżej), choć nie zakłada się tu technicznej + kompatybilności. Załączony interpreter Lua (patrz strona domowa http://www.lua.org/) + pozwala na eleganckie rozwiązanie wielu trudnych problemów TEX-a. Program texlua ma + funkcjonalność samodzielnego interpretera Lua, co sprawia, że jest używany w TEX Live do + wielu zadań. Patrz http://www.luatex.org/ i na DVD texmf-dist/doc/luatex/luatexref-t.pdf. +
+XeTEX
umożliwia kodowanie tekstów w Unicode oraz korzystanie z fontów OpenType (także tych + dostępnych bezpośrednio w systemie operacyjnym), przy czym stosuje biblioteki obce. Patrz + http://tug.org/xetex. +
+Omega (Omega)
program, który pracuje wewnętrznie ze znakami kodowanymi 16-bitowo (Unicode), + pozwalając składać jednocześnie większość tekstów spotykanych na świecie. Wspomaga + dynamicznie ładowane tzw. „procesy tłumaczenia Omega” (OTP), co pozwala użytkownikowi + definiować złożone transformacje, wykonywane na dowolnych strumieniach wejściowych. Sam + program od dawna nie jest aktualizowany, został więc usunięty z TEX Live. Pozostawiono jego + działający klon: +
+Aleph
łączy rozszerzenia Omega i e-TEX; powstał jako niezależny projekt z potrzeby stabilnej + „używalności” programu Omega, w sytuacji, gdy ten pozostawał wciąż w fazie eksperymentalnej. + Dostępna jest minimalna dokumentacja: texmf-dist/doc/aleph/base. +
+ + +

+

2.5. Inne ważniejsze programy TEX Live

+

Poniżej zestawiono kilka innych, najczęściej używanych programów, dostępnych w dystrybucji TEX +Live: +

+

+ bibtex, bibtex8
+

tworzenie spisów bibliograficznych; +

+ makeindex, xindy
+

tworzenie posortowanych skorowidzów; +

+ dvips
+

konwersja DVI do PostScript; +

+ xdvi
+

przeglądarka plików DVI dla X Window; +

+ dvilj
+

sterownik dla drukarek HP LaserJet; +

+ dviconcat, dviselect
+

programy do manipulacji stronami w plikach DVI; +

+ dvipdfmx
+

konwersja DVI do PDF, metoda alternatywna w stosunku do wspomnianego wyżej programu + pdfTEX; +

+ psselect, psnup,
+

narzędzia do manipulacji na plikach postscriptowych; +

+ pdfjam, pdfjoin,
+

narzędzia do manipulacji na plikach PDF; +

+ texexec, texmfstart
+

programy uruchamiające dla ConTEXt; +

+ tex4ht
+

postprocesor dla TEX-a konwersji do HTML i XML. +

+

+

2.6. Pakiety i ich zestawy

+

Zawartość drzew texmf na TEX Live została do celów instalacji zorganizowana w szereg „zestawów” +(collections), z których każdy posiada zbiór „pakietów” (packages; jest ich obecnie ponad 2500). +Normalna instalacja pozwala użytkownikowi skopiować z DVD na twardy dysk jeden lub więcej +zestawów, ale można też doinstalować z niej do już zainstalowanego zestawu jedynie pojedynczy +pakiet. + + +

Zestawy pozwalają lepiej dobrać instalowane składniki, a także określić, jakie języki będą obsługiwane po +instalacji. Najważniejszy zestaw, wymagany dla większości zastosowań, to „Essential programs and files”. +Zestawy „Basic LaTeX packages” i „Recommended fonts” są rekomendowane dla większości użytkowników. +Pozostałe zestawy są opcjonalne. +

Oto wybrane dostępne zestawy i krótki opis ich zawartości: +

+

+Essential programs and files
podstawowe programy, pakiety makr i fontów systemu TEX, pliki + konfiguracyjne dla podstawowych sterowników; +
+Extra BibTeX styles
dodatkowa, obszerna biblioteka stylów BibTEX-owych i bazy danych + bibliograficznych (podstawowe style znajdują się w zestawie „Essential…”); +
+Context format
pakiet makr do ConTEXt – „dialektu” TEX-a autorstwa Hansa Hagena; +
+TeX auxiliary programs
różne programy pomocnicze; zestaw zawiera m.in. programy i makra dla + systemu texinfo, programy do manipulacji na plikach DVI itp.; +
+TeX and Outline font utilities
programy do konwersji plików fontowych oraz testowania i instalacji + fontów (zestaw do tworzenia fontów wirtualnych, manipulacji plikami .gf i .pk, programy mft, + fontinst itp.); +
+Recommended fonts
obszerna biblioteka częściej używanych fontów w postaci źródłowej (.mf) bądź + fontów obwiedniowych oraz pliki z definicjami i stylami LATEX-a dla tych fontów; +
+Extra fonts
biblioteka różnych rzadziej używanych fontów; +
+Extra formats
pliki pomocnicze do generowania dodatkowych „formatów” (tj. obszerne zestawy makr + służące do wstępnego przetworzenia i utworzenia pliku .fmt); +
+Games typesetting
pakiety do prezentacji zapisu różnych gier (szachy, brydż itp.); +
+Extra generic packages
obszerna biblioteka makr, trudnych do sklasyfikowania, działających + z różnymi formatami (Plain, LATEX itp.); +
+HTML/SGML/XML support
pakiety konwersji LATEX-a do XML/HTML oraz do składu + dokumentów XML/SGML; +
+lang
wsparcie poszczególnych języków; zestawy zawierają wzorce przenoszenia wyrazów i makra + obsługi danych języków, czasem też specyficzne fonty itp., przykładowo: +
+langpolish
zawiera polskie pakiety: makra do tworzenia formatu MeX, pakiety polski, mwcls, fonty + i makra dodatkowe przydatne dla polskich użytkowników oraz dokumentacje w języku polskim.
+


+ + + + + +
  Installing TeX Live 2012 from: ...
  Platform: i386-linux => ’Intel x86 with GNU/Linux’
  Distribution: inst (compressed) +
  ...
   Detected platform: Intel x86 with GNU/Linux
  
   <B> platforms: 1 out of 19
  
   <S> Installation scheme (scheme-full) +
       84 collections out of 85, disk space required: 3091 MB
  
   Customizing installation scheme: +
     <C> standard collections
     <L> language collections
  
   <D> directories:
     TEXDIR (the main TeX directory): +
       /usr/local/texlive/2012
     ...
  
   <O> options:
     [ ] use letter size instead of A4 by default
     ...
   +
   <V> set up for portable installation
  
  Actions:
   <I> start installation to hard disk
   <H> help
   <Q> quit
+
Rysunek 1: Główny ekran instalatora w trybie tekstowym (GNU/Linux)
+ + +


+

Plik tlpdb/texlive.tlpdb (wykorzystywany podczas instalacji) zawiera spis wszystkich plików w każdym +pakiecie. +

2.7. Fonty w TEX Live

+

TEX Live zawiera wiele wysokiej jakości fontów skalowanych. Patrz: http://tug.org/fonts oraz +texmf-dist/doc/fonts/free-math-fonts-survey. +

+

3. Instalacja

+

+

3.1. Start instalacji

+

Instalację TEX Live uruchamiamy z płytki TEX Collection DVD (bądź po pobraniu z sieci +pakietu instalacyjnego i jego rozpakowaniu) skryptem install-tl (Unix), install-tl.bat lub +install-tl-advanced.bat (Windows). Dodatkowe informacje na temat różnych metod instalacji znajdziemy +na stronie http://tug.org/texlive/acquire.html. +

+

+Instalacja z sieci:
z archiwum CTAN, z katalogu + systems/texlive/tlnet (http://mirror.ctan.org/systems/texlive/tlnet automatycznie + przekierowuje do najbliższej kopii CTAN) należy pobrać plik install-tl.zip (wspólny dla + Unix i Windows) lub znacznie mniejszy install-unx.tar.gz (tylko dla Unix). Po rozpakowaniu, + w katalogu install-tl/ znajdziemy skrypty instalacyjne install-tl, install-tl.bat + i install-tl-advanced.bat. +
+Instalacja z płytki TEX Collection DVD:
po zamontowaniu płytki należy zmienić katalog + bieżący na texlive DVD (w Windows program instalacyjny powinien uruchomić się + automatycznie). DVD otrzymamy w ramach członkostwa w dowolnej Grupie Użytkowników + Systemu TEX (kontakt w Polsce http://www.gust.org.pl). Możemy także wypalić płytkę z + dostępnego w sieci jej obrazu ISO bądź zamontować bezpośrednio plik obrazu (w większości + systemów istnieje taka możliwość). Po zainstalowaniu z DVD lub obrazu ISO można dokonywać + aktualizacji z internetu (patrz 3.4.3).
+

Bez względu na źródło stosowany jest ten sam program instalacyjny. Jedyną widoczną różnicą przy +instalacji z sieci jest pobranie zaktualizowanych pakietów, w przeciwieństwie do DVD i obrazu ISO, które nie +są aktualizowane między corocznymi wydaniami. +

Dalsze kroki omówiono dokładniej poniżej. +

+

3.1.1. Unix
+

Poniżej > oznacza znak zachęty systemu (tzw. prompt); to, co wpisuje użytkownik, zaznaczono pogrubieniem. +W oknie terminala należy wykonać:

+

+> cd /path/to/installer +
> perl install-tl +
+
(można także uruchomić perl /path/to/installer/install-tl lub ./install-tl; w dalszej części nie +będziemy powtarzać wszelkich możliwych kombinacji). Zalecane jest powiększenie okna terminala, aby +zobaczyć pełną zawartość ekranu programu instalacyjnego (rys. 1). + + +

Do uruchomienia w trybie graficznym (GUI; rys. 2) wymagana jest obecność w systemie modułu Perl/TK +skompilowanego ze wsparciem dla XFT (w systemach GNU/Linux jest on z reguły dostępny, ale dla innych +systemów niekoniecznie):

+

+> perl install-tl -gui +
+
+

Kompletny wykaz dostępnych opcji otrzymamy uruchamiając:

+

+> perl install-tl -help +
+
+

Uwaga dotycząca uprawnień w Unix: program instalacyjny będzie respektował aktualną wartość +umask. Jeśli więc chcemy, aby instalacja była dostępna dla innych użytkowników, musimy ustawić wartość np. +umask 002. Więcej informacji na temat umask znajdziemy w dokumentacji posiadanego systemu +operacyjnego. +


+ + + + + + +

pict +

Rysunek 2: Ekran zaawansowanego programu instalacyjnego GUI (GNU/Linux)
+ + +


+

Uwagi specjalne dotyczące Cygwin: w odróżnieniu od wielu rzeczywistych systemów +operacyjnych, których Cygwin jest jedynie emulatorem, w środowisku tym mogą nie być domyślnie +zainstalowane niektóre programy wymagane dla instalatora TEX Live. Dodatkowe informacje – patrz +część 3.1.4. +

3.1.2. MacOSX
+

Jak wspomniano w części 2.1, dla Mac OS X przygotowano odrębną dystrybucję MacTEX (http://tug.org/mactex). +W jej wypadku należy użyć dedykowanego programu instalacyjnego, gdyż zmienia on w specyficzny sposób +ustawienia systemu, w szczególności pozwala na łatwe przełączanie między różnymi dystrybucjami TEX-a dla +Mac OS X: MacTEX, Fink, MacPorts. +

MacTEX jest oparty na TEX Live i główne drzewa katalogów pozostały w nim dokładnie +takie same, dodano jedynie katalogi ze specyficznymi dla systemu Mac OS X dokumentacjami +i aplikacjami. +

+

3.1.3. Windows
+

Gdy używamy instalatora pobranego z sieci (bądź program ten nie uruchamia się automatycznie po włożeniu +DVD do napędu), należy uruchomić install-tl.bat (np. podwójnym kliknięciem myszy). Można to uczynić +także z linii poleceń. Gdy katalog zawierający ten plik jest katalogiem bieżącym, wystarczy uruchomić: +

+

+> install-tl +
+
bądź, dla bardziej wymagającej instalacji, pozwalającej na wybór schematów, kolekcji itp.:
+

+> install-tl-advanced +
+
+

W linii poleceń można też podać ścieżkę do programu, np.:

+

+> D:\texlive\install-tl +
+
dla TEX Collection DVD, zakładając, że D: jest napędem DVD (rys. 3 pokazuje domyślny dla Windows +ekran programu instalacyjnego). +

Instalacja w trybie tekstowym wymaga podania:

+

+> install-tl -no-gui +
+
+

Wszystkie dostępne opcje wyświetlimy uruchamiając:

+

+> install-tl -help +
+
+


+ + + + + + +

pict +

Rysunek 3: Ekran programu instalacyjnego „Wizard” (Windows)
+ + +


+

+

3.1.4. Cygwin
+

Program instalujący TEX Live obsługuje jedynie Cygwin w wersji 1.7. Przed instalacją w tym systemie zaleca +się uruchomić program setup.exe i, o ile nie zostały one uprzednio zainstalowane, zainstalować pakiety perl +oraz wget. Ponadto zalecana jest instalacja: +

    +
  • fontconfig (wymagany dla XeTEX) +
  • +
  • ghostscript (wymagany dla wielu narzędzi) +
  • +
  • libXaw7 (wymagany dla xdvi) +
  • +
  • ncurses (udostępnia clear – „czyste” polecenie stosowane przez program instalacyjny)
+

+

3.1.5. Instalator w trybie tekstowym
+

Rysunek 1 przedstawia główny ekran programu install-tl w (domyślnym) trybie tekstowym w systemie +Unix. W tym trybie nie używamy ani klawiszy kursora, ani myszy, lecz wyłącznie klawiszy alfanumerycznych +(uwaga: duże i małe litery są rozróżniane!). Wybraną opcję zatwierdzamy klawiszem Enter. Instalator +w trybie tekstowym jest na tyle prosty, by działał na możliwie wielu platformach, nawet wyposażonych +jedynie w podstawowe biblioteki Perla. +

+

3.1.6. Zaawansowany program instalacyjny w trybie graficznym
+

Rysunek 2 przedstawia program instalacyjny w trybie graficznym, w wersji rozszerzonej. W systemie Windows +znajdziemy tu dodatkowe przyciski dla opcji nieistotnych w systemach Unix/Linux. Tryb ten uruchamiamy +poleceniem: +

+

+ > install-tl -gui=perltk +
+
+

+

3.1.7. Uproszczony program instalacyjny
+

W systemie Windows domyślnie uruchamiany jest uproszczony program instalujący wszystkie pakiety TEX +Live, który wymaga od użytkownika odpowiedzi jedynie na kilka pytań (katalog docelowy itp.). Tryb ten, +zwany wizard („czarodziej”, „mag”, rys. 3), uruchamiany jest poleceniem: +

+

+> install-tl -gui=wizard +
+
+ + +

+

3.2. Podczas instalacji

+

Program instalacyjny jest z założenia na tyle prosty, że szczegółowe wyjaśnienia wydają się zbędne. Podamy +jednak kilka uwag dotyczących różnych opcji i dostępnych podmenu. +

+

3.2.1. Menu: binary systems (tylko Unix)
+


+ + + + + +
  Available platforms: (Dostępne platformy:)
  =============================================================================== +
     a [ ] alpha-linux      DEC Alpha with GNU/Linux
     b [ ] amd64-freebsd    x86_64 with FreeBSD +
     c [ ] amd64-kfreebsd   x86_64 with GNU/FreeBSD
     d [ ] armel-linux      ARM with GNU/Linux +
     e [ ] i386-cygwin      Intel x86 with Cygwin
     f [ ] i386-freebsd     Intel x86 with FreeBSD +
     g [ ] i386-kfreebsd    Intel x86 with GNU/FreeBSD
     h [X] i386-linux       Intel x86 with GNU/Linux +
     i [ ] i386-solaris     Intel x86 with Solaris
     j [ ] mips-irix        SGI IRIX
     k [ ] mipsel-linux     mipsel with Linux +
     l [ ] powerpc-aix      PowerPC with AIX
     m [ ] powerpc-linux    PowerPC 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
+
Rysunek 4: Wybór platformy (systemu operacyjnego)
+ + +


+

Rysunek 4 pokazuje (w trybie tekstowym) wybór platformy (systemu operacyjnego). Domyślnie +instalowane są tylko programy dla bieżącej platformy, ale menu to pozwala wybrać także zestawy +dla innych platform. Może być to przydatne do instalacji na serwerze i współdzielenia zasobów +w sieci dla różnych systemów operacyjnych bądź dla instalacji dla kilku systemów na tej samej +maszynie. +

3.2.2. Wybór składników do instalacji
+


+ + + + + +
  Select scheme: (Wybór schematu do instalacji:)
  =============================================================================== +
    a [X] full scheme (everything)
    b [ ] medium scheme (small + more packages and languages) +
    c [ ] small scheme (basic + xetex, metapost, a few languages)
    d [ ] basic scheme (plain and latex) +
    e [ ] minimal scheme (plain only)
    f [ ] ConTeXt scheme
    g [ ] GUST TeX Live scheme +
    h [ ] teTeX scheme (more than medium, but nowhere near full)
    i [ ] XML scheme
    j [ ] custom selection of collections
+
Rysunek 5: Menu: wybór schematów
+ + +


+

Rysunek 5 pokazuje menu „Wybór schematów”. Schematy to obszerne zestawy pakietów, przeznaczone do +wstępnego wyboru instalowanych komponentów. Mamy tu schematy do instalacji: podstawowej (basic), +typowej (medium) i pełnej (full; jest ona domyślna), pozostałe przygotowano z myślą o wybranych grupach +użytkowników (np. GUST) lub zastosowaniach (np. XML lub ConTeXt). +


+ + + + + +
+

+ +

pict +

Rysunek 6: Menu Collections (Kolekcje)
+
+ + +


+

Wstępnie wybrane schematy można modyfikować. W skład ,schematów” wchodzą tzw. „kolekcje”, które +można wybrać w kolejnych menu o nazwach: „Kolekcje standardowe” i „Kolekcje językowe” (rys. 6). Kolekcje +stanowią niższy poziom niż schematy, a same składają się z „pakietów”. Dopiero pakiety zawierają właściwe +pliki makr, fontów itp. Jeśli chcemy dodać lub usunąć pakiet, to po instalacji właściwej użyjemy programu +TEX Live Manager (tlmgr, patrz część 5). +

3.2.3. Katalogi
+

Domyślny układ katalogów opisano w części 2.3 na str. 9. Położenie domyślne całej instalacji (TEXDIR) różni +się w Windows (%SystemDrive%\texlive\2012) i w Unix (/usr/local/texlive/2012). +

Głównym powodem, dla którego chcielibyśmy ewentualnie zmienić domyślne położenie TEXDIR, może być +brak uprawnień systemowych. Aby zainstalować TEX Live, nie musimy być administratorem systemu, musimy +jednak posiadać uprawnienia do zapisu w docelowym katalogu. Rozsądną alternatywą może być wtedy +instalacja w katalogu domowym, szczególnie gdy będziemy jej jedynym użytkownikiem. Stosujemy tu zapis +„~” do zaznaczenia katalogu domowego użytkownika, np. ~/texlive/2012. Zalecamy użycie katalogu z nazwą +odzwierciedlającą rok wydania, co pozwoli na zainstalowanie obok siebie różnych wydań TEX +Live. +

Zmiana TEXDIR w programie instalacyjnym zmieni także ścieżki katalogów określone przez zmienne +TEXMFLOCAL, TEXMFSYSVAR TEXMFSYSCONFIG. +

TEXMFHOME jest zalecanym położeniem dla prywatnych makr i fontów użytkownika. Domyślnym +katalogiem jest ~/texmf. W odróżnieniu od TEXDIR, znak ~ jest zachowywany w generowanych plikach +konfiguracyjnych, ponieważ w wygodny sposób odnosi się do katalogu domowego podczas każdego +uruchamiania programów. Znak ten rozwijany jest do zmiennej $HOME w Unix i %USERPROFILE% w Windows. +Po raz kolejny podkreślmy, że tak jak inne drzewa katalogów, TEXMFHOME musi mieć strukturę zgodną z +TDS. +

Katalog określany przez zmienną TEXMFVAR przechowuje dane konfiguracyjne specyficzne dla każdego +użytkownika. Katalog określany przez zmienną TEXMFCACHE przechowuje dane buforowane (cached) +ConTEXt MkIV (patrz część 3.4.5, na str. 39). +

+

3.2.4. Opcje
+


+ + + + + +
  Options setup:
  =============================================================================== +
   <P> use letter size instead of A4 by default: [ ]
   <E> execution of restricted list of programs: [X] +
   <F> create all 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:
   <Y> after installation, get package updates from CTAN: [X]
+
Rysunek 7: Menu: Options (Opcje) w Unix
+ + +


+

Rysunek 7 pokazuje menu (w trybie tekstowym) z dodatkowymi opcjami. Warto tu je wymienić: +

+use letter size instead of A4 by default
(użyj domyślnie formatu papieru letter zamiast A4): + pozwala określić domyślny format papieru dla wielu programów. Oczywiście format papieru + można (nawet: należy) specyfikować dla każdego dokumentu w miarę potrzeby. +
+execution of restricted list of programs
(zezwalaj na uruchomienie niektórych programów): od + TEX Live 2010 wykonanie niektórych przydatnych programów pomocniczych, uruchamianych + jako podprocesy (w „tle”), zostało zastrzeżone dla ich niewielkiej listy, zamieszczonej w pliku + texmf.cnf. Szczegóły znajdziesz w części „Wydanie 2010” (11.7). +
+create format files
(generuj pliki formatów): chociaż zbędne formaty zajmują miejsce na dysku, + zaleca się pozostawić tę opcję włączoną; jeśli tego nie zrobimy, formaty będą generowane + automatycznie (w razie potrzeby) w prywatnych katalogach TEXMFVAR użytkowników, nie będą + jednak odświeżane, gdy w instalacji zostaną zaktualizowane np. same programy bądź wzorce + przenoszenia; wskutek tego pliki formatów mogą utracić zgodność ze środowiskiem, w którym + są używane. +
+install font/macro  tree
(instaluj pliki źródłowe i/lub dokumentacji dla fontów bądź makr): + wprawdzie wyłączenie tych opcji pozwala zaoszczędzić miejsce na dysku, ale nie jest zalecane. +
+create symlinks in standard directories
(utwórz dowiązania w standardowych + katalogach, dotyczy tylko Unix): opcja ta pozwala uniknąć ustawiania zmiennych środowiska + po instalacji (PATH, MANPATH INFOPATH), ale jej użycie nie jest zalecane, bo może powodować + kolizje z już zainstalowanym w systemie środowiskiem TEX; może być ona przydatna jedynie + wtedy, gdy w standardowych katalogach (np. /usr/local/bin) nie ma jakichkolwiek programów + TEX-owych. Wymaga ona ponadto uprawnień do zapisu w docelowych katalogach. +
+after installation  CTAN
(po instalacji użyj CTAN, aby pobrać aktualizacje): gdy instalujemy + z DVD, opcja ta jest domyślnie włączona, co pozwala dokonać aktualizacji zainstalowanych + pakietów z sieci (z kopii CTAN). Jedyny powód, dla którego moglibyśmy wyłączyć tę opcję, to + sytuacja, gdy instalujemy tylko część pakietów i zamierzamy potem doinstalować z DVD inne. + Tak czy inaczej, repozytorium pakietów do instalacji bądź aktualizacji może być w każdej + chwili zmienione w linii poleceń, lub po wyborze odpowiedniego menu programu tlmgr w trybie + graficznym. Patrz część 3.3.1 i część 3.4.3.
+

Po wykonaniu wszystkich potrzebnych ustawień można rozpocząć instalację (klawisz „I”). +Po instalacji zaleca się zajrzeć do części 3.4, bo być może będą jeszcze potrzebne dodatkowe +kroki. +

3.3. Parametry instalacji z linii poleceń

+

Uruchom

+

+> install-tl -help +
+
aby wyświetlić wszystkie dostępne parametry. Oto najczęściej używane: +

+

+ -gui
+

użyj (jeśli to możliwe) programu w wersji graficznej (GUI); wymagane jest posiadanie modułu + Perl/Tk (http://tug.org/texlive/distro.html#perltk) skompilowanego ze wsparciem dla + XFT; gdy jest on niedostępny, program instalacyjny uruchomiony zostanie w trybie tekstowym; + + +

+ -no-gui
+

wymusza tryb tekstowy, np. w Windows. +

+ -lang ll
+

pozwala wybrać język komunikatów, ll oznacza tu dwuliterowy kod języka; listę dostępnych + języków wyświetli install-tl –help; program samoczynnie wykrywa język systemu, ale jeśli + jest to niemożliwe, komunikaty i menu będą wyświetlane w języku angielskim; +

+

+ -in-place
+

jeśli posiadamy kopię repozytorium TEX Live uzyskaną via rsync, svn itp. (patrz + http://tug.org/texlive/acquire-mirror.html), opcja ta pozwala na wykorzystanie jako + instalacji owej kopii i jedynie wykona kroki poinstalacyjne (konfigurację). Uwaga: plik + tlpkg/texlive.tlpdb może zostać nadpisany, a więc warto go uprzednio skopiować w bezpieczne + miejsce. Ponadto usuwanie zbędnych pakietów należy wykonać wtedy ręcznie, słowem, użycie tej + opcji zaleca się jedynie zaawansowanym użytkownikom. Opcja ta może być włączona/wyłączona + w programie instalacyjnym. +

+ -portable
+

instalacja do użycia przenośnego, np. na pen drivie; opcja ta może być użyta zarówno w trybie + tekstowym (poleceniem V), jak i przez wyb˘r odpowiedniego przycisku programu instalacyjnego + w trybie GUI (patrz część  4.2). +

+ -profile plik
+

wczytuje plik profilu instalacji i przebiega ona bez interakcji ze strony użytkownika; program + instalacyjny zapisuje plik texlive.profile w katalogu tlpkg naszej instalacji, co pozwala + wykorzystać go dla powielenia w trybie wsadowym wszystkich wyborów i ustawień w kolejnych + instalacjach; +

+ -repository url-lub-ścieżka
+

pozwala określić inne niż domyślne źródło instalacji (patrz poniżej).

+

+

3.3.1. Parametr -repository
+

Domyślnym repozytorium pakietów dla TEX Live jest kopia (mirror) CTAN, znajdywana automatycznie +poprzez sewis http://mirror.ctan.org. +

Parametrowi -repository można przypisać adres w sieci (rozpoczynający się od ftp:, http: lub file:/) +lub pełną ścieżkę do kopii pakietów na dysku (np. pobranej za pomocą programu wget lub rsync). Jeśli +podany argument wskazuje na lokalny dysk (ścieżkę bądź adres file:/), wybrana zostanie instalacja ze +skompresowanych plików tar.xz, zawartych w podkatalogu archive. (Podając adres http: lub +ftp: końcowy znak ‘/’ lub komponent ‘/tlpkg’ są ignorowane.) +

Przykładowo, można wybrać konkretną kopię (zwierciadło) CTAN z +http://ctan.example.org/tex-archive/systems/texlive/tlnet/ podstawiając prawdziwą nazwę hosta i +jego konkretną ścieżkę do korzenia CTAN zamiast ctan.example.org/tex-archive. Lista zwierciadeł +CTAN jest dostępna na stronie http://ctan.org/mirrors. +

+

3.4. Czynności poinstalacyjne

+ + +

+

3.4.1. Zmienne środowiska dla Unix
+

Użycie opisanej w części 3.2.4 opcji tworzenia dowiązań symbolicznych w standardowych katalogach nie +wymaga zmian w zmiennych środowiska systemowego. Niemniej jednak w systemach Unix po instalacji należy +do zmiennej PATH dodać ścieżkę do programów TEX Live. (W Windows program instalacyjny czyni to za +nas.) +

Każda z obsługiwanych platform ma własny podkatalog w ramach TEXDIR/bin. Listę platform i +odpowiadających im katalogów przedstawiono na rys. 4. +

Również korzystanie z systemowych przeglądarek dokumentacji man info staje się możliwe dopiero po +dodaniu odpowiednich katalogów do ich ścieżek przeszukiwania. Strony man mogą być także znajdywane +automatycznie po dodaniu ścieżki ich położenia do MANPATH. +

Dla powłoki zgodnej z Bourne shell (sh, bash, ksh) możemy dopisać do pliku $HOME/.profile: +

+

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

W wypadku csh lub tcsh należy zmodyfikować plik $HOME/.cshrc, np.: +

+

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

Jeśli są już jakieś ustawienia zawarte w prywatnych plikach konfiguracyjnych, wówczas oczywiście katalogi +TEX Live powinny być tam odpowiednio wkomponowane. +

+

3.4.2. Zmienne środowiska: konfiguracja globalna
+

Jeśli zmiany mają być dokonane globalnie, lub jeśli mają być dokonane dla nowego użytkownika systemu, +wówczas należy dokonać tego na własną rękę – jest zbyt wiele możliwości dla różnych systemów dotyczących +miejsca i sposobu konfiguracji. +

Nasze dwie rady są następujące: 1) można sprawdzić plik /etc/manpath.config i, jeśli jest obecny, +dodać w nim wiersze +

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

2) można sprawdzić plik /etc/environment, w którym może być zdefiniowana ścieżka wyszukiwania i inne +domyślne zmienne środowiska. +

W każdym katalogu w plikami wykonywalnymi systemów uniksowych możemy utworzyć symboliczne +dowiązanie o nazwie man do katalogu texmf/doc/man. Niektóre programy man, np. standardowy program man +w systemie Mac OS X, automatycznie znajdą to dowiązanie, likwidując potrzebę jakiegokolwiek ustawiania dla +stron manuala. +

+

3.4.3. Aktualizacje z internetu po instalacji z DVD
+

Po instalacji z DVD i po modyfikacji ścieżki wyszukiwania programów (jak opisano to powyżej), możemy +pobrać z internetu aktualizacje pakietów: +

+

+> tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet +
+
+

Wówczas pakiety będą aktualizowane z najbliższej, automatycznie znalezionej kopii archiwów CTAN (co +domyślnie włączono podczas instalacji). Jeśli wystąpią problemy z automatycznym wyborem archiwum, +należy podać konkretny adres (listę adresów znajdziemy na http://ctan.org/mirrors) wraz z pełną ścieżką +do podkatalogu tlnet. +

+ + +

3.4.4. Konfiguracja fontów dla XeTEX i LuaTEX
+

XeTEX i LuaTEX pozwalają użyć każdy font zainstalowany w systemie, nie tylko fonty znajdujące się +w katalogach TEX-owych. Korzystają tu ze zbliżonych, ale jednak różnych metod. +

W systemach Windows fonty dostarczone z TEX Live są automatycznie dostępne dla programu XeTEX. +Gdy w systemie uniksowym zainstalowano xetex, należy skonfigurować system tak, aby program ten mógł +znaleźć fonty dostarczone w TEX Live. Aby to ułatwić, podczas instalacji pakietu tworzony jest plik +konfiguracyjny fontów: TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf. +

Aby udostępnić fonty TEX Live dla innych aplikacji systemu (zakładając, że mamy odpowiednie +uprawnienia) należy wykonać następujące czynności: +

    +
  1. skopiować texlive-fontconfig.conf do /etc/fonts/conf.d/09-texlive.conf; +
  2. +
  3. uruchomić fc-cache -fsv.
+

Jeśli nie mamy odpowiednich uprawnień i chcemy podczas uruchamiania XeTEX-a korzystać jedynie +z fontów dostępnych w TEX Live, należy: +

    +
  1. skopiować plik texlive-fontconfig.conf do ~/.fonts.conf, gdzie ~ oznacza nasz katalog + domowy. +
  2. +
  3. uruchomić fc-cache -fv.
+

Uruchomienie programu fc-list pozwala wyświetlić nazwy fontów systemowych. fc-list : family +style file spacing pokaże więcej interesujących informacji. +

+

3.4.5. ConTEXt Mark IV
+

Zarówno tzw. „stary” ConTEXt (Mark II), jak i nowy ConTEXt (Mark IV, oparty na LuaTEX) powinny +działać po instalacji TEX Live bez problemów, o ile do aktualizacji będziemy używać wyłącznie programu +tlmgr. +

Ponieważ ConTEXt MkIV nie stosuje biblioteki kpathsea do wyszukiwania plików, po zainstalowaniu +ręcznie nowych plików (bez użycia tlmgr) wymagane jest uruchomienie: +

  context --generate
+

do odświeżenia danych buforowych ConTEXt. Wygenerowane dane buforowe zostaną zapisane w katalogach +wskazywanych przez zmienną TEXMFCACHE (domyślna wartość w TEX Live tej zmiennej to +TEXMSYSVAR;TEXMFVAR). +

ConTEXt MkIV przeszuka wszystkie ścieżki wymienione w TEXMFCACHE i zapisze dane w pierwszej ścieżce, +która jest dostępna do zapisu. Gdy dane buforowe są zduplikowane, podczas ich odczytywania zostaną +wykorzystane ostatnio znalezione. +

Więcej informacji znajdziemy na stronach: http://wiki.contextgarden.net/Running_Mark_IV. +

+

3.4.6. Integracja lokalnych i prywatnych pakietów makr
+

Jak już wspomniano w części 2.3, katalog TEXMFLOCAL (domyślnie /usr/local/texlive/texmf-local lub +%SystemDrive%\texlive\texmf-local w Windows) przeznaczony jest na lokalne (np. w danej +sieci komputerowej) fonty oraz pakiety makr. Z kolei TEXMFHOME (domyślnie $HOME/texmf lub +%USERPROFILE%\texmf) jest przeznaczony na prywatne makra i fonty użytkownika. W zamierzeniu oba te +katalogi powinny być zachowywane przy instalacji nowszych wersji TEX Live, a ich zawartość ma być +automatycznie dostępna w kolejnych wydaniach. Zalecamy zatem, by nie przedefiniowywać TEXMFLOCAL, co +pozwoli uniknąć ręcznego konfigurowania w przyszłości. +

W obu drzewach katalogów pliki powinny być umieszczane w odpowiednich podkatalogach, zgodnie +z zaleceniami TDS (patrz: http://tug.org/tds, także plik texmf/web2c/texmf.cnf). Przykładowo pliki +klas lub makr LATEX-a powinny być umieszczane w katalogu TEXMFLOCAL/tex/latex/ lub +TEXMFHOME/tex/latex/ (lub ich podkatalogach). + + +

TEXMFLOCAL po zmianie zawartości wymaga odświeżenia bazy danych – poleceniem mktexlsr lub +poprzez użycie przycisku „Odśwież bazy danych” w graficznym trybie programu TeX Live Manager +(tlmgr). +

Każda z tych zmiennych ma domyślnie przypisany pojedynczy katalog, ale nie musi być to regułą. Jeśli +testujemy różne wersje pakietów, możemy do własnych celów zakładać kolejne drzewa katalogów i przełączać +kolejność ich przeszukiwania. Wystarczy zadeklarować zmienną TEXMFHOME dla listy katalogów, które +oddzielamy przecinkami i umieszczamy w klamrach: + + +

+
    TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir}
+
+

+

W części 8.1.5 opisano dokładniej analizę listy katalogów umieszczonych w klamrach. +

+

3.4.7. Integracja fontów z innych źródeł
+

Jest to, niestety, bardzo skomplikowane zagadnienie, wymagające sporej wiedzy użytkownika. Warto najpierw +się dowiedzieć, jakie fonty mamy dostępne bezpłatnie (patrz część 2.7). +

Alternatywą jest tu użycie programu XeTEX lub LuaTEX (patrz część 2.4), które korzystają z fontów +systemowych bez potrzeby instalowania ich dla programów TEX-owych. +

Procedury instalacji i integracji fontów opisano dokładnie np. w: http://tug.org/fonts/fontinstall.html. +

+

3.5. Testowanie instalacji

+

Po zainstalowaniu TEX Live warto sprawdzić, czy programy działają poprawnie. Opiszemy tu podstawowe +procedury testujące funkcjonowanie systemu w systemach Unix. W Mac OS X i Windows najczęściej użyjemy +środowiska graficznego (GUI), reguły jednak będą podobne. +

+

    +
  1. Sprawdzamy najpierw, czy uruchamia się program tex: +
    +

    + > tex --version +
    TeX 3.1415926 (TeX Live ...) +
    kpathsea version 6.0.1 +
    Copyright ... D.E. Knuth. +
    ... +
    +
    Jeśli uruchomienie kończy się komunikatem command not found (nie znaleziono polecenia), oznacza to, + że niepoprawnie zadeklarowano zmienną PATH (patrz: deklaracje zmiennych środowiska na + str. 38). +
  2. +
  3. Następnie przetwarzamy prosty plik LATEX-owy:
    +

    + > latex sample2e.tex +
    pdfTeX 3.1415926-... (TeX Live ...) +
    ..... +
    Output written on sample2e.dvi (3 pages, 7484 bytes). +
    Transcript written on sample2e.log. +
    +
    Gdy program nie znajduje sample2e.tex (bądź innych wymaganych plików), może to oznaczać, że + nadal działają ustawienia zmiennych środowiska bądź pliki konfiguracyjne z innej (poprzedniej) + instalacji. Szczegółową analizę, gdzie pliki są szukane i znajdowane, umożliwia diagnostyka opisana + w części 8.2.4 na str. 73. +
  4. +
  5. Podgląd wyniku składu:
    + + +

    +  > xdvi sample2e.dvi    # Unix +
     > dviout sample2e.dvi  # Windows +
    +
    Polecenie xdvi wymaga uruchomionego środowiska graficznego X Window. Dla MS Windows + analogicznym poleceniem jest dviout. +
  6. +
  7. Przetwarzanie wyniku składu do PostScript w celu wyświetlenia lub wydruku:
    +

    + > dvips sample2e.dvi -o sample2e.ps +
    +
    +
  8. +
  9. Tworzenie dokumentu bezpośrednio w formacie PDF:
    +

    + > pdflatex sample2e.tex +
    +
    +
  10. +
  11. Podgląd dokumentu PDF:
    +

    + > gv sample2e.pdf +
    lub: +
    > xpdf sample2e.pdf +
    +
    Programy gv xpdf są zwykle dostarczane w ramach systemu operacyjnego, wobec tego nie + zamieszczono ich na TEX Live. Przed samodzielną instalacją warto odwiedzić strony, odpowiednio: + http://www.gnu.org/software/gvhttp://www.foolabs.com/xpdf. W sieci dostępny jest także + bezpłatny program Adobe Reader (http://www.adobe.com). Użytkownikom Windows można + zarekomendować program Sumatra PDF (http://blog.kowalczyk.info/software/sumatrapdf. + W systemie Windows domyślnie instalowany jest dla TEX Live program psv (PS_View), pozwalający + przeglądać pliki .ps .pdf. Program ten można też zainstalować samodzielnie w systemach Linux + (http://psview.sourceforge.net/download.html). +
  12. +
  13. Inne przydatne pliki testowe: +

    +

    + small2e.tex
    +

    przykład prostszy niż sample2e; +

    + testpage.tex
    +

    test położenia wydruku na kartce papieru, przydatny do sprawdzenia, czy nasza drukarka + nie wprowadza przesunięć; + + +

    + nfssfont.tex
    +

    służy do wydruku tablic fontowych; +

    + testfont.tex
    +

    jak wyżej, z tym że zamiast LATEX-a trzeba użyć plain TEX; +

    + story.tex
    +

    najbardziej kanoniczny przykład dla plain TEX; na zakończenie przetwarzania + uruchomionego poleceniem „tex story”, po ukazaniu się *, należy wpisać „\bye”.

    +
  14. +
  15. Jeśli zainstalowano pakiet xetex, możemy przetestować użycie fontów systemowych:
    +

    + > xetex opentype-info.tex +
    This is XeTeX, Version 3.1415926 +
    ... +
    Output written on opentype-info.pdf (1 page). +
    Transcript written on opentype-info.log. +
    +
    Gdy otrzymamy komunikat błędu: „Invalid fontname ‘Latin Modern Roman/ICU’…”, oznacza to, że + należy zmienić konfigurację, jak to opisano w części 3.4.4. +
+

+

3.6. Programy pomocnicze dla Windows

+

Początkującym użytkownikom polecamy stronę http://tug.org/begin.html oraz podręcznik Petera Flynna +Formatting Information, dostępny pod adresem http://www.ctan.org/tex-archive/documentation/beginlatex. +

Aby instalacja była kompletna, TEX Live wymaga kilku pomocniczych programów, które nie są +dostarczane z systemem Windows. Wiele skryptów napisano w języku Perl, ponadto wiele narzędzi wymaga +programu Ghostscript (interpretera języka PostScript) do rasteryzacji bądź konwersji plików. Przydatne są +także w wielu wypadkach różne programy do obróbki grafiki. Ponadto posiadanie edytora zorientowanego na +środowisko TEX znacznie ułatwi pracę. +

Wszystkie te programy dla Windows można dosyć łatwo znaleźć w sieci, ponieważ jednak jest ich spory +wybór, postanowiliśmy te najbardziej istotne umieścić w dystrybucji TEX Live: +

+Perl i Ghostscript
– obydwa te programy są niezbędne do poprawnego działania TEX Live, + dołączyliśmy zatem Ghostscript 8.62 i minimalną dystrybucję Perl 5.8, wystarczającą do + uruchomienia wszystkich zawartych w TEX Live skryptów perlowych; oba programy zostały + „ukryte”, to znaczy tylko programy TEX Live, które z nich korzystają, „wiedzą” gdzie je znaleźć; + tym samym nie powinny kolidować z ewentualnie zainstalowanymi w systemie programami Perl + i Ghostscript; +
+narzędzia uruchamiane z linii poleceń
– zestaw kilku przydatnych programów (gzip, unzip, + jpeg2ps tiff2png) a także kilka narzędzi z zestawu xpdf, uruchamianych z linii poleceń (sam + xpdf nie jest dostępny dla Windows, można jednak pobrać z internetu opartą na nim przeglądarkę + PDF: http://blog.kowalczyk.info/software/sumatrapdf); +
+fc-list, fc-cache
– narzędzia z biblioteki fontconfig; program fc-cache rejestruje dla XeTEX-a + fonty systemowe lub dostarczane w dystrybucji TEX Live fonty OpenType; fc-list wyświetla + zarejestrowane fonty, podając ich pełne nazwy (deklarujemy je w rozszerzonym w XeTEX-u + poleceniu \font); + + +
+PS_View
– program do podglądu plików postscriptowych (a także plików PDF), patrz rys. 8.
+


+ + + + + +
+

+ +

pict +

Rysunek 8: PS_View: umożliwia bardzo duże powiększenia!
+
+ + +


+

Poniżej zamieszczono listę miejsc, z których można pobrać programy pomocnicze: +

+Ghostscript
http://www.cs.wisc.edu/~ghost/ +
+Perl
http://www.perl.org (uzupełniające, przydatne pakiety należy pobrać z zasobów CPAN + http://cpan.org) +
+ImageMagick
– bogaty zestaw narzędzi do wsadowego przetwarzania plików graficznych + (http://www.imagemagick.com) +
+NetPBM
– do przetwarzania i konwersji plików graficznych możemy użyć alternatywnego dla + ImageMagick programu NetPBM (http://netpbm.sourceforge.net/) +
+Edytory dla systemu TEX
– spory wybór programów, uwzględniających indywidualne preferencje + użytkownika (poniżej wymieniono jedynie te działające w systemach Windows) + +
+

Obszerniejszą listę programów można znaleźć na stronie http://tug.org/interest.html. +

4. Instalacje zaawansowane

+

W poprzednich częściach opisano proces typowej instalacji. Teraz omówimy te bardziej wyspecjalizowane. +

+

4.1. Instalacje dla wielu użytkowników (lub wieloplatformowe)

+ + +

TEX Live zaprojektowano tak, by w sieci komputerowej mogło z niego korzystać wielu użytkowników, nawet +w różnych systemach operacyjnych. Dzięki standardowej strukturze katalogów nie ma potrzeby konfiguracji +i określania konkretnych ścieżek: położenie plików wymaganych przez programy TEX Live jest zdefiniowane +jako względne wobec samych programów. Można to zobaczyć w pliku $TEXMFMAIN/web2c/texmf.cnf, który +zawiera np. takie wiersze: +

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

W konsekwencji oznacza to, że dla różnych systemów operacyjnych bądź użytkowników wystarczy dodać do ich +ścieżek przeszukiwania tylko ścieżkę do programów TEX Live. +

Możliwa jest zatem np. instalacja lokalna TEX Live, po czym przeniesienie całej struktury w inne miejsce +w sieci. +

Użytkownicy Windows mogą pobrać z internetu skrypt w32client (patrz: http://tug.org/texlive/w32client.html), +który pozwala dostosować istniejącą instalację TEX Live dla potrzeb sieci (włącznie z utworzeniem skrótów +w menu systemowym). Plik .zip dostępny na wymienionej stronie zawiera ponadto skrypt w32unclient, +służący do odinstalowania. +

+

4.2. Przenośna instalacja na pen drivie USB

+

Aby wykonać przenośną instalację na pen drivie należy uruchomić program instalacyjny z opcją -portable +(lub polecenie V w trybie tekstowym bądź odpowiednia opcja w trybie GUI). Instalacja taka nie ingeruje w +sam system operacyjny. Można ją wykonać bezpośrednio na pen drivie, lub na dysku twardym, skąd +kopiujemy ją na urządzenie przenośne. +

Do uruchomienia programów TEX Live w takiej instalacji wystarczy w sesji terminala dodać, jak +zazwyczaj, odpowiedni katalog do zmiennej PATH. W Windows należy dwukrotnie kliknąć tl-tray-menu w +głównym katalogu instalacji, aby wybrać jedno z podstawowych zadań, pokazanych na poniższym +rysunku: + +

pict +

Wybór „More…” pokaże komunikat z informacją jak można dostosować menu do własnych potrzeb. +

+

4.3. Instalacje z pliku obrazu ISO (lub DVD)

+

Jeśli nie zamierzamy często aktualizować bądź modyfikować w inny sposób naszej instalacji, a także gdy +zamierzamy uruchamiać TEX Live na wielu systemach, warto utworzyć plik obrazu ISO takiej instalacji, +choćby z poniższych powodów: +

    +
  • kopiowanie obrazu ISO między komputerami jest znacznie szybsze niż kopiowanie zwykłej + instalacji; +
  • +
  • jeśli używamy kilku systemów operacyjnych na tym samym komputerze i chcemy korzystać z tej + samej instalacji TEX Live, obraz ISO instalacji jest pozbawiony ograniczeń różnych systemów + plików (FAT32, NTFS, HFS+); +
  • +
  • systemy uruchamiane w trybie wirtualnym mogą po prostu zamontować plik obrazu ISO.
+

Obraz ISO można oczywiście wypalić na płytce DVD. +

Systemy GNU/Linux/Unix (w tym Mac OS X) pozwalają na montowanie pliku obrazu ISO. Prócz tego taka +instalacja w niczym się nie różni od typowej, wykonanej na dysku (patrz: 3.4.1). +

Podczas wykonywania instalacji do ISO warto pominąć specyfikowanie katalogu dla roku wydania, +ponadto warto umieścić katalog texmf-local na tym samym poziomie co inne drzewa (texmf, texmf-dist, +itd.). Zmianę katalogów umożliwia opcja TEXDIR programu instalacyjnego. +

Dla natywnego (nie wirtualnego) systemu Windows można wypalić obraz ISO na płytce DVD, ale warto +też rozważyć instalację któregoś z dostępnych w sieci programów umożliwiających montowanie takiego +obrazu. Np. dla Windows XP Microsoft oferuje program winxpvirtualcdcontrolpanel. + + +

Poza tym w Windows można dołączyć opisany wyżej skrypt w32client (patrz: 4.1 oraz +http://tug.org/texlive/w32client.html), który wykonuje swe zadania, podobnie jak w wypadku instalacji +sieciowej. +

W systemie Mac OS X programy TeXShop i TEXworks będą mogły wykorzystać instalację +na DVD, gdy zadeklarujemy dowiązanie symboliczne /usr/texbin do odpowiedniego katalogu, +np.: + + +

+
  sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin
+
+

+

Uwaga historyczna: TEX Live 2010 był pierwszą edycją, która (z różnych przyczyn) nie była faktycznie +live. Niemniej jednak poprzednie edycje zawsze wymagały akrobatycznych „sztuczek” do uruchamiania +programów bezpośrednio z DVD lub obrazu ISO (np. deklarowania dodatkowej zmiennej środowiska). Obraz +ISO, tworzony obecnie, tego nie wymaga. +

+

5. tlmgr: zarządzanie instalacją

+

TEX Live zawiera program o nazwie tlmgr, służący do dalszego zarządzania TEX Live po pierwotnej +instalacji. Programy updmap, fmtutil oraz texconfig są nadal dostępne i będą utrzymywane w przyszłości, +jednakże obecnie polecanym interfejsem jest tlmgr. Jego możliwości obejmują: +

    +
  • instalowanie, aktualizację, tworzenie kopii zapasowych, odtwarzanie oraz usuwanie pojedynczych + pakietów (opcjonalnie – z uwzględnieniem zależności pomiędzy pakietami); +
  • +
  • wyszukiwanie i pokazanie zawartości pakietów; +
  • +
  • wyszczególnianie oraz dodawanie architektur (platform systemowych); +
  • +
  • zmianę opcji instalacji, takich jak rozmiar papieru czy zmiana położenia źródła instalacji (patrz + część 3.3.1).
+


+ + + + + + +

pict +

Rysunek 9: tlmgr w trybie graficznym: główne okno, po akcji „Wczytaj” (Load).
+ + +


+


+ + + + + + +

pict +

Rysunek 10: tlmgr w trybie GUI: Opcje ogólne
+

pict +

Rysunek 11: tlmgr w trybie GUI: +Opcje dotyczące formatu papieru
+ + +


+

5.1. tlmgr – tryb graficzny (GUI)

+

tlmgr może być uruchomiony w trybie graficznym (rys. 9) za pomocą polecenia:

+

+> tlmgr -gui +
+
zaś w systemie Windows poprzez wybór menu: Start, Programy, TeX Live 2012, TeX Live +Manager. Po kliknięciu przycisku „Wczytaj” wyświetla listę dostępnych oraz listę zainstalowanych +pakietów. +

Rysunki 1011 pokazują zakładki doczące opcji. +

+

5.2. Przykładowe wywołania tlmgr z linii poleceń

+

Po zainstalowaniu TEX Live można dokonać aktualizacji wszystkich pakietów:

+

+> tlmgr update -all +
+
Symulację aktualizacji umożliwia:
+

+> tlmgr update -all -dry-run +
+
bądź tylko wyliczenie, jakie pakiety będą aktualizowane:
+

+> tlmgr update -list +
+
+

Poniższy przykład dodaje kolekcję zawierającą m.in. nowy „silnik” XeTEX, z lokalnego repozytorium +instalacji: +

+

+> tlmgr -repository /local/mirror/tlnet install collection-xetex +
+
co pokazują komunikaty (tu w skrócie): +
  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/2012/texmf/ls-R...
  ...
  running fmtutil-sys --missing
  ... +
  Transcript written on xelatex.log.
  fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed.
+

Jak widać, tlmgr instaluje wszystkie pakiety zależne, a także przeprowadza wymagane czynności +poinstalacyjne, jak aktualizacja bazy danych, budowa plików formatów itp. (w przykładzie wygenerowaliśmy +nowy format dla XeTEX). +

Aby wyświetlić informację o pakiecie (kolekcji bądź schemacie), należy uruchomić np.:

+

+> tlmgr show collection-latexextra + + +
+
co pokaże: +
  package:    collection-latexextra
  category:   Collection
  shortdesc:  LaTeX supplementary packages +
  longdesc:   A large collection of add-on packages for LaTeX.
  installed:  Yes
  revision:   14675
+

Uwaga: pełna dokumentacja programu tlmgr dostępna jest pod adresem: http://tug.org/texlive/tlmgr.html +lub po uruchomieniu:

+

+> tlmgr -help +
+
+

+

6. Uwagi dotyczące Windows

+

+

6.1. Cechy specyficzne w systemie Windows

+

W systemie Windows program instalacyjny wykonuje kilka dodatkowych czynności: +

+Menu i skróty.
W menu systemowym instalowane jest podmenu „TEX Live”, które zawiera + kilka pozycji dla programów działających w trybie graficznym (tlmgr, texdoctk, PS_View – + przeglądarka plików postscriptowych) oraz dokumentacji. +
+Skojarzenia typów plików.
Jeśli wybrano tę opcję, TeXworks, Dviout oraz PS_view otwierają + domyślne dla tych programów typy plików (lub, przy kliknięciu prawym klawiszem myszy na + danym pliku, proponują „Otwórz” i wybór programu). +
+Konwerter bitmap do EPS.
Dla różnych formatów graficznych plików bitmapowych kliknięcie + prawym klawiszem myszy wyświetla w menu „Otwórz” bitmap2eps. Bitmap2eps jest prostym + skryptem, który pozwala na wybór programu sam2p bądź bmeps. +
+Automatyczne ustawienie zmiennych środowiska.
Po instalacji nie są wymagane żadne „ręczne” + zmiany ustawień. +
+Odinstalowanie.
Program instalacyjny rejestruje instalację w menu „Dodaj/Usuń programy” + w Panelu sterowania; odinstalowanie odbywa się zatem w standardowy dla Windows sposób.
+

+

6.2. User Profile to inaczej Home (katalog domowy)

+

Odpowiednikiem uniksowego katalogu domowego użytkownika ($HOME) jest w Windows katalog określany +zmienną %USERPROFILE%. W Windows XP jest to zazwyczaj katalog C:\Documents and Settings\ +<nazwa_użytkownika>, zaś w Windows Vista i Windows 7 katalog C:\Users\<nazwa_użytkownika>. +W pliku konfiguracyjnym texmf.cnf i bibliotekach Kpathsea znak ~ jest poprawnie rozwijany do +odpowiedniej zmiennej zarówno w Windows, jak i w Unix/Linux. + + +

+

6.3. Rejestr Windows

+

W systemie Windows prawie wszystkie dane konfiguracyjne przechowywane są w tzw. rejestrze. Zawiera on +hierachicznie zorganizowane klucze, w ramach kilku kluczy głównych. Najbardziej istotne dla programów +instalacyjnych są klucze HKEY_CURRENT_USER oraz HKEY_LOCAL_MACHINE (w skrócie HKCUHKLM). Część HKCU +dotyczy katalogów domowych użytkowników (patrz 6.2), zaś HKLM – podkatalogów systemowych (w katalogu +Windows). +

Informacje o ustawieniach systemu można czasem uzyskać ze zmiennych środowiska, ale po inne +informacje, np. położenie tzw. skrótów, trzeba odwołać się do rejestru. Także zapis zmiennych środowiska na +stałe wymaga dostępu do rejestru. +

+

6.4. Uprawnienia w Windows

+

W nowszych wersjach Windows istnieje wyraźne rozróżnienie między użytkownikami „zwykłymi” +i administratorami, mającymi pełną swobodę dostępu do całości systemu. Dołożono wielu starań, aby +umożliwić instalację TEX Live także osobom bez uprawnień administratora. +

Jeśli osoba instalująca jest administratorem, to udostępniona jest opcja instalacji dla wszystkich +użytkowników. Użycie jej oznacza, że tworzone są skróty, a także ustawiane są zmienne środowiska dla całego +systemu. W przeciwnym wypadku skróty i menu są tworzone jedynie dla konkretnego użytkownika, także +definiowane zmienne środowiska dotyczą zwykłych użytkowników. +

Bez względu na status użytkownika proponowanym, domyślnym katalogiem głównym instalacji, jest +katalog w ramach %SystemDrive%. Program instalacyjny zawsze sprawdza, czy ten katalog jest dostępny do +zapisu dla aktualnego użytkownika. +

Problem może się pojawić wtedy, gdy użytkownik instalujący TEX Live nie jest administratorem, +a programy TEX-owe są już w ścieżce przeszukiwania. Wynikowa ścieżka zawiera wtedy ścieżkę systemową, +do której dodano ścieżkę do programów użytkownika. W konsekwencji nie będą znajdowane nowo instalowane +programy. Aby rozwiązać ten problem, program instalacyjny tworzy skrót do okna z wierszem poleceń, +w którym ścieżka do nowych programów TEX Live ma priorytet. W ten sposób, po uruchomieniu tego +skrótu, będzie można korzystać z TEX Live. Dotyczy to także programu TEXworks, o ile go +zainstalowaliśmy. +

Windows Vista i Windows 7 stwarzają dodatkowe utrudnienia: nawet jeśli jesteśmy zalogowani jako +administrator, musimy dodatkowo żądać uprawnień do uruchomienia programów jako administrator! +W rzeczywistości nie ma sensu logowanie jako administrator, zamiast tego wystarczy kliknąć +prawym klawiszem myszy na programie (lub skrócie), co pozwala wybrać opcję „Uruchom jako +administrator”. +

+

6.5. Zwiększanie maksymalnej ilości dostępnej pamięci w Windows i Cygwin

+

Użytkownicy systemów Windows i Cygwin mogą w przypadku uruchamiania niektórych programów +dostarczonych w TEX Live spotkać się z niewystarczającą ilością dostępnej pamięci. Na przykład asy +wyczerpie dostępną pamięć w przypadku próby zadeklarowania macierzy składającej się z 25 milionów liczb +rzeczywistych, a LuaTEX przy przetwarzaniu dokumentu zawierającego wiele dużych czcionek. +

W Cygwin można ten problem rozwiązać w sposób podany za poradą zawartą w Podręczniku +Użytkownika Cygwin (http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html). +

W Windows należy utworzyć plik, np. moremem.reg, o zawartości: +

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

a następnie wykonać (jako użytkownik z prawami administratora) polecenie: regedit /s moremem.reg. +Zamiast ustawień globalnych dla systemu, można też zmienić wielkość dostępnej pamięci jedynie dla +bieżącego użytkownika, używając HKEY_CURRENT_USER. +

+

7. W razie problemów

+ + +

+

7.1. Co zrobić gdy latex nie może znaleźć potrzebnych plików?

+
    +
  • Podstawowym narzędziem do diagnozowania problemów jest program kpsewhich. Wyprowadza on + informacje diagnostyczne na wyjście stderr, przy czym konsole (okienka wierszy poleceń) starszych + systemów Windows nie potrafią przekierować stderr do pliku. Umożliwia to dopiero system Windows NT + i późniejsze, ale rozwiązanie przedstawione poniżej działa dla każdej konsoli (okienka wierszy poleceń). + Otóż dla celów diagnostycznych można tymczasowo zdefiniować zmienną środowiska (w oknie + poleceń): + + +
    +
      SET KPATHSEA_DEBUG_OUTPUT=err.log
    +
    +

    Można również zadać zakres diagnostyki: + + +

    +
      SET KPATHSEA_DEBUG=-1
    +
    +

    +

    Podobnie, aby przekierować wyjście stderr na stdout: + + +

    +
      SET KPATHSEA_DEBUG_OUTPUT=con:
    +
    +

    W ten sposób można skierować zarówno stderr, jak i stdout do tego samego pliku. +

  • +
  • Przy założeniu, że instalację wykonano w c:/TeX, należy sprawdzić (porównać) następujące + wartości:
    + +
    kpsewhich -expand-path $SELFAUTOPARENT c:/TeX
    kpsewhich -expand-path $TEXMF c:/TeX/texmf....
    kpsewhich -expand-var $TEXINPUTS .;c:/TeX/texmf/tex//
    +
    +

    Jeśli w otoczeniu systemowym są zdefiniowane zmienne związane z TEX-em, należy je usunąć, mają + bowiem pierwszeństwo przed tymi, które określono w pliku texmf.cnf. +

  • +
  • Następnie należy sprawdzić (porównać) wartości:
    +
    kpsewhich cmr10.tfm c:/TeX/texmf-dist/fonts/tfm/public/cm/cmr10.tfm
    kpsewhich latex.fmt c:/TeX/texmf-var/web2c/pdftex/latex.fmt
    +
    +

    Jeśli podczas sprawdzania nie znaleziono odstępstw, to TEX i programy towarzyszące powinny działać. + Jeśli tak nie jest, to należy poeksperymentować z opcją -debug=n programu kpsewhich i zweryfikować + wszystkie uzyskane wartości. Po zidentyfikowaniu problemu warto go zgłosić.

+

+

8. Instrukcja obsługi systemu Web2C

+

Web2C to zestaw programów związanych z TEX-em, tj. sam TEX, Metafont, MetaPost, BibTeX itd. Stanowią +one rdzeń dystrybucji TEX Live. +

Oryginalna implementacja wykonana została przez Tomasa Rokickiego, który w roku 1987 stworzył +pierwszy system TEX-to-C, adaptując pliki wymiany (change files) pod Unix-em (pierwotnie +były one dziełem Howarda Trickey’a oraz Pavela Curtisa). W czasie, gdy Tim Morgan zajmował +się systemem, jego nazwa została zmieniona na Web-to-C. W 1990 roku prace nad projektem +przejął Karl Berry wraz z dziesiątkami współpracowników, a w roku 1997 pałeczkę przejął Olaf +Weber. +

Web2C działa na platformach systemowych, takich jak Unix (w tym Mac OS X), Windows 9x/NT/2K/XP +i innych. System wykorzystuje oryginalne źródła TEX-owe autorstwa Donalda Knutha oraz inne programy +napisane w WEB i tłumaczy je na kod źródłowy C. Ponadto system udostępnia spory zestaw makr i funkcji +stworzonych dla zwiększenia funkcjonalności oryginalnych zasobów oprogramowania związanego z TEX-em. +Podstawowymi składnikami systemu są: +

+

+ bibtex
+

tworzenie spisów bibliograficznych; +

+ dvicopy
+

modyfikowanie pliku DVI; +

+ dvitomp
+

konwersja DVI do MPX (rysunki MetaPost-owe); +

+ dvitype
+

konwersja DVI na plik tekstowy (ASCII); +

+ gftodvi
+

zamiana fontu GF na plik DVI; + + +

+ gftopk
+

zamiana fontu w formacie GF na font spakowany (PK); +

+ gftype
+

zamiana fontu GF na plik tekstowy (ASCII); +

+ mf
+

generowanie fontów bitmapowych w formacie GF; +

+ mft
+

skład plików źródłowych Metafont-a; +

+ mpost
+

tworzenie rysunków oraz diagramów technicznych; +

+ patgen
+

tworzenie wzorców przenoszenia wyrazów; +

+ pktogf
+

zamiana fontów w formacie PK na fonty GF; +

+ pktype
+

zamiana fontu PK na plik tekstowy (ASCII); +

+ pltotf
+

konwersja tekstowej listy właściwości do TFM; +

+ pooltype
+

wyświetlanie WEB-owych plików pool; +

+ tangle
+

konwersja WEB do języka Pascal; +

+ tex
+

skład tekstu; +

+ tftopl
+

konwersja TFM do tekstowej listy właściwości (PL); +

+ vftovp
+

konwersja fontów wirtualnych do wirtualnej listy właściwości (VPL); +

+ vptovf
+

konwersja wirtualnej listy właściwości do fontów wirtualnych; +

+ weave
+

konwersja WEB do TEX-a.

+ + +

Dokładny opis funkcji oraz składni tych programów zawarty jest w dokumentacji poszczególnych pakietów +samego Web2C. Do optymalnego korzystania z instalacji Web2C przyda się znajomość kilku zasad rządzących +całą rodziną programów. +

Wszystkie programy obsługują standardowe opcje GNU: +

+--help   
podaje podstawowe zasady użytkowania; +
+--verbose
podaje dokładny raport z działania programu; +
+--version
podaje informację o wersji, po czym kończy działanie programu.
+

Do lokalizowania plików programy oparte na Web2C używają biblioteki do przeszukiwania ścieżek zwanej +Kpathsea. Dla optymalizacji przeszukiwania TEX-owego drzewa podkatalogów biblioteka ta używa +kombinacji zmiennych środowiskowych oraz kilku plików konfiguracyjnych. Web2C potrafi obsługiwać +jednocześnie więcej niż jedno drzewo podkatalogów, co jest użyteczne w wypadku, gdy chce się +przechowywać standardową dystrybucję TEX-a jak i lokalne rozszerzenia w dwóch różnych drzewach +katalogów. Aby przyspieszyć poszukiwanie plików, katalog główny każdego drzewa ma swój plik ls-R, +zawierający pozycje określające nazwę i względną ścieżkę dla wszystkich plików zawartych w tym +katalogu. +

+

8.1. Przeszukiwanie ścieżek przez Kpathsea

+

Opiszemy najpierw ogólny mechanizm przeszukiwania ścieżek przez bibliotekę Kpathsea. +

Tym, co nazywamy ścieżką przeszukiwania, jest rozdzielona dwukropkami lub średnikami lista elementów +ścieżki, które zasadniczo są nazwami podkatalogów. Ścieżka przeszukiwania może pochodzić z (kombinacji) +wielu źródeł. Przykładowo, aby odnaleźć plik „my-file” w ścieżce „.:/dir”, Kpathsea sprawdza istnienie +danego elementu ścieżki w następującej kolejności: najpierw ./my-file, potem /dir/my-file, zwracając +pierwszy odnaleziony (lub możliwie wszystkie). +

Aby optymalnie zaadaptować się do konwencji wszystkich systemów operacyjnych, na systemach +nieunixowych Kpathsea może używać jako separatorów nazw ścieżek znaków innych niż dwukropek („:”) oraz +„ciach” („/”). +

W celu sprawdzenia konkretnego elementu p ścieżki, Kpathsea najpierw sprawdza, czy zbudowana +wcześniej baza danych (patrz „Baza nazw plików” na str. 70) odnosi sie do p, tj. czy baza danych znajduje się +w podkatalogu z prefiksem p. Jeżeli tak, to specyfikacja ścieżki jest porównywana z zawartością +bazy. +

Jeśli baza danych nie istnieje bądź nie odnosi się do danego elementu ścieżki albo też nie zawiera +elementów zgodnych, to przeszukiwany jest system plików (jeżeli nie zostało to zabronione przez specyfikację +rozpoczynającą się od „!!” oraz jeżeli poszukiwany plik musi istnieć). Kpathsea konstruuje listę +podkatalogów, które korespondują z danym elementem ścieżki, a następnie sprawdza w każdym z nich, czy +nie ma tam poszukiwanego pliku. +

Warunek mówiący, że „plik musi istnieć” dotyczy np. plików „.vf” i plików dołączanych TEX-owym +poleceniem \openin. Takiego pliku może nie być (np. cmr10.vf), błędne byłoby zatem poszukiwanie go na +dysku. Jeśli więc zapomnisz o aktualizacji ls-R po instalacji nowego pliku „.vf”, to nie zostanie on +odnaleziony. Każdy element ścieżki sprawdzany jest w następującej kolejności: najpierw w bazie danych, +potem na dysku. Jeżeli plik się znajdzie, to przeszukiwanie zostanie zatrzymane i zwrócony zostanie +wynik. +

Ponieważ najprostszym i najbardziej powszechnym elementem ścieżki jest nazwa katalogu, Kpathsea +korzysta z dodatkowych możliwości w przeszukiwaniu ścieżek: wielowarstwowych wartości domyślnych, +zmiennych środowiskowych, wartości pliku konfiguracyjnego, lokalnych podkatalogów użytkownika oraz +rekursywnego przeszukiwania podkatalogów. Można więc powiedzieć, że Kpathsea rozwija element ścieżki, +tzn. transformuje wszystkie specyfikacje do podstawowej nazwy lub nazw katalogów. Jest to opisane +w kolejnych akapitach, w kolejności w jakiej to zachodzi. +

Trzeba zauważyć, że jeżeli nazwa poszukiwanego pliku jest absolutna lub jawnie względna, tj. +zaczyna się od „/” lub „./” lub „../”, to Kpathsea ogranicza się do sprawdzenia, czy ten plik +istnieje. + + +

+

8.1.1. Źródła ścieżek
+

Nazwa przeszukiwanej ścieżki może pochodzić z wielu źródeł. Oto kolejność, w jakiej Kpathsea ich +używa: +

+

    +
  1. Zmienna środowiskowa ustawiana przez użytkownika, np. TEXINPUTS. + Zmienne środowiskowe z dołączoną kropką i nazwą programu zastępują inne, np. jeżeli „latex” + jest nazwą uruchomionego programu, wtedy zamiast TEXINPUTS wykorzystana zostanie zmienna + TEXINPUTS.latex. +
  2. +
  3. Plik konfiguracyjny konkretnego programu, np. linia „S /a:/b” w pliku config.ps programu + dvips. +
  4. +
  5. Plik konfiguracyjny Kpathsea texmf.cnf, zawierający taką linię, jak „TEXINPUTS=/c:/d” (patrz + poniżej). +
  6. +
  7. Wartości domyślne dla uruchamianych programów.
+

Każdą z tych wartości dla danej ścieżki przeszukiwania można zobaczyć, używając opcji diagnostyki błędów +(patrz „Diagnostyka błędów” na str. 73). +

+

8.1.2. Pliki konfiguracyjne
+

Kpathsea szuka ścieżek przeszukiwania i innych definicji w plikach konfiguracyjnych o nazwach texmf.cnf. +Ścieżka przeszukiwania używana do znajdowania tych plików określana jest przez zmienną TEXMFCNF, ale nie +zalecamy jawnego ustawiania tej, jak i innych zmiennych w systemie. Zamiast tego typowa instalacja TEX +Live tworzy plik .../2012/texmf.cnf, który w wyjątkowych wypadkach możemy modyfikować. Głównym +plikiem konfiguracyjnym jest .../2012/texmf/web2c/texmf.cnf, ale nie powinien być on modyfikowany, +gdyż zmiany będą utracone podczas aktualizacji. +

Czytane będą wszystkie pliki texmf.cnf w ścieżce przeszukiwania, a definicje we wcześniejszych plikach +zastąpią te w późniejszych. Tak więc w ścieżce .:$TEXMF wartości pochodzące z ./texmf.cnf zastąpią te +z $TEXMF/texmf.cnf. +

Dociekliwy czytelnik może być zainteresowany sposobem, w jaki programy znajdują plik texmf.cnf, skoro +nie ma konieczności deklarowania specyficznej zmiennej środowiskowej systemu. Otóż położenie domyślne jest +wkompilowane w programy jako względne do ich położenia (określanego, jak wiemy, w ścieżce specyfikowanej +przez $PATH): ../../texmf/web2c/ bądź ../texmf/web2c/. Jeśli jawnie deklarujemy zmienną TEXMFCNF, +wymagane jest podanie bezwzględnej ścieżki. +

Czytając zamieszczony poniżej opis formatu pliku texmf.cnf, warto przeglądać jego zawartość. Położenie +aktywnego pliku znajdziemy za pomocą polecenia kpsewhich texmf.cnf. +

    +
  • Komentarze zaczynają się od „%”, a kończą na końcu wiersza. +
  • +
  • Puste wiersze nie są brane pod uwagę. +
  • +
  • Znak „\” na końcu wiersza działa jako znak kontynuacji, tzn. oznacza, że kolejny wiersz jest + kontynuacją bieżącego. Spacja na początku kolejnego wiersza nie jest ignorowana. +
  • +
  • Pozostałe wiersze mają postać:
    +

    +   zmienna[.program] [=] wartość + + +
    +
    gdzie „=” i otaczające spacje są opcjonalne. +
  • +
  • zmienna” zawierać może dowolne znaki poza spacją, „=”, lub „.” (kropką), najbezpieczniej jednak + używać znaków z zakresu „A-Za-z_”. +
  • +
  • Napis „.program” ma zastosowanie w wypadku, gdy uruchamiany program nosi nazwę + program lub program.exe. Pozwala to różnym odmianom TEX-a stosować różne ścieżki + przeszukiwania. +
  • +
  • wartość” zawierać może dowolne znaki poza „%” i „@”. Nie można używać konstrukcji + „$zmienna.program” po prawej stronie. Zamiast tego trzeba zastosować zmienną pomocniczą. + Jeżeli systemem operacyjnym jest Unix, to średnik „;” użyty w „wartość” zamieniany + jest na „:”; umożliwia to istnienie wspólnego pliku texmf.cnf dla systemów Unix oraz + Windows. +
  • +
  • Wszystkie definicje czytane są zanim cokolwiek zostanie rozwinięte, tak więc do zmiennych można się + odwoływać przed ich zdefiniowaniem.
+

Oto fragment pliku konfiguracyjnego ilustrujący większość opisanych powyżej reguł notacji: +

+  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. Rozwijanie ścieżek
+

Kpathsea rozpoznaje w ścieżkach przeszukiwania pewne specjalne znaki oraz konstrukcje, podobne do tych, +które są dostępne w powłokach systemów typu Unix. Jako ogólny przykład: złożona ścieżka +~$USER/{foo,bar}//baz rozwija się do wszystkich podkatalogów pod katalogami foo bar w katalogu +głównym $USER, które zawierają katalog lub plik baz. Rozwinięcia te opisane są w poniższych +podrozdziałach. +

+

8.1.4. Rozwijanie domyślne
+

Jeżeli ścieżka przeszukiwania największego uprzywilejowania (patrz „Źródła ścieżek” na str. 65) zawiera +dodatkowy dwukropek (np. na początku, na końcu lub podwójny), to Kpathsea wstawia w tym miejscu +następną zdefiniowaną w hierarchii uprzywilejowania ścieżkę przeszukiwania. Jeżeli ta wstawiona +ścieżka ma dodatkowy dwukropek, to dzieje się dalej to samo. Przykładowo, jeżeli ustawić zmienną +środowiskową +

+

+> setenv TEXINPUTS /home/karl: +
+
oraz wartość TEXINPUTS pobraną z texmf.cnf +
+

+  .:$TEXMF//tex + + +
+
to końcową wartością użytą w przeszukiwaniu będzie: +
+

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

Ponieważ nieużytecznym byłoby wstawiać wartość domyślną w więcej niż jednym miejscu, Kpathsea +zmienia tylko jeden dodatkowy „:” i pozostawia inne bez zmian. Kpathsea najpierw szuka dwukropków na +początku linii, potem na końcu, a następnie podwójnych. +

+

8.1.5. Rozwijanie nawiasów
+

Użyteczna jest możliwość rozwijania nawiasów, co oznacza, że np. v{a,b}w rozwija się do vaw:vbw. Nawiasy +można też zagnieżdżać. Funkcji tej można użyć do zaimplementowania różnych hierarchii TEX-owych przez +przypisanie listy nawiasów do $TEXMF. Przykładowo, w pliku texmf.cnf można znaleźć następującą +(uproszczoną tu) definicję: + + +

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

Używając jej, można następnie napisać coś w rodzaju: + + +

+
    TEXINPUTS = .;$TEXMF/tex//
+
+

co oznacza, że po szukaniu w katalogu bieżącym będą przeszukane kolejno $TEXMFHOME/tex, +$TEXMFLOCAL/tex, $TEXMFVAR/tex $TEXMFMAIN/tex (wszystkie wraz z katalogami niższego poziomu; dwie +ostatnie ścieżki wyłącznie na podstawie zawartości pliku ls-R). Jest to wygodny sposób na uruchamianie +dwóch równoległych struktur TEX-owych, jednej „zamrożonej” (np. na CD), a drugiej ciągle uaktualnianej +nowo pojawiającymi się wersjami. Używając zmiennej $TEXMF we wszystkich definicjach daje pewność, że +najpierw przeszukiwane jest drzewo uaktualnione. +

+

8.1.6. Rozwijanie podkatalogów
+

Dwa lub więcej kolejnych „ciachów” („/”) w elemencie ścieżki, występujących po nazwie katalogu d, +zastępowanych jest przez wszystkie podkatalogi d, najpierw podkatalogi znajdujące się bezpośrednio pod d, +potem te pod powyższymi i tak dalej. Na każdym etapie kolejność, w jakiej przeszukiwane są katalogi, jest +nieokreślona. +

Jeśli wyszczególni się człony nazwy pliku po „//”, to uwzględnione zostaną tylko te podkatalogi, które +zawierają powyższe człony. Na przykład „/a//b” rozwija się do katalogów /a/1/b, /a/2/b, /a/1/1/b itd., ale +nie do /a/b/c czy /a/1. +

Możliwe jest wielokrotne użycie „//” w ścieżce, jednakże „//” występujące na początku ścieżki nie jest +brane pod uwagę. +

+

8.1.7. Lista znaków specjalnych i ich znaczeń – podsumowanie
+

Poniższa lista podsumowuje znaczenie znaków specjalnych w plikach konfiguracyjnych. +

+

+:
znak rozdzielający w specyfikacji ścieżki; umieszczony na początku lub na końcu ścieżki + zastępuje domyślne rozwinięcie ścieżki; +
+;
znak rozdzielający dla systemów nieuniksowych (działa tak jak „:”); +
+$
rozwijanie zmiennej; +
+~
oznacza katalog główny użytkownika; +
+{…}
rozwijanie nawiasów, np. a{1,2}b zmieni się w a1b:a2b; +
+//
rozwijanie podkatalogów (może wystąpić gdziekolwiek w ścieżce, poza jej początkiem); +
+%
początek komentarza, obejmującego wszystkie znaki do końca linii; +
+\
znak kontynuacji (pozwala na przełamanie wiersza z wyrażeniem); +
+!!
przeszukiwanie tylko bazy danych, a nie dysku.
+ + +

+

8.2. Bazy nazw plików

+

Podczas przeszukiwania Kpathsea stara się zminimalizować dostęp do dysku. Niemniej, w przypadku instalacji +ze zbyt dużą liczbą katalogów przeglądanie każdego dopuszczalnego katalogu w poszukiwaniu pliku może +zabierać sporo czasu (ma to miejsce zwłaszcza, jeżeli przeszukać trzeba setki katalogów z fontami). +Dlatego też Kpathsea może używać zewnętrznego pliku z „bazą danych” o nazwie ls-R, który +zawiera przypisania plików do katalogów. Unika się w ten sposób czasochłonnego przeszukiwania +dysku. +

Drugi plik z bazą danych – aliases – pozwala na nadawanie dodatkowych nazw plikom zawartym w ls-R. +Może to być pomocne do adaptacji do DOS-owej konwencji „8.3” nazewnictwa plików w plikach +źródłowych. +

+

8.2.1. Baza nazw plików
+

Jak wspomniano, plik zawierający główną bazę nazw plików musi nosić nazwę ls-R. W katalogu +podstawowym każdej hierarchii TEX-owej (domyślnie $TEXMF), którą chcemy włączyć w mechanizm +przeszukiwania, umieszczać można po jednym pliku ls-R; w większości przypadków istnieje tylko jedna +hierarchia. Kpathsea szuka pliku ls-R w ścieżce TEXMFDBS. +

Najlepszym sposobem stworzenia i utrzymywania pliku ls-R jest uruchomienie skryptu mktexlsr, +będącego składnikiem dystrybucji. Jest on wywoływany przez różne skrypty typu „mktex...”. W zasadzie +skrypt ten jedynie wykonuje polecenie

+

+cd /your/texmf/root && ls -LAR ./ >ls-R +
+
zakładając, że polecenie ls danego systemu utworzy właściwy format strumienia wyjściowego (GNU ls +działa prawidłowo). Aby mieć pewność, że baza danych jest zawsze aktualna, wygodnie jest przebudowywać +ją regularnie za pomocą demona cron. +

Jeśli pliku nie ma w bazie danych, Kpathsea domyślnie przechodzi do przeszukiwania dysku. Jeżeli jednak +dany element ścieżki zaczyna sie od „!!”, to w poszukiwaniu tego elementu sprawdzona zostanie jedynie baza +danych, a nigdy dysk. +

+

8.2.2. kpsewhich – program do przeszukiwania ścieżek
+

Przeszukiwanie ścieżek przez program kpsewhich jest niezależne od jakiejkolwiek aplikacji. Może on być +przydatny jako rodzaj programu find, za pomocą którego lokalizować można pliki w hierarchiach TEX-owych +(jest on używany intensywnie w skryptach „mktex...” tej dystrybucji). +

+

+> kpsewhich opcje nazwa-pliku +
+
Parametry wyszczególnione w „opcje” mogą zaczynać się zarówno od „-”, jak i od „--”, a dozwolony jest +każdy jednoznaczny skrót. +

Kpathsea traktuje każdy argument niebędący parametrem jako nazwę pliku i zwraca pierwszą odnalezioną +nazwę. Nie ma parametru nakazującego zwracanie wszystkich nazw plików o określonej nazwie (w tym celu +można wykorzystać Unix-owy program „find”). +

Oto ważniejsze parametry. +

+

+ --dpi=num
+


Ustaw rozdzielczość na „num”; ma to tylko wpływ na przeszukiwanie fontów „gf” i „pk”. Dla + zgodności z dvips parametr „-D” działa identycznie. Domyślną wartością jest 600. + + +

+ --format=nazwa
+


Ustawienie formatu (typu pliku) przeszukiwania na „nazwa”. Domyślnie format odgadywany jest + z nazwy pliku. Dla formatów, które nie mają przydzielonego jednoznacznego rozszerzenia, takich + jak niektóre pliki MetaPost-owe czy pliki konfiguracyjne dvips-a, należy wyszczególnić nazwę, + których listę wyświetli uruchomienie kpsewhich --help. +

+ --mode=napis
+


Ustaw nazwę trybu na „napis”; dotyczy to jedynie szukania fontów „gf” oraz „pk”. Brakuje + wartości domyślnej – odnaleziony zostanie dowolny wyszczególniony tryb. +

+ --must-exist
+


Zrób wszystko co możliwe, aby odnaleźć pliki, włączając w to przede wszystkim przeszukanie + dysku. Domyślnie, w celu zwiększeniu efektywności działania, sprawdzana jest tylko baza ls-R. +

+ --path=napis
+


Szukaj w ścieżce „napis” (rozdzielonej, jak zwykle, dwukropkami), zamiast zgadywać ścieżkę + przeszukiwania z nazwy pliku. „//” i wszystkie zwykłe rozszerzenia są możliwe. Parametry + „--path” oraz „--format” wzajemnie się wykluczają. +

+ --progname=nazwa
+


Ustaw nazwę programu na „nazwa”. Może to mieć wpływ na ścieżkę przeszukiwania poprzez + „.program” w plikach konfiguracyjnych. Ustawieniem domyślnym jest „kpsewhich”. +

+ --show-path=nazwa
+


Pokazuje ścieżkę używaną do poszukiwania plików typu „nazwa”. Użyć można zarówno + rozszerzenia („.pk”, „.vf”, etc.), jak i nazwy pliku, tak jak w wypadku parametru „--format”. +

+ --debug=num
+


ustawia parametry wykrywania błędów na „num”.

+

+

8.2.3. Przykłady użycia
+

Przyjrzyjmy sie teraz, jak działa Kpathsea. +

+

+> kpsewhich  article.cls +
/usr/local/texmf-dist/tex/latex/base/article.cls +
+
Szukamy tu pliku article.cls. Ponieważ rozszerzenie „.cls” jest jednoznaczne, nie musimy zaznaczać, że +poszukujemy pliku typu „tex” (katalogi plików źródłowych TEX-a). Znajdujemy go w podkatalogu +tex/latex/base, pod katalogiem nadrzędnym „texmf-dist”. Podobnie wszystkie poniższe pliki odnajdywane +są bezproblemowo dzięki swoim jednoznacznym rozszerzeniom:
+ + +

+> 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 +
+
+

(ostatni plik to BibTeX-owa baza bibliograficzna dla artykułów TUGBoat). +

+

+> kpsewhich cmr10.pk +
+
Pliki czcionek bitmapowych typu .pk używane są przez sterowniki, takie jak dvips czy xdvi. W tym wypadku +wynik przeszukiwania okaże się pusty, ponieważ w systemie brak gotowych wygenerowanych czcionek „.pk” +Computer Modern (wynika to z faktu używania w TEX Live fontów PostScript-owych Type1). +
+

+> kpsewhich wsuipa10.pk +
   /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +
+
Dla tych fontów (alfabetu fonetycznego) musieliśmy wygenerować pliki „.pk”, a ponieważ domyślnym +Metafont-owym trybem naszej instalacji jest ljfour z podstawową rozdzielczością 600dpi, zwracany jest taki +właśnie wynik.
+

+> kpsewhich -dpi=300 wsuipa10.pk +
+
W tym wypadku, kiedy zaznaczamy, że interesuje nas rozdzielczość 300dpi (-dpi=300), to widzimy, że +w naszej instalacji taka czcionka nie jest dostępna. Program taki jak dvips czy xdvi zatrzymałby się, aby +utworzyć pliki .pk w wymaganej rozdzielczości (używając skryptu mktexpk). +

Przeanalizujmy teraz pliki nagłówkowe i konfiguracyjne programu dvips. Najpierw szukamy pliku +PostScript-owego prologu tex.pro, wykorzystywanego dla potrzeb TEX-a. Drugi przykład pokazuje +poszukiwanie pliku konfiguracyjnego config.ps, zaś trzeci – szukanie pliku mapy czcionek PostScriptowych +psfonts.map (począwszy od obecnej edycji, pliki .map .enc mają własne reguły przeszukiwania ścieżek +i zmienione położenie w ramach drzew texmf). Ponieważ rozszerzenie „.ps” nie jest jednoznaczne, +musimy wyraźnie zaznaczyć, jaki typ jest wymagany dla pliku config.ps („dvips config”). +

+

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

Następnie przyjrzyjmy się bliżej plikom pomocniczym fontów Times z kolekcji URW. W standardzie +nazewnictwa fontów mają one prefiks „utm”. Pierwszy plik, którego szukamy, to plik konfiguracyjny, +zawierający nazwę pliku z przemapowaniem fontów:

+

+> kpsewhich --format="dvips config" config.utm +
   /usr/local/texmf-dist/dvips/psnfss/config.utm +
+
W pliku tym znajduje się wiersz:
+

+  p +utm.map +
+
wskazujący na plik utm.map, który chcemy zlokalizować w następnej kolejności:
+

+> kpsewhich utm.map +
   /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +
+
Plik z przemapowaniem definiuje nazwy czcionek PostScriptowych Type1 w zestawie fontów URW, zaś jego +zawartość wygląda następująco (pokazane są tylko fragmenty wierszy):
+

+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 +
+
Używając przeszukiwania plików z fontami Type1, znajdźmy font Times Roman utmr8a.pfb w drzewie +katalogów texmf:
+

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

Powyższe przykłady pokazują, jak łatwo można znajdować lokalizację danego pliku. Jest to ważne +zwłaszcza wówczas, gdy istnieje podejrzenie, że gdzieś zawieruszyła się błędna wersja jakiegoś pliku; kpsewhich +pokaże tylko pierwszy napotkany plik. +

+

8.2.4. Diagnostyka błędów
+

Czasami niezbędne są informacje o tym, jak program sobie radzi z odniesieniami do plików. Aby dało się je +uzyskać w wygodny sposób, Kpathsea oferuje różne poziomy diagnostyki błędów: +

    +
  • wywołania stat (testy pliku). Podczas uruchamiania z uaktualnioną bazą danych ls-R nie + powinno to przeważnie dawać żadnego wyniku. + + +
  • +
  • Zapis odwołań do tablic asocjacyjnych (hash tables), takich jak baza ls-R, pliki przemapowań, + pliki konfiguracyjne. +
  • +
  • Operacje otwarcia i zamknięcia pliku. +
  • +
  • Ogólne informacje o ścieżkach dla typów plików szukanych przez Kpathsea; użyteczne do + znalezienia ścieżki zdefiniowanej dla danego pliku. +
  • +
  • Lista katalogów dla każdego z elementów ścieżki (odnosi się tylko do poszukiwań na dysku). +
  • +
  • Poszukiwania plików.
+

Wartość -1 ustawia wszystkie powyższe opcje – w praktyce, poszukując przyczyny błędów, prawdopodobnie +będziesz zawsze używać tych poziomów. +

Podobnie w przypadku programu dvips, ustawiając kombinację przełączników wykrywania błędów, można +dokładnie śledzić, skąd pochodzą pliki. W sytuacji gdy plik nie zostanie odnaleziony, widać, +w których katalogach program szukał danego pliku, dzięki czemu można się zorientować, w czym +problem. +

Ogólnie mówiąc, ponieważ programy odwołują się wewnętrznie do biblioteki Kpathsea, opcje wykrywania +błędów można wybrać przy użyciu zmiennej środowiskowej KPATHSEA_DEBUG, ustawiając ją na opisaną +powyżej wartość (kombinację wartości). +

Uwaga dla użytkowników Windows: w systemie tym niełatwo przekierować komunikaty programu do +pliku. Do celów diagnostycznych można chwilowo ustawić zmienne (w oknie CMD): + + +

+
  SET KPATHSEA_DEBUG_OUTPUT=err.log
  SET KPATHSEA_DEBUG=-1
+
+

+

Rozważmy na przykład mały LATEX-owy plik źródłowy hello-world.tex, który zawiera: + + +

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

Ten mały plik korzysta jedynie z fontu cmr10. Przyjrzyjmy się, jak dvips przygotowuje plik PostScript-owy +(chcemy użyć wersji Type1 fontu Computer Modern, stąd opcja -Pcms).

+

+> dvips -d4100 hello-world -Pcms -o +
+
Mamy tu do czynienia jednocześnie z czwartą klasą wykrywania błędów programu dvips (ścieżki +fontowe) oraz z rozwijaniem elementu ścieżki przez Kpathsea (patrz: Dvips Reference Manual, +texmf/doc/dvips/dvips.pdf). Komunikaty z uruchomienia programu (nieco zmodyfikowane) znajdują się +na rys. 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
+
Rysunek 12: Szukanie pliku konfiguracyjnego
+
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
+
Rysunek 13: Szukanie pliku prologu
+
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]
+
Rysunek 14: Szukanie pliku fontu
+ + +

+

Program dvips zaczyna pracę od zlokalizowania potrzebnych mu plików. Najpierw znajduje plik texmf.cnf, +który zawiera ścieżki przeszukiwania dla innych plików. Potem znajduje bazę danych ls-R (w celu +optymalizacji szukania plików), następnie plik aliases, który umożliwia deklarowanie różnych nazw (np. +krótkie DOS-owe „8.3” i bardziej naturalne dłuższe wersje) dla tych samych plików. Następnie +dvips znajduje podstawowy plik konfiguracyjny config.ps, zanim poszuka pliku z ustawieniami +użytkownika .dvipsrc (który w tym wypadku nie zostaje odnaleziony). W końcu dvips lokalizuje plik +konfiguracyjny config.cms dla fontów PostScript-owych Computer Modern (jest to inicjowane przez +dodanie parametru -Pcms przy uruchamianiu programu). Plik ten zawiera listę plików z „mapami”, +które definiują relacje pomiędzy TEX-owymi, PostScript-owymi i systemowymi nazwami fontów. +

+

+> more /usr/local/texmf/dvips/config/config.cms +
p +ams.map +
p +cms.map +
p +cmbkm.map +
p +amsbkm.map +
+
W ten sposób dvips wyszukuje wszystkie te pliki oraz główny plik z przemapowaniem psfonts.map, który +ładowany jest domyślnie (zawiera on deklaracje często używanych fontów postscriptowych; więcej szczegółów +na temat postscriptowych plików przemapowań fontów można znaleźć w ostatniej części rozdziału +8.2.3). +

W tym miejscu dvips zgłasza się użytkownikowi:

+

+
This is dvips 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +
+
…potem szuka pliku prologu 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 +
+
Po znalezieniu szukanego pliku dvips podaje datę i czas oraz informuje o generowaniu pliku hello-world.ps. +Ponieważ potrzebuje pliku z fontem cmr10, a jest on zadeklarowany jako dostępny, wyświetla komunikat: +
+

+
TeX output 1998.02.26:1204’ -> hello-world.ps +
Defining font () cmr10 at 10.0pt +
Font cmr10 <CMR10> is resident. +
+
Teraz trwa poszukiwanie pliku cmr10.tfm, który zostaje znaleziony, po czym dvips powołuje się na kilka +innych plików startowych (nie pokazanych). W końcu przykładowy font Type1 cmr10.pfb zostaje +zlokalizowany i dołączony do pliku wynikowego (patrz ostatnia linia):
+

+
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. Parametry kontrolujące działanie programów

+

Inną użyteczną cechą Web2C jest możliwość ustalania wielu parametrów określających wielkość pamięci za +pomocą pliku texmf.cnf. Ustawienia wszystkich parametrów znajdują się w części trzeciej pliku. +Najważniejszymi zmiennymi są: +

+main_memory
Całkowita wielkość pamięci dostępnej dla TEX-a, Metafont-a i MetaPost-a. Dla każdego + nowego ustawienia tej zmiennej należy wykonać nowy format. +
+extra_mem_bot
Dodatkowa wielkość pamięci przeznaczonej na „duże” struktury danych TEX-a, takie + jak: pudełka, kleje itd.; przydatna zwłaszcza w wypadku korzystania z pakietu PI CTEX. +
+font_mem_size
Wielkość pamięci przeznaczonej przez TEX-a na informacje o fontach. Jest to mniej + więcej ogólna wielkość wczytywanych przez TEX-a plików TFM. +
+hash_extra
Dodatkowa wielkość pamięci przeznaczonej na tablicę zawierającą nazwy instrukcji. + Tablica główna może zmieścić w przybliżeniu 10000 nazw; wielkość ta może się okazać + zbyt mała, np. w wypadku obszernej książki zawierającej liczne odsyłacze. Domyślna wartość + hash_extra to 50000.
+

Oczywiście powyższa możliwość nie zastąpi prawdziwej, dynamicznej alokacji pamięci. Jest to jednak niezwykle +trudne do zaimplementowania w obecnej wersji TEX-a i dlatego powyższe parametry stanowią praktyczny +kompromis, pozwalając na pewną elastyczność. +

Należy tu jednak nadmienić, iż nie wszystkie programy korzystają z tych zmiennych. Np. LuaTEX posiada +nowoczesną, w pełni dynamiczną alokację pamięci, a zatem powyższe zmienne są w tym przypadku po prostu +ignorowane. +

+

9. Budowa systemu na nowej platformie uniksowej

+

Jeżeli mamy do czynienia z platformą, dla której nie są dostarczone binaria, trzeba będzie skompilować +TEX-a oraz towarzyszące mu programy. Nie jest to takie trudne, jak się wydaje. Wszystko czego potrzebujemy, +znajduje się na DVD w katalogu source. +

Najpierw należy zainstalować główne drzewo plików TEX-owych z TEX Live DVD (najlepiej wykonać +instalację podstawową, bez wybierania binariów systemowych). +

+

9.1. Warunki wstępne

+

Do skompilowania całego TEX-a i jego programów pomocniczych potrzeba około 100 megabajtów wolnego +miejsca na dysku. Potrzebny jest także kompilator ANSI C, oprogramowanie make, skaner leksykalny oraz +generator parserów. Programy użytkowe GNU (gcc, GNU make, m4, flex, bison) są najlepiej przetestowanymi +na różnych platformach. Poprawnie powinny pracować gcc-2.7.*, flex-2.4.7 i GNU make-3.72.1 lub +nowszy. Można też korzystać z innych kompilatorów C i programów make, wymaga to jednak +dobrego zrozumienia zasad tworzenia programów uniksowych, aby poradzić sobie z ewentualnymi +problemami. + + +

+

9.2. Konfiguracja

+

Należy rozpakować źródła ze skompresowanego pliku tar z katalogu source na twardy dysk, a potem przejść +do katalogu, do którego zostały one skopiowane. Teraz trzeba się zdecydować, gdzie będzie główny katalog +instalacji, np. /usr/TeX lub /usr/local/TeX. Naturalnie, należy użyć tej samej lokalizacji, która została +użyta podczas instalacji głównego drzewa TEX-owego. +

Uruchomić configure z linii poleceń:

+

+> ./configure --prefix=/usr/local/TeX +
+
+

Katalog „prefix” to ten, w którym zainstalowane zostało główne drzewo TEX-owe. Zostanie użyty +następujący układ katalogów ($TEXDIR oznacza wybrany powyżej katalog): +

+ + + +
$TEXDIR/man strony manuala uniksowego,
$TEXDIR/share/texmf główne drzewo TEX-owe, zawierające makra itp.,
$TEXDIR/info podręczniki w formacie GNU info,
$TEXDIR/bin/$PLATFORM binaria
+

Można uniknąć stosowania „share/” przed katalogiem texmf, ponieważ $TEXDIR/share/texmf +i $TEXDIR/texmf są wykrywane automatycznie przez skrypt configure. W razie wybrania innego katalogu, +trzeba ten katalog wyszczególnić parametrem --datadir skryptu configure. +

Jeżeli nie chcemy używać katalogu $PLATFORM (a więc umieścić binaria bezpośrednio w $TEXDIR/bin), to +w wywołaniu skryptu configure należy użyć parametru --disable-multiplatform. +

Więcej dostępnych parametrów (np. pomijanie pakietów opcjonalnych, takich jak Omega) można zobaczyć, +uruchamiając ./configure --help. +

+

9.3. Uruchamianie make

+

Po upewnieniu się, że nie jest ustawiona zmienna powłoki noclobber, należy napisać:

+

+> make world +
+
i …zaparzyć sobie kawę. +

Może się też przydać zapisanie całego procesu kompilacji w pliku .log:

+

+> sh -c "make world >world.log 2>&1" & +
+
Zanim stwierdzimy, że wszystko jest w porządku, warto sprawdzić, czy w pliku .log nie ma komunikatów +błędów (kiedy polecenie zwraca kod błędu, GNU make zawsze używa sekwencji „***”), i czy utworzone +zostały wszystkie binaria:
+

+> cd TEXDIR/bin/archname +
> ls | wc +
+
Oczekiwanym rezultatem jest ponad 200. Polecenie make world jest równoważne z make all install +strip. Jeśli do uruchamiania make install potrzebne są specjalne uprawnienia, można uruchomić dwie +oddzielne sesje make:
+ + +

+> make all +
> su +
> make install strip +
+
+

+

9.4. Końcowe kroki konfiguracyjne

+

Należy uaktualnić zmienną PATH o nazwę katalogu zawierającego właśnie zainstalowane binaria +(np. /usr/local/TeX/bin/mips-sgi-irix6.3); podobnie postąpić trzeba z MANPATH INFOPATH i dołączyć +do nich odpowiednie nazwy podkatalogów, tj. $TEXDIR/man oraz $TEXDIR/info. Patrz część 3.4 +(str. 37). +

Jeśli zechcesz udostępnić skompilowane przez siebie programy, skontaktuj się z nami (tex-live@tug.org); +chętnie umieścimy je na stronie TEX Live. +

+

10. Podziękowania

+

TEX Live jest wspólnym dziełem prawie wszystkich grup TEX-owych. Niniejsza edycja TEX Live została +opracowana pod kierownictwem Karla Berry’ego, przy głównym współudziale: +

    +
  • grup TEX-owych: międzynarodowej, niemieckiej, holenderskiej i polskiej (odpowiednio: TUG, + DANTE e.V., NTG, i GUST), które wspólnie zapewniają potrzebną infrastrukturę techniczną + i organizacyjną. Dołącz do swojej grupy TEX-owej!; +
  • +
  • zespołu CTAN (w szczególności Robina Fairbairnsa, Jima Hefferona i Rainera Schöpfa), który + dystrybuuje obrazy płyt TEX Live i udostępnia wspólną infrastrukturę służącą aktualizacji + pakietów, od której zależy TEX Live; +
  • +
  • Nelsona Beebe, za umożliwienie dostępu do wielu platform ekipie TEX Live i pomoc w testowaniu; +
  • +
  • Johna Bowmana, który dostosował swój zaawansowany program Asymptote do współpracy z TL; +
  • +
  • Petera Breitenlohnera i zespołu e-TEX, którzy stworzyli stabilną podstawę przyszłych wersji + TEX-a (Peter dodatkowo służy nieustanną pomocą w wykorzystaniu narzędzi autotools w TEX + Live); +
  • +
  • Jin-Hwan Cho i całego zespołu DVIPDFMx za ten znakomity sterownik i nieustanną pomoc + w rozwiązywaniu problemów z konfiguracją; +
  • +
  • Thomasa Essera, autora wspaniałego teTEX-a, bez którego TEX Live z całą pewnością by nie + powstał i którego stała pomoc umożliwiła doskonalenie tej dystrybucji; +
  • +
  • Michaela Goossensa, który był współautorem pierwotnej dokumentacji; +
  • +
  • Eitana Gurari, autora programu TEX4ht (wykorzystanego do tworzenia niniejszej dokumentacji + w wersji HTML), który niezmordowanie pracował nad jego ulepszaniem i błyskawicznie + dostarczał poprawki; Eitan zmarł w czerwcu 2009 r. i dedykujemy tę dokumentację Jego pamięci; +
  • +
  • Hansa Hagena, który dostosowywał ConTEXt do potrzeb TEX Live; +
  • +
  • Hàn Thế Thànha, Martina Schrödera i zespołu pdfTEX-a, którzy ciągle ulepszali możliwości + TEX-a; +
  • +
  • Hartmuta Henkela, mającego istotny udział w rozwoju pdfTEX-a, LuaTEX-a i innych + programów; + + +
  • +
  • Taco Hoekwatera, który wznowił rozwój MetaPosta i pracował nad LuaTEX-em, jak też + pomógł w integracji ConTEXt w TEX Live oraz ulepszył bibliotekę Kpathsea, dodając jej + wielowątkowość; +
  • +
  • Pawła Jackowskiego, który wykonał instalator dla Windows tlpm i Tomka Łuczaka, twórcy + tlpmgui (programy te były wykorzystane w poprzednich edycjach); +
  • +
  • Akira Kakuto, który dostarczył programy dla Windows, pochodzące z dystrybucji W32TEX + (http://w32tex.org), stale dostosowywane i aktualizowane dla potrzeb TEX Live; +
  • +
  • Jonathana Kew, który zainicjował nową ścieżkę rozwojową – XeTEX, i który włożył sporo + wysiłku w zintegrowanie tego programu z TEX Live, jak również zapoczątkował prace nad + instalatorem dla MacTEX oraz edytorem TEXworks; +
  • +
  • Dicka Kocha, który pielęgnuje MacTEX-a (http://tug.org/mactex) w ścisłym połączeniu + z TEX Live i bardzo sympatycznie współpracuje; +
  • +
  • Reinharda Kotuchy, mającego istotny udział w stworzeniu nowej infrastruktury i programu + instalacyjnego dla TEX Live 2009, uparcie dążącego do ujednolicenia działania TEX Live + w Windows i Unix, który również opracował skrypt getnonfreefonts i wykonał wiele innych + prac; +
  • +
  • Siep Kroonenberg, która również wzięła udział w stworzeniu nowej infrastruktury i programu + instalacyjnego dla TEX Live 2009 (szczególnie dla Windows) oraz włożyła sporo pracy w + aktualizację tej dokumentacji; +
  • +
  • Petra Olšáka, który koordynował i sprawdzał przygotowanie pakietów czeskich i słowackich; +
  • +
  • Toshio Oshimy, który opracował przeglądarkę dviout dla Windows; +
  • +
  • Manuela Pégourié-Gonnarda, który pomógł w aktualizacji pakietów i pracował nad texdoc; +
  • +
  • Fabrice’a Popineau, który pierwszy stworzył wersje oprogramowania dla Windows; +
  • +
  • Norberta Preininga, głównego architekta infrastruktury i programu instalacyjnego TEX Live + 2009, który przyczynił się również do aktualizacji pakietów, a także koordynował (wraz + z Frankiem Küsterem) debianową wersję TEX Live i przedstawił wiele sugestii ulepszeń; +
  • +
  • Sebastiana Rahtza, który stworzył TEX Live i kierował projektem przez wiele lat; +
  • +
  • Phila Taylora, który skonfigurował BitTorrent (do pobierania plików z sieci) na potrzeby TEX + Live; +
  • +
  • Tomka Trzeciaka, który pracowicie rozwiązywał rozliczne problemy związane z Windows; +
  • +
  • Vladimira Volovicha, który wydatnie pomógł w rozwiązywaniu problemów przenośności, + szczególnie zaś umożliwił dołączenia xindy; +
  • +
  • Staszka Wawrykiewicza, głównego testującego TEX Live w różnych systemach, który ponadto + koordynował przygotowanie wszystkich polskich dodatków (fontów, programów instalacyjnych + i wielu innych); +
  • +
  • Olafa Webera, który cierpliwie pielęgnował Web2C, od którego wszystko zależy; +
  • +
  • Gerbena Wierda, który przygotował oryginalne oprogramowanie i wsparcie dla Mac OS X; +
  • +
  • Grahama Williamsa, którego prace nad katalogiem pakietów bardzo pomogły w przygotowaniu + dystrybucji.
+ + +

Binaria dla różnych platform skompilowali: Ettore Aldrovandi (i386-solaris, x86_64-solaris), Alan Braslau +(amd64-kfreebsd, i386-kfreebsd), Peter Breitenlohner (x86_64-linux), Karl Berry (i386-linux), Ken Brown +(i386-cygwin), Akira Kakuto (win32), Dick Koch (universal-darwin, x86_64-darwin), Nikola Lečić +(amd64-freebsd, i386-freebsd), Mojca Miklavec (mipsel-linux), Norbert Preining (alpha-linux), Thomas Schmitz +(powerpc-linux), Boris Veytsman (armel-linux), Vladimir Volovich (powerpc-aix, sparc-solaris), Olaf +Weber (mips-irix). Informacje na temat procesu budowy TEX Live można znaleźć na stronie: +http://tug.org/texlive/build.html. +

Aktualizacje i tłumaczenia dokumentacji wykonali: Siep Kroonenberg i Karl Berry (angielski), Manuel +Pégourié-Gonnard (francuski), Uwe Ziegenhagen (niemiecki), Jjgod Jiang, Jinsong Zhao, Yue Wang i Helin +Gai (chiński), Marco Pallante (włoski), Nikola Lečić (serbski), Petr Sojka i Jan Busa (czeski/słowacki), Boris +Veytsman (rosyjski), Staszek Wawrykiewicz (polski). Na stronie http://tug.org/texlive/doc.html będą +umieszczane ewentualne aktualizacje tej dokumentacji. +

Oczywiście, najważniejsze podziękowania należą się Donaldowi Knuthowi za stworzenie systemu TEX +i ofiarowanie go nam wszystkim. +

+

11. Historia

+

+

11.1. Poprzednie wersje

+

Dystrybucja TEX Live jest wspólnym przedsięwzięciem grup Użytkowników Systemu TEX z Niemiec, +Holandii, Wielkiej Brytanii, Francji, Czech, Słowacji, Polski, Indii i Rosji oraz grupy międzynarodowej TUG +(TEX Users Group). Dyskusje nad projektem rozpoczęły się pod koniec 1993 roku, kiedy holenderska Grupa +Użytkowników TEX-a rozpoczęła prace nad swoim 4AllTEX CD dla użytkowników MS-DOS. W tym też +czasie pojawiły się nadzieje na opracowanie jednego CD dla wszystkich systemów. Projekt ten był wprawdzie +zbyt ambitny, zrodził jednak nie tylko bardzo popularny i uwieńczony dużym powodzeniem projekt +4AllTEX CD, lecz również spowodował powstanie Grupy Roboczej TUG ds. Standardu Katalogów +TEX-owych (TEX Directory Structure), określającego, w jaki sposób tworzyć zgodne i łatwe do +zarządzania zestawy pakietów TEX-owych. Końcowy raport TDS został opublikowany w grudniowym +numerze TUGboat-a, i jasnym się stało, że jednym z oczekiwanych wyników wprowadzenia tego +standardu mogłaby być modelowa struktura na płytce CD. Wydana wówczas płytka CD była +bezpośrednim rezultatem rozważań i zaleceń Grupy Roboczej ds. TDS. Jasne także było, że sukces +4AllTEX CD pokazał, że użytkownicy Unixa także wiele by zyskali, mogąc korzystać z podobnie +łatwego w instalacji/pielęgnacji i użytkowaniu systemu. Było to jednym z celów projektu TEX +Live. +

Projekt przygotowania płytki CD, opartej na standardzie TDS i zorientowanej na systemy uniksowe, +rozpoczął się jesienią 1995 roku. Szybko zdecydowaliśmy się na wykorzystanie teTEX-a autorstwa Thomasa +Essera, ponieważ działał na wielu platformach i został zaprojektowany z myślą o przenośności pomiędzy +różnymi systemami plików. Thomas zgodził się pomóc i prace rozpoczęły się na dobre na początku 1996 roku. +Pierwsze wydanie ukazało się w maju 1996 roku. Na początku 1997 roku Karl Berry udostępnił +nową, istotnie zmienioną wersję swojego pakietu Web2C, zawierającą prawie wszystkie funkcje +wprowadzone do teTEX-a przez Thomasa Essera. W związku z tym zdecydowaliśmy się oprzeć +drugie wydanie CD na standardowej bibliotece Web2C, z dodaniem skryptu texconfig z pakietu +teTEX. Trzecie wydanie CD było oparte na Web2C wersji 7.2, przygotowanej przez Olafa Webera. +W tym samym czasie została przygotowana nowa wersja teTEX-a i TEX Live udostępniał prawie +wszystkie jego nowe funkcje. Czwarta edycja była przygotowana podobnie, z użyciem nowej wersji +teTEX-a i nowej wersji Web2C (7.3). Wtedy to też zapoczątkowano kompletną dystrybucję dla +Windows. +

Edycja piąta (marzec 2000) zawierała wiele poprawek i uzupełnień; zaktualizowano setki pakietów. +Szczegółową zawartość pakietów zapisano w plikach XML. Główną zmianą w TEX Live 5 było usunięcie +programów, które nie miały statusu public domain. Zawartość całej płytki powinna odpowiadać ustaleniom +Debian Free Software Guidelines (http://www.debian.org/intro/free). Dołożyliśmy wszelkich starań, aby +sprawdzić warunki licencyjne pakietów. +

Szósta edycja (lipiec 2001) zawierała aktualizacje całego materiału. Główną zmianą było wprowadzenie +nowej koncepcji programów instalacyjnych – użytkownik miał odtąd możliwość dokładniejszego wyboru +potrzebnych zestawów i pakietów. Zestawy dotyczące obsługi poszczególnych języków zostały całkowicie + + +zreorganizowane, dzięki czemu wybór jednego z nich nie tylko instalował potrzebne makra i fonty, ale też +przygotowywał odpowiedni plik language.dat. +

TEX Live 7 (rok 2002) zawierał po raz pierwszy oprogramowanie dla Mac OS X i – jak zwykle – +aktualizację wszelkich programów i pakietów. Ważnym zadaniem, które wykonano, było ujednolicenie plików +źródłowych programów z dystrybucją teTEX. W programach instalacyjnych wprowadzono możliwość wyboru +bardziej ogólnych, predefiniowanych zestawów pakietów (m.in. dla użytkowników francuskojęzycznych oraz +polskich). Nowością było także wprowadzenie procedury aktualizacji map fontowych dla Dvips i PDFTeX +podczas instalacji oraz doinstalowywania pakietów fontowych. +

W 2003 r., wraz z napływem aktualizacji i dodatkowych nowych pakietów, okazało się, że TEX Live nie +mieści się na pojedynczym CD. Zmuszeni byliśmy podzielić TEX Live na trzy dystrybucje, które wydano na +DVD i dwóch płytkach CD. Ponadto: +

    +
  • na życzenie „LATEX team” zmieniono standardowe użycie programów latex pdflatex – by + korzystały one z e-TEX (patrz str. 11); +
  • +
  • załączono nowe fonty obwiedniowe Latin Modern, które zastępują m.in. fonty EC (zawierając + komplet znaków europejskich), szczególnie do tworzenia poprawnych plików PDF; +
  • +
  • usunięto binaria dla platformy Alpha OSF (poprzednio usunięto także binaria dla HPUX), niestety + nie udało się znaleźć osób chętnych do wykonania kompilacji; +
  • +
  • zmieniono instalację w systemach Windows, wprowadzając po raz pierwszy zintegrowane + środowisko pracy, oparte na edytorze XEmacs; +
  • +
  • potrzebne programy pomocnicze dla Windows (Perl, Ghostscript, ImageMagick, Ispell) + instalowano w strukturze katalogów instalacji TEX Live; +
  • +
  • mapy fontowe, z których korzystają programy dvips, dvipdfm oraz pdftex, generowano odtąd + w katalogu texmf/fonts/map; +
  • +
  • TEX, Metafont oraz MetaPost domyślnie pozwalały wypisywać komunikaty na ekranie i w pliku + .log, a także w operacjach \write w ich reprezentacji 8-bitowej, zamiast tradycyjnej notacji ^^; + w TEX Live 7 eksperymentalnie wprowadzono zależność przekodowania wyjścia programów od + systemowej strony kodowej, potem ten pomysł zarzucono; +
  • +
  • znacznie zmieniono niniejszą dokumentację; +
  • +
  • wreszcie, ponieważ numery wersji kolejnych edycji mogły wprowadzać w błąd, postanowiono + identyfikować edycje TEX Live zgodnie z rokiem wydania.
+

+

11.2. Wydanie 2004

+

Jak w każdej kolejnej wersji, w 2004 roku uaktualniono wiele pakietów i programów. Poniżej wymieniamy +najbardziej istotne zmiany. +

    +
  • Gdy mieliśmy już lokalnie zainstalowane fonty, które korzystały z własnych plików .map i/lub + .enc, należało przenieść te pliki w nowe miejsce w strukturze texmf/. +

    Pliki .map (map fontowych) są odtąd wyszukiwane w podkatalogach fonts/map (w każdym + drzewie texmf), zgodnie ze ścieżką określoną przez zmienną TEXFONTMAPS. Analogicznie, pliki + .enc (przekodowań fontów) są odtąd wyszukiwane w podkatalogach fonts/enc, zgodnie ze + ścieżką określoną przez zmienną ENCFONTS. O niewłaściwie umieszczonych plikach tego typu + zostaniemy ostrzeżeni podczas uruchomienia programu updmap. Zmiany te wprowadzono w celu + uporządkowania struktury katalogów: wszystkie pliki dotyczące fontów znajdują się odtąd + w ramach jednego podkatalogu fonts/. + + +

    Metody radzenia sobie z sytuacjami związanymi z przejściem na nowy układ katalogów omawiał + artykuł http://tug.org/texlive/mapenc.html. +

  • +
  • Do TEX Collection DVD dodano nową dystrybucję dla Windows o nazwie proTEXt (opartą + na MiKTEX-u). Była ona dostępna także na odrębnym CD. Choć proTEXt nie bazuje na + implementacji Web2C, stosuje układ katalogów zgodny z TDS (patrz część 2 na str. 7). +
  • +
  • W ramach TEX Live dotychczasowe pojedyncze drzewo katalogów texmf zostało rozdzielone + na trzy mniejsze: texmf, texmf-dist texmf-doc (patrz część 2.2, str. 8) oraz pliki README + w każdym z tych katalogów). +
  • +
  • Wszystkie + pliki makr wczytywane przez TEX-a zostały umieszczone wyłącznie w podkalogu tex w ramach + texmf*. Tym samym usunięto zbędne katalogi etex, pdftex, pdfetex itp. i uproszczono metody + wyszukiwania plików. Patrz texmf-dist/doc/generic/tds/tds.html#Extensions. +
  • +
  • Pomocnicze + skrypty wykonywalne, niezależne od platformy i zwykle uruchamiane w sposób automatyczny, + były odtąd umieszczone w nowym podkatalogu scripts w ramach texmf*. Znajdowane są + poleceniem kpsewhich -format=texmfscripts. Programy korzystające z tych skryptów mogły + wymagać modyfikacji. Patrz texmf-dist/doc/generic/tds/tds.html#Scripts. +
  • +
  • Prawie wszystkie formaty traktują od tego wydania większość znaków jako jawnie „wyświetlalne” + (printable), nie zaś, jak było dotychczas, konwertowane na TEX-ową notację ^^. Było to możliwe + dzięki domyślnemu wczytywaniu tablicy przekodowań cp227.tcx. Dokładniej, znaki o kodach + 32–256, HT, VT oraz FF zostały potraktowane dosłownie podczas wyświetlania komunikatów. + Wyjątkiem jest plain TEX (tylko znaki z zakresu 32–127 są nie zmieniane), ConTEXt (znaki z + zakresu 0–255) oraz formaty bazujące na Omedze. Podobna domyślna właściwość występowała + w TEX Live 2003, ale w tej edycji została zaimplementowana w bardziej elegancki sposób + i z większymi możliwościami indywidualnego dostosowania (patrz texmf/doc/web2c/web2c. + tml#TCX-files. (Warto wspomnieć, że wczytując Unicode, TEX może w komunikatach błędów + pokazywać niekompletne sekwencje znaków, ponieważ został zaprojektowany „bajtowo”.) +
  • +
  • Program pdfetex został domyślną „maszyną” dla większości formatów (nie dotyczy to + samego Plain tex). Domyślnie, gdy uruchamiamy polecenie latex, mex itp., generowane są + pliki DVI. Możliwe jest jednak wykorzystanie w LATEX, ConTEXt itp. m.in. właściwości + mikrotypograficznych zaimplementowanych w pdftex, a także rozszerzonych cech e-TEX-a + (texmf-dist/doc/etex/base/). +

    Oznacza to także, co warto podkreślić, że zalecane jest odtąd użycie pakietu ifpdf (który działa + zarówno z plain, jak i LATEX) lub analogicznych makr. Zwykłe sprawdzanie czy zdefiniowano + \pdfoutput bądź kilka innych poleceń pierwotnych może nie wystarczyć do rozstrzygnięcia czy + nie jest generowany plik PDF. W 2004 roku podjęliśmy wysiłek by zachować, najlepiej jak to + możliwe, kompatybilność z dotychczasowymi przyzwyczajeniami użytkowników. Brano wówczas + pod uwagę, że \pdfoutput może być zdefiniowany nawet wtedy, gdy generowany jest plik DVI. +

  • +
  • pdfTEX (http://pdftex.org) zyskał wówczas wiele nowych cech: +
      +
    • \pdfmapfile \pdfmapline pozwalają określić z poziomu dokumentu użyte mapy fontowe, + a także pojedyncze dodatkowe wpisy w tych mapach. +
    • +
    • mikrotypograficzne operacje z fontami są łatwiejsze w użyciu;
      http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html + + +
    • +
    • wszystkie parametry pracy pdfTEX-a, dotychczas określane w specjalnym pliku + konfiguracyjnym pdftex.cfg, muszą być odtąd ustawiane poleceniami wbudowanymi, jak + w pliku pdftexconfig.tex; plik pdftex.cfg nie jest już w ogóle wykorzystywany. Po + zmianie pdftexconfig.tex należało na nowo wygenerować pliki formatów (wciąż jednak + użytkownik miał pełną swobodę określania parametrów w redagowanym dokumencie); +
    • +
    • więcej informacji zawarto w podręczniku pdfTEX-a: + texmf-dist/doc/pdftex/manual/pdftex-a.pdf. +
    +
  • +
  • Polecenie \input w programach tex, mf oraz mpost akceptowało odtąd nazwy plików ograniczone + podwójnymi apostrofami, zawierające spacje i inne znaki, np.: + + +
    +
      \input "nazwa_pliku ze spacjami"   % plain
      \input{"nazwa_pliku ze spacjami"}  % latex
    +
    +

    Więcej informacji zawarto w podręczniku Web2C: texmf/doc/web2c. +

  • +
  • -output-directory – nowa opcja programów tex, mf oraz mpost – pozwalała na zapisanie + wyniku pracy w wyspecyfikowanym katalogu (np. można uruchomić program tex z plikiem + znajdującym się na dysku tylko do odczytu, zaś wynik zapisać na dysku pozwalającym + na to); +
  • +
  • Rozszerzenie encTEX zostało szczęśliwie włączone do Web2C. Aby uaktywnić to rozszerzenie, należało + podczas generowania formatu użyć opcji -enc. Ogólnie mówiąc, encTEX obsługuje przekodowanie + wejścia i wyjścia, włączając także Unicode (UTF-8) (patrz texmf-dist/doc/generic/enctex/ oraz + http://www.olsak.net/enctex.html). +
  • +
  • Udostępniono nowy program Aleph, który łączył cechy e-TEX i Omega. Skromna dokumentacja jest + dostępna na texmf-dist/doc/aleph/base oraz http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph. + Format oparty na LATEX-u dla programu Aleph nazwano lamed. +
  • +
  • Dystrybucja LATEX-a została po raz pierwszy zaopatrzona w nową licencję LPPL, odtąd w pełni + zgodną i aprobowaną przez zalecenia określone w licencji Debiana. O nowościach i uaktualnieniach + można się dowiedzieć przeglądając pliki ltnews texmf-dist/doc/latex/base. +
  • +
  • Dołączono także program dvipng konwertujący pliki DVI do formatu graficznego PNG + (texmf/doc/man/man1/dvipng.1). +
  • +
  • W porozumieniu i z pomocą autora, Claudio Beccariego, ograniczono pakiet cbgreek do + zestawu fontów rozsądnego rozmiaru. Usunięto sporadycznie używane fonty konturowe + i służące do prezentacji. Pełen zestaw jest oczywiście nadal dostępny z serwerów CTAN + (http://mirror.ctan.org/tex-archive/fonts/greek/cb). +
  • +
  • Usunięto program oxdvi; jego funkcje przejął xdvi. +
  • +
  • Programy z przedrostkiem ini oraz vir (np. initex), które zwykle były dowiązaniami do programów tex, mf + i mpost, nie były od tej pory dostępne – w zupełności wystarcza użycie w wierszu poleceń opcji + -ini. +
  • +
  • Dystrybucja nie zawierała binariów dla platformy i386-openbsd (głównie z powodu braku chętnych do + wykonania kompilacji). +
  • +
  • W systemie sparc-solaris należało ustawić zmienną systemową LD_LIBRARY_PATH, aby uruchomić + programy t1utils. Binaria były kompilowane w C++, ale w tym systemie brakowało standardowego + położenia bibliotek uruchomieniowych. Wiedziano o tym już wcześniej, nie było to jednak dotychczas + udokumentowane. Z kolei dla systemu mips-irix wymagana była obecność bibliotek MIPSpro + 7.4. +
+ + +

+

11.3. Wydanie 2005

+

Kolejna edycja przyniosła, jak zwykle, mnóstwo aktualizacji pakietów i programów. Struktura dystrybucji +ustabilizowała się, niemniej pojawiło się nieco zmian w konfiguracji: +

    +
  • Wprowadzono nowe skrypty texconfig-sys, updmap-sys fmtutil-sys, których zadaniem + jest modyfikowanie plików konfiguracyjnych w głównych drzewach katalogów systemu. + Dotychczasowe skrypty texconfig, updmap fmtutil modyfikują odtąd pliki użytkownika + w katalogu $HOME/.texlive2005. +
  • +
  • Dodano nowe zmienne środowiskowe TEXMFCONFIG TEXMFSYSCONFIG, które wskazują + położenie drzew katalogów z plikami konfiguracyjnymi, odpowiednio: użytkownika i systemu. + Tak więc mogło okazać się koniecznym przeniesienie własnych wersji fmtutil.cnf + i updmap.cfg w odpowiednie miejsca. Inną możliwością było przedefiniowanie TEXMFCONFIG + lub TEXMFSYSCONFIG w pliku texmf.cnf. W każdym z przypadków położenie tych plików + i przypisania TEXMFCONFIG TEXMFSYSCONFIG muszą być zgodne. (Patrz część 2.3, str. 9.) +
  • +
  • W wydaniu z poprzedniego roku podczas tworzenia wynikowego pliku DVI \pdfoutput + i podobne polecenia pozostawały niezdefiniowane, mimo że używany był program pdfetex. + Zgodnie z obietnicą, w 2005 roku zarzucono to rozwiązanie (jego celem było zapewnienie + kompatybilności). Z tego powodu użytkownik był zmuszony zmienić te dokumenty, które używały + \ifx\pdfoutput\undefined do sprawdzania, czy plik wynikowy ma być w formacie PDF. + Zamiast tego należało zastosować pakiet ifpdf.sty, który działa zarówno z plain TEX-em jak + i LATEX-em, albo zapożyczyć zastosowane w nim rozwiązania. +
  • +
  • W wydaniu z 2004 roku zmieniono większość formatów tak, by na wyjściu 8-bitowe znaki były + reprezentowane przez same siebie (por. poprzednia część). Nowy plik TCX o nazwie empty.tcx + pozwalał w łatwy sposób uzyskać w razie potrzeby oryginalną notację (^^), np.: + + +
    +
      latex --translate-file=empty.tcx twojplik.tex
    +
    +

    +

  • +
  • Dołączono nowy program dvipdfmx, służący do konwersji DVI do PDF. Program jest aktywnie + pielęgnowaną wersją programu dvipdfm, który wciąż jest dostępny, ale nie jest już jednak + polecany. +
  • +
  • Nowe programy pdfopen pdfclose pozwalały na przeładowanie plików PDF w Adobe Acrobat Reader, + bez konieczności ponownego uruchamiania programu. (Inne przeglądarki formatu PDF, jak xpdf, gv + i gsview, nigdy na tę przypadłość nie cierpiały.) +
  • +
  • Dla spójności, zmienne HOMETEXMF VARTEXMF zostały przemianowane odpowiednio na TEXMFHOME + i TEXMFSYSVAR. Zachowano zmienną TEXMFVAR, przeznaczoną domyślnie dla użytkownika. Patrz też + punkt pierwszy, powyżej. +
+

+

11.4. Wydanie 2006–2007

+

Największą nowością edycji lat 2006 i 2007 był XeTEX, w postaci programów xetex xelatex; patrz +texmf-dist/doc/xetex/XeTeX-reference.pdf lub http://scripts.sil.org/xetex. +

W istotny sposób został zaktualizowany MetaPost, zaplanowano także jego dalszy rozwój +(http://tug.org/metapost/articles); to samo dotyczy pdfTEX-a (http://tug.org/applications/pdftex). +

Pliki formatów (pdf)TeX-a (.fmt) oraz analogiczne dla MetaPosta i MetaFonta są od tej edycji zapisywane +w podkatalogach texmf/web2c, choć sam ten katalog jest nadal przeszukiwany. Podkatalogi te mają nazwę +zgodną z zastosowanym podczas generowania „silnikiem”, np. tex, pdftex lub xetex. Zmiana ta nie powinna +być zauważalna w typowym użyciu. +

Program tex (plain) od tej edycji już nie analizował pierwszego wiersza rozpoczynającego się znakami %&, +aby ustalić jaki ma wczytać format. Pozostał zatem czysty, Knuthowy TEX. LATEX i wszystkie pozostałe +formaty nadal analizują pierwszy wiersz z %&. +

Oczywiście, jak zwykle, w okresie od poprzedniego wydania opracowano setki innych aktualizacji pakietów +i programów. Kolejne aktualizacje można znaleźć tradycyjnie na CTAN (http://mirror.ctan.org). +

Drzewo źródłowe TEX Live jest odtąd przechowywane w Subversion. Przeglądanie umożliwia standardowy +interfejs www, a jego adres zamieszczono na stronie http://tug.org.pl/texlive. Mimo iż nie widać efektów +tej zmiany w końcowej dystrybucji, mamy nadzieję, że w nadchodzących latach będzie to stabilne +repozytorium oprogramowania dla rozwoju TEX Live. +

W maju 2006 r. Thomas Esser ogłosił, że zaprzestaje aktualizowania dystrybucji teTEX +(http://tug.org/tetex). Spowodowało to znaczny wzrost zainteresowanie TEX Live, szczególnie wśród +dystrybutorów GNU/Linuksa. (W TEX Live zdefiniowano w przybliżeniu równoważny, nowy schemat +instalacyjny pod nazwą tetex.) Mamy nadzieję, że w przyszłości doprowadzi to do takich ulepszeń +w otoczeniu TEX-owym, na których skorzystają wszyscy. +

+

11.5. Wydanie 2008

+

W 2008 roku cała infrastruktura TEX Live została przeprojektowana i przeprogramowana. Informacja +dotycząca instalacji jest przechowywana obecnie w zwykłym pliku tekstowym tlpkg/texlive.tlpdb. +

Po zainstalowaniu TEX Live wreszcie jest możliwa jego aktualizacja z internetu, podobnie jak od paru lat +umożliwia to dystrybucja MiKTEX. Zamierzamy regularnie aktualizować pakiety, w miarę jak będą się +pojawiać na serwerach CTAN. +

W tym wydaniu pojawił się nowy „silnik”, LuaTEX (http://luatex.org). Prócz nowych, elastycznych +możliwości dotyczących składu, udostępnia on doskonały język skryptowy do zastosowania zarówno +w dokumentach TEX-owych, jak i poza nimi. + + +

Obsługa dla Windows i platform opartych na Unix została obecnie znacznie bardziej zunifikowana. +W szczególności większość skryptów w Perlu i Lua dostępna jest teraz także dla Windows (zastosowano +„wewnętrzny” Perl, dostarczany wraz z TEX Live). +

Pojawił się nowy skrypt tlmgr (patrz część 5), który staje się głównym narzędziem do zarządzania TEX +Live po jego instalacji. Umożliwia on aktualizację pakietów wraz z niezbędnymi wtedy czynnościami, jak +regenerowanie formatów, aktualizacja map fontowych itp. +

Wraz z pojawieniem się tlmgr niektóre funkcje texconfig zostały zablokowane (edycja plików +konfiguracyjnych formatów i wzorców przenoszenia). +

Program xindy do tworzenia skorowidzów (http://xindy.sourceforge.net/) jest obecnie dostępny dla +większości platform. +

Narzędzie kpsewhich może obecnie raportować wszystkie wyniki przeszukiwania danego pliku (parametr +–all), jak również ograniczyć wyszukiwanie do jednego katalogu (parametr –subdir). +

Program dvipdfmx posiada obecnie funkcję extractbb uzyskania informacji o prostokącie ograniczającym +(bounding box); jest to jedna z ostatnich cech przejętych od dawniej używanego programu dvipdfm (który jest +nadal dostępny). +

Usunięto aliasy fontów Times-Roman, Helvetica, itd. Różne pakiety korzystały z nich w nieoczekiwany +sposób (np. spodziewając się, że fonty te będą miały różne kodowanie). Nie ma obecnie dobrego sposobu na +rozwiązanie tych sprzeczności. +

Usunięto format platex, by uniknąć konfliktu nazwy z używanym od wielu lat japońskim pakietem +platex; pakiet polski (czyli dawny platex) jest obecnie wystarczającym sposobem na polonizację dla +LATEX-a. +

Usunięto pliki .pool, które są obecnie wkompilowane w programy, co ułatwia ich aktualizację. +

Do tego wydania włączono także ostatnie zmiany dokonane przez Donalda Knutha (tzw. TEX tuneup of +2008); patrz: http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf. +

+

11.6. Wydanie 2009

+

W wydaniu 2009 najbardziej widoczną zmianą jest to, że pdf(LA )TEX automatycznie dokonuje konwersji pliku +EPS do PDF, poprzez uruchomienie programu epstopdf (dotyczy to sytuacji, gdy użyto pliku +konfiguracyjnego graphics.cfg LATEX-a i gdy plikiem wynikowym składu ma być PDF). Domyślne +ustawienia zapobiegają nadpisaniu wszelkich utworzonych wcześniej przez użytkownika plików PDF, ale +można także wyłączyć uruchamianie epstopdf, wstawiając \newcommand{\DoNotLoadEpstopdf}{} (lub +\def...) przed deklaracją \documentclass. Szczegóły można znaleźć w dokumentacji pakietu epstopdf +(http://ctan.org/pkg/epstopdf-pkg). +

Ważną zmianą jest także uruchamianie podczas kompilacji niektórych zewnętrznych programów via +\write18. Dotyczy to np. epstopdf, makeindex czy bibtex. Dokładna lista takich programów zawarta jest w +pliku texmf.cnf. Dla instalacji, które mogą wymagać zakazu uruchamiania takich programów „w tle” +przewidziano odpowiednią opcję w programie instalacyjnym (patrz część  3.2.4). Po instalacji można +zablokować uruchamianie w pliku texmf.cnf. +

Od wydania 2009 domyślnym formatem wyjściowym dla Lua(LA )TEX staje się PDF (wykorzystuje on +m.in. obsługę przez LuaTEX-a fontów OpenType). Aby uzyskać plik DVI należy użyć nowych poleceń: +dviluatex lub dvilualatex. Strona domowa projektu LuaTEX: http://luatex.org. +

Usunięto oryginalny silnik Omega i format Lambda (w uzgodnieniu z autorami). Pozostał zaktualizowany +Aleph i format Lamed, oraz pliki pomocnicze Omega. +

Załączono nowe wydanie fontów AMS Type 1, m.in. fonty Computer Modern. Zawierają one poprawki dokonane +w plikach metafontowych przez D. Knutha w ciągu ostatnich lat, a także poprawki hintingu. Hermann Zapf +przeprojektował także fonty Euler (patrz http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf). +Co ważne, dla wszystkich fontów nie zmieniono plików metrycznych (TFM). Strona domowa fontów: +http://www.ams.org/tex/amsfonts.html. +

Dla Windows i MacTEX dołączono nowe środowisko-edytor TEXworks. Dla innych platform patrz: +http://tug.org/texworks. Inspirowany przez edytor TeXShop dla Mac OS X, TEXworks jest +wieloplatformowym, łatwym w użyciu środowiskiem pracy. +

Dla niektórych platform załączono nowy program graficzny Asymptote (http://asymptote.sourceforge.net). +Korzysta on z tekstowej notacji zbliżonej do MetaPosta, ale rozszerzonej do obsługi 3D itp. +

Program dvipdfm został zastąpiony przez dvipdfmx, który działa w specjalnym trybie kompatybilnym, gdy +użyć do wywołania dawną nazwę. dvipdfmx wspiera CJK i zawiera wiele poprawek od ostatniej dystrybucji +dvipdfm. Strona domowa: http://project.ktug.or.kr/dvipdfmx. +

Dodano zestawy programów dla cygwin i i386-netbsd, podczas gdy usunięto programy dla innych platform + + +BSD. Zapewniono nas, że użytkownicy OpenBSD i FreeBSD będą mogli pobierać pakiety TEX-owe wraz z +aktualizacją obu systemów. Ponadto natknęliśmy się na spore trudności przy kompilacji programów, które +mogłyby działać w różnych wersjach tych systemów. +

Inne zmiany: do kompresji pakietów użyto programu xz, stanowiącego stabilny zamiennik lzma +(http://tukaani.org/xz/); znak $ jest obecnie dozwolony w nazwach plików, o ile nie poprzedza on nazwy +znanej zmiennej; biblioteka Kpathsea jest obecnie wielowątkowa (co wykorzystano w programie MetaPost); do +budowy wszystkich programów wykorzystano teraz Automake. +

+

11.7. Wydanie 2010

+

Od wydania 2010 generowane są pliki PDF w wersji 1.5, oferującej lepszą kompresję. Dotyczy to wszystkich +mechanizmów używanych do generowania PDF, w tym dvipdfmx. Powrót do wersji 1.4 jest możliwy poprzez +użycie pakietu pdf14 lub komendy \pdfminorversion=4. +

Obecnie pdf(LA )TEX automatycznie konwertuje plik EPS (Encapsulated PostScript) do formatu PDF, +wykorzystując pakiet epstopdf, o ile załadowano LATEX-owy plik konfiguracyjny graphics.cfg i wybrano +format wyjściowy PDF. Domyślne ustawienia mają na celu wykluczenie przypadkowego nadpisania +istniejących już, wygenerowanych innym sposobem plików PDF, ale można również zabronić uruchamiania +epstopdf wpisując przed poleceniem \documentclass polecenie \newcommand{\DoNotLoadEpstopdf}{} (lub +\def...). Program epstopdf nie jest również używany w przypadku dołączenia pakietu pst-pdf. Więcej +szczegółów znajduje się w dokumentacji pakietu epstopdf (http://ctan.org/pkg/epstopdf-pkg). +

Domyślnie włączono również wykonywanie kilku programów zewnętrznych dla TEX-a poprzez mechanizm +\write18. Dotyczy to: repstopdf, makeindex, kpsewhich, bibtex bibtex8 (lista jest zdefiniowana +w texmf.cnf). W środowiskach, w których wykonywanie zewnętrznych programów jest niepożądane, należy +tę opcję zaznaczyć podczas instalacji (patrz: część 3.2.4) lub wyłączyć już po niej poprzez uruchomienie: +tlmgr conf texmf shell_escape 0. +

Kolejna zmiana dotyczyła programów BibTeX i Makeindex, które (podobnie zresztą jak sam TEX) +domyślnie nie zapisują swoich plików wynikowych do dowolnie zdefiniowanego katalogu. Umożliwia to +w ograniczonym zakresie zadziałanie polecenia \write18. Aby to zmienić, należy ustawić zmienną +TEXMFOUTPUT lub zmodyfikować openout_any. +

Podobnie jak pdfTEX, obecnie również XeTEX obsługuje wyrównywanie (tzw. kernowanie) na krawędzi +wiersza, ale możliwość poszerzania pisma (font expansion) nadal nie jest dostępna. +

Program tlmgr podczas aktualizacji zachowuje obecnie domyślnie kopię poprzedniej wersji pakietu (tlmgr +option autobackup 1), zatem aktualizacja może zostać łatwo cofnięta poprzez tlmgr restore. +W przypadku ograniczonej ilości miejsca na dysku, opcja ta może zostać wyłączona przez tlmgr option +autobackup 0. +

Dołączono nowe programy: pTEX i narzędzia do składu w języku japońskim, BibTeXU dla obsługi +Unicode w BibTeX-u, chktex (http://baruch.ev-en.org/proj/chktex) – program do sprawdzania +dokumentów (LA )TEX, dvisvgm – konwerter DVI do SVG (http://dvisvgm.sourceforge.net) oraz binaria +dla nowych platform sprzętowych: amd64-freebsd, amd64-kfreebsd, i386-freebsd, i386-kfreebsd, +x86_64-darwin, x86_64-solaris. +

W dokumentacji zmian poprzedniego wydanie (TEX Live 2009) nie zdążono uwzględnić usunięcia wielu +programów uruchomieniowych dla TEX4ht (http://tug.org/tex4ht) oraz zastąpienia ich jednym programem +mk4ht. +

Wreszcie, z powodu niewystarczającej ilości miejsca na płycie TEX Collection DVD, zrezygnowano +z możliwości uruchamiania TEX Live w trybie „live”. Jednocześnie znacznie przyspieszyło to sam proces +instalacji TEX Live z płytki DVD. +

+

11.8. Wydanie 2011

+

Edycja 2011 zawierała stosunkowo niewiele zmian w porównaniu do poprzednich wydań. +

Programy dla Mac OS X (universal-darwin i x86_64-darwin) działają od tego momentu tylko dla wersji +Leopard i późniejszych. Wersje Panther i Tiger nie będą obsługiwane. +

Dla większości platform dołączono program biber, służący do przetwarzania danych bibliograficznych. +Rozwój tego programu jest ściśle związany z pakietem biblatex, który w zupełnie nowy sposób obsługuje +bibliografie w LaTEX-u . +

Program MetaPost (mpost) ani nie tworzy, ani już więcej nie wykorzystuje pliku formatu .mem. Wymagane +pliki (np. plain.mp) są po prostu wczytywane przy każdym uruchomieniu. Zmiana (choć niezauważalna dla + + +przeciętnego użytkownika) związana jest z nowym, innym podejściem: MetaPost jest obecnie traktowany jako +biblioteka programów. +

Zaprogramowany w Perl program updmap (uprzednio stosowany tylko w Windows) został dostosowany do +wszystkich platform. Również te zmiany są niezauważalne dl użytkownika, choć znacznie przyspieszyły +działanie programu. +

+

11.9. Obecna edycja

+

Program tlmgr pozwala na aktualizacje z kilku repozytoriów w sieci. Szczegóły zawarto w pomocy (tlmgr +help), w części dotyczącej wielu repozytoriów. +

Dla parametru \XeTeXdashbreakstate (xetex xelatex) ustawiono domyślnie wartość 1. Pozwala to na +łamanie wierszy po myślnikach i separatorach zakresu liczb, co było zawsze typowe dla kompilacji programami +TEX, LATEX, LuaTEX, itp. Chcąc zachować dotychczasowe dokładne miejsca łamania, pliki kompilowane +programem XeTEX wymagają zatem użycia polecenia \XeTeXdashbreakstate=0. +

Wynikowe pliki pdftex oraz dvips mogą obecnie przekroczyć wielkość 2GB. +

Dotychczas program dvips korzystał ze zbyt wielu różnych wersji standardowych 35 fontów +postscriptowych. Nie były one domyślnie włączane do pliku wynikowego, bo zakładano, że urządzenia +drukujące bądź programy (np. GhostScript) mają dostęp do odpowiednich fontów. Od tej edycji fonty ze +standardowego zestawu, dostarczone w dystrybucji TEX Live, domyślnie są włączane do tworzonego przez +dvips pliku. +

W zastrzeżonym trybie pracy \write18 (ustawianym domyślnie) dopuszczono uruchamianie programu +mpost. +

Plik konfiguracyjny texmf.cnf znajdywany jest obecnie także w drzewie katalogów ../texmf-local, np. +/usr/local/texlive/texmf-local/web2c/texmf.cnf. +

Skrypt updmap wczytuje updmap.cfg z kolejnych drzew TEX-owych, zamiast jeden plik globalny. Zmiana +nie powinna być zauważalna, chyba że zmienimy ręcznie updmap.cfg. Uruchomienie updmap –help pokaże +szczegóły. +

Dodano binaria dla armel-linux and mipsel-linux. Usunięto z głównej dystrybucji binaria dla sparc-linux +i i386-netbsd, ale są one nadal dostępne (wraz z binariami dla kilku innych platform) na stronie: +http://tug.org/texlive/custom-bin.html. +

Wszystkie wydania TEX Live, wraz z dodatkowymi materiałami (np. okładkami płytek), są dostępne na +stronie: ftp://tug.org/historic/systems/texlive. +

+

11.10. Przyszłe wersje

+

Niniejsza dystrybucja nie jest doskonała! Planujemy kontynuować wydawanie nowych wersji i chcielibyśmy, +żeby zawierały one jeszcze więcej pomocnej dokumentacji, więcej programów użytkowych, lepsze programy +instalacyjne oraz stale ulepszany i poprawiany katalog makr i fontów. Zadanie to jest wykonywane przez +ciężko pracujących ochotników, poświęcających na to mnóstwo swojego wolnego czasu. Wiele +jeszcze zostało do zrobienia. Jeżeli możesz pomóc, nie zastanawiaj się i przyłącz się do nas. Patrz: +http://tug.org/texlive/contribute.html. +

Prosimy o przesyłanie poprawek, sugestii i uzupełnień oraz deklaracji pomocy w opracowywaniu kolejnych +edycji pod adres: tex-live@tug.org. + + + + + + diff --git a/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.pdf b/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.pdf new file mode 100644 index 00000000000..a470bb3aa68 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.pdf differ diff --git a/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.tex b/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.tex new file mode 100644 index 00000000000..9990b17257a --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-pl/texlive-pl.tex @@ -0,0 +1,3862 @@ +% iso8859-2 +% $Id: texlive-pl.tex, v. 46 2012/06/04 +% TeX Live documentation. +% Originally written by Sebastian Rahtz and Michel Goossens, +% now maintained by Karl Berry and others. +% Polish translation and additions by Staszek Wawrykiewicz +% (with a little help from my friends, while my guitar gently weeps ;-) +% Public domain. +% ---- +% UWAGA dla recenzentów/t³umaczy: %%! to moje komentarze (StaW) +\documentclass{article} +\let\tldocenglish=0 % for live4ht.cfg +\let\textsl\textit +\usepackage{tex-livep} +\usepackage{polski} %% for PL +\usepackage[latin2]{inputenc} %% for PL +\exhyphenpenalty=10000 %% for PL +\def\Dash{---} +\widowpenalty=10000 +\clubpenalty=10000 +%% redefined MF logo! %% for PL +%\def\MF{\textlogo{META}\-\textlogo{FONT}} %% for PL +%\def\MP{\textlogo{META}\-\textlogo{POST}} %% *** TP *** +\def\shac{\char178} % for PL + qtmr (HTML) +\def\aac{\char225} % for PL + qtmr (HTML) +\def\iac{\char237} % for PL + qtmr (HTML) +\renewcommand{\samp}[1]{,,\texttt{#1}''} %% for PL +%% Polish style for sections +\makeatletter +\renewcommand{\@seccntformat}[1]{% + \csname the#1\endcsname.\hspace{.5em}} %% +\def\numberline#1{\hb@xt@\@tempdima{#1.\hfill}} +\makeatother +\hyphenation{tex-basic la-tex pdf-tex} +%% ----- +\begin{document} + +\title{{\huge \textit{Przewodnik po \protect\TL}\\[1ex]} + {\LARGE \textsf\TL{} 2012} +} + +\author{Redakcja: Karl Berry \\[3mm] + \url{http://tug.org/texlive/} +} + +\date{Czerwiec 2012} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +%\listoftables +\end{multicols} +%-------------------------- +\section{Wstêp}\label{sec:intro} + +\subsection{\TeX\ Live i \TeX\ Collection} +Niniejsza dokumentacja opisuje oprogramowanie \TL{} -- +dystrybucjê \TeX-a wraz z~programami pomocniczymi, dostêpn± dla +ró¿nych wersji Unix, w~tym \acro{GNU}/Linux, \MacOSX{} i~Cygwin, +oraz Windows. + +\TL{} mo¿na ¶ci±gn±æ z~sieci b±d¼ otrzymaæ na p³ytce \DVD \TK{}, dostarczanej +swoim cz³onkom przez Grupy U¿ytkowników Systemu \TeX{}. +Czê¶æ \ref{sec:tl-coll-dists} omawia pokrótce zawarto¶æ tej p³ytki. +Zarówno \TL{}, jak i \TK{} powsta³y dziêki zbiorowemu wysi³kowi Grup. +W~tym dokumencie omówimy g³ównie sam± dystrybucjê \TL. + +\TL{} zawiera skompilowane programy: \TeX{}, \LaTeXe{}, \mbox{\MF}, \MP, +\BibTeX{} i~wiele innych oraz bogaty zestaw pakietów makr o~wielorakim +zastosowaniu, a tak¿e fonty i~dokumentacje. Wszystko to umo¿liwia sk³ad +publikacji w~wielu jêzykach. + +Pakiety zawarte w~\TL{} s± regularnie aktualizowane z serwerów \acro{CTAN} +(\textit{Comprehensive TeX Archive Network}), które gromadz± wszelkie +zasoby dotycz±ce systemu \TeX: \url{http://www.ctan.org}. + +Lista najwa¿niejszych zmian dokonanych w~tej edycji \TL{} +znajduje siê w~czê¶ci~\ref{sec:tlcurrent}, na str.~\pageref{sec:tlcurrent}. + +Nie opisujemy tu, czym jest system \TeX{}, a~jedynie kwestiê instalacji +i~konfiguracji oprogramowania \TL. +Pocz±tkuj±cy u¿ytkownicy mog± siê zapoznaæ z~podstawowymi pojêciami +np. w~artykule {\it Przewodnik po systemie \TeX\/}: +\OnCD{texmf-dist/doc/generic/tex-virtual-academy-pl/cototex.html}. + +\htmlanchor{platforms} +\subsection{Obs³ugiwane systemy operacyjne} +\label{sec:os_support} + +\TL{} zawiera oprogramowanie dla wielu platform uniksowych, +w~tym \GNU/Linux, \MacOSX i~Cygwin. Za³±czone pliki ¼ród³owe pozwalaj± te¿ +na jego instalacjê na platformach innych systemów operacyjnych. + +Spo¶ród systemów Windows obs³ugiwane s± tylko XP i nowsze wersje +(choæ w Windows 2000 \TL{} te¿ w zasadzie dzia³a). +Wprawdzie brak jest oprogramowania dedykowanego dla wersji 64-bitowych, ale +aplikacje 32-bitowe powinny na nich dzia³aæ. + +W czê¶ci \ref{sec:tl-coll-dists} omówiono alternatywne dystrybucje, +przeznaczone dla Windows oraz \MacOSX. + +\subsection{Podstawy instalacji \protect\TL{}} +\label{sec:basic} + +\TL{} mo¿na zainstalowaæ z~p³ytki \DVD{} lub internetu +(\url{http://tug.org/texlive/acquire.html}). Program instalacyjny +jest niewielki i~pozwala pobraæ z sieci wszystkie potrzebne pakiety. +Jest to wygodne, zw³aszcza gdy potrzebujemy jedynie czê¶ci oprogramowania +\TL\ i~nie chcemy pobieraæ niepotrzebnie obrazu ca³ej p³yty instalacyjnej. + +Posiadaj±c p³ytkê \TK{} \DVD{} (lub jej obraz w~pliku \code{.iso}) +mo¿emy jedynie zaistalowaæ \TL{} na twardym dysku, +lub przygotowaæ przeno¶n± instalacjê np. na pen drivie +(patrz czê¶æ~\ref{sec:portable-tl}). +Szczegó³owy opis instalacji \TL{} znajduje siê w dalszych rozdzia³ach +tego dokumentu, tu podamy skrócony przepis: + +\begin{itemize*} + \item program instalacyjny \filename{install-tl} mo¿e dzia³aæ w~kilku +trybach: tzw. ,,wizard'' (graficznym, parametr \code{-gui=wizard}) -- +domy¶lnym dla Windows; tekstowym (\code{-gui=text}, domy¶lnym dla +Unix/Linux) i~graficznym trybie ,,expert'' (parametr \code{-gui=perltk}). +Dla wygody u¿ytkowników Windows uruchomienie +\filename{install-tl-advanced.bat} prze³±cza instalator w tryb ,,expert''. + %tryb mo¿na wymusiæ podaj±c parametr \code{-gui} + %b±d¼ \code{-no-gui}; + +\item jednym z~instalowanych programów jest \prog{tlmgr} (mened¿er \TL{}), +który równie¿ mo¿na uruchamiaæ w~trybie tekstowym b±d¼ graficznym; pozwala +on doinstalowaæ lub usun±æ pakiety, aktualizowaæ je z~sieci, a tak¿e +wykonaæ ró¿ne czynno¶ci konfiguracyjne. + +\end{itemize*} + +\htmlanchor{security} +\subsection{Uwagi dotycz±ce bezpieczeñstwa} +\label{sec:security} + +Zgodnie z~nasz± najlepsz± wiedz±, g³ówne programy \TeX-owe s± +(i~zawsze by³y) nadzwyczaj odporne. Jednak mimo dok³adania najwy¿szej +staranno¶ci, inne programy wspieraj±ce, zawarte w~\TeX\ Live, nie +zawsze osi±gaj± ten sam poziom. Jak zawsze, nale¿y byæ +ostro¿nym przy uruchamianiu programów z~danymi pochodz±cymi +z~niepewnych ¼róde³. Dla uzyskania najwy¿szego stopnia +bezpieczeñstwa zalecamy stosowania podczas pracy nowych podfolderów. + +Konieczno¶æ zachowania staranno¶ci jest szczególnie wa¿na w systemie +Windows, poniewa¿ niezale¿nie od zawarto¶ci ¶cie¿ki przeszukiwania +poszukuje on programów zawsze najpierw w bie¿±cym folderze. To +zachowanie systemu otwiera szerokie mo¿liwo¶ci ataku. Usunêli¶my +wiele luk, lecz niew±tpliwie niektóre jeszcze pozosta³y, szczególnie +przy uruchamianiu programów pochodz±cych z~innych ¼róde³. Zalecamy +wiêc sprawdzanie bie¿±cych folderów pod k±tem obecno¶ci podejrzanych +plików, w~szczególno¶ci plików wykonywalnych (binarnych lub +skryptów). Zwykle nie powinno ich byæ, a~w~szczególno¶ci nie +powinny byæ one tworzone w~wyniku zwyk³ego przetwarzania dokumentów. + +I~na koniec: \TeX\ (oraz towarzysz±ce mu programy) mog± tworzyæ +pliki przy przetwarzaniu dokumentów. W³asno¶æ ta jest na wiele ró¿nych +sposobów podatna na nadu¿ycia. Tak¿e w~tych przypadkach, +przetwarzanie nieznanych dokumentów w~nowych podfolderach jest +najlepszym znanym sposobem zabezpieczenia. + +\subsection{Dostêpna pomoc} +\label{sec:help} + +Spo³eczno¶æ \TeX-owa jest bardzo aktywna i~pomocna, st±d te¿ wiêkszo¶æ +powa¿nych zapytañ nie pozostaje bez odpowiedzi. Przed zadaniem +pytania warto je uprzednio dobrze przemy¶leæ i~sformu³owaæ, poniewa¿ +respondenci to wolontariusze, w¶ród których znale¼æ siê mog± mniej lub +bardziej do¶wiadczeni u¿ytkownicy. +(Je¶li preferujemy komercyjne wsparcie techniczne, mo¿emy zamiast +\TL{} zakupiæ system u~jednego z~dostawców, których listê mo¿na znale¼æ +na \url{http://tug.org/interest.html#vendors}.) + +Oto lista ¼róde³ pomocy, w~kolejno¶ci przez nas rekomendowanej: + +\begin{description} +\item [\TeX{} \acro{FAQ}] \TeX-owy \acro{FAQ} jest obszernym zbiorem +odpowiedzi na wiele pytañ, od najprostszych do najbardziej +zaawansowanych. Jest on za³±czony na \TL{} w~katalogu +\OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html}, +a~tak¿e dostêpny w~sieci: \url{http://www.tex.ac.uk/faq}. Proponujemy +zajrzeæ najpierw tam. Uruchomiono te¿ serwis \acro{FAQ} +w~jêzyku polskim: \url{http://faq.gust.org.pl}. + +\item [\TeX{} Catalogue] Je¶li poszukujemy konkretnego pakietu, fontu, +programu itp., to polecamy \TeX{} Catalogue. Jest to obszerne zestawienie +wszelkich pakietów dotycz±cych \TeX-a. Patrz: + %\OnCD{texmf-dist/doc/english/catalogue} lub + \url{http://mirror.ctan.org/help/Catalogue/}. + +\item [\TeX{} Web Resources] Strona \url{http://tug.org/interest.html} +zawiera wiele odsy³aczy, w~szczególno¶ci do ksi±¿ek, podrêczników +i~artyku³ów po¶wiêconych wszelkim aspektom pracy z~systemem \TeX. + +\item [archiwa pomocy] Dwa g³ówne fora pomocy to grupa +Usenet \url{news:comp.text.tex} oraz lista dyskusyjna +\email{texhax@tug.org}. Warto przeszukaæ archiwa list dyskusyjnych, +zawieraj±ce wiele pytañ i odpowiedzi zbieranych przez wiele lat: +\url{http://groups.google.com/group/comp.text.tex/topics} oraz +\url{http://tug.org/mail-archives/texhax}. Nie zaszkodzi +skorzystanie z~wyszukiwarki, np. \url{http://www.google.com}. + +\item [wysy³anie pytañ] Je¶li nadal nie znajdujemy rozwi±zania problemu, +to mo¿emy wys³aæ pytanie do \dirname{comp.text.tex}, korzystaj±c z~Google, +czytnika wiadomo¶ci b±d¼ pisz±c list na adres \email{texhax@tug.org}. +Przedtem jednak \emph{nale¿y} zapoznaæ siê z~poradami dotycz±cymi sposobu +zadawania pytañ, zawartymi w~\acro{FAQ}: +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. +Warto wspomnieæ stronê \LaTeX{} Community +(\url{http://www.latex-community.org/}), forum +\url{http://www.latex-community.org/forum/} oraz +\TeX\ StackExchange (\url{http://tex.stackexchange.com/}). +Polscy u¿ytkownicy maj± do dyspozycji listê dyskusyjn± GUST (polskiej Grupy +U¿ytkowników Systemu \TeX); informacje o niej +znajdziemy na stronie \url{http://www.gust.org.pl}. + +\item [wsparcie ze strony spo³eczno¶ci \TL{}] Gdy chcemy zg³osiæ b³±d +b±d¼ sugestie i~komentarze dotycz±ce dystrybucji \TL{}, instalacji +lub dokumentacji, mamy do dyspozycji listê dyskusyjn± +\email{tex-live@tug.org}. Je¶li kwestia dotyczy konkretnego programu +(pakietu makr itp.) z~\TL{}, to lepiej jednak skierowaæ pytanie do osoby +opiekuj±cej siê danym programem lub na specjalistyczn± listê dyskusyjn±. + +\end{description} + +Druga strona medalu to pomaganie tym, którzy maj± problemy. Zarówno +\dirname{comp.text.tex}, jak i~\code{texhax} (oraz lista dyskusyjna GUST) +s± otwarte dla ka¿dego, +tak wiêc zapraszamy do w³±czenia siê, czytania wiadomo¶ci i~pomagania +innym w~miarê w³asnych mo¿liwo¶ci. Witamy w¶ród u¿ytkowników +systemu \TeX! + +%-------------------------- +\section{Struktura \protect\TeX\protect\ Live} +\label{sec:struct-tl} + +Omówimy tutaj strukturê i~zawarto¶æ dystrybucji \TL{}, a~tak¿e \TK{} -- +p³ytki \DVD, w~sk³ad której wchodzi \TL. + +\subsection{\protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tl-coll-dists} + +\TK{} \DVD{} zawiera: + +\begin{description} + +\item [\TL] kompletny system na \acro{DVD}, pozwala na instalacjê na +twardym dysku lub przygotowanie przeno¶nej instalacji np. na pen drivie; +strona domowa projektu: \url{http://tug.org/texlive/}. + +\item [Mac\TeX] dla systemu \MacOSX; posiada w³asny program instalacyjny +i~dodatkowe programy dla tego systemu; strona domowa projektu: +\url{http://tug.org/mactex/}; + +\item [pro\TeX{}t] dystrybucja dla Windows, oparta na dystrybucji \MIKTEX{}, +rozszerzonej o~dodatkowe narzêdzia; ca³kowicie niezale¿na od \TL; +\ProTeXt\ posiada w³asny, ³atwy w~obs³udze program instalacyjny; + strona domowa projektu: \url{http://tug.org/protext}; + +\item [CTAN] zrzut zawarto¶ci archiwów \CTAN{}; +(\url{http://www.ctan.org}). + +\item [\texttt{texmf-extra}] katalog z wybranymi pakietami dodatkowymi. + +\end{description} + +\CTAN, \pkgname{protext}, i~\texttt{texmf-extra} nie spe³niaj± przyjêtych dla +\TL{} wymogów dotycz±cych swobody kopiowania, wobec tego nale¿y ten fakt +uwzglêdniæ przy redystrybucji b±d¼ modyfikacji zawarto¶ci wymienionych +katalogów. + +\subsection{G³ówne katalogi \TL} +\label{sec:tld} + +Poni¿ej wymieniono wa¿niejsze podkatalogi g³ównego katalogu \emph{instalacji} \TL +(na p³ytce \TK{} \DVD{} ca³a dystrybucja \TL{} zosta³a +umieszczona w katalogu \dirname{texlive}, którego struktura nieco siê ró¿ni, nie za¶ w~katalogu g³ównym; +poni¿ej traktujemy katalog \dirname{texlive} jako katalog g³ówny we wszystkich +odniesieniach do \TL). + +\begin{ttdescription} +\item[bin] skompilowane programy \TeX-owe, zorganizowane w~podkatalogach + wed³ug platform systemowych; + +\item[readme-*.html] krótkie omówienie z~u¿ytecznymi odno¶nikami, +w kilku jêzykach, w formacie \HTML{} i~zwyk³ym tekstowym; + +\item[source] ¼ród³a wszystkich programów, w³±cznie z~g³ównymi dystrybucjami + \Webc{} \TeX-a; + +%\item[support] ró¿ne programy pomocnicze zwi±zane z~\TeX-em, które \emph{nie} +% s± domy¶lnie instalowane; +% dla u¿ytkowników systemów Windows do³±czono ponadto szereg programów +% (edytory, ,,shelle TeX-owe''), których zwykle brak w~typowej instalacji +% Windows (programy te mog± byæ szczególnie przydatne dla pocz±tkuj±cych); + +\item[texmf] drzewo katalogów plików pomocniczych i~dokumentacji dla + \emph{programów} (patrz: \texttt{TEXMFMAIN} w~nastêpnej czê¶ci); + +\item[texmf-dist] g³ówne drzewo katalogów formatów i~pakietów (zawiera makra, + fonty i~dokumentacje; patrz: \texttt{TEXMDIST} w~nastêpnej czê¶ci); + +%\item[texmf-doc] drzewo samodzielnych dokumentacji (m.in. podrêczniki itp.), +% niezwi±zane z~konkretnymi pakietami, zorganizowane wed³ug jêzyków. + +\item[tlpkg] skrypty, programy i~inne dane potrzebne do instalacji; + katalog zawiera tak¿e ,,prywatne'' dla \TL{} kopie oprogramowania Perl i~Ghostscript + dla Windows (nie koliduj± one z~posiadanymi przez u¿ytkownika podobnymi + programami i~dzia³aj± tylko w~ramach instalacji); poza tym do³±czono + szybki i~wygodny program do podgl±du plików postscriptowych i~PDF + -- PS\_View dla Windows. +\end{ttdescription} + +Prócz podkatalogów wymienionych powy¿ej, katalog g³ówny zawiera skrypty +instalacyjne oraz pliki \filename{README}, w~formacie tekstowym lub HTML, +w~kilku jêzykach (równie¿ polskim). + + %Katalog \dirname{texmf-doc} zawiera, jak wspomniano wy¿ej, dokumentacje + %ogólne, np. podrêczniki (tak¿e po polsku). + Do znalezienia dokumentacji przydatne mog± byæ dowi±zania zawarte w pliku +\OnCD{doc.html}, który znajdziemy w~g³ównym katalogu instalacji. Dokumentacje programów +(man, info, tak¿e w~formacie PDF) znajduj± siê w~katalogu +\dirname{texmf/doc}, za¶ dokumentacje pakietów makr, fontów i~formatów +w~katalogu \dirname{texmf-dist/doc}. W~odszukaniu konkretnej dokumentacji +w~dowolnym z~wymienionych katalogów mog± pomóc programy \cmdname{texdoc} lub +\cmdname{texdoctk}. + +Niniejsza dokumentacja w~kilku jêzykach znajduje siê na p³ytce \TK{}DVD\ w~podkatalogach katalogu \dirname{texlive-doc}, +za¶ po instalacji w~podkatalogach katalogu \dirname{texmf/doc/texlive}: + +\begin{itemize*} +\item{uproszczony chiñski:} \OnCD{texmf/doc/texlive/texlive-zh-cn} +\item{czeski/s³owacki:} \OnCD{texmf/doc/texlive/texlive-cz} +\item{angielski:} \OnCD{texmf/doc/texlive/texlive-en} +\item{francuski:} \OnCD{texmf/doc/texlive/texlive-fr} +\item{niemiecki:} \OnCD{texmf/doc/texlive/texlive-de} +\item{polski:} \OnCD{texmf/doc/texlive/texlive-pl} +\item{rosyjski:} \OnCD{texmf/doc/texlive/texlive-ru} +\item{serbski:} \OnCD{texmf/doc/texlive/texlive-sr} +\item{w³oski:} \OnCD{texmf/doc/texlive/texlive-it} +\end{itemize*} + +\subsection{Predefiniowane drzewa katalogów texmf} +\label{sec:texmftrees} + +W tej czê¶ci wymieniono wszystkie u¿ywane przez system, predefiniowane +zmienne specyfikuj±ce drzewa katalogów texmf; omówiono te¿ ich przeznaczenie. +Uruchomiaj±c polecenie \texttt{tlmgr conf}, wy¶wietlimy warto¶ci tych +zmiennych, dziêki czemu ³atwo ustalimy, które katalogi w~naszej instalacji s± +przypisane do konkretnych zmiennych. + +Wszystkie drzewa katalogów, w³±cznie z prywatnymi katalogami u¿ytkownika, +powinny posiadaæ strukturê zgodn± z zaleceniami \TeX\ +Directory Structure (\TDS, \url{http://tug.org/tds}), konsekwentnie wraz +z mnóstwem podkatalogów. W przeciwnym wypadku potrzebne pliki mog± nie zostaæ +odnalezione. W czê¶ci \ref{sec:local-personal-macros} +(str.~\pageref{sec:local-personal-macros}) bêdzie to omówione dok³adniej. + +\begin{ttdescription} +\item [TEXMFMAIN] Drzewo katalogów zawieraj±ce podstawowe dla + dystrybucji elementy systemu, jak skrypty + %(np. \verb+web2c/mktexdir+), + i~inne pliki pomocnicze oraz dokumentacjê programów (nie zawiera zatem + pakietów makr ani formatów). +\item [TEXMFDIST] Drzewo katalogów zawieraj±ce pakiety makr, fontów itp., + %tak jak s± one oryginalnie dystrybuowane; + drzewo to mo¿e byæ wspó³dzielone z~dowoln± dystybucj±. +\item [TEXMFLOCAL] Drzewo katalogów, które administratorzy mog± wykorzystaæ + do przechowywania lokalnych makr, fontów itp., dostêpnych dla wszystkich + u¿ytkowników serwera. +\item [TEXMFHOME] Drzewo katalogów dla prywatnych makr, fontów itp. + u¿ytkownika. Rozwiniêcie tej zmiennej zale¿y domy¶lnie od warto¶ci przypisanej + zmiennej systemowej \verb+$HOME+ (w~Windows \verb+%USERPROFILE%+). +\item [TEXMFCONFIG] Lokalne drzewo katalogów wykorzystywane przez narzêdzia + \verb+texconfig+, \verb+updmap+ oraz \verb+fmtutil+ do przechowywania + danych konfiguracyjnych (domy¶lnie w~ramach \envname{TEXMFHOME}). +\item [TEXMFSYSCONFIG] Drzewo katalogów wykorzystywane przez narzêdzia + \verb+texconfig-sys+, \verb+updmap-sys+ oraz \verb+fmtutil-sys+ + do przechowywania danych konfiguracyjnych dla ca³ej instalacji (np. + sieciowej). +\item [TEXMFVAR] Lokalne drzewo katalogów wykorzystywane przez \verb+texconfig+, + \verb+updmap+ i~\verb+fmtutil+ do przechowywania wygenerowanych plików + formatów i~map fontowych (domy¶lnie w~ramach \envname{TEXMFHOME}). +\item [TEXMFCACHE] Drzewa katalogów wykorzystywane przez + \ConTeXt\ Mk\acro{IV} do przechowywania + %!!!(cached) runtime data. ??? + buforowanych danych z~przetwarzania. + %Domy¶lna warto¶æ w \TL{} jest identyczna z \verb+TEXMFVAR+. +\item [TEXMFSYSVAR] Drzewo katalogów wykorzystywane przez + \verb+texconfig-sys+, \verb+updmap-sys+, \verb+fmtutil-sys+, a~tak¿e + przez program \verb+tlmgr+ do przechowywania wygenerowanych plików + formatów i~map fontowych dla ca³ej instalacji. +\end{ttdescription} + +\noindent +Domy¶lny uk³ad katalogów: +\begin{description} + \item[ogólnosystemowy katalog instalacji] mo¿e zawieraæ kilka wydañ \TL{}: + \begin{ttdescription} + \item[2011] poprzednie wydanie, + \item[2012] wydanie aktualne: + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] programy dla \GNU/Linux + \item [...] + \item [universal-darwin] programy dla \MacOSX + \item [win32] programy dla Windows + \end{ttdescription} + \item [texmf\ \ \ \ ] okre¶lany zmienn± \envname{TEXMFMAIN} + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var\ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, katalog zachowywany + od wydania do wydania, + \end{ttdescription} + \item[katalog domowy u¿ytkownika] (\texttt{\$HOME} lub + \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2011] prywatne pliki konfiguracyjne + poprzedniego wydania + \item[.texlive2012] prywatne pliki konfiguracyjne + dla bie¿±cego wydania: + \begin{ttdescription} + \item [texmf-var\ \ ] \envname{TEXMFVAR}, \envname{TEXMFCACHE} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} prywatne makra, fonty itp. + \end{ttdescription} +\end{description} + +\subsection{Rozszerzenia \protect\TeX-a} +\label{sec:tex-extensions} + +Oryginalny \TeX{}, stworzony przez prof. Knutha, zosta³ zamro¿ony, ale +jest i~bêdzie w~przysz³o¶ci dostêpny w~dystrybucji. \TL{} zawiera ponadto +kilka wersji rozszerzonych standardowego \TeX-a: + +\begin{description} +\item [\eTeX] wersja \label{text:etex} programu \TeX{}, w~której dodano + po¿yteczny zestaw nowych poleceñ wbudowanych + (dotycz±cych g³ównie rozwijania makr, leksemów znakowych, interpretacji + znaczników itp.) oraz rozszerzenie \TeXXeT{} dla sk³adu + od prawej do lewej. W~trybie domy¶lnym \eTeX{} jest w~100\% zgodny ze + standardowym programem \TeX. Wiêcej szczegó³ów mo¿na znale¼æ + w~\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] program zawieraj±cy silnik \eTeX{} i dalsze +rozszerzenia, który umo¿liwia tworzenie plików zarówno w~formacie PDF, jak +i~\dvi{}. Jest on domy¶lnym programem dla wiêkszo¶ci formatów (prócz plain +\TeX), nie ma wiêc obecnie rozró¿nienia na ,,maszyny'' \textsf{pdftex} i +\textsf{pdfetex}, jak to mia³o miejsce w~poprzednich wersjach programów +i~w~poprzednich dystrybucjach \TL. Podrêczniki znajdziemy w~katalogu +\OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}, za¶ przyk³ad wykorzystania +w~pliku \OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex}. + +\item [Lua\TeX] docelowo sukcesor pdf\TeX-a, z~którym ma byæ, aczkolwiek +nieca³kowicie, zgodny wstecz. +Powinien tak¿e zast±piæ Aleph (patrz ni¿ej), choæ nie zak³ada siê +tu technicznej kompatybilno¶ci. Za³±czony +interpreter Lua (patrz strona domowa \url{http://www.lua.org/}) +pozwala na eleganckie rozwi±zanie wielu trudnych problemów \TeX-a. +Program \filename{texlua} ma funkcjonalno¶æ samodzielnego +interpretera Lua, co sprawia, ¿e jest u¿ywany w~\TL{} do wielu zadañ. +Patrz \url{http://www.luatex.org/} i~na \DVD{} +\OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [Xe\TeX] umo¿liwia kodowanie tekstów w~Unicode oraz korzystanie +z~fontów OpenType (tak¿e tych dostêpnych bezpo¶rednio w~systemie operacyjnym), +przy czym stosuje biblioteki obce. Patrz \url{http://tug.org/xetex}. + +\item [\OMEGA{} (Omega)] program, który pracuje wewnêtrznie ze znakami +kodowanymi 16-bitowo (Unicode), pozwalaj±c sk³adaæ jednocze¶nie +wiêkszo¶æ tekstów spotykanych na ¶wiecie. Wspomaga dynamicznie +³adowane tzw. ,,procesy t³umaczenia \OMEGA'' (\acro{OTP}), co pozwala +u¿ytkownikowi definiowaæ z³o¿one transformacje, wykonywane na dowolnych +strumieniach wej¶ciowych. + %Wiêcej szczegó³ów znale¼æ mo¿na na \DVD: + %\OnCD{texmf-dist/doc/omega/base/doc-1.8.tex} (dokumentacja niezbyt aktualna; + Sam program od dawna nie jest aktualizowany, zosta³ wiêc usuniêty z~\TL. + Pozostawiono jego dzia³aj±cy klon: + +\item [Aleph] ³±czy rozszerzenia \OMEGA\ i~\eTeX; powsta³ jako niezale¿ny +projekt z~potrzeby stabilnej ,,u¿ywalno¶ci'' programu Omega, w~sytuacji, +gdy ten pozostawa³ wci±¿ w~fazie eksperymentalnej. Dostêpna jest minimalna +dokumentacja: \OnCD{texmf-dist/doc/aleph/base}. + +\end{description} + +\subsection{Inne wa¿niejsze programy \protect\TL} + +Poni¿ej zestawiono kilka innych, najczê¶ciej u¿ywanych programów, dostêpnych +w~dystrybucji \TL{}: + +\begin{cmddescription} + +\item[bibtex, bibtex8] tworzenie spisów bibliograficznych; + +\item[makeindex, xindy] tworzenie posortowanych skorowidzów; + +\item[dvips] konwersja \dvi{} do \PS{}; + +\item[xdvi] przegl±darka plików \dvi{} dla X~Window; + +\item[dvilj] sterownik dla drukarek HP LaserJet; + +%\item [dv2dt, dt2dv] konwerter \dvi{} do/z tekstu ASCII; + +\item [dviconcat, dviselect] programy do manipulacji stronami w~plikach + \dvi{}; + +\item [dvipdfmx] konwersja \dvi{} do PDF, metoda alternatywna w~stosunku + do wspomnianego wy¿ej programu pdf\TeX{}; + %(pakiety \pkgname{ps4pdf} i~\pkgname{pdftricks} dostarczaj± tutaj kolejnych + %mo¿liwo¶ci); + +\item [psselect, psnup, \ldots] narzêdzia do manipulacji na plikach +postscriptowych; + +\item [pdfjam, pdfjoin, \ldots] narzêdzia do manipulacji na plikach + \acro{PDF}; + +%\item [lacheck] kontrola syntaktyki plików \LaTeX-owych; + +\item [texexec, texmfstart] programy uruchamiaj±ce dla Con\TeX{}t; + +\item [tex4ht] postprocesor dla \TeX-a konwersji do HTML i XML. + +\end{cmddescription} + +%%! zostawiam tê czê¶æ, choæ wylecia³a z wersji oryginalnej!!! 27.08.2003 +%%! zmiany: 24.09.2009 + +\subsection[Pakiety i ich zestawy]{Pakiety i ich zestawy} +\label{packages} +Zawarto¶æ drzew \texttt{texmf} na \TL{} zosta³a do celów instalacji +zorganizowana w~szereg ,,zestawów'' (\emph{collections}), +z~których ka¿dy posiada zbiór ,,pakietów'' (\emph{packages}; jest ich obecnie +ponad 2500). Normalna instalacja pozwala u¿ytkownikowi skopiowaæ +z~\DVD{} na twardy dysk jeden lub wiêcej zestawów, ale mo¿na te¿ +doinstalowaæ z niej do ju¿ zainstalowanego zestawu jedynie pojedynczy pakiet. + +Zestawy pozwalaj± lepiej dobraæ instalowane sk³adniki, a~tak¿e okre¶liæ, +jakie jêzyki bêd± obs³ugiwane po instalacji. Najwa¿niejszy zestaw, wymagany +dla wiêkszo¶ci zastosowañ, to ,,Essential programs and files''. Zestawy +,,Basic LaTeX packages'' i~,,Recommended fonts'' s± rekomendowane dla +wiêkszo¶ci u¿ytkowników. Pozosta³e zestawy s± opcjonalne. + +Oto wybrane dostêpne zestawy i~krótki opis ich zawarto¶ci: + +\begin{description} +\item[Essential programs and files] podstawowe programy, pakiety makr +i~fontów systemu \TeX{}, pliki konfiguracyjne dla podstawowych sterowników; +\item[Extra BibTeX styles] dodatkowa, obszerna biblioteka stylów Bib\TeX-owych + i~bazy danych bibliograficznych (podstawowe style znajduj± siê w~zestawie + ,,Essential\dots''); +%\item[chemistry] pakiety makr do sk³adu wzorów chemicznych; + \item[Context format] pakiet makr do Con\TeX{}t -- ,,dialektu'' \TeX-a + autorstwa Hansa Hagena; + %\item[documentation] dodatkowe, u¿yteczne dokumentacje; + %\item[etex] pliki pomocnicze dla programu e-\TeX; + \item[TeX auxiliary programs] ró¿ne programy pomocnicze; zestaw + zawiera m.in. + programy i~makra dla systemu texinfo, programy do manipulacji na plikach + DVI itp.; +\item[TeX and Outline font utilities] programy do konwersji plików + fontowych oraz testowania + i~instalacji fontów (zestaw do tworzenia fontów wirtualnych, manipulacji + plikami .gf i~.pk, programy \texttt{mft}, \texttt{fontinst} itp.); +\item[Recommended fonts] obszerna biblioteka czê¶ciej u¿ywanych fontów + w~postaci ¼ród³owej (.mf) b±d¼ fontów obwiedniowych oraz pliki z~definicjami + i~stylami \LaTeX-a dla tych fontów; +\item[Extra fonts] biblioteka ró¿nych rzadziej u¿ywanych fontów; +\item[Extra formats] pliki pomocnicze do generowania dodatkowych + ,,formatów'' (tj. obszerne zestawy makr s³u¿±ce do wstêpnego przetworzenia + i~utworzenia pliku \texttt{.fmt}); +\item[Games typesetting] pakiety do prezentacji zapisu ró¿nych gier (szachy, + bryd¿ itp.); +\item[Extra generic packages] obszerna biblioteka makr, trudnych do + sklasyfikowania, dzia³aj±cych z~ró¿nymi formatami (Plain, \LaTeX{} itp.); +\item[HTML/SGML/XML support] pakiety konwersji \LaTeX-a do XML/HTML oraz + do sk³adu dokumentów XML/SGML; +\item[lang\dots] wsparcie poszczególnych jêzyków; zestawy zawieraj± + wzorce przenoszenia wyrazów i~makra obs³ugi danych jêzyków, czasem te¿ + specyficzne fonty itp., przyk³adowo: + %\item[langarmenian] armeñski; +%\item[langcjk] pakiety CJK (obs³uga chiñskiego, japoñskiego i~koreañskiego); +%\item[langcroatian] chorwacki; +%\item[langcyrillic] fonty i makra do sk³adu cyrylic±; +%\item[langczechslovak] fonty i pakiety makr dla czeskiego i~s³owackiego; +%\item[langdanish] duñski; +%\item[langdutch] holenderski; +%\item[langfinnish] fiñski; +%\item[langfrench] francuski; +%\item[langgerman] niemiecki; +%\item[langgreek] grecki; +%\item[langhungarian] wêgierski; +%\item[langindic] wsparcie dla jêzyków indyjskich; +%\item[langitalian] w³oski; +%\item[langlatin] ³acina; +%\item[langmanju] jêzyk Manju; +%\item[langmongolian] mongolski; +%\item[langnorwegian] norweski; +%\item[langother] wzorce przenoszenia wyrazów dla innych jêzyków; +\item[langpolish] zawiera polskie pakiety: makra do tworzenia formatu MeX, + pakiety \texttt{polski}, \texttt{mwcls}, fonty i~makra dodatkowe + przydatne dla polskich u¿ytkowników oraz dokumentacje w~jêzyku polskim. +%\item[langportuguese] portugalski; +%\item[langspanish] hiszpañski; +%\item[langswedish] szwedzki; +%\item[langtibetan] fonty i~wsparcie do sk³adu tybetañskiego; +%\item[langukenglish] angielski (brytyjski); +%\item[langvietnamese] wietnamski; +%\item[music] makra do sk³adu nutowego; +%\item[omega] rozszerzenie \TeX{}a autorstwa Johna Plaice'a i~Yannisa Haralambousa, dzia³aj±ce ze znakami kodowanymi 16-bitowo; +%\item[pdftex] pliki pomocnicze dla pdf\TeX{}-a, wersji programu \TeX{} +% tworz±cej pliki w~formacie PDF; +%\item[pictures] pakiety do tworzenia diagramów i~innych obiektów graficznych; +%\item[plainextra] dodatkowe biblioteki makr dla Plain \TeX; +%\item[psutils] narzêdzia do manipulacji plikami \PS-owymi; +%\item[publishers] pakiety makr pochodz±ce od ró¿nych wydawnictw; +%\item[t1utils] narzêdzia do obs³ugi fontów w~formacie Type~1; +%\item[texbooks] przyk³ady i~inne materia³y autorstwa D.E.~Knutha; +%\item[ttfutils] narzêdzia do konwersji fontów True Type. +\end{description} +%-------------------------- +%%! koniec pozostawionej sekcji 24.09.2009 + +\begin{figure}[ht] +\begin{boxedverbatim} +Installing TeX Live 2012 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + platforms: 1 out of 19 + + Installation scheme (scheme-full) + 84 collections out of 85, disk space required: 3091 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + options: + [ ] use letter size instead of A4 by default + ... + + set up for portable installation + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{G³ówny ekran instalatora w~trybie tekstowym + (\GNU/Linux)}\label{fig:text-main} +\end{figure} + +Plik \texttt{tlpdb/texlive.tlpdb} (wykorzystywany podczas instalacji) +zawiera spis wszystkich plików w~ka¿dym pakiecie. + +\subsection{Fonty w \protect\TL} +\label{sec:tl-fonts} + +\TL{} zawiera wiele wysokiej jako¶ci fontów skalowanych. Patrz: +\url{http://tug.org/fonts} oraz +\OnCD{texmf-dist/doc/fonts/free-math-fonts-survey}. + +%==== + +\htmlanchor{installation} +\section{Instalacja} +\label{sec:install} + +\subsection{Start instalacji} +\label{sec:inst-start} + +Instalacjê \TL{} uruchamiamy z~p³ytki \TK{} \DVD{} (b±d¼ po pobraniu z~sieci +pakietu instalacyjnego i~jego rozpakowaniu) skryptem \filename{install-tl} +(Unix), \filename{install-tl.bat} lub \filename{install-tl-advanced.bat} +(Windows). Dodatkowe informacje na temat ró¿nych metod instalacji znajdziemy +na stronie \url{http://tug.org/texlive/acquire.html}. + +\begin{description} +\item [Instalacja z sieci:] z~archiwum \CTAN, z~katalogu +\dirname{systems/texlive/tlnet} +(\url{http://mirror.ctan.org/systems/texlive/tlnet} automatycznie +przekierowuje do najbli¿szej kopii \CTAN) nale¿y pobraæ plik +\filename{install-tl.zip} (wspólny dla Unix i Windows) lub znacznie mniejszy +\filename{install-unx.tar.gz} (tylko dla Unix). Po rozpakowaniu, +w~katalogu \dirname{install-tl/} znajdziemy skrypty instalacyjne +\filename{install-tl}, \filename{install-tl.bat} +i~\filename{install-tl-advanced.bat}. + +\item [Instalacja z p³ytki \TeX{} Collection \DVD:] po zamontowaniu +p³ytki nale¿y zmieniæ katalog bie¿±cy na \dirname{texlive} \DVD{} +(w~Windows program instalacyjny powinien uruchomiæ siê automatycznie). +\DVD{} otrzymamy w ramach cz³onkostwa w~dowolnej Grupie U¿ytkowników +Systemu \TeX{} (kontakt w Polsce \url{http://www.gust.org.pl}). Mo¿emy +tak¿e wypaliæ p³ytkê z dostêpnego w sieci jej obrazu \ISO{} b±d¼ zamontowaæ +bezpo¶rednio plik obrazu (w wiêkszo¶ci systemów istnieje taka mo¿liwo¶æ). Po +zainstalowaniu z \DVD\ lub obrazu \ISO{} mo¿na dokonywaæ aktualizacji +z~internetu (patrz \ref{sec:dvd-install-net-updates}). +\end{description} + +Bez wzglêdu na ¼ród³o stosowany jest ten sam program instalacyjny. Jedyn± +widoczn± ró¿nic± przy instalacji z sieci jest pobranie zaktualizowanych +pakietów, w przeciwieñstwie do \DVD\ i obrazu \ISO, które nie s± +aktualizowane miêdzy corocznymi wydaniami. + +Dalsze kroki omówiono dok³adniej poni¿ej. + + +\subsubsection{Unix} + +\noindent +Poni¿ej \texttt{>} oznacza znak zachêty systemu (tzw. prompt); to, +co wpisuje u¿ytkownik, zaznaczono \Ucom{\texttt{pogrubieniem}}. +W~oknie terminala nale¿y wykonaæ: +\begin{alltt} +> \Ucom{cd /path/to/installer} +> \Ucom{perl install-tl} +\end{alltt} +(mo¿na tak¿e uruchomiæ \Ucom{perl /path/to/installer/install-tl} lub +\Ucom{./install-tl}; w dalszej czê¶ci nie bêdziemy powtarzaæ wszelkich +mo¿liwych kombinacji). Zalecane jest powiêkszenie okna terminala, aby +zobaczyæ pe³n± zawarto¶æ ekranu programu instalacyjnego +(rys.~\ref{fig:text-main}). + +Do uruchomienia w~trybie graficznym (\GUI; rys.~\ref{fig:gui-main}) +wymagana jest obecno¶æ w~systemie modu³u \dirname{Perl/TK} skompilowanego +ze wsparciem dla \acro{XFT} (w~systemach \GNU/Linux{} jest on z~regu³y +dostêpny, ale dla innych systemów niekoniecznie): +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +Kompletny wykaz dostêpnych opcji otrzymamy uruchamiaj±c: +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{Uwaga dotycz±ca uprawnieñ w Unix:} program instalacyjny +bêdzie respektowa³ aktualn± warto¶æ \code{umask}. +Je¶li wiêc chcemy, aby instalacja by³a dostêpna dla innych u¿ytkowników, +musimy ustawiæ warto¶æ np. \code{umask 002}. Wiêcej informacji na temat +\code{umask} znajdziemy w~dokumentacji posiadanego systemu operacyjnego. + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth,trim=10 4 0 20,clip} +\caption{Ekran zaawansowanego programu instalacyjnego \GUI{} +(\GNU/Linux)}\label{fig:gui-main} +\end{figure} + +\textbf{Uwagi specjalne dotycz±ce Cygwin:} w~odró¿nieniu od wielu +rzeczywistych systemów operacyjnych, których Cygwin jest jedynie emulatorem, +w~¶rodowisku tym mog± nie byæ domy¶lnie zainstalowane niektóre programy +wymagane dla instalatora \TL. Dodatkowe informacje -- patrz +czê¶æ~\ref{sec:cygwin}. + +\subsubsection{MacOSX} + +Jak wspomniano w czê¶ci \ref{sec:tl-coll-dists}, dla \MacOSX{} +przygotowano odrêbn± dystrybucjê Mac\TeX\ (\url{http://tug.org/mactex}). +W~jej wypadku nale¿y u¿yæ dedykowanego programu instalacyjnego, gdy¿ +zmienia on w~specyficzny sposób ustawienia systemu, w~szczególno¶ci pozwala +na ³atwe prze³±czanie miêdzy ró¿nymi dystrybucjami \TeX-a dla +\MacOSX: Mac\TeX, Fink, MacPorts. + +Mac\TeX\ jest oparty na \TL{} i g³ówne drzewa katalogów pozosta³y w~nim +dok³adnie takie same, dodano jedynie katalogi ze specyficznymi dla systemu +\MacOSX\ dokumentacjami i~aplikacjami. + +\subsubsection{Windows} + +Gdy u¿ywamy instalatora pobranego z~sieci (b±d¼ program ten nie uruchamia siê +automatycznie po w³o¿eniu \DVD{} do napêdu), nale¿y uruchomiæ +\filename{install-tl.bat} (np. podwójnym klikniêciem myszy). +Mo¿na to uczyniæ tak¿e z~linii poleceñ. Gdy katalog zawieraj±cy ten plik +jest katalogiem bie¿±cym, wystarczy uruchomiæ: +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} +b±d¼, dla bardziej wymagaj±cej instalacji, pozwalaj±cej na wybór schematów, +kolekcji itp.: +\begin{alltt} +> \Ucom{install-tl-advanced} +\end{alltt} + +W linii poleceñ mo¿na te¿ podaæ ¶cie¿kê do programu, np.: +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +dla \TK\ \DVD, zak³adaj±c, ¿e \dirname{D:} jest napêdem \DVD +(rys.~\ref{fig:wizard-w32} pokazuje domy¶lny dla Windows ekran programu +instalacyjnego). + +Instalacja w~trybie tekstowym wymaga podania: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +Wszystkie dostêpne opcje wy¶wietlimy uruchamiaj±c: +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth,trim=0 4 0 0,clip} +\caption{Ekran programu instalacyjnego ,,Wizard'' +(Windows)}\label{fig:wizard-w32} +\end{figure} + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +Program instaluj±cy \TL{} obs³uguje jedynie Cygwin w~wersji 1.7. +Przed instalacj± w tym systemie zaleca siê uruchomiæ program +\filename{setup.exe} i,~o~ile nie zosta³y one uprzednio zainstalowane, +zainstalowaæ pakiety \filename{perl} oraz \filename{wget}. +Ponadto zalecana jest instalacja: +\begin{itemize*} +\item \filename{fontconfig} (wymagany dla \XeTeX) +\item \filename{ghostscript} (wymagany dla wielu narzêdzi) +\item \filename{libXaw7} (wymagany dla \code{xdvi}) +\item \filename{ncurses} (udostêpnia \code{clear} -- ,,czyste'' polecenie +stosowane przez program instalacyjny) +\end{itemize*} + +\subsubsection{Instalator w trybie tekstowym} + +Rysunek \ref{fig:text-main} przedstawia g³ówny ekran programu +\filename{install-tl} w (domy¶lnym) trybie tekstowym w~systemie Unix. +W tym trybie nie u¿ywamy ani klawiszy kursora, ani myszy, +lecz wy³±cznie klawiszy alfanumerycznych (uwaga: du¿e i~ma³e litery s± +rozró¿niane!). Wybran± opcjê zatwierdzamy klawiszem Enter. +Instalator w~trybie tekstowym jest na tyle prosty, by dzia³a³ na +mo¿liwie wielu platformach, nawet wyposa¿onych jedynie w~podstawowe +biblioteki Perla. + +\subsubsection{Zaawansowany program instalacyjny w trybie graficznym} + +Rysunek \ref{fig:gui-main} przedstawia program instalacyjny w~trybie +graficznym, w~wersji rozszerzonej. W systemie Windows znajdziemy +tu dodatkowe przyciski dla opcji nieistotnych w systemach Unix/Linux. +Tryb ten uruchamiamy poleceniem: + +\begin{alltt} + > \Ucom{install-tl -gui=perltk} +\end{alltt} + +\subsubsection{Uproszczony program instalacyjny} + +W systemie Windows domy¶lnie uruchamiany jest uproszczony program +instaluj±cy wszystkie pakiety \TL{}, który wymaga od u¿ytkownika odpowiedzi +jedynie na kilka pytañ (katalog docelowy itp.). Tryb ten, zwany +\textit{wizard} (,,czarodziej'', ,,mag'', rys.~\ref{fig:wizard-w32}), +uruchamiany jest poleceniem: + +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + +\subsection{Podczas instalacji} +\label{sec:runinstall} + +Program instalacyjny jest z~za³o¿enia na tyle prosty, ¿e szczegó³owe +wyja¶nienia wydaj± siê zbêdne. Podamy jednak kilka uwag dotycz±cych ró¿nych +opcji i~dostêpnych podmenu. + +\subsubsection{Menu: binary systems (tylko Unix)} +\label{sec:binary} + +\begin{figure}[tb] +\begin{boxedverbatim} +Available platforms: (Dostêpne platformy:) +=============================================================================== + a [ ] alpha-linux DEC Alpha with GNU/Linux + b [ ] amd64-freebsd x86_64 with FreeBSD + c [ ] amd64-kfreebsd x86_64 with GNU/FreeBSD + d [ ] armel-linux ARM with GNU/Linux + e [ ] i386-cygwin Intel x86 with Cygwin + f [ ] i386-freebsd Intel x86 with FreeBSD + g [ ] i386-kfreebsd Intel x86 with GNU/FreeBSD + h [X] i386-linux Intel x86 with GNU/Linux + i [ ] i386-solaris Intel x86 with Solaris + j [ ] mips-irix SGI IRIX + k [ ] mipsel-linux mipsel with Linux + l [ ] powerpc-aix PowerPC with AIX + m [ ] powerpc-linux PowerPC 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 +\end{boxedverbatim} +\caption{Wybór platformy (systemu operacyjnego)}\label{fig:bin-text} +\end{figure} + +Rysunek \ref{fig:bin-text} pokazuje (w~trybie tekstowym) wybór platformy +(systemu operacyjnego). Domy¶lnie instalowane s± tylko programy dla bie¿±cej +platformy, ale menu to pozwala wybraæ tak¿e zestawy dla innych platform. Mo¿e +byæ to przydatne do instalacji na serwerze i~wspó³dzielenia zasobów w~sieci +dla ró¿nych systemów operacyjnych b±d¼ dla instalacji dla kilku systemów na +tej samej maszynie. + +\subsubsection{Wybór sk³adników do instalacji} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Select scheme: (Wybór schematu do instalacji:) +=============================================================================== + a [X] full scheme (everything) + b [ ] medium scheme (small + more packages and languages) + c [ ] small scheme (basic + xetex, metapost, a few languages) + d [ ] basic scheme (plain and latex) + e [ ] minimal scheme (plain only) + f [ ] ConTeXt scheme + g [ ] GUST TeX Live scheme + h [ ] teTeX scheme (more than medium, but nowhere near full) + i [ ] XML scheme + j [ ] custom selection of collections +\end{boxedverbatim} +\caption{Menu: wybór schematów}\label{fig:scheme-text} +\end{figure} + +Rysunek \ref{fig:scheme-text} pokazuje menu ,,Wybór schematów''. Schematy to +obszerne zestawy pakietów, przeznaczone do wstêpnego wyboru instalowanych +komponentów. Mamy tu schematy do instalacji: podstawowej (\optname{basic}), +typowej (\optname{medium}) i~pe³nej (\optname{full}; jest ona +domy¶lna), pozosta³e przygotowano z~my¶l± o~wybranych grupach +u¿ytkowników (np.~GUST) lub zastosowaniach (np.~XML lub ConTeXt). + +\begin{figure}[tb] +\begin{center} +\tlpng{stdcoll}{.7\linewidth,trim=0 4 0 0,clip} +\caption{Menu Collections (Kolekcje)}\label{fig:collections-gui} +\end{center} +\end{figure} + +Wstêpnie wybrane schematy mo¿na modyfikowaæ. W sk³ad ,schematów'' wchodz± +tzw. ,,kolekcje'', które mo¿na wybraæ w~kolejnych menu o~nazwach: ,,Kolekcje +standardowe'' i~,,Kolekcje jêzykowe'' (rys.~\ref{fig:collections-gui}). +Kolekcje stanowi± ni¿szy poziom ni¿ schematy, a~same sk³adaj± siê z +,,pakietów''. Dopiero pakiety zawieraj± w³a¶ciwe pliki makr, fontów itp. +Je¶li chcemy dodaæ lub usun±æ pakiet, to po instalacji w³a¶ciwej u¿yjemy +programu \TeX\ Live Manager (\prog{tlmgr}, patrz czê¶æ~\ref{sec:tlmgr}). + +\subsubsection{Katalogi} +\label{sec:directories} + +Domy¶lny uk³ad katalogów opisano w czê¶ci~\ref{sec:texmftrees} na +str.~\pageref{sec:texmftrees}. Po³o¿enie domy¶lne ca³ej instalacji +(\dirname{TEXDIR}) ró¿ni siê w~Windows (|%SystemDrive%\texlive\2012|) +i~w~Unix (\dirname{/usr/local/texlive/2012}). + +G³ównym powodem, dla którego chcieliby¶my ewentualnie zmieniæ domy¶lne +po³o¿enie \dirname{TEXDIR}, +mo¿e byæ brak uprawnieñ systemowych. Aby zainstalowaæ \TL{}, nie musimy byæ +administratorem systemu, musimy jednak posiadaæ uprawnienia do zapisu +w~docelowym katalogu. Rozs±dn± alternatyw± mo¿e byæ wtedy instalacja +w~katalogu domowym, szczególnie gdy bêdziemy jej jedynym u¿ytkownikiem. +Stosujemy tu zapis ,,|~|'' do zaznaczenia katalogu domowego u¿ytkownika, np. +|~/texlive/2012|. Zalecamy u¿ycie katalogu z~nazw± odzwierciedlaj±c± +rok wydania, co pozwoli na zainstalowanie obok siebie ró¿nych wydañ \TL{}. + %%! przegadane, na razie olewam (SW) + %(You may wish to make a + %version-independent name such as \dirname{/usr/local/texlive-cur} via a + %symbolic link, which you can then update after testing the new release.) + +Zmiana \dirname{TEXDIR} w programie instalacyjnym zmieni tak¿e ¶cie¿ki +katalogów okre¶lone przez zmienne \dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} +i~\dirname{TEXMFSYSCONFIG}. + +\dirname{TEXMFHOME} jest zalecanym po³o¿eniem dla prywatnych makr i~fontów +u¿ytkownika. Domy¶lnym katalogiem jest |~/texmf|. W odró¿nieniu od +\dirname{TEXDIR}, znak |~| jest zachowywany w generowanych plikach +konfiguracyjnych, poniewa¿ w~wygodny sposób odnosi siê do katalogu domowego +podczas ka¿dego uruchamiania programów. Znak ten rozwijany jest do zmiennej +\dirname{$HOME} w~Unix i~\verb|%USERPROFILE%| w~Windows. Po raz kolejny +podkre¶lmy, ¿e tak jak inne drzewa katalogów, \envname{TEXMFHOME} musi +mieæ strukturê zgodn± z \TDS. + +Katalog okre¶lany przez zmienn± \dirname{TEXMFVAR} przechowuje +dane konfiguracyjne specyficzne dla ka¿dego u¿ytkownika. Katalog +okre¶lany przez zmienn± \dirname{TEXMFCACHE} przechowuje dane buforowane +(\textit{cached}) \ConTeXt\ Mk\acro{IV} (patrz czê¶æ~\ref{sec:context-mkiv}, +na str.~\pageref{sec:context-mkiv}). + +\subsubsection{Opcje} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Options setup: +=============================================================================== +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create all format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: + after installation, get package updates from CTAN: [X] +\end{boxedverbatim} +\caption{Menu: Options (Opcje) w Unix}\label{fig:options-text} +\end{figure} + +Rysunek \ref{fig:options-text} pokazuje menu (w~trybie tekstowym) +z~dodatkowymi opcjami. Warto tu je wymieniæ: + +\begin{description} +\item[use letter size instead of A4 by default] (u¿yj domy¶lnie formatu +papieru letter zamiast A4): pozwala okre¶liæ domy¶lny format papieru +dla wielu programów. Oczywi¶cie format papieru mo¿na (nawet: nale¿y) +specyfikowaæ dla ka¿dego dokumentu w miarê potrzeby. + +\item[execution of restricted list of programs] (zezwalaj na uruchomienie + niektórych programów): od \TL\ 2010 wykonanie niektórych przydatnych + programów pomocniczych, uruchamianych jako podprocesy (w~,,tle''), zosta³o + zastrze¿one dla ich niewielkiej listy, zamieszczonej w~pliku + \filename{texmf.cnf}. Szczegó³y znajdziesz w~czê¶ci ,,Wydanie + 2010'' (\ref{sec:2010news}). + +\item[create format files] (generuj pliki formatów): +chocia¿ zbêdne formaty zajmuj± miejsce na dysku, zaleca siê +pozostawiæ tê opcjê w³±czon±; je¶li tego nie zrobimy, formaty bêd± +generowane automatycznie (w~razie potrzeby) w~prywatnych katalogach +\dirname{TEXMFVAR} u¿ytkowników, nie bêd± jednak od¶wie¿ane, gdy w~instalacji +zostan± zaktualizowane np. same programy b±d¼ wzorce przenoszenia; wskutek +tego pliki formatów mog± utraciæ zgodno¶æ ze ¶rodowiskiem, w~którym s± +u¿ywane. + +\item[install font/macro \ldots\ tree] (instaluj pliki ¼ród³owe i/lub + dokumentacji dla fontów b±d¼ makr): wprawdzie wy³±czenie tych opcji + pozwala zaoszczêdziæ miejsce na dysku, ale nie jest zalecane. + +\item[create symlinks in standard directories] (utwórz dowi±zania + w~standardowych katalogach, dotyczy tylko Unix): opcja ta pozwala + unikn±æ ustawiania zmiennych ¶rodowiska po instalacji (\envname{PATH}, + \envname{MANPATH} i~\envname{INFOPATH}), ale jej u¿ycie nie jest zalecane, + bo mo¿e powodowaæ kolizje z ju¿ zainstalowanym w~systemie ¶rodowiskiem + \TeX; mo¿e byæ ona przydatna jedynie wtedy, gdy w~standardowych katalogach + (np. \dirname{/usr/local/bin}) nie ma jakichkolwiek programów \TeX-owych. + Wymaga ona ponadto uprawnieñ do zapisu w docelowych katalogach. + +\item[after installation \ldots\ \CTAN] (po instalacji u¿yj CTAN, aby pobraæ + aktualizacje): gdy instalujemy z~\DVD, opcja ta jest domy¶lnie w³±czona, + co pozwala dokonaæ aktualizacji zainstalowanych pakietów z~sieci (z~kopii + CTAN). Jedyny powód, dla którego mogliby¶my wy³±czyæ tê opcjê, to sytuacja, + gdy instalujemy tylko czê¶æ pakietów i~zamierzamy potem doinstalowaæ z~\DVD\ + inne. Tak czy inaczej, repozytorium pakietów do instalacji b±d¼ + aktualizacji mo¿e byæ w~ka¿dej chwili zmienione w~linii poleceñ, lub + po wyborze odpowiedniego menu programu \cmdname{tlmgr} w~trybie graficznym. + Patrz czê¶æ~\ref{sec:location} i~czê¶æ~\ref{sec:dvd-install-net-updates}. +\end{description} + +Po wykonaniu wszystkich potrzebnych ustawieñ mo¿na rozpocz±æ instalacjê +(klawisz ,,I''). Po instalacji zaleca siê zajrzeæ do czê¶ci +\ref{sec:postinstall}, bo byæ mo¿e bêd± jeszcze potrzebne dodatkowe kroki. + +%\htmlanchor{runfromdvd} +%\subsubsection{Uruchamianie bezpo¶rednio z DVD{} (tylko w trybie tekstowym)} +%\label{sec:fromdvd} +% +%Aby uruchomiæ programy bezpo¶rednio z~p³ytki \DVD{}, nale¿y wybraæ +%opcjê ,,|V|'', co zmienia menu na przedstawione na +%rys.~\ref{fig:main-fromdvd}. +%\begin{figure}[tbh] +%\begin{boxedverbatim} +%======================> TeX Live installation procedure <===================== +%... +% directories: +% TEXDIRW (Writable root): +% !! default location: /usr/local/texlive/2009 +% !! is not writable, please select a different one! +% TEXMFLOCAL (directory for site-wide local files): +% /usr/local/texlive/texmf-local +% TEXMFSYSVAR (directory for variable and automatically generated data): +% /usr/local/texlive/2009/texmf-var +% TEXMFSYSCONFIG (directory for local config): +% /usr/local/texlive/2009/texmf-config +% TEXMFHOME (directory for user-specific files): +% ~/texmf +% +% options: +% [ ] use letter size instead of A4 by default +% [X] create all format files +% +% set up for installing to hard disk +% +%Other actions: +% start installation for running from DVD +% help +% quit +%\end{boxedverbatim} +%\caption{Menu g³ówne dla uruchamiania z~\optname{DVD}}% +%\label{fig:main-fromdvd} +%\end{figure} +% +%Zwróæmy uwagê na nastêpuj±ce zmiany w menu: zniknê³y wszystkie opcje dotycz±ce +%wyboru pakietów, sekcja dotycz±ca katalogów pokazuje teraz \dirname{TEXDIRW} +%-- katalog posiadaj±cy prawa do zapisu. Pozwoli to uruchamiaæ dowolny program +%bezpo¶rednio z~p³ytki; na dysku twardym znajd± siê (w odpowiednich +%katalogach) jedynie niezbêdne pliki konfiguracyjne. +% +%Poniewa¿ struktura katalogów ró¿ni siê nieco od domy¶lnej, niezbêdne bêd± +%pewne czynno¶ci konfiguracyjne, omówione w~czê¶ci~\ref{sec:postinstall}. +% +%Instalator \GUI nie posiada opcji ,,V'', dlatego +%u¿ytkownicy Windows mog± uruchomiæ program jedynie +%z~linii poleceñ, jak opisano to w~czê¶ci~\ref{sec:cmdline}. +% +%W~rozdziale \ref{sec:portable-tl} opisano jeszcze inny, przeno¶ny sposób +%uruchamiania \TL, który nie wymaga zmian w~konfiguracji systemu +%(a~wrêcz nie pozwala na nie). + +\subsection{Parametry instalacji z linii poleceñ} +\label{sec:cmdline} + +Uruchom +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +aby wy¶wietliæ wszystkie dostêpne parametry. + % Either |-| or |--| can be used to introduce option names. + Oto najczê¶ciej u¿ywane: + +\begin{ttdescription} +\item[-gui] u¿yj (je¶li to mo¿liwe) programu w~wersji graficznej (\GUI); + wymagane jest posiadanie modu³u Perl/Tk + (\url{http://tug.org/texlive/distro.html#perltk}) skompilowanego ze +wsparciem dla \acro{XFT}; +gdy jest on niedostêpny, program instalacyjny uruchomiony zostanie +w trybie tekstowym; +\item[-no-gui] wymusza tryb tekstowy, np. w~Windows. +\item[-lang {\sl ll}] pozwala wybraæ jêzyk komunikatów, + \textsl{ll} oznacza tu dwuliterowy kod jêzyka; listê dostêpnych + jêzyków wy¶wietli \code{install-tl --help}; + %angielski (\texttt{en}, domy¶lny), + % chiñski tradycyjny (\texttt{zh-tw}), + % chiñski uproszczony (\texttt{zh-cn}), + % czeski (\texttt{cz}, + % francuski (\texttt{fr}), + % holenderski (\texttt{nl}), + % japoñski (\texttt{ja}), + % niemiecki (\texttt{de}), + % polski (\texttt{pl}), + % rosyjski (\texttt{ru}), + % serbski (\texttt{sr}), + % s³owacki (\texttt{sk}), + % s³oweñski (\texttt{sl}), + % w³oski (\texttt{it}) i~wietnamski (\texttt{vi}); + program samoczynnie wykrywa jêzyk systemu, ale je¶li jest to niemo¿liwe, +komunikaty i menu bêd± wy¶wietlane w jêzyku angielskim; + +\htmlanchor{opt-in-place} +\item[-in-place] je¶li posiadamy kopiê repozytorium \TL{} uzyskan± via + rsync, svn itp. (patrz \url{http://tug.org/texlive/acquire-mirror.html}), + opcja ta pozwala na wykorzystanie jako instalacji owej kopii i jedynie + wykona kroki poinstalacyjne (konfiguracjê). \textbf{Uwaga:} plik + \filename{tlpkg/texlive.tlpdb} mo¿e zostaæ nadpisany, a wiêc warto go + uprzednio skopiowaæ w bezpieczne miejsce. Ponadto usuwanie zbêdnych pakietów + nale¿y wykonaæ wtedy rêcznie, s³owem, u¿ycie tej opcji zaleca siê jedynie + zaawansowanym u¿ytkownikom. Opcja ta mo¿e byæ w³±czona/wy³±czona w programie + instalacyjnym. + +\item[-portable] instalacja do u¿ycia przeno¶nego, np. na pen drivie; + opcja ta mo¿e byæ u¿yta zarówno w trybie tekstowym (poleceniem \code{V}), + jak i przez wyb¢r odpowiedniego przycisku programu instalacyjnego w trybie +GUI (patrz czê¶æ ~\ref{sec:portable-tl}). + +\item[-profile {\sl plik}] wczytuje \var{plik} profilu instalacji + i~przebiega ona bez interakcji ze strony u¿ytkownika; program + instalacyjny zapisuje plik \filename{texlive.profile} w~katalogu + \dirname{tlpkg} naszej instalacji, co pozwala wykorzystaæ go dla + powielenia w trybie wsadowym wszystkich wyborów i~ustawieñ w~kolejnych + instalacjach; + +\item [-repository {\sl url-lub-¶cie¿ka}] pozwala okre¶liæ inne ni¿ + domy¶lne ¼ród³o instalacji (patrz poni¿ej). +\end{ttdescription} + +\subsubsection{Parametr \optname{-repository}} +\label{sec:location} + +Domy¶lnym repozytorium pakietów dla \TL{} jest kopia (\textit{mirror}) CTAN, +znajdywana automatycznie poprzez sewis \url{http://mirror.ctan.org}. + +Parametrowi \optname{-repository} mo¿na przypisaæ adres w sieci +(rozpoczynaj±cy siê od \texttt{ftp:}, \texttt{http:} lub \texttt{file:/}) lub +pe³n± ¶cie¿kê do kopii pakietów na dysku (np. pobranej za pomoc± programu +\filename{wget} lub \filename{rsync}). Je¶li podany argument wskazuje na +lokalny dysk (¶cie¿kê b±d¼ adres \texttt{file:/}), wybrana zostanie +instalacja ze skompresowanych plików \filename{tar.xz}, zawartych +w~podkatalogu \dirname{archive}. (Podaj±c adres \texttt{http:}\ lub +\texttt{ftp:}\ koñcowy znak `\texttt{/}' lub komponent `\texttt{/tlpkg}' s± +ignorowane.) + +Przyk³adowo, mo¿na wybraæ konkretn± kopiê (zwierciad³o) \CTAN\ z +\url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/} podstawiaj±c +prawdziw± nazwê hosta i jego konkretn± ¶cie¿kê do korzenia \CTAN\ zamiast +|ctan.example.org/tex-archive|. Lista zwierciade³ \CTAN\ jest dostêpna na +stronie \url{http://ctan.org/mirrors}. + +\subsection{Czynno¶ci poinstalacyjne} +\label{sec:postinstall} + + % %Czê¶æ ta nie dotyczy systemu Windows, dla którego program instalacyjny + %przeprowadza ca³± konfiguracjê, w³±cznie z~ustawieniami menu systemowego + %i~tworzeniem ikon na pulpicie. Poni¿sze uwagi mog± byæ przydatne dla + %u¿ytkowników innych systemów. + % + %\subsubsection{Gdy zastosujemy dowi±zania symboliczne} + % + +\subsubsection{Zmienne ¶rodowiska dla Unix} +\label{sec:env} + +U¿ycie opisanej w~czê¶ci~\ref{sec:options} opcji tworzenia dowi±zañ +symbolicznych w~standardowych katalogach nie wymaga zmian w zmiennych +¶rodowiska systemowego. Niemniej jednak w systemach Unix +po instalacji nale¿y do zmiennej \envname{PATH} dodaæ ¶cie¿kê do +programów \TL. (W Windows program instalacyjny czyni to za nas.) + +Ka¿da z~obs³ugiwanych platform ma w³asny podkatalog +w~ramach \dirname{TEXDIR/bin}. Listê platform i odpowiadaj±cych im katalogów +przedstawiono na rys.~\ref{fig:bin-text}. + +Równie¿ korzystanie z~systemowych przegl±darek dokumentacji \prog{man} +i~\prog{info} staje siê mo¿liwe dopiero +po dodaniu odpowiednich katalogów do ich ¶cie¿ek przeszukiwania. +Strony \prog{man} mog± byæ tak¿e znajdywane automatycznie po dodaniu +¶cie¿ki ich po³o¿enia do \envname{MANPATH}. + +Dla pow³oki zgodnej z~Bourne shell (\cmdname{sh}, \cmdname{bash}, +\cmdname{ksh}) mo¿emy dopisaæ do pliku \filename{$HOME/.profile}: + +\begin{sverbatim} +PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} + +W~wypadku csh lub tcsh nale¿y zmodyfikowaæ plik \filename{$HOME/.cshrc}, np.: + +\begin{sverbatim} +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{sverbatim} + +Je¶li s± ju¿ jakie¶ ustawienia zawarte w prywatnych plikach konfiguracyjnych, +wówczas oczywi¶cie katalogi \TL\ powinny byæ tam odpowiednio wkomponowane. + +\subsubsection{Zmienne ¶rodowiska: konfiguracja globalna} +\label{sec:envglobal} + +Je¶li zmiany maj± byæ dokonane globalnie, lub je¶li maj± byæ dokonane dla +nowego u¿ytkownika systemu, wówczas nale¿y dokonaæ tego na w³asn± rêkê -- +jest zbyt wiele mo¿liwo¶ci dla ró¿nych systemów dotycz±cych miejsca i sposobu +konfiguracji. + +Nasze dwie rady s± nastêpuj±ce: 1)~mo¿na sprawdziæ plik +\filename{/etc/manpath.config} i,~je¶li jest obecny, dodaæ w nim wiersze +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man +\end{sverbatim} + 2)~mo¿na sprawdziæ plik \filename{/etc/environment}, w którym mo¿e byæ +zdefiniowana ¶cie¿ka wyszukiwania i~inne domy¶lne zmienne ¶rodowiska. + +W ka¿dym katalogu w plikami wykonywalnymi systemów uniksowych mo¿emy utworzyæ +symboliczne dowi±zanie o nazwie \code{man} do katalogu +\dirname{texmf/doc/man}. Niektóre programy \code{man}, np. standardowy +program \code{man} w systemie \MacOSX, automatycznie znajd± to dowi±zanie, +likwiduj±c potrzebê jakiegokolwiek ustawiania dla stron manuala. + +\subsubsection{Aktualizacje z internetu po instalacji z \DVD} +\label{sec:dvd-install-net-updates} + +Po instalacji z \DVD\ i \textbf{po modyfikacji} ¶cie¿ki wyszukiwania +programów (jak opisano to powy¿ej), mo¿emy pobraæ z internetu aktualizacje +pakietów: + +\begin{alltt} +> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +Wówczas pakiety bêd± aktualizowane z najbli¿szej, automatycznie +znalezionej kopii archiwów CTAN (co domy¶lnie w³±czono podczas instalacji). +Je¶li wyst±pi± problemy z automatycznym wyborem archiwum, nale¿y podaæ +konkretny adres (listê adresów znajdziemy na \url{http://ctan.org/mirrors}) +wraz z pe³n± ¶cie¿k± do podkatalogu \dirname{tlnet}. + +\htmlanchor{xetexfontconfig} % keep historical anchor working +\htmlanchor{sysfontconfig} +\subsubsection{Konfiguracja fontów dla \XeTeX\ i~Lua\TeX} +\label{sec:font-conf-sys} + +\XeTeX\ i~Lua\TeX\ pozwalaj± u¿yæ ka¿dy font zainstalowany w~systemie, +nie tylko fonty znajduj±ce siê w~katalogach \TeX-owych. Korzystaj± tu ze +zbli¿onych, ale jednak ró¿nych metod. + +W systemach Windows fonty dostarczone z~\TL\ s± automatycznie dostêpne +dla programu \XeTeX{}. +Gdy w systemie uniksowym zainstalowano \filename{xetex}, nale¿y +skonfigurowaæ system tak, aby program ten móg³ znale¼æ fonty dostarczone +w~\TL. Aby to u³atwiæ, podczas instalacji pakietu tworzony jest +plik konfiguracyjny fontów: +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. + +Aby udostêpniæ fonty \TL{} dla innych aplikacji systemu +(zak³adaj±c, ¿e mamy odpowiednie uprawnienia) nale¿y wykonaæ +nastêpuj±ce czynno¶ci: +\begin{enumerate*} +\item skopiowaæ \filename{texlive-fontconfig.conf} do +\dirname{/etc/fonts/conf.d/09-texlive.conf}; +\item uruchomiæ \Ucom{fc-cache -fsv}. +\end{enumerate*} + +Je¶li nie mamy odpowiednich uprawnieñ i chcemy podczas uruchamiania \XeTeX-a +korzystaæ jedynie z~fontów dostêpnych w~\TL, nale¿y: +\begin{enumerate*} +\item skopiowaæ plik \filename{texlive-fontconfig.conf} do + \filename{~/.fonts.conf}, gdzie \filename{~} oznacza nasz katalog domowy. +\item uruchomiæ \Ucom{fc-cache -fv}. +\end{enumerate*} + +Uruchomienie programu \code{fc-list} pozwala wy¶wietliæ nazwy fontów +systemowych. \code{fc-list : family style file spacing} poka¿e wiêcej +interesuj±cych informacji. + +%\subsubsection{Gdy uruchamiamy programy z~DVD} +% +%Programy \TL{} wyszukuj± potrzebne dane w~ró¿nych drzewach katalogów, +%korzystaj±c z~pliku \filename{texmf.cnf}. Plik ten poszukiwany jest w ca³ej +%serii po³o¿eñ wzglêdem po³o¿enia samych programów, ale zasada ta nie dzia³a, +%gdy uruchamiamy programy bezpo¶rednio z~\DVD. Wynika to z faktu, ¿e niektóre +%pliki s± zapisywane na twardym dysku (\DVD{} jest medium tylko do odczytu) +%i~trac± tym samym predefiniowane wzglêdne po³o¿enie. Wymagane jest zatem +%zdefiniowanie w~¶rodowisku zmiennej \envname{TEXMFCNF}, która wska¿e +%po³o¿enie \filename{texmf.cnf}. Nadal jest potrzebna modyfikacja zmiennej +%\envname{PATH}, jak opisano wy¿ej. +% +%Na zakoñczenie instalacji program powinien pokazaæ komunikat informuj±cy, +%jak± warto¶æ nale¿y przypisaæ zmiennej \envname{TEXMFCNF}. Gdyby¶my +%to przeoczyli -- warto¶ci± t± jest \dirname{$TEXMFSYSVAR/web2c}, czyli dla +%domy¶lnych ustawieñ (\dirname{/usr/local/texlive/2009/texmf-var/web2c}) +%potrzebujemy deklaracji: +%\begin{sverbatim} +%TEXMFCNF=/usr/local/texlive/2009/texmf-var/web2c; export TEXMFCNF +%\end{sverbatim} +%lub, dla [t]csh: +%\begin{sverbatim} +%setenv TEXMFCNF /usr/local/texlive/2009/texmf-var/web2c +%\end{sverbatim} +% +%Opcja ta jest najbardziej przydatna, gdy chcemy uruchamiaæ programy \TL{} +%we w³asnym systemie, ale brak nam wystarczaj±cego miejsca na dysku. +%W pe³ni przeno¶ny sposób korzystania z~\TL{}, np. z pen drive USB, +%opisano w czê¶ci~~\ref{sec:portable-tl}. + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context-mkiv} + +Zarówno tzw. ,,stary'' \ConTeXt{} (Mark \acro{II}), jak i~nowy +\ConTeXt{} (Mark \acro{IV}, oparty na Lua\TeX) powinny dzia³aæ po instalacji +\TL bez problemów, o ile do aktualizacji bêdziemy u¿ywaæ wy³±cznie programu +\verb+tlmgr+. + +Poniewa¿ \ConTeXt{} Mk\acro{IV} nie stosuje biblioteki kpathsea do +wyszukiwania plików, po zainstalowaniu rêcznie nowych plików (bez u¿ycia +\verb+tlmgr+) wymagane jest uruchomienie: +\begin{sverbatim} +context --generate +\end{sverbatim} +do od¶wie¿enia danych buforowych \ConTeXt. +Wygenerowane dane buforowe zostan± zapisane w~katalogach wskazywanych przez +zmienn± \code{TEXMFCACHE} (domy¶lna warto¶æ w \TL\ tej zmiennej to +\verb+TEXMSYSVAR;TEXMFVAR+). + +\ConTeXt\ Mk\acro{IV} przeszuka wszystkie ¶cie¿ki wymienione w +\verb+TEXMFCACHE+ i zapisze dane w pierwszej ¶cie¿ce, która jest dostêpna +do zapisu. Gdy dane buforowe s± zduplikowane, podczas ich odczytywania +zostan± wykorzystane ostatnio znalezione. + +Wiêcej informacji znajdziemy na stronach: +\url{http://wiki.contextgarden.net/Running_Mark_IV}. + +\subsubsection{Integracja lokalnych i prywatnych pakietów makr} +\label{sec:local-personal-macros} + +Jak ju¿ wspomniano w~czê¶ci~\ref{sec:texmftrees}, katalog \dirname{TEXMFLOCAL} +(domy¶lnie \dirname{/usr/local/texlive/texmf-local} lub +\verb|%SystemDrive%\texlive\texmf-local| w~Windows) przeznaczony jest na lokalne +(np. w~danej sieci komputerowej) fonty oraz pakiety makr. Z~kolei +\dirname{TEXMFHOME} (domy¶lnie \dirname{$HOME/texmf} lub +\verb|%USERPROFILE%\texmf|) jest przeznaczony na prywatne makra i~fonty +u¿ytkownika. W zamierzeniu oba te katalogi powinny byæ zachowywane przy +instalacji nowszych wersji \TL{}, a~ich zawarto¶æ ma byæ automatycznie +dostêpna w~kolejnych wydaniach. Zalecamy zatem, by nie +przedefiniowywaæ \dirname{TEXMFLOCAL}, co pozwoli unikn±æ rêcznego +konfigurowania w~przysz³o¶ci. + +W~obu drzewach katalogów pliki powinny byæ umieszczane w~odpowiednich +podkatalogach, zgodnie z~zaleceniami \TDS{} (patrz: \url{http://tug.org/tds}, +tak¿e plik \filename{texmf/web2c/texmf.cnf}). Przyk³adowo pliki klas lub +makr \LaTeX-a powinny byæ umieszczane w~katalogu +\dirname{TEXMFLOCAL/tex/latex/} lub \dirname{TEXMFHOME/tex/latex/} +(lub ich podkatalogach). + +\dirname{TEXMFLOCAL} po zmianie zawarto¶ci wymaga od¶wie¿enia bazy danych -- +poleceniem \cmdname{mktexlsr} lub poprzez u¿ycie przycisku ,,Od¶wie¿ bazy +danych'' w~graficznym trybie programu TeX Live Manager (\prog{tlmgr}). + +Ka¿da z tych zmiennych ma domy¶lnie przypisany pojedynczy katalog, ale +nie musi byæ to regu³±. Je¶li testujemy ró¿ne wersje pakietów, mo¿emy +do w³asnych celów zak³adaæ kolejne drzewa katalogów i prze³±czaæ kolejno¶æ +ich przeszukiwania. Wystarczy zadeklarowaæ zmienn± \dirname{TEXMFHOME} +dla listy katalogów, które oddzielamy przecinkami i~umieszczamy w~klamrach: + +\begin{verbatim} + TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir} +\end{verbatim} + +W czê¶ci \ref{sec:brace-expansion} opisano dok³adniej analizê listy +katalogów umieszczonych w klamrach. + +\subsubsection{Integracja fontów z innych ¼róde³} + +Jest to, niestety, bardzo skomplikowane zagadnienie, wymagaj±ce sporej wiedzy +u¿ytkownika. Warto najpierw siê dowiedzieæ, jakie fonty mamy dostêpne +bezp³atnie (patrz czê¶æ~\ref{sec:tl-fonts}). + +Alternatyw± jest tu u¿ycie programu \XeTeX{} lub Lua\TeX\ (patrz +czê¶æ~\ref{sec:tex-extensions}), które korzystaj± z fontów systemowych +bez potrzeby instalowania ich dla programów \TeX-owych. + +Procedury instalacji i integracji fontów + % for our best effort at wielkim staraniem ?? + opisano dok³adnie np. +w:~\url{http://tug.org/fonts/fontinstall.html}. + +\subsection{Testowanie instalacji} +\label{sec:test-install} + +Po zainstalowaniu \TL{} warto sprawdziæ, czy programy dzia³aj± +poprawnie. Opiszemy tu podstawowe procedury testuj±ce funkcjonowanie +systemu w~systemach Unix. W~\MacOSX{} i~Windows najczê¶ciej u¿yjemy +¶rodowiska graficznego (\GUI), regu³y jednak bêd± podobne. + +\begin{enumerate} +\item Sprawdzamy najpierw, czy uruchamia siê program \cmdname{tex}: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live ...) +kpathsea version 6.0.1 +Copyright ... D.E. Knuth. +... +\end{alltt} +Je¶li uruchomienie koñczy siê komunikatem \emph{command not found} +(\emph{nie znaleziono polecenia}), oznacza to, ¿e niepoprawnie +zadeklarowano zmienn± \envname{PATH} (patrz: deklaracje zmiennych +¶rodowiska na str.~\pageref{sec:env}). + +\item Nastêpnie przetwarzamy prosty plik \LaTeX-owy: +\begin{alltt} +> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-... (TeX Live ...) +..... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +Gdy program nie znajduje \filename{sample2e.tex} (b±d¼ innych wymaganych +plików), mo¿e to oznaczaæ, ¿e nadal dzia³aj± ustawienia zmiennych ¶rodowiska +b±d¼ pliki konfiguracyjne z~innej (poprzedniej) instalacji. +Szczegó³ow± analizê, gdzie pliki s± szukane i~znajdowane, +umo¿liwia diagnostyka opisana w~czê¶ci \ref{sec:debugging} na +str.~\pageref{sec:debugging}. + +\item Podgl±d wyniku sk³adu: +\begin{alltt} + > \Ucom{xdvi sample2e.dvi} # Unix + > \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +Polecenie \cmdname{xdvi} wymaga uruchomionego ¶rodowiska graficznego +X~Window. Dla MS Windows analogicznym poleceniem jest \cmdname{dviout}. + %%! + %%! You should see a new window with a nice document explaining some of the + %%! basics of \LaTeX{}. (Well worth reading, by the way if you're new to the + %%! system.) You do have to be running under X for \cmdname{xdvi} to work; if + %%! you're not, or your \envname{DISPLAY} environment variable is set + %%! incorrectly, you'll get an error \samp{Can't open display}. + +\item Przetwarzanie wyniku sk³adu do \PS{} w~celu wy¶wietlenia lub wydruku: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Tworzenie dokumentu bezpo¶rednio w~formacie \acro{PDF}: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Podgl±d dokumentu \acro{PDF}: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{lub:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Programy \cmdname{gv} i~\cmdname{xpdf} s± zwykle dostarczane +w~ramach systemu operacyjnego, wobec tego nie zamieszczono ich +na \TL. Przed samodzieln± instalacj± warto odwiedziæ strony, +odpowiednio: \url{http://www.gnu.org/software/gv} +i~\url{http://www.foolabs.com/xpdf}. W~sieci dostêpny jest tak¿e +bezp³atny program Adobe Reader (\url{http://www.adobe.com}). +U¿ytkownikom Windows mo¿na zarekomendowaæ program +Sumatra PDF (\url{http://blog.kowalczyk.info/software/sumatrapdf}. +W~systemie Windows domy¶lnie instalowany jest dla \TL{} program +\cmdname{psv} +(PS\_View), pozwalaj±cy przegl±daæ pliki \cmdname{.ps} i~\cmdname{.pdf}. +Program ten mo¿na te¿ zainstalowaæ samodzielnie w~systemach Linux + %(w~katalogu \dirname{support/} znajdziemy plik \filename{psview-5.09t.zip}). + (\url{http://psview.sourceforge.net/download.html}). + +\item Inne przydatne pliki testowe: + +\begin{ttdescription} +\item [small2e.tex] przyk³ad prostszy ni¿ \filename{sample2e}; +\item [testpage.tex] test po³o¿enia wydruku na kartce papieru, przydatny + do sprawdzenia, czy nasza drukarka nie wprowadza przesuniêæ; +\item [nfssfont.tex] s³u¿y do wydruku tablic fontowych; +\item [testfont.tex] jak wy¿ej, z~tym ¿e zamiast \LaTeX-a trzeba u¿yæ plain + \TeX{}; +\item [story.tex] najbardziej kanoniczny przyk³ad dla plain \TeX{}; + na zakoñczenie przetwarzania uruchomionego poleceniem \samp{tex story}, + po ukazaniu siê \code{*}, nale¿y wpisaæ \samp{\bs bye}. +\end{ttdescription} + +\item Je¶li zainstalowano pakiet \filename{xetex}, mo¿emy przetestowaæ + u¿ycie fontów systemowych: +\begin{alltt} +> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +Gdy otrzymamy komunikat b³êdu: +,,Invalid fontname `Latin Modern Roman/ICU'\dots'', oznacza to, ¿e +nale¿y zmieniæ konfiguracjê, jak to opisano +w~czê¶ci~\ref{sec:font-conf-sys}. + +\end{enumerate} + +\subsection{Programy pomocnicze dla Windows} + +Pocz±tkuj±cym u¿ytkownikom polecamy stronê +\url{http://tug.org/begin.html} oraz podrêcznik +Petera Flynna \textsl{Formatting Information}, dostêpny pod adresem +\url{http://www.ctan.org/tex-archive/documentation/beginlatex}. + +Aby instalacja by³a kompletna, \TL{} wymaga kilku pomocniczych +programów, które nie s± dostarczane z~systemem Windows. +Wiele skryptów napisano w~jêzyku Perl, ponadto wiele narzêdzi wymaga +programu Ghostscript (interpretera jêzyka PostScript) do +rasteryzacji b±d¼ konwersji plików. Przydatne s± tak¿e w~wielu wypadkach +ró¿ne programy do obróbki grafiki. Ponadto posiadanie edytora +zorientowanego na ¶rodowisko \TeX{} znacznie u³atwi pracê. + +Wszystkie te programy dla Windows mo¿na dosyæ ³atwo znale¼æ w~sieci, +poniewa¿ jednak jest ich spory wybór, postanowili¶my te najbardziej istotne +umie¶ciæ w~dystrybucji \TL: +\begin{description} +\item[Perl i Ghostscript] -- obydwa te programy s± niezbêdne do +poprawnego dzia³ania \TL, do³±czyli¶my zatem \cmdname{Ghostscript} 8.62 +i~minimaln± dystrybucjê \cmdname{Perl} 5.8, wystarczaj±c± do +uruchomienia wszystkich zawartych w~\TL{} skryptów perlowych; +oba programy zosta³y ,,ukryte'', to znaczy tylko programy \TL, które +z~nich korzystaj±, ,,wiedz±'' gdzie je znale¼æ; tym samym nie powinny +kolidowaæ z~ewentualnie zainstalowanymi w~systemie programami Perl +i~Ghostscript; +\item[narzêdzia uruchamiane z~linii poleceñ] -- zestaw kilku przydatnych + programów + (\texttt{gzip}, \texttt{unzip}, \texttt{jpeg2ps} i~\texttt{tiff2png}) + a~tak¿e kilka narzêdzi z~zestawu \cmdname{xpdf}, uruchamianych z~linii + poleceñ (sam \cmdname{xpdf} nie jest dostêpny dla Windows, + mo¿na jednak pobraæ z~internetu opart± na nim przegl±darkê \acro{PDF}: + \url{http://blog.kowalczyk.info/software/sumatrapdf}); +\item[fc-list, fc-cache] -- narzêdzia z~biblioteki fontconfig; program +\prog{fc-cache} rejestruje dla \XeTeX-a fonty systemowe lub dostarczane + w~dystrybucji \TL{} fonty OpenType; \prog{fc-list} wy¶wietla zarejestrowane + fonty, podaj±c ich pe³ne nazwy (deklarujemy je w~rozszerzonym w~\XeTeX-u + poleceniu \cs{font}); +\item[PS\_View] -- program do podgl±du plików postscriptowych (a~tak¿e + plików \acro{PDF}), patrz rys.~\ref{fig:psview}. +\end{description} + %\begin{description} + %\item[katalog \texttt{support,}] wspomniany ju¿ w~czê¶ci~\ref{sec:tld}, + %zawiera ró¿ne programy, które mog± byæ u¿yteczne w~¶rodowisku \TeX-owym + %(np. edytory/¶rodowiska dla \TeX-a); programy te \emph{nie s±} uwzglêdniane + %podczas instalacji samego \TL, nale¿y je wiêc zainstalowaæ samodzielnie. + %\end{description} + +\begin{figure}[h] +\begin{center} +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: umo¿liwia bardzo du¿e powiêkszenia!}\label{fig:psview} +\end{center} +\end{figure} + +Poni¿ej zamieszczono listê miejsc, z~których mo¿na pobraæ programy +pomocnicze: + +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org} (uzupe³niaj±ce, przydatne + pakiety nale¿y pobraæ z~zasobów CPAN \url{http://cpan.org}) +\item[ImageMagick] -- bogaty zestaw narzêdzi do wsadowego przetwarzania + plików graficznych (\url{http://www.imagemagick.com}) +\item[NetPBM] -- do przetwarzania i~konwersji plików graficznych mo¿emy + u¿yæ alternatywnego dla \textsf{ImageMagick} programu NetPBM + (\url{http://netpbm.sourceforge.net/}) +\item[Edytory dla systemu \TeX{}] -- spory wybór programów, uwzglêdniaj±cych + indywidualne preferencje u¿ytkownika (poni¿ej wymieniono jedynie + te dzia³aj±ce w~systemach Windows) + \begin{itemize*} + \item \cmdname{GNU Emacs} -- w~wersji zintegrowanej z~\textsf{AucTeX} + dla Windows dostêpny jest w~archiwach \CTAN; + strona domowa: \url{http://www.gnu.org/software/auctex}. +% http://www.gnu.org/software/emacs/windows/ntemacs.html}) +% \item \cmdname{XEmacs} -- bardziej przyjazna wersja dla Windows +% (\url{http://www.xemacs.org/}) + \item \cmdname{LEd} -- polski edytor, dostêpny + z~\url{http://mirror.ctan.org/support/LEd}. + \item \cmdname{SciTE} -- edytor dostêpny + z \url{http://www.scintilla.org/SciTE.html} + \item \cmdname{Texmaker} -- edytor dostêpny z + \url{http://www.xm1math.net/texmaker}. + \item \cmdname{TexMakerX} jest rozszerzeniem \cmdname{Texmaker} + (\url{http://texmakerx.sourceforge.net}). + \item TeXnicCenter -- kolejny, dosyæ bogaty w~funkcje edytor + (\url{http://www.toolscenter.org/products/texniccenter/}) + \item \cmdname{TeXworks} -- nowy edytor, dostêpny z + \url{http://tug.org/texworks} i instalowany w Windows oraz + \MacOSX\ jako czê¶æ \TL. + \item \cmdname{Vim} -- rozbudowany i~bardzo funkcjonalny edytor, + wywodz±cy siê z~klasycznego dla systemów Unix edytora \cmdname{vi} + %, dostêpny na \TL{} w~katalogu \dirname{support/vim} + (\url{http://www.vim.org}) + \item \cmdname{WinShell} -- prosty edytor/shell + (\url{http://www.winshell.de}) + \item \cmdname{WinEdt} -- bogaty w~funkcje edytor dla \TeX-a, dostêpny jako + \emph{shareware} (\url{http://www.winedt.com}) + \end{itemize*} +\end{description} + +Obszerniejsz± listê programów mo¿na znale¼æ na stronie +\url{http://tug.org/interest.html}. + +\section{Instalacje zaawansowane} + +W poprzednich czê¶ciach opisano proces typowej instalacji. Teraz +omówimy te bardziej wyspecjalizowane. + +\htmlanchor{tlsharedinstall} +\subsection{Instalacje dla wielu u¿ytkowników (lub wieloplatformowe)} +\label{sec:sharedinstall} + +\TL{} zaprojektowano tak, by w~sieci komputerowej mog³o z~niego korzystaæ +wielu u¿ytkowników, nawet w~ró¿nych systemach operacyjnych. +Dziêki standardowej strukturze katalogów nie ma potrzeby konfiguracji +i~okre¶lania konkretnych ¶cie¿ek: po³o¿enie plików wymaganych przez programy +\TL{} jest zdefiniowane jako wzglêdne wobec samych programów. Mo¿na to +zobaczyæ w~pliku \filename{$TEXMFMAIN/web2c/texmf.cnf}, który zawiera np. +takie wiersze: +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +W konsekwencji oznacza to, ¿e dla ró¿nych systemów operacyjnych b±d¼ +u¿ytkowników wystarczy dodaæ do ich ¶cie¿ek przeszukiwania tylko ¶cie¿kê +do programów \TL{}. + +Mo¿liwa jest zatem np. instalacja lokalna \TL{}, po czym przeniesienie +ca³ej struktury w~inne miejsce w~sieci. + +U¿ytkownicy Windows mog± pobraæ z internetu skrypt \filename{w32client} +(patrz: \url{http://tug.org/texlive/w32client.html}), który +pozwala dostosowaæ istniej±c± instalacjê \TL{} dla potrzeb sieci +(w³±cznie z~utworzeniem skrótów w~menu systemowym). Plik .zip dostêpny na +wymienionej stronie zawiera ponadto skrypt \filename{w32unclient}, +s³u¿±cy do odinstalowania. + +%W czê¶ci~\ref{sec:kpathsea} dowiemy siê wiêcej o~konfigurowaniu \TL{} +%i~zasadach przeszukiwania ¶cie¿ek. + +%%! 2 sekcje t³umaczy³ Kocio (Andrzej Borzyszkowski), przeredagowa³ StaW +\htmlanchor{tlportable} +\subsection{Przeno¶na instalacja na pen drivie USB} +\label{sec:portable-tl} + +Aby wykonaæ przeno¶n± instalacjê na pen drivie nale¿y uruchomiæ program +instalacyjny z~opcj± \optname{-portable} (lub polecenie \code{V} w trybie +tekstowym b±d¼ odpowiednia opcja w trybie \GUI). Instalacja taka nie ingeruje +w sam system operacyjny. Mo¿na j± wykonaæ bezpo¶rednio na pen drivie, lub na +dysku twardym, sk±d kopiujemy j± na urz±dzenie przeno¶ne. + +Do uruchomienia programów \TL\ w takiej instalacji wystarczy w sesji +terminala dodaæ, jak zazwyczaj, odpowiedni katalog do zmiennej \code{PATH}. W +Windows nale¿y dwukrotnie klikn±æ \filename{tl-tray-menu} w g³ównym katalogu +instalacji, aby wybraæ jedno z podstawowych zadañ, pokazanych na poni¿szym +rysunku: + +\medskip +\tlpng{tray-menu}{4cm} +\smallskip + +\noindent Wybór ,,More\ldots'' poka¿e komunikat z informacj± jak mo¿na +dostosowaæ menu do w³asnych potrzeb. + +\htmlanchor{tlisoinstall} +\subsection{Instalacje z pliku obrazu \ISO\ (lub \DVD)} +\label{sec:isoinstall} + +Je¶li nie zamierzamy czêsto aktualizowaæ b±d¼ modyfikowaæ w inny sposób +naszej instalacji, a~tak¿e gdy zamierzamy uruchamiaæ \TL\ na wielu systemach, +warto utworzyæ plik obrazu \ISO\ takiej instalacji, choæby z poni¿szych +powodów: + +\begin{itemize} +\item kopiowanie obrazu \ISO\ miêdzy komputerami jest znacznie szybsze + ni¿ kopiowanie zwyk³ej instalacji; +\item je¶li u¿ywamy kilku systemów operacyjnych na tym samym komputerze + i chcemy korzystaæ z~tej samej instalacji \TL, obraz \ISO instalacji + jest pozbawiony ograniczeñ ró¿nych systemów plików + (\acro{FAT32}, \acro{NTFS}, \acro{HFS+}); +\item systemy uruchamiane w trybie wirtualnym mog± po prostu zamontowaæ + plik obrazu \ISO. +\end{itemize} + +Obraz \ISO\ mo¿na oczywi¶cie wypaliæ na p³ytce \DVD. + +Systemy \GNU/Linux/Unix (w tym \MacOSX) pozwalaj± na montowanie pliku obrazu +\ISO. Prócz tego taka instalacja w niczym siê nie ró¿ni od typowej, wykonanej +na dysku (patrz: \ref{sec:env}). + +Podczas wykonywania instalacji do \ISO\ warto pomin±æ specyfikowanie katalogu +dla roku wydania, ponadto warto umie¶ciæ katalog \filename{texmf-local} na +tym samym poziomie co inne drzewa (\filename{texmf}, \filename{texmf-dist}, +itd.). Zmianê katalogów umo¿liwia opcja \verb+TEXDIR+ programu instalacyjnego. + +Dla natywnego (nie wirtualnego) systemu Windows mo¿na wypaliæ obraz \ISO\ na +p³ytce \DVD, ale warto te¿ rozwa¿yæ instalacjê którego¶ z~dostêpnych w sieci +programów umo¿liwiaj±cych montowanie takiego obrazu. Np. dla Windows XP +Microsoft oferuje program \filename{winxpvirtualcdcontrolpanel}. + +Poza tym w Windows mo¿na do³±czyæ opisany wy¿ej skrypt \filename{w32client} +(patrz: \ref{sec:sharedinstall} oraz +\url{http://tug.org/texlive/w32client.html}), który wykonuje swe zadania, +podobnie jak w wypadku instalacji sieciowej. + +W systemie \MacOSX{} programy TeXShop i \TeX{}works bêd± mog³y wykorzystaæ +instalacjê na \acro{DVD}, gdy zadeklarujemy dowi±zanie symboliczne +\filename{/usr/texbin} do odpowiedniego katalogu, np.: +\begin{verbatim} +sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin +\end{verbatim} + +Uwaga historyczna: \TL{} 2010 by³ pierwsz± edycj±, która (z ró¿nych przyczyn) +nie by³a faktycznie \textit{live}. Niemniej jednak poprzednie edycje zawsze +wymaga³y akrobatycznych ,,sztuczek'' do uruchamiania programów bezpo¶rednio +z \DVD\ lub obrazu \ISO (np. deklarowania dodatkowej zmiennej ¶rodowiska). +Obraz \ISO, tworzony obecnie, tego nie wymaga. + +\htmlanchor{tlmgr} +\section{\cmdname{tlmgr}: zarz±dzanie instalacj±} +\label{sec:tlmgr} + +\TL{} zawiera program o~nazwie \prog{tlmgr}, s³u¿±cy do dalszego +zarz±dzania \TL{} po pierwotnej instalacji. Programy \prog{updmap}, +\prog{fmtutil} oraz \prog{texconfig} s± nadal dostêpne i~bêd± utrzymywane +w~przysz³o¶ci, jednak¿e obecnie polecanym interfejsem jest \prog{tlmgr}. Jego +mo¿liwo¶ci obejmuj±: + +\begin{itemize*} +\item instalowanie, aktualizacjê, tworzenie kopii zapasowych, odtwarzanie + oraz usuwanie pojedynczych pakietów (opcjonalnie~-- z~uwzglêdnieniem + zale¿no¶ci pomiêdzy pakietami); +\item wyszukiwanie i pokazanie zawarto¶ci pakietów; +\item wyszczególnianie oraz dodawanie architektur (platform systemowych); +\item zmianê opcji instalacji, takich jak rozmiar papieru czy zmiana + po³o¿enia ¼ród³a instalacji (patrz czê¶æ~\ref{sec:location}). +\end{itemize*} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} w~trybie graficznym: g³ówne okno, po akcji +,,Wczytaj'' (\textit{Load}).} +\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\hbox to \hsize{% + \vtop{\hsize=.59\linewidth + \null % make figures align at the top + \tlpng{tlmgr-general-options}{\hsize} + \caption{\texttt{tlmgr} w trybie \GUI: Opcje ogólne} + \label{fig:tlmgr-general-options} + } + \hfil + \vtop{\hsize=.39\linewidth + \null + \tlpng{tlmgr-paper-options}{\hsize} + \caption{\texttt{tlmgr} w trybie \GUI: Opcje dotycz±ce formatu papieru} + \label{fig:tlmgr-paper-options} + } +} +\end{figure} + + %\begin{figure}[tb] + %\tlpng{tlmgr-config}{.8\linewidth} + %\caption{\texttt{tlmgr} w~trybie graficznym: zak³adka + %konfiguracji}\label{fig:tlmgr-config} + %\end{figure} + +\subsection{\cmdname{tlmgr} -- tryb graficzny (GUI)} +\prog{tlmgr} mo¿e byæ uruchomiony w~trybie graficznym +(rys.~\ref{fig:tlmgr-gui}) za pomoc± polecenia: +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} + za¶ w~systemie Windows poprzez wybór menu: \texttt{Start}, +\texttt{Programy}, \texttt{TeX Live 2012}, \texttt{TeX Live Manager}. +Po klikniêciu przycisku ,,Wczytaj'' wy¶wietla listê dostêpnych oraz +listê zainstalowanych pakietów. + %(te ostatnie poprzedzone s± znacznikiem + %,,(i)''). Zak³adamy oczywi¶cie, ¿e ¼ród³a instalacji s± poprawne i~s± + %dostêpne. + +Rysunki~\ref{fig:tlmgr-general-options} i~\ref{fig:tlmgr-paper-options} +pokazuj± zak³adki docz±ce opcji. + +\subsection{Przyk³adowe wywo³ania \cmdname{tlmgr} z~linii poleceñ} + +Po zainstalowaniu \TL{} mo¿na dokonaæ aktualizacji wszystkich pakietów: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +Symulacjê aktualizacji umo¿liwia: +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +b±d¼ tylko wyliczenie, jakie pakiety bêd± aktualizowane: +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} + +Poni¿szy przyk³ad dodaje kolekcjê zawieraj±c± m.in. nowy ,,silnik'' \XeTeX, + %z~innego ni¿ domy¶lne po³o¿enia ¼ród³a + z~lokalnego repozytorium instalacji: + +\begin{alltt} +> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +co pokazuj± komunikaty (tu w skrócie): +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2012/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} + +Jak widaæ, \prog{tlmgr} instaluje wszystkie pakiety zale¿ne, a tak¿e +przeprowadza wymagane czynno¶ci poinstalacyjne, jak aktualizacja bazy +danych, budowa plików formatów itp. (w przyk³adzie wygenerowali¶my +nowy format dla \XeTeX). + +Aby wy¶wietliæ informacjê o~pakiecie (kolekcji b±d¼ schemacie), nale¿y +uruchomiæ np.: +\begin{alltt} +> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +co poka¿e: +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +\noindent +\textbf{Uwaga:} pe³na dokumentacja programu \cmdname{tlmgr} dostêpna +jest pod adresem: +\url{http://tug.org/texlive/tlmgr.html} lub po uruchomieniu: +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + +\section{Uwagi dotycz±ce Windows} +\label{sec:windows} + +%\TL\ posiada tylko jeden program instalacyjny, dzia³aj±cy zarówno w~Unix, +%jak i~w~Windows. Stworzenie takiego programu by³o mo¿liwe dopiero +%po zaniechaniu wsparcia dla starszych wersji Windows. Obecnie +%\TL\ mo¿na instalowaæ tylko w~Windows 2000 i~nowszych. + +\subsection{Cechy specyficzne w~systemie Windows} +\label{sec:winfeatures} + +W systemie Windows program instalacyjny wykonuje kilka dodatkowych czynno¶ci: +\begin{description} +\item[Menu i skróty.] W~menu systemowym instalowane jest podmenu ,,\TL'', + które zawiera kilka pozycji dla programów dzia³aj±cych w~trybie graficznym + (\prog{tlmgr}, \prog{texdoctk}, PS\_View -- przegl±darka plików + postscriptowych) oraz dokumentacji. + %Dla PS\_View tworzony jest tak¿e + %skrót (ikona) na pulpicie, umo¿liwiaj±cy ,,przeci±ganie\dywiz upuszczanie'' + %na ikonie plików postscriptowych. +\item[Skojarzenia typów plików.] Je¶li wybrano tê opcjê, + \prog{TeXworks}, \prog{Dviout} oraz \prog{PS\_view} otwieraj± domy¶lne + dla tych programów typy plików (lub, przy klikniêciu prawym klawiszem + myszy na danym pliku, proponuj± ,,Otwórz'' i wybór programu). +\item[Konwerter bitmap do EPS.] Dla ró¿nych formatów graficznych plików + bitmapowych klikniêcie prawym klawiszem myszy wy¶wietla w~menu ,,Otwórz'' + \cmdname{bitmap2eps}. Bitmap2eps jest prostym skryptem, który pozwala + na wybór programu \cmdname{sam2p} b±d¼ \cmdname{bmeps}. +\item[Automatyczne ustawienie zmiennych ¶rodowiska.] + Po instalacji nie s± wymagane ¿adne ,,rêczne'' zmiany ustawieñ. +\item[Odinstalowanie.] Program instalacyjny rejestruje instalacjê +w~menu ,,Dodaj/Usuñ programy'' w~Panelu sterowania; odinstalowanie +odbywa siê zatem w~standardowy dla Windows sposób. +\end{description} + +%\subsection{Program Dviout} +% +%Obecne wydanie \TL{} nie oferuje niestety preinstalowanego programu do +%podgl±du plików \acro{DVI} dla Windows, mo¿na jednak samodzielnie +%zainstalowaæ doskona³y \prog{dviout}, autorstwa Toshio Oshimy. Znajdziemy go +%w~katalogu \path{support/dviout/}, zawieraj±cym równie¿ krótki plik +%\filename{README} omawiaj±cy, jak zaistalowaæ i~skonfigurowaæ \prog{dviout} +%dla \TL. Przed instalacj± zalecamy przeczytaæ informacje tam zawarte. +% +%Pierwsze uruchomienie \verb+dviout+ zazwyczaj automatycznie generuje wymagane +%fonty ekranowe. Po kilku sesjach komunikaty dotycz±ce generowania fontów +%stan± siê rzadsze. Wiêcej informacji mo¿na znale¼æ w~bardzo dobrym +%poradniku \emph{on-line} tego programu. + +\subsection{User Profile to inaczej Home (katalog domowy)} +\label{sec:winhome} + +Odpowiednikiem uniksowego katalogu domowego u¿ytkownika (|$HOME|) jest +w~Windows katalog okre¶lany zmienn± \verb|%USERPROFILE%|. W~Windows XP jest +to zazwyczaj katalog \verb|C:\Documents and Settings\| +\verb||, +za¶ w~Windows Vista i~Windows~7 katalog +\verb|C:\Users\|. W~pliku konfiguracyjnym +\filename{texmf.cnf} i~bibliotekach \KPS{} znak \verb|~| jest poprawnie +rozwijany do odpowiedniej zmiennej zarówno w~Windows, jak i~w~Unix/Linux. + +\subsection{Rejestr Windows} +\label{sec:registry} + +W systemie Windows prawie wszystkie dane konfiguracyjne przechowywane s± +w~tzw. rejestrze. Zawiera on hierachicznie zorganizowane klucze, w~ramach +kilku kluczy g³ównych. Najbardziej istotne dla programów instalacyjnych +s± klucze \path{HKEY_CURRENT_USER} oraz \path{HKEY_LOCAL_MACHINE} +(w~skrócie \path{HKCU} i~\path{HKLM}). Czê¶æ \path{HKCU} dotyczy katalogów +domowych u¿ytkowników (patrz~\ref{sec:winhome}), za¶ \path{HKLM} -- podkatalogów +systemowych (w~katalogu Windows). + +Informacje o~ustawieniach systemu mo¿na czasem uzyskaæ ze zmiennych +¶rodowiska, ale po inne informacje, np. po³o¿enie tzw. skrótów, trzeba +odwo³aæ siê do rejestru. Tak¿e zapis zmiennych ¶rodowiska na sta³e wymaga +dostêpu do rejestru. + +\subsection{Uprawnienia w Windows} +\label{sec:winpermissions} + +%%! UWAGA SW: ca³a ta czê¶æ jest mocno niejasna w oryginale. T³umaczy³em +%%! j± maj±c na uwadze ogólny sens, w niektórych miejscach doprecyzowuj±c +%%! sformu³owania. Ale i tak jest, wg mnie, do bani :-) + +W nowszych wersjach Windows istnieje wyra¼ne rozró¿nienie miêdzy +u¿ytkownikami ,,zwyk³ymi'' i~administratorami, maj±cymi +pe³n± swobodê dostêpu do ca³o¶ci systemu. + %%! ??? + %In practice, though, you could better describe + %these classes of users as unprivileged users and normal users: being an + %administrator is the rule, not the exception. + Do³o¿ono wielu starañ, aby umo¿liwiæ instalacjê \TL{} tak¿e osobom bez + uprawnieñ administratora. + +Je¶li osoba instaluj±ca jest administratorem, to udostêpniona jest opcja +instalacji dla wszystkich u¿ytkowników. U¿ycie jej oznacza, ¿e tworzone s± +skróty, a tak¿e ustawiane s± zmienne ¶rodowiska dla ca³ego systemu. +W~przeciwnym wypadku skróty i~menu s± tworzone jedynie dla konkretnego +u¿ytkownika, tak¿e definiowane zmienne ¶rodowiska dotycz± zwyk³ych +u¿ytkowników. + %Maj±c uprawnienia admistratora mo¿emy zainstalowaæ \TL{} tylko + %dla u¿ytkowników; nale¿y wtedy uruchomiæ \prog{install-tl} z~parametrem + %\optname{-non-admin}. + +Bez wzglêdu na status u¿ytkownika proponowanym, domy¶lnym katalogiem g³ównym +instalacji, jest katalog w~ramach \verb|%SystemDrive%|. Program instalacyjny +zawsze sprawdza, czy ten katalog jest dostêpny do zapisu dla aktualnego +u¿ytkownika. + +Problem mo¿e siê pojawiæ wtedy, gdy u¿ytkownik instaluj±cy \TL{} nie jest +administratorem, a~programy \TeX-owe s± ju¿ w~¶cie¿ce przeszukiwania. +Wynikowa ¶cie¿ka zawiera wtedy ¶cie¿kê systemow±, do której dodano ¶cie¿kê do +programów u¿ytkownika. W~konsekwencji nie bêd± znajdowane nowo instalowane +programy. Aby rozwi±zaæ ten problem, program instalacyjny tworzy skrót do +okna z~wierszem poleceñ, w~którym ¶cie¿ka do nowych programów \TL{} ma +priorytet. W~ten sposób, po uruchomieniu tego skrótu, bêdzie mo¿na korzystaæ +z~\TL. Dotyczy to tak¿e programu \TeX{}works, o ile go zainstalowali¶my. + +Windows Vista i Windows~7 stwarzaj± dodatkowe utrudnienia: nawet je¶li +jeste¶my zalogowani jako administrator, musimy dodatkowo ¿±daæ uprawnieñ do +uruchomienia programów jako administrator! W rzeczywisto¶ci nie ma sensu +logowanie jako administrator, zamiast tego wystarczy klikn±æ prawym klawiszem +myszy na programie (lub skrócie), co pozwala wybraæ opcjê ,,Uruchom jako +administrator''. + +\subsection{Zwiêkszanie maksymalnej ilo¶ci dostêpnej pamiêci +w~Windows i~Cygwin} +\label{sec:cygwin-maxmem} + +U¿ytkownicy systemów Windows i~Cygwin mog± w~przypadku uruchamiania +niektórych programów dostarczonych w~\TL{} spotkaæ siê z~niewystarczaj±c± +ilo¶ci± dostêpnej pamiêci. Na przyk³ad \prog{asy} wyczerpie dostêpn± pamiêæ +w~przypadku próby zadeklarowania macierzy sk³adaj±cej siê z~25~milionów liczb +rzeczywistych, a~Lua\TeX\ przy przetwarzaniu dokumentu zawieraj±cego wiele +du¿ych czcionek. + % XXX "du¿ych" jest brzydkie, ale nie mam lepszego pomys³u :/ + +W~Cygwin mo¿na ten problem rozwi±zaæ w~sposób podany za porad± zawart± +w~Podrêczniku U¿ytkownika Cygwin +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +W~Windows nale¿y utworzyæ plik, np. \code{moremem.reg}, o~zawarto¶ci: +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +\noindent a~nastêpnie wykonaæ (jako u¿ytkownik z~prawami administratora) +polecenie: \code{regedit /s moremem.reg}. Zamiast ustawieñ globalnych dla +systemu, mo¿na te¿ zmieniæ wielko¶æ dostêpnej pamiêci jedynie dla bie¿±cego +u¿ytkownika, u¿ywaj±c \code{HKEY\_CURRENT\_USER}. + +\section{W razie problemów} +\label{troubleshooting} + +\subsection{Co zrobiæ gdy \texttt{latex} nie mo¿e znale¼æ potrzebnych +plików?} + +\begin{itemize} + \item Podstawowym narzêdziem do diagnozowania problemów jest program + \cmdname{kpsewhich}. Wyprowadza on informacje diagnostyczne na wyj¶cie +stderr, przy czym konsole (okienka wierszy poleceñ) starszych systemów +Windows nie potrafi± przekierowaæ stderr do pliku. Umo¿liwia to dopiero +system Windows NT i~pó¼niejsze, ale rozwi±zanie przedstawione poni¿ej dzia³a +dla ka¿dej konsoli (okienka wierszy poleceñ). Otó¿ dla celów diagnostycznych +mo¿na tymczasowo zdefiniowaæ zmienn± ¶rodowiska (w~oknie poleceñ): +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=err.log +\end{verbatim} +Mo¿na równie¿ zadaæ zakres diagnostyki: +\begin{verbatim} +SET KPATHSEA_DEBUG=-1 +\end{verbatim} + +Podobnie, aby przekierowaæ wyj¶cie stderr na stdout: +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=con: +\end{verbatim} +W ten sposób mo¿na skierowaæ zarówno stderr, jak i stdout do tego samego pliku. +\item Przy za³o¿eniu, ¿e instalacjê wykonano w \path|c:/TeX|, nale¿y + sprawdziæ (porównaæ) nastêpuj±ce warto¶ci:\\ + {\small + \begin{tabular}{ll} + \path|kpsewhich -expand-path $SELFAUTOPARENT| & \path|c:/TeX| \\ + \path|kpsewhich -expand-path $TEXMF| & \path|c:/TeX/texmf....| \\ + \path|kpsewhich -expand-var $TEXINPUTS| & \path|.;c:/TeX/texmf/tex//| + \end{tabular} +} + +Je¶li w otoczeniu systemowym s± zdefiniowane zmienne zwi±zane z~\TeX-em, +nale¿y je usun±æ, maj± bowiem pierwszeñstwo przed tymi, +które okre¶lono w~pliku \filename{texmf.cnf}. +\item Nastêpnie nale¿y sprawdziæ (porównaæ) warto¶ci:\\ +{\small + \begin{tabular}{ll} + \texttt{kpsewhich cmr10.tfm} & \path|c:/TeX/texmf-dist/fonts/tfm/public/cm/cmr10.tfm|\\ + \texttt{kpsewhich latex.fmt}& \path|c:/TeX/texmf-var/web2c/pdftex/latex.fmt| + \end{tabular} +} + +Je¶li podczas sprawdzania nie znaleziono odstêpstw, to \TeX{} i~programy +towarzysz±ce powinny dzia³aæ. Je¶li tak nie jest, to nale¿y poeksperymentowaæ +z opcj± \path|-debug=n| programu \path|kpsewhich| i~zweryfikowaæ wszystkie +uzyskane warto¶ci. Po zidentyfikowaniu problemu warto go zg³osiæ. +\end{itemize} + +%-------------------------- +% don't use \Webc so the \uppercase in the headline works. +\section{Instrukcja obs³ugi systemu Web2C} + +\Webc{} to zestaw programów zwi±zanych z~\TeX-em, tj. sam \TeX{}, \MF{}, +\MP, \BibTeX{} itd. Stanowi± one rdzeñ dystrybucji \TL. + +Oryginalna implementacja wykonana zosta³a przez Tomasa Rokickiego, który +w~roku 1987 stworzy³ pierwszy system \TeX{}-to-C, adaptuj±c pliki wymiany +(\emph{change files}) pod Unix-em (pierwotnie by³y one dzie³em Howarda +Trickey'a oraz Pavela Curtisa). W~czasie, gdy Tim Morgan zajmowa³ siê +systemem, jego nazwa zosta³a zmieniona na Web-to-C\@. W~1990 roku prace nad +projektem przej±³ Karl Berry wraz z~dziesi±tkami wspó³pracowników, a~w~roku +1997 pa³eczkê przej±³ Olaf Weber. + +\Webc{} dzia³a na platformach systemowych, takich jak Unix (w~tym \MacOSX), +Windows 9x/\acro{NT/2K/XP} i~innych. +System wykorzystuje oryginalne ¼ród³a \TeX-owe autorstwa Donalda Knutha +oraz inne programy napisane w~\web{} i~t³umaczy je na kod ¼ród³owy~C. +Ponadto system udostêpnia spory zestaw makr i~funkcji stworzonych dla +zwiêkszenia funkcjonalno¶ci oryginalnych zasobów oprogramowania +zwi±zanego z~\TeX-em. Podstawowymi sk³adnikami systemu s±: + +\begin{cmddescription} +\item[bibtex] tworzenie spisów bibliograficznych; +\item[dvicopy] modyfikowanie pliku \dvi; +\item[dvitomp] konwersja \dvi{} do MPX (rysunki \MP{}-owe); +\item[dvitype] konwersja \dvi{} na plik tekstowy (ASCII); +\item[gftodvi] zamiana fontu GF na plik \dvi; +\item[gftopk] zamiana fontu w~formacie GF na font spakowany (PK); +\item[gftype] zamiana fontu GF na plik tekstowy (ASCII); +\item[mf] generowanie fontów bitmapowych w formacie GF; +\item[mft] sk³ad plików ¼ród³owych \MF{}-a; +\item[mpost] tworzenie rysunków oraz diagramów technicznych; +\item[patgen] tworzenie wzorców przenoszenia wyrazów; +\item[pktogf] zamiana fontów w formacie PK na fonty GF; +\item[pktype] zamiana fontu PK na plik tekstowy (ASCII); +\item[pltotf] konwersja tekstowej listy w³a¶ciwo¶ci do TFM; +\item[pooltype] wy¶wietlanie \web-owych plików pool; +\item[tangle] konwersja \web{} do jêzyka Pascal; +\item[tex] sk³ad tekstu; +\item[tftopl] konwersja TFM do tekstowej listy w³a¶ciwo¶ci (PL); +\item[vftovp] konwersja fontów wirtualnych do wirtualnej listy + w³a¶ciwo¶ci (VPL); +\item[vptovf] konwersja wirtualnej listy w³a¶ciwo¶ci do fontów wirtualnych; +\item[weave] konwersja \web{} do \TeX-a. +\end{cmddescription} + +\noindent +Dok³adny opis funkcji oraz sk³adni tych programów zawarty jest +w~dokumentacji poszczególnych pakietów samego \Webc{}. +Do optymalnego korzystania z~instalacji \Webc{} +przyda siê znajomo¶æ kilku zasad rz±dz±cych ca³± rodzin± programów. + +Wszystkie programy obs³uguj± standardowe opcje \acro{GNU}: +\begin{description} +\item[\texttt{-{}-help\ \ \ }] podaje podstawowe zasady u¿ytkowania; +\item[\texttt{-{}-verbose}] podaje dok³adny raport z~dzia³ania programu; +\item[\texttt{-{}-version}] podaje informacjê o~wersji, po czym koñczy + dzia³anie programu. +\end{description} + +Do lokalizowania plików programy oparte na \Webc{} u¿ywaj± biblioteki do +przeszukiwania ¶cie¿ek zwanej \KPS{}. +Dla optymalizacji przeszukiwania \TeX-owego drzewa podkatalogów biblioteka ta +u¿ywa kombinacji zmiennych ¶rodowiskowych oraz kilku plików konfiguracyjnych. +\Webc{} potrafi obs³ugiwaæ jednocze¶nie wiêcej ni¿ jedno drzewo +podkatalogów, co jest u¿yteczne w~wypadku, gdy chce siê przechowywaæ +standardow± dystrybucjê \TeX-a jak i~lokalne rozszerzenia w~dwóch ró¿nych +drzewach katalogów. +Aby przyspieszyæ poszukiwanie plików, katalog g³ówny ka¿dego drzewa ma swój +plik \file{ls-R}, zawieraj±cy pozycje okre¶laj±ce nazwê i~wzglêdn± ¶cie¿kê +dla wszystkich plików zawartych w~tym katalogu. + +\subsection{Przeszukiwanie ¶cie¿ek przez Kpathsea} +\label{sec:kpathsea} + +Opiszemy najpierw ogólny mechanizm przeszukiwania ¶cie¿ek przez bibliotekê +\KPS{}. + +Tym, co nazywamy \emph{¶cie¿k± przeszukiwania}, jest rozdzielona dwukropkami +lub ¶rednikami lista \emph{elementów ¶cie¿ki}, które zasadniczo s± nazwami +podkatalogów. ¦cie¿ka przeszukiwania mo¿e pochodziæ z~(kombinacji) wielu +¼róde³. Przyk³adowo, aby odnale¼æ plik \samp{my-file} w~¶cie¿ce +\samp{.:/dir}, \KPS{} sprawdza istnienie danego elementu ¶cie¿ki +w~nastêpuj±cej kolejno¶ci: najpierw \file{./my-file}, potem +\file{/dir/my-file}, zwracaj±c pierwszy odnaleziony (lub mo¿liwie wszystkie). + +Aby optymalnie zaadaptowaæ siê do konwencji wszystkich systemów operacyjnych, +na systemach nieunixowych \KPS{} mo¿e u¿ywaæ +jako separatorów nazw ¶cie¿ek znaków innych +ni¿ dwukropek (\samp{:}) oraz ,,ciach'' (\samp{/}). + +W~celu sprawdzenia konkretnego elementu \var{p} ¶cie¿ki, \KPS{} najpierw +sprawdza, czy zbudowana wcze¶niej baza danych (patrz ,,Baza nazw plików'' na +str.~\pageref{Filename-database}) odnosi sie do \var{p}, tj. +czy baza danych znajduje siê w~podkatalogu z~prefiksem~\var{p}. +Je¿eli tak, to specyfikacja ¶cie¿ki jest porównywana z~zawarto¶ci± bazy. + +Je¶li baza danych nie istnieje b±d¼ nie odnosi siê do danego elementu +¶cie¿ki albo te¿ nie zawiera elementów zgodnych, to przeszukiwany jest system +plików (je¿eli nie zosta³o to zabronione przez specyfikacjê rozpoczynaj±c± +siê od~\samp{!!}\ oraz je¿eli poszukiwany plik musi istnieæ). +\KPS{} konstruuje listê podkatalogów, które koresponduj± z~danym elementem +¶cie¿ki, a~nastêpnie sprawdza w~ka¿dym z~nich, czy nie ma tam poszukiwanego +pliku. + +Warunek mówi±cy, ¿e ,,plik musi istnieæ'' dotyczy np. plików \samp{.vf} +i~plików do³±czanych \TeX-owym poleceniem \cs{openin}. +Takiego pliku mo¿e nie byæ (np. \file{cmr10.vf}), b³êdne by³oby zatem +poszukiwanie go na dysku. +Je¶li wiêc zapomnisz o~aktualizacji \file{ls-R} po instalacji nowego +pliku \samp{.vf}, to nie zostanie on odnaleziony. +Ka¿dy element ¶cie¿ki sprawdzany jest w~nastêpuj±cej kolejno¶ci: najpierw +w~bazie danych, potem na dysku. +Je¿eli plik siê znajdzie, to przeszukiwanie zostanie zatrzymane i~zwrócony +zostanie wynik. + +Poniewa¿ najprostszym i~najbardziej powszechnym elementem ¶cie¿ki jest +nazwa katalogu, \KPS{} korzysta z~dodatkowych mo¿liwo¶ci w~przeszukiwaniu +¶cie¿ek: +wielowarstwowych warto¶ci domy¶lnych, zmiennych ¶rodowiskowych, warto¶ci +pliku konfiguracyjnego, lokalnych +podkatalogów u¿ytkownika oraz rekursywnego przeszukiwania podkatalogów. +Mo¿na wiêc powiedzieæ, ¿e \KPS{} \emph{rozwija} element ¶cie¿ki, tzn. +transformuje wszystkie specyfikacje do podstawowej nazwy lub nazw katalogów. +Jest to opisane w~kolejnych akapitach, w~kolejno¶ci w~jakiej to zachodzi. + +Trzeba zauwa¿yæ, ¿e je¿eli nazwa poszukiwanego pliku jest +absolutna lub jawnie wzglêdna, tj. zaczyna siê od \samp{/} lub \samp{./} +lub \samp{../}, to \KPS{} ogranicza siê do sprawdzenia, czy ten plik istnieje. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{Przyk³ad pliku konfiguracyjnego} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{¬ród³a ¶cie¿ek} +\label{Path-sources} + +Nazwa przeszukiwanej ¶cie¿ki mo¿e pochodziæ z~wielu ¼róde³. +Oto kolejno¶æ, w~jakiej \KPS{} ich u¿ywa: + +\begin{enumerate} +\item + Zmienna ¶rodowiskowa ustawiana przez u¿ytkownika, np. + \envname{TEXINPUTS}. + Zmienne ¶rodowiskowe z~do³±czon± kropk± i~nazw± programu zastêpuj± inne, + np. je¿eli \samp{latex} jest nazw± uruchomionego programu, wtedy zamiast + \envname{TEXINPUTS} wykorzystana zostanie zmienna \envname{TEXINPUTS.latex}. +\item + Plik konfiguracyjny konkretnego programu, np. linia ,,\texttt{S /a:/b}'' + w~pliku \file{config.ps} programu \cmdname{dvips}. +\item Plik konfiguracyjny \KPS{} \file{texmf.cnf}, zawieraj±cy tak± liniê, + jak \samp{TEXINPUTS=/c:/d} (patrz poni¿ej). +\item Warto¶ci domy¶lne dla uruchamianych programów. +\end{enumerate} +\noindent Ka¿d± z~tych warto¶ci dla danej ¶cie¿ki przeszukiwania mo¿na +zobaczyæ, u¿ywaj±c opcji diagnostyki b³êdów (patrz ,,Diagnostyka b³êdów'' na +str.~\pageref{sec:debugging}). + +\subsubsection{Pliki konfiguracyjne} + +\tolerance=3500 + \KPS{} szuka ¶cie¿ek przeszukiwania i~innych definicji w~\emph{plikach +konfiguracyjnych} o~nazwach \file{texmf.cnf}. +¦cie¿ka przeszukiwania u¿ywana do znajdowania tych plików okre¶lana jest +przez zmienn± \envname{TEXMFCNF}, + %(domy¶lnie taki plik znajduje siê + %w~podkatalogu \file{texmf/web2c}). + ale nie zalecamy jawnego ustawiania tej, jak i~innych zmiennych w~systemie. +Zamiast tego typowa instalacja \TL{} tworzy plik \file{.../2012/texmf.cnf}, +który w~wyj±tkowych wypadkach mo¿emy modyfikowaæ. G³ównym plikiem +konfiguracyjnym jest \file{.../2012/texmf/web2c/texmf.cnf}, ale +nie powinien byæ on modyfikowany, gdy¿ + %wprowadzone ewentualne + zmiany bêd± utracone podczas aktualizacji. + +Czytane bêd± \emph{wszystkie} pliki \file{texmf.cnf} w~¶cie¿ce +przeszukiwania, a~definicje we wcze¶niejszych plikach zast±pi± te +w~pó¼niejszych. Tak wiêc w~¶cie¿ce \verb|.:$TEXMF| warto¶ci pochodz±ce +z~\file{./texmf.cnf} zast±pi± te z~\verb|$TEXMF/texmf.cnf|. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +Dociekliwy czytelnik mo¿e byæ zainteresowany sposobem, w~jaki programy +znajduj± plik \file{texmf.cnf}, skoro nie ma konieczno¶ci deklarowania +specyficznej zmiennej ¶rodowiskowej systemu. Otó¿ po³o¿enie domy¶lne jest +wkompilowane w~programy jako wzglêdne do ich po³o¿enia (okre¶lanego, jak +wiemy, w~¶cie¿ce specyfikowanej przez \texttt{\$PATH}): +\path{../../texmf/web2c/} b±d¼ \path{../texmf/web2c/}. Je¶li jawnie +deklarujemy zmienn± \envname{TEXMFCNF}, wymagane jest podanie bezwzglêdnej +¶cie¿ki. + +Czytaj±c zamieszczony poni¿ej opis formatu pliku \file{texmf.cnf}, +warto przegl±daæ jego zawarto¶æ. Po³o¿enie \emph{aktywnego} pliku +znajdziemy za pomoc± polecenia \texttt{kpsewhich texmf.cnf}. + +\begin{itemize} +\item + Komentarze zaczynaj± siê od ,,\texttt{\%}'', a~koñcz± na koñcu wiersza. +\item + Puste wiersze nie s± brane pod uwagê. +\item + Znak ,,\bs{}'' na koñcu wiersza dzia³a jako znak kontynuacji, tzn. + oznacza, ¿e kolejny wiersz jest kontynuacj± bie¿±cego. + Spacja na pocz±tku kolejnego wiersza nie jest ignorowana. +\item + Pozosta³e wiersze maj± postaæ: +\begin{alltt} + \emph{zmienna}[.\emph{program}] [=] \emph{warto¶æ} +\end{alltt}% + gdzie \samp{=} i~otaczaj±ce spacje s± opcjonalne. +\item + ,,\texttt{\var{zmienna}}'' zawieraæ mo¿e dowolne znaki poza spacj±, + \samp{=}, lub \samp{.} (kropk±), najbezpieczniej jednak u¿ywaæ znaków + z~zakresu \samp{A-Za-z\_}. +\item + Napis ,,\texttt{.\var{program}}'' ma zastosowanie w~wypadku, gdy + uruchamiany program nosi nazwê \texttt{\var{program}} lub + \texttt{\var{program}.exe}. Pozwala to ró¿nym odmianom \TeX-a stosowaæ + ró¿ne ¶cie¿ki przeszukiwania. +\item ,,\texttt{\var{warto¶æ}}'' zawieraæ mo¿e dowolne znaki poza + ,,\texttt{\%}'' i \samp{@}. + Nie mo¿na u¿ywaæ konstrukcji ,,\texttt{\$\var{zmienna}.\var{program}}'' + po prawej stronie. Zamiast tego trzeba zastosowaæ zmienn± pomocnicz±. + Je¿eli systemem operacyjnym jest Unix, + to ¶rednik \samp{;}\ u¿yty w~,,\texttt{\var{warto¶æ}}'' zamieniany jest na + \samp{:}; umo¿liwia to istnienie + wspólnego pliku \file{texmf.cnf} dla systemów Unix oraz Windows. +\item + Wszystkie definicje czytane s± zanim cokolwiek zostanie rozwiniête, tak + wiêc do zmiennych mo¿na siê odwo³ywaæ przed ich zdefiniowaniem. +\end{itemize} +Oto fragment pliku konfiguracyjnego ilustruj±cy wiêkszo¶æ opisanych powy¿ej +regu³ notacji: +\ifSingleColumn +\verbatiminput{examples/ex5.tex} +\else +jest pokazany na rys.~\ref{fig:config-sample}. +\fi + +\subsubsection{Rozwijanie ¶cie¿ek} +\label{Path-expansion} + +\KPS{} rozpoznaje w~¶cie¿kach przeszukiwania pewne specjalne znaki oraz +konstrukcje, podobne do tych, które s± dostêpne w~pow³okach systemów +typu Unix. +Jako ogólny przyk³ad: z³o¿ona ¶cie¿ka +\verb+~$USER/{foo,bar}//baz+ rozwija siê do wszystkich podkatalogów pod +katalogami \file{foo} i~\file{bar} w~katalogu g³ównym \texttt{\$USER}, +które zawieraj± katalog lub plik \file{baz}. +Rozwiniêcia te opisane s± w~poni¿szych podrozdzia³ach. + +\subsubsection{Rozwijanie domy¶lne} +\label{Default-expansion} + +\tolerance=2500 +Je¿eli ¶cie¿ka przeszukiwania najwiêkszego uprzywilejowania (patrz ,,¬ród³a +¶cie¿ek'' na str.~\pageref{Path-sources}) zawiera +\emph{dodatkowy dwukropek} (np. na pocz±tku, na koñcu lub podwójny), to \KPS{} +wstawia w~tym miejscu nastêpn± zdefiniowan± w~hierarchii uprzywilejowania +¶cie¿kê przeszukiwania. +Je¿eli ta wstawiona ¶cie¿ka ma dodatkowy dwukropek, to dzieje siê dalej to samo. +Przyk³adowo, je¿eli ustawiæ zmienn± ¶rodowiskow± +\tolerance=1500 + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +oraz warto¶æ \code{TEXINPUTS} pobran± z~\file{texmf.cnf} + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +to koñcow± warto¶ci± u¿yt± w~przeszukiwaniu bêdzie: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +Poniewa¿ nieu¿ytecznym by³oby wstawiaæ warto¶æ domy¶ln± w~wiêcej ni¿ jednym +miejscu, \KPS{} zmienia tylko jeden dodatkowy \samp{:}\ i~pozostawia +inne bez zmian. \KPS{} najpierw szuka dwukropków na pocz±tku linii, potem na koñcu, +a~nastêpnie podwójnych. + +\subsubsection{Rozwijanie nawiasów} +\label{sec:brace-expansion} + +U¿yteczna jest mo¿liwo¶æ rozwijania nawiasów, co oznacza, ¿e np. +\verb+v{a,b}w+ rozwija siê do \verb+vaw:vbw+. +Nawiasy mo¿na te¿ zagnie¿d¿aæ. +Funkcji tej mo¿na u¿yæ do zaimplementowania ró¿nych hierarchii \TeX-owych +przez przypisanie listy nawiasów do \code{\$TEXMF}. Przyk³adowo, +w~pliku \file{texmf.cnf} mo¿na znale¼æ nastêpuj±c± (uproszczon± tu) +definicjê: +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +U¿ywaj±c jej, mo¿na nastêpnie napisaæ co¶ w~rodzaju: +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +co oznacza, ¿e po szukaniu w~katalogu bie¿±cym bêd± przeszukane kolejno +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} +i~\code{\$TEXMFMAIN/tex} (wszystkie wraz z~katalogami ni¿szego poziomu; +dwie ostatnie ¶cie¿ki \emph{wy³±cznie} na podstawie zawarto¶ci +pliku \file{ls-R}). +Jest to wygodny sposób na uruchamianie dwóch równoleg³ych struktur \TeX-owych, +jednej ,,zamro¿onej'' (np. na \CD), a~drugiej ci±gle uaktualnianej nowo +pojawiaj±cymi siê wersjami. +U¿ywaj±c zmiennej \code{\$TEXMF} we wszystkich definicjach daje pewno¶æ, +¿e najpierw przeszukiwane jest drzewo uaktualnione. + +\subsubsection{Rozwijanie podkatalogów} +\label{Subdirectory-expansion} + +Dwa lub wiêcej kolejnych ,,ciachów'' (,,/'') w~elemencie ¶cie¿ki, +wystêpuj±cych po nazwie katalogu~\var{d}, zastêpowanych jest przez wszystkie +podkatalogi~\var{d}, najpierw podkatalogi znajduj±ce siê bezpo¶rednio +pod~\var{d}, potem te pod powy¿szymi i~tak dalej. Na ka¿dym etapie +kolejno¶æ, w~jakiej przeszukiwane s± katalogi, jest \emph{nieokre¶lona}. + +Je¶li wyszczególni siê cz³ony nazwy pliku po \samp{//}, to uwzglêdnione zostan± +tylko te podkatalogi, które zawieraj± powy¿sze cz³ony. +Na przyk³ad \samp{/a//b} rozwija siê do katalogów \file{/a/1/b}, +\file{/a/2/b}, \file{/a/1/1/b} itd., ale nie do \file{/a/b/c} czy \file{/a/1}. + +Mo¿liwe jest wielokrotne u¿ycie \samp{//} w~¶cie¿ce, jednak¿e \samp{//} +wystêpuj±ce na pocz±tku ¶cie¿ki nie jest brane pod uwagê. + +\subsubsection{Lista znaków specjalnych i~ich znaczeñ -- podsumowanie} + +Poni¿sza lista podsumowuje znaczenie znaków specjalnych w~plikach +konfiguracyjnych. + +\newcommand{\CODE}[1]{\makebox[2.2em][l]{\code{#1}}} +\begin{description} +\item[\CODE{:}] znak rozdzielaj±cy w~specyfikacji ¶cie¿ki; umieszczony na + pocz±tku lub na koñcu ¶cie¿ki zastêpuje domy¶lne rozwiniêcie ¶cie¿ki; +\item[\CODE{;}] znak rozdzielaj±cy dla systemów nieuniksowych + (dzia³a tak jak ,,\code{:}''); +\item[\CODE{\$}] rozwijanie zmiennej; +\item[\CODE{\string~}] oznacza katalog g³ówny u¿ytkownika; +\item[\CODE{\char`\{\dots\char`\}}] rozwijanie nawiasów, np. + \verb+a{1,2}b+ zmieni siê w~\verb+a1b:a2b+; +\item[\CODE{//}] rozwijanie podkatalogów (mo¿e wyst±piæ gdziekolwiek + w~¶cie¿ce, poza jej pocz±tkiem); +\item[\CODE{\%}] pocz±tek komentarza, obejmuj±cego wszystkie znaki do koñca + linii; +\item[\CODE{\bs}] znak kontynuacji (pozwala na prze³amanie wiersza + z~wyra¿eniem); +\item[\CODE{!!}] przeszukiwanie \emph{tylko} bazy danych, + a~\emph{nie} dysku. +\end{description} + + +\subsection{Bazy nazw plików} +\label{Filename-database} + +Podczas przeszukiwania \KPS{} stara siê zminimalizowaæ dostêp do dysku. +Niemniej, w~przypadku instalacji ze zbyt du¿± liczb± katalogów +przegl±danie ka¿dego dopuszczalnego katalogu w~poszukiwaniu pliku mo¿e +zabieraæ sporo czasu (ma to miejsce zw³aszcza, je¿eli przeszukaæ trzeba setki +katalogów z~fontami). +Dlatego te¿ \KPS{} mo¿e u¿ywaæ zewnêtrznego pliku z~,,baz± danych'' +o~nazwie \file{ls-R}, który zawiera przypisania plików do katalogów. +Unika siê w~ten sposób czasoch³onnego przeszukiwania dysku. + +Drugi plik z~baz± danych -- \file{aliases} -- pozwala na nadawanie +dodatkowych nazw plikom zawartym w~\file{ls-R}. +Mo¿e to byæ pomocne do adaptacji do DOS-owej konwencji ,,8.3'' nazewnictwa +plików w~plikach ¼ród³owych. + +\subsubsection{Baza nazw plików} +\label{ls-R} + +Jak wspomniano, plik zawieraj±cy g³ówn± bazê nazw +plików musi nosiæ nazwê \file{ls-R}. +W~katalogu podstawowym ka¿dej hierarchii \TeX-owej (domy¶lnie \code{\$TEXMF}), +któr± chcemy w³±czyæ w~mechanizm przeszukiwania, umieszczaæ mo¿na po jednym +pliku \file{ls-R}; w~wiêkszo¶ci przypadków istnieje tylko jedna hierarchia. +\KPS{} szuka pliku \file{ls-R} w~¶cie¿ce \code{TEXMFDBS}. + +Najlepszym sposobem stworzenia i~utrzymywania pliku \file{ls-R} jest +uruchomienie skryptu \code{mktexlsr}, bêd±cego sk³adnikiem dystrybucji. +Jest on wywo³ywany przez ró¿ne skrypty typu \samp{mktex...}. +W~zasadzie skrypt ten jedynie wykonuje polecenie +\begin{alltt} +cd \var{/your/texmf/root} && ls -LAR ./ >ls-R +\end{alltt} +zak³adaj±c, ¿e polecenie \code{ls} danego systemu utworzy w³a¶ciwy format +strumienia wyj¶ciowego (\acro{GNU} \code{ls} dzia³a prawid³owo). +Aby mieæ pewno¶æ, ¿e baza danych jest zawsze aktualna, wygodnie jest + przebudowywaæ j± regularnie za pomoc± demona \code{cron}. + %tak ¿e wraz ze zmianami + %w~instalowanych plikach -- np. po instalacji lub uaktualnianiu pakietu + %\LaTeX{} -- plik \file{ls-R} jest uaktualniany automatycznie. + +Je¶li pliku nie ma w~bazie danych, \KPS{} domy¶lnie przechodzi do +przeszukiwania dysku. Je¿eli jednak dany element ¶cie¿ki zaczyna sie od +\samp{!!}, to w~poszukiwaniu tego elementu sprawdzona zostanie \emph{jedynie} +baza danych, a~nigdy dysk. + +\subsubsection{kpsewhich -- program do przeszukiwania ¶cie¿ek} +\label{Invoking-kpsewhich} + +Przeszukiwanie ¶cie¿ek przez program \texttt{kpsewhich} jest niezale¿ne od +jakiejkolwiek aplikacji. +Mo¿e on byæ przydatny jako rodzaj programu \code{find}, za pomoc± którego +lokalizowaæ mo¿na pliki w~hierarchiach \TeX-owych (jest on u¿ywany +intensywnie w~skryptach \samp{mktex...} tej dystrybucji). + +\begin{alltt} +> \Ucom{kpsewhich \var{opcje}\dots{} \var{nazwa-pliku}\dots{}} +\end{alltt} +Parametry wyszczególnione w~,,\texttt{\var{opcje}}'' mog± zaczynaæ siê zarówno od +\samp{-}, jak i~od \samp{-{}-}, a~dozwolony jest ka¿dy jednoznaczny skrót. + +\KPS{} traktuje ka¿dy argument niebêd±cy parametrem jako nazwê pliku +i~zwraca pierwsz± odnalezion± nazwê. +Nie ma parametru nakazuj±cego zwracanie wszystkich nazw plików o~okre¶lonej +nazwie (w~tym celu mo¿na wykorzystaæ Unix-owy program \samp{find}). + +Oto wa¿niejsze parametry. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{}\\* + Ustaw rozdzielczo¶æ na ,,\texttt{\var{num}}''; ma to tylko wp³yw na + przeszukiwanie fontów \samp{gf} i~\samp{pk}. Dla zgodno¶ci + z~\cmdname{dvips} parametr + \samp{-D} dzia³a identycznie. Domy¶ln± warto¶ci± jest 600. +\item[\texttt{-{}-format=\var{nazwa}}]\mbox{}\\ + Ustawienie formatu (typu pliku) przeszukiwania na ,,\texttt{\var{nazwa}}''. + Domy¶lnie format odgadywany jest z~nazwy pliku. + Dla formatów, które nie maj± przydzielonego jednoznacznego rozszerzenia, + takich jak niektóre pliki \MP{}-owe czy pliki konfiguracyjne + \cmdname{dvips}-a, nale¿y wyszczególniæ nazwê, których listê wy¶wietli + uruchomienie \texttt{kpsewhich -{}-help}. + +\item[\texttt{-{}-mode=\var{napis}}]\mbox{}\\* + Ustaw nazwê trybu na ,,\texttt{\var{napis}}''; dotyczy to jedynie szukania + fontów \samp{gf} oraz \samp{pk}. + Brakuje warto¶ci domy¶lnej -- odnaleziony zostanie dowolny + wyszczególniony tryb. +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Zrób wszystko co mo¿liwe, aby odnale¼æ pliki, w³±czaj±c w~to przede wszystkim + przeszukanie dysku. + Domy¶lnie, w~celu zwiêkszeniu efektywno¶ci dzia³ania, sprawdzana jest + tylko baza \file{ls-R}. +\item[\texttt{-{}-path=\var{napis}}]\mbox{}\\ + Szukaj w~¶cie¿ce ,,\texttt{\var{napis}}'' (rozdzielonej, jak + zwykle, dwukropkami), zamiast zgadywaæ ¶cie¿kê przeszukiwania z~nazwy + pliku. + \samp{//} i~wszystkie zwyk³e rozszerzenia s± mo¿liwe. + Parametry \samp{-{}-path} oraz \samp{-{}-format} wzajemnie siê wykluczaj±. +\item[\texttt{-{}-progname=\var{nazwa}}]\mbox{}\\ + Ustaw nazwê programu na ,,\texttt{\var{nazwa}}''. + Mo¿e to mieæ wp³yw na ¶cie¿kê przeszukiwania poprzez + ,,\texttt{.\var{program}}'' w~plikach konfiguracyjnych. + Ustawieniem domy¶lnym jest \samp{kpsewhich}. +\item[\texttt{-{}-show-path=\var{nazwa}}]\mbox{}\\ + Pokazuje ¶cie¿kê u¿ywan± do poszukiwania plików typu + ,,\texttt{\var{nazwa}}''. + U¿yæ mo¿na zarówno rozszerzenia (\samp{.pk}, \samp{.vf}, etc.), jak + i~nazwy pliku, tak jak w~wypadku parametru \samp{-{}-format}. +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + ustawia parametry wykrywania b³êdów na ,,\texttt{\var{num}}''. +\end{ttdescription} + +%Zmienne ¶rodowiskowe domy¶lnie ustawiane s± w~pliku konfiguracyjnym +%\file{texmf.cnf}. W~wypadku gdy chce siê uniewa¿niæ warto¶ci zmiennych +%wyszczególnione w~tym pliku, mo¿na narzuciæ ich ustawienie w~¶rodowisku, +%w~którym uruchamiane s± programy. + +\subsubsection{Przyk³ady u¿ycia} +\label{SExamplesofuse} + +Przyjrzyjmy sie teraz, jak dzia³a \KPS{}. + +\begin{alltt} +> \Ucom{kpsewhich article.cls} +/usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +Szukamy tu pliku \file{article.cls}. +Poniewa¿ rozszerzenie \samp{.cls} jest jednoznaczne, nie musimy zaznaczaæ, ¿e +poszukujemy pliku typu ,,tex'' (katalogi plików ¼ród³owych \TeX-a). +Znajdujemy go w~podkatalogu \file{tex/latex/base}, pod katalogiem nadrzêdnym +\samp{texmf-dist}. +Podobnie wszystkie poni¿sze pliki odnajdywane s± bez\-pro\-ble\-mo\-wo +dziêki swoim jednoznacznym rozszerzeniom: +\begin{alltt} +> \Ucom{kpsewhich array.sty} +/usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} +/usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} +/usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} +/usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} +/usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +\noindent (ostatni plik to \BibTeX-owa baza bibliograficzna dla artyku³ów +\textsl{TUGBoat}). + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Pliki czcionek bitmapowych typu \file{.pk} u¿ywane s± przez sterowniki, + % ??? dvips to chyba nie przegl±darka --- + % w oryg. by³o display programs like dvips... + takie jak \cmdname{dvips} czy \cmdname{xdvi}. +W~tym wypadku wynik przeszukiwania oka¿e siê pusty, poniewa¿ +w~systemie brak gotowych wygenerowanych czcionek \samp{.pk} Computer Modern +(wynika to z~faktu u¿ywania w~\TL{} fontów PostScript-owych Type1). +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +..... wsuipa/wsuipa10.600pk +\fi\end{alltt} +Dla tych fontów (alfabetu fonetycznego) musieli¶my wygenerowaæ pliki +\samp{.pk}, a~poniewa¿ domy¶lnym \MF{}-owym trybem naszej instalacji jest +\texttt{ljfour} z~podstawow± rozdzielczo¶ci± 600dpi, zwracany jest taki +w³a¶nie wynik. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +W~tym wypadku, kiedy zaznaczamy, ¿e interesuje nas rozdzielczo¶æ +300dpi (\texttt{-dpi=300}), to widzimy, ¿e w~naszej instalacji taka +czcionka nie jest dostêpna. +Program taki jak \cmdname{dvips} czy \cmdname{xdvi} zatrzyma³by siê, aby +utworzyæ pliki \texttt{.pk} w~wymaganej rozdzielczo¶ci (u¿ywaj±c skryptu +\cmdname{mktexpk}). + +Przeanalizujmy teraz pliki nag³ówkowe i~konfiguracyjne +programu \cmdname{dvips}. +Najpierw szukamy pliku PostScript-owego prologu \file{tex.pro}, +wykorzystywanego dla potrzeb \TeX-a. Drugi przyk³ad pokazuje +poszukiwanie pliku konfiguracyjnego \file{config.ps}, za¶ trzeci -- +szukanie pliku mapy czcionek PostScriptowych \file{psfonts.map} +(pocz±wszy od obecnej edycji, pliki \file{.map} i~\file{.enc} +maj± w³asne regu³y przeszukiwania ¶cie¿ek i~zmienione po³o¿enie w~ramach +drzew \dirname{texmf}). +Poniewa¿ rozszerzenie \samp{.ps} nie jest jednoznaczne, musimy +wyra¼nie zaznaczyæ, jaki typ jest wymagany dla pliku +\texttt{config.ps} (,,\texttt{dvips config}''). +\begin{alltt} +> \Ucom{kpsewhich tex.pro} +/usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} +/usr/local/texmf-var/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} +/usr/local/texmf-var/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +Nastêpnie przyjrzyjmy siê bli¿ej plikom pomocniczym fontów Times z~kolekcji +URW. W~standardzie nazewnictwa fontów maj± one prefiks \samp{utm}. +Pierwszy plik, którego szukamy, to plik konfiguracyjny, zawieraj±cy nazwê +pliku z~przemapowaniem fontów: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +W~pliku tym znajduje siê wiersz: +\begin{alltt} + p +utm.map +\end{alltt} +wskazuj±cy na plik \file{utm.map}, który chcemy zlokalizowaæ w~nastêpnej +kolejno¶ci: +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +Plik z~przemapowaniem definiuje nazwy czcionek PostScriptowych Type1 +w~zestawie fontów URW, za¶ jego zawarto¶æ wygl±da nastêpuj±co +(pokazane s± tylko fragmenty wierszy): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +Powy¿sze przyk³ady pokazuj±, jak ³atwo mo¿na znajdowaæ lokalizacjê danego +pliku. Jest to wa¿ne zw³aszcza wówczas, gdy istnieje podejrzenie, ¿e gdzie¶ +zawieruszy³a siê b³êdna wersja jakiego¶ pliku; \cmdname{kpsewhich} poka¿e tylko +pierwszy napotkany plik. + +\subsubsection{Diagnostyka b³êdów} +\label{sec:debugging} + +Czasami niezbêdne s± informacje o~tym, jak program sobie radzi +z~odniesieniami do plików. Aby da³o siê je uzyskaæ w~wygodny sposób, +\KPS{} oferuje ró¿ne poziomy diagnostyki b³êdów: +\begin{itemize} +\item[\texttt{\ 1}] wywo³ania \texttt{stat} (testy pliku). Podczas + uruchamiania z~uaktualnion± baz± danych \file{ls-R} nie powinno to + przewa¿nie dawaæ ¿adnego wyniku. +\item[\texttt{\ 2}] Zapis odwo³añ do tablic asocjacyjnych (\emph{hash + tables}), takich jak baza \file{ls-R}, pliki przemapowañ, pliki konfiguracyjne. +\item[\texttt{\ 4}] Operacje otwarcia i~zamkniêcia pliku. +\item[\texttt{\ 8}] Ogólne informacje o~¶cie¿kach dla typów + plików szukanych przez \KPS; u¿yteczne do znalezienia ¶cie¿ki + zdefiniowanej dla danego pliku. +\item[\texttt{16}] Lista katalogów dla ka¿dego z~elementów ¶cie¿ki + (odnosi siê tylko do poszukiwañ na dysku). +\item[\texttt{32}] Poszukiwania plików. +\end{itemize} +Warto¶æ \texttt{-1} ustawia wszystkie powy¿sze opcje -- w~praktyce, +poszukuj±c przyczyny b³êdów, prawdopodobnie bêdziesz zawsze u¿ywaæ +tych poziomów. + +Podobnie w~przypadku programu \cmdname{dvips}, ustawiaj±c kombinacjê +prze³±czników wykrywania b³êdów, mo¿na dok³adnie ¶ledziæ, sk±d pochodz± pliki. +W~sytuacji gdy plik nie zostanie odnaleziony, widaæ, w~których katalogach +program szuka³ danego pliku, dziêki czemu mo¿na siê zorientowaæ, w~czym +problem. + +Ogólnie mówi±c, poniewa¿ programy odwo³uj± siê wewnêtrznie do +biblioteki \KPS{}, opcje wykrywania b³êdów mo¿na wybraæ przy u¿yciu +zmiennej ¶rodowiskowej \envname{KPATHSEA\_DEBUG}, ustawiaj±c j± +na opisan± powy¿ej warto¶æ (kombinacjê warto¶ci). + +\noindent +\textbf{Uwaga dla u¿ytkowników Windows:} w~systemie tym nie³atwo +przekierowaæ komunikaty programu do pliku. Do celów diagnostycznych +mo¿na chwilowo ustawiæ zmienne (w~oknie CMD): +\begin{verbatim} +SET KPATHSEA_DEBUG_OUTPUT=err.log +SET KPATHSEA_DEBUG=-1 +\end{verbatim} + +Rozwa¿my na przyk³ad ma³y \LaTeX-owy plik ¼ród³owy \file{hello-world.tex}, +który zawiera: +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +Ten ma³y plik korzysta jedynie z~fontu \file{cmr10}. Przyjrzyjmy siê, jak +\cmdname{dvips} przygotowuje plik PostScript-owy (chcemy u¿yæ wersji Type1 +fontu Computer Modern, st±d opcja \texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +Mamy tu do czynienia jednocze¶nie z~czwart± klas± wykrywania b³êdów +programu \cmdname{dvips} (¶cie¿ki fontowe) oraz z~rozwijaniem elementu +¶cie¿ki przez \KPS{} (patrz: \emph{Dvips Reference Manual}, +\OnCD{texmf/doc/dvips/dvips.pdf}). +Komunikaty z~uruchomienia programu (nieco zmodyfikowane) znajduj± siê +na~rys.~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Szukanie pliku konfiguracyjnego}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Szukanie pliku prologu}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Szukanie pliku fontu}\label{fig:dvipsdbgc} +\end{figure*} + Program \cmdname{dvips} zaczyna pracê od zlokalizowania potrzebnych mu plików. +Najpierw znajduje plik \file{texmf.cnf}, który zawiera ¶cie¿ki +przeszukiwania dla innych plików. Potem znajduje bazê danych \file{ls-R} +(w~celu optymalizacji szukania plików), nastêpnie plik \file{aliases}, +który umo¿liwia deklarowanie ró¿nych nazw (np. krótkie \acro{DOS}-owe ,,8.3'' +i~bardziej naturalne d³u¿sze wersje) dla tych samych plików. +Nastêpnie \cmdname{dvips} znajduje podstawowy plik konfiguracyjny +\file{config.ps}, zanim poszuka pliku z~ustawieniami u¿ytkownika +\file{.dvipsrc} (który w~tym wypadku \emph{nie} zostaje odnaleziony). +W~koñcu \cmdname{dvips} lokalizuje plik konfiguracyjny \file{config.cms} +dla fontów PostScript-owych Computer Modern (jest to inicjowane przez +dodanie parametru \texttt{-Pcms} przy uruchamianiu programu). +Plik ten zawiera listê plików z~,,mapami'', które definiuj± relacje +pomiêdzy \TeX-owymi, PostScript-owymi i~systemowymi nazwami fontów. +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/config/config.cms} +p +ams.map +p +cms.map +p +cmbkm.map +p +amsbkm.map +\end{alltt} +W~ten sposób \cmdname{dvips} wyszukuje wszystkie te pliki oraz g³ówny plik +z~przemapowaniem +\file{psfonts.map}, który ³adowany jest domy¶lnie (zawiera on deklaracje +czêsto u¿ywanych fontów postscriptowych; wiêcej szczegó³ów na temat +postscriptowych plików przemapowañ fontów mo¿na znale¼æ w~ostatniej czê¶ci +rozdzia³u \ref{SExamplesofuse}). + +W~tym miejscu \cmdname{dvips} zg³asza siê u¿ytkownikowi: +\begin{alltt}\ifSingleColumn +This is dvips 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\else\small{}This is dvips 5.86 Copyright 1999 Radical Eye... +\fi\end{alltt}% decided to accept slight overrun in tub case +\ifSingleColumn +\ldots potem szuka pliku prologu \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +potem szuka pliku prologu \file{texc.pro}. + %(patrz rys.~\ref{fig:dvipsdbgb}). + +\fi +Po znalezieniu szukanego pliku \cmdname{dvips} podaje datê i~czas +oraz informuje o~generowaniu pliku \file{hello-world.ps}. +Poniewa¿ potrzebuje pliku z~fontem \file{cmr10}, a~jest on +zadeklarowany jako dostêpny, wy¶wietla komunikat: +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Teraz trwa poszukiwanie pliku \file{cmr10.tfm}, który zostaje znaleziony, +po czym \cmdname{dvips} powo³uje siê na kilka innych plików startowych +(nie pokazanych). W~koñcu przyk³adowy font Type1 \file{cmr10.pfb} +zostaje zlokalizowany i~do³±czony do pliku wynikowego (patrz ostatnia linia): +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Parametry kontroluj±ce dzia³anie programów} +Inn± u¿yteczn± cech± \Webc{} jest mo¿liwo¶æ ustalania wielu parametrów +okre¶laj±cych wielko¶æ pamiêci za pomoc± pliku \texttt{texmf.cnf}. + %Za³±cznik~\ref{app:texmf.cnf} zaczynaj±cy siê na + %stronie~\pageref{app:texmf.cnf} zawiera listing pliku \texttt{texmf.cnf}. + Ustawienia wszystkich parametrów znajduj± siê w~czê¶ci trzeciej pliku. +Najwa¿niejszymi zmiennymi s±: +\begin{description} +\item[\code{main\_memory}] Ca³kowita wielko¶æ pamiêci dostêpnej dla + \TeX-a, \MF{}-a i~\MP{}-a. Dla ka¿dego nowego ustawienia tej zmiennej + nale¿y wykonaæ nowy format. + %Przyk³adowo, mo¿esz wygenerowaæ ,,ogromn±'' wersjê formatu \TeX{} i~nazwaæ + %taki plik \texttt{hugetex.fmt}. + %Dziêki standardowemu sposobowi nazywania programów przez + %\KPS{}, okre¶lona warto¶æ zmiennej \verb|main_memory| bêdzie + %przeczytana z~pliku \texttt{texmf.cnf} (por. warto¶æ standardow± + %oraz warto¶æ ,,ogromn±'', wykorzystywan± przez program \texttt{hugetex}, + %itd.). + % +\item[\code{extra\_mem\_bot}] Dodatkowa wielko¶æ pamiêci przeznaczonej + na ,,du¿e'' struktury danych \TeX-a, takie jak: pude³ka, kleje itd.; + przydatna zw³aszcza w~wypadku korzystania z~pakietu \PiCTeX{}. + % +\item[\code{font\_mem\_size}] Wielko¶æ pamiêci przeznaczonej przez + \TeX-a na informacje o~fontach. Jest to mniej wiêcej ogólna + wielko¶æ wczytywanych przez \TeX-a plików TFM. + % +\item[\code{hash\_extra}] Dodatkowa wielko¶æ pamiêci przeznaczonej + na tablicê zawieraj±c± nazwy instrukcji. Tablica g³ówna + mo¿e zmie¶ciæ w~przybli¿eniu 10000 nazw; wielko¶æ ta mo¿e siê okazaæ + zbyt ma³a, np. w~wypadku obszernej ksi±¿ki zawieraj±cej liczne + odsy³acze. Domy¶lna warto¶æ \texttt{hash\_extra} to \texttt{50000}. +\end{description} + % +Oczywi¶cie powy¿sza mo¿liwo¶æ nie zast±pi prawdziwej, dynamicznej +alokacji pamiêci. Jest to jednak niezwykle trudne +do zaimplementowania w~obecnej wersji \TeX-a i~dlatego +powy¿sze parametry stanowi± praktyczny kompromis, pozwalaj±c +na pewn± elastyczno¶æ. + +Nale¿y tu jednak nadmieniæ, i¿ nie wszystkie programy korzystaj± +z tych zmiennych. Np. Lua\TeX\ posiada nowoczesn±, +w~pe³ni dynamiczn± alokacjê pamiêci, a zatem powy¿sze zmienne s± +w tym przypadku po prostu ignorowane. + +%%==== +%\begin{comment} %% nie wiem czemu rezygnowaæ z tej czê¶ci (SW) +\section{Budowa systemu na nowej platformie uniksowej}\label{sec:build} +Je¿eli mamy do czynienia z~platform±, dla której nie s± dostarczone binaria, +trzeba bêdzie skompilowaæ \TeX-a oraz towarzysz±ce mu programy. +Nie jest to takie trudne, jak siê wydaje. +Wszystko czego potrzebujemy, znajduje siê na \DVD{} w~katalogu +\texttt{source}. + +Najpierw nale¿y zainstalowaæ g³ówne drzewo plików \TeX-owych z~\TL{} \DVD{} +(najlepiej wykonaæ instalacjê podstawow±, bez wybierania +binariów systemowych). + +\subsection{Warunki wstêpne} +Do skompilowania ca³ego \TeX-a i~jego programów pomocniczych potrzeba +oko³o 100 megabajtów wolnego miejsca na dysku. +Potrzebny jest tak¿e kompilator \acro{ANSI}~C, oprogramowanie \cmdname{make}, +skaner leksykalny oraz generator parserów. +Programy u¿ytkowe \acro{GNU} (\cmdname{gcc}, \acro{GNU} +\cmdname{make}, \cmdname{m4}, \cmdname{flex}, \cmdname{bison}) +s± najlepiej przetestowanymi na ró¿nych platformach. +Poprawnie powinny pracowaæ \cmdname{gcc}-2.7.*, \cmdname{flex}-2.4.7 +i~\acro{GNU}\,\cmdname{make}-3.72.1 lub nowszy. +Mo¿na te¿ korzystaæ z~innych kompilatorów C i~programów +\cmdname{make}, wymaga to jednak dobrego zrozumienia zasad tworzenia +programów uniksowych, aby poradziæ sobie z~ewentualnymi problemami. + %W~wyniku wykonania polecenia \texttt{uname} powinni¶my + %otrzymaæ jak±¶ rozs±dn± warto¶æ. + +\subsection{Konfiguracja} +Nale¿y rozpakowaæ ¼ród³a ze skompresowanego pliku \texttt{tar} +z~katalogu \dirname{source} na twardy dysk, a~potem przej¶æ do katalogu, +do którego zosta³y one skopiowane. +Teraz trzeba siê zdecydowaæ, gdzie bêdzie g³ówny katalog instalacji, +np.\ \path|/usr/TeX| lub \path|/usr/local/TeX|. +Naturalnie, nale¿y u¿yæ tej samej lokalizacji, która zosta³a u¿yta +podczas instalacji g³ównego drzewa \TeX-owego. + +Uruchomiæ \textsf{configure} z~linii poleceñ: +\begin{alltt} +> \Ucom{./configure --prefix=/usr/local/TeX} +\end{alltt} + +Katalog ,,prefix'' to ten, w~którym zainstalowane zosta³o g³ówne drzewo +\TeX-owe. Zostanie u¿yty nastêpuj±cy uk³ad katalogów + (\verb|$TEXDIR| oznacza wybrany powy¿ej katalog): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/man} & strony manuala uniksowego,\\ + \dirname{$TEXDIR/share/texmf} & g³ówne drzewo \TeX-owe, + zawieraj±ce makra itp.,\\ + \dirname{$TEXDIR/info} & podrêczniki w formacie \acro{GNU} + info,\\ + \dirname{$TEXDIR/bin/$PLATFORM} & binaria\\ +\end{tabular} +%$ + +Mo¿na unikn±æ stosowania ,,\dirname{share/}'' przed katalogiem +\dirname{texmf}, poniewa¿ \dirname{$TEXDIR/share/texmf} +i~\dirname{$TEXDIR/texmf} s± wykrywane automatycznie przez skrypt \cmdname{configure}. +W~razie wybrania innego katalogu, trzeba ten katalog wyszczególniæ +parametrem \verb|--datadir| skryptu \cmdname{configure}. + +Je¿eli nie chcemy u¿ywaæ katalogu \dirname{$PLATFORM} +(a~wiêc umie¶ciæ binaria bezpo¶rednio w~\dirname{$TEXDIR/bin}), to +w~wywo³aniu skryptu \cmdname{configure} nale¿y u¿yæ parametru +\verb|--disable-multiplatform|. + +Wiêcej dostêpnych parametrów (np. pomijanie pakietów opcjonalnych, takich +jak \OMEGA) mo¿na zobaczyæ, uruchamiaj±c +\texttt{./configure -{}-help}. + +\subsection{Uruchamianie \textsf{make}} +Po upewnieniu siê, ¿e nie jest ustawiona zmienna pow³oki \texttt{noclobber}, +nale¿y napisaæ: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +i~\ldots zaparzyæ sobie kawê. + +Mo¿e siê te¿ przydaæ zapisanie ca³ego procesu +kompilacji w~pliku \texttt{.log}: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} +Zanim stwierdzimy, ¿e wszystko jest w~porz±dku, warto sprawdziæ, czy w~pliku +\texttt{.log} nie ma komunikatów b³êdów (kiedy polecenie zwraca kod b³êdu, +\acro{GNU} \cmdname{make} zawsze u¿ywa sekwencji \samp{***}), +i~czy utworzone zosta³y wszystkie binaria: +\begin{alltt} +> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +Oczekiwanym rezultatem jest ponad 200. Polecenie \texttt{make world} jest +równowa¿ne z~\texttt{make all install strip}. +Je¶li do uruchamiania \texttt{make install} potrzebne s± specjalne +uprawnienia, mo¿na uruchomiæ dwie oddzielne sesje \cmdname{make}: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +\subsection{Koñcowe kroki konfiguracyjne} +Nale¿y uaktualniæ zmienn± \envname{PATH} o~nazwê katalogu zawieraj±cego +w³a¶nie zainstalowane binaria (np.\ +\dirname{/usr/local/TeX/bin/mips-sgi-irix6.3}); podobnie post±piæ trzeba +z~\envname{MANPATH} i~\envname{INFOPATH} i~do³±czyæ do nich +odpowiednie nazwy podkatalogów, tj.\ +\dirname{$TEXDIR/man} oraz \dirname{$TEXDIR/info}. +Patrz czê¶æ~\ref{sec:postinstall} (str.~\pageref{sec:postinstall}). + +Je¶li zechcesz udostêpniæ skompilowane przez siebie programy, skontaktuj +siê z~nami (\url{tex-live@tug.org}); chêtnie umie¶cimy je na stronie \TL. +%\end{comment} + +%-------------------------- +\htmlanchor{ack} +\section{Podziêkowania} + +\TL{} jest wspólnym dzie³em prawie wszystkich grup \TeX-owych. +Niniejsza edycja \TL{} zosta³a opracowana pod kierownictwem Karla Berry'ego, +przy g³ównym wspó³udziale: + +\begin{itemize*} +\item grup \TeX-owych: miêdzynarodowej, niemieckiej, holenderskiej i~polskiej + (odpowiednio: \acro{TUG}, \acro{DANTE} e.V., \acro{NTG}, i~\acro{GUST}), + które wspólnie zapewniaj± potrzebn± infrastrukturê techniczn± + i~organizacyjn±. Do³±cz do swojej grupy \TeX-owej!; +\item zespo³u \acro{CTAN} (w~szczególno¶ci Robina Fairbairnsa, Jima + Hef{}ferona i~Rainera Sch\"opfa), który dystrybuuje obrazy p³yt \TL{} + i~udostêpnia wspóln± infrastrukturê s³u¿±c± aktualizacji pakietów, od której + zale¿y \TL{}; +\item Nelsona Beebe, za umo¿liwienie dostêpu do wielu platform ekipie \TL\ + i pomoc w testowaniu; +\item Johna Bowmana, który dostosowa³ swój zaawansowany program Asymptote + do wspó³pracy z TL; +\item Petera Breitenlohnera i~zespo³u \eTeX, którzy stworzyli stabiln± + podstawê przysz³ych wersji \TeX-a (Peter dodatkowo s³u¿y nieustann± pomoc± + w~wykorzystaniu narzêdzi autotools w~\TL); +\item Jin-Hwan Cho i ca³ego zespo³u DVIPDFM$x$ za ten znakomity sterownik + i nieustann± pomoc w~rozwi±zywaniu problemów z konfiguracj±; +\item Thomasa Essera, autora wspania³ego \teTeX-a, bez którego + \TL{} z~ca³± pewno¶ci± by nie powsta³ i~którego sta³a + pomoc umo¿liwi³a doskonalenie tej dystrybucji; +\item Michaela Goossensa, który by³ wspó³autorem pierwotnej dokumentacji; +\item Eitana Gurari, autora programu \TeX4ht{} (wykorzystanego do + tworzenia niniejszej dokumentacji w~wersji \HTML), który niezmordowanie + pracowa³ nad jego ulepszaniem i~b³yskawicznie dostarcza³ poprawki; + Eitan zmar³ w czerwcu 2009~r. i dedykujemy tê dokumentacjê Jego pamiêci; +\item Hansa Hagena, który dostosowywa³ \ConTeXt\ do potrzeb \TL; +\item \Thanh{}a, Martina Schr\"odera i~zespo³u pdf\TeX-a, którzy ci±gle + ulepszali mo¿liwo¶ci \TeX-a; +\item Hartmuta Henkela, maj±cego istotny udzia³ w~rozwoju pdf\TeX-a, + Lua\TeX-a i~innych programów; +\item Taco Hoekwatera, który wznowi³ rozwój MetaPosta i~pracowa³ nad + Lua\TeX-em, jak te¿ pomóg³ w~integracji \ConTeXt\ w~\TL oraz + ulepszy³ bibliotekê Kpathsea, dodaj±c jej wielow±tkowo¶æ; +\item Paw³a Jackowskiego, który wykona³ instalator dla Windows \cmdname{tlpm} + i~Tomka £uczaka, twórcy \cmdname{tlpmgui} (programy te by³y wykorzystane + w~poprzednich edycjach); +\item Akira Kakuto, który dostarczy³ programy dla Windows, pochodz±ce + z~dystrybucji \acro{W32TEX} + (\url{http://w32tex.org}), + stale dostosowywane i~aktualizowane dla potrzeb \TL; +\item Jonathana Kew, który zainicjowa³ now± ¶cie¿kê + rozwojow± -- Xe\TeX{}, i~który w³o¿y³ sporo wysi³ku w~zintegrowanie + tego programu z~\TL, jak równie¿ zapocz±tkowa³ prace nad instalatorem dla + Mac\TeX{} oraz edytorem \TeX{}works; +\item Dicka Kocha, który pielêgnuje Mac\TeX-a (\url{http://tug.org/mactex}) + w~¶cis³ym po³±czeniu z~\TL i~bardzo sympatycznie wspó³pracuje; +\item Reinharda Kotuchy, maj±cego istotny udzia³ w~stworzeniu nowej infrastruktury + i~programu instalacyjnego dla \TL{} 2009, uparcie d±¿±cego do ujednolicenia + dzia³ania \TL{} w~Windows i~Unix, który równie¿ opracowa³ skrypt + \texttt{getnonfreefonts} i~wykona³ wiele innych prac; +\item Siep Kroonenberg, która równie¿ wziê³a udzia³ w~stworzeniu nowej + infrastruktury i~programu instalacyjnego dla \TL{} 2009 (szczególnie dla + Windows) oraz w³o¿y³a sporo pracy w aktualizacjê tej dokumentacji; +\item Petra Ol\shac{}\aac{}ka, który koordynowa³ i~sprawdza³ + przygotowanie pakietów czeskich i~s³owackich; +\item Toshio Oshimy, który opracowa³ przegl±darkê \cmdname{dviout} dla Windows; +\item Manuela P\'egouri\'e-Gonnarda, który pomóg³ w~aktualizacji pakietów + i~pracowa³ nad \cmdname{texdoc}; +\item Fabrice'a Popineau, który pierwszy stworzy³ wersje oprogramowania + dla Windows; +\item Norberta Preininga, g³ównego architekta infrastruktury i~programu + instalacyjnego \TL{} 2009, który przyczyni³ siê równie¿ do aktualizacji + pakietów, a tak¿e koordynowa³ (wraz z~Frankiem K\"usterem) debianow± + wersjê \TL{} i~przedstawi³ wiele sugestii ulepszeñ; +\item Sebastiana Rahtza, który stworzy³ \TL{} i~kierowa³ projektem przez + wiele lat; +\item Phila Taylora, który skonfigurowa³ BitTorrent + (do pobierania plików z sieci) na potrzeby \TL{}; +\item Tomka Trzeciaka, który pracowicie rozwi±zywa³ rozliczne problemy + zwi±zane z Windows; +\item Vladimira Volovicha, który wydatnie pomóg³ w~rozwi±zywaniu problemów + przeno¶no¶ci, szczególnie za¶ umo¿liwi³ do³±czenia \cmdname{xindy}; +\item Staszka Wawrykiewicza, g³ównego testuj±cego \TL{} w~ró¿nych systemach, + który ponadto koordynowa³ przygotowanie wszystkich polskich dodatków (fontów, + programów instalacyjnych i~wielu innych); +\item Olafa Webera, który cierpliwie pielêgnowa³ Web2C, od którego wszystko zale¿y; +\item Gerbena Wierda, który przygotowa³ oryginalne oprogramowanie i~wsparcie + dla \MacOSX{}; +\item Grahama Williamsa, którego prace nad katalogiem pakietów bardzo + pomog³y w~przygotowaniu dystrybucji. +\end{itemize*} + +Binaria dla ró¿nych platform skompilowali: +Ettore Aldrovandi (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}), +Alan Braslau (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}), +Peter Breitenlohner (\pkgname{x86\_64-linux}), +Karl Berry (\pkgname{i386-linux}), +Ken Brown (\pkgname{i386-cygwin}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}), +Nikola Le\v{c}i\'c (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +Mojca Miklavec (\pkgname{mipsel-linux}), +Norbert Preining (\pkgname{alpha-linux}), + %Jukka Salmi (\pkgname{i386-netbsd}), + Thomas Schmitz (\pkgname{powerpc-linux}), +Boris Veytsman (\pkgname{armel-linux}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix}). +Informacje na temat procesu budowy \TL{} mo¿na znale¼æ na stronie: +\url{http://tug.org/texlive/build.html}. + +Aktualizacje i~t³umaczenia dokumentacji wykonali: +Siep Kroonenberg i~Karl Berry (angielski), +Manuel P\'egouri\'e-Gonnard (francuski), +Uwe Ziegenhagen (niemiecki), +Jjgod Jiang, Jinsong Zhao, Yue Wang i~Helin Gai (chiñski), +Marco Pallante (w³oski), +Nikola Le\v{c}i\'c (serbski), +Petr Sojka i~Jan Busa (czeski\slash s³owacki), +Boris Veytsman (rosyjski), +Staszek Wawrykiewicz (polski). +Na stronie \url{http://tug.org/texlive/doc.html} bêd± umieszczane ewentualne +aktualizacje tej dokumentacji. + +Oczywi¶cie, najwa¿niejsze podziêkowania nale¿± siê Donaldowi Knuthowi +za stworzenie systemu \TeX{} i~ofiarowanie go nam wszystkim. + +%%% +\section{Historia} +\label{sec:history} + +\subsection{Poprzednie wersje} + +Dystrybucja \TL{} jest wspólnym przedsiêwziêciem +grup U¿ytkowników Systemu \TeX{} z Niemiec, Holandii, Wielkiej +Brytanii, Francji, Czech, S³owacji, Polski, Indii i~Rosji oraz grupy +miêdzynarodowej TUG (\emph{\TeX{} Users Group}). +Dyskusje nad projektem rozpoczê³y siê pod koniec 1993 roku, kiedy holenderska +Grupa U¿ytkowników \TeX-a rozpoczê³a prace nad swoim +4All\TeX{} \CD{} dla u¿ytkowników \acro{MS-DOS}. W~tym te¿ +czasie pojawi³y siê nadzieje na opracowanie jednego \CD{} dla +wszystkich systemów. +Projekt ten by³ wprawdzie zbyt ambitny, zrodzi³ jednak nie tylko bardzo +popularny i~uwieñczony du¿ym powodzeniem projekt 4All\TeX{} \CD{}, +lecz równie¿ spowodowa³ powstanie Grupy Roboczej TUG ds. Standardu Katalogów +\TeX-owych (\emph{\TeX{} Directory Structure}), okre¶laj±cego, w~jaki +sposób tworzyæ zgodne i~³atwe do zarz±dzania zestawy pakietów \TeX-owych. +Koñcowy raport \TDS{} zosta³ opublikowany w~grudniowym numerze +\textsl{TUGboat}-a, i~jasnym siê sta³o, ¿e +jednym z~oczekiwanych wyników wprowadzenia tego standardu mog³aby +byæ modelowa struktura na p³ytce \CD. +Wydana wówczas p³ytka \CD{} by³a bezpo¶rednim rezultatem rozwa¿añ i~zaleceñ +Grupy Roboczej ds. \TDS. +Jasne tak¿e by³o, ¿e sukces 4All\TeX{} \CD{} pokaza³, ¿e +u¿ytkownicy Unixa tak¿e wiele by zyskali, mog±c korzystaæ +z~podobnie ³atwego w~instalacji/pielêgnacji i~u¿ytkowaniu systemu. +By³o to jednym z~celów projektu \TL. + +Projekt przygotowania p³ytki \CD, opartej na standardzie \TDS i~zorientowanej +na systemy uniksowe, rozpocz±³ siê jesieni± 1995 roku. Szybko +zdecydowali¶my siê na wykorzystanie \teTeX-a autorstwa Thomasa Essera, poniewa¿ +dzia³a³ na wielu platformach i~zosta³ zaprojektowany z~my¶l± +o~przeno¶no¶ci pomiêdzy ró¿nymi systemami plików. Thomas zgodzi³ siê pomóc +i~prace rozpoczê³y siê na dobre na pocz±tku 1996 roku. Pierwsze wydanie +ukaza³o siê w~maju 1996 roku. Na pocz±tku 1997 roku Karl Berry udostêpni³ +now±, istotnie zmienion± wersjê swojego pakietu \Webc, zawieraj±c± prawie +wszystkie funkcje wprowadzone do \teTeX-a przez Thomasa Essera. W~zwi±zku +z~tym zdecydowali¶my siê oprzeæ drugie wydanie \CD{} na standardowej +bibliotece \Webc, z~dodaniem skryptu \texttt{texconfig} z~pakietu \teTeX. +Trzecie wydanie \CD{} by³o oparte na \Webc{} wersji 7.2, przygotowanej przez +Olafa Webera. W~tym samym czasie zosta³a przygotowana nowa wersja \teTeX-a +i~\TL{} udostêpnia³ prawie wszystkie jego nowe funkcje. +Czwarta edycja by³a przygotowana podobnie, +z~u¿yciem nowej wersji te\TeX-a i~nowej wersji \Webc{} (7.3). +Wtedy to te¿ zapocz±tkowano kompletn± dystrybucjê dla Windows. + +Edycja pi±ta (marzec 2000) zawiera³a wiele poprawek i~uzupe³nieñ; +zaktualizowano setki pakietów. Szczegó³ow± zawarto¶æ pakietów +zapisano w~plikach XML. +G³ówn± zmian± w~\TeX\ Live~5 by³o usuniêcie programów, które nie mia³y +statusu {\it public domain}. Zawarto¶æ ca³ej p³ytki powinna odpowiadaæ ustaleniom +Debian Free Software Guidelines (\url{http://www.debian.org/intro/free}). +Do³o¿yli¶my wszelkich starañ, aby sprawdziæ warunki licencyjne pakietów. + %nadal jednak bardzo prosimy o~zg³aszanie zauwa¿onych pomy³ek. + +Szósta edycja (lipiec 2001) zawiera³a aktualizacje ca³ego materia³u. G³ówn± +zmian± by³o wprowadzenie nowej koncepcji programów instalacyjnych -- u¿ytkownik +mia³ odt±d mo¿liwo¶æ dok³adniejszego wyboru potrzebnych zestawów i~pakietów. +Zestawy dotycz±ce obs³ugi poszczególnych jêzyków zosta³y ca³kowicie +zreorganizowane, dziêki czemu wybór jednego z~nich nie tylko instalowa³ +potrzebne makra i~fonty, ale te¿ przygotowywa³ odpowiedni plik +\texttt{language.dat}. + +\TL~7 (rok 2002) zawiera³ po raz pierwszy oprogramowanie dla \MacOSX{} +i -- jak zwykle -- aktualizacjê wszelkich programów i~pakietów. +Wa¿nym zadaniem, które wykonano, by³o ujednolicenie plików ¼ród³owych +programów z~dystrybucj± te\TeX. W~programach instalacyjnych wprowadzono +mo¿liwo¶æ wyboru bardziej ogólnych, predefiniowanych zestawów pakietów +(m.in. dla u¿ytkowników francuskojêzycznych oraz polskich). Nowo¶ci± +by³o tak¿e wprowadzenie procedury aktualizacji map fontowych dla Dvips +i~PDFTeX podczas instalacji oraz doinstalowywania pakietów fontowych. + +W~2003~r., wraz z~nap³ywem aktualizacji i~dodatkowych nowych pakietów, +okaza³o siê, ¿e \TL{} nie mie¶ci siê na pojedynczym \CD. +Zmuszeni byli¶my podzieliæ \TL{} na trzy dystrybucje, które wydano +na \DVD{} i~dwóch p³ytkach \CD. Ponadto: + +\begin{itemize*} +\item na ¿yczenie ,,\LaTeX{} team'' zmieniono standardowe u¿ycie + programów \cmdname{latex} i~\cmdname{pdflatex}~-- by korzysta³y + one z~\eTeX{} (patrz str.~\pageref{text:etex}); +\item za³±czono nowe fonty obwiedniowe Latin Modern, które zastêpuj± + m.in. fonty EC (zawieraj±c komplet znaków europejskich), szczególnie + do tworzenia poprawnych plików PDF; +\item usuniêto binaria dla platformy Alpha \acro{OSF} (poprzednio + usuniêto tak¿e binaria dla \acro{HPUX}), niestety nie uda³o siê znale¼æ + osób chêtnych do wykonania kompilacji; +\item zmieniono instalacjê w~systemach Windows, wprowadzaj±c po raz pierwszy + zintegrowane ¶rodowisko pracy, oparte na edytorze XEmacs; +\item potrzebne programy pomocnicze dla Windows (Perl, Ghost\-script, + Image\-Magick, Ispell) instalowano w~strukturze katalogów + instalacji \TL; +\item mapy fontowe, z~których korzystaj± programy \cmdname{dvips}, + \cmdname{dvipdfm} oraz \cmdname{pdftex}, generowano odt±d w~katalogu + \dirname{texmf/fonts/map}; +\item \TeX{}, \MF{} oraz \MP{} domy¶lnie pozwala³y wypisywaæ komunikaty + na ekranie i~w~pliku .log, a~tak¿e w~operacjach \verb|\write| w~ich + reprezentacji 8-bitowej, zamiast tradycyjnej notacji \verb|^^|; + w~\TL{}~7 eksperymentalnie wprowadzono zale¿no¶æ przekodowania + wyj¶cia programów od systemowej strony kodowej, potem ten pomys³ + zarzucono; +\item znacznie zmieniono niniejsz± dokumentacjê; +\item wreszcie, poniewa¿ numery wersji kolejnych edycji mog³y wprowadzaæ + w~b³±d, postanowiono identyfikowaæ edycje \TL{} zgodnie z~rokiem + wydania. +\end{itemize*} + +\subsection{Wydanie 2004} + +Jak w~ka¿dej kolejnej wersji, w~2004 roku uaktualniono wiele pakietów +i~programów. Poni¿ej wymieniamy najbardziej istotne zmiany. + +\begin{itemize} +\item Gdy mieli¶my ju¿ lokalnie zainstalowane fonty, które korzysta³y +z~w³asnych plików \filename{.map} i/lub \filename{.enc}, \emph{nale¿a³o} +przenie¶æ te pliki w~nowe miejsce w~strukturze \filename{texmf/}. + +Pliki \filename{.map} (map fontowych) s± odt±d wyszukiwane w~podkatalogach +\dirname{fonts/map} (w~ka¿dym drzewie \filename{texmf}), zgodnie ze ¶cie¿k± +okre¶lon± przez zmienn± \envname{TEXFONTMAPS}. Analogicznie, pliki +\filename{.enc} (przekodowañ fontów) s± odt±d wyszukiwane w~podkatalogach +\dirname{fonts/enc}, zgodnie ze ¶cie¿k± okre¶lon± przez zmienn± +\envname{ENCFONTS}. O~niew³a¶ciwie umieszczonych plikach tego typu +zostaniemy ostrze¿eni podczas uruchomienia programu \cmdname{updmap}. +Zmiany te wprowadzono w~celu uporz±dkowania struktury katalogów: wszystkie +pliki dotycz±ce fontów znajduj± siê odt±d w~ramach jednego podkatalogu +\dirname{fonts/}. + +Metody radzenia sobie z~sytuacjami zwi±zanymi z~przej¶ciem na nowy uk³ad +katalogów omawia³ artyku³ \url{http://tug.org/texlive/mapenc.html}. + +\item Do \TK\ \DVD{} dodano now± dystrybucjê dla Windows o~nazwie +pro\TeX{}t (opart± na \MIKTEX-u). By³a ona dostêpna tak¿e na odrêbnym \CD. +Choæ pro\TeX{}t nie bazuje na implementacji Web2C, stosuje uk³ad katalogów +zgodny z~\TDS (patrz czê¶æ~\ref{sec:struct-tl} na +str.~\pageref{sec:struct-tl}). + +\item W ramach \TL{} dotychczasowe pojedyncze drzewo katalogów +\dirname{texmf} zosta³o rozdzielone na trzy mniejsze: \dirname{texmf}, +\dirname{texmf-dist} i~\dirname{texmf-doc} (patrz +czê¶æ~\ref{sec:tld}, str.~\pageref{sec:tld}) oraz pliki \filename{README} +w~ka¿dym z~tych katalogów). + +\item Wszystkie pliki makr wczytywane przez \TeX-a zosta³y +umieszczone wy³±cznie w~podkalogu \dirname{tex} w~ramach +\dirname{texmf*}. Tym samym usuniêto zbêdne katalogi +\dirname{etex}, \dirname{pdftex}, \dirname{pdfetex} itp. i~uproszczono +metody wyszukiwania plików. Patrz +\CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}. + +\item Pomocnicze skrypty wykonywalne, niezale¿ne od platformy +i~zwykle uruchamiane w~sposób automatyczny, by³y odt±d +umieszczone w~nowym podkatalogu \dirname{scripts} w~ramach \dirname{texmf*}. +Znajdowane s± poleceniem \verb|kpsewhich -format=texmfscripts|. +Programy korzystaj±ce z tych skryptów mog³y wymagaæ modyfikacji. +Patrz \CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts} +{\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}. + +\item Prawie wszystkie formaty traktuj± od tego wydania wiêkszo¶æ znaków jako +jawnie ,,wy¶wietlalne'' (\emph{printable}), nie za¶, jak by³o dotychczas, +konwertowane na \TeX-ow± notacjê \verb|^^|. By³o to mo¿liwe dziêki domy¶lnemu +wczytywaniu tablicy przekodowañ \filename{cp227.tcx}. Dok³adniej, znaki +o~kodach 32--256, HT, VT oraz FF zosta³y potraktowane dos³ownie podczas +wy¶wietlania komunikatów. Wyj±tkiem jest plain \TeX{} (tylko znaki z~zakresu +32--127 s± nie zmieniane), \ConTeXt{} (znaki z zakresu 0--255) oraz formaty +bazuj±ce na Omedze. Podobna domy¶lna w³a¶ciwo¶æ wystêpowa³a w~\TL\,2003, ale +w~tej edycji zosta³a zaimplementowana w~bardziej elegancki sposób +i~z~wiêkszymi mo¿liwo¶ciami indywidualnego dostosowania (patrz +\CDref{texmf/doc/web2c/web2c.html\#TCX-files} {\texttt{texmf/doc/web2c/web2c. +tml\#TCX-files}}. (Warto wspomnieæ, ¿e wczytuj±c Unicode, \TeX{} mo¿e +w~komunikatach b³êdów pokazywaæ niekompletne sekwencje znaków, poniewa¿ +zosta³ zaprojektowany ,,bajtowo''.) + %%! hmmm, ca³y akapit by o strumieniach we-wy? + +\item Program \textsf{pdfetex} zosta³ domy¶ln± ,,maszyn±'' dla +wiêkszo¶ci formatów (nie dotyczy to samego Plain \textsf{tex}). +Domy¶lnie, gdy uruchamiamy polecenie \textsf{latex}, \textsf{mex} +itp., generowane s± pliki \acro{DVI}. Mo¿liwe jest jednak wykorzystanie +w~\LaTeX, \ConTeXt{} itp. m.in. w³a¶ciwo¶ci mikrotypograficznych +zaimplementowanych w~\textsf{pdftex}, a~tak¿e rozszerzonych cech \eTeX-a +(\OnCD{texmf-dist/doc/etex/base/}). + +Oznacza to tak¿e, co warto podkre¶liæ, ¿e \emph{zalecane} jest odt±d u¿ycie +pakietu \pkgname{ifpdf} (który dzia³a zarówno z~plain, jak i~\LaTeX) +lub analogicznych makr. Zwyk³e sprawdzanie czy zdefiniowano \cs{pdfoutput} +b±d¼ kilka innych poleceñ pierwotnych mo¿e nie wystarczyæ do rozstrzygniêcia +czy nie jest generowany plik \acro{PDF}. W~2004 roku podjêli¶my +wysi³ek by zachowaæ, najlepiej jak to mo¿liwe, kompatybilno¶æ +z~dotychczasowymi przyzwyczajeniami u¿ytkowników. Brano wówczas pod uwagê, +¿e \cs{pdfoutput} mo¿e byæ zdefiniowany nawet wtedy, +gdy generowany jest plik \acro{DVI}. + +\item pdf\TeX\ (\url{http://pdftex.org}) zyska³ wówczas wiele nowych +cech: + + \begin{itemize*} + \item \cs{pdfmapfile} i~\cs{pdfmapline} pozwalaj± okre¶liæ + z~poziomu dokumentu u¿yte mapy fontowe, a~tak¿e pojedyncze + dodatkowe wpisy w~tych mapach. + + \item mikrotypograficzne operacje z~fontami s± ³atwiejsze w u¿yciu;\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item wszystkie parametry pracy pdf\TeX-a, dotychczas okre¶lane + w~specjalnym pliku konfiguracyjnym \filename{pdftex.cfg}, musz± byæ + odt±d ustawiane poleceniami wbudowanymi, jak w~pliku + \filename{pdftexconfig.tex}; plik \filename{pdftex.cfg} + nie jest ju¿ w~ogóle wykorzystywany. Po zmianie \filename{pdftexconfig.tex} + nale¿a³o na nowo wygenerowaæ pliki formatów (wci±¿ jednak u¿ytkownik mia³ + pe³n± swobodê okre¶lania parametrów w~redagowanym dokumencie); + + \item wiêcej informacji zawarto w~podrêczniku pdf\TeX-a: + \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}. + + \end{itemize*} + +\item Polecenie \cs{input} w~programach \cmdname{tex}, + \cmdname{mf} oraz \cmdname{mpost} akceptowa³o odt±d nazwy + plików ograniczone podwójnymi apostrofami, zawieraj±ce spacje i~inne + znaki, np.: +\begin{verbatim} +\input "nazwa_pliku ze spacjami" % plain +\input{"nazwa_pliku ze spacjami"} % latex +\end{verbatim} +Wiêcej informacji zawarto w~podrêczniku Web2C: \OnCD{texmf/doc/web2c}. + +\item \texttt{-output-directory} -- nowa opcja programów \cmdname{tex}, + \cmdname{mf} oraz \cmdname{mpost} -- pozwala³a na zapisanie wyniku pracy + w~wyspecyfikowanym katalogu (np. mo¿na uruchomiæ program \texttt{tex} + z~plikiem znajduj±cym siê na dysku tylko do odczytu, za¶ wynik zapisaæ + na dysku pozwalaj±cym na~to); + +\item Rozszerzenie enc\TeX\ zosta³o szczê¶liwie w³±czone do Web2C. + Aby uaktywniæ to rozszerzenie, nale¿a³o podczas generowania formatu + u¿yæ opcji \optname{-enc}. Ogólnie mówi±c, enc\TeX\ obs³uguje + przekodowanie wej¶cia i~wyj¶cia, w³±czaj±c tak¿e Unicode (\acro{UTF}-8) + (patrz \OnCD{texmf-dist/doc/generic/enctex/} oraz + \url{http://www.olsak.net/enctex.html}). + +\item Udostêpniono nowy program Aleph, który ³±czy³ cechy \eTeX\ i~\OMEGA. + Skromna dokumentacja jest dostêpna na \OnCD{texmf-dist/doc/aleph/base} + oraz \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. + Format oparty na \LaTeX-u dla programu Aleph nazwano \textsf{lamed}. + +\item Dystrybucja \LaTeX-a zosta³a po raz pierwszy zaopatrzona w~now± + licencjê \acro{LPPL}, odt±d w~pe³ni zgodn± i~aprobowan± przez zalecenia + okre¶lone w~licencji Debiana. O~nowo¶ciach i~uaktualnieniach mo¿na siê + dowiedzieæ przegl±daj±c pliki \filename{ltnews} + w~\OnCD{texmf-dist/doc/latex/base}. + +\item Do³±czono tak¿e program \cmdname{dvipng} konwertuj±cy pliki \acro{DVI} +do formatu graficznego \acro{PNG} (\OnCD{texmf/doc/man/man1/dvipng.1}). + +\item W~porozumieniu i~z~pomoc± autora, Claudio Beccariego, ograniczono + pakiet \pkgname{cbgreek} do zestawu fontów rozs±dnego rozmiaru. Usuniêto + sporadycznie u¿ywane fonty konturowe i~s³u¿±ce do prezentacji. Pe³en + zestaw jest oczywi¶cie nadal dostêpny z~serwerów \acro{CTAN} +(\url{http://mirror.ctan.org/tex-archive/fonts/greek/cb}). + +\item Usuniêto program \cmdname{oxdvi}; jego funkcje przej±³ + \cmdname{xdvi}. + +\item Programy z~przedrostkiem \cmdname{ini} oraz \cmdname{vir} + (np. \cmdname{initex}), które zwykle by³y dowi±zaniami do programów + \cmdname{tex}, \cmdname{mf} i~\cmdname{mpost}, nie by³y od tej pory dostêpne + -- w~zupe³no¶ci wystarcza u¿ycie w~wierszu poleceñ opcji \optname{-ini}. + +\item Dystrybucja nie zawiera³a binariów dla platformy \textsf{i386-openbsd} + (g³ównie z~powodu braku chêtnych do wykonania kompilacji). + +\item W~systemie \textsf{sparc-solaris} nale¿a³o ustawiæ zmienn± systemow± + \envname{LD\_LIBRARY\_PATH}, aby uruchomiæ programy \pkgname{t1utils}. + Binaria by³y kompilowane w~C++, ale w~tym systemie brakowa³o standardowego + po³o¿enia bibliotek uruchomieniowych. Wiedziano o~tym ju¿ wcze¶niej, + nie by³o to jednak dotychczas udokumentowane. Z~kolei dla systemu + \textsf{mips-irix} wymagana by³a obecno¶æ bibliotek \acro{MIPS}pro 7.4. + +\end{itemize} + +\subsection{Wydanie 2005} + +Kolejna edycja przynios³a, jak zwykle, mnóstwo aktualizacji pakietów +i~programów. Struktura dystrybucji ustabilizowa³a siê, niemniej +pojawi³o siê nieco zmian w~konfiguracji: + +\begin{itemize} + +\item Wprowadzono nowe skrypty \cmdname{texconfig-sys}, \cmdname{updmap-sys} + i~\cmdname{fmtutil-sys}, których zadaniem jest modyfikowanie plików + konfiguracyjnych w~g³ównych drzewach katalogów systemu. Dotychczasowe + skrypty \cmdname{texconfig}, \cmdname{updmap} i~\cmdname{fmtutil} + modyfikuj± odt±d pliki u¿ytkownika w~katalogu \dirname{$HOME/.texlive2005}. + %(Patrz czê¶æ~\ref{sec:texconfig}, str.~\pageref{sec:texconfig}). + +\item Dodano nowe zmienne ¶rodowiskowe \envname{TEXMFCONFIG} + i~\envname{TEXMFSYSCONFIG}, które wskazuj± po³o¿enie drzew katalogów + z~plikami konfiguracyjnymi, odpowiednio: u¿ytkownika i~systemu. Tak wiêc + mog³o okazaæ siê koniecznym przeniesienie w³asnych wersji + \filename{fmtutil.cnf} i~\filename{updmap.cfg} w~odpowiednie miejsca. + Inn± mo¿liwo¶ci± by³o przedefiniowanie \envname{TEXMFCONFIG} lub + \envname{TEXMFSYSCONFIG} w~pliku \file{texmf.cnf}. W~ka¿dym z~przypadków + po³o¿enie tych plików i~przypisania + \envname{TEXMFCONFIG} i~\envname{TEXMFSYSCONFIG} musz± byæ zgodne. + (Patrz czê¶æ~\ref{sec:texmftrees}, str.~\pageref{sec:texmftrees}.) + +\item W~wydaniu z~poprzedniego roku podczas tworzenia wynikowego pliku + DVI \verb|\pdfoutput| i~podobne polecenia pozostawa³y niezdefiniowane, mimo + ¿e u¿ywany by³ program \cmdname{pdfetex}. Zgodnie z~obietnic±, + w~2005 roku zarzucono to rozwi±zanie (jego celem by³o zapewnienie + kompatybilno¶ci). Z~tego powodu u¿ytkownik by³ zmuszony zmieniæ te dokumenty, + które u¿ywa³y \verb|\ifx\pdfoutput\undefined| do sprawdzania, czy plik + wynikowy ma byæ w~formacie PDF. Zamiast tego nale¿a³o zastosowaæ pakiet + \pkgname{ifpdf.sty}, który dzia³a zarówno z~plain \TeX-em jak i~\LaTeX-em, + albo zapo¿yczyæ zastosowane w~nim rozwi±zania. + +\item W~wydaniu z~2004 roku zmieniono wiêkszo¶æ formatów tak, by + na wyj¶ciu 8-bitowe znaki by³y reprezentowane przez same siebie (por. + poprzednia czê¶æ). Nowy plik TCX o~nazwie \filename{empty.tcx} pozwala³ + w~³atwy sposób uzyskaæ w~razie potrzeby oryginaln± notacjê (\verb|^^|), + np.: + +\begin{verbatim} +latex --translate-file=empty.tcx twojplik.tex +\end{verbatim} + +\item Do³±czono nowy program \cmdname{dvipdfmx}, s³u¿±cy do konwersji DVI + do PDF. Program jest aktywnie pielêgnowan± wersj± programu + \cmdname{dvipdfm}, który wci±¿ jest dostêpny, ale nie jest ju¿ jednak + polecany. + +\item Nowe programy \cmdname{pdfopen} i~\cmdname{pdfclose} pozwala³y na + prze³adowanie plików PDF w~Adobe Acrobat Reader, bez konieczno¶ci ponownego + uruchamiania programu. (Inne przegl±darki formatu PDF, jak \cmdname{xpdf}, + \cmdname{gv} i~\cmdname{gsview}, nigdy na tê przypad³o¶æ nie cierpia³y.) + +\item Dla spójno¶ci, zmienne \envname{HOMETEXMF} i~\envname{VARTEXMF} zosta³y + przemianowane odpowiednio na \envname{TEXMFHOME} i~\envname{TEXMFSYSVAR}. + Zachowano zmienn± \envname{TEXMFVAR}, przeznaczon± domy¶lnie dla + u¿ytkownika. Patrz te¿ punkt pierwszy, powy¿ej. + +\end{itemize} + +\subsection{Wydanie 2006--2007} + +Najwiêksz± nowo¶ci± edycji lat 2006 i~2007 by³ Xe\TeX{}, +w~postaci programów \texttt{xetex} i~\texttt{xelatex}; patrz +\OnCD{texmf-dist/doc/xetex/XeTeX-reference.pdf} lub +\url{http://scripts.sil.org/xetex}. + +W istotny sposób zosta³ zaktualizowany MetaPost, zaplanowano tak¿e jego +dalszy rozwój (\url{http://tug.org/metapost/articles}); to samo dotyczy +pdf\TeX-a (\url{http://tug.org/applications/pdftex}). + +Pliki formatów (pdf)TeX-a (\filename{.fmt}) oraz analogiczne dla MetaPosta +i~Meta\-Fonta s± od tej edycji zapisywane w~podkatalogach +\dirname{texmf/web2c}, choæ sam ten katalog jest nadal przeszukiwany. +Podkatalogi te maj± nazwê zgodn± z~zastosowanym podczas generowania +,,silnikiem'', np. \filename{tex}, \filename{pdftex} lub \filename{xetex}. +Zmiana ta nie powinna byæ zauwa¿alna w~typowym u¿yciu. + +Program \texttt{tex} (plain) od tej edycji ju¿ nie analizowa³ pierwszego +wiersza rozpoczynaj±cego siê znakami \texttt{\%\&}, aby ustaliæ jaki ma +wczytaæ format. Pozosta³ zatem czysty, Knuthowy \TeX. \LaTeX\ i~wszystkie +pozosta³e formaty nadal analizuj± pierwszy wiersz z~\texttt{\%\&}. + +Oczywi¶cie, jak zwykle, w~okresie od poprzedniego wydania opracowano setki +innych aktualizacji pakietów i programów. Kolejne aktualizacje mo¿na znale¼æ +tradycyjnie na \acro{CTAN} (\url{http://mirror.ctan.org}). + +Drzewo ¼ród³owe \TL{} jest odt±d przechowywane w~Subversion. Przegl±danie +umo¿liwia standardowy interfejs www, a~jego adres zamieszczono na stronie +\url{http://tug.org.pl/texlive}. +Mimo i¿ nie widaæ efektów tej zmiany w koñcowej dystrybucji, mamy nadziejê, +¿e w~nadchodz±cych latach bêdzie to stabilne repozytorium oprogramowania +dla rozwoju \TL{}. + +W~maju 2006~r. Thomas Esser og³osi³, ¿e zaprzestaje aktualizowania +dystrybucji te\TeX{} (\url{http://tug.org/tetex}). Spowodowa³o to znaczny +wzrost zainteresowanie \TL, szczególnie w¶ród dystrybutorów +\acro{GNU}/Linuksa. (W~\TL{} zdefiniowano w przybli¿eniu równowa¿ny, nowy +schemat instalacyjny pod nazw± \texttt{tetex}.) Mamy nadziejê, ¿e +w~przysz³o¶ci doprowadzi to do takich ulepszeñ w~otoczeniu \TeX-owym, na +których skorzystaj± wszyscy. + +\subsection{Wydanie 2008} + +W 2008 roku ca³a infrastruktura \TL{} zosta³a przeprojektowana +i~przeprogramowana. Informacja dotycz±ca instalacji jest przechowywana +obecnie w~zwyk³ym pliku tekstowym \filename{tlpkg/texlive.tlpdb}. + +Po zainstalowaniu \TL{} wreszcie jest mo¿liwa jego aktualizacja z~internetu, +podobnie jak od paru lat umo¿liwia to dystrybucja MiK\TeX. Zamierzamy +regularnie aktualizowaæ pakiety, w~miarê jak bêd± siê pojawiaæ na serwerach +\CTAN. + +W~tym wydaniu pojawi³ siê nowy ,,silnik'', Lua\TeX\ +(\url{http://luatex.org}). Prócz nowych, elastycznych mo¿liwo¶ci +dotycz±cych sk³adu, udostêpnia on doskona³y jêzyk skryptowy do +zastosowania zarówno w~dokumentach \TeX-owych, jak i~poza nimi. + +Obs³uga dla Windows i~platform opartych na Unix zosta³a obecnie znacznie +bardziej zunifikowana. W~szczególno¶ci wiêkszo¶æ skryptów w~Perlu i~Lua +dostêpna jest teraz tak¿e dla Windows (zastosowano ,,wewnêtrzny'' Perl, +dostarczany wraz z~\TL). + +Pojawi³ siê nowy skrypt \cmdname{tlmgr} (patrz czê¶æ~\ref{sec:tlmgr}), który +staje siê g³ównym narzêdziem do zarz±dzania \TL{} po jego instalacji. +Umo¿liwia on aktualizacjê pakietów wraz z~niezbêdnymi wtedy czynno¶ciami, +jak regenerowanie formatów, aktualizacja map fontowych itp. + +Wraz z pojawieniem siê \cmdname{tlmgr} niektóre funkcje \cmdname{texconfig} +zosta³y zablokowane (edycja plików konfiguracyjnych formatów i~wzorców +przenoszenia). + +Program \cmdname{xindy} do tworzenia skorowidzów +(\url{http://xindy.sourceforge.net/}) jest obecnie dostêpny dla wiêkszo¶ci +platform. + +Narzêdzie \cmdname{kpsewhich} mo¿e obecnie raportowaæ wszystkie wyniki +przeszukiwania danego pliku (parametr \optname{--all}), jak równie¿ +ograniczyæ wyszukiwanie do jednego katalogu (parametr \optname{--subdir}). + +Program \cmdname{dvipdfmx} posiada obecnie funkcjê \cmdname{extractbb} +uzyskania informacji o~prostok±cie ograniczaj±cym (\textit{bounding box}); +jest to jedna z~ostatnich cech przejêtych od dawniej u¿ywanego programu +\cmdname{dvipdfm} (który jest nadal dostêpny). + +Usuniêto aliasy fontów \filename{Times-Roman}, \filename{Helvetica}, itd. +Ró¿ne pakiety korzysta³y z~nich w~nieoczekiwany sposób (np. spodziewaj±c +siê, ¿e fonty te bêd± mia³y ró¿ne kodowanie). Nie ma obecnie dobrego sposobu +na rozwi±zanie tych sprzeczno¶ci. + +Usuniêto format \pkgname{platex}, by unikn±æ konfliktu nazwy z~u¿ywanym od +wielu lat japoñskim pakietem \pkgname{platex}; pakiet \pkgname{polski} (czyli +dawny \pkgname{platex}) jest obecnie wystarczaj±cym sposobem na polonizacjê +dla \LaTeX-a. + +Usuniêto pliki \filename{.pool}, które s± obecnie wkompilowane w~programy, +co u³atwia ich aktualizacjê. + +Do tego wydania w³±czono tak¿e ostatnie zmiany dokonane przez +Donalda Knutha (tzw. \textit{\TeX\ tuneup of 2008}); patrz: +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + +\subsection{Wydanie 2009} + +W wydaniu 2009 najbardziej widoczn± zmian± jest to, ¿e +pdf\AllTeX\ \emph{automatycznie} dokonuje konwersji pliku EPS do PDF, +poprzez uruchomienie programu \code{epstopdf} (dotyczy to sytuacji, +gdy u¿yto pliku konfiguracyjnego \code{graphics.cfg} \LaTeX-a i gdy +plikiem wynikowym sk³adu ma byæ PDF). Domy¶lne ustawienia zapobiegaj± +nadpisaniu wszelkich utworzonych wcze¶niej przez u¿ytkownika plików PDF, +ale mo¿na tak¿e wy³±czyæ uruchamianie \code{epstopdf}, wstawiaj±c +|\newcommand{\DoNotLoadEpstopdf}{}| (lub |\def...|) przed deklaracj± +\cs{documentclass}. Szczegó³y mo¿na znale¼æ w dokumentacji pakietu epstopdf +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +Wa¿n± zmian± jest tak¿e uruchamianie podczas kompilacji niektórych +zewnêtrznych programów via \cs{write18}. Dotyczy to np. +\code{epstopdf}, \code{makeindex} czy \code{bibtex}. Dok³adna lista +takich programów zawarta jest w pliku \code{texmf.cnf}. +Dla instalacji, które mog± wymagaæ zakazu uruchamiania takich programów +,,w~tle'' przewidziano odpowiedni± opcjê w programie instalacyjnym (patrz +czê¶æ~~\ref{sec:options}). Po instalacji mo¿na zablokowaæ uruchamianie +w~pliku \code{texmf.cnf}. + +Od wydania 2009 domy¶lnym formatem wyj¶ciowym dla Lua\AllTeX\ staje siê PDF +(wykorzystuje on m.in. obs³ugê przez Lua\-\TeX-a fontów OpenType). Aby uzyskaæ +plik DVI nale¿y u¿yæ nowych poleceñ: \code{dviluatex} lub \code{dvilualatex}. +Strona domowa projektu Lua\TeX: \url{http://luatex.org}. + +Usuniêto oryginalny silnik Omega i format Lambda (w uzgodnieniu z autorami). +Pozosta³ zaktualizowany Aleph i format Lamed, oraz pliki pomocnicze Omega. + +Za³±czono nowe wydanie fontów AMS \TypeI, m.in. fonty +Computer Modern. Zawieraj± one poprawki dokonane w plikach metafontowych +przez D.~Knutha w ci±gu ostatnich lat, a tak¿e poprawki hintingu. +Hermann Zapf przeprojektowa³ tak¿e fonty Euler (patrz +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). +Co wa¿ne, dla wszystkich fontów nie zmieniono plików metrycznych (TFM). +Strona domowa fontów: \url{http://www.ams.org/tex/amsfonts.html}. + +Dla Windows i Mac\TeX{} do³±czono nowe ¶rodowisko\dywiz edytor \TeX{}works. +Dla innych platform patrz: \url{http://tug.org/texworks}. +Inspirowany przez edytor TeXShop dla \MacOSX, \TeX{}works jest +wieloplatformowym, ³atwym w u¿yciu ¶rodowiskiem pracy. + +Dla niektórych platform za³±czono nowy program graficzny Asymptote +(\url{http://asymptote.sourceforge.net}). Korzysta on z tekstowej notacji +zbli¿onej do MetaPosta, ale rozszerzonej do obs³ugi 3D itp. + +Program \code{dvipdfm} zosta³ zast±piony przez \code{dvipdfmx}, który +dzia³a w specjalnym trybie kompatybilnym, gdy u¿yæ do wywo³ania +dawn± nazwê. \code{dvipdfmx} wspiera \acro{CJK} i zawiera wiele poprawek +od ostatniej dystrybucji \code{dvipdfm}. Strona domowa: +\url{http://project.ktug.or.kr/dvipdfmx}. + +Dodano zestawy programów dla \pkgname{cygwin} i \pkgname{i386-netbsd}, +podczas gdy usuniêto programy dla innych platform BSD. Zapewniono nas, +¿e u¿ytkownicy OpenBSD i FreeBSD bêd± mogli pobieraæ pakiety \TeX-owe +wraz z aktualizacj± obu systemów. Ponadto natknêli¶my siê na spore trudno¶ci +przy kompilacji programów, które mog³yby dzia³aæ w ró¿nych wersjach tych +systemów. + +Inne zmiany: do kompresji pakietów u¿yto programu \pkgname{xz}, +stanowi±cego stabilny zamiennik \pkgname{lzma} +(\url{http://tukaani.org/xz/}); znak |$| jest obecnie dozwolony w nazwach +plików, o ile nie poprzedza on nazwy znanej zmiennej; biblioteka Kpathsea +jest obecnie wielow±tkowa (co wykorzystano w~programie MetaPost); do budowy +wszystkich programów wykorzystano teraz Automake. + +\subsection{Wydanie 2010} +\label{sec:2010news} % keep with 2010 + +Od wydania 2010 generowane s± pliki PDF w~wersji 1.5, oferuj±cej lepsz± +kompresjê. Dotyczy to wszystkich mechanizmów u¿ywanych do generowania PDF, +w~tym \code{dvipdfmx}. Powrót do wersji 1.4 jest mo¿liwy poprzez u¿ycie +pakietu \pkgname{pdf14} lub komendy |\pdfminorversion=4|. + +Obecnie pdf\AllTeX\ \emph{automatycznie} konwertuje plik EPS +(\textit{Encapsulated PostScript}) do formatu PDF, wykorzystuj±c pakiet +\pkgname{epstopdf}, o~ile za³adowano \LaTeX-owy plik konfiguracyjny +\code{graphics.cfg} i~wybrano format wyj¶ciowy PDF. Domy¶lne ustawienia maj± +na celu wykluczenie przypadkowego nadpisania istniej±cych ju¿, wygenerowanych +innym sposobem plików PDF, ale mo¿na równie¿ zabroniæ uruchamiania +\code{epstopdf} wpisuj±c przed poleceniem \cs{documentclass} polecenie +|\newcommand{\DoNotLoadEpstopdf}{}| (lub |\def...|). Program \code{epstopdf} nie jest +równie¿ u¿ywany w~przypadku do³±czenia pakietu \pkgname{pst-pdf}. Wiêcej +szczegó³ów znajduje siê w dokumentacji pakietu epstopdf +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +Domy¶lnie w³±czono równie¿ wykonywanie kilku programów zewnêtrznych dla \TeX-a +poprzez mechanizm \cs{write18}. Dotyczy to: \code{repstopdf}, +\code{makeindex}, \code{kpsewhich}, \code{bibtex} i~\code{bibtex8} (lista +jest zdefiniowana w~\code{texmf.cnf}). W~¶rodowiskach, w~których wykonywanie +zewnêtrznych programów jest niepo¿±dane, nale¿y tê opcjê zaznaczyæ podczas +instalacji (patrz: czê¶æ~\ref{sec:options}) lub wy³±czyæ ju¿ po niej poprzez +uruchomienie: |tlmgr conf texmf shell_escape 0|. + +Kolejna zmiana dotyczy³a programów \BibTeX\ i~Makeindex, które (podobnie +zreszt± jak sam \TeX) domy¶lnie nie zapisuj± swoich plików wynikowych do +dowolnie zdefiniowanego katalogu. Umo¿liwia to w~ograniczonym zakresie +zadzia³anie polecenia \cs{write18}. Aby to zmieniæ, nale¿y ustawiæ zmienn± +\envname{TEXMFOUTPUT} lub zmodyfikowaæ |openout_any|. + +Podobnie jak pdf\TeX, obecnie równie¿ \XeTeX\ obs³uguje wyrównywanie (tzw. +kernowanie) na krawêdzi wiersza, ale mo¿liwo¶æ poszerzania pisma +(\textit{font expansion}) nadal nie jest dostêpna. + +Program tlmgr podczas aktualizacji zachowuje obecnie domy¶lnie kopiê +poprzedniej wersji pakietu (\code{tlmgr option autobackup 1}), zatem +aktualizacja mo¿e zostaæ ³atwo cofniêta poprzez \code{tlmgr restore}. +W~przypadku ograniczonej ilo¶ci miejsca na dysku, opcja ta mo¿e zostaæ +wy³±czona przez \code{tlmgr option autobackup 0}. + +Do³±czono nowe programy: p\TeX\ i~narzêdzia do sk³adu w~jêzyku japoñskim, +\BibTeX{}U dla obs³ugi Unicode w~\BibTeX-u, chktex +(\url{http://baruch.ev-en.org/proj/chktex}) -- program do sprawdzania +dokumentów \AllTeX, dvisvgm -- konwerter DVI do SVG +(\url{http://dvisvgm.sourceforge.net}) oraz binaria dla nowych platform +sprzêtowych: \code{amd64-freebsd}, \code{amd64-kfreebsd}, +\code{i386-freebsd}, \code{i386-kfreebsd}, \code{x86\_64-darwin}, +\code{x86\_64-solaris}. + +W~dokumentacji zmian poprzedniego wydanie (\TL{} 2009) nie zd±¿ono uwzglêdniæ +usuniêcia wielu programów uruchomieniowych dla \TeX4ht +(\url{http://tug.org/tex4ht}) oraz zast±pienia ich jednym programem +\code{mk4ht}. + +Wreszcie, z~powodu niewystarczaj±cej ilo¶ci miejsca na p³ycie \TK\ \DVD, +zrezygnowano z~mo¿liwo¶ci uruchamiania \TL{} w~trybie ,,live''. Jednocze¶nie +znacznie przyspieszy³o to sam proces instalacji \TL{} z~p³ytki \DVD. + +\subsection{Wydanie 2011} + +Edycja 2011 zawiera³a stosunkowo niewiele zmian w porównaniu do poprzednich +wydañ. + +Programy dla \MacOSX\ (\code{universal-darwin} i \code{x86\_64-darwin}) +dzia³aj± od tego momentu tylko dla wersji Leopard i pó¼niejszych. Wersje +Panther i Tiger nie bêd± obs³ugiwane. + +Dla wiêkszo¶ci platform do³±czono program \code{biber}, s³u¿±cy do +przetwarzania danych bibliograficznych. Rozwój tego programu jest ¶ci¶le +zwi±zany z pakietem \code{biblatex}, który w zupe³nie nowy sposób +obs³uguje bibliografie w~La\TeX-u . + +Program MetaPost (\code{mpost}) ani nie tworzy, ani ju¿ wiêcej nie +wykorzystuje pliku formatu \code{.mem}. Wymagane pliki (np. \code{plain.mp}) +s± po prostu wczytywane przy ka¿dym uruchomieniu. Zmiana (choæ niezauwa¿alna +dla przeciêtnego u¿ytkownika) zwi±zana jest z nowym, innym podej¶ciem: +MetaPost jest obecnie traktowany jako biblioteka programów. + +Zaprogramowany w Perl program \code{updmap} (uprzednio stosowany tylko w +Windows) zosta³ dostosowany do wszystkich platform. Równie¿ te zmiany +s± niezauwa¿alne dl u¿ytkownika, choæ znacznie przyspieszy³y dzia³anie +programu. + +\htmlanchor{news} +\subsection{Obecna edycja} +\label{sec:tlcurrent} + +Program \code{tlmgr} pozwala na aktualizacje z~kilku repozytoriów w~sieci. +Szczegó³y zawarto w~pomocy (\code{tlmgr help}), w~czê¶ci dotycz±cej wielu +repozytoriów. + +Dla parametru \cs{XeTeXdashbreakstate} (\code{xetex} i~\code{xelatex}) +ustawiono domy¶lnie warto¶æ~1. Pozwala to na ³amanie wierszy po my¶lnikach +i~separatorach zakresu liczb, co by³o zawsze typowe dla kompilacji +programami \TeX, \LaTeX, Lua\TeX, itp. +Chc±c zachowaæ dotychczasowe dok³adne miejsca ³amania, +pliki kompilowane programem \XeTeX\ wymagaj± zatem u¿ycia polecenia +\cs{XeTeXdashbreakstate=0}. + +Wynikowe pliki \code{pdftex} oraz \code{dvips} mog± obecnie przekroczyæ +wielko¶æ 2GB. + +Dotychczas program \code{dvips} korzysta³ ze zbyt wielu ró¿nych wersji +standardowych 35~fontów postscriptowych. Nie by³y one domy¶lnie w³±czane +do pliku wynikowego, bo zak³adano, ¿e urz±dzenia drukuj±ce b±d¼ programy +(np. GhostScript) maj± dostêp do odpowiednich fontów. +Od tej edycji fonty ze standardowego zestawu, dostarczone w~dystrybucji \TL, +domy¶lnie s± w³±czane do tworzonego przez \code{dvips} pliku. + +W zastrze¿onym trybie pracy \cs{write18} (ustawianym domy¶lnie) dopuszczono +uruchamianie programu \code{mpost}. + +Plik konfiguracyjny \code{texmf.cnf} znajdywany jest obecnie tak¿e +w~drzewie katalogów \filename{../texmf-local}, np. +\filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf}. + +Skrypt \code{updmap} wczytuje \code{updmap.cfg} z~kolejnych drzew \TeX-owych, +zamiast jeden plik globalny. Zmiana nie powinna byæ zauwa¿alna, chyba ¿e +zmienimy rêcznie \code{updmap.cfg}. Uruchomienie \code{updmap --help} +poka¿e szczegó³y. + +Dodano binaria dla \pkgname{armel-linux} and \pkgname{mipsel-linux}. +Usuniêto z~g³ównej dystrybucji binaria dla \pkgname{sparc-linux} +i~\pkgname{i386-netbsd}, ale s± one nadal dostêpne (wraz z~binariami dla +kilku innych platform) na stronie: +\url{http://tug.org/texlive/custom-bin.html}. + +\medskip \noindent + %%!Koñcowa uwaga, dotycz±ca przesz³o¶ci: + Wszystkie wydania \TL{}, wraz z~dodatkowymi materia³ami (np. ok³adkami +p³ytek), s± dostêpne na stronie: +\url{ftp://tug.org/historic/systems/texlive}. + +\subsection{\enspace Przysz³e wersje} + +\emph{Niniejsza dystrybucja nie jest doskona³a!} Planujemy kontynuowaæ +wydawanie nowych wersji i~chcieliby¶my, ¿eby zawiera³y one jeszcze wiêcej +pomocnej dokumentacji, wiêcej programów u¿ytkowych, lepsze programy +instalacyjne oraz stale ulepszany i~poprawiany katalog makr +i~fontów. Zadanie to jest wykonywane przez ciê¿ko pracuj±cych ochotników, +po¶wiêcaj±cych na to mnóstwo swojego wolnego czasu. Wiele jeszcze zosta³o do +zrobienia. Je¿eli mo¿esz pomóc, nie zastanawiaj siê i~przy³±cz siê do nas. +Patrz: \url{http://tug.org/texlive/contribute.html}. + +Prosimy o~przesy³anie poprawek, sugestii i~uzupe³nieñ oraz deklaracji +pomocy w~opracowywaniu kolejnych edycji pod adres: +%\begin{quote} +\email{tex-live@tug.org}. +%\url{http://tug.org/texlive} +%\end{quote} + +%Uaktualnienia, og³oszenia i~wskazówki bêd± dostêpne na stronie +%\url{http://tug.org/texlive.html}. + +\end{document} + diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/Makefile b/Master/texmf-dist/doc/texlive/texlive-ru/Makefile new file mode 100644 index 00000000000..02d0de9f135 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-ru/Makefile @@ -0,0 +1,2 @@ +include ../texlive-en/Makefile +doc = texlive-ru diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/live4ht.cfg b/Master/texmf-dist/doc/texlive/texlive-ru/live4ht.cfg new file mode 100644 index 00000000000..508ccca27c8 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-ru/live4ht.cfg @@ -0,0 +1,47 @@ +% tex4ht configuration file for the TeX Live documentation. +% Accumulated over many years. Public domain. +% +% html specifies the main output format. +% info for extra debugging info in the log files. + +% better approach is to have html in one piece (including footnotes). +% also the newest TeX4ht could produce UTF-8 output (-utf8 option) +\Preamble{charset=iso-8859-5,html,info,fn-in} + +% add extra stylesheet +\Configure{@HEAD}{\HCode{% +\Hnewline +\Hnewline +}} + +% or LaTeX complains it is missing. +\begin{document} + +\EndPreamble + +% simplify output for HTML. We leave TeX and LaTeX alone, since tex4ht +% actually does the lowered E (and raised A) in CSS. +\def\OMEGA{Omega} +\def\LaTeXe{LaTeX2e} +\def\eTeX{e-\TeX} +\def\acro#1{#1} +\def\MF{Metafont} +\def\BibTeX{BibTeX} +\def\warningbox{} +\def\endwarningbox{} + +\newif\ifhackliterals +\ifx\tldocenglish\undefined \else \hackliteralstrue \fi +\ifx\tldocrussian\undefined \else \hackliteralstrue \fi +\ifx\tldocgerman\undefined \else \hackliteralstrue \fi +% +\ifhackliterals + % these definitions cause "missing } inserted" at \end{tabularx} in + % French and Czech. don't know why. + % + % don't make these into links, as happens with \path. We only have a couple + % special characters that actually occur. + \def\dirname{\texttt\bgroup\catcode`\$=12 \catcode`\_=12 \finishliteral} + \def\finishliteral#1{#1\egroup} + \let\filename=\dirname +\fi diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/t2almdh.fd b/Master/texmf-dist/doc/texlive/texlive-ru/t2almdh.fd new file mode 100644 index 00000000000..1e45d6f7208 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-ru/t2almdh.fd @@ -0,0 +1,51 @@ +%% +%% This is file `t2acmdh.fd', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% t2lhfnt.fdd (with options: `T2Acmdh') +%% This file is a generated file from the sources of the `cyrillic' bundle +%% in the LaTeX2e distribution. +%% +%% This is a generated file. +%% +%% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2008 +%% The LaTeX3 Project and any individual authors listed elsewhere +%% in this file. +%% +%% This file was generated from file(s) of the Standard LaTeX `Cyrillic Bundle'. +%% ----------------------------------------------------------------------------- +%% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This file may only be distributed together with a copy of the LaTeX +%% `Cyrillic Bundle'. You may however distribute the LaTeX `Cyrillic +%% Bundle' without such generated files. +%% +%% The list of all files belonging to the `Cyrillic Bundle' is +%% given in the file `manifest.txt'. +%% +%% In particular, permission is granted to customize the declarations in +%% this file to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to distribute a modified version +%% of this file under its original name. +%% +\ProvidesFile{t2almdh.fd} + [2001/08/11 v1.0a Computer Modern Cyrillic font definitions] +\providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}% + {<5><6><7><8><9><10><10.95><12><14.4>% + <17.28><20.74><24.88><29.86><35.83>genb*#5}{}} +\DeclareFontFamily{T2A}{lmdh}{} +\EC@family{T2A}{lmdh}{m}{n}{ladh} +\endinput +%% +%% End of file `t2acmdh.fd'. diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/t2almr.fd b/Master/texmf-dist/doc/texlive/texlive-ru/t2almr.fd new file mode 100644 index 00000000000..8dfade4c712 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-ru/t2almr.fd @@ -0,0 +1,60 @@ +%% +%% This is file `t2acmr.fd', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% t2lhfnt.fdd (with options: `T2Acmr') +%% This file is a generated file from the sources of the `cyrillic' bundle +%% in the LaTeX2e distribution. +%% +%% This is a generated file. +%% +%% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2008 +%% The LaTeX3 Project and any individual authors listed elsewhere +%% in this file. +%% +%% This file was generated from file(s) of the Standard LaTeX `Cyrillic Bundle'. +%% ----------------------------------------------------------------------------- +%% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This file may only be distributed together with a copy of the LaTeX +%% `Cyrillic Bundle'. You may however distribute the LaTeX `Cyrillic +%% Bundle' without such generated files. +%% +%% The list of all files belonging to the `Cyrillic Bundle' is +%% given in the file `manifest.txt'. +%% +%% In particular, permission is granted to customize the declarations in +%% this file to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to distribute a modified version +%% of this file under its original name. +%% +\ProvidesFile{t2almr.fd} + [2001/08/11 v1.0a Computer Modern Cyrillic font definitions] +\providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}% + {<5><6><7><8><9><10><10.95><12><14.4>% + <17.28><20.74><24.88><29.86><35.83>genb*#5}{}} +\DeclareFontFamily{T2A}{lmr}{} +\EC@family{T2A}{lmr}{m}{n}{larm} +\EC@family{T2A}{lmr}{m}{sl}{lasl} +\EC@family{T2A}{lmr}{m}{it}{lati} +\EC@family{T2A}{lmr}{m}{sc}{lacc} +\EC@family{T2A}{lmr}{bx}{n}{labx} +\EC@family{T2A}{lmr}{b}{n}{larb} +\EC@family{T2A}{lmr}{bx}{it}{labi} +\EC@family{T2A}{lmr}{bx}{sl}{labl} +\EC@family{T2A}{lmr}{bx}{sc}{laxc} +\EC@family{T2A}{lmr}{m}{ui}{laui} +\endinput +%% +%% End of file `t2acmr.fd'. diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/t2almss.fd b/Master/texmf-dist/doc/texlive/texlive-ru/t2almss.fd new file mode 100644 index 00000000000..91649f2fc94 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-ru/t2almss.fd @@ -0,0 +1,60 @@ +%% +%% This is file `t2acmss.fd', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% t2lhfnt.fdd (with options: `T2Acmss') +%% This file is a generated file from the sources of the `cyrillic' bundle +%% in the LaTeX2e distribution. +%% +%% This is a generated file. +%% +%% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2008 +%% The LaTeX3 Project and any individual authors listed elsewhere +%% in this file. +%% +%% This file was generated from file(s) of the Standard LaTeX `Cyrillic Bundle'. +%% ----------------------------------------------------------------------------- +%% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This file may only be distributed together with a copy of the LaTeX +%% `Cyrillic Bundle'. You may however distribute the LaTeX `Cyrillic +%% Bundle' without such generated files. +%% +%% The list of all files belonging to the `Cyrillic Bundle' is +%% given in the file `manifest.txt'. +%% +%% In particular, permission is granted to customize the declarations in +%% this file to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to distribute a modified version +%% of this file under its original name. +%% +\ProvidesFile{t2almss.fd} + [2001/08/11 v1.0a Computer Modern Cyrillic font definitions] +\providecommand{\EC@family}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}% + {<5><6><7><8><9><10><10.95><12><14.4>% + <17.28><20.74><24.88><29.86><35.83>genb*#5}{}} +\DeclareFontFamily{T2A}{lmss}{} +\EC@family{T2A}{lmss}{m}{n}{lass} +\EC@family{T2A}{lmss}{m}{sl}{lasi} +\EC@family{T2A}{lmss}{m}{it}{lasi} +\EC@family{T2A}{lmss}{bx}{n}{lasx} +\EC@family{T2A}{lmss}{bx}{it}{laso} +\EC@family{T2A}{lmss}{bx}{sl}{laso} +\DeclareFontShape{T2A}{lmss}{m}{sc}{<->sub*cmr/m/sc}{} +\DeclareFontShape{T2A}{lmss}{sbc}{n}{% + <5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>lassdc10% +}{} +\endinput +%% +%% End of file `t2acmss.fd'. diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/t2almtt.fd b/Master/texmf-dist/doc/texlive/texlive-ru/t2almtt.fd new file mode 100644 index 00000000000..8168ab4e28c --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-ru/t2almtt.fd @@ -0,0 +1,59 @@ +%% +%% This is file `t2acmtt.fd', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% t2lhfnt.fdd (with options: `T2Acmtt,tt,nowarn') +%% This file is a generated file from the sources of the `cyrillic' bundle +%% in the LaTeX2e distribution. +%% +%% This is a generated file. +%% +%% Copyright 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2008 +%% The LaTeX3 Project and any individual authors listed elsewhere +%% in this file. +%% +%% This file was generated from file(s) of the Standard LaTeX `Cyrillic Bundle'. +%% ----------------------------------------------------------------------------- +%% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This file may only be distributed together with a copy of the LaTeX +%% `Cyrillic Bundle'. You may however distribute the LaTeX `Cyrillic +%% Bundle' without such generated files. +%% +%% The list of all files belonging to the `Cyrillic Bundle' is +%% given in the file `manifest.txt'. +%% +%% In particular, permission is granted to customize the declarations in +%% this file to serve the needs of your installation. +%% +%% However, NO PERMISSION is granted to distribute a modified version +%% of this file under its original name. +%% +\ProvidesFile{t2almtt.fd} + [2001/08/11 v1.0a Computer Modern Cyrillic font definitions] +\providecommand{\EC@ttfamily}[5]{% + \DeclareFontShape{#1}{#2}{#3}{#4}% + {<5><6><7><8>#50800% + <9><10><10.95><12><14.4><17.28><20.74><24.88><29.86>% + <35.83>genb*#5}{}} +\DeclareFontFamily{T2A}{lmtt}{\hyphenchar\font\m@ne} +\EC@ttfamily{T2A}{lmtt}{m}{n}{latt} +\EC@ttfamily{T2A}{lmtt}{m}{sl}{last} +\EC@ttfamily{T2A}{lmtt}{m}{it}{lait} +\EC@ttfamily{T2A}{lmtt}{m}{sc}{latc} +\DeclareFontShape{T2A}{lmtt}{bx}{n}% + {<->ssub*cmtt/m/n}{} +\DeclareFontShape{T2A}{lmtt}{bx}{it}% + {<->ssub*cmtt/m/it}{} +\endinput +%% +%% End of file `t2acmtt.fd'. diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/tex-live.css b/Master/texmf-dist/doc/texlive/texlive-ru/tex-live.css new file mode 100644 index 00000000000..5062bc0d229 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-ru/tex-live.css @@ -0,0 +1,44 @@ +/* $Id$ + Simple CSS for TeX Live that adds margins and a little color. + original by Bzyl Wlodzimierz, edited by Karl Berry, 2005. + Public domain. */ + +html { + // top left bottom right + margin: 15pt 15pt 15pt 15pt; + background: rgb(255,255,224); +} + +body { + margin: 0 5pt 0 5pt; + padding: 0; + //matw: background: rgb(224,255,224); + // (It looks better to me to have a consistent background --karl) +// fonts in browser are low resolution; +// therefore generated serif are poor quality, +// so they disturb reading (that is my opinion) + font-family: sans-serif; + font-style: normal; +} + +/* (It looks better to me to not vary colors at every level --karl) */ + +h3.sectionHead { + padding: 12pt 10pt 12pt 20pt; + //matw: background: rgb(192,224,255); + background: rgb(224,224,255); + color: rgb(0,0,32); +} + +h4.subsectionHead { + padding: 7pt 10pt 7pt 40pt; + background: rgb(224,224,255); + color: rgb(0,0,32); +} + +h5.subsubsectionHead { + padding: 3pt 10pt 3pt 40pt; + //matw: background: rgb(224,255,255); + background: rgb(224,224,255); + color: rgb(0,0,32); +} diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.css b/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.css new file mode 100644 index 00000000000..8de0d2f83c1 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.css @@ -0,0 +1,192 @@ + +/* start css.sty */ +.lati-2074{font-size:200%;font-style: italic;} +.lati-2074{font-style: italic;} +.lass-1728{font-size:170%;font-family: monospace;} +.lass-1728{font-family: monospace;} +.larm-1200{font-size:120%;} +.latt-1200{font-size:120%;font-family: monospace;} +.latt-1200{font-family: monospace;} +.latt-1200{font-family: monospace;} +.latt-1200{font-family: monospace;} +.latt-1200{font-family: monospace;} +.latt-1000{font-family: monospace;} +.latt-1000{font-family: monospace;} +.latt-1000{font-family: monospace;} +.latt-1000{font-family: monospace;} +.latt-1000{font-family: monospace;} +.lass-1000{font-family: monospace;} +.lass-1000{font-family: monospace;} +.labx-1000{font-weight: bold;} +.lati-1000{font-style: italic;} +.lati-1000{font-style: italic;} +.latt-0800{font-size:80%;font-family: monospace;} +.latt-0800{font-family: monospace;} +.latt-0800{font-family: monospace;} +.latt-0800{font-family: monospace;} +.latt-0800{font-family: monospace;} +.latt-0900{font-size:90%;font-family: monospace;} +.latt-0900{font-family: monospace;} +.latt-0900{font-family: monospace;} +.latt-0900{font-family: monospace;} +.latt-0900{font-family: monospace;} +.larm-0700{font-size:70%;} +.latt-0800x-x-87{font-size:69%;font-family: monospace;} +.latt-0800x-x-87{font-family: monospace;} +.latt-0800x-x-87{font-family: monospace;} +.latt-0800x-x-87{font-family: monospace;} +.latt-0800x-x-87{font-family: monospace;} +p.noindent { text-indent: 0em } +td p.noindent { text-indent: 0em; margin-top:0em; } +p.nopar { text-indent: 0em; } +p.indent{ text-indent: 1.5em } +@media print {div.crosslinks {visibility:hidden;}} +a img { border-top: 0; border-left: 0; border-right: 0; } +center { margin-top:1em; margin-bottom:1em; } +td center { margin-top:0em; margin-bottom:0em; } +.Canvas { position:relative; } +img.math{vertical-align:middle;} +li p.indent { text-indent: 0em } +li p:first-child{ margin-top:0em; } +li p:last-child, li div:last-child { margin-bottom:0.5em; } +li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } +.enumerate1 {list-style-type:decimal;} +.enumerate2 {list-style-type:lower-alpha;} +.enumerate3 {list-style-type:lower-roman;} +.enumerate4 {list-style-type:upper-alpha;} +div.newtheorem { margin-bottom: 2em; margin-top: 2em;} +.obeylines-h,.obeylines-v {white-space: nowrap; } +div.obeylines-v p { margin-top:0; margin-bottom:0; } +.overline{ text-decoration:overline; } +.overline img{ border-top: 1px solid black; } +td.displaylines {text-align:center; white-space:nowrap;} +.centerline {text-align:center;} +.rightline {text-align:right;} +div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } +.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.fbox {display:table} +div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.minipage{width:100%;} +div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} +div.center div {text-align: left;} +div.flushright, div.flushright div.flushright {text-align: right;} +div.flushright div {text-align: left;} +div.flushleft {text-align: left;} +.underline{ text-decoration:underline; } +.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } +.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +.framebox-c {text-align:center;} +.framebox-l {text-align:left;} +.framebox-r {text-align:right;} +span.thank-mark{ vertical-align: super } +span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } +div.footnotes{border-top:solid 1px black; border-bottom:solid 1px black; padding-bottom:1ex; padding-top:0.5ex; margin-right:15%; margin-top:2ex; font-style:italic; font-size:85%;} +div.footnotes p{margin-top:0; margin-bottom:0; text-indent:0;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +.tabbing-right {text-align:right;} +span.TEX {letter-spacing: -0.125em; } +span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} +a span.TEX span.E {text-decoration: none; } +span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} +span.LATEX span.TEX{ position:relative; left: -0.4em; } +div.float, div.figure {margin-left: auto; margin-right: auto;} +div.float img {text-align:center;} +div.figure img {text-align:center;} +.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} +.marginpar p{margin-top:0.4em; margin-bottom:0.4em;} +table.equation {width:100%;} +.equation td{text-align:center; } +td.equation { margin-top:1em; margin-bottom:1em; } +td.equation-label { width:5%; text-align:center; } +td.eqnarray4 { width:5%; white-space: normal; } +td.eqnarray2 { width:5%; } +table.eqnarray-star, table.eqnarray {width:100%;} +div.eqnarray{text-align:center;} +div.array {text-align:center;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.pmatrix img{vertical-align:middle;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.bar-css {text-decoration:overline;} +img.cdots{vertical-align:middle;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +div.array {text-align:center;} +.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} +.index-item, .index-subitem, .index-subsubitem {display:block} +div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} +div.caption span.id{font-weight: bold; white-space: nowrap; } +h1.partHead{text-align: center} +p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} +.subparagraphHead, .likesubparagraphHead { font-weight: bold;} +.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} +.verse{white-space:nowrap; margin-left:2em} +div.maketitle {text-align:center;} +h2.titleHead{text-align:center;} +div.maketitle{ margin-bottom: 2em; } +div.author, div.date {text-align:center;} +div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } +.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } +.abstract p {margin-left:5%; margin-right:5%;} +div.abstract {width:100%;} +.alltt P { margin-bottom : 0em; margin-top : 0em; } +.alltt { margin-bottom : 1em; margin-top : 1em; } +.figure img.graphics {margin-left:10%;} +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +div.longtable{text-align:center;} +.uline{ text-decoration:underline; } +.uuline{ text-decoration:underline; } +span.sout {text-decoration: line-through } +span.xout {text-decoration: line-through } +span.uwave {text-decoration:underline } +P.fancyvrb {white-space: nowrap; margin:0em;} +div#fancyvrb1{ border-top: solid 0.4pt; } +div#fancyvrb1{ border-left: solid 0.4pt; } +div#fancyvrb1{ border-bottom: solid 0.4pt; } +div#fancyvrb1{ border-right: solid 0.4pt; } +div#fancyvrb2{ border-top: solid 0.4pt; } +div#fancyvrb2{ border-left: solid 0.4pt; } +div#fancyvrb2{ border-bottom: solid 0.4pt; } +div#fancyvrb2{ border-right: solid 0.4pt; } +div#fancyvrb3{ border-top: solid 0.4pt; } +div#fancyvrb3{ border-left: solid 0.4pt; } +div#fancyvrb3{ border-bottom: solid 0.4pt; } +div#fancyvrb3{ border-right: solid 0.4pt; } +div#fancyvrb4{ border-top: solid 0.4pt; } +div#fancyvrb4{ border-left: solid 0.4pt; } +div#fancyvrb4{ border-bottom: solid 0.4pt; } +div#fancyvrb4{ border-right: solid 0.4pt; } +/* end css.sty */ + diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.html b/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.html new file mode 100644 index 00000000000..ab2a1488b5e --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.html @@ -0,0 +1,6368 @@ + + + + Руководство пользователя TEX Live +TeX Live 2012 + + + + + + + + + + +

+ + + + + +

Руководство пользователя TEX Live
+TEX Live 2012

+
Редактор: Карл Берри +
http://tug.org/texlive/

+
Июнь 2012
+
+

Содержание

+
+ 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 Установка в упрощенном графическом режиме +
 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 Переменные окружения для UNIX +
  3.4.2 Переменные окружения: глобальная конфигурация +
  3.4.3 Обновления из Интернета после установки с DVD +
  3.4.4 Настройка шрифтов для программ XeTEX и LuaTEX +
  3.4.5 ConTEXt Mark IV +
  3.4.6 Добавление личных и локальных пакетов + + +
  3.4.7 Добавление новых шрифтов +
 3.5 Тестирование системы +
 3.6 Ссылки на дополнительные программы +
4 Установка системы в особых случаях +
 4.1 Установка в локальной сети +
5 Установка TEX Live на флешку +
 5.1 Создание образа ISO или DVD +
6 Администрирование системы при помощи tlmgr +
 6.1 Программа tlmgr в графическом режиме +
 6.2 Примеры запуска программы tlmgr из командной строки +
7 Дополнительные замечания о Windows +
 7.1 Дополнительные возможности Windows +
 7.2 Дополнительные пакеты для Windows +
 7.3 Домашняя директория под Windows +
 7.4 Регистр Windows +
 7.5 Права доступа под Windows +
  7.5.1 Увеличение предоставляемой памяти под Windows и Cygwin +
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 Опции запуска +
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.1.7 2010 +
  10.1.8 2011 +
 10.2 Настоящее +
 10.3 Будущее +
+

+

1 Введение

+ + +

+

1.1 TEX Live и TEX Collection

+

В этом документе описаны основные возможности программного продукта TEX Live — дистрибутива +TEXа и других программ для GNU/Linux и других UNIXов, Mac OS X и Windows. +

TEX Live можно скачать с Интернета, а можно получить на DVD «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, +стр. 73. +

+

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

+

В TEX Live включены скомпилированные программы для многих вариантов UNIX, включая +GNU/Linux, Mac OS X и Cygwin. Исходный код также включён в дистрибутив, что позволяет +компилировать TEX Live и на платформах, для которых мы не включили собранных программ. +

Что касается Windows: поддерживаются версии Windows XP и младше. Программы также более или +менее работоспособны под Windows 2000. Мы не собрали 64-битовые программы для Windows, но +32-битовые варианты должны работать на 64-битовых систем. +

Альтернативные варианты для Windows и Mac OS X описаны в разделе 2.1. +

+

1.3 Основы установки TEX Live

+

TEX Live можно установить с DVD или с Интернета (http://tug.org/texlive/acquire.html). +Программа для установки с сети сама по себе мала — она скачивает все нужное с Интернета. +

Программа установки с DVD позволяет установить TEX Live на диск компьютера. Вы не сможете +запускать TEX Live непосредственно с DVD, но вы можете собрать работающую версию TEX Live, +например, на флешке USB (см. 5). Установка системы подробно описана в следующих разделах +(стр. 12), но вкратце она состоит в следующем: +

    +
  • Скрипт для установки системы называется install-tl. Он может работать в упрощенном + графическом варианте, если выбрана опция -gui=wizard) (режим по умолчанию для + Windows), в текстовом варианте, если выбрана опция -gui=text (режим по умолчанию + для остальных архитектур), и в графическом варианте для экспертов, если выбрана опция + -gui=perltk. +
  • +
  • Среди установленных программ есть «Менеджер TEX Live», tlmgr. Как и программа + установки, он может работать как в графическом, так и в текстовом режимах. Эта + программа позволяет устанавливать и удалять пакеты, а также настраивать систему.
+

+

1.4 Соображения безопасности

+

Насколько мы можем сказать, основные программы TEXа были и остаются очень надежными. Однако +несмотря на все усилия, некоторые программы дистрибутива могут не достичь этого уровня. Как +обычно, вы должны быть осторожны, обрабатывая любыми программами ненадежные исходные данные; +для безопасности делайте это в отдельной поддиректории. +

Особенной осторожности требует работа под Windows, поскольку Windows обычно запускает в +первую очередь копию программы из текущей директории, даже если существует другая копия там, где +в системе обычно находятся бинарники. Это открывает много возможностей для хакерских атак. Мы +закрыли много дыр в безопасности, но без сомнения, ещё больше дыр осталось, особенно в +предоставленных нам чужих программах. Поэтому мы рекомендуем проверять подозрительные файлы в + + +рабочей директории, особенно исполняемые файлы (бинарники и скрипты). Обычно их там быть не +должно, и вёрстка документов не должна их создавать. +

Наконец, TEX (и вспомогательные программы) способны писать в файлы при обработке документов. +Это можно использовать для атаки разнообразными способами. И опять, безопаснее всего обрабатывать +неизвестные документы в отдельной директории. +

+

1.5 Где можно получить поддержку

+

Сообщество пользователей TEXа активно и дружелюбно, и практически на каждый серьёзный вопрос +найдётся ответ. Однако эта поддержка неформальна, выполняется добровольцами, и поэтому очень +важно, чтобы вы сами попробовали найти ответ перед тем, как задавать вопрос. (Если вы предпочитаете +коммерческую поддержку, возможно вам ст´оит вместо TEX Live купить одну из коммерческих версий +TEXа, см. список по адресу http://tug.org/interest.html#vendors). +

Вот список источников поддержки, приблизительно в том порядке, в котором мы рекомендуем к ним +обращаться: +

+

+Страница для новичков:
Если вы — новичок, то страница http://tug.org/begin.html может + послужить для начала. +
+TEX FAQ:
TEX FAQ (ЧаВо, часто задаваемые вопросы) — огромная коллекция ответов на + всевозможные вопросы, от самых простых до самых сложных. Английская версия ЧаВо + находится на TEX Live в разделе texmf-dist/doc/generic/FAQ-en/html/index.html и доступна + в Интернете по адресу http://www.tex.ac.uk/faq. Пожалуйста, начинайте поиск ответа на + ваши вопросы отсюда. +
+TEX Catalogue:
Если вы ищете какой-либо пакет, шрифт, программу и т.п., то вам стоит + заглянуть в TEX Catalogue. Это огромный каталог всего, что относится к TEXу. См. + http://www.ctan.org/help/Catalogue. +
+TEX во всемирной паутине:
Вот страничка, на которой много ссылок по TEXу, включая + многочисленные книги, руководства и статьи: http://tug.org/interest.html. +
+Архивы списков рассылки и групп:
Два основных форума технической поддержки — группа + news:comp.text.tex и список рассылки texhax@tug.org. В их архивах тысячи вопросов и + ответов на все случаи жизни. См. http://groups.google.com/groups?group=comp.text.tex + и http://tug.org/mail-archives/texhax. Поиск, например, в Гугле (http://google.com) + тоже часто помогает найти ответ. +
+Вопросы на форумах
Если вы не можете найти ответа на ваш вопрос, вы можете либо + опубликовать вопрос в comp.text.tex при помощи Google или вашей любимой новостной + программы, либо послать письмо на лист рассылки texhax@tug.org. Но перед этим + пожалуйста прочтите в ЧаВо совет о том, как правильно задавать вопросы на этих + форумах: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion. +
+Поддержка TEX Live
Если вы хотите сообщить о баге или высказать нам свои предложения + и замечания о дистрибутиве TEX Live, его установке или документации, пишите на лист + рассылки tex-live@tug.org. Однако если ваш вопрос касается конкретной программы, + входящей в TEX Live, вам лучше задавать вопросы её автору или посылать их на + соответствующий список рассылки. Часто соответствующий адрес можно получить при + помощи опции --help нужной программы. + + +
+Русскоязычные ресурсы
(добавлено переводчиком) Эхоконференция ru.tex доступна как в + сети ФИДО, так и в Интернете (как news:fido7.ru.tex). Русские группы ФИДО можно + найти на многих серверах, например demos.ddt.su. В ЧаВо этой группы приводится много + ссылок на русскоязычные ресурсы. +
+

С другой стороны, вы сами тоже можете помочь тем, у кого есть вопросы. И comp.text.tex, и +texhax, и fido7.ru.tex открыты для всех, поэтому вы тоже можете присоединиться, читать и помогать +другим. +

+

2 Структура TEX Live

+

Этот раздел описывает структуру и содержание TEX Collection и его составной части TEX +Live. +

+

2.1 TEX Collection: TEX Live, proTEXt, MacTEX

+

DVD TEX Collection содержит следующие пакеты: +

+

+TEX Live:
полная система, которую можно установить на жесткий диск компьютера. Её + домашняя страница http://tug.org/texlive/. +
+MacTEX:
вариант для Mac OS X. + Этот пакет добавляет к TEX Live программу установки для Mac OS X и другие программы + для Макинтошей. Страница проекта — http://www.tug.org/mactex/. +
+proTEXt:
улучшенный вариант дистрибутива MiKTEX для Windows. proTEXt включает в себя + дополнительные программы и упрощённую установку. Он не зависит от TEX Live и включает + собственные инструкции по установке. Страница proTEXt — http://tug.org/protext. +
+CTAN:
Зеркало архива CTAN (http://www/ctan/org). +
+texmf-extra:
директория с разнообразными дополнительными пакетами. +
+

Лицензии на использование CTAN, protext и texmf-extra отличаются от лицензии TEX Live, поэтому +будьте внимательны при распространении или модификации программ, входящих в эти +дистрибутивы. +

+

2.2 Корневые директории TEX Live

+

Вот краткое описание корневых директорий в дистрибутиве TEX Live. +

+

+ bin:
+

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

+ readme-*.dir:
+

Краткое руководство пользователя и коллекция ссылок на разных языках, в текстовом + формате и формате HTML. + + +

+ source:
+

Исходный код всех программ, включая дистрибутивы Web2C TEX и Metafont. +

+ texmf:
+

См. TEXMFMAIN ниже. +

+ texmf-dist:
+

См. TEXMFDIST ниже. +

+ tlpkg:
+

Скрипты, программы и другие файлы для поддержки системы, а также некоторые полезные + программы для Windows

+

Кроме этих директорий, в корневой директории находятся скрипты установки и файлы README (на +разных языках). +

Файл doc.html в корневой директории содержит много ссылок на полезную документацию. +Документация к отдельным программам (руководства, man, info) находится в директории texmf/doc. +Документация макропакетов и форматов находится в директории texmf-dist/doc. Для поиска +документации можно воспользоваться программой texdoc. +

Документация к самому дистрибутиву TEX Live находится в директории texmf-doc и доступна на +нескольких языках: +

+

+

2.3 Описание директорий texmf

+

В этом разделе описаны все переменные, задающие положение деревьев директорий texmf и их значения +по умолчанию. Команда tlmgr conf показывает текущие значения этих переменных, так что вы можете +определить, где эти директории находятся в вашей системе. +

+

+ TEXMFMAIN
+

Дерево, где находятся основные части системы: файлы конфигурации, скрипты и + документация. +

+ TEXMFDIST
+

Дерево с основным набором макропакетов, шрифтов и т.д. + + +

+ TEXMFLOCAL
+

Дерево, которое может быть использовано администраторами системы для дополнительных + пакетов, шрифтов и т.д. +

+ TEXMFHOME
+

Дерево, которое пользователи могут использовать для установки собственных пакетов, + шрифтов и т.д., или для обновлённых версий системных пакетов. Эта переменная указывает + на дерево в домашней директории, своей для каждого пользователя. +

+ TEXMFCONFIG
+

Это дерево используется утилитами texconfig, updmap и fmtutil для хранения + модифицированных файлов конфигурации (своих для каждого пользователя) +

+ TEXMFSYSCONFIG
+

Это дерево используется утилитами texconfig-sys, updmap-sys и fmtutil-sys для хранения + модифицированных файлов конфигурации, общих для всех пользователей. +

+ TEXMFVAR
+

Это дерево используется утилитами texconfig, updmap и fmtutil для хранения создаваемых + автоматически файлов: форматов, карт шрифтов. +

+ TEXMFCACHE
+

Это дерево используется программой ConTEXt MkIV для хранения файлов, создаваемых + автоматически. +

+ TEXMFSYSVAR
+

Это дерево используется утилитами texconfig-sys, updmap-sys, fmtutil-sys, а также tlmgr + для хранения создаваемых автоматически файлов: форматов, карт шрифтов, — общих для + всех пользователей.

+

По умолчанию структура директорий выглядит так: +

+корневая директория
может содержать несколько версий TEX Live: +
+ 2011
+

Предыдущая версия. +

+ 2012
+

Текущая версия. +

+ 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, общая для всех версий TEX Live.

+
+домашняя директория пользователя
($HOME или %USERPROFILE%) +
+ .texlive2011
+

Данные и конфигурационные файлы предыдущей версии. +

+ .texlive2012
+

Данные и конфигурационные файлы текущей версии. +

+ texmf-var   
+

TEXMFVAR +

+ texmf-config
+

TEXMFCONFIG

+
+ texmf
+

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

+
+

+

2.4 Расширения TEXа

+

Кнутовский вариант TEXа заморожен — за исключением редких исправлений багов, в него +не вносится никаких изменений. Он все ещё распространяется в TEX Live как tex и будет +распространяться в обозримом будущем. В состав TEX Live входит несколько расширений +TEXа: +

+

+e-TEX
добавляет набор новых примитивов (относящийся к макроподстановкам, чтению + символов, дополнительным возможностям отладки и многому другому) и расширения + 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/padftex-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, сделанную через + стандартные библиотеки. См. http://tug.org/xetex. +
+Omega (Омега)
основана на Unicode (система 16-битовых символов), что позволяет работать + одновременно почти со всеми письменностями мира. Она также поддерживает так + называемый «процесс трансляции Omega» (OTPs) для сложных преобразований + произвольного входного потока. Омега больше не включается в дистрибутив TEX Live в + качестве самостоятельной программы; на диске есть только Aleph (см. ниже). +
+Aleph
объединяет Omega и e-TEX. См. краткую документацию в texmf-dist/doc/aleph/base. +
+

+

2.5 Другие интересные программы в дистрибутиве TEX Live

+

Вот несколько других важных программ в дистрибутиве TEX Live: +

+

+ bibtex
+

поддержка библиографий. +

+ makeindex, xindy
+

поддержка алфавитных указателей. +

+ dvips
+

преобразование DVI в PostScript. +

+ xdvi
+

программа для просмотра DVI для X Window System. +

+ dvilj
+

драйвер для лазерных принтеров семейства 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-fonts-survey. +

+

3 Установка

+

+

3.1 Запуск программы установки

+

Для начала вам потребуется DVD TEX Collection или программа установки TEX Live с +Интернета. Найдите скрипт установки: install-tl для UNIX, install-tl.bat для Windows. Более +подробно различные способы приобретения и установки дистрибутива рассмотрены на странице +http://tug.org/texlive/acquire.html. +

+

+Установка с сети:
скачайте программу из архива CTAN, директория systems/texlive/tlnet; + адрес + http://mirror.ctan.org/systems/texlive/tlnet автоматически приводит к ближайшему + зеркалу архива. Вы можете скачать либо install-tl.zip (установка под UNIX и Windows), + либо файл существенно меньшего размера install-unx.tar.gz (только для UNIX). После + распаковки файлы install-tl и install-tl.bat окажутся в директории install-tl. +
+TEX Collection DVD:
Перейдите в поддиректорию texlive. Под Windows программа + установки запускается автоматически, когда вы вставляете DVD в компьютер. Вы + можете получить DVD, вступив в группу пользователей TEXа (мы настоятельно + рекомендуем это сделать, http://tug.org/usergroups.html), либо купив его отдельно + (http://tug.org/store), либо сделав его самостоятельно, скачав ISO образ диска. После + установки системы вы можете получать обновления из Интернета, см. раздел 3.4.3. +
+

В обоих случаях программа установки системы одна и та же. Главное различие состоит в том, что +при установке с сети ставятся последние версии пакетов — в отличие от установки с DVD или +ISO. +

В следующих разделах установка описывается более подробно. + + +

+

3.1.1 UNIX
+

Ниже > указывает системный промпт; то, что вводит пользователь, показано жирным шрифтом. Проще +всего начать установку так:

+

+> cd /path/to/installer +
> perl install-tl +
+
(Вместо этого вы можете запустить perl /path/to/installer/install-tl, или ./install-tl, если у +этого скрипта есть права на выполнение, и т.д. Мы не будем указывать все эти варианты.) +Возможно, вам придется увеличить размер окна терминала, чтобы в него поместился весь диалог +(Рисунок 1). +

Для установки в экспертном графическом режиме (рисунок 2) вам потребуется модуль Perl/TK, +собранный с поддержкой XFT (он обычно есть в системах GNU/Linux, но может отсутствовать на +других системах). Если он у вас установлен, используйте

+

+> perl install-tl -gui +
+
+

Полный список возможных опций дает команда

+

+> perl install-tl -help +
+
+

Предупреждение о правах доступа в UNIX: система установки TEX Live использует текущее +значение параметра umask. Поэтому если вы хотите, чтобы системой могли пользоваться не только вы, +но и другие пользователи, вы должны установить, например, umask 022. Более подробно umask +обсуждается в документации к вашей системе. +

Замечание об установке под Cygwin: в отличие от других систем типа UNIX, Cygwin в +стандартной конфигурации не включает всех необходимых для установки TEX Live программ. См. +раздел 3.1.4. +

+

3.1.2 MacOSX
+

Как отмечается в разделе 2.1, для Mac OS X существует специальный дистрибутив, MacTEX +(http://tug.org/mactex). Мы рекомендуем пользоваться его системой установки, а не общим скриптом +TEX Live, поскольку у него есть дополнительные возможности, специфические для Макинтошей, +например, удобное переключение между различными дистрибутивами TEXа для Mac OS X (MacTEX, +Fink, MacPorts, …). +

MacTEX основан на TEX Live, и основные деревья директорий у этих дистрибутивов совпадают. +MacTEX добавляет несколько поддиректорий с программами и документацией, предназначенными для +Макинтошей. +

+

3.1.3 Windows
+

Если вы устанавливаете систему с сети, или если программа установки с DVD не стартовала +автоматически, дважды щёлкните по install-tl.bat. Если вам нужна более тонкая +настройка, например, если вы хотите выбрать определенные коллекции пакетов, запустите +install-tl-advanced.bat. +

Можно также запустить программу из командной строки. Ниже > означает системный промпт; то, +что вводит пользователь, указано жирным шрифтом. Если вы находитесь в директории программы +установки, напечатайте:

+ + +

+> install-tl +
+
+

Программу можно вызвать и из другой директории, например,

+

+> D:\texlive\install-tl +
+
(предполагается, что в D: находится DVD TEX Collection). На рисунке 3 показан специальный +проводник установки, который по умолчанию запускается в Windows. +

Для установки в текстовом режиме используйте

+

+> install-tl -no-gui +
+
+

Все опции программы можно получить при помощи команды

+

+> install-tl -help +
+
+


+ + + + + +
  Installing TeX Live 2012 from: ...
  Platform: i386-linux => ’Intel x86 with GNU/Linux’
  Distribution: inst (compressed) +
  ...
   Detected platform: Intel x86 with GNU/Linux
  
   <B> platforms: 1 out of 19
  
   <S> Installation scheme (scheme-full) +
       84 collections out of 85, disk space required: 2600 MB
  
   Customizing installation scheme: +
     <C> standard collections
     <L> language collections
  
   <D> directories:
     TEXDIR (the main TeX directory): +
       /usr/local/texlive/2012
     ...
  
   <O> options:
     [ ] use letter size instead of A4 by default
     ...
   +
   <V> set up for portable installation
  
  Actions:
   <I> start installation to hard disk
   <H> help
   <Q> quit
+
Рис. 1: Главное меню программы установки в текстовом режиме (GNU/Linux)
+ + +


+


+ + + + + + +

pict +

Рис. 2: Главное меню программы установки в экспертном графическом режиме (GNU/Linux)
+ + +


+


+ + + + + + +

pict +

Рис. 3: Главное меню программы установки в упрощенном графическом режиме (Windows)
+ + +


+

+

3.1.4 Cygwin
+

Система установки TEX Live работает только под Cygwin 1.7. Перед началом установки TEX +Live, установите при помощи программы setup.exe из комплекта Cygwin пакеты perl и +wget, если их нет в вашей системе. Мы рекомендуем также следующие дополнительные +пакеты: +

    +
  • fontconfig [нужен для XeTEX] +
  • +
  • ghostscript [нужен для разных программ] +
  • +
  • libXaw7 [нужен для xdvi] +
  • +
  • ncurses [предоставляет команду «clear», которая нужна при установке]
+

+

3.1.5 Установка в текстовом режиме
+

На рисунке 1 показано основное меню программы установки в текстовом режиме для UNIX. Текстовый +режим является режимом по умолчанию для UNIX. +

Интерфейс программы довольно примитивен: поддержки курсора в нем нет. Например, +нельзя передвигаться по полям при помощи клавиши «Tab». Вы просто печатаете что-то +(регистр учитывается!) и нажимаете клавишу «Enter», после чего перерисовывается весь +экран. +

Этот интерфейс примитивен не случайно: он должен работать на как можно большем количестве +платформ, включая такие, где есть только усеченный вариант программы Perl. +

+

3.1.6 Установка в экспертном графическом режиме
+

На рисунке 2 изображено меню программы установки в графическом режиме под GNU/Linux. Основное +различие между этим рисунком и рисунком 1 в том, что в первом используются кнопки и +меню. +

Этот вариант может быть выбран командой

+

+> install-tl -gui=perltk +
+
+

+

3.1.7 Установка в упрощенном графическом режиме
+

Под Windows установка по умолчанию работает в самом простом режиме, который мы только могли +придумать, напоминающий интерфейс «Проводника установки». Он устанавливает все и +(почти) не задает никаких вопросов. Если вы хотите более тонкую настройку, вызовите другой +режим. +

Этот режим может быть выбран командой

+

+> install-tl -gui=wizard +
+
+ + +

+

3.2 Работа программы установки

+

Меню программы установки должно быть понятно без объяснений. Мы все же приведем несколько +кратких замечаний по поводу различных опций и подменю. +

+

3.2.1 Меню выбора платформы (только для UNIX)
+


+ + + + + +
  Available platforms:
  =============================================================================== +
     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 изображено меню выбора платформы. По умолчанию устанавливаются только +программы для вашей текущей архитектуры. В этом меню вы можете выбрать также установку +программ для других платформ. Это может быть полезно, если вы используете одно и то же дерево +TEXа для разных машин и раздаёте его по локальной сети, либо если на вашей машине установлено +несколько операционных систем. +

3.2.2 Выбор основных компонентов
+


+ + + + + +
  Select 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, т.е. все +пакеты TEX Live, но вы можете выбрать схему basic для небольшой системы, схему minimal для +тестирования или схемы medium или teTeX. Есть также ряд специальных схем, в том числе и +предназначенных для различных стран. +


+ + + + + + +

pict +

Рис. 6: Меню коллекций
+ + +


+

Вы можете уточнить ваш выбор при помощи меню «коллекций» (рисунок 6, для разнообразия +сделанный в графическом режиме). +

Коллекции представляют собой следующий после схем уровень иерархии TEX Live. Грубо говоря, +схемы состоят из коллекций, коллекции состоят из пакетов, а пакеты (нижний уровень иерархии TEX +Live) содержат макросы, шрифты и т.д. +

Если вы хотите более тонкой настройки, чем возможна в меню коллекций, вы можете использовать +программу tlmgr после установки (см. раздел 6). Эта программа позволяет устанавливать или удалять +отдельные пакеты. +

3.2.3 Директории
+

Схема директорий по умолчанию описана в разделе 2.3, стр. 8. Положение дерева TEXDIR отличается +для Windows (%SystemDrive%\texlive\2012) и UNIX (/usr/local/texlive/2012). +

Основная причина, по которой бывает необходимо изменить эту схему — отсутствие у +вас прав на запись в нужные директории. Вам не надо иметь права администратора для +установки TEX Live, однако вам надо иметь право на запись в директорию, куда устанавливается +система. +

Если у вас нет права на запись в системные директории, естественной альтернативой является +установка в вашу домашнюю директорию, особенно если вы будете единственным пользователем +системы. Для этого используйте ‘~’ например ‘~/texlive/2012’. +

Мы рекомендуем включать номер года в название директории, чтобы можно было держать отдельно +разные версии TEX Live. После тестирования новой версии вы сможете сделать /usr/local/texlive-cur +ссылкой на соответствующую директорию. +

Изменение TEXDIR изменит также TEXMFLOCAL, TEXMFSYSVAR и TEXMFSYSCONFIG. +

Личные пакеты и файлы рекомендуется держать в директории TEXMFHOME. По умолчанию это +~/texmf. В отличие от TEXDIR, здесь ~ будет своим для каждого пользователя. Эта переменная +становится $HOME под UNIX и %USERPROFILE% под Windows. На всякий случай повторим, что структура +TEXMFHOME должна совпадать со стандартной структурой директорий TEXMF, иначе система может не +найти ваши файлы. +

Директория TEXMFVAR используется для хранения автоматически создаваемых файлов, своих для +каждого пользователя. Директория TEXMFCACHE используется для этой же цели программой +ConTEXt MkIV (см. раздел 3.4.5, стр. 39). +

+

3.2.4 Опции
+


+ + + + + +
  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 приведено меню опций (текстовый режим). Стоит упомянуть несколько из +них: +

+use letter size instead of A4 by default (использовать по умолочанию размер letter вместо A4):
+ выбор размера бумаги по умолчанию. Разумеется, отдельные документы могут при + необходиости указать собственный размер бумаги. +
+execution of restricted list of programs:
Начиная с TEX Live 2010 TEX может автоматически + вызывать несколько внешних программ. Список этих программ находится в файле + texmf.cnf; он очень мал, но эти программы очень полезны. См. раздел “Что нового в TEX + Live 2010» 10.1.7. +
+create all format files (созать все форматы):
Хотя ненужные форматы занимают место на + диске и требуют времени для создания, мы все же рекомендуем не изменять эту опцию. В + противном случае отсутствующие форматы будут генрироваться в директориях TEXMFVAR + для каждого пользователя. Они не будут автоматически перегенерироваться при изменении + программ и схем переноса, и в итоге могут оказаться несовместимыми с новой системой. +
+install font/macro  tree:
Эти опции позволяют вам не устанавливать документацию и + исходники, которые входят в большинство пакетов. Мы не рекомендуем экономить место на + этой важной информации. +
+create symlinks in standard directories (создать симлинки в стандартных директориях)
+ (только для UNIX): Эта опция делает ненужной смену переменных окружения. Без неё + директории TEX Live нужно добавить к PATH, MANPATH и INFOPATH. Для этой опции вам + нужны права на запись в стандартные директории. Мы не советуем вам подменять TEX из + дистрибутива вашей системы при помощи этой опции. Она нужна для создания симлинков + в директориях типа /usr/local/bin, которые не содержат файлов TEXа из системного + дистрибутива.
+

Задав нужные настройки, вы можете начать установку системы, нажав клавишу «I». Когда +установка будет закончена, перейдите к разделу 3.4 чтобы проверить, нужно ли вам сделать ещё +что-нибудь. +

3.3 Опции вызова команды install-tl

+

Напечатайте

+

+> install-tl -help +
+
чтобы получить список опций комадной строки. В опциях можно использовать как -, так и --. Вот +самые интересные опции: +

+

+ -gui
+

Если возможно, использовать графический режим. Для этого нужен модуль Perl/Tk с + поддержкой XFT (http://tug.org/texlive/distro.html#perltk); если этого модуля в + системе нет, установка происходит в текстовом режиме. +

+ -no-gui
+

Использовать текстовый режим, даже под Windows. + + +

+ -lang LL
+

Задать язык интерфейса программы установки (стандартным кодом страны LL). Сейчас + доступны следующие языки: cs (чешский), de (немецкий), en (английский, по умолчанию) + fr (французский), it (итальянский), ja (японский), nl (голландский), pl (польский), + ru (русский), sk (словацкий), sl (словенский), sr (сербский), vi (вьетнамский), zh-cn + (упрощенный китайский), zh-tw (традиционный китайский). Программа установки пытается + определеть нужный язык автоматически, но если это не получается или если нужный язык + не поддерживается, она переходит на английский. +

+

+ -in-place
+

Если у вас уже есть копия TEX Live, полученная из репозитория + (см. http://tug.org/texlive/acquire-mirror.html), то эта опция позволяет использовать + эту копию. Учтите, что при этом база данных tlpkg/texlive.tlpdb может быть затерта; + вы должны сохранить её сами. Кроме того, удаление пакетов нужно будет делать вручную. + Не используйте эту опцию, если вы не эксперт. Эту опцию нельзя выбрать после того, как + программа запущена. +

+ -portable
+

Установить переносимую версию TEX Live, например, на флешку USB. Эту опцию также + можно указать при помощи команды V в текстовом установки, или из графического режима. + См. также раздел 5. +

+ -profile
+

Использовать конфигурацию установки le и не задавать пользователю никаких вопросов. + Программа установки всегда записывает файл texlive.profile в поддиректорию tlpkg. + Этот фаил может быть использован в качестве аргумента данной опции, чтобы, например, + получить идентичную конфигурацию на другой машине. Вы можете также создать + собственную конфигурацию, например, взяв за основу автоматически созданный файл + или пустой файл (так что параметры, которые не заданы в файле, получат значения по + умолчанию). +

+ -repository url
+

Указать альтернативный источник о пакетов для установки; см. ниже.

+

+

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

По умолчанию пакеты сгружаются с одного из зеркал архива CTAN. Ссылка http://mirror.ctan.org +автоматически выбирает зеркало. +

Если вы хотите указать другой источник, вы можете задать его как URL, начинающийся с ftp:, +http:, file:/ или просто как директорию на диске. (Когда вы указываете репозиторию как ftp: или +http:, окончание / или /tlpkg игнорируется.) +

Например, вы можете задать в качестве параметра определенное зеркало CTAN: +http://ctan.example.org/tex-archive/texlive/tlnet/. Разумеется, вам следует подставить вместо +example.ctan.org нужное зеркало и путь к архиву на этом зеркале. Список зеркал находится на +http://ctan.org/mirrors. +

Если параметр задает директорию на диски (прямо или при помощи file:/), система +автоматически определяет, является ли источник архивом: если найдена поддиректория archive со +сжатыми файлами, то она будет использована, даже если рядом находятся незаархивированные +файлы. + + +

+

3.4 Действия после установки

+

Иногда после установки системы требуются дополнительные действия. +

+

3.4.1 Переменные окружения для UNIX
+

Если бы решили создать симлинки в стандартных директориях (см. раздел 3.2.4), то изменять +переменные окружения не требуется. В противном случае вам нужно добавить к списку поиска +программ директорию, где лежат программы TEXlive (под Windows программа установки делает это +сама). +

Программы для каждой архитектуры помещаются в собственную поддиректорию под TEXDIR/bin. +См. список поддиректорий и соответствующих платформ на рисунке 4. +

Вы можете также добавить директории с документацией в формате man и info к соответствующим +путям поиска, если вы хотите, чтобы ваша операционная система знала о них. В некоторых системах +документация в формате man будет найдена автоматически после изменения переменной +PATH. +

Ниже мы используем для примера стандартную систему директорий в системе Intel86 +GNU/Linux. +

Для оболочек типа Bourne (bash и т.п.) вы можете добавить в файл $HOME/.profile (или в файл, +который вызывается из .profile) следующее: +

+

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

Для csh или tcsh следует редактировать файл $HOME/.cshrc, и следует добавить что-то +вроде +

+

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

Разумеется, в ваших конфигурационных файлах уже могут быть определены эти переменные; +фрагменты выше добавляют к ним директории TEX Live. +

+

3.4.2 Переменные окружения: глобальная конфигурация
+

Если вы хотите внести эти изменения для всех пользователей, или добавлять их автоматически для +новых пользователей, то вам следует разобраться самому: в разных системах это делается слишком +по-разному. +

Два совета: 1) возможно, вам следует добавить в файл /etc/manpath.config строчки +вроде: +

+

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

И 2) иногда пути поиска и другие глобальные переменные окружения задаются в файле +/etc/environment. +

Мы также добавляем симлинк man в каждой поддиректории bin. Некоторые варианты программы +man, например, в Mac OS X, автоматически ищут файлы в этих поддиректориях, что избавляет от +необходимости добавлять их в MANPATH. +

+

3.4.3 Обновления из Интернета после установки с DVD
+

Если вы устновили TEX Live с DVD и хотите получать обновления из Интернета, запустите следующую +команду (после добавления программ TEX Live к списку поиска программ, см. предыдущий +раздел): +

+ + +

+> tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet +
+
+

Она указывает программе tlmgr, что нужно искать обновления на ближайшем зеркале +CTAN. +

Если автоматический выбор зеркала не работает, вы можете указать адрес зеркала вручную, взяв его +из списка на http://ctan.org/mirrors. Задайте при этом точное положение директории tlnet, как +указано выше. +

+

3.4.4 Настройка шрифтов для программ XeTEX и LuaTEX
+

XeTEX и LuaTEX могут использовать все шрифты, установленные в вашей системе, не только те, +которые находятся в директориях TEXа. Они это делают при помощи похожих, но чуть-чуть разных +методов. +

Под Windows шрифты, включенные в дистрибутив TEX Live, автоматически доступны в +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. +
  3. Запустите fc-cache -fsv.
+

Если у вас нет прав администратора, то вы можете вместо этого сделать шрифты TEX Live +доступными только вам: +

    +
  1. Скопируйте файл texlive-fontconfig.conf в ~/.fonts.conf, где ~ —  ваша домашняя + директория. +
  2. +
  3. Запустите fc-cache -fv.
+

Чтобы посмотреть названия системных шрифтов, вы можете запустить программу fc-list. Можно +получить много интересной информации, запустив её как fc-list : family style file spacing (все +аргументы—текстовые строки). +

+

3.4.5 ConTEXt Mark IV
+

Как «старый» ConTEXt(Mark II), так и «новый> ConTEXt (Mark IV) должны работать «из коробки» +после установки TEX Live и после обновления системы при помощи tlmgr. +

Однако так как ConTEXt MkIV не использует библиотеку kpathsea, после установки новый файлов +вручную (не при помощи tlmgr) нужны дополнительные действия. Каждый пользователь MkIV должен +после такого обновления запустить +

  context --generate
+

чтобы обновить базу данных ConTEXt. Получившиеся файлы будут установлены в директории TEXMFCACHE. +В TEX Live эта директория совпадает с TEXMFVAR. +

ConTEXt MkIV читает файлы из всех директорий, заданных переменной TEXMFCACHE и пишет в +первую директорию в списке, в которой у него есть права на запись. При чтении в случае дублирующих +записей имеет преимущество последняя прочитанная запись. +

См. также http://wiki.contextgarden.net/Running_Mark_IV. + + +

+

3.4.6 Добавление личных и локальных пакетов
+

Этот вопрос уже обсуждался в разделе 2.3: для локальных шрифтов и пакетов, общих у всех +пользователей, предназначена директория TEXMFLOCAL (по умолчанию, /usr/local/texlive/texmf-local +или %SystemDrive%\texlive\texmf-local), а для личных шрифтов и пакетов — директория TEXMFHOME +(по умолчанию, $HOME/texmf или %USERPROFILE%\texmf). Эти директории предполагаются общими для +всех версий TEX Live, и каждая версия TEX Live видит их автоматически. Поэтому мы не +рекомендуем менять значение TEXMFLOCAL, иначе вам придется делать это для каждой новой +версии. +

Файлы в обеих директориях должны находиться в правильных поддиректориях; см. +http://tug.org/tds и texmf/web2c/texmf.cnf. Например, LATEXовский класс или пакет должен +находиться в директории TEXMFLOCAL/tex/latex или TEXMFHOME/tex/latex или какой-либо из их +поддиректорий. +

Для директории TEXMFLOCAL должна поддерживаться база данных о файлах, иначе система не +сможет найти там нужные файлы. Эта база обновляется командой mktexlsr или кнопкой «Reinit file +database» в графическом режиме программы tlmgr. +

По умолчанию, каждая из этих переменных указывает на одну директорию, как в нашем примере. +Однако это не обязательное требование. Если вам нужно, например, поддерживать несколько +версий больших пакетов, вы можете захотеть иметь несколько деревьев директорий. Тогда вы +можете определить TEXMFHOME как набор директорий в фигурных скобках, разделенных +запятыми: + + +

+
    TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir}
+
+

+

Подробнее эти вопросы объясняются в разделе 8.1.5. +

+

3.4.7 Добавление новых шрифтов
+

К сожалению, это очень сложная задача. Не делайте этого, если вы не знаете TEXа как свои пять +пальцев. Не забудьте сначала проверить, какие шрифты у вас уже есть, см. раздел 2.6. +

Возможная альтернатива — программа XeTEX (см. раздел 2.4), которая позволяет автоматически +использовать в TEXе шрифты вашей операционной системы. +

Если вам все же нужно добавить шрифты, то посмотрите страницу http://tug.org/fonts/fontinstall.html — + это лучшее, что мы смогли написать по этому поводу. Если вы правильно поддерживаете карты +шрифтов, tlmgr generate updmap может оказаться полезной, особенно при переходе на новую версию +TEX Live; см. документацию программы tlmgr. +

+

3.5 Тестирование системы

+

После установки TEX Live вы, скорее всего, захотите проверить работу системы, а уже затем перейти к +созданию прекрасных документов и/или шрифтов. +

В этом разделе описываются основные процедуры по тестированию системы. Мы приводим команды +для операционных систем типа Unix; под Mac OS X и Windows вы, скорее всего, будете использовать +графический интерфейс, но принцип тот же. +

+

    +
  1. Сначала проверьте, что вы можете запускать программу tex: +
    +

    + > tex --version +
    TeX 3.1415926 (TeX Live ...) +
    kpathsea version 6.0.1 +
    Copyright ... D.E. Knuth. +
    ... +
    +
    Если вы получаете в ответ «command not found» вместо номера версии и информации о копирайте, + у вас, скорее всего, нет директории с нужными программами в переменной PATH. См. обсуждение + на странице 38. +
  2. +
  3. Скомпилируйте простой LATEXовский файл:
    +

    + > latex sample2e.tex +
    pdfTeX 3.1415926-... (TeX Live ...) +
    ... +
    Output written on sample2e.dvi (3 pages, 7484 bytes). +
    Transcript written on sample2e.log. + + +
    +
    Если программа не может найти sample2e.tex или другие файлы, возможно, у вас остались следы + от старой установки: переменные окружения или конфигурационные файлы. Мы рекомендуем + сначала убрать все переменные окружения, относящиеся к TEXу. (Для отладки вы + всегда можете попросить TEX точно сказать, что именно он ищет; см. «Отладка» на + стр. 66.) +
  4. +
  5. Посмотрите результат на экране:
    +

    + > xdvi sample2e.dvi    # Unix +
    > dviout sample2e.dvi  # Windows +
    +
    Вы должны увидеть новое окно с красиво свёрстанным документом, объясняющим основы + LATEXа. (Кстати, если вы — новичок, вам ст´оит его прочесть.) Чтобы программа xdvi могла + запуститься, вы должны быть в среде X Window; если это не так, или если переменная DISPLAY + установлена неправильно, вы увидите ошибку «Can’t open display». +
  6. +
  7. Создайте файл в формате PostScript для печати или просмотра на экране:
    +

    + > dvips sample2e.dvi -o sample2e.ps +
    +
    +
  8. +
  9. Создайте файл в формате PDF вместо DVI; команда ниже компилирует файл .tex и создаёт PDF: +
    +

    + > pdflatex sample2e.tex +
    +
    +
  10. +
  11. Посмотрите результат на экране:
    +

    + > 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). +
  12. +
  13. Другие стандартные тестовые файлы, которые вам могут пригодиться: +

    + + +

    + small2e.tex
    +

    Более простой документ, чем sample2e, удобный, если последний слишком велик для + вас. +

    + testpage.tex
    +

    Проверяет поля и позиционирование бумаги для вашего принтера. +

    + nfssfont.tex
    +

    Используется для печати таблиц шрифтов и тестов. +

    + testfont.tex
    +

    Печать таблиц шрифтов под plain TEX. +

    + story.tex
    +

    Самый канонический файл в формате (plain) TEX. Вы должны напечатать «\bye» в + ответ на приглашение * после «tex story.tex».

    +
  14. +
  15. Если вы установили пакет 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. +
    +
    (или аналогично для luatex.) +

    Если вы получите сообщение об ошибке: «Invalid fontname ‘Latin Modern Roman/ICU’…», + то вам нужно настроить систему, чтобы XeTEX мог найти шрифты TEX Live. См. + раздел 3.4.4. +

+

+

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. Здесь мы остановимся на +нескольких особых случаях. +

+

4.1 Установка в локальной сети

+

TEX Live может использоваться одновременно разными пользователями или даже разными машинами в +локальной сети. В стандартной схеме директорий все пути к файлам являются относительными: +программы TEX Live определяют, где лежат нужные им файлы, исходя из того, где они находятся сами. +Вы можете увидеть, как это делается, посмотрев конфигурационный файл $TEXMFMAIN/web2c/texmf.cnf +со строчками типа +

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

Это означает, что другие системы или пользователи должны просто добавить директорию с программами +TEX Live к директориям поиска. +

Точно так же вы можете установить TEX Live на один компьютер, а затем перенести всю иерархию +на локальную сеть. +

Под Windows скрипт для установки системы в локальной сети называется w32client и находится +на http://tug.org/texlive/w32client.html. Он добавляет к уже установленной системе +TEX Live необходимые для работы в локальной сети изменения. Есть также скрипт для +удаления этих изменений w32unclient. См. более подробное описание на странице скрипта +выше. +

+ + +

5 Установка TEX Live на флешку

+

Опция программы установки -portable (или команда V в текстовом режиме, или соответствующий +пункт меню в графическом режиме) создает систему, находящуюся полностью в своей директории, и не +изменяет конфигурации компьютера. Вы можете установить такую систему на USB флешку или в +отдельную директорию, а потом скопировать её на флешку. +

Чтобы запустить TEX с такой флешки, вам нужно добавить директорию с программами к путям +поиска программ. Под Юниксом это делается при помощи изменения переменной окружения PATH. Под +Windows вы можете щелкнуть на tl-tray-menu, чтобы выбрать из нескольких стандартных задач, как +показано ниже: + +

pict +

Меню «Custom Script» вызывает окошко с объяснением, как добавить дополнительные возможности в +меню. +

+

5.1 Создание образа ISO или DVD

+

Если вам не нужно часто обновлять систему, и/или у вас несколько машин, на которых вы хотите +использовать TEX Live, то для вас может иметь смысл создать образ ISO или DVD, так +как: +

    +
  • Копирование ISO с компьютера на компьютер быстрее, чем копирование обычной системы. +
  • +
  • Если вы держите на одном компьютере несколько операционных систем, и хотите + использовать для них одну копию TEX Live, то создать образ диска можеть быть проще, чем + учитывать особенности и ограничения файловых систем на общих разделах (FAT32, NTFS, + HFS+). +
  • +
  • Виртуальные машины могут использовать образ как виртуальный диск.
+

Разумеется, вы можете также прожечь реальный DVD, если это вам удобнее. +

Десктопные версии GNU/Linux/Unix, включая Mac OS X, умеют монтировать ISO. В остальном +установка такая же, как при установке на жесткий диск, см. раздел 3.4.1. +

При установке на ISO имеет смысл не делать поддиректорию для года текущей версии, и +устанавливать texmf-local на том же уровнем что и другие деревья (texmf, texmf-dist, и т. д.). Это +можно сделать при помощи опций программы установки. +

Для обычной (не виртуальной) машины под Windows вы можете прожечь ISO на DVD. Однако +возможно, что вам будет удобно использовать разнообразные свободные программы для монтирования +виртуальных дисков. Для Windows XP Microsoft рекомендует winxpvirtualcdcontrolpanel. +

Для лучшего взаимодействия с системой, вы можете включить скрипты для w32client, описанные в +разделе 4.1 и на странице http://tug.org/texlive/w32client.html. Они работают с ISO точно так же, +как и с системой в локальной сети. +

Под Mac OS X TeXShop и TEXworks могут использовать систему на DVD, если симлинк /usr/texbin +указывает на директорию с программами для нужной архитектуры, например + + +

+
  sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin
+
+

+

Историческая справка: TEX Live 2010 была первым изданием TEX Live, который не мог работать +непосрественно с диска («live»). Однако для работы с DVD или ISO всегда нужны были +дополнительные усилия: например, необходимо было установить хотя бы одну переменную окружения. +Если бы создаете образ ISO из существующей системы, то в этом нет нужды. +

+

6 Администрирование системы при помощи tlmgr

+


+ + + + + + +

pict +

Рис. 8: tlmgr в графическом режиме. Список пакетов/коллекций/схем после нажатия на клавишу +«Load»
+ + +


+


+ + + + + + +

pict +

Рис. 9: Программа tlmgr в графическом режиме: главное +меню
+

pict +

Рис. 10: Программа tlmgr +в графическом режиме: меню выбора +размера бумаги
+ + +


+

В TEX Live входит программа tlmgr для администрирования системы после установки. Программы +updmap, fmtutil и texconfig все ещё есть в системе и будут там в будущем, но мы рекомендуем теперь +программу tlmgr. Среди её возможностей: +

    +
  • установка, обновление, архивирование, восстановление и удаление отдельных пакетов, при + желании с учетом зависимостей между ними; +
  • +
  • поиск и перечисление пакетов; +
  • +
  • перечисление, добавление и удаление платформ; +
  • +
  • изменение параметров системы, например, размера бумаги и источника установки (см. + раздел 3.3.1).
+

6.1 Программа tlmgr в графическом режиме

+

Программа tlmgr может быть запущена в графическом режиме:

+

+> tlmgr -gui +
+
или на Windows из меню Start: Start, Programs, TeX Live 2012, TeX Live Manager. После нажатия на +клавишу «Load», она показывает список доступных и установленных пакетов. Это, разумеется, +происходит при условии, что источник установки доступен. +

На рисунках 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/2012/texmf/ls-R...
  ...
  running fmtutil-sys --missing
  ... +
  Transcript written on xelatex.log.
  fmtutil: /usr/local/texlive/2012/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
+

И наконец, полная документация находится по адресу http://tug.org/texlive/tlmgr.html или +вызывается командой

+

+> tlmgr -help +
+
+

+

7 Дополнительные замечания о Windows

+

+

7.1 Дополнительные возможности Windows

+

Под Windows программа установки делает несколько дополнительных вещей: +

+Меню и ярлыки.
Устанавливается подменю «TEX Live» меню «Start», которое содержит + некоторые программы (tlmgr, texdoctk, программа PS_View (psv) для просмотра файлов в + формате PostScript) и документацию. +
+Программы по умолчанию.
При необходиости, программы TeXworks, Dviout и PS_view + становятся программами по умолчанию для соответствующих типов файлов или заносятся + в меню «Открыть при помощи...» для этих файлов. +
+Конвертирование графики в формат eps.
В меню «Открыть при + помощи...> для графических файлов добавляется команда bitmap2eps. Это простой скрипт, + который вызывает программы sam2p или bmeps для конвертирования графики. +
+Автоматическая установка переменных окружения.
Все переменные окружения + устанавливаются автоматически. +
+Удаление системы.
Программа установки создает в меню «Add/Remove Programs» запись + «TEX Live». Клавиша «удалить» в меню tlmgr вызывает удаление системы.
+ + +

+

7.2 Дополнительные пакеты для Windows

+

Для полноты дистрибутиву TEX Live необходимы дополнительные пакеты, которые обычно не +встречаются на машине под Windows. В TEX Live есть недостающие программы и пакеты: +

+Perl и Ghostscript.
Ввиду важности этих программ, TEX Live включает их «скрытые» копии. + Программы TEX Live, которым они нужны, знают, где их найти, но они не выдают их + присутствия системе через переменные окружения или регистр. Это усеченные варианты + программ Perl и Ghostscript, и они не должны замещать системные версии. +
+PS_View.
Также устанавливается PS_View, программа для просмотра файлов в форматах + PostScript и PDF, см. рисунок 11. +


pict +
Рис. 11: PS_View: программа умеет показывать файлы под большим увеличением!
+


+
+dviout.
Также устанавливается dviout, программа для просмотра файлов в формате DVI. При первом + запуске программы она создает шрифты для просмотра файлов. Если вы будете пользоваться ей + некоторое время, она создаст практически все нужные вам шрифты, и окно создания шрифтов + будет появляться все реже. Дополнительная информация о программе содержится в (очень + хорошем) меню Help. +
+TeXworks.
TEXworks —  это редактор для TEXа со встроенной программой для просмотра PDF. Он + устанавливается уже настроенным для TEX Live. +
+Утилиты командной строки.
Вместе с программами TEX Live устанавливается ряд портированных + под Windows стандартных юниксовских утилит: gzip, unzip и программы из набора xpdf. Сам xpdf + под Windows не работает, но вы можете скачать основанную на его коде программу Sumatra: + http://blog.kowalczyk.info/software/sumatrapdf.) +
+fc-list, fc-cache и т.д.
Эти программы из библиотеки fontconfig помогают XeTEXу работать со + шрифтами под Windows. Вы можете определить названия шрифтов для команды \font при + помощи программы fc-list. Если нужно, вызовите сначала программу fc-cache, чтобы обновить + информацию о шрифтах. +
+

+

7.3 Домашняя директория под Windows

+

Аналогом домашней директории под UNIX является директория %USERPROFILE%. Под Windows XP +это обычно C:\Documents and Settings\<username>, а под Windows Vista и Windows 7 — +C:\Users\<username>. В файле texmf.cnf и вообще при работе Kpathsea, тильда ~ правильно +интерпретируется как домашняя директория пользователя и под Windows, и под UNIX. +

+

7.4 Регистр Windows

+

Windows хранит почти все конфигурационные данные в регистре. Регистр содержит набор иерархически +организованных записей, с несколькими корневыми записями. Наиболее важны для программ установки +записи HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE, сокращенно HKCU и HKLM. Как правило, HKCU +находится в домашней директории пользователя (см. раздел 7.3), а HKLM — поддиректория директории +Windows. + + +

Иногда конфигурация системы определяется переменными окружения, но некоторые вещи +(например, положение ярлыков) задаются в регистре. Для того, чтобы перманентно задать переменные +окружения, также нужен доступ к регистру. +

+

7.5 Права доступа под Windows

+

В поздних версиях Windows делается различие между обычными пользователями и администраторами, +причем только последние имеют право доступа ко всей операционной системе. На практике однако +было бы более правильно описывать эти классы пользователей как «непривилегированные +пользователи» и «обычные пользователи»: права администратора являются правилом, а не +исключением. Однако мы постарались сделать возможным установку TEX Live без прав +администратора. +

Если пользователь является администратором, он может установить TEX Live для всех +пользователей. В этом случае ярлыки создаются у всех пользователей, и модифицируются системные +параметры. В противном случае ярлыки и меню создаются только для текущего пользователя, и +модифицируются его параметры. +

Вне зависимости от статуса пользователя, корень установки TEX Live, предлагаемый по умолчанию, +всегда находится под %SystemDrive%. Программа установки всегда проверяет, открыта ли корневая +директория на запись для текущего пользователя. +

Может возникнуть проблема, если у пользователя нет прав администратора, а в пути поиска уже +есть TEX. Поскольку в пути поиска системный путь стоит перед путем пользователя, TEX из TEX Live +не будет найден. Чтобы обойти эту проблему, программа в таком случае создает ярлык с командной +строкой, в которой директория TEX Live стоит первой в пути поиска. Из этой командной строки можно +пользоваться TEX Live. Ярлык для TEXworks, если эта программа установлена, также добавляет +директории TEX Live в начало пути поиска. +

У Windows Vista и Windows 7 есть ещё одна особенность: даже если вы являетесь администратором, +вам нужно отдельно указать административные права при запуске программ. Поэтому не имеет особого +смысла заходить в систему как администратор: вместо этого, щелкнув правой клавишей мыши на +ярлык, выберите из меню «Run as administrator». +

+

7.5.1 Увеличение предоставляемой памяти под Windows и Cygwin
+

Пользователи Windows и Cygwin (см. раздел 3.1.4 об особенностях установки под Cygwin) могут +обнаружить, что для некоторых программ TEX Live не хватает оперативной памяти. Например, +программа asy может не запуститься, если вам нужно разместить массив в 25 000 000 числе с +плавающей точкой, а LuaTEX может не справиться с документом, в котором много разных +шрифтов. +

Под Cygwin можно увеличить используемый объем памяти, если воспользоваться инструкциями в +Руководстве пользователя Cygwin (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. +

+

8 Руководство пользователя Web2C

+

Web2C — это интегрированная коллекция программ, относящихся к TEXу: сам TEX, Metafont, MetaPost, +BibTeX, и т.д. Это сердце TEX Live. Страница Web2C с руководством пользователя и многим другим +находится на http://tug.org/web2c. +

Немного истории. Первая версия программы была написана Томасом Рокики, который в 1987 году +создал систему TEX-to-C, адаптировав патчи для UNIX, разработанные в основном Говардом Трики и +Павлом Куртисом. Тим Морган стал поддерживать систему, и в этот период её название сменилось на + + +Web-to-C. В 1990 году Карл Берри взял на себя этот проект, координируя работу десятков +программистов, а в 1997 он передал руководство Олафу Веберу, который вернул его Карлу в 2006 +году. +

Система Web2C работает под UNIX, 32-битовых Windows, Mac OS X, и других операционных +системах. Она использует оригинальные исходники Кнута для TEXа и других программ, написанных на +языке WEB и переведённых на C. Основные программы системы: +

+

+ bibtex
+

Поддержка библиографий. +

+ dvicopy
+

Работа с виртуальными шрифтами в файлах DVI. +

+ dvitomp
+

Перевод DVI в MPX (рисунки в MetaPost). +

+ dvitype
+

Перевод DVI в текст. +

+ gftodvi
+

Гранки шрифтов. +

+ gftopk
+

Упаковка шрифтов +

+ gftype
+

Перевод GF в текст. +

+ mf
+

Создание шрифтов. +

+ mft
+

Вёрстка исходников Metafont. +

+ mpost
+

Рисование диаграмм. +

+ patgen
+

Создание таблиц переносов. +

+ pktogf
+

Перевод PK в GF. +

+ pktype
+

Перевод PK в текст +

+ pltotf
+

Перевод из списка свойств шрифта в TFM. + + +

+ pooltype
+

Расшифровка файлов pool в WEB. +

+ 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. +

Будем называть путём поиска набор разделённых двоеточием или точкой с запятой элементов +пути, представляющих из себя в основном названия директорий. Путь поиска может иметь много +источников. Чтобы найти файл «my-file» в директории «.:/dir», Kpathsea проверяет каждый элемент +пути по очереди: сначала ./my-file, затем /dir/my-file, возвращая первый файл (или, возможно, все +файлы). +

Чтобы работать с разными операционными системами, Kpathsea под системой, отличной от UNIX +может использовать разделители, отличные от «:» и «/». + + +

Чтобы проверить определённый элемент пути p, Kpathsea вначале проверяет наличие базы данных +(см. раздел «База данных файлов» на стр. 63), т.е., есть ли база в директории, которая +является префиксом для p. Если это так, спецификация пути сравнивается с содержимым базы +данных. +

Если база данных не существует, или не относится к этому элементу пути, или не содержит нужного +элемента, проверяется файловая система (если это не запрещено спецификацией, начинающейся с «!!», +и если файл должен существовать). Kpathsea конструирует список директорий, которые соответствуют +элементу, и в каждой директории ищет нужный файл. +

Условие «файл должен существовать» важно для файлов «.vf» и файлов, которые открывает TEX +по команде \openin. Такие файлы могут и не существовать (например, файл cmr10.vf), и было бы +неправильно искать их на диске. Поэтому, если вы не обновите ls-R при установке нового файла +«.vf», он никогда не будет найден. Каждый элемент пути ищется по очереди: сначала база +данных, затем диск. Если нужный файл найден, поиск останавливается, и возвращается +результат. +

Хотя самый простой и часто встречающийся элемент пути — это название директории, Kpathsea +поддерживает дополнительные возможности: разнообразные значения по умолчанию, имена переменных +окружения, значения из конфигурационных файлов, домашние директории пользователей, рекурсивный +поиск поддиректорий. Поэтому мы говорим, что Kpathsea вычисляет элемент пути, т.е., что библиотека +преобразует спецификации в имя или имена директории. Это описано в следующих разделах в том же +порядке, в котором происходит поиск. +

Заметьте, что имя файла при поиске может быть абсолютным или относительным, т.е. начинаться с +«/», или «./», или «../», Kpathsea просто проверяет, существует ли файл. +

+

8.1.1 Источники путей поиска
+

Путь поиска может иметь разные источники. Kpathsea использует их в следующем порядке: +

+

    +
  1. Установленные пользователем переменные окружения, например TEXINPUTS. Переменные + окружения с точкой и названием программы имеют преимущество; например если «latex» — + имя программы. то TEXINPUTS.latex имеет преимущество перед TEXINPUTS. +
  2. +
  3. Конфигурационный файл, специфический для данной программы, например, строка «S + /a:/b» в config.ps для dvips. +
  4. +
  5. Конфигурационный файл Kpathsea texmf.cnf, содержащий строку типа «TEXINPUTS=/c:/d» + (см. ниже). +
  6. +
  7. Значение, заданное при компиляции.
+

Вы можете увидеть каждое из этих значений для данного пути поиска, задав соответствующий уровень +отладки (см. «Отладка» на стр. 66). +

+

8.1.2 Конфигурационные файлы
+

Kpathsea читает конфигурационные файлы texmf.cnf, в которых задаются параметры программы. +Раньше для поиска этих файлов использовалась переменная TEXMFCNF, но теперь мы не рекомендуем +пользоваться этой (или какой-либо другой) переменной окружения. +

Теперь при нормальной установке создается файл .../2012/texmf.cnf. Если вам нужно изменить +настройки (обычно этого делать, не приходится), внесите их в этот файл. Главный конфигурационный +файл — файл .../2012/texmf/web2c/texmf.cnf Его редактировать не следует, так как при обновлении +системы ваши изменения пропадут. +

Все найденные файлы texmf.cnf будут прочитаны, и определения в более ранних файлах имеют +преимущество перед определениями в более поздних. Таким образом, если путь поиска задан как +.:$TEXMF, значения в ./texmf.cnf имеют преимущество перед значениями в $TEXMF/texmf.cnf. + + +

    +
  • Комментарии начинаются с % и продолжаются до конца строки. +
  • +
  • Пустые строки игнорируются +
  • +
  • \ в конце строки означает продолжение, т.е. добавляется следующая строка. Пробелы в + начале следующей строки не игнорируются. +
  • +
  • Определения параметров имеют вид
    +

    +   variable[.progname] [=] value +
    +
    где «=» и пробелы вокруг могут опускаться. +
  • +
  • variable может содержать любые символы, кроме пробела, «=» или «.», но надёжнее всего + придерживаться набора «A-Za-z_». +
  • +
  • Если есть «.progname», определение относится только к программе, которая называется progname + или progname.exe. Это позволяет, например разным видам TEXа иметь разные пути + поиска. +
  • +
  • value может содержать любые символы, кроме % и «@». Нельзя использовать $var.prog в правой + части; вместо этого вы должны задать дополнительную переменную. Символ «;» в правой части + эквивалентен под UNIX символу «:»; это полезно, чтобы поддерживать общий файл для UNIX, + MS-DOS и Windows. +
  • +
  • Все определения читаются до подстановок, поэтому к переменным можно обращаться до того, как + они определены.
+

Фрагмент конфигурационного файла, иллюстрирующий эти правила, приведeн ниже: +

+

+  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. Например, сложный путь ~$USER/{foo,bar}//baz, +означает все поддиректории директорий foo и bar в домашней директории пользователя $USER, которые +содержат файл или поддиректорию baz. Это объяснено в следующих разделах. + + +

8.1.4 Подстановка по умолчанию
+

Если путь поиска с наибольшим приоритетом (см. раздел «Источники путей поиска» на стр. 58) +содержит дополнительное двоеточие (в начале, в конце, двойное), Kpathsea заменяет его +следующим по приоритету путём. Если этот вставленный путь содержит дополнительное +двоеточие, то же происходит со следующим путём. Например, если переменная окружения задана +как +

+

+> setenv TEXINPUTS /home/karl: +
+
и TEXINPUTS в файле texmf.cnf содержит +
+

+  .:$TEXMF//tex +
+
то поиск будет происходить с путём +
+

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

Поскольку было бы бесполезно вставлять значение по умолчанию более чем один раз, Kpathsea +изменяет только одно лишнее двоеточие, и оставляет остальные: она проверяет сначала двоеточие в +начале, потом в конце, потом двойные двоеточия. +

+

8.1.5 Подстановка скобок
+

Полезна также подстановка скобок, из-за которой, например, v{a,b}w означает vaw:vbw. Вложенность +тут допускается. Благодаря этому можно иметь несколько иерархий директорий, присвоив $TEXMF +несколько вариантов путей. Например, в файле texmf.cnf, можно найти следующее определение (это +упрощение, на самом деле там ещё больше деревьев): + + +

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

Благодаря этому можно писать такое: + + +

+
    TEXINPUTS = .;$TEXMF/tex//
+
+

что означает, что кроме текущей директории будет происходить поиск только в $TEXMFHOME/tex, +$TEXMFLOCAL/tex, $TEXMFVAR/tex и $TEXMFMAIN/tex (последние два дерева используют файлы ls-R). Это +удобно для поддержки двух параллельных структур, «замороженной» (например, на CD) и обновляемой +по мере появления новых версий. Используя переменную $TEXMF во всех определениях, можно задать +поиск в обновляемом дереве первым. +

+

8.1.6 Подстановка поддиректорий
+

Два или более слэша «/» в элементе пути вслед за именем директории 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 /your/texmf/root && \ls -1LAR ./ >ls-R +
+
при условии, что в вашей системе ls даёт вывод в нужном формате (GNU ls годится). Чтобы +поддерживать базу данных в текущем состоянии, проще всего перегенерировать её регулярно из +cronа, так что она автоматически обновляется через некоторое время после установки нового +пакета. +

Если файл не найден в базе данных, по умолчанию Kpathsea ищет его на диске. Если элемент пути +начинается с «!!», то поиск происходит только в базе данных. +

+

8.2.2 kpsewhich: Программа для поиска файлов
+

Программа kpsewhich выполняет поиск в соответствии с алгоритмом, описанным выше. Это может быть +полезно в качестве варианта команды find для поиска файлов в иерархиях TEXа (это широко +используется в скриптах «mktex»…). +

+

+> kpsewhich option lename +
+
Опции, указанные в option, начинаются либо с «-» либо «--», и любые однозначные сокращения +допустимы. +

Kpathsea рассматривает каждый аргумент, не являющийся опцией, как имя файла, и возвращает +первый найденный файл. Нет опции вернуть все найденные файлы (для этого можно использовать +программу «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 директории +«temf-dist» TEX Live. Аналогично, всё последующее находится без проблем благодаря однозначному +суффиксу:
+ + +

+> 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 +
+
+

Кстати, последнее — библиографическая база данных статей журнала TUGBoat. +

+

+> kpsewhich cmr10.pk +
+
Битмапы шрифтов типа .pk используются программами dvips и xdvi. Ничего не найдено, поскольку у +нас нет готовых файлов шрифтов Computer Modern в формате «.pk» (так как мы используем версии в +формате Type 1 из дистрибутива TEX Live).
+

+> kpsewhich wsiupa10.pk +
   /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +
+
Для этих шрифтов (фонетический алфавит, созданный в Университете штата Вашингтон) мы должны +сгенерировать «.pk», и так как режим Metafont по умолчанию в нашей системе ljfour с разрешением of +600 dpi (точек на дюйм), этот шрифт и найден.
+

+> kpsewhich -dpi=300 wsuipa10.pk +
+
В этом случае нам нужно разрешение 300 dpi (-dpi=300); мы видим, что такого шрифта в системе нет. +На самом деле программа dvips или xdvi построила бы нужный файл .pk при помощи скрипта +mktexpk. +

Теперь обратимся к заголовкам и конфигурационным файлам dvips. Вначале рассмотрим один из +наиболее часто используемых файлов, пролог tex.pro для поддержки TEXа, а затем рассмотрим общий +конфигурационный файл config.ps и карту шрифтов psfonts.map (с 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 + + +
+
+

Рассмотрим теперь файлы поддержки URW Times (PostScript). Префикс для этих файлов в +стандартной схеме обозначения шрифтов «utm». Вначале мы рассмотрим конфигурационный файл, +который содержит название карты шрифтов:

+

+> kpsewhich --format="dvips config" config.utm +
/usr/local/texmf-dist/dvips/psnfss/config.utm +
+
Содержание этого файла:
+

+  p +utm.map +
+
что указывает на файл utm.map, который мы хотим теперь найти.
+

+> kpsewhich --format="dvips config" 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:
+

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

Из этих примеров видно, что вы можете легко найти заданный файл. Это особенно важно, если вы +подозреваете, что программы находят неправильную версию файла, поскольку kpsewhich показывает +первый найденный файл. +

+

8.2.4 Отладка
+

Иногда необходимо проверить, как программа ищет файлы. С этой целью Kpathsea предлагает разные +уровни отладки: +

+

+  1
+

статистика обращений к диску. При работе с базами ls-R это почти не должно давать записей + в лог. + + +

+  2
+

Ссылки на хеши (например, базы данных 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, отсюда опция +-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, который позволяет объявить несколько +имён (например, короткие 8.3 и более длинные) для одного файла. Затем dvips ищет свой +конфигурационный файл config.ps и файл .dvipsrc (который в данном случае не найден). Наконец, +dvips находит конфигурационный файл для шрифтов Computer Modern PostScript config.cms (это +было задано опцией -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). +

В этот момент 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 Опции запуска

+

Ещё одна полезная возможность Web2C — изменение параметров памяти (в особенности +размеров массивов) при запуске, во время чтения файла texmf.cnf библиотекой Kpathsea. +Параметры памяти находятся в части 3 этого файла в дистрибутиве TEX Live. Вот самые +важные: +

+

+ main_memory
+

Общее количество слов в памяти для программ TEX, Metafont и MetaPost. После изменения + этого параметра надо перегенерировать формат. Например, вы можете создать «огромную» + версию TEXа, и назвать соответствующий формат hugetex.fmt. По общим правилам + Kpathsea, значение переменной main_memory будет читаться из файла texmf.cnf. +

+ extra_mem_bot
+

Дополнительная память для «больших» структур, которые создаёт TEX: боксов, клея и т.д. + Особенно полезно при использовании PI CTEXа. +

+ font_mem_size
+

Количество слов информации о шрифтах для TEXа. Это примерно суммарный размер всех + файлов TFM, которые читает TEX. +

+ hash_extra
+

Дополнительный размер хеша для имён команд. Примерно 10 000 команд может быть + помещено в основной хеш. Если вы делаете большую книгу со многими перекрёстными + ссылками, этого может не хватить. По умолчанию hash_extra равен 50000.

+

Разумеется, это не замена настоящих динамических массивов и распределения памяти, но поскольку эти +черты исключительно сложно осуществить в текущем TEXе, использование этих параметров +представляет собой полезный компромисс и обеспечивает некоторую гибкость. +

+

9 Благодарности

+

TEX Live — результат объединённых усилий практически всех групп пользователей TEXа. Это издание +TEX Live выходит под редакцией Карла Берри. Другие основные авторы, прошлые и настоящие, +перечислены ниже. Мы благодарим: +

    +
  • Англоязычную, + немецкую, голландскую и польскую группы пользователей TEXа (TUG, DANTE e.V., NTG + и GUST) за необходимую техническую и административную инфраструктуру. Пожалуйста, + вступайте в группы пользователей TEXа (см. http://tug.org/usergroups.html). +
  • +
  • Группу поддержки CTAN, в особенности Робина Фэйрбэйрнса, Джима Хефферона и Райнера + Шопфа за размещение дисков TEX Live и поддержку инфраструктуры обновления пакетов, + от которой зависит TEX Live. + + +
  • +
  • Нельсона Биба за предоставленные разработчикам TEX Live компьютеры и за тестирование + дистрибутива. +
  • +
  • Джона Боумана за работу по интегрированию его программы для сложной графики + Asymptote в TEX Live. +
  • +
  • Питера Брейтенлохнера и команду разработчиков e-TEXа за стабильный движок для + будущих TEXов, и в особенности Питера за блестящую работу с системой GNU autoools для + TEX Live. +
  • +
  • Цзинь-Хуэя Чоу и команду разработчиков DVIPDFMx за их прекрасный драйвер и помощь + в его конфигурации. +
  • +
  • Томаса Эссера, без замечательного пакета teTEX которого TEX Live не существовал бы. +
  • +
  • Майкла Гусенса, который был соавтором первой версии документации. +
  • +
  • Эйтана Гурари, чей TEX4ht использовался для создания файлов в формате HTML, и + который неустанно работал, по первому требованию добавляя нужные нам возможности. + Эйтан безвременно скончался в июне 2009 года, и мы посвящаем эту документацию его + памяти. +
  • +
  • Ханса Хагена за помощь в тестировании и приспособлении формата + ConTEXt (http://pragma-ade.com) к TEX Live. +
  • +
  • Хан Тхе Тханя, Мартина Шрёдера и команду pdfTEXa (http://pdftex.org) расширение + возможностей TEXа. +
  • +
  • Хартмута Хенкеля за существенный вклад в pdfTEX LuaTEX и другие программы. +
  • +
  • Тако Хоекватера за возобновление работы над MetaPost и (Lua)TEXом (http://luatex.org) + за интегрирование ConTEXtа в TEX Live, параллелизацию программы Kpathsea и много + другое +
  • +
  • Павла Яцковского за инсталлятор для Windows tlpm, и Томаша Лужака за tlpmgui, + использованные в прошлых версиях TEX Live. +
  • +
  • Акиру Какуто за большую помощь в интегрировании в систему программ для Windows + из его дистрибутива W32TEX (http://www.fsci.fuk.kindai.ac.jp/kakuto/win32-ptex/) и + многое другое. +
  • +
  • Джонатана Кью за создание замечательной новой системы XeTEX, за усилия по её + интегрированию в TEX Live, за исходную версию программы установки MacTEXи за + рекомендованную нами оболочку для работы в TEXе — TEXworks. +
  • +
  • Дика Коча за поддержку MacTEXа (http://tug.org/mactex) в тесном сотрудничестве с + TEX Live, и за его неистощимых энтузиазм. +
  • +
  • Рейнхарда Котучу за огромную работу по инфраструктуре TEX Live 2008, за + исследовательскую работу в области Windows, за скрипт getnonfreefonts и многое другое. +
  • +
  • Сипа Кроненберга, также за большой влад в инфраструктуру TEX Live 2008 и программу + установки, особенно для Windows, а также за основную работу по документации новых + возможностей. +
  • +
  • Хейко Обердиека за пакет epstopdf и многие другие, включая сжатие огромных файлов + пакета pst-geo, что позволило включить их в дитрибутив, и главное — за его замечательную + работу над пакетом hyperref. +
  • + + +
  • Петра Олшака за координацию и тщательную проверку чешского и словацкого материала. +
  • +
  • Тошио Ошиму за программу dviout для Windows. +
  • +
  • Мануэля Пьегорье-Гоннара за помощь в обновлении пакетов, документации и работу над + программой texdoc. +
  • +
  • Фабриция Попинье, за поддержку Windows в первых версиях TEX Live и за работу над + французской документацией. +
  • +
  • Норберта Прейнинга, который был главным архитектором инфраструктуры и программы + установки TEX Live 2008, а также координировал дебиановскую версию TEX Live (совместно + с Франком Кюстером), выдвинув много ценных предложений. +
  • +
  • Себастьяна Ратца, создавшего проект TEX Live и много лет поддерживавшего его. +
  • +
  • Фила Тейлора за организацию скачивания TEX Live в системе BitTorrent. +
  • +
  • Томаша Тжечака за помощь в работе над версией для Windows. +
  • +
  • Владимира Воловича за помощь в портировании и поддержке программ, в особенности за + работу над xindy, которая дала возможность включить эту программу в дистрибутив. +
  • +
  • Сташекa Ваврикевича, который был главным тестером TEX Live и координировал многие + польские проекты: шрифты, установку под Windows и многое другое. +
  • +
  • Олафа Вебера за терпеливую работу над Web2C. +
  • +
  • Гербена Виерду за разработку и поддержку TEXа для Mac OS X, участие в сборке и + тестировании TEX Live. +
  • +
  • Грэма Виллиамса, создавшего каталог пакетов TEX Catalogue. +
+

Программы компилировали: Этторе Алдрованди (i386-solaris, x86_64-solaris). Алан Браслау +(amd64-kfreebsd, i386-kfreebsd), Питер Брейтенлохнер (x86_64-linux), Карл Берри (i386-linux), Кен Браун +(i386-cygwin), Акира Какуто (win32), Дик Коч (universal-darwin, x86_64-darwin), Никола Лечич +(amd64-freebsd, i386-freebsd), Мойка Миклавек (mipsel-linux), Норберт Прейнинг (alpha-linux), Юкка Салми +(i386-netbsd), Томас Шмитц (powerpc-linux), Борис Вейцман (armel-linux), Владимир Волович (powerpc-aix, +sparc-solaris), Олаф Вебер (mips-irix). Информация о процессе компилирования TEX Live находится на +http://tug.org/texlive/build.html. +

Перевод документации: Борис Вейцман (русский), Цзигод Цзян, Цзиньсун Чжао, Юэ Ван и Хэлинь +Гай (китайский), Уве Цигенхаген (немецкий), Мануэль Пьегорье-Гоннар (французский), Марко Паллант +(итальянский), Никола Лечич (сербский), Петр Сойка и Ян Буса (чешский и словацкий), Сташек +Ваврикевич (польский). Страница документации TEX Live: http://tug.org/texlive/doc.html. +

Разумеется, наша главная благодарность — Дональду Кнуту, во-первых, за разработку TEXа, и +во-вторых, за то, что он подарил его миру. +

+

10 История издания

+

+

10.1 Прошлое

+

В конце 1993 года в голландской группе пользователей TEXа во время работы над дистрибутивом +4AllTEX CD для пользователей MS-DOS возникла новая идея. Была поставлена цель создать +единый CD для всех систем. Эта цель была черечур сложна для того времени, однако она +привела не только к появлению очень успешного CD 4AllTEX, но и к созданию рабочей + + +группы Технического Совета TUG по структуре директорий для TEXа (http://tug.org/tds), +которая разработала стандарт структуры директорий для системы TEX и указала, как создать +логичную единую систему файлов для TEXа. Несколько версий TDS было опубликовано +в декабрьском выпуске TUGboat в 1995 году, и с самого начала стало ясно, что следует +создать пример структуры на CD. Дистрибутив, который вы держите в руках, — прямой +результат работы этой группы. Из успеха 4AllTEX был сделан вывод, что пользователям +UNIX также подойдёт такая удобная система, и так родилась другая важная часть TEX +Live. +

Мы начали делать CD с UNIX и структурой директорий TDS осенью 1995 года, и быстро +поняли, что у teTEXа Томаса Эссера идеальный состав дистрибутива и поддержка многих +платформ. Томас согласился нам помочь, и мы в начале 1996 года стали серьёзно работать над +дистрибутивом. Первое издание вышло в мае 1996 года. В начале 1997 года Карл Берри завершил +новую версию Web2C, которая включила практически все новые возможности, добавленные +Томасом Эссером в teTEX, и мы решили основать второе издание на стандартном Web2C, с +добавлением скрипта texconfig из teTEXа. Третье издание CD основывалось на новой версии +Web2C 7.2, Олафа Вебера; в то же время была выпущена новая версия teTEXа, и TEX Live +включил почти все его новые возможности. Четвертое издание следовало той же традиции, +используя новую версию teTEXа и Web2C (7.3). Теперь в нём была полная система для +Windows. +

Для пятого издания (март 2000 года) многие пакеты на CD были пересмотрены и проверены. +Информация о пакетах была собрана в файлы XML. Но главным изменением в TEX Live 5 было +удаление всех несвободных программ. Всё на TEX Live преполагается совместимым с Правилами +Дебиана для Свободных Программ (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). Кроме +того: +

    +
  • По просьбе авторов LATEXа, мы сменили стандартные команды latex и pdflatex: теперь они + используют e-TEX (см. стр. 10). +
  • +
  • Новые шрифты Latin Modern включены и рекомендованы для использования. +
  • +
  • Убрана поддержка для Alpha OSF (поддержка для HPUX была убрана ранее), поскольку + никто не имел (и не предложил) компьютеров для компилирования программ. +
  • +
  • Сильно изменилась установка для Windows: впервые была предложена интегрированная + среда на основе редактора XEmacs. +
  • +
  • Добавлены вспомогателные программы для Windows (Perl, Ghostscript, ImageMagick, Ispell). +
  • +
  • Файлы Fontmap для dvips, dvipdfm и pdftex генерируютрся программой updmap и + устанваливаются в texmf/fonts/map. +
  • +
  • TEX, Metafont, and MetaPost теперь по умолчанию выводят символы из верхней половины + таблицы ASCII в файлы, открытые командой \write, логи и на терминал буквально, т.е. не + + + используя формат ^^. В TEX Live 7 это зависело от системной локали, но теперь это верно + для всех локалей. Если вам нужен формат ^^, переименуйте файл texmf/web2c/cp8bit.tcx. + В будущем эта процедура будет упрощена. +
  • +
  • Документация была существенно обновлена. +
  • +
  • Наконец, из-за того, что нумерация по изданиям стала неудобной, мы перешли на нумерацию + по годам: TEX Live 2003.
+

+

10.1.2 2004
+

В 2004 году мы внесли много изменений. +

    +
  • Если у вас есть локальные шрифты с собственными файлами .map или .enc, вам может + понадобиться переместить эти файлы. +

    Файлы .map теперь ищутся только в поддиректориях fonts/map (в каждом дереве texmf) + в пути TEXFONTMAPS. Аналогично файлы .enc теперь ищутся в только в поддиректориях + fonts/enc в пути ENCFONTS. Программа updmap предупреждает, если находит эти файлы не + там, где они должны быть. +

    См. описание этой структуры на http://tug.org/texlive/mapenc.html. +

  • +
  • К коллекции TEX Collection был добавлен установочный CD с дистрибутивом MiKTEX для + тех, кто предпочитает MiKTEX программам, основанным на Web2C. См. раздел 2 (стр. 7). +
  • +
  • Дерево texmf в TEX Live было разделено на три: texmf, texmf-dist и texmf-doc. См. + раздел 2.2 (стр. 7) и файлы README в соответствующих директориях. +
  • +
  • Все файлы, которые читает TEX, собраны в + поддиректории tex деревьев texmf* вместо разделения на tex, etex, pdftex, pdfetex и т.д. + См. texmf-doc/doc/english/tds/tds.html#Extensions. +
  • +
  • Вспомогательные скрипты (вызываемые другими программами, а не непосредственно + пользователем) теперь собраны в директории scripts деревьев texmf* и ищутся командой + kpsewhich -format=texmfscripts. Поэтому если у вас есть программы, которые вызывают + такие скрипты, их надо изменить. См. texmf-doc/doc/english/tds/tds.html#Scripts. +
  • +
  • Почти все форматы теперь печатают большинство символов непосредственно, используя + «таблицы перевода» cp227.tcx вместо формата ^^. В частности, символы с кодами 32–256 + плюс табуляция, вертикальная табуляция и перевод страницы печатаются непосредственно. + Исключениями являются plain TEX (печатаются непосредственно символы 32–127), + ConTEXt (0–255) и форматы, относящиеся к программе Omega. Это поведение почти такое + же, как у TEX Live 2003, но реализовано более аккуратно, с б´ольшей возможностью + настройки. См. texmf/doc/web2c/web2c.html#TCX-files. (Кстати, при вводе в Unicode, + TEX может выводить при указании на ошибку только часть многобайтного символа, так + как внутри TEX работает с байтами). +
  • +
  • pdfetex теперь используется для всех форматов, кроме plain tex. (Разумеется, он делает + файлы в формате DVI, если вызван как latex и т.п.). Это означает, помимо прочего, + что возможности pdftexa для микротипографии а также возможности e-TEXа доступны в + форматах LATEX, ConTEXt и т.д. (texmf-dist/doc/etex/base/). + + +

    Это также означает, что теперь очень важно использовать пакет ifpdf (работает и с plain, и с + LATEX) или эквивалентные средства, поскольку просто проверка, определён ли \pdfoutput + или другой примитив не достаточна для того, чтобы понять, в каком формате генерируется + результат. Мы сделали всё возможное для совместимости в этом году, но в будущем году + \pdfoutput может быть определён даже если генерируется DVI. +

  • +
  • У программы pdfTEX (http://pdftex.org) много новых возможностей: +
      +
    • Поддержка карт шрифтов изнутри документа при помощи \pdfmapfile и \pdfmapline. +
    • +
    • Микротипографические расширения могут быть использованы намного проще.
      http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html +
    • +
    • Все параметры, ранее задававшиеся в специальном конфигурационном файле + pdftex.cfg, теперь должны быть установлены примитивами, например, в файле + pdftexconfig.tex. Файл pdftex.cfg больше не поддерживается. При изменении файла + pdftexconfig.tex все форматы .fmt должны быть перегенерированы. +
    • +
    • Остальные изменения описаны в руководстве пользователя программой pdfTEX: + texmf/doc/pdftex/manual. +
    +
  • +
  • Примитив \input в программе tex mf и mpost) теперь правильно интерпретирует пробелы и + другие специальные символы в двойных кавычках. Вот типичные примеры: + + +
    +
      \input "filename with spaces"   % plain
      \input{"filename with spaces"}  % latex
    +
    +

    См. подробности в руководстве к программе Web2C: texmf/doc/web2c. +

  • +
  • Поддержка encTEXа включена в Web2C, и поэтому во все программы TEX, которые теперь + поддерживают опцию -enc (только при генерировании форматов). encTEX обеспечивает общую + перекодировку входного и выходного потоков, что позволяет полную поддержку Unicode (в + UTF-8). См. texmf-dist/doc/generic/enctex/ и http://www.olsak.net/enctex.html. +
  • +
  • В дистрибутиве появилась новая программа Aleph, сочетающая e-TEX и Omega. Краткая информация о + ней находится в texmf-dist/doc/aleph/base и http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph. + Формат для LATEXа на основе этой программы называется lamed. +
  • +
  • Последняя версия LATEXа включает новую версию лицензии LPPL — теперь официально + одобренную Debianом. Некоторые другие изменения перечислены в файлах ltnews в + texmf-dist/doc/latex/base. +
  • +
  • В дистрибутиве появилась dvipng, новая программа для перевода DVI в PNG. См. + texmf/doc/man/man1/dvipng.1. +
  • +
  • Мы уменьшили размер пакета cbgreek до приемлемого набора шрифтов, с согласия и совета автора + (Клаудио Беккари). Исключены невидимые, прозрачные и полупрозрачные шрифты, которые + относительно редко используются, а нам не хватало места. Полный набор шрифтов можно найти в + архиве CTAN (http://www.ctan.org/tex-archive/fonts/greek/cb). +
  • +
  • Программа oxdvi удалена из дистрибутива; используйте xdvi. +
  • +
  • Линки ini и vir для программ tex, mf и mpost (например, initex) больше не создаются. Уже много лет + опция -ini их успешно заменяет. +
  • +
  • Убрана поддержка платформы i386-openbsd. Так как в портах BSD есть пакет tetex, и можно + пользоваться программами для GNU/Linux и FreeBSD, мы посчитали, что время добровольных + сотрудников проекта можно потратить с б´ольшей пользой по-другому. +
  • +
  • По крайней мере для платформы sparc-solaris требуется установить переменную окружения + LD_LIBRARY_PATH для работы программ t1utils. Это вызвано тем, что они написаны на C++, а + стандартной директории для бибилиотек C++ в системе нет (это появилось до 2004 года, но ранее + эта особенность не была документирована). Аналогично, в mips-irix требуются библиотеки + MIPSpro 7.4. +
+

+

10.1.3 2005
+

В 2005 году было, как всегда, сделано много изменений в пакетах и программах. Инфраструктура +почти не изменилась по сравненению с 2004 годом, но некоторые неизбежные изменения были +сделаны. +

    +
  • Были добавлены новые скрипты texconfig-sys, updmap-sys и fmtutil-sys, которые изменяют + конфигурационные файлы в системных деревьях. Скрипты texconfig, updmap и fmtutil теперь + модифицируют индивидуальные файлы пользователя в $HOME/.texlive2005. + + +
  • +
  • Были добавлены новые переменные TEXMFCONFIG и TEXMFSYSCONFIG для указания, где + находятся конфигурационные файлы (пользовательские и системные). Таким образом, вам + надо переместить туда ваши личные копии fmtutil.cnf и texmf.cnf. В любом случае + положение этих файлов и значения переменных TEXMFCONFIG и TEXMFSYSCONFIG должны + быть согласованы. См. раздел 2.3, стр. 8. +
  • +
  • В прошлом году мы оставили неопределёнными \pdfoutput и другие переменные при + генерировании файлов в формате DVI, хотя для этого использовалась программа pdfetex. В + этом году, как и было обещано, это уже не так. Поэтому если ваш документ использует для + проверки формата \ifx\pdfoutput\undefined, его надо изменить. Вы можете использовать + пакет ifpdf.sty (работает в plain TEX и LATEX) или аналогичную логику. +
  • +
  • В прошлом году мы изменили большинство форматов, которые стали выдавать 8-битовые символы. + Если вам всё же нужны старый вариант с ^^, используйте новый файл empty.tcx: + + +
    +
      latex --translate-file=empty.tcx yourfile.tex
    +
    +

    +

  • +
  • Добавлена новая программа dvipdfmx для перевода из DVI в PDF; это активно поддерживаемая + версия программы dvipdfm, которая пока ещё включена в дистрибутив, но уже не рекомендована. +
  • +
  • Добавлены новые программы pdfopen и pdfclose, которые позволяют перегрузить файл PDF в + Adobe Acrobat Reader, не перезапуская программу (у других программ для чтения файлов PDF, + включая xpdf, gv и gsview, такой проблемы никогда не было). +
  • +
  • Для единообразия мы переименовали переменные HOMETEXMF и VARTEXMF в TEXMFHOME и + TEXMFSYSVAR. Есть также TEXMFVAR, индивидуальная для каждого пользователя (см. первый пункт + выше).
+

+

10.1.4 2006–2007
+

В 2006–2007 главным нововведением была программа XeTEX, вызываемая как xetex или xelatex; см. +http://scripts.sil.org/xetex. +

Значительно обновлена программа MetaPost; предполагаются дополнительные обновления в будущем +(http://tug.org/metapost/articles). Также обновлён pdfTEX (http://tug.org/applications/pdftex). +

Форматы .fmt и т.д. теперь хранятся в поддиректориях texmf/web2c, а не в самой директории (хотя +директория всё ещё включена в поиск форматов, на случай, если там находятся старые файлы). +Поддиректории названы по имени программы, например, tex, pdftex, xetex. Это изменение не должно +влиять на работу программ. +

Программа (plain) tex больше не определяет по %& в первой строке, какой формат использовать: это +всегда Кнутовский TEX (LATEX и другие ещё используют %&). +

Разумеется, в этом году были, как обычно, сотни обновлений пакетов и программ. Как обычно, +обновлённые версии можно найти в сети CTAN (http://www.ctan.org). +

Дерево TEX Live теперь хранится в системе Subversion, и у нас появился WWW-интерфейс для +его просмотра. Мы предполагаем, что эта система будет использована для разработки в +будущем. +

Наконец, в мае 2006 года Томас Эссер объявил о прекращении работы над teTEXом +(http://tug.org/tetex). Это вызвало всплеск интереса к TEX Live, особенно среди разработчиков +систем GNU/Linux (мы добавили схему tetex, которая устанавливает систему, примерно +соответствующую teTEXу). Мы надеемся, что это приведёт в конечном итоге к улучшению работы в +TEXе для всех. +

+

10.1.5 2008
+

В 2008 была заново разработана и переписана вся структура TEX Live. Полная информация об +установке системы теперь хранится в текстовом файле tlpkg/texlive.tlpdb. +

Помимо прочего, это наконец позволило обновление TEX Live по сети — возможность, которая много +лет была у программы MiKTEX. Мы предполагаем регулярно обновлять пакеты, поступающие на +CTAN. +

Включен новый важный «движок» LuaTEX (http://luatex.org); помимо нового уровня вёрстки, +это дает прекрасный скриптовый язык для использования как изнутри документов TEXа, так и +отдельно. +

Поддержка многих платформ на основе UNIX и Windows теперь гораздо более последовательна. В +частности, большинство скриптов на языках Perl и Lua теперь доступны под Windows благодаря версии +Perlа, распространяемой с TEX Live. +

Новый скрипт tlmgr (см. раздел 6) теперь является основным интерфейсом для администрирования +TEX Live после установки. Он осуществляет обновление пакетов и перегенерирование форматов, карт +шрифтов и языков, включая локальные добавления. + + +

В связи с появлением программы tlmgr, возможности программы texconfig по редактированию +конфигурационных файлов форматов и таблиц переноса отключены. +

Программа xindy (http://xindy.sourceforge.net/) для создания указателей теперь работает на +большинстве платформ. +

Программа kpsewhich теперь может сообщить обо всех нужных файлах (опция -all) и ограничить +поиск определенной поддиректорией (опция -subdir). +

Программа dvipdfmx теперь может извлекать информацию о высоте и ширине текста, если вызвана +как extractbb; это одна из последних возможностей программы dvipdfm, которой не было у +dvipdfmx. +

Алиасы Times-Roman, Helvetica и т.д. убраны. Разные пакеты ожидают от них разного +поведения (особенно при разных кодировках), и мы не нашли способа решить эту проблему +единообразно. +

Формат platex убран из-за конфликта с японским пакетом platex; теперь основная поддержка +польского языка осуществляется через пакет polski. +

Пулы строковых констант WEB теперь компилируются в сами программы для удобства +обновлений. +

Наконец, добавлены изменения, сделанные Дональдом Кнутом в его «Настройке TEXа 2008 года», +см. http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf. +

+

10.1.6 2009
+

Начиная с 2009 года по умолчанию Lua(LA )TEX теперь создает файлы в формате PDF, чтобы полнее +использовать поддержку шрифтов в формате OpenType. Чтобы получить результат в формате +DVI, используйте программы dviluatex и dvilualatex. Страница LuaTEX находится на +http://luatex.org. +

Программа Omega и формат Lambda были после консультаций с авторами исключены из +дистрибутива. В дистрибутиве остались Aleph и Lamed, а также утилиты из набора Omega. +

Включена новая версия шрифтов AMS в формате Type 1. Она включает Computer Modern: были +учтены изменения, которые Кнут внес в исходные параметры для программы Metafont, а также +обновлены хинты. Шрифты Euler были полностью перерисованы Германом Цапфом (см. +http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf). Во всех случаях метрики шрифтов +не изменились. Страница шрифтов AMS находится на http://www.ams.org/tex/amsfonts.html. +

Новая графическая оболочка TEXworks включена в дистрибутив для Windows и MacTEX. +Информация о версиях для других платформ и дополнительная документация находится на +http://tug.org/texworks. Это мультиплатформенная оболочка, вдохновленная программой TeXShop +для Mac OS X и ориентированная на упрощение работы с TEXом. +

Графическая программа Asymptote включена в дистрибутив для нескольких платформ. Она +основана на языке представления графики, напоминающем MetaPost, но с поддержкой трехмерных +объектов и другими возможностями. Её страница находится на http://asymptote.sourceforge.net. +

Программа dvipdfm была заменена программой dvipdfmx; если вызвать последнюю как dvipdfm, она +работает в специальном режиме эмуляции dvipdfm. Программа dvipdfmx включает поддержку +китайского, японского и корейского языков (CJK) и много других изменений по сравнению с dvipdfm. Её +страница находится на http://project.ktug.or.kr/dvipdfmx. +

В дистрибутив включены программы для cygwin и i386-netbsd, в то время как другие варианты BSD +были исключены: нам сказали, что пользователи OpenBSD и FreeBSD устанавливают TEX, пользуясь +пакетными менеджерами. Кроме того, оказалось сложным создать программы, которые бы работали под +разными версиями этих систем. +

Ещё несколько изменений: мы теперь используем архиватор xz, стабильную замену для lzma +(http://tukaani.org/xz/); знак доллара $ теперь допустим в именах файлов, если результат не может +быть истолкован как известная перемена окружения; библиотека Kpathsea теперь параллелизована (это +нужно для новой версии программы MetaPost); процесс компиляции теперь полностью основан на +Automake. +

Последнее замечание о прошлом: все выпуски TEX Live вместе с дополнительными +материалами вроде обложек CD хранятся на ftp://tug.org/historic/systems/texlive. +ftp://tug.org/historic/systems/texlive. + + +

+

10.1.7 2010
+

Начиная с 2010 года файлы в формате PDF по умолчанияю создаются в версии PDF 1.5. Это верно для +всех вариантов TEXа, которые способны создавать файлы PDF, а также для dvipdfmx. Чтобы +получать файлы в формате PDF 1.4, используйте LATEXовский пакет pdf14 или команду +\pdfminorversion=4. +

pdf(LA )TEX теперь автоматически конвертирует файлы в формате Encapsulated PostScript (EPS) в +PDF при помощи пакета epstopdf, если используется конфигурационный файл graphics.cfg в LATEXе, +и требуется вывод в формате PDF. Вы можете отказаться от загрузки пакета epstopdf, поместив перед +объявлением \documentclass команду \newcommand{\DoNotLoadEpstopdf}{} (или \def...). Он также не +загружается, если используется пакет pst-pdf. См. также документацию к пакету epstopdf +(http://ctan.org/pkg/epstopdf-pkg). +

С этим связано ещё одно изменение: теперь по умолчанию разрешено вызывать из TEXа несколько +внешних команд (при помощи механизма \write18). Это repstopdf, makeindex, kpsewhich, bibtex и +bibtex8. Список определен в texmf.cnf. В случае, если необходимо запретить все текие команды, можно +убрать соответствующую опцию при установке системы (см. раздел 3.2.4) или переконфигурировать +систему после установки командой tlmgr conf texmf shell_escape 0. +

Ещё одно изменение, связанное с этим: теперь BibTeX и Makeindex по умолчанию отказываются +записывать в файлы, лежащие в произвольной директории системы (как и сам TEX). Поэтому их можно +запускать через механизм \write18. Чтобы изменить это правило, можно установить переменную +окружения TEXMFOUTPUT или изменить значение параметра openout_any. +

XeTEX теперь поддерживает оптическое выравнивание полей, как это умеет делать pdfTEX. +(Шрифты с вариантами пока не поддерживаются). +

По умолчанию, tlmgr теперь сохраняет предыдущую версию каждого пакета после апгрейда +(tlmgr option autobackup 1), поэтому ошибки можно «откатить назад» командой tlmgr +restore. Если у вас нет места на диске для этих копий, запустите tlmgr option autobackup +0. +

Новые программы: pTEX и пакет утилит для набора японских текстов, программа BibTeXU для +варианта BibTeXа с поддержкой Юникода, утилита chktex (http://baruch.ev-en.org/proj/chktex) для +проверки документов, созданных (LA )TEXом, программа dvisvgm (http://dvisvgm.sourceforge.net) для +перевода из формата DVI в формат SVG. +

Включены программы для следующих новых платформ: amd64-freebsd, amd64-kfreebsd, +i386-freebsd, i386-kfreebsd, x86_64-darwin, x86_64-solaris. +

Об одном изменении в TEX Live 2009 мы забыли упомянуть в свое время: многочисленные +программы конвертера TEX4ht (http://tug.org/tex4ht) были убраны из директорий для бинарников; +все теперь делается одной программой mk4ht. +

Наконец, релиз TEX Live на TEX Collection DVD уже нельзя использовать «live», непосредственно с +диска (что может показаться странным). Кстати, из-за этого установка с DVD будет теперь +значительно быстрее. +

+

10.1.8 2011
+

В 2011 году было сделано относительно немного изменений. +

Программы для Mac OS X (universal-darwin и x86_64-darwin) работают теперь только под Leopard +или младшей системой; Panther и Tiger больше не поддерживаются. +

Программа biber для обработки библиографических списков добавлена для всех платформ. Она +тесно связана с пакетом biblatex, который предлагает совершенно новый способ обработки +библиографий из LATEXа. +

Программа MetaPost (mpost) больше не создает файлов .mem. Нужные файлы, например plain.mp, +теперь просто перечитываются при каждом запуске. Это связано с поддержкой MetaPost как +библиотеки — ещё одно важное, но прозрачное для пользователя изменение. +

Версия программы updmap, написанная на Перле, ранее использованная только под Windows, теперь +улучшена и устанавливается для всех платформ. Это должно быть прозрачно для пользователя — разве +что программа теперь работает гораздо быстрее. +

+

10.2 Настоящее

+ + +

Программа tlmgr теперь поддерживает обновления из нескольких сетевых репозиториев. Эти +возможности подробнее описаны в соответствующем разделе tlmgr help. +

Параметр \XeTeXdashbreakstate теперь по умолчанию равен 1, как для xetex, так и для +xelatex. Это разрешает переход на новую строку после тире, что всегда было разрешено в plain +TeX, LATEX, LuaTEX и т.д. Старые документы в XeTEXе, для которых нужно в точности +сохранить старое форматирование, теперь должны будут явно установить \XeTeXdashbreakstate +равным 0. +

Файлы, создаваемые программами pdftex и dvips, теперь могут быть больше 2 гигабайт. +

35 стандартных шрифтов PostScriptа теперь по умолчанию включены в файлы, создаваемые dvips, +так как сейчас существует много разных версий этих «стандартных» шрифтов. +

К программам, которые могут по умолчанию вызываться в ограниченном режиме через \write18, +добавлена mpost. +

Файл texmf.cnf теперь ищется ещё и в директории ../texmf-local, т. е. если файл +/usr/local/texlive/texmf-local/web2c/texmf.cnf существует, он будет использован. +

Скрипт updmap теперь читает файлы updmap.cfg в каждом поддереве директорий, вместо одного +глобального конфигурационного файла. Это изменение должно быть прозрачным для пользователя, +если бы не редактировали вручную файлы updmap.cfg. Подробнее объяснено в документации, +выдаваемой командой updmap –help. +

Платформы: добавлены armel-linux и mipsel-linux; из основного дистрибутива исключена платформа +sparc-linux. Её теперь можно сгрузить, вместе с другими дополнительными платформами, из +http://tug.org/texlive/custom-bin.html. +

+

10.3 Будущее

+

TEX Live не совершенен! (И никогда не будет.) Мы предполагаем выпускать новые версии, добавляя +справочный материал, утилиты, установочные программы и (конечно) новое, улучшенное и +проверенное дерево макросов и шрифтов. Эта работа делается очень занятыми добровольцами в +свободное время, и многое остается сделать. Если вы можете помочь, не стесняйтесь. См. +http://tug.org/texlive/contribute.html. +

Присылайте, пожалуйста, замечания и предложения по адресу: +

+

Happy TEXing! + + + + + + diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.pdf b/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.pdf new file mode 100644 index 00000000000..b5d626f5988 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.pdf differ diff --git a/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.tex b/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.tex new file mode 100644 index 00000000000..34699258cff --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-ru/texlive-ru.tex @@ -0,0 +1,3468 @@ +% $Id$ +% +%\def\Status{1} +\documentclass{article} +\let\tldocrussian=1 % for live4ht.cfg +\usepackage{cmap} +\usepackage{tex-live} +\usepackage[koi8-r]{inputenc} +\usepackage[russian]{babel} +\newcommand\Unix{Unix} +\newcommand\Windows{Windows} +\usepackage{indentfirst} +\def\p.{ÓÔÒ.~}% +\renewcommand{\samp}[1]{<<\texttt{#1}>>} +\hypersetup{unicode=true} % Makes bookmarks work in Russian +% +\begin{document} + +\title{% + {\huge \textit{òÕËÏ×ÏÄÓÔ×Ï ÐÏÌØÚÏ×ÁÔÅÌÑ \protect\TL{}}\\\smallskip}% + {\LARGE \textsf{\TL{} 2012}}% +} + +\author{òÅÄÁËÔÏÒ: ëÁÒÌ âÅÒÒÉ\\[3mm] + \url{http://tug.org/texlive/}} +\date{éÀÎØ 2012} + +\maketitle + + +\begin{multicols}{2} +\tableofcontents +%\listoftables +\end{multicols} + +\section{÷×ÅÄÅÎÉÅ} +\label{sec:intro} + +\subsection{\TeX\ Live É \TeX\ Collection} + + +÷ ÜÔÏÍ ÄÏËÕÍÅÎÔÅ ÏÐÉÓÁÎÙ ÏÓÎÏ×ÎÙÅ ×ÏÚÍÏÖÎÏÓÔÉ ÐÒÏÇÒÁÍÍÎÏÇÏ ÐÒÏÄÕËÔÁ +\TL{} "--- ÄÉÓÔÒÉÂÕÔÉ×Á \TeX{}Á É ÄÒÕÇÉÈ ÐÒÏÇÒÁÍÍ ÄÌÑ +\acro{GNU}/Linux É ÄÒÕÇÉÈ UNIXÏ×, \MacOSX É Windows. + +\TL{} ÍÏÖÎÏ ÓËÁÞÁÔØ Ó éÎÔÅÒÎÅÔÁ, Á ÍÏÖÎÏ ÐÏÌÕÞÉÔØ ÎÁ \DVD{} <<\TK{}>>. üÔÉ +\DVD{} ÒÁÓÐÒÏÓÔÒÁÎÑÀÔÓÑ ÇÒÕÐÐÁÍÉ ÐÏÌØÚÏ×ÁÔÅÌÅÊ \TeX Á. ÷ ÒÁÚÄÅÌÅ +\ref{sec:tl-coll-dists} ËÒÁÔËÏ ÏÐÉÓÁÎÏ ÓÏÄÅÒÖÁÎÉÅ ÔÁËÏÇÏ \DVD{}. é +\TL{}, É \TK{} ÐÏÄÄÅÒÖÉ×ÁÀÔÓÑ ÇÒÕÐÐÁÍÉ ÐÏÌØÚÏ×ÁÔÅÌÅÊ \TeX Á. ÷ ÜÔÏÍ +ÄÏËÕÍÅÎÔÅ × ÏÓÎÏ×ÎÏÍ ÏÐÉÓÁÎ \TL{}. + +÷ \TL{} ×ËÌÀÞÅÎÙ ÐÒÏÇÒÁÍÍÙ \TeX{}, \LaTeXe{}, \ConTeXt, \MF, \MP, +\BibTeX{} É ÍÎÏÇÉÅ ÄÒÕÇÉÅ; ÏÂÛÉÒÎÁÑ ËÏÌÌÅËÃÉÑ ÍÁËÒÏÓÏ×, ÛÒÉÆÔÏ× É +ÄÏËÕÍÅÎÔÁÃÉÉ; Á ÔÁËÖÅ ÐÏÄÄÅÒÖËÁ ×£ÒÓÔËÉ ÎÁ ÍÎÏÇÉÈ ÑÚÙËÁÈ ÍÉÒÁ. + + +ëÒÁÔËÉÊ ÓÐÉÓÏË ÏÓÎÏ×ÎÙÈ ÉÚÍÅÎÅÎÉÊ × ÜÔÏÍ ÉÚÄÁÎÉÉ \TeXLive{} ÍÏÖÎÏ +ÎÁÊÔÉ × ÒÁÚÄÅÌÅ~\ref{sec:history}, \p.\pageref{sec:history}. + +\htmlanchor{platforms} +\subsection{ðÏÄÄÅÒÖÉ×ÁÅÍÙÅ ÏÐÅÒÁÃÉÏÎÎÙÅ ÓÉÓÔÅÍÙ} +\label{sec:os-support} + +÷ \TL{} ×ËÌÀÞÅÎÙ ÓËÏÍÐÉÌÉÒÏ×ÁÎÎÙÅ ÐÒÏÇÒÁÍÍÙ ÄÌÑ ÍÎÏÇÉÈ ×ÁÒÉÁÎÔÏ× UNIX, +×ËÌÀÞÁÑ \GNU/Linux, \MacOSX{} É Cygwin. éÓÈÏÄÎÙÊ ËÏÄ ÔÁËÖÅ ×ËÌÀÞ£Î × +ÄÉÓÔÒÉÂÕÔÉ×, ÞÔÏ ÐÏÚ×ÏÌÑÅÔ ËÏÍÐÉÌÉÒÏ×ÁÔØ \TL{} É ÎÁ ÐÌÁÔÆÏÒÍÁÈ, ÄÌÑ +ËÏÔÏÒÙÈ ÍÙ ÎÅ ×ËÌÀÞÉÌÉ ÓÏÂÒÁÎÎÙÈ ÐÒÏÇÒÁÍÍ. + +þÔÏ ËÁÓÁÅÔÓÑ Windows: ÐÏÄÄÅÒÖÉ×ÁÀÔÓÑ ×ÅÒÓÉÉ Windows~\acro{XP} É +ÍÌÁÄÛÅ. ðÒÏÇÒÁÍÍÙ ÔÁËÖÅ ÂÏÌÅÅ ÉÌÉ ÍÅÎÅÅ ÒÁÂÏÔÏÓÐÏÓÏÂÎÙ ÐÏÄ +Windows~2000. íÙ ÎÅ ÓÏÂÒÁÌÉ 64-ÂÉÔÏ×ÙÅ ÐÒÏÇÒÁÍÍÙ ÄÌÑ Windows, ÎÏ +32-ÂÉÔÏ×ÙÅ ×ÁÒÉÁÎÔÙ ÄÏÌÖÎÙ ÒÁÂÏÔÁÔØ ÎÁ 64-ÂÉÔÏ×ÙÈ ÓÉÓÔÅÍ. + +áÌØÔÅÒÎÁÔÉ×ÎÙÅ ×ÁÒÉÁÎÔÙ ÄÌÑ Windows É \MacOSX{} ÏÐÉÓÁÎÙ × +ÒÁÚÄÅÌÅ~\ref{sec:tl-coll-dists}. + +\subsection{ïÓÎÏ×Ù ÕÓÔÁÎÏ×ËÉ \protect\TL{}} +\label{sec:basic} + +\TL{} ÍÏÖÎÏ ÕÓÔÁÎÏ×ÉÔØ Ó \DVD{} ÉÌÉ Ó éÎÔÅÒÎÅÔÁ +(\url{http://tug.org/texlive/acquire.html}). ðÒÏÇÒÁÍÍÁ ÄÌÑ ÕÓÔÁÎÏ×ËÉ +Ó ÓÅÔÉ ÓÁÍÁ ÐÏ ÓÅÂÅ ÍÁÌÁ "--- ÏÎÁ ÓËÁÞÉ×ÁÅÔ ×ÓÅ ÎÕÖÎÏÅ Ó éÎÔÅÒÎÅÔÁ. + +ðÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ Ó \DVD{} ÐÏÚ×ÏÌÑÅÔ ÕÓÔÁÎÏ×ÉÔØ \TL{} ÎÁ ÄÉÓË +ËÏÍÐØÀÔÅÒÁ. ÷Ù ÎÅ ÓÍÏÖÅÔÅ ÚÁÐÕÓËÁÔØ \TL{} ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ Ó \DVD{}, +ÎÏ ×Ù ÍÏÖÅÔÅ ÓÏÂÒÁÔØ ÒÁÂÏÔÁÀÝÕÀ ×ÅÒÓÉÀ \TL, ÎÁÐÒÉÍÅÒ, ÎÁ ÆÌÅÛËÅ \acro{USB} +(ÓÍ.~\ref{sec:portable-tl}). õÓÔÁÎÏ×ËÁ ÓÉÓÔÅÍÙ ÐÏÄÒÏÂÎÏ ÏÐÉÓÁÎÁ × +ÓÌÅÄÕÀÝÉÈ ÒÁÚÄÅÌÁÈ (\p.\pageref{sec:install}), ÎÏ ×ËÒÁÔÃÅ ÏÎÁ ÓÏÓÔÏÉÔ +× ÓÌÅÄÕÀÝÅÍ: +\begin{itemize*} + +\item óËÒÉÐÔ ÄÌÑ ÕÓÔÁÎÏ×ËÉ ÓÉÓÔÅÍÙ ÎÁÚÙ×ÁÅÔÓÑ \texttt{install-tl}. ïÎ + ÍÏÖÅÔ ÒÁÂÏÔÁÔØ × ÕÐÒÏÝÅÎÎÏÍ ÇÒÁÆÉÞÅÓËÏÍ ×ÁÒÉÁÎÔÅ, ÅÓÌÉ ×ÙÂÒÁÎÁ ÏÐÃÉÑ + \code{-gui=wizard}) (ÒÅÖÉÍ ÐÏ ÕÍÏÌÞÁÎÉÀ ÄÌÑ Windows), × ÔÅËÓÔÏ×ÏÍ + ×ÁÒÉÁÎÔÅ, ÅÓÌÉ ×ÙÂÒÁÎÁ ÏÐÃÉÑ \texttt{-gui=text} (ÒÅÖÉÍ ÐÏ ÕÍÏÌÞÁÎÉÀ + ÄÌÑ ÏÓÔÁÌØÎÙÈ ÁÒÈÉÔÅËÔÕÒ), É × ÇÒÁÆÉÞÅÓËÏÍ ×ÁÒÉÁÎÔÅ ÄÌÑ ÜËÓÐÅÒÔÏ×, + ÅÓÌÉ ×ÙÂÒÁÎÁ ÏÐÃÉÑ \code{-gui=perltk}. + +\item óÒÅÄÉ ÕÓÔÁÎÏ×ÌÅÎÎÙÈ ÐÒÏÇÒÁÍÍ ÅÓÔØ <<íÅÎÅÄÖÅÒ \TL{}>>, + \prog{tlmgr}. ëÁË É ÐÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ, ÏÎ ÍÏÖÅÔ ÒÁÂÏÔÁÔØ ËÁË × + ÇÒÁÆÉÞÅÓËÏÍ, ÔÁË É × ÔÅËÓÔÏ×ÏÍ ÒÅÖÉÍÁÈ. üÔÁ ÐÒÏÇÒÁÍÍÁ ÐÏÚ×ÏÌÑÅÔ + ÕÓÔÁÎÁ×ÌÉ×ÁÔØ É ÕÄÁÌÑÔØ ÐÁËÅÔÙ, Á ÔÁËÖÅ ÎÁÓÔÒÁÉ×ÁÔØ ÓÉÓÔÅÍÕ. +\end{itemize*} + +\htmlanchor{security} +\subsection{óÏÏÂÒÁÖÅÎÉÑ ÂÅÚÏÐÁÓÎÏÓÔÉ} +\label{sec:security} + +îÁÓËÏÌØËÏ ÍÙ ÍÏÖÅÍ ÓËÁÚÁÔØ, ÏÓÎÏ×ÎÙÅ ÐÒÏÇÒÁÍÍÙ \TeX{}Á ÂÙÌÉ É ÏÓÔÁÀÔÓÑ +ÏÞÅÎØ ÎÁÄÅÖÎÙÍÉ. ïÄÎÁËÏ ÎÅÓÍÏÔÒÑ ÎÁ ×ÓÅ ÕÓÉÌÉÑ, ÎÅËÏÔÏÒÙÅ ÐÒÏÇÒÁÍÍÙ +ÄÉÓÔÒÉÂÕÔÉ×Á ÍÏÇÕÔ ÎÅ ÄÏÓÔÉÞØ ÜÔÏÇÏ ÕÒÏ×ÎÑ. ëÁË ÏÂÙÞÎÏ, ×Ù ÄÏÌÖÎÙ +ÂÙÔØ ÏÓÔÏÒÏÖÎÙ, ÏÂÒÁÂÁÔÙ×ÁÑ ÌÀÂÙÍÉ ÐÒÏÇÒÁÍÍÁÍÉ ÎÅÎÁÄÅÖÎÙÅ ÉÓÈÏÄÎÙÅ +ÄÁÎÎÙÅ; ÄÌÑ ÂÅÚÏÐÁÓÎÏÓÔÉ ÄÅÌÁÊÔÅ ÜÔÏ × ÏÔÄÅÌØÎÏÊ ÐÏÄÄÉÒÅËÔÏÒÉÉ. + +ïÓÏÂÅÎÎÏÊ ÏÓÔÏÒÏÖÎÏÓÔÉ ÔÒÅÂÕÅÔ ÒÁÂÏÔÁ ÐÏÄ Windows, ÐÏÓËÏÌØËÕ Windows +ÏÂÙÞÎÏ ÚÁÐÕÓËÁÅÔ × ÐÅÒ×ÕÀ ÏÞÅÒÅÄØ ËÏÐÉÀ ÐÒÏÇÒÁÍÍÙ ÉÚ ÔÅËÕÝÅÊ +ÄÉÒÅËÔÏÒÉÉ, ÄÁÖÅ ÅÓÌÉ ÓÕÝÅÓÔ×ÕÅÔ ÄÒÕÇÁÑ ËÏÐÉÑ ÔÁÍ, ÇÄÅ × ÓÉÓÔÅÍÅ +ÏÂÙÞÎÏ ÎÁÈÏÄÑÔÓÑ ÂÉÎÁÒÎÉËÉ. üÔÏ ÏÔËÒÙ×ÁÅÔ ÍÎÏÇÏ ×ÏÚÍÏÖÎÏÓÔÅÊ ÄÌÑ +ÈÁËÅÒÓËÉÈ ÁÔÁË. íÙ ÚÁËÒÙÌÉ ÍÎÏÇÏ ÄÙÒ × ÂÅÚÏÐÁÓÎÏÓÔÉ, ÎÏ ÂÅÚ ÓÏÍÎÅÎÉÑ, +ÅÝ£ ÂÏÌØÛÅ ÄÙÒ ÏÓÔÁÌÏÓØ, ÏÓÏÂÅÎÎÏ × ÐÒÅÄÏÓÔÁ×ÌÅÎÎÙÈ ÎÁÍ ÞÕÖÉÈ +ÐÒÏÇÒÁÍÍÁÈ. ðÏÜÔÏÍÕ ÍÙ ÒÅËÏÍÅÎÄÕÅÍ ÐÒÏ×ÅÒÑÔØ ÐÏÄÏÚÒÉÔÅÌØÎÙÅ ÆÁÊÌÙ × +ÒÁÂÏÞÅÊ ÄÉÒÅËÔÏÒÉÉ, ÏÓÏÂÅÎÎÏ ÉÓÐÏÌÎÑÅÍÙÅ ÆÁÊÌÙ (ÂÉÎÁÒÎÉËÉ É +ÓËÒÉÐÔÙ). ïÂÙÞÎÏ ÉÈ ÔÁÍ ÂÙÔØ ÎÅ ÄÏÌÖÎÏ, É ×£ÒÓÔËÁ ÄÏËÕÍÅÎÔÏ× ÎÅ +ÄÏÌÖÎÁ ÉÈ ÓÏÚÄÁ×ÁÔØ. + +îÁËÏÎÅÃ, \TeX{} (É ×ÓÐÏÍÏÇÁÔÅÌØÎÙÅ ÐÒÏÇÒÁÍÍÙ) ÓÐÏÓÏÂÎÙ ÐÉÓÁÔØ × ÆÁÊÌÙ +ÐÒÉ ÏÂÒÁÂÏÔËÅ ÄÏËÕÍÅÎÔÏ×. üÔÏ ÍÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÄÌÑ ÁÔÁËÉ +ÒÁÚÎÏÏÂÒÁÚÎÙÍÉ ÓÐÏÓÏÂÁÍÉ. é ÏÐÑÔØ, ÂÅÚÏÐÁÓÎÅÅ ×ÓÅÇÏ ÏÂÒÁÂÁÔÙ×ÁÔØ +ÎÅÉÚ×ÅÓÔÎÙÅ ÄÏËÕÍÅÎÔÙ × ÏÔÄÅÌØÎÏÊ ÄÉÒÅËÔÏÒÉÉ. + +\subsection{çÄÅ ÍÏÖÎÏ ÐÏÌÕÞÉÔØ ÐÏÄÄÅÒÖËÕ} +\label{sec:help} + +óÏÏÂÝÅÓÔ×Ï ÐÏÌØÚÏ×ÁÔÅÌÅÊ \TeX{}Á ÁËÔÉ×ÎÏ É ÄÒÕÖÅÌÀÂÎÏ, É ÐÒÁËÔÉÞÅÓËÉ +ÎÁ ËÁÖÄÙÊ ÓÅÒØ£ÚÎÙÊ ×ÏÐÒÏÓ ÎÁÊÄ£ÔÓÑ ÏÔ×ÅÔ. ïÄÎÁËÏ ÜÔÁ ÐÏÄÄÅÒÖËÁ +ÎÅÆÏÒÍÁÌØÎÁ, ×ÙÐÏÌÎÑÅÔÓÑ ÄÏÂÒÏ×ÏÌØÃÁÍÉ, É ÐÏÜÔÏÍÕ ÏÞÅÎØ ×ÁÖÎÏ, ÞÔÏÂÙ +×Ù ÓÁÍÉ ÐÏÐÒÏÂÏ×ÁÌÉ ÎÁÊÔÉ ÏÔ×ÅÔ ÐÅÒÅÄ ÔÅÍ, ËÁË ÚÁÄÁ×ÁÔØ ×ÏÐÒÏÓ. (åÓÌÉ +×Ù ÐÒÅÄÐÏÞÉÔÁÅÔÅ ËÏÍÍÅÒÞÅÓËÕÀ ÐÏÄÄÅÒÖËÕ, ×ÏÚÍÏÖÎÏ ×ÁÍ ÓÔ\'ÏÉÔ ×ÍÅÓÔÏ +\TL{} ËÕÐÉÔØ ÏÄÎÕ ÉÚ ËÏÍÍÅÒÞÅÓËÉÈ ×ÅÒÓÉÊ \TeX{}Á, ÓÍ. ÓÐÉÓÏË ÐÏ +ÁÄÒÅÓÕ \url{http://tug.org/interest.html#vendors}). + +÷ÏÔ ÓÐÉÓÏË ÉÓÔÏÞÎÉËÏ× ÐÏÄÄÅÒÖËÉ, ÐÒÉÂÌÉÚÉÔÅÌØÎÏ × ÔÏÍ ÐÏÒÑÄËÅ, × +ËÏÔÏÒÏÍ ÍÙ ÒÅËÏÍÅÎÄÕÅÍ Ë ÎÉÍ ÏÂÒÁÝÁÔØÓÑ: + +\begin{description} + +\item[óÔÒÁÎÉÃÁ ÄÌÑ ÎÏ×ÉÞËÏ×:] åÓÌÉ ×Ù "--- ÎÏ×ÉÞÏË, ÔÏ ÓÔÒÁÎÉÃÁ + \url{http://tug.org/begin.html} ÍÏÖÅÔ ÐÏÓÌÕÖÉÔØ ÄÌÑ ÎÁÞÁÌÁ. + +\item [\TeX{} \acro{FAQ}:] \TeX{} \acro{FAQ} (þÁ÷Ï, ÞÁÓÔÏ ÚÁÄÁ×ÁÅÍÙÅ + ×ÏÐÒÏÓÙ) "--- ÏÇÒÏÍÎÁÑ ËÏÌÌÅËÃÉÑ ÏÔ×ÅÔÏ× ÎÁ ×ÓÅ×ÏÚÍÏÖÎÙÅ ×ÏÐÒÏÓÙ, ÏÔ + ÓÁÍÙÈ ÐÒÏÓÔÙÈ ÄÏ ÓÁÍÙÈ ÓÌÏÖÎÙÈ. áÎÇÌÉÊÓËÁÑ ×ÅÒÓÉÑ þÁ÷Ï ÎÁÈÏÄÉÔÓÑ ÎÁ + \TL{} × ÒÁÚÄÅÌÅ \OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html} + É ÄÏÓÔÕÐÎÁ × éÎÔÅÒÎÅÔÅ ÐÏ ÁÄÒÅÓÕ \url{http://www.tex.ac.uk/faq}. + ðÏÖÁÌÕÊÓÔÁ, ÎÁÞÉÎÁÊÔÅ ÐÏÉÓË ÏÔ×ÅÔÁ ÎÁ ×ÁÛÉ ×ÏÐÒÏÓÙ ÏÔÓÀÄÁ. + +\item [\TeX{} Catalogue:] åÓÌÉ ×Ù ÉÝÅÔÅ ËÁËÏÊ-ÌÉÂÏ ÐÁËÅÔ, ÛÒÉÆÔ, + ÐÒÏÇÒÁÍÍÕ É Ô.Ð., ÔÏ ×ÁÍ ÓÔÏÉÔ ÚÁÇÌÑÎÕÔØ × \TeX{} Catalogue. üÔÏ + ÏÇÒÏÍÎÙÊ ËÁÔÁÌÏÇ ×ÓÅÇÏ, ÞÔÏ ÏÔÎÏÓÉÔÓÑ Ë \TeX{}Õ. óÍ. + \url{http://www.ctan.org/help/Catalogue}. + +\item [\TeX{} ×Ï ×ÓÅÍÉÒÎÏÊ ÐÁÕÔÉÎÅ:] ÷ÏÔ ÓÔÒÁÎÉÞËÁ, ÎÁ ËÏÔÏÒÏÊ ÍÎÏÇÏ + ÓÓÙÌÏË ÐÏ \TeX{}Õ, ×ËÌÀÞÁÑ ÍÎÏÇÏÞÉÓÌÅÎÎÙÅ ËÎÉÇÉ, ÒÕËÏ×ÏÄÓÔ×Á É + ÓÔÁÔØÉ: \url{http://tug.org/interest.html}. + +\item [áÒÈÉ×Ù ÓÐÉÓËÏ× ÒÁÓÓÙÌËÉ É ÇÒÕÐÐ:] ä×Á ÏÓÎÏ×ÎÙÈ ÆÏÒÕÍÁ + ÔÅÈÎÉÞÅÓËÏÊ ÐÏÄÄÅÒÖËÉ "--- ÇÒÕÐÐÁ \url{news:comp.text.tex} É ÓÐÉÓÏË + ÒÁÓÓÙÌËÉ \email{texhax@tug.org}. ÷ ÉÈ ÁÒÈÉ×ÁÈ ÔÙÓÑÞÉ ×ÏÐÒÏÓÏ× É + ÏÔ×ÅÔÏ× ÎÁ ×ÓÅ ÓÌÕÞÁÉ ÖÉÚÎÉ. óÍ. + \url{http://groups.google.com/groups?group=comp.text.tex} É + \url{http://tug.org/mail-archives/texhax}. ðÏÉÓË, ÎÁÐÒÉÍÅÒ, × çÕÇÌÅ + (\url{http://google.com}) ÔÏÖÅ ÞÁÓÔÏ ÐÏÍÏÇÁÅÔ ÎÁÊÔÉ ÏÔ×ÅÔ. + +\item [÷ÏÐÒÏÓÙ ÎÁ ÆÏÒÕÍÁÈ] åÓÌÉ ×Ù ÎÅ ÍÏÖÅÔÅ ÎÁÊÔÉ ÏÔ×ÅÔÁ ÎÁ ×ÁÛ + ×ÏÐÒÏÓ, ×Ù ÍÏÖÅÔÅ ÌÉÂÏ ÏÐÕÂÌÉËÏ×ÁÔØ ×ÏÐÒÏÓ × \dirname{comp.text.tex} + ÐÒÉ ÐÏÍÏÝÉ Google ÉÌÉ ×ÁÛÅÊ ÌÀÂÉÍÏÊ ÎÏ×ÏÓÔÎÏÊ ÐÒÏÇÒÁÍÍÙ, ÌÉÂÏ + ÐÏÓÌÁÔØ ÐÉÓØÍÏ ÎÁ ÌÉÓÔ ÒÁÓÓÙÌËÉ \email{texhax@tug.org}. îÏ ÐÅÒÅÄ + ÜÔÉÍ \emph{ÐÏÖÁÌÕÊÓÔÁ} ÐÒÏÞÔÉÔÅ × þÁ÷Ï ÓÏ×ÅÔ Ï ÔÏÍ, ËÁË ÐÒÁ×ÉÌØÎÏ + ÚÁÄÁ×ÁÔØ ×ÏÐÒÏÓÙ ÎÁ ÜÔÉÈ ÆÏÒÕÍÁÈ: + \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + +\item [ðÏÄÄÅÒÖËÁ \TL{}] åÓÌÉ ×Ù ÈÏÔÉÔÅ ÓÏÏÂÝÉÔØ Ï ÂÁÇÅ ÉÌÉ + ×ÙÓËÁÚÁÔØ ÎÁÍ Ó×ÏÉ ÐÒÅÄÌÏÖÅÎÉÑ É ÚÁÍÅÞÁÎÉÑ Ï ÄÉÓÔÒÉÂÕÔÉ×Å \TL{}, + ÅÇÏ ÕÓÔÁÎÏ×ËÅ ÉÌÉ ÄÏËÕÍÅÎÔÁÃÉÉ, ÐÉÛÉÔÅ ÎÁ ÌÉÓÔ ÒÁÓÓÙÌËÉ + \email{tex-live@tug.org}. ïÄÎÁËÏ ÅÓÌÉ ×ÁÛ ×ÏÐÒÏÓ ËÁÓÁÅÔÓÑ + ËÏÎËÒÅÔÎÏÊ ÐÒÏÇÒÁÍÍÙ, ×ÈÏÄÑÝÅÊ × \TL{}, ×ÁÍ ÌÕÞÛÅ ÚÁÄÁ×ÁÔØ + ×ÏÐÒÏÓ٠ţ Á×ÔÏÒÕ ÉÌÉ ÐÏÓÙÌÁÔØ ÉÈ ÎÁ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÊ ÓÐÉÓÏË + ÒÁÓÓÙÌËÉ. þÁÓÔÏ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÊ ÁÄÒÅÓ ÍÏÖÎÏ ÐÏÌÕÞÉÔØ ÐÒÉ ÐÏÍÏÝÉ + ÏÐÃÉÉ \code{-{}-help} ÎÕÖÎÏÊ ÐÒÏÇÒÁÍÍÙ. + +\item[òÕÓÓËÏÑÚÙÞÎÙÅ ÒÅÓÕÒÓÙ] \emph{(ÄÏÂÁ×ÌÅÎÏ ÐÅÒÅ×ÏÄÞÉËÏÍ)} + üÈÏËÏÎÆÅÒÅÎÃÉÑ \dirname{ru.tex} ÄÏÓÔÕÐÎÁ ËÁË × ÓÅÔÉ æéäï, ÔÁË É × + éÎÔÅÒÎÅÔÅ (ËÁË \url{news:fido7.ru.tex}). òÕÓÓËÉÅ ÇÒÕÐÐÙ æéäï ÍÏÖÎÏ + ÎÁÊÔÉ ÎÁ ÍÎÏÇÉÈ ÓÅÒ×ÅÒÁÈ, ÎÁÐÒÉÍÅÒ \code{demos.ddt.su}. ÷ þÁ÷Ï + ÜÔÏÊ ÇÒÕÐÐÙ ÐÒÉ×ÏÄÉÔÓÑ ÍÎÏÇÏ ÓÓÙÌÏË ÎÁ + ÒÕÓÓËÏÑÚÙÞÎÙÅ ÒÅÓÕÒÓÙ. + +\end{description} + +ó ÄÒÕÇÏÊ ÓÔÏÒÏÎÙ, ×Ù ÓÁÍÉ ÔÏÖÅ ÍÏÖÅÔÅ ÐÏÍÏÞØ ÔÅÍ, Õ ËÏÇÏ ÅÓÔØ ×ÏÐÒÏÓÙ. +é \dirname{comp.text.tex}, É \code{texhax}, É \dirname{fido7.ru.tex} +ÏÔËÒÙÔÙ ÄÌÑ ×ÓÅÈ, ÐÏÜÔÏÍÕ ×Ù ÔÏÖÅ ÍÏÖÅÔÅ ÐÒÉÓÏÅÄÉÎÉÔØÓÑ, ÞÉÔÁÔØ É +ÐÏÍÏÇÁÔØ ÄÒÕÇÉÍ. + + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. + + +\section{óÔÒÕËÔÕÒÁ \protect\TeX\protect\ Live} +\label{sec:overview-tl} + +üÔÏÔ ÒÁÚÄÅÌ ÏÐÉÓÙ×ÁÅÔ ÓÔÒÕËÔÕÒÕ É ÓÏÄÅÒÖÁÎÉÅ \TK{} É ÅÇÏ ÓÏÓÔÁ×ÎÏÊ +ÞÁÓÔÉ \TL{}. + + +\subsection{\protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tl-coll-dists} + +\DVD{} \TK{} ÓÏÄÅÒÖÉÔ ÓÌÅÄÕÀÝÉÅ ÐÁËÅÔÙ: + +\begin{description} + +\item [\TL:] ÐÏÌÎÁÑ ÓÉÓÔÅÍÁ, ËÏÔÏÒÕÀ ÍÏÖÎÏ ÕÓÔÁÎÏ×ÉÔØ ÎÁ ÖÅÓÔËÉÊ ÄÉÓË + ËÏÍÐØÀÔÅÒÁ. å£ ÄÏÍÁÛÎÑÑ ÓÔÒÁÎÉÃÁ \url{http://tug.org/texlive/}. + +\item [Mac\TeX:] ×ÁÒÉÁÎÔ ÄÌÑ \MacOSX{}. üÔÏÔ ÐÁËÅÔ ÄÏÂÁ×ÌÑÅÔ Ë \TL{} + ÐÒÏÇÒÁÍÍÕ ÕÓÔÁÎÏ×ËÉ ÄÌÑ \MacOSX{} É ÄÒÕÇÉÅ ÐÒÏÇÒÁÍÍÙ ÄÌÑ íÁËÉÎÔÏÛÅÊ. + óÔÒÁÎÉÃÁ ÐÒÏÅËÔÁ "--- \url{http://www.tug.org/mactex/}. + + +\item[pro\TeX{}t:] ÕÌÕÞÛÅÎÎÙÊ ×ÁÒÉÁÎÔ ÄÉÓÔÒÉÂÕÔÉ×Á \MIKTEX\ ÄÌÑ Windows. + \ProTeXt\ ×ËÌÀÞÁÅÔ × ÓÅÂÑ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÐÒÏÇÒÁÍÍÙ É ÕÐÒÏÝ£ÎÎÕÀ + ÕÓÔÁÎÏ×ËÕ. ïÎ ÎÅ ÚÁ×ÉÓÉÔ ÏÔ \TL{} É ×ËÌÀÞÁÅÔ ÓÏÂÓÔ×ÅÎÎÙÅ ÉÎÓÔÒÕËÃÉÉ + ÐÏ ÕÓÔÁÎÏ×ËÅ. óÔÒÁÎÉÃÁ \ProTeXt{} "--- + \url{http://tug.org/protext}. + +\item [CTAN:] úÅÒËÁÌÏ ÁÒÈÉ×Á \CTAN{} (\url{http://www/ctan/org}). + +\item[\texttt{texmf-extra}:] ÄÉÒÅËÔÏÒÉÑ Ó ÒÁÚÎÏÏÂÒÁÚÎÙÍÉ + ÄÏÐÏÌÎÉÔÅÌØÎÙÍÉ ÐÁËÅÔÁÍÉ. + + +\end{description} + +ìÉÃÅÎÚÉÉ ÎÁ ÉÓÐÏÌØÚÏ×ÁÎÉÅ \CTAN{}, \pkgname{protext} É +\texttt{texmf-extra} ÏÔÌÉÞÁÀÔÓÑ ÏÔ ÌÉÃÅÎÚÉÉ \TL{}, ÐÏÜÔÏÍÕ ÂÕÄØÔÅ +×ÎÉÍÁÔÅÌØÎÙ ÐÒÉ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÉ ÉÌÉ ÍÏÄÉÆÉËÁÃÉÉ ÐÒÏÇÒÁÍÍ, ×ÈÏÄÑÝÉÈ × +ÜÔÉ ÄÉÓÔÒÉÂÕÔÉ×Ù. + + +\subsection{ëÏÒÎÅ×ÙÅ ÄÉÒÅËÔÏÒÉÉ \TL{}} +\label{sec:tld} + +÷ÏÔ ËÒÁÔËÏÅ ÏÐÉÓÁÎÉÅ ËÏÒÎÅ×ÙÈ ÄÉÒÅËÔÏÒÉÊ × ÄÉÓÔÒÉÂÕÔÉ×Å \TL{}. + +\begin{ttdescription} +\item[bin:] ðÒÏÇÒÁÍÍÙ ÓÉÓÔÅÍÙ \TeX{}, ÓÇÒÕÐÐÉÒÏ×ÁÎÎÙÅ ÐÏ ÐÌÁÔÆÏÒÍÁÍ. +% +\item[readme-*.dir:] ëÒÁÔËÏÅ ÒÕËÏ×ÏÄÓÔ×Ï + ÐÏÌØÚÏ×ÁÔÅÌÑ É ËÏÌÌÅËÃÉÑ ÓÓÙÌÏË ÎÁ ÒÁÚÎÙÈ ÑÚÙËÁÈ, × ÔÅËÓÔÏ×ÏÍ + ÆÏÒÍÁÔÅ É ÆÏÒÍÁÔÅ HTML. +% +\item[source:] éÓÈÏÄÎÙÊ ËÏÄ ×ÓÅÈ ÐÒÏÇÒÁÍÍ, ×ËÌÀÞÁÑ ÄÉÓÔÒÉÂÕÔÉ×Ù \Webc{} + \TeX{} É \MF{}. +% +\item[texmf:] óÍ. \dirname{TEXMFMAIN} ÎÉÖÅ. +% +\item[texmf-dist:] óÍ. \dirname{TEXMFDIST} ÎÉÖÅ. +% +\item[tlpkg:] óËÒÉÐÔÙ, ÐÒÏÇÒÁÍÍÙ É ÄÒÕÇÉÅ ÆÁÊÌÙ ÄÌÑ ÐÏÄÄÅÒÖËÉ ÓÉÓÔÅÍÙ, + Á ÔÁËÖÅ ÎÅËÏÔÏÒÙÅ ÐÏÌÅÚÎÙÅ ÐÒÏÇÒÁÍÍÙ ÄÌÑ Windows +\end{ttdescription} + + +ëÒÏÍÅ ÜÔÉÈ ÄÉÒÅËÔÏÒÉÊ, × ËÏÒÎÅ×ÏÊ ÄÉÒÅËÔÏÒÉÉ ÎÁÈÏÄÑÔÓÑ ÓËÒÉÐÔÙ +ÕÓÔÁÎÏ×ËÉ É ÆÁÊÌÙ \filename{README} (ÎÁ ÒÁÚÎÙÈ ÑÚÙËÁÈ). + +æÁÊÌ \OnCD{doc.html} × ËÏÒÎÅ×ÏÊ ÄÉÒÅËÔÏÒÉÉ ÓÏÄÅÒÖÉÔ ÍÎÏÇÏ ÓÓÙÌÏË ÎÁ +ÐÏÌÅÚÎÕÀ ÄÏËÕÍÅÎÔÁÃÉÀ. +äÏËÕÍÅÎÔÁÃÉÑ Ë ÏÔÄÅÌØÎÙÍ ÐÒÏÇÒÁÍÍÁÍ (ÒÕËÏ×ÏÄÓÔ×Á, man, info) ÎÁÈÏÄÉÔÓÑ × +ÄÉÒÅËÔÏÒÉÉ \dirname{texmf/doc}. äÏËÕÍÅÎÔÁÃÉÑ ÍÁËÒÏÐÁËÅÔÏ× É ÆÏÒÍÁÔÏ× +ÎÁÈÏÄÉÔÓÑ × ÄÉÒÅËÔÏÒÉÉ \dirname{texmf-dist/doc}. äÌÑ ÐÏÉÓËÁ +ÄÏËÕÍÅÎÔÁÃÉÉ ÍÏÖÎÏ ×ÏÓÐÏÌØÚÏ×ÁÔØÓÑ ÐÒÏÇÒÁÍÍÏÊ \cmdname{texdoc}. + +äÏËÕÍÅÎÔÁÃÉÑ Ë ÓÁÍÏÍÕ ÄÉÓÔÒÉÂÕÔÉ×Õ \TL{} ÎÁÈÏÄÉÔÓÑ × ÄÉÒÅËÔÏÒÉÉ +\dirname{texmf-doc} É ÄÏÓÔÕÐÎÁ ÎÁ ÎÅÓËÏÌØËÉÈ ÑÚÙËÁÈ: +\begin{itemize*} +\item{áÎÇÌÉÊÓËÉÊ:} \OnCD{texmf/doctexlive-en} +\item{éÔÁÌØÑÎÓËÉÊ:} \OnCD{texmf/doc/texlive/texlive-it} +\item{õÐÒÏÝÅÎÎÙÊ ËÉÔÁÊÓËÉÊ:} \OnCD{texmf/doc/texlive-zh-cn} +\item{îÅÍÅÃËÉÊ:} \OnCD{texmf/doc/texlive-de} +\item{ðÏÌØÓËÉÊ:} \OnCD{texmf/doc/texlive-pl} +\item{òÕÓÓËÉÊ:} \OnCD{texmf/doc/texlive-ru} +\item{óÅÒÂÓËÉÊ:} \OnCD{texmf/doc/texlive/texlive-sr} +\item{æÒÁÎÃÕÚÓËÉÊ:} \OnCD{texmf/doc/texlive-fr} +\item{þÅÛÓËÉÊ É ÓÌÏ×ÁÃËÉÊ:} \OnCD{texmf/doc/texlive-cz} +\end{itemize*} + +\subsection{ïÐÉÓÁÎÉÅ ÄÉÒÅËÔÏÒÉÊ texmf} +\label{sec:texmftrees} + +÷ ÜÔÏÍ ÒÁÚÄÅÌÅ ÏÐÉÓÁÎÙ ×ÓÅ ÐÅÒÅÍÅÎÎÙÅ, ÚÁÄÁÀÝÉÅ ÐÏÌÏÖÅÎÉÅ ÄÅÒÅ×ØÅ× +ÄÉÒÅËÔÏÒÉÊ texmf É ÉÈ ÚÎÁÞÅÎÉÑ ÐÏ ÕÍÏÌÞÁÎÉÀ. ëÏÍÁÎÄÁ +\texttt{tlmgr~conf} ÐÏËÁÚÙ×ÁÅÔ ÔÅËÕÝÉÅ ÚÎÁÞÅÎÉÑ ÜÔÉÈ ÐÅÒÅÍÅÎÎÙÈ, +ÔÁË ÞÔÏ ×Ù ÍÏÖÅÔÅ ÏÐÒÅÄÅÌÉÔØ, ÇÄÅ ÜÔÉ ÄÉÒÅËÔÏÒÉÉ ÎÁÈÏÄÑÔÓÑ × +×ÁÛÅÊ ÓÉÓÔÅÍÅ. + +\begin{ttdescription} +\item [TEXMFMAIN] äÅÒÅ×Ï, ÇÄÅ ÎÁÈÏÄÑÔÓÑ ÏÓÎÏ×ÎÙÅ ÞÁÓÔÉ ÓÉÓÔÅÍÙ: ÆÁÊÌÙ + ËÏÎÆÉÇÕÒÁÃÉÉ, ÓËÒÉÐÔÙ É ÄÏËÕÍÅÎÔÁÃÉÑ. +\item [TEXMFDIST] äÅÒÅ×Ï Ó ÏÓÎÏ×ÎÙÍ ÎÁÂÏÒÏÍ ÍÁËÒÏÐÁËÅÔÏ×, ÛÒÉÆÔÏ× É + Ô.Ä. +\item [TEXMFLOCAL] äÅÒÅ×Ï, ËÏÔÏÒÏÅ ÍÏÖÅÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÏ + ÁÄÍÉÎÉÓÔÒÁÔÏÒÁÍÉ ÓÉÓÔÅÍÙ ÄÌÑ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÐÁËÅÔÏ×, + ÛÒÉÆÔÏ× É Ô.Ä. +\item [TEXMFHOME] äÅÒÅ×Ï, ËÏÔÏÒÏÅ ÐÏÌØÚÏ×ÁÔÅÌÉ ÍÏÇÕÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÄÌÑ + ÕÓÔÁÎÏ×ËÉ ÓÏÂÓÔ×ÅÎÎÙÈ ÐÁËÅÔÏ×, ÛÒÉÆÔÏ× É Ô.Ä., ÉÌÉ ÄÌÑ ÏÂÎÏ×Ì£ÎÎÙÈ + ×ÅÒÓÉÊ ÓÉÓÔÅÍÎÙÈ ÐÁËÅÔÏ×. üÔÁ ÐÅÒÅÍÅÎÎÁÑ ÕËÁÚÙ×ÁÅÔ ÎÁ ÄÅÒÅ×Ï × + ÄÏÍÁÛÎÅÊ ÄÉÒÅËÔÏÒÉÉ, Ó×ÏÅÊ ÄÌÑ ËÁÖÄÏÇÏ ÐÏÌØÚÏ×ÁÔÅÌÑ. +\item [TEXMFCONFIG] üÔÏ ÄÅÒÅ×Ï ÉÓÐÏÌØÚÕÅÔÓÑ ÕÔÉÌÉÔÁÍÉ + \verb+texconfig+, \verb+updmap+ É \verb+fmtutil+ + ÄÌÑ ÈÒÁÎÅÎÉÑ ÍÏÄÉÆÉÃÉÒÏ×ÁÎÎÙÈ ÆÁÊÌÏ× ËÏÎÆÉÇÕÒÁÃÉÉ (Ó×ÏÉÈ ÄÌÑ ËÁÖÄÏÇÏ + ÐÏÌØÚÏ×ÁÔÅÌÑ) +\item [TEXMFSYSCONFIG] üÔÏ ÄÅÒÅ×Ï ÉÓÐÏÌØÚÕÅÔÓÑ ÕÔÉÌÉÔÁÍÉ + \verb+texconfig-sys+, \verb+updmap-sys+ É \verb+fmtutil-sys+ + ÄÌÑ ÈÒÁÎÅÎÉÑ ÍÏÄÉÆÉÃÉÒÏ×ÁÎÎÙÈ ÆÁÊÌÏ× + ËÏÎÆÉÇÕÒÁÃÉÉ, ÏÂÝÉÈ ÄÌÑ ×ÓÅÈ ÐÏÌØÚÏ×ÁÔÅÌÅÊ. +\item [TEXMFVAR] üÔÏ ÄÅÒÅ×Ï ÉÓÐÏÌØÚÕÅÔÓÑ ÕÔÉÌÉÔÁÍÉ \verb+texconfig+, + \verb+updmap+ É \verb+fmtutil+ ÄÌÑ ÈÒÁÎÅÎÉÑ + ÓÏÚÄÁ×ÁÅÍÙÈ Á×ÔÏÍÁÔÉÞÅÓËÉ ÆÁÊÌÏ×: ÆÏÒÍÁÔÏ×, ËÁÒÔ ÛÒÉÆÔÏ×. +\item [TEXMFCACHE] üÔÏ ÄÅÒÅ×Ï + ÉÓÐÏÌØÚÕÅÔÓÑ ÐÒÏÇÒÁÍÍÏÊ \ConTeXt\ Mk\acro{IV} ÄÌÑ ÈÒÁÎÅÎÉÑ ÆÁÊÌÏ×, + ÓÏÚÄÁ×ÁÅÍÙÈ Á×ÔÏÍÁÔÉÞÅÓËÉ. +\item [TEXMFSYSVAR] üÔÏ ÄÅÒÅ×Ï ÉÓÐÏÌØÚÕÅÔÓÑ ÕÔÉÌÉÔÁÍÉ + \verb+texconfig-sys+, \verb+updmap-sys+, \verb+fmtutil-sys+, Á ÔÁËÖÅ + \verb+tlmgr+ + ÄÌÑ ÈÒÁÎÅÎÉÑ ÓÏÚÄÁ×ÁÅÍÙÈ Á×ÔÏÍÁÔÉÞÅÓËÉ ÆÁÊÌÏ×: + ÆÏÒÍÁÔÏ×, ËÁÒÔ ÛÒÉÆÔÏ×, "--- ÏÂÝÉÈ ÄÌÑ ×ÓÅÈ ÐÏÌØÚÏ×ÁÔÅÌÅÊ. +\end{ttdescription} + +\noindent +ðÏ ÕÍÏÌÞÁÎÉÀ ÓÔÒÕËÔÕÒÁ ÄÉÒÅËÔÏÒÉÊ ×ÙÇÌÑÄÉÔ ÔÁË: +\begin{description} + \item[ËÏÒÎÅ×ÁÑ ÄÉÒÅËÔÏÒÉÑ] ÍÏÖÅÔ ÓÏÄÅÒÖÁÔØ ÎÅÓËÏÌØËÏ ×ÅÒÓÉÊ \TL{}: + \begin{ttdescription} + \item[2011] ðÒÅÄÙÄÕÝÁÑ ×ÅÒÓÉÑ. + \item[2012] ôÅËÕÝÁÑ ×ÅÒÓÉÑ. + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] ðÒÏÇÒÁÍÍÙ ÄÌÑ \GNU/Linux + \item [...] + \item [universal-darwin] ðÒÏÇÒÁÍÍÙ ÄÌÑ \MacOSX + \item [win32] ðÒÏÇÒÁÍÍÙ ÄÌÑ Windows + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] \envname{TEXMFMAIN}. + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var \ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, ÏÂÝÁÑ ÄÌÑ ×ÓÅÈ ×ÅÒÓÉÊ + \TL{}. + \end{ttdescription} + \item[ÄÏÍÁÛÎÑÑ ÄÉÒÅËÔÏÒÉÑ ÐÏÌØÚÏ×ÁÔÅÌÑ] (\texttt{\$HOME} ÉÌÉ + \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2011] äÁÎÎÙÅ É ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ ÐÒÅÄÙÄÕÝÅÊ + ×ÅÒÓÉÉ. + \item[.texlive2012] äÁÎÎÙÅ É ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ ÔÅËÕÝÅÊ + ×ÅÒÓÉÉ. + \begin{ttdescription} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} ìÉÞÎÙÅ ÍÁËÒÏÐÁËÅÔÙ É Ô.Ä. + \end{ttdescription} +\end{description} + +\subsection{òÁÓÛÉÒÅÎÉÑ \protect\TeX{}Á} +\label{sec:tex-extensions} + +ëÎÕÔÏ×ÓËÉÊ ×ÁÒÉÁÎÔ \TeX Á ÚÁÍÏÒÏÖÅÎ "--- ÚÁ ÉÓËÌÀÞÅÎÉÅÍ ÒÅÄËÉÈ +ÉÓÐÒÁ×ÌÅÎÉÊ ÂÁÇÏ×, × ÎÅÇÏ ÎÅ ×ÎÏÓÉÔÓÑ ÎÉËÁËÉÈ ÉÚÍÅÎÅÎÉÊ. ïÎ ×ÓÅ ÅÝ£ +ÒÁÓÐÒÏÓÔÒÁÎÑÅÔÓÑ × \TL{} ËÁË \prog{tex} É ÂÕÄÅÔ ÒÁÓÐÒÏÓÔÒÁÎÑÔØÓÑ × +ÏÂÏÚÒÉÍÏÍ ÂÕÄÕÝÅÍ. ÷ ÓÏÓÔÁ× \TL{} ×ÈÏÄÉÔ ÎÅÓËÏÌØËÏ ÒÁÓÛÉÒÅÎÉÊ \TeX{}Á: + +\begin{description} + +\item [\eTeX] ÄÏÂÁ×ÌÑÅÔ ÎÁÂÏÒ ÎÏ×ÙÈ ÐÒÉÍÉÔÉ×Ï× +\label{text:etex} +(ÏÔÎÏÓÑÝÉÊÓÑ Ë ÍÁËÒÏÐÏÄÓÔÁÎÏ×ËÁÍ, ÞÔÅÎÉÀ ÓÉÍ×ÏÌÏ×, ÄÏÐÏÌÎÉÔÅÌØÎÙÍ +×ÏÚÍÏÖÎÏÓÔÑÍ ÏÔÌÁÄËÉ É ÍÎÏÇÏÍÕ ÄÒÕÇÏÍÕ) É ÒÁÓÛÉÒÅÎÉÑ \TeXXeT{} ÄÌÑ +×£ÒÓÔËÉ ÓÐÒÁ×Á ÎÁÌÅ×Ï É ÓÌÅ×Á ÎÁÐÒÁ×Ï. ÷ ÏÂÙÞÎÏÍ ÒÅÖÉÍÅ \eTeX{} ÎÁ +100\% ÓÏ×ÍÅÓÔÉÍ ÓÏ ÓÔÁÎÄÁÒÔÎÙÍ\TeX{}ÏÍ. óÍ. +\OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] ×ËÌÀÞÁÅÔ × ÓÅÂÑ ÒÁÓÛÉÒÅÎÉÑ \eTeX Á, ÄÏÂÁ×ÌÑÑ ÐÏÄÄÅÒÖËÕ + ÆÏÒÍÁÔÁ \acro{PDF}, ÐÏÍÉÍÏ ÓÔÁÎÄÁÒÔÎÏÇÏ \dvi{}, Á ÔÁËÖÅ ÍÎÏÇÏ ÄÒÕÇÉÈ + ÎÏ×ÙÈ ×ÏÚÍÏÖÎÏÓÔÅÊ. üÔÁ ÐÒÏÇÒÁÍÍÁ ÉÓÐÏÌØÚÕÅÔÓÑ ÂÏÌØÛÉÎÓÔ×ÏÍ + ÆÏÒÍÁÔÏ×, ÎÁÐÒÉÍÅÒ, \prog{etex}, \prog{latex}, \prog{pdflatex}. + óÔÒÁÎÉÃÁ ÐÒÏÇÒÁÍÍÙ ÎÁ ÓÅÔÉ: \url{http://www.pdftex.org/}. ÷ + ÒÕËÏ×ÏÄÓÔ×Å ÐÏÌØÚÏ×ÁÔÅÌÑ + \OnCD{texmf-dist/doc/pdftex/manual/padftex-a.pdf} É ÐÒÉÍÅÒÁÈ + \OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex} ÏÐÉÓÁÎÙ + ×ÏÚÍÏÖÎÏÓÔÉ ÐÒÏÇÒÁÍÍÙ. + +\item[Lua\TeX] ÐÒÅÄÎÁÚÎÁÞÅÎ ÚÁÍÅÎÉÔØ pdf\TeX{} × ÂÕÄÕÝÅÍ ×Ï ÍÎÏÇÏÍ + (ÈÏÔÑ É ÎÅ ×Ï ×ÓÅÍ) ÓÏ×ÍÅÓÔÉÍ Ó ÎÉÍ. ïÎ ÔÁËÖÅ + ÚÁÍÅÎÉÔ Aleph, ÓÍ. ÎÉÖÅ, ÈÏÔÑ ÓÏ×ÍÅÓÔÉÍÏÓÔÉ ÍÅÖÄÕ ÜÔÉÍÉ ÐÒÏÅËÔÁÍÉ ÎÅ + ÐÒÅÄÐÏÌÁÇÁÅÔÓÑ. ÷ÓÔÒÏÅÎÎÙÊ ÉÎÔÅÒÐÒÅÔÁÔÏÒ ÑÚÙËÁ Lua (ÓÍ. + \url{http://www.lua.org/}) ÐÏÚ×ÏÌÑÅÔ ÜÌÅÇÁÎÔÎÏ ÒÅÛÉÔØ ÍÎÏÇÉÅ ÓÌÏÖÎÙÅ + ÐÒÏÂÌÅÍÙ \TeX Á. ëÏÇÄÁ ÜÔÁ ÐÒÏÇÒÁÍÍÁ ÚÁÐÕÓËÁÅÔÓÑ ËÁË + \filename{texlua}, ÏÎÁ ÒÁÂÏÔÁÅÔ ËÁË ÉÎÔÅÒÐÒÅÔÁÔÏÒ Lua, É × ÜÔÏÍ + ËÁÞÅÓÔ×Å ÉÓÐÏÌØÚÕÅÔÓÑ × \TL{}. óÍ. \url{http://www.luatex.org/} É + \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [Xe\TeX] ÄÏÂÁ×ÌÑÅÔ ÐÏÄÄÅÒÖËÕ Unicode É ÛÒÉÆÔÏ× × ÆÏÒÍÁÔÅ + OpenType, ÓÄÅÌÁÎÎÕÀ ÞÅÒÅÚ ÓÔÁÎÄÁÒÔÎÙÅ ÂÉÂÌÉÏÔÅËÉ. óÍ. + \url{http://tug.org/xetex}. + +\item [\OMEGA\ (ïÍÅÇÁ)] ÏÓÎÏ×ÁÎÁ ÎÁ Unicode (ÓÉÓÔÅÍÁ 16-ÂÉÔÏ×ÙÈ + ÓÉÍ×ÏÌÏ×), ÞÔÏ ÐÏÚ×ÏÌÑÅÔ ÒÁÂÏÔÁÔØ ÏÄÎÏ×ÒÅÍÅÎÎÏ ÐÏÞÔÉ ÓÏ ×ÓÅÍÉ + ÐÉÓØÍÅÎÎÏÓÔÑÍÉ ÍÉÒÁ. ïÎÁ ÔÁËÖÅ ÐÏÄÄÅÒÖÉ×ÁÅÔ ÔÁË ÎÁÚÙ×ÁÅÍÙÊ <<ÐÒÏÃÅÓÓ + ÔÒÁÎÓÌÑÃÉÉ \OMEGA{}>> (\acro{OTP}s) ÄÌÑ ÓÌÏÖÎÙÈ ÐÒÅÏÂÒÁÚÏ×ÁÎÉÊ + ÐÒÏÉÚ×ÏÌØÎÏÇÏ ×ÈÏÄÎÏÇÏ ÐÏÔÏËÁ. ïÍÅÇÁ ÂÏÌØÛÅ ÎÅ ×ËÌÀÞÁÅÔÓÑ × + ÄÉÓÔÒÉÂÕÔÉ× \TL{} × ËÁÞÅÓÔ×Å ÓÁÍÏÓÔÏÑÔÅÌØÎÏÊ ÐÒÏÇÒÁÍÍÙ; ÎÁ ÄÉÓËÅ + ÅÓÔØ ÔÏÌØËÏ Aleph (ÓÍ. ÎÉÖÅ). + + +\item[Aleph] ÏÂßÅÄÉÎÑÅÔ \OMEGA\ É \eTeX. óÍ. ËÒÁÔËÕÀ ÄÏËÕÍÅÎÔÁÃÉÀ × + \OnCD{texmf-dist/doc/aleph/base}. + +\end{description} + + +\subsection{äÒÕÇÉÅ ÉÎÔÅÒÅÓÎÙÅ ÐÒÏÇÒÁÍÍÙ × ÄÉÓÔÒÉÂÕÔÉ×Å \protect\TL} + +÷ÏÔ ÎÅÓËÏÌØËÏ ÄÒÕÇÉÈ ×ÁÖÎÙÈ ÐÒÏÇÒÁÍÍ × ÄÉÓÔÒÉÂÕÔÉ×Å \TL{}: + +\begin{cmddescription} + +\item [bibtex] ÐÏÄÄÅÒÖËÁ ÂÉÂÌÉÏÇÒÁÆÉÊ. + +\item [makeindex, xindy] ÐÏÄÄÅÒÖËÁ ÁÌÆÁ×ÉÔÎÙÈ ÕËÁÚÁÔÅÌÅÊ. + +\item [dvips] ÐÒÅÏÂÒÁÚÏ×ÁÎÉÅ \dvi{} × \PS{}. + +\item [xdvi] ÐÒÏÇÒÁÍÍÁ ÄÌÑ ÐÒÏÓÍÏÔÒÁ \dvi{} ÄÌÑ X Window System. + +\item [dvilj] ÄÒÁÊ×ÅÒ ÄÌÑ ÌÁÚÅÒÎÙÈ ÐÒÉÎÔÅÒÏ× ÓÅÍÅÊÓÔ×Á HP LaserJet. + + +\item [dviconcat, dviselect] ÐÅÒÅÓÔÁÎÏ×ËÁ ÓÔÒÁÎÉÃ × ÆÁÊÌÁÈ \dvi{}. + +\item [dvipdfmx] ÐÒÅÏÂÒÁÚÏ×ÁÎÉÅ \dvi{} × \acro{PDF}, ÁÌØÔÅÒÎÁÔÉ×Á + pdf\TeX{}Õ, ÕÐÏÍÑÎÕÔÏÍÕ ×ÙÛÅ. + +\item [psselect, psnup, \ldots] ÕÔÉÌÉÔÙ ÄÌÑ ÒÁÂÏÔÙ Ó ÆÁÊÌÁÍÉ × ÆÏÒÍÁÔÅ + \PS{}. + +\item [pdfjam, pdfjoin, \ldots] ÕÔÉÌÉÔÙ ÄÌÑ ÒÁÂÏÔÙ Ó ÆÁÊÌÁÍÉ × ÆÏÒÍÁÔÅ + \acro{PDF}. + +\item [texexec, texmfstart] ðÒÏÇÒÁÍÍÙ ÄÌÑ Con\TeX{}tÁ É ÏÂÒÁÂÏÔËÉ \acro{PDF}. + +\item [tex4ht] ËÏÎ×ÅÒÔÅÒ ÉÚ \TeX{}Á × \acro{HTML}, \acro{XML} É ÍÎÏÇÉÅ + ÄÒÕÇÉÅ ÆÏÒÍÁÔÙ. + +\end{cmddescription} + +\subsection{ûÒÉÆÔÙ × \protect\TL{}} +\label{sec:tl-fonts} + +÷ \TL{} ×ËÌÀÞÅÎÏ ÍÎÏÇÏ ×ÅËÔÏÒÎÙÈ ÛÒÉÆÔÏ× ×ÙÓÏËÏÇÏ ËÁÞÅÓÔ×Á. +óÍ. \url{http://tug.org/fonts} É +\OnCD{texmf-dist/doc/fonts/free-math-fonts-survey}. + +\section{õÓÔÁÎÏ×ËÁ} +\label{sec:install} + +\subsection{úÁÐÕÓË ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ} +\label{sec:inst-start} + +äÌÑ ÎÁÞÁÌÁ ×ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ \DVD{} \TK{} ÉÌÉ ÐÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ \TL{} +Ó éÎÔÅÒÎÅÔÁ. îÁÊÄÉÔÅ ÓËÒÉÐÔ ÕÓÔÁÎÏ×ËÉ: \filename{install-tl} ÄÌÑ +UNIX, \filename{install-tl.bat} ÄÌÑ Windows. âÏÌÅÅ ÐÏÄÒÏÂÎÏ ÒÁÚÌÉÞÎÙÅ +ÓÐÏÓÏÂÙ ÐÒÉÏÂÒÅÔÅÎÉÑ É ÕÓÔÁÎÏ×ËÉ ÄÉÓÔÒÉÂÕÔÉ×Á ÒÁÓÓÍÏÔÒÅÎÙ ÎÁ ÓÔÒÁÎÉÃÅ +\url{http://tug.org/texlive/acquire.html}. + +\begin{description} +\item [õÓÔÁÎÏ×ËÁ Ó ÓÅÔÉ:] ÓËÁÞÁÊÔÅ ÐÒÏÇÒÁÍÍÕ ÉÚ ÁÒÈÉ×Á \CTAN, ÄÉÒÅËÔÏÒÉÑ +\dirname{systems/texlive/tlnet}; ÁÄÒÅÓ +\url{http://mirror.ctan.org/systems/texlive/tlnet} Á×ÔÏÍÁÔÉÞÅÓËÉ +ÐÒÉ×ÏÄÉÔ Ë ÂÌÉÖÁÊÛÅÍÕ ÚÅÒËÁÌÕ ÁÒÈÉ×Á. ÷Ù ÍÏÖÅÔÅ ÓËÁÞÁÔØ ÌÉÂÏ +\filename{install-tl.zip} (ÕÓÔÁÎÏ×ËÁ ÐÏÄ UNIX É Windows), ÌÉÂÏ ÆÁÊÌ +ÓÕÝÅÓÔ×ÅÎÎÏ ÍÅÎØÛÅÇÏ ÒÁÚÍÅÒÁ +\filename{install-unx.tar.gz} (ÔÏÌØËÏ ÄÌÑ UNIX). ðÏÓÌÅ ÒÁÓÐÁËÏ×ËÉ +ÆÁÊÌÙ \filename{install-tl} É +\filename{install-tl.bat} ÏËÁÖÕÔÓÑ × ÄÉÒÅËÔÏÒÉÉ \dirname{install-tl}. + +\item [\TeX{} Collection \DVD:] ðÅÒÅÊÄÉÔÅ × ÐÏÄÄÉÒÅËÔÏÒÉÀ + \dirname{texlive}. ðÏÄ Windows ÐÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ ÚÁÐÕÓËÁÅÔÓÑ + Á×ÔÏÍÁÔÉÞÅÓËÉ, ËÏÇÄÁ ×Ù ×ÓÔÁ×ÌÑÅÔÅ \DVD{} × ËÏÍÐØÀÔÅÒ. ÷Ù ÍÏÖÅÔÅ + ÐÏÌÕÞÉÔØ \DVD, ×ÓÔÕÐÉ× × ÇÒÕÐÐÕ ÐÏÌØÚÏ×ÁÔÅÌÅÊ \TeX Á (ÍÙ + ÎÁÓÔÏÑÔÅÌØÎÏ ÒÅËÏÍÅÎÄÕÅÍ ÜÔÏ ÓÄÅÌÁÔØ, + \url{http://tug.org/usergroups.html}), ÌÉÂÏ ËÕÐÉ× ÅÇÏ ÏÔÄÅÌØÎÏ + (\url{http://tug.org/store}), ÌÉÂÏ ÓÄÅÌÁ× ÅÇÏ ÓÁÍÏÓÔÏÑÔÅÌØÎÏ, ÓËÁÞÁ× + \ISO\ ÏÂÒÁÚ ÄÉÓËÁ. ðÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ÓÉÓÔÅÍÙ ×Ù ÍÏÖÅÔÅ ÐÏÌÕÞÁÔØ + ÏÂÎÏ×ÌÅÎÉÑ ÉÚ éÎÔÅÒÎÅÔÁ, + ÓÍ. ÒÁÚÄÅÌ~\ref{sec:dvd-install-net-updates}. + +\end{description} + +÷ ÏÂÏÉÈ ÓÌÕÞÁÑÈ ÐÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ ÓÉÓÔÅÍÙ ÏÄÎÁ É ÔÁ ÖÅ. çÌÁ×ÎÏÅ +ÒÁÚÌÉÞÉÅ ÓÏÓÔÏÉÔ × ÔÏÍ, ÞÔÏ ÐÒÉ ÕÓÔÁÎÏ×ËÅ Ó ÓÅÔÉ ÓÔÁ×ÑÔÓÑ ÐÏÓÌÅÄÎÉÅ +×ÅÒÓÉÉ ÐÁËÅÔÏ× "--- × ÏÔÌÉÞÉÅ ÏÔ ÕÓÔÁÎÏ×ËÉ Ó \DVD\ ÉÌÉ \ISO. + +÷ ÓÌÅÄÕÀÝÉÈ ÒÁÚÄÅÌÁÈ ÕÓÔÁÎÏ×ËÁ ÏÐÉÓÙ×ÁÅÔÓÑ ÂÏÌÅÅ ÐÏÄÒÏÂÎÏ. + +\subsubsection{UNIX} + +îÉÖÅ \texttt{>} ÕËÁÚÙ×ÁÅÔ ÓÉÓÔÅÍÎÙÊ ÐÒÏÍÐÔ; ÔÏ, ÞÔÏ ××ÏÄÉÔ +ÐÏÌØÚÏ×ÁÔÅÌØ, ÐÏËÁÚÁÎÏ \Ucom{\texttt{ÖÉÒÎÙÍ ÛÒÉÆÔÏÍ}}. +ðÒÏÝÅ ×ÓÅÇÏ ÎÁÞÁÔØ ÕÓÔÁÎÏ×ËÕ ÔÁË: +\begin{alltt} +> \Ucom{cd /path/to/installer} +> \Ucom{perl install-tl} +\end{alltt} +(÷ÍÅÓÔÏ ÜÔÏÇÏ ×Ù ÍÏÖÅÔÅ ÚÁÐÕÓÔÉÔØ \Ucom{perl + /path/to/installer/install-tl}, ÉÌÉ +\Ucom{./install-tl}, ÅÓÌÉ Õ ÜÔÏÇÏ ÓËÒÉÐÔÁ ÅÓÔØ ÐÒÁ×Á ÎÁ ×ÙÐÏÌÎÅÎÉÅ, É +Ô.Ä. íÙ ÎÅ ÂÕÄÅÍ ÕËÁÚÙ×ÁÔØ ×ÓÅ ÜÔÉ ×ÁÒÉÁÎÔÙ.) ÷ÏÚÍÏÖÎÏ, ×ÁÍ +ÐÒÉÄÅÔÓÑ Õ×ÅÌÉÞÉÔØ ÒÁÚÍÅÒ ÏËÎÁ ÔÅÒÍÉÎÁÌÁ, ÞÔÏÂÙ × ÎÅÇÏ ÐÏÍÅÓÔÉÌÓÑ ×ÅÓØ +ÄÉÁÌÏÇ (òÉÓÕÎÏË~\ref{fig:text-main}). + + +äÌÑ ÕÓÔÁÎÏ×ËÉ × ÜËÓÐÅÒÔÎÏÍ ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ +(ÒÉÓÕÎÏË~\ref{fig:gui-main}) ×ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ ÍÏÄÕÌØ \dirname{Perl/TK}, +ÓÏÂÒÁÎÎÙÊ Ó ÐÏÄÄÅÒÖËÏÊ \acro{XFT} (ÏÎ ÏÂÙÞÎÏ ÅÓÔØ × ÓÉÓÔÅÍÁÈ +\GNU/Linux, ÎÏ ÍÏÖÅÔ ÏÔÓÕÔÓÔ×Ï×ÁÔØ ÎÁ ÄÒÕÇÉÈ ÓÉÓÔÅÍÁÈ). åÓÌÉ ÏÎ Õ ×ÁÓ +ÕÓÔÁÎÏ×ÌÅÎ, ÉÓÐÏÌØÚÕÊÔÅ +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +ðÏÌÎÙÊ ÓÐÉÓÏË ×ÏÚÍÏÖÎÙÈ ÏÐÃÉÊ ÄÁÅÔ ËÏÍÁÎÄÁ +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{ðÒÅÄÕÐÒÅÖÄÅÎÉÅ Ï ÐÒÁ×ÁÈ ÄÏÓÔÕÐÁ × UNIX:} ÓÉÓÔÅÍÁ ÕÓÔÁÎÏ×ËÉ +\TL{} ÉÓÐÏÌØÚÕÅÔ ÔÅËÕÝÅÅ ÚÎÁÞÅÎÉÅ ÐÁÒÁÍÅÔÒÁ \code{umask}. ðÏÜÔÏÍÕ +ÅÓÌÉ ×Ù ÈÏÔÉÔÅ, ÞÔÏÂÙ ÓÉÓÔÅÍÏÊ ÍÏÇÌÉ ÐÏÌØÚÏ×ÁÔØÓÑ ÎÅ ÔÏÌØËÏ ×Ù, ÎÏ É +ÄÒÕÇÉÅ ÐÏÌØÚÏ×ÁÔÅÌÉ, ×Ù ÄÏÌÖÎÙ ÕÓÔÁÎÏ×ÉÔØ, ÎÁÐÒÉÍÅÒ, \code{umask + 022}. âÏÌÅÅ ÐÏÄÒÏÂÎÏ \code{umask} ÏÂÓÕÖÄÁÅÔÓÑ × ÄÏËÕÍÅÎÔÁÃÉÉ Ë +×ÁÛÅÊ ÓÉÓÔÅÍÅ. + +\textbf{úÁÍÅÞÁÎÉÅ Ï ÕÓÔÁÎÏ×ËÅ ÐÏÄ Cygwin:} × ÏÔÌÉÞÉÅ ÏÔ ÄÒÕÇÉÈ +ÓÉÓÔÅÍ ÔÉÐÁ UNIX, Cygwin × ÓÔÁÎÄÁÒÔÎÏÊ ËÏÎÆÉÇÕÒÁÃÉÉ ÎÅ ×ËÌÀÞÁÅÔ ×ÓÅÈ +ÎÅÏÂÈÏÄÉÍÙÈ ÄÌÑ ÕÓÔÁÎÏ×ËÉ \TL{} ÐÒÏÇÒÁÍÍ. +óÍ. ÒÁÚÄÅÌ~\ref{sec:cygwin}. + +\subsubsection{MacOSX} + +ëÁË ÏÔÍÅÞÁÅÔÓÑ × ÒÁÚÄÅÌÅ~\ref{sec:tl-coll-dists}, ÄÌÑ \MacOSX{} +ÓÕÝÅÓÔ×ÕÅÔ ÓÐÅÃÉÁÌØÎÙÊ ÄÉÓÔÒÉÂÕÔÉ×, Mac\TeX{} +(\url{http://tug.org/mactex}). íÙ ÒÅËÏÍÅÎÄÕÅÍ ÐÏÌØÚÏ×ÁÔØÓÑ ÅÇÏ +ÓÉÓÔÅÍÏÊ ÕÓÔÁÎÏ×ËÉ, Á ÎÅ ÏÂÝÉÍ ÓËÒÉÐÔÏÍ \TL{}, ÐÏÓËÏÌØËÕ Õ ÎÅÇÏ ÅÓÔØ +ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ×ÏÚÍÏÖÎÏÓÔÉ, ÓÐÅÃÉÆÉÞÅÓËÉÅ ÄÌÑ íÁËÉÎÔÏÛÅÊ, ÎÁÐÒÉÍÅÒ, +ÕÄÏÂÎÏÅ ÐÅÒÅËÌÀÞÅÎÉÅ ÍÅÖÄÕ ÒÁÚÌÉÞÎÙÍÉ ÄÉÓÔÒÉÂÕÔÉ×ÁÍÉ \TeX Á ÄÌÑ +\MacOSX{} (Mac\TeX, Fink, MacPorts, \ldots). + +Mac\TeX{} ÏÓÎÏ×ÁÎ ÎÁ \TL{}, É ÏÓÎÏ×ÎÙÅ ÄÅÒÅ×ØÑ ÄÉÒÅËÔÏÒÉÊ Õ ÜÔÉÈ ÄÉÓÔÒÉÂÕÔÉ×Ï× +ÓÏ×ÐÁÄÁÀÔ. Mac\TeX{} ÄÏÂÁ×ÌÑÅÔ ÎÅÓËÏÌØËÏ ÐÏÄÄÉÒÅËÔÏÒÉÊ Ó ÐÒÏÇÒÁÍÍÁÍÉ É +ÄÏËÕÍÅÎÔÁÃÉÅÊ, ÐÒÅÄÎÁÚÎÁÞÅÎÎÙÍÉ ÄÌÑ íÁËÉÎÔÏÛÅÊ. + +\subsubsection{Windows} + +åÓÌÉ ×Ù ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÅ ÓÉÓÔÅÍÕ Ó ÓÅÔÉ, ÉÌÉ ÅÓÌÉ ÐÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ Ó +\DVD{} ÎÅ ÓÔÁÒÔÏ×ÁÌÁ Á×ÔÏÍÁÔÉÞÅÓËÉ, Ä×ÁÖÄ٠ݣÌËÎÉÔÅ ÐÏ +\filename{install-tl.bat}. åÓÌÉ ×ÁÍ ÎÕÖÎÁ ÂÏÌÅÅ ÔÏÎËÁÑ ÎÁÓÔÒÏÊËÁ, +ÎÁÐÒÉÍÅÒ, ÅÓÌÉ ×Ù ÈÏÔÉÔÅ ×ÙÂÒÁÔØ ÏÐÒÅÄÅÌÅÎÎÙÅ ËÏÌÌÅËÃÉÉ ÐÁËÅÔÏ×, +ÚÁÐÕÓÔÉÔÅ \filename{install-tl-advanced.bat}. + +íÏÖÎÏ ÔÁËÖÅ ÚÁÐÕÓÔÉÔØ ÐÒÏÇÒÁÍÍÕ ÉÚ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ. îÉÖÅ \texttt{>} +ÏÚÎÁÞÁÅÔ ÓÉÓÔÅÍÎÙÊ ÐÒÏÍÐÔ; ÔÏ, ÞÔÏ ××ÏÄÉÔ ÐÏÌØÚÏ×ÁÔÅÌØ, ÕËÁÚÁÎÏ +\Ucom{\texttt{ÖÉÒÎÙÍ ÛÒÉÆÔÏÍ}}. åÓÌÉ ×Ù ÎÁÈÏÄÉÔÅÓØ × ÄÉÒÅËÔÏÒÉÉ +ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ, ÎÁÐÅÞÁÔÁÊÔÅ: +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} + +ðÒÏÇÒÁÍÍÕ ÍÏÖÎÏ ×ÙÚ×ÁÔØ É ÉÚ ÄÒÕÇÏÊ ÄÉÒÅËÔÏÒÉÉ, ÎÁÐÒÉÍÅÒ, +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +(ÐÒÅÄÐÏÌÁÇÁÅÔÓÑ, ÞÔÏ × \dirname{D:} ÎÁÈÏÄÉÔÓÑ \DVD{} \TK{}). îÁ +ÒÉÓÕÎËÅ~\ref{fig:wizard-w32} ÐÏËÁÚÁÎ ÓÐÅÃÉÁÌØÎÙÊ ÐÒÏ×ÏÄÎÉË ÕÓÔÁÎÏ×ËÉ, +ËÏÔÏÒÙÊ ÐÏ ÕÍÏÌÞÁÎÉÀ ÚÁÐÕÓËÁÅÔÓÑ × Windows. + +äÌÑ ÕÓÔÁÎÏ×ËÉ × ÔÅËÓÔÏ×ÏÍ ÒÅÖÉÍÅ ÉÓÐÏÌØÚÕÊÔÅ +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + + +÷ÓÅ ÏÐÃÉÉ ÐÒÏÇÒÁÍÍÙ ÍÏÖÎÏ ÐÏÌÕÞÉÔØ ÐÒÉ ÐÏÍÏÝÉ ËÏÍÁÎÄÙ +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2012 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + platforms: 1 out of 19 + + Installation scheme (scheme-full) + 84 collections out of 85, disk space required: 2600 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + options: + [ ] use letter size instead of A4 by default + ... + + set up for portable installation + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{çÌÁ×ÎÏÅ ÍÅÎÀ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ × ÔÅËÓÔÏ×ÏÍ ÒÅÖÉÍÅ + (\GNU/Linux)}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth,trim=10 4 0 20,clip} +\caption{çÌÁ×ÎÏÅ ÍÅÎÀ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ × ÜËÓÐÅÒÔÎÏÍ ÇÒÁÆÉÞÅÓËÏÍ + ÒÅÖÉÍÅ (\GNU/Linux)}\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth,trim=0 4 0 0,clip} +\caption{çÌÁ×ÎÏÅ ÍÅÎÀ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ × ÕÐÒÏÝÅÎÎÏÍ ÇÒÁÆÉÞÅÓËÏÍ + ÒÅÖÉÍÅ (Windows)}\label{fig:wizard-w32} +\end{figure} + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +óÉÓÔÅÍÁ ÕÓÔÁÎÏ×ËÉ \TL{} ÒÁÂÏÔÁÅÔ ÔÏÌØËÏ ÐÏÄ Cygwin 1.7. +ðÅÒÅÄ ÎÁÞÁÌÏÍ ÕÓÔÁÎÏ×ËÉ \TL, ÕÓÔÁÎÏ×ÉÔÅ ÐÒÉ ÐÏÍÏÝÉ ÐÒÏÇÒÁÍÍÙ +\filename{setup.exe} ÉÚ ËÏÍÐÌÅËÔÁ Cygwin ÐÁËÅÔÙ \filename{perl} É +\filename{wget}, ÅÓÌÉ ÉÈ ÎÅÔ × ×ÁÛÅÊ ÓÉÓÔÅÍÅ. íÙ ÒÅËÏÍÅÎÄÕÅÍ ÔÁËÖÅ +ÓÌÅÄÕÀÝÉÅ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÐÁËÅÔÙ: +\begin{itemize*} +\item \filename{fontconfig} [ÎÕÖÅÎ ÄÌÑ \XeTeX] +\item \filename{ghostscript} [ÎÕÖÅÎ ÄÌÑ ÒÁÚÎÙÈ ÐÒÏÇÒÁÍÍ] +\item \filename{libXaw7} [ÎÕÖÅÎ ÄÌÑ xdvi] +\item \filename{ncurses} [ÐÒÅÄÏÓÔÁ×ÌÑÅÔ ËÏÍÁÎÄÕ <>, ËÏÔÏÒÁÑ + ÎÕÖÎÁ ÐÒÉ ÕÓÔÁÎÏ×ËÅ] +\end{itemize*} + + + +\subsubsection{õÓÔÁÎÏ×ËÁ × ÔÅËÓÔÏ×ÏÍ ÒÅÖÉÍÅ} + +îÁ ÒÉÓÕÎËÅ~\ref{fig:text-main} ÐÏËÁÚÁÎÏ ÏÓÎÏ×ÎÏÅ ÍÅÎÀ ÐÒÏÇÒÁÍÍÙ +ÕÓÔÁÎÏ×ËÉ × ÔÅËÓÔÏ×ÏÍ ÒÅÖÉÍÅ ÄÌÑ UNIX. ôÅËÓÔÏ×ÙÊ ÒÅÖÉÍ Ñ×ÌÑÅÔÓÑ +ÒÅÖÉÍÏÍ ÐÏ ÕÍÏÌÞÁÎÉÀ ÄÌÑ UNIX. + +éÎÔÅÒÆÅÊÓ ÐÒÏÇÒÁÍÍÙ ÄÏ×ÏÌØÎÏ ÐÒÉÍÉÔÉ×ÅÎ: ÐÏÄÄÅÒÖËÉ ËÕÒÓÏÒÁ × ÎÅÍ +ÎÅÔ. îÁÐÒÉÍÅÒ, ÎÅÌØÚÑ ÐÅÒÅÄ×ÉÇÁÔØÓÑ ÐÏ ÐÏÌÑÍ ÐÒÉ ÐÏÍÏÝÉ ËÌÁ×ÉÛÉ +<>. ÷Ù ÐÒÏÓÔÏ ÐÅÞÁÔÁÅÔÅ ÞÔÏ-ÔÏ (ÒÅÇÉÓÔÒ ÕÞÉÔÙ×ÁÅÔÓÑ!) É +ÎÁÖÉÍÁÅÔÅ ËÌÁ×ÉÛÕ <>, ÐÏÓÌÅ ÞÅÇÏ ÐÅÒÅÒÉÓÏ×Ù×ÁÅÔÓÑ ×ÅÓØ ÜËÒÁÎ. + +üÔÏÔ ÉÎÔÅÒÆÅÊÓ ÐÒÉÍÉÔÉ×ÅÎ ÎÅ ÓÌÕÞÁÊÎÏ: ÏÎ ÄÏÌÖÅÎ ÒÁÂÏÔÁÔØ ÎÁ +ËÁË ÍÏÖÎÏ ÂÏÌØÛÅÍ ËÏÌÉÞÅÓÔ×Å ÐÌÁÔÆÏÒÍ, ×ËÌÀÞÁÑ ÔÁËÉÅ, ÇÄÅ ÅÓÔØ ÔÏÌØËÏ +ÕÓÅÞÅÎÎÙÊ ×ÁÒÉÁÎÔ ÐÒÏÇÒÁÍÍÙ Perl. + +\subsubsection{õÓÔÁÎÏ×ËÁ × ÜËÓÐÅÒÔÎÏÍ ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ} + +îÁ ÒÉÓÕÎËÅ~\ref{fig:gui-main} ÉÚÏÂÒÁÖÅÎÏ ÍÅÎÀ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ × +ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ ÐÏÄ \GNU/Linux. ïÓÎÏ×ÎÏÅ ÒÁÚÌÉÞÉÅ ÍÅÖÄÕ ÜÔÉÍ +ÒÉÓÕÎËÏÍ É ÒÉÓÕÎËÏÍ~\ref{fig:text-main} × ÔÏÍ, ÞÔÏ × ÐÅÒ×ÏÍ +ÉÓÐÏÌØÚÕÀÔÓÑ ËÎÏÐËÉ É ÍÅÎÀ. + +üÔÏÔ ×ÁÒÉÁÎÔ ÍÏÖÅÔ ÂÙÔØ ×ÙÂÒÁÎ ËÏÍÁÎÄÏÊ +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} + +\subsubsection{õÓÔÁÎÏ×ËÁ × ÕÐÒÏÝÅÎÎÏÍ ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ} + +ðÏÄ Windows ÕÓÔÁÎÏ×ËÁ ÐÏ ÕÍÏÌÞÁÎÉÀ ÒÁÂÏÔÁÅÔ × ÓÁÍÏÍ ÐÒÏÓÔÏÍ ÒÅÖÉÍÅ, +ËÏÔÏÒÙÊ ÍÙ ÔÏÌØËÏ ÍÏÇÌÉ ÐÒÉÄÕÍÁÔØ, ÎÁÐÏÍÉÎÁÀÝÉÊ ÉÎÔÅÒÆÅÊÓ <<ðÒÏ×ÏÄÎÉËÁ +ÕÓÔÁÎÏ×ËÉ>>. ïÎ ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ ×ÓÅ É (ÐÏÞÔÉ) ÎÅ ÚÁÄÁÅÔ ÎÉËÁËÉÈ +×ÏÐÒÏÓÏ×. åÓÌÉ ×Ù ÈÏÔÉÔÅ ÂÏÌÅÅ ÔÏÎËÕÀ ÎÁÓÔÒÏÊËÕ, ×ÙÚÏ×ÉÔÅ ÄÒÕÇÏÊ +ÒÅÖÉÍ. + +üÔÏÔ ÒÅÖÉÍ ÍÏÖÅÔ ÂÙÔØ ×ÙÂÒÁÎ ËÏÍÁÎÄÏÊ +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + + +\subsection{òÁÂÏÔÁ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ} +\label{sec:runinstall} + +íÅÎÀ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ ÄÏÌÖÎÏ ÂÙÔØ ÐÏÎÑÔÎÏ ÂÅÚ ÏÂßÑÓÎÅÎÉÊ. íÙ ×ÓÅ +ÖÅ ÐÒÉ×ÅÄÅÍ ÎÅÓËÏÌØËÏ ËÒÁÔËÉÈ ÚÁÍÅÞÁÎÉÊ ÐÏ ÐÏ×ÏÄÕ ÒÁÚÌÉÞÎÙÈ ÏÐÃÉÊ É +ÐÏÄÍÅÎÀ. + +\subsubsection{íÅÎÀ ×ÙÂÏÒÁ ÐÌÁÔÆÏÒÍÙ (ÔÏÌØËÏ ÄÌÑ UNIX)} +\label{sec:binary} + + +\begin{figure}[tbh] +\begin{boxedverbatim} +Available platforms: +=============================================================================== + 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 +\end{boxedverbatim} +\caption{íÅÎÀ ×ÙÂÏÒÁ ÐÌÁÔÆÏÒÍÙ}\label{fig:bin-text} +\end{figure} + +îÁ ÒÉÓÕÎËÅ~\ref{fig:bin-text} ÉÚÏÂÒÁÖÅÎÏ ÍÅÎÀ ×ÙÂÏÒÁ ÐÌÁÔÆÏÒÍÙ. ðÏ +ÕÍÏÌÞÁÎÉÀ ÕÓÔÁÎÁ×ÌÉ×ÁÀÔÓÑ ÔÏÌØËÏ ÐÒÏÇÒÁÍÍÙ ÄÌÑ ×ÁÛÅÊ ÔÅËÕÝÅÊ +ÁÒÈÉÔÅËÔÕÒÙ. ÷ ÜÔÏÍ ÍÅÎÀ ×Ù ÍÏÖÅÔÅ ×ÙÂÒÁÔØ ÔÁËÖÅ ÕÓÔÁÎÏ×ËÕ ÐÒÏÇÒÁÍÍ +ÄÌÑ ÄÒÕÇÉÈ ÐÌÁÔÆÏÒÍ. üÔÏ ÍÏÖÅÔ ÂÙÔØ ÐÏÌÅÚÎÏ, ÅÓÌÉ ×Ù ÉÓÐÏÌØÚÕÅÔÅ ÏÄÎÏ +É ÔÏ ÖÅ ÄÅÒÅ×Ï \TeX{}Á ÄÌÑ ÒÁÚÎÙÈ ÍÁÛÉÎ É ÒÁÚÄÁ£ÔÅ ÅÇÏ ÐÏ ÌÏËÁÌØÎÏÊ +ÓÅÔÉ, ÌÉÂÏ ÅÓÌÉ ÎÁ ×ÁÛÅÊ ÍÁÛÉÎÅ ÕÓÔÁÎÏ×ÌÅÎÏ ÎÅÓËÏÌØËÏ ÏÐÅÒÁÃÉÏÎÎÙÈ +ÓÉÓÔÅÍ. + +\subsubsection{÷ÙÂÏÒ ÏÓÎÏ×ÎÙÈ ËÏÍÐÏÎÅÎÔÏ×} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Select 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 +\end{boxedverbatim} +\caption{÷ÙÂÏÒ ÏÓÎÏ×ÎÙÈ ËÏÍÐÏÎÅÎÔÏ×}\label{fig:scheme-text} +\end{figure} + + +îÁ ÒÉÓÕÎËÅ~\ref{fig:scheme-text} ÐÏËÁÚÁÎÏ ÍÅÎÀ ×ÙÂÏÒÁ ÏÓÎÏ×ÎÙÈ +ËÏÍÐÏÎÅÎÔÏ× (ÓÈÅÍ) \TL{}. ÷ ÜÔÏÍ ÍÅÎÀ ×Ù ÍÏÖÅÔÅ ×ÙÂÒÁÔØ <<ÓÈÅÍÕ>>, +Ô.Å. ÎÁÂÏÒ ËÏÌÌÅËÃÉÊ ÐÁËÅÔÏ×. ðÏ ÕÍÏÌÞÁÎÉÀ ÉÓÐÏÌØÚÕÅÔÓÑ ÓÈÅÍÁ +\optname{full}, Ô.Å. ×ÓÅ ÐÁËÅÔÙ \TL{}, ÎÏ ×Ù ÍÏÖÅÔÅ ×ÙÂÒÁÔØ ÓÈÅÍÕ +\optname{basic} ÄÌÑ ÎÅÂÏÌØÛÏÊ ÓÉÓÔÅÍÙ, ÓÈÅÍÕ \optname{minimal} ÄÌÑ +ÔÅÓÔÉÒÏ×ÁÎÉÑ ÉÌÉ ÓÈÅÍÙ \optname{medium} ÉÌÉ \optname{teTeX}. åÓÔØ +ÔÁËÖÅ ÒÑÄ ÓÐÅÃÉÁÌØÎÙÈ ÓÈÅÍ, × ÔÏÍ ÞÉÓÌÅ É ÐÒÅÄÎÁÚÎÁÞÅÎÎÙÈ ÄÌÑ +ÒÁÚÌÉÞÎÙÈ ÓÔÒÁÎ. + +\begin{figure}[tbh] +\tlpng{stdcoll}{.7\linewidth,trim=0 4 0 0,clip} +\caption{íÅÎÀ ËÏÌÌÅËÃÉÊ}\label{fig:collections-gui} +\end{figure} + +÷Ù ÍÏÖÅÔÅ ÕÔÏÞÎÉÔØ ×ÁÛ ×ÙÂÏÒ ÐÒÉ ÐÏÍÏÝÉ ÍÅÎÀ <<ËÏÌÌÅËÃÉÊ>> +(ÒÉÓÕÎÏË~\ref{fig:collections-gui}, ÄÌÑ ÒÁÚÎÏÏÂÒÁÚÉÑ ÓÄÅÌÁÎÎÙÊ × +ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ). + +ëÏÌÌÅËÃÉÉ ÐÒÅÄÓÔÁ×ÌÑÀÔ ÓÏÂÏÊ ÓÌÅÄÕÀÝÉÊ ÐÏÓÌÅ ÓÈÅÍ ÕÒÏ×ÅÎØ +ÉÅÒÁÒÈÉÉ \TL{}. çÒÕÂÏ ÇÏ×ÏÒÑ, ÓÈÅÍÙ ÓÏÓÔÏÑÔ ÉÚ ËÏÌÌÅËÃÉÊ, ËÏÌÌÅËÃÉÉ +ÓÏÓÔÏÑÔ ÉÚ ÐÁËÅÔÏ×, Á ÐÁËÅÔÙ (ÎÉÖÎÉÊ ÕÒÏ×ÅÎØ ÉÅÒÁÒÈÉÉ \TL{}) ÓÏÄÅÒÖÁÔ +ÍÁËÒÏÓÙ, ÛÒÉÆÔÙ É Ô.Ä. + +åÓÌÉ ×Ù ÈÏÔÉÔÅ ÂÏÌÅÅ ÔÏÎËÏÊ ÎÁÓÔÒÏÊËÉ, ÞÅÍ ×ÏÚÍÏÖÎÁ × ÍÅÎÀ ËÏÌÌÅËÃÉÊ, +×Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÐÒÏÇÒÁÍÍÕ \prog{tlmgr} ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ +(ÓÍ. ÒÁÚÄÅÌ~\ref{sec:tlmgr}). üÔÁ ÐÒÏÇÒÁÍÍÁ ÐÏÚ×ÏÌÑÅÔ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ +ÉÌÉ ÕÄÁÌÑÔØ ÏÔÄÅÌØÎÙÅ ÐÁËÅÔÙ. + +\subsubsection{äÉÒÅËÔÏÒÉÉ} +\label{sec:directories} + +óÈÅÍÁ ÄÉÒÅËÔÏÒÉÊ ÐÏ ÕÍÏÌÞÁÎÉÀ ÏÐÉÓÁÎÁ × ÒÁÚÄÅÌÅ~\ref{sec:texmftrees}, +\p.\pageref{sec:texmftrees}. ðÏÌÏÖÅÎÉÅ ÄÅÒÅ×Á +\dirname{TEXDIR} ÏÔÌÉÞÁÅÔÓÑ ÄÌÑ Windows +(|%SystemDrive%\texlive\2012|) É UNIX +(\dirname{/usr/local/texlive/2012}). + +ïÓÎÏ×ÎÁÑ ÐÒÉÞÉÎÁ, ÐÏ ËÏÔÏÒÏÊ ÂÙ×ÁÅÔ ÎÅÏÂÈÏÄÉÍÏ ÉÚÍÅÎÉÔØ ÜÔÕ ÓÈÅÍÕ +"--- ÏÔÓÕÔÓÔ×ÉÅ Õ ×ÁÓ ÐÒÁ× ÎÁ ÚÁÐÉÓØ × ÎÕÖÎÙÅ ÄÉÒÅËÔÏÒÉÉ. ÷ÁÍ ÎÅ +ÎÁÄÏ ÉÍÅÔØ ÐÒÁ×Á ÁÄÍÉÎÉÓÔÒÁÔÏÒÁ ÄÌÑ ÕÓÔÁÎÏ×ËÉ \TL{}, ÏÄÎÁËÏ ×ÁÍ ÎÁÄÏ +ÉÍÅÔØ ÐÒÁ×Ï ÎÁ ÚÁÐÉÓØ × ÄÉÒÅËÔÏÒÉÀ, ËÕÄÁ ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ ÓÉÓÔÅÍÁ. + +åÓÌÉ Õ ×ÁÓ ÎÅÔ ÐÒÁ×Á ÎÁ ÚÁÐÉÓØ × ÓÉÓÔÅÍÎÙÅ ÄÉÒÅËÔÏÒÉÉ, ÅÓÔÅÓÔ×ÅÎÎÏÊ +ÁÌØÔÅÒÎÁÔÉ×ÏÊ Ñ×ÌÑÅÔÓÑ ÕÓÔÁÎÏ×ËÁ × ×ÁÛÕ ÄÏÍÁÛÎÀÀ ÄÉÒÅËÔÏÒÉÀ, ÏÓÏÂÅÎÎÏ +ÅÓÌÉ ×Ù ÂÕÄÅÔÅ ÅÄÉÎÓÔ×ÅÎÎÙÍ ÐÏÌØÚÏ×ÁÔÅÌÅÍ ÓÉÓÔÅÍÙ. äÌÑ ÜÔÏÇÏ +ÉÓÐÏÌØÚÕÊÔÅ `|~|' ÎÁÐÒÉÍÅÒ `|~/texlive/2012|'. + +íÙ ÒÅËÏÍÅÎÄÕÅÍ ×ËÌÀÞÁÔØ ÎÏÍÅÒ ÇÏÄÁ × ÎÁÚ×ÁÎÉÅ ÄÉÒÅËÔÏÒÉÉ, ÞÔÏÂÙ ÍÏÖÎÏ +ÂÙÌÏ ÄÅÒÖÁÔØ ÏÔÄÅÌØÎÏ ÒÁÚÎÙÅ ×ÅÒÓÉÉ \TL{}. ðÏÓÌÅ ÔÅÓÔÉÒÏ×ÁÎÉÑ ÎÏ×ÏÊ +×ÅÒÓÉÉ ×Ù ÓÍÏÖÅÔÅ ÓÄÅÌÁÔØ \dirname{/usr/local/texlive-cur} ÓÓÙÌËÏÊ ÎÁ +ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÕÀ ÄÉÒÅËÔÏÒÉÀ. + +éÚÍÅÎÅÎÉÅ \dirname{TEXDIR} ÉÚÍÅÎÉÔ ÔÁËÖÅ \dirname{TEXMFLOCAL}, +\dirname{TEXMFSYSVAR} É \dirname{TEXMFSYSCONFIG}. + +ìÉÞÎÙÅ ÐÁËÅÔÙ É ÆÁÊÌÙ ÒÅËÏÍÅÎÄÕÅÔÓÑ ÄÅÒÖÁÔØ × ÄÉÒÅËÔÏÒÉÉ +\dirname{TEXMFHOME}. ðÏ ÕÍÏÌÞÁÎÉÀ ÜÔÏ |~/texmf|. ÷ ÏÔÌÉÞÉÅ ÏÔ +\dirname{TEXDIR}, ÚÄÅÓØ |~| ÂÕÄÅÔ Ó×ÏÉÍ ÄÌÑ ËÁÖÄÏÇÏ ÐÏÌØÚÏ×ÁÔÅÌÑ. +üÔÁ ÐÅÒÅÍÅÎÎÁÑ ÓÔÁÎÏ×ÉÔÓÑ \dirname{$HOME} ÐÏÄ UNIX É +\verb|%USERPROFILE%| ÐÏÄ Windows. îÁ ×ÓÑËÉÊ ÓÌÕÞÁÊ ÐÏ×ÔÏÒÉÍ, ÞÔÏ +ÓÔÒÕËÔÕÒÁ \envname{TEXMFHOME} ÄÏÌÖÎÁ ÓÏ×ÐÁÄÁÔØ ÓÏ ÓÔÁÎÄÁÒÔÎÏÊ +ÓÔÒÕËÔÕÒÏÊ ÄÉÒÅËÔÏÒÉÊ \dirname{TEXMF}, ÉÎÁÞÅ ÓÉÓÔÅÍÁ ÍÏÖÅÔ ÎÅ ÎÁÊÔÉ +×ÁÛÉ ÆÁÊÌÙ. + +äÉÒÅËÔÏÒÉÑ \dirname{TEXMFVAR} ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÈÒÁÎÅÎÉÑ Á×ÔÏÍÁÔÉÞÅÓËÉ +ÓÏÚÄÁ×ÁÅÍÙÈ ÆÁÊÌÏ×, Ó×ÏÉÈ ÄÌÑ ËÁÖÄÏÇÏ ÐÏÌØÚÏ×ÁÔÅÌÑ. äÉÒÅËÔÏÒÉÑ +\dirname{TEXMFCACHE} ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÜÔÏÊ ÖÅ ÃÅÌÉ ÐÒÏÇÒÁÍÍÏÊ +\ConTeXt\ Mk\acro{IV} (ÓÍ. ÒÁÚÄÅÌ~\ref{sec:context-mkiv}, +\p.\pageref{sec:context-mkiv}). + + +\subsubsection{ïÐÃÉÉ} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Options setup: +=============================================================================== +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: +\end{boxedverbatim} +\caption{íÅÎÀ ÏÐÃÉÊ (Unix)}\label{fig:options-text} +\end{figure} + +îÁ ÒÉÓÕÎËÅ~\ref{fig:options-text} ÐÒÉ×ÅÄÅÎÏ ÍÅÎÀ ÏÐÃÉÊ (ÔÅËÓÔÏ×ÙÊ +ÒÅÖÉÍ). óÔÏÉÔ ÕÐÏÍÑÎÕÔØ ÎÅÓËÏÌØËÏ ÉÚ ÎÉÈ: +\begin{description} +\item[use letter size instead of A4 by default (ÉÓÐÏÌØÚÏ×ÁÔØ ÐÏ + ÕÍÏÌÏÞÁÎÉÀ ÒÁÚÍÅÒ letter ×ÍÅÓÔÏ A4):] ×ÙÂÏÒ ÒÁÚÍÅÒÁ ÂÕÍÁÇÉ + ÐÏ ÕÍÏÌÞÁÎÉÀ. òÁÚÕÍÅÅÔÓÑ, ÏÔÄÅÌØÎÙÅ ÄÏËÕÍÅÎÔÙ ÍÏÇÕÔ ÐÒÉ + ÎÅÏÂÈÏÄÉÏÓÔÉ ÕËÁÚÁÔØ ÓÏÂÓÔ×ÅÎÎÙÊ ÒÁÚÍÅÒ ÂÕÍÁÇÉ. + +\item[execution of restricted list of programs:] îÁÞÉÎÁÑ Ó \TL\ 2010 + \TeX{} ÍÏÖÅÔ Á×ÔÏÍÁÔÉÞÅÓËÉ ×ÙÚÙ×ÁÔØ ÎÅÓËÏÌØËÏ ×ÎÅÛÎÉÈ ÐÒÏÇÒÁÍÍ. + óÐÉÓÏË ÜÔÉÈ ÐÒÏÇÒÁÍÍ ÎÁÈÏÄÉÔÓÑ × ÆÁÊÌÅ \filename{texmf.cnf}; ÏÎ + ÏÞÅÎØ ÍÁÌ, ÎÏ ÜÔÉ ÐÒÏÇÒÁÍÍÙ ÏÞÅÎØ ÐÏÌÅÚÎÙ. óÍ. ÒÁÚÄÅÌ ``þÔÏ ÎÏ×ÏÇÏ + × \TL\ 2010>>~\ref{sec:2010news}. + +\item[create all format files (ÓÏÚÁÔØ ×ÓÅ ÆÏÒÍÁÔÙ):] èÏÔÑ ÎÅÎÕÖÎÙÅ + ÆÏÒÍÁÔÙ ÚÁÎÉÍÁÀÔ ÍÅÓÔÏ ÎÁ ÄÉÓËÅ É ÔÒÅÂÕÀÔ ×ÒÅÍÅÎÉ ÄÌÑ ÓÏÚÄÁÎÉÑ, ÍÙ + ×ÓÅ ÖÅ ÒÅËÏÍÅÎÄÕÅÍ ÎÅ ÉÚÍÅÎÑÔØ ÜÔÕ ÏÐÃÉÀ. ÷ ÐÒÏÔÉ×ÎÏÍ ÓÌÕÞÁÅ + ÏÔÓÕÔÓÔ×ÕÀÝÉÅ ÆÏÒÍÁÔÙ ÂÕÄÕÔ ÇÅÎÒÉÒÏ×ÁÔØÓÑ × ÄÉÒÅËÔÏÒÉÑÈ + \dirname{TEXMFVAR} ÄÌÑ ËÁÖÄÏÇÏ ÐÏÌØÚÏ×ÁÔÅÌÑ. ïÎÉ ÎÅ ÂÕÄÕÔ + Á×ÔÏÍÁÔÉÞÅÓËÉ ÐÅÒÅÇÅÎÅÒÉÒÏ×ÁÔØÓÑ ÐÒÉ ÉÚÍÅÎÅÎÉÉ ÐÒÏÇÒÁÍÍ É ÓÈÅÍ + ÐÅÒÅÎÏÓÁ, É × ÉÔÏÇÅ ÍÏÇÕÔ ÏËÁÚÁÔØÓÑ ÎÅÓÏ×ÍÅÓÔÉÍÙÍÉ Ó ÎÏ×ÏÊ ÓÉÓÔÅÍÏÊ. + + +\item[install font/macro \ldots\ tree:] üÔÉ ÏÐÃÉÉ ÐÏÚ×ÏÌÑÀÔ ×ÁÍ ÎÅ + ÕÓÔÁÎÁ×ÌÉ×ÁÔØ ÄÏËÕÍÅÎÔÁÃÉÀ É ÉÓÈÏÄÎÉËÉ, ËÏÔÏÒÙÅ ×ÈÏÄÑÔ × ÂÏÌØÛÉÎÓÔ×Ï + ÐÁËÅÔÏ×. íÙ ÎÅ ÒÅËÏÍÅÎÄÕÅÍ ÜËÏÎÏÍÉÔØ ÍÅÓÔÏ ÎÁ ÜÔÏÊ ×ÁÖÎÏÊ + ÉÎÆÏÒÍÁÃÉÉ. + + +\item[create symlinks in standard directories (ÓÏÚÄÁÔØ ÓÉÍÌÉÎËÉ × + ÓÔÁÎÄÁÒÔÎÙÈ ÄÉÒÅËÔÏÒÉÑÈ)] (ÔÏÌØËÏ ÄÌÑ UNIX): üÔÁ ÏÐÃÉÑ ÄÅÌÁÅÔ + ÎÅÎÕÖÎÏÊ ÓÍÅÎÕ ÐÅÒÅÍÅÎÎÙÈ ÏËÒÕÖÅÎÉÑ. âÅÚ ÎÅ£ ÄÉÒÅËÔÏÒÉÉ \TL{} ÎÕÖÎÏ + ÄÏÂÁ×ÉÔØ Ë \envname{PATH}, \envname{MANPATH} É \envname{INFOPATH}. + äÌÑ ÜÔÏÊ ÏÐÃÉÉ ×ÁÍ ÎÕÖÎÙ ÐÒÁ×Á ÎÁ ÚÁÐÉÓØ × ÓÔÁÎÄÁÒÔÎÙÅ ÄÉÒÅËÔÏÒÉÉ. + íÙ ÎÅ ÓÏ×ÅÔÕÅÍ ×ÁÍ ÐÏÄÍÅÎÑÔØ \TeX{} ÉÚ ÄÉÓÔÒÉÂÕÔÉ×Á ×ÁÛÅÊ ÓÉÓÔÅÍÙ + ÐÒÉ ÐÏÍÏÝÉ ÜÔÏÊ ÏÐÃÉÉ. ïÎÁ ÎÕÖÎÁ ÄÌÑ ÓÏÚÄÁÎÉÑ ÓÉÍÌÉÎËÏ× × + ÄÉÒÅËÔÏÒÉÑÈ ÔÉÐÁ \dirname{/usr/local/bin}, ËÏÔÏÒÙÅ ÎÅ ÓÏÄÅÒÖÁÔ + ÆÁÊÌÏ× \TeX Á ÉÚ ÓÉÓÔÅÍÎÏÇÏ ÄÉÓÔÒÉÂÕÔÉ×Á. +\end{description} + +úÁÄÁ× ÎÕÖÎÙÅ ÎÁÓÔÒÏÊËÉ, ×Ù ÍÏÖÅÔÅ ÎÁÞÁÔØ ÕÓÔÁÎÏ×ËÕ ÓÉÓÔÅÍÙ, ÎÁÖÁ× +ËÌÁ×ÉÛÕ <<|I|>>. ëÏÇÄÁ ÕÓÔÁÎÏ×ËÁ ÂÕÄÅÔ ÚÁËÏÎÞÅÎÁ, ÐÅÒÅÊÄÉÔÅ Ë +ÒÁÚÄÅÌÕ~\ref{sec:postinstall} ÞÔÏÂÙ ÐÒÏ×ÅÒÉÔØ, ÎÕÖÎÏ ÌÉ ×ÁÍ ÓÄÅÌÁÔØ +ÅÝ£ ÞÔÏ-ÎÉÂÕÄØ. + +\subsection{ïÐÃÉÉ ×ÙÚÏ×Á ËÏÍÁÎÄÙ install-tl} +\label{sec:cmdline} + +îÁÐÅÞÁÔÁÊÔÅ +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +ÞÔÏÂÙ ÐÏÌÕÞÉÔØ ÓÐÉÓÏË ÏÐÃÉÊ ËÏÍÁÄÎÏÊ ÓÔÒÏËÉ. ÷ ÏÐÃÉÑÈ ÍÏÖÎÏ +ÉÓÐÏÌØÚÏ×ÁÔØ ËÁË |-|, ÔÁË É |--|. ÷ÏÔ ÓÁÍÙÅ ÉÎÔÅÒÅÓÎÙÅ ÏÐÃÉÉ: + +\begin{ttdescription} +\item[-gui] åÓÌÉ ×ÏÚÍÏÖÎÏ, ÉÓÐÏÌØÚÏ×ÁÔØ ÇÒÁÆÉÞÅÓËÉÊ ÒÅÖÉÍ. äÌÑ ÜÔÏÇÏ + ÎÕÖÅÎ ÍÏÄÕÌØ Perl/Tk Ó ÐÏÄÄÅÒÖËÏÊ \acro{XFT} + (\url{http://tug.org/texlive/distro.html#perltk}); ÅÓÌÉ ÜÔÏÇÏ ÍÏÄÕÌÑ + × ÓÉÓÔÅÍÅ ÎÅÔ, ÕÓÔÁÎÏ×ËÁ ÐÒÏÉÓÈÏÄÉÔ × ÔÅËÓÔÏ×ÏÍ ÒÅÖÉÍÅ. + +\item[-no-gui] éÓÐÏÌØÚÏ×ÁÔØ ÔÅËÓÔÏ×ÙÊ ÒÅÖÉÍ, ÄÁÖÅ ÐÏÄ Windows. + +\item[-lang {\sl LL}] úÁÄÁÔØ ÑÚÙË ÉÎÔÅÒÆÅÊÓÁ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ + (ÓÔÁÎÄÁÒÔÎÙÍ ËÏÄÏÍ ÓÔÒÁÎÙ \textsl{LL}). óÅÊÞÁÓ ÄÏÓÔÕÐÎÙ ÓÌÅÄÕÀÝÉÅ + ÑÚÙËÉ: + \texttt{cs} (ÞÅÛÓËÉÊ), + \texttt{de} (ÎÅÍÅÃËÉÊ), + \texttt{en} (ÁÎÇÌÉÊÓËÉÊ, ÐÏ ÕÍÏÌÞÁÎÉÀ) + \texttt{fr} (ÆÒÁÎÃÕÚÓËÉÊ), + \texttt{it} (ÉÔÁÌØÑÎÓËÉÊ), + \texttt{ja} (ÑÐÏÎÓËÉÊ), + \texttt{nl} (ÇÏÌÌÁÎÄÓËÉÊ), + \texttt{pl} (ÐÏÌØÓËÉÊ), + \texttt{ru} (ÒÕÓÓËÉÊ), + \texttt{sk} (ÓÌÏ×ÁÃËÉÊ), + \texttt{sl} (ÓÌÏ×ÅÎÓËÉÊ), + \texttt{sr} (ÓÅÒÂÓËÉÊ), + \texttt{vi} (×ØÅÔÎÁÍÓËÉÊ), + \texttt{zh-cn} (ÕÐÒÏÝÅÎÎÙÊ ËÉÔÁÊÓËÉÊ), + \texttt{zh-tw} (ÔÒÁÄÉÃÉÏÎÎÙÊ ËÉÔÁÊÓËÉÊ). +ðÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ ÐÙÔÁÅÔÓÑ ÏÐÒÅÄÅÌÅÔØ ÎÕÖÎÙÊ ÑÚÙË + Á×ÔÏÍÁÔÉÞÅÓËÉ, ÎÏ ÅÓÌÉ ÜÔÏ ÎÅ ÐÏÌÕÞÁÅÔÓÑ ÉÌÉ ÅÓÌÉ ÎÕÖÎÙÊ ÑÚÙË ÎÅ + ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ, ÏÎÁ ÐÅÒÅÈÏÄÉÔ ÎÁ ÁÎÇÌÉÊÓËÉÊ. + +\htmlanchor{opt-in-place} +\item[-in-place] åÓÌÉ Õ ×ÁÓ ÕÖÅ ÅÓÔØ ËÏÐÉÑ \TL, ÐÏÌÕÞÅÎÎÁÑ ÉÚ ÒÅÐÏÚÉÔÏÒÉÑ + (ÓÍ.~\url{http://tug.org/texlive/acquire-mirror.html}), ÔÏ ÜÔÁ ÏÐÃÉÑ + ÐÏÚ×ÏÌÑÅÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÜÔÕ ËÏÐÉÀ. õÞÔÉÔÅ, ÞÔÏ ÐÒÉ ÜÔÏÍ ÂÁÚÁ ÄÁÎÎÙÈ + \filename{tlpkg/texlive.tlpdb} ÍÏÖÅÔ ÂÙÔØ ÚÁÔÅÒÔÁ; ×Ù ÄÏÌÖÎÙ + ÓÏÈÒÁÎÉÔØ Å£ ÓÁÍÉ. ëÒÏÍÅ ÔÏÇÏ, ÕÄÁÌÅÎÉÅ ÐÁËÅÔÏ× ÎÕÖÎÏ ÂÕÄÅÔ ÄÅÌÁÔØ + ×ÒÕÞÎÕÀ. îÅ ÉÓÐÏÌØÚÕÊÔÅ ÜÔÕ ÏÐÃÉÀ, ÅÓÌÉ ×Ù ÎÅ ÜËÓÐÅÒÔ. üÔÕ ÏÐÃÉÀ + ÎÅÌØÚÑ ×ÙÂÒÁÔØ ÐÏÓÌÅ ÔÏÇÏ, ËÁË ÐÒÏÇÒÁÍÍÁ ÚÁÐÕÝÅÎÁ. + + +\item[-portable] õÓÔÁÎÏ×ÉÔØ ÐÅÒÅÎÏÓÉÍÕÀ ×ÅÒÓÉÀ \TL, ÎÁÐÒÉÍÅÒ, ÎÁ + ÆÌÅÛËÕ \acro{USB}. üÔÕ ÏÐÃÉÀ ÔÁËÖÅ ÍÏÖÎÏ ÕËÁÚÁÔØ ÐÒÉ ÐÏÍÏÝÉ ËÏÍÁÎÄÙ + \code{V} × ÔÅËÓÔÏ×ÏÍ ÕÓÔÁÎÏ×ËÉ, ÉÌÉ ÉÚ ÇÒÁÆÉÞÅÓËÏÇÏ ÒÅÖÉÍÁ. óÍ. + ÔÁËÖÅ ÒÁÚÄÅÌ~\ref{sec:portable-tl}. + +\item[-profile {\sl ÆÁÊÌ}] éÓÐÏÌØÚÏ×ÁÔØ ËÏÎÆÉÇÕÒÁÃÉÀ ÕÓÔÁÎÏ×ËÉ + \var{file} É ÎÅ ÚÁÄÁ×ÁÔØ ÐÏÌØÚÏ×ÁÔÅÌÀ ÎÉËÁËÉÈ ×ÏÐÒÏÓÏ×. ðÒÏÇÒÁÍÍÁ + ÕÓÔÁÎÏ×ËÉ ×ÓÅÇÄÁ ÚÁÐÉÓÙ×ÁÅÔ ÆÁÊÌ \filename{texlive.profile} × + ÐÏÄÄÉÒÅËÔÏÒÉÀ \dirname{tlpkg}. üÔÏÔ ÆÁÉÌ ÍÏÖÅÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎ × + ËÁÞÅÓÔ×Å ÁÒÇÕÍÅÎÔÁ ÄÁÎÎÏÊ ÏÐÃÉÉ, ÞÔÏÂÙ, ÎÁÐÒÉÍÅÒ, ÐÏÌÕÞÉÔØ + ÉÄÅÎÔÉÞÎÕÀ ËÏÎÆÉÇÕÒÁÃÉÀ ÎÁ ÄÒÕÇÏÊ ÍÁÛÉÎÅ. ÷Ù ÍÏÖÅÔÅ ÔÁËÖÅ ÓÏÚÄÁÔØ + ÓÏÂÓÔ×ÅÎÎÕÀ ËÏÎÆÉÇÕÒÁÃÉÀ, ÎÁÐÒÉÍÅÒ, ×ÚÑ× ÚÁ ÏÓÎÏ×Õ Á×ÔÏÍÁÔÉÞÅÓËÉ + ÓÏÚÄÁÎÎÙÊ ÆÁÊÌ ÉÌÉ ÐÕÓÔÏÊ ÆÁÊÌ (ÔÁË ÞÔÏ ÐÁÒÁÍÅÔÒÙ, ËÏÔÏÒÙÅ ÎÅ ÚÁÄÁÎÙ + × ÆÁÊÌÅ, ÐÏÌÕÞÁÔ ÚÎÁÞÅÎÉÑ ÐÏ ÕÍÏÌÞÁÎÉÀ). + +\item [-repository {\sl url ÉÌÉ ÄÉÒÅËÔÏÒÉÑ}] õËÁÚÁÔØ ÁÌØÔÅÒÎÁÔÉ×ÎÙÊ ÉÓÔÏÞÎÉË +Ï ÐÁËÅÔÏ× ÄÌÑ ÕÓÔÁÎÏ×ËÉ; ÓÍ. ÎÉÖÅ. +\end{ttdescription} + +\subsubsection{ðÁÒÁÍÅÔÒ \optname{-repository}} +\label{sec:location} + +ðÏ ÕÍÏÌÞÁÎÉÀ ÐÁËÅÔÙ ÓÇÒÕÖÁÀÔÓÑ Ó ÏÄÎÏÇÏ ÉÚ ÚÅÒËÁÌ ÁÒÈÉ×Á \CTAN. óÓÙÌËÁ +\url{http://mirror.ctan.org} Á×ÔÏÍÁÔÉÞÅÓËÉ ×ÙÂÉÒÁÅÔ ÚÅÒËÁÌÏ. + +åÓÌÉ ×Ù ÈÏÔÉÔÅ ÕËÁÚÁÔØ ÄÒÕÇÏÊ ÉÓÔÏÞÎÉË, ×Ù ÍÏÖÅÔÅ ÚÁÄÁÔØ ÅÇÏ ËÁË URL, +ÎÁÞÉÎÁÀÝÉÊÓÑ Ó \texttt{ftp:}, \texttt{http:}, \texttt{file:/} ÉÌÉ +ÐÒÏÓÔÏ ËÁË ÄÉÒÅËÔÏÒÉÀ ÎÁ ÄÉÓËÅ. (ëÏÇÄÁ ×Ù ÕËÁÚÙ×ÁÅÔÅ ÒÅÐÏÚÉÔÏÒÉÀ ËÁË +\texttt{ftp:} ÉÌÉ \texttt{http:}, ÏËÏÎÞÁÎÉÅ \texttt{/} ÉÌÉ +\texttt{/tlpkg} ÉÇÎÏÒÉÒÕÅÔÓÑ.) + +îÁÐÒÉÍÅÒ, ×Ù ÍÏÖÅÔÅ ÚÁÄÁÔØ × ËÁÞÅÓÔ×Å ÐÁÒÁÍÅÔÒÁ ÏÐÒÅÄÅÌÅÎÎÏÅ ÚÅÒËÁÌÏ +\CTAN: +\url{http://ctan.example.org/tex-archive/texlive/tlnet/}. +òÁÚÕÍÅÅÔÓÑ, ×ÁÍ ÓÌÅÄÕÅÔ ÐÏÄÓÔÁ×ÉÔØ ×ÍÅÓÔÏ \dirname{example.ctan.org} +ÎÕÖÎÏÅ ÚÅÒËÁÌÏ É ÐÕÔØ Ë ÁÒÈÉ×Õ ÎÁ ÜÔÏÍ ÚÅÒËÁÌÅ. óÐÉÓÏË ÚÅÒËÁÌ +ÎÁÈÏÄÉÔÓÑ ÎÁ \url{http://ctan.org/mirrors}. + + +åÓÌÉ ÐÁÒÁÍÅÔÒ ÚÁÄÁÅÔ ÄÉÒÅËÔÏÒÉÀ ÎÁ ÄÉÓËÉ (ÐÒÑÍÏ ÉÌÉ ÐÒÉ ÐÏÍÏÝÉ +\texttt{file:/}), ÓÉÓÔÅÍÁ Á×ÔÏÍÁÔÉÞÅÓËÉ ÏÐÒÅÄÅÌÑÅÔ, Ñ×ÌÑÅÔÓÑ ÌÉ +ÉÓÔÏÞÎÉË ÁÒÈÉ×ÏÍ: ÅÓÌÉ ÎÁÊÄÅÎÁ ÐÏÄÄÉÒÅËÔÏÒÉÑ \dirname{archive} ÓÏ +ÓÖÁÔÙÍÉ ÆÁÊÌÁÍÉ, ÔÏ ÏÎÁ ÂÕÄÅÔ ÉÓÐÏÌØÚÏ×ÁÎÁ, ÄÁÖÅ ÅÓÌÉ ÒÑÄÏÍ ÎÁÈÏÄÑÔÓÑ +ÎÅÚÁÁÒÈÉ×ÉÒÏ×ÁÎÎÙÅ ÆÁÊÌÙ. + + + +\subsection{äÅÊÓÔ×ÉÑ ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ} +\label{sec:postinstall} + +éÎÏÇÄÁ ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ÓÉÓÔÅÍÙ ÔÒÅÂÕÀÔÓÑ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÄÅÊÓÔ×ÉÑ. + + + +\subsubsection{ðÅÒÅÍÅÎÎÙÅ ÏËÒÕÖÅÎÉÑ ÄÌÑ UNIX} +\label{sec:env} + +åÓÌÉ ÂÙ ÒÅÛÉÌÉ ÓÏÚÄÁÔØ ÓÉÍÌÉÎËÉ × ÓÔÁÎÄÁÒÔÎÙÈ ÄÉÒÅËÔÏÒÉÑÈ +(ÓÍ. ÒÁÚÄÅÌ~\ref{sec:options}), ÔÏ ÉÚÍÅÎÑÔØ ÐÅÒÅÍÅÎÎÙÅ ÏËÒÕÖÅÎÉÑ ÎÅ +ÔÒÅÂÕÅÔÓÑ. ÷ ÐÒÏÔÉ×ÎÏÍ ÓÌÕÞÁÅ ×ÁÍ ÎÕÖÎÏ ÄÏÂÁ×ÉÔØ Ë ÓÐÉÓËÕ ÐÏÉÓËÁ +ÐÒÏÇÒÁÍÍ ÄÉÒÅËÔÏÒÉÀ, ÇÄÅ ÌÅÖÁÔ ÐÒÏÇÒÁÍÍÙ \TeX live (ÐÏÄ Windows +ÐÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ ÄÅÌÁÅÔ ÜÔÏ ÓÁÍÁ). + +ðÒÏÇÒÁÍÍÙ ÄÌÑ ËÁÖÄÏÊ ÁÒÈÉÔÅËÔÕÒÙ ÐÏÍÅÝÁÀÔÓÑ × ÓÏÂÓÔ×ÅÎÎÕÀ +ÐÏÄÄÉÒÅËÔÏÒÉÀ ÐÏÄ \dirname{TEXDIR/bin}. óÍ. ÓÐÉÓÏË ÐÏÄÄÉÒÅËÔÏÒÉÊ É +ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ ÐÌÁÔÆÏÒÍ ÎÁ ÒÉÓÕÎËÅ~\ref{fig:bin-text}. + +÷Ù ÍÏÖÅÔÅ ÔÁËÖÅ ÄÏÂÁ×ÉÔØ ÄÉÒÅËÔÏÒÉÉ Ó ÄÏËÕÍÅÎÔÁÃÉÅÊ × ÆÏÒÍÁÔÅ man É +info Ë ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÍ ÐÕÔÑÍ ÐÏÉÓËÁ, ÅÓÌÉ ×Ù ÈÏÔÉÔÅ, ÞÔÏÂÙ ×ÁÛÁ +ÏÐÅÒÁÃÉÏÎÎÁÑ ÓÉÓÔÅÍÁ ÚÎÁÌÁ Ï ÎÉÈ. ÷ ÎÅËÏÔÏÒÙÈ ÓÉÓÔÅÍÁÈ ÄÏËÕÍÅÎÔÁÃÉÑ × +ÆÏÒÍÁÔÅ man ÂÕÄÅÔ ÎÁÊÄÅÎÁ Á×ÔÏÍÁÔÉÞÅÓËÉ ÐÏÓÌÅ ÉÚÍÅÎÅÎÉÑ ÐÅÒÅÍÅÎÎÏÊ +\envname{PATH}. + +îÉÖÅ ÍÙ ÉÓÐÏÌØÚÕÅÍ ÄÌÑ ÐÒÉÍÅÒÁ ÓÔÁÎÄÁÒÔÎÕÀ ÓÉÓÔÅÍÕ ÄÉÒÅËÔÏÒÉÊ × ÓÉÓÔÅÍÅ +Intel86 GNU/Linux. + +äÌÑ ÏÂÏÌÏÞÅË ÔÉÐÁ Bourne (\prog{bash} É Ô.Ð.) ×Ù ÍÏÖÅÔÅ ÄÏÂÁ×ÉÔØ × +ÆÁÊÌ \filename{$HOME/.profile} (ÉÌÉ × ÆÁÊÌ, ËÏÔÏÒÙÊ ×ÙÚÙ×ÁÅÔÓÑ ÉÚ +\filename{.profile}) ÓÌÅÄÕÀÝÅÅ: + +\begin{sverbatim} +PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} + +äÌÑ \prog{csh} ÉÌÉ \prog{tcsh} ÓÌÅÄÕÅÔ ÒÅÄÁËÔÉÒÏ×ÁÔØ ÆÁÊÌ +\filename{$HOME/.cshrc}, É ÓÌÅÄÕÅÔ ÄÏÂÁ×ÉÔØ ÞÔÏ-ÔÏ ×ÒÏÄÅ + +\begin{sverbatim} +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{sverbatim} + +òÁÚÕÍÅÅÔÓÑ, × ×ÁÛÉÈ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÈ ÆÁÊÌÁÈ ÕÖÅ ÍÏÇÕÔ ÂÙÔØ ÏÐÒÅÄÅÌÅÎÙ +ÜÔÉ ÐÅÒÅÍÅÎÎÙÅ; ÆÒÁÇÍÅÎÔÙ ×ÙÛÅ ÄÏÂÁ×ÌÑÀÔ Ë ÎÉÍ ÄÉÒÅËÔÏÒÉÉ \TL{}. + +\subsubsection{ðÅÒÅÍÅÎÎÙÅ ÏËÒÕÖÅÎÉÑ: ÇÌÏÂÁÌØÎÁÑ ËÏÎÆÉÇÕÒÁÃÉÑ} +\label{sec:envglobal} + +åÓÌÉ ×Ù ÈÏÔÉÔÅ ×ÎÅÓÔÉ ÜÔÉ ÉÚÍÅÎÅÎÉÑ ÄÌÑ ×ÓÅÈ ÐÏÌØÚÏ×ÁÔÅÌÅÊ, ÉÌÉ +ÄÏÂÁ×ÌÑÔØ ÉÈ Á×ÔÏÍÁÔÉÞÅÓËÉ ÄÌÑ ÎÏ×ÙÈ ÐÏÌØÚÏ×ÁÔÅÌÅÊ, ÔÏ ×ÁÍ ÓÌÅÄÕÅÔ +ÒÁÚÏÂÒÁÔØÓÑ ÓÁÍÏÍÕ: × ÒÁÚÎÙÈ ÓÉÓÔÅÍÁÈ ÜÔÏ ÄÅÌÁÅÔÓÑ ÓÌÉÛËÏÍ +ÐÏ-ÒÁÚÎÏÍÕ. + +ä×Á ÓÏ×ÅÔÁ: 1)~×ÏÚÍÏÖÎÏ, ×ÁÍ ÓÌÅÄÕÅÔ ÄÏÂÁ×ÉÔØ × ÆÁÊÌ +\filename{/etc/manpath.config} ÓÔÒÏÞËÉ ×ÒÏÄÅ: + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man +\end{sverbatim} + +é 2)~ÉÎÏÇÄÁ ÐÕÔÉ ÐÏÉÓËÁ É ÄÒÕÇÉÅ ÇÌÏÂÁÌØÎÙÅ ÐÅÒÅÍÅÎÎÙÅ ÏËÒÕÖÅÎÉÑ +ÚÁÄÁÀÔÓÑ × ÆÁÊÌÅ \filename{/etc/environment}. + +íÙ ÔÁËÖÅ ÄÏÂÁ×ÌÑÅÍ ÓÉÍÌÉÎË \path{man} × ËÁÖÄÏÊ ÐÏÄÄÉÒÅËÔÏÒÉÉ +\path{bin}. îÅËÏÔÏÒÙÅ ×ÁÒÉÁÎÔÙ ÐÒÏÇÒÁÍÍÙ \code{man}, ÎÁÐÒÉÍÅÒ, × +\MacOSX, Á×ÔÏÍÁÔÉÞÅÓËÉ ÉÝÕÔ ÆÁÊÌÙ × ÜÔÉÈ ÐÏÄÄÉÒÅËÔÏÒÉÑÈ, ÞÔÏ ÉÚÂÁ×ÌÑÅÔ +ÏÔ ÎÅÏÂÈÏÄÉÍÏÓÔÉ ÄÏÂÁ×ÌÑÔØ ÉÈ × \code{MANPATH}. + +\subsubsection{ïÂÎÏ×ÌÅÎÉÑ ÉÚ éÎÔÅÒÎÅÔÁ ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ Ó \DVD} +\label{sec:dvd-install-net-updates} + +åÓÌÉ ×Ù ÕÓÔÎÏ×ÉÌÉ \TL\ Ó \DVD\ É ÈÏÔÉÔÅ ÐÏÌÕÞÁÔØ ÏÂÎÏ×ÌÅÎÉÑ ÉÚ +éÎÔÅÒÎÅÔÁ, ÚÁÐÕÓÔÉÔÅ ÓÌÅÄÕÀÝÕÀ ËÏÍÁÎÄÕ (\emph{ÐÏÓÌÅ} ÄÏÂÁ×ÌÅÎÉÑ +ÐÒÏÇÒÁÍÍ \TL\ Ë ÓÐÉÓËÕ ÐÏÉÓËÁ ÐÒÏÇÒÁÍÍ, ÓÍ. ÐÒÅÄÙÄÕÝÉÊ ÒÁÚÄÅÌ): + +\begin{alltt} +> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +ïÎÁ ÕËÁÚÙ×ÁÅÔ ÐÒÏÇÒÁÍÍÅ \prog{tlmgr}, ÞÔÏ ÎÕÖÎÏ ÉÓËÁÔØ ÏÂÎÏ×ÌÅÎÉÑ +ÎÁ ÂÌÉÖÁÊÛÅÍ ÚÅÒËÁÌÅ \CTAN. + +åÓÌÉ Á×ÔÏÍÁÔÉÞÅÓËÉÊ ×ÙÂÏÒ ÚÅÒËÁÌÁ ÎÅ ÒÁÂÏÔÁÅÔ, ×Ù ÍÏÖÅÔÅ ÕËÁÚÁÔØ ÁÄÒÅÓ +ÚÅÒËÁÌÁ ×ÒÕÞÎÕÀ, ×ÚÑ× ÅÇÏ ÉÚ ÓÐÉÓËÁ ÎÁ \url{http://ctan.org/mirrors}. +úÁÄÁÊÔÅ ÐÒÉ ÜÔÏÍ ÔÏÞÎÏÅ ÐÏÌÏÖÅÎÉÅ ÄÉÒÅËÔÏÒÉÉ \dirname{tlnet}, ËÁË +ÕËÁÚÁÎÏ ×ÙÛÅ. + + +\htmlanchor{xetexfontconfig} % keep historical anchor working +\htmlanchor{sysfontconfig} +\subsubsection{îÁÓÔÒÏÊËÁ ÛÒÉÆÔÏ× ÄÌÑ ÐÒÏÇÒÁÍÍ \XeTeX\ É Lua\TeX} +\label{sec:font-conf-sys} + +\XeTeX\ É Lua\TeX\ ÍÏÇÕÔ ÉÓÐÏÌØÚÏ×ÁÔØ ×ÓÅ ÛÒÉÆÔÙ, ÕÓÔÁÎÏ×ÌÅÎÎÙÅ × +×ÁÛÅÊ ÓÉÓÔÅÍÅ, ÎÅ ÔÏÌØËÏ ÔÅ, ËÏÔÏÒÙÅ ÎÁÈÏÄÑÔÓÑ × ÄÉÒÅËÔÏÒÉÑÈ \TeX Á. +ïÎÉ ÜÔÏ ÄÅÌÁÀÔ ÐÒÉ ÐÏÍÏÝÉ ÐÏÈÏÖÉÈ, ÎÏ ÞÕÔØ-ÞÕÔØ ÒÁÚÎÙÈ ÍÅÔÏÄÏ×. + +ðÏÄ Windows ÛÒÉÆÔÙ, ×ËÌÀÞÅÎÎÙÅ × ÄÉÓÔÒÉÂÕÔÉ× \TL, Á×ÔÏÍÁÔÉÞÅÓËÉ +ÄÏÓÔÕÐÎÙ × \XeTeX Å. îÏ ÅÓÌÉ ×Ù ÕÓÔÁÎÏ×ÉÌÉ ÐÁËÅÔ \filename{xetex} ÐÏÄ +UNIX, ÔÏ ×ÁÍ ÎÕÖÎÏ ÎÁÓÔÒÏÉÔØ ×ÁÛÕ ÓÉÓÔÅÍÕ, ÞÔÏÂÙ \XeTeX{} ÍÏÇ ÎÁÊÔÉ +ÛÒÉÆÔÙ \TL\ ÐÏ ÎÁÚ×ÁÎÉÀ ÛÒÉÆÔÁ, Á ÎÅ ÔÏÌØËÏ ÐÏ ÉÍÅÎÉ ÆÁÊÌÁ. + +þÔÏÂÙ ÐÏÍÏÞØ ÜÔÏÍÕ, ËÏÇÄÁ ÐÁËÅÔ \pkgname{xetex} ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ (ÌÉÂÏ +ÐÒÉ ÐÅÒ×ÏÎÁÞÁÌØÎÏÊ ÕÓÔÁÎÏ×ËÅ ÄÉÓÔÒÉÂÕÔÉ×Á, ÌÉÂÏ ÐÏÚÖÅ), ÏÎ ÓÏÚÄÁÅÔ +ÎÅÏÂÈÏÄÉÍÙÊ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ × +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. + +åÓÌÉ ×Ù ÏÂÌÁÄÁÅÔÅ ÐÒÁ×ÁÍÉ ÁÄÍÉÎÉÓÔÒÁÔÏÒÁ, ÔÏ ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÛÒÉÆÔÙ +\TL{} ÂÙÌÉ ÄÏÓÔÕÐÎÙ ×ÓÅÍ ÐÒÏÇÒÁÍÍÁÍ, ÓÄÅÌÁÊÔÅ ÓÌÅÄÕÀÝÅÅ: +\begin{enumerate*} +\item óËÏÐÉÒÕÊÔÅ ÆÁÊÌ \filename{texlive-fontconfig.conf} × +\dirname{/etc/fonts/conf.d/09-texlive.conf}. +\item úÁÐÕÓÔÉÔÅ \Ucom{fc-cache -fsv}. +\end{enumerate*} + +åÓÌÉ Õ ×ÁÓ ÎÅÔ ÐÒÁ× ÁÄÍÉÎÉÓÔÒÁÔÏÒÁ, ÔÏ ×Ù ÍÏÖÅÔÅ ×ÍÅÓÔÏ ÜÔÏÇÏ ÓÄÅÌÁÔØ +ÛÒÉÆÔÙ \TL{} ÄÏÓÔÕÐÎÙÍÉ ÔÏÌØËÏ ×ÁÍ: +\begin{enumerate*} +\item óËÏÐÉÒÕÊÔÅ ÆÁÊÌ \filename{texlive-fontconfig.conf} × + \filename{~/.fonts.conf}, ÇÄÅ \filename{~} "---~×ÁÛÁ ÄÏÍÁÛÎÑÑ + ÄÉÒÅËÔÏÒÉÑ. +\item úÁÐÕÓÔÉÔÅ \Ucom{fc-cache -fv}. +\end{enumerate*} + +þÔÏÂÙ ÐÏÓÍÏÔÒÅÔØ ÎÁÚ×ÁÎÉÑ ÓÉÓÔÅÍÎÙÈ ÛÒÉÆÔÏ×, ×Ù ÍÏÖÅÔÅ ÚÁÐÕÓÔÉÔØ +ÐÒÏÇÒÁÍÍÕ \code{fc-list}. íÏÖÎÏ ÐÏÌÕÞÉÔØ ÍÎÏÇÏ ÉÎÔÅÒÅÓÎÏÊ ÉÎÆÏÒÍÁÃÉÉ, +ÚÁÐÕÓÔÉ× Å£ ËÁË \code{fc-list : family style file spacing} (×ÓÅ +ÁÒÇÕÍÅÎÔÙ---ÔÅËÓÔÏ×ÙÅ ÓÔÒÏËÉ). + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context-mkiv} + +ëÁË <<ÓÔÁÒÙÊ>> \ConTeXt{}(Mark \acro{II}), ÔÁË É <<ÎÏ×ÙÊ> \ConTeXt{} +(Mark \acro{IV}) ÄÏÌÖÎÙ ÒÁÂÏÔÁÔØ <<ÉÚ ËÏÒÏÂËÉ>> ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ \TL{} +É ÐÏÓÌÅ ÏÂÎÏ×ÌÅÎÉÑ ÓÉÓÔÅÍÙ ÐÒÉ ÐÏÍÏÝÉ \verb+tlmgr+. + +ïÄÎÁËÏ ÔÁË ËÁË \ConTeXt{} Mk\acro{IV} ÎÅ ÉÓÐÏÌØÚÕÅÔ ÂÉÂÌÉÏÔÅËÕ +\verb+kpathsea+, ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ÎÏ×ÙÊ ÆÁÊÌÏ× ×ÒÕÞÎÕÀ (\emph{ÎÅ} ÐÒÉ +ÐÏÍÏÝÉ \verb+tlmgr+) ÎÕÖÎÙ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÄÅÊÓÔ×ÉÑ. ëÁÖÄÙÊ +ÐÏÌØÚÏ×ÁÔÅÌØ Mk\acro{IV} ÄÏÌÖÅÎ ÐÏÓÌÅ ÔÁËÏÇÏ ÏÂÎÏ×ÌÅÎÉÑ ÚÁÐÕÓÔÉÔØ +\begin{sverbatim} +context --generate +\end{sverbatim} +ÞÔÏÂÙ ÏÂÎÏ×ÉÔØ ÂÁÚÕ ÄÁÎÎÙÈ \ConTeXt{}. ðÏÌÕÞÉ×ÛÉÅÓÑ ÆÁÊÌÙ ÂÕÄÕÔ +ÕÓÔÁÎÏ×ÌÅÎÙ × ÄÉÒÅËÔÏÒÉÉ \code{TEXMFCACHE}. ÷ \TL\ ÜÔÁ ÄÉÒÅËÔÏÒÉÑ +ÓÏ×ÐÁÄÁÅÔ Ó \code{TEXMFVAR}. + +\ConTeXt\ Mk\acro{IV} ÞÉÔÁÅÔ ÆÁÊÌÙ ÉÚ ×ÓÅÈ ÄÉÒÅËÔÏÒÉÊ, ÚÁÄÁÎÎÙÈ +ÐÅÒÅÍÅÎÎÏÊ \verb+TEXMFCACHE+ É ÐÉÛÅÔ × ÐÅÒ×ÕÀ ÄÉÒÅËÔÏÒÉÀ × ÓÐÉÓËÅ, × +ËÏÔÏÒÏÊ Õ ÎÅÇÏ ÅÓÔØ ÐÒÁ×Á ÎÁ ÚÁÐÉÓØ. ðÒÉ ÞÔÅÎÉÉ × ÓÌÕÞÁÅ ÄÕÂÌÉÒÕÀÝÉÈ +ÚÁÐÉÓÅÊ ÉÍÅÅÔ ÐÒÅÉÍÕÝÅÓÔ×Ï ÐÏÓÌÅÄÎÑÑ ÐÒÏÞÉÔÁÎÎÁÑ ÚÁÐÉÓØ. + +óÍ. ÔÁËÖÅ +\url{http://wiki.contextgarden.net/Running_Mark_IV}. + + +\subsubsection{äÏÂÁ×ÌÅÎÉÅ ÌÉÞÎÙÈ É ÌÏËÁÌØÎÙÈ ÐÁËÅÔÏ×} +\label{sec:local-personal-macros} + +üÔÏÔ ×ÏÐÒÏÓ ÕÖÅ ÏÂÓÕÖÄÁÌÓÑ × ÒÁÚÄÅÌÅ~\ref{sec:texmftrees}: ÄÌÑ +ÌÏËÁÌØÎÙÈ ÛÒÉÆÔÏ× É ÐÁËÅÔÏ×, ÏÂÝÉÈ Õ ×ÓÅÈ ÐÏÌØÚÏ×ÁÔÅÌÅÊ, +ÐÒÅÄÎÁÚÎÁÞÅÎÁ ÄÉÒÅËÔÏÒÉÑ +\dirname{TEXMFLOCAL} (ÐÏ ÕÍÏÌÞÁÎÉÀ, +\dirname{/usr/local/texlive/texmf-local} ÉÌÉ +\verb|%SystemDrive%\texlive\texmf-local|), Á ÄÌÑ ÌÉÞÎÙÈ ÛÒÉÆÔÏ× É +ÐÁËÅÔÏ× "--- ÄÉÒÅËÔÏÒÉÑ \dirname{TEXMFHOME} (ÐÏ ÕÍÏÌÞÁÎÉÀ, +\dirname{$HOME/texmf} ÉÌÉ \verb|%USERPROFILE%\texmf|). üÔÉ ÄÉÒÅËÔÏÒÉÉ +ÐÒÅÄÐÏÌÁÇÁÀÔÓÑ ÏÂÝÉÍÉ ÄÌÑ ×ÓÅÈ ×ÅÒÓÉÊ \TL{}, É ËÁÖÄÁÑ ×ÅÒÓÉÑ \TL{} +×ÉÄÉÔ ÉÈ Á×ÔÏÍÁÔÉÞÅÓËÉ. ðÏÜÔÏÍÕ ÍÙ ÎÅ ÒÅËÏÍÅÎÄÕÅÍ ÍÅÎÑÔØ ÚÎÁÞÅÎÉÅ +\dirname{TEXMFLOCAL}, ÉÎÁÞÅ ×ÁÍ ÐÒÉÄÅÔÓÑ ÄÅÌÁÔØ ÜÔÏ ÄÌÑ ËÁÖÄÏÊ ÎÏ×ÏÊ +×ÅÒÓÉÉ. + +æÁÊÌÙ × ÏÂÅÉÈ ÄÉÒÅËÔÏÒÉÑÈ ÄÏÌÖÎÙ ÎÁÈÏÄÉÔØÓÑ × ÐÒÁ×ÉÌØÎÙÈ +ÐÏÄÄÉÒÅËÔÏÒÉÑÈ; ÓÍ. \url{http://tug.org/tds} É +\filename{texmf/web2c/texmf.cnf}. îÁÐÒÉÍÅÒ, \LaTeX Ï×ÓËÉÊ ËÌÁÓÓ ÉÌÉ +ÐÁËÅÔ ÄÏÌÖÅÎ ÎÁÈÏÄÉÔØÓÑ × ÄÉÒÅËÔÏÒÉÉ \dirname{TEXMFLOCAL/tex/latex} ÉÌÉ +\dirname{TEXMFHOME/tex/latex} ÉÌÉ ËÁËÏÊ-ÌÉÂÏ ÉÚ ÉÈ ÐÏÄÄÉÒÅËÔÏÒÉÊ. + +äÌÑ ÄÉÒÅËÔÏÒÉÉ \dirname{TEXMFLOCAL} ÄÏÌÖÎÁ ÐÏÄÄÅÒÖÉ×ÁÔØÓÑ ÂÁÚÁ ÄÁÎÎÙÈ +Ï ÆÁÊÌÁÈ, ÉÎÁÞÅ ÓÉÓÔÅÍÁ ÎÅ ÓÍÏÖÅÔ ÎÁÊÔÉ ÔÁÍ ÎÕÖÎÙÅ ÆÁÊÌÙ. üÔÁ ÂÁÚÁ +ÏÂÎÏ×ÌÑÅÔÓÑ ËÏÍÁÎÄÏÊ \cmdname{mktexlsr} ÉÌÉ ËÎÏÐËÏÊ <> × ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ ÐÒÏÇÒÁÍÍÙ \prog{tlmgr}. + +ðÏ ÕÍÏÌÞÁÎÉÀ, ËÁÖÄÁÑ ÉÚ ÜÔÉÈ ÐÅÒÅÍÅÎÎÙÈ ÕËÁÚÙ×ÁÅÔ ÎÁ ÏÄÎÕ ÄÉÒÅËÔÏÒÉÀ, +ËÁË × ÎÁÛÅÍ ÐÒÉÍÅÒÅ. ïÄÎÁËÏ ÜÔÏ ÎÅ ÏÂÑÚÁÔÅÌØÎÏÅ ÔÒÅÂÏ×ÁÎÉÅ. åÓÌÉ ×ÁÍ +ÎÕÖÎÏ, ÎÁÐÒÉÍÅÒ, ÐÏÄÄÅÒÖÉ×ÁÔØ ÎÅÓËÏÌØËÏ ×ÅÒÓÉÊ ÂÏÌØÛÉÈ ÐÁËÅÔÏ×, ×Ù +ÍÏÖÅÔÅ ÚÁÈÏÔÅÔØ ÉÍÅÔØ ÎÅÓËÏÌØËÏ ÄÅÒÅ×ØÅ× ÄÉÒÅËÔÏÒÉÊ. ôÏÇÄÁ ×Ù ÍÏÖÅÔÅ +ÏÐÒÅÄÅÌÉÔØ \dirname{TEXMFHOME} ËÁË ÎÁÂÏÒ ÄÉÒÅËÔÏÒÉÊ × ÆÉÇÕÒÎÙÈ +ÓËÏÂËÁÈ, ÒÁÚÄÅÌÅÎÎÙÈ ÚÁÐÑÔÙÍÉ: + +\begin{verbatim} + TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir} +\end{verbatim} + +ðÏÄÒÏÂÎÅÅ ÜÔÉ ×ÏÐÒÏÓÙ ÏÂßÑÓÎÑÀÔÓÑ × +ÒÁÚÄÅÌÅ~\ref{sec:brace-expansion}. + +\subsubsection{äÏÂÁ×ÌÅÎÉÅ ÎÏ×ÙÈ ÛÒÉÆÔÏ×} + +ë ÓÏÖÁÌÅÎÉÀ, ÜÔÏ ÏÞÅÎØ ÓÌÏÖÎÁÑ ÚÁÄÁÞÁ. îÅ ÄÅÌÁÊÔÅ ÜÔÏÇÏ, ÅÓÌÉ ×Ù ÎÅ +ÚÎÁÅÔÅ \TeX Á ËÁË Ó×ÏÉ ÐÑÔØ ÐÁÌØÃÅ×. îÅ ÚÁÂÕÄØÔÅ ÓÎÁÞÁÌÁ ÐÒÏ×ÅÒÉÔØ, +ËÁËÉÅ ÛÒÉÆÔÙ Õ ×ÁÓ ÕÖÅ ÅÓÔØ, ÓÍ. ÒÁÚÄÅÌ~\ref{sec:tl-fonts}. + +÷ÏÚÍÏÖÎÁÑ ÁÌØÔÅÒÎÁÔÉ×Á "--- ÐÒÏÇÒÁÍÍÁ \XeTeX{} (ÓÍ. +ÒÁÚÄÅÌ~\ref{sec:tex-extensions}), ËÏÔÏÒÁÑ ÐÏÚ×ÏÌÑÅÔ Á×ÔÏÍÁÔÉÞÅÓËÉ +ÉÓÐÏÌØÚÏ×ÁÔØ × \TeX Å ÛÒÉÆÔÙ ×ÁÛÅÊ ÏÐÅÒÁÃÉÏÎÎÏÊ ÓÉÓÔÅÍÙ. + +åÓÌÉ ×ÁÍ ×ÓÅ ÖÅ ÎÕÖÎÏ ÄÏÂÁ×ÉÔØ ÛÒÉÆÔÙ, ÔÏ ÐÏÓÍÏÔÒÉÔÅ +ÓÔÒÁÎÉÃÕ \url{http://tug.org/fonts/fontinstall.html} "---~ÜÔÏ ÌÕÞÛÅÅ, +ÞÔÏ ÍÙ ÓÍÏÇÌÉ ÎÁÐÉÓÁÔØ ÐÏ ÜÔÏÍÕ ÐÏ×ÏÄÕ. åÓÌÉ ×Ù ÐÒÁ×ÉÌØÎÏ +ÐÏÄÄÅÒÖÉ×ÁÅÔÅ ËÁÒÔÙ ÛÒÉÆÔÏ×, \texttt{tlmgr generate updmap} +\textit{ÍÏÖÅÔ} ÏËÁÚÁÔØÓÑ ÐÏÌÅÚÎÏÊ, ÏÓÏÂÅÎÎÏ ÐÒÉ ÐÅÒÅÈÏÄÅ ÎÁ ÎÏ×ÕÀ +×ÅÒÓÉÀ \TL; ÓÍ. ÄÏËÕÍÅÎÔÁÃÉÀ ÐÒÏÇÒÁÍÍÙ \cmdname{tlmgr}. + + +\subsection{ôÅÓÔÉÒÏ×ÁÎÉÅ ÓÉÓÔÅÍÙ} +\label{sec:test-install} + + +ðÏÓÌÅ ÕÓÔÁÎÏ×ËÉ \TL{} ×Ù, ÓËÏÒÅÅ ×ÓÅÇÏ, ÚÁÈÏÔÉÔÅ ÐÒÏ×ÅÒÉÔØ ÒÁÂÏÔÕ +ÓÉÓÔÅÍÙ, Á ÕÖÅ ÚÁÔÅÍ ÐÅÒÅÊÔÉ Ë ÓÏÚÄÁÎÉÀ ÐÒÅËÒÁÓÎÙÈ ÄÏËÕÍÅÎÔÏ× É/ÉÌÉ +ÛÒÉÆÔÏ×. + +÷ ÜÔÏÍ ÒÁÚÄÅÌÅ ÏÐÉÓÙ×ÁÀÔÓÑ ÏÓÎÏ×ÎÙÅ ÐÒÏÃÅÄÕÒÙ ÐÏ ÔÅÓÔÉÒÏ×ÁÎÉÀ ÓÉÓÔÅÍÙ. +íÙ ÐÒÉ×ÏÄÉÍ ËÏÍÁÎÄÙ ÄÌÑ ÏÐÅÒÁÃÉÏÎÎÙÈ ÓÉÓÔÅÍ ÔÉÐÁ Unix; ÐÏÄ \MacOSX{} É +Windows ×Ù, ÓËÏÒÅÅ ×ÓÅÇÏ, ÂÕÄÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÇÒÁÆÉÞÅÓËÉÊ ÉÎÔÅÒÆÅÊÓ, +ÎÏ ÐÒÉÎÃÉÐ ÔÏÔ ÖÅ. + + +\begin{enumerate} + +\item óÎÁÞÁÌÁ ÐÒÏ×ÅÒØÔÅ, ÞÔÏ ×Ù ÍÏÖÅÔÅ ÚÁÐÕÓËÁÔØ ÐÒÏÇÒÁÍÍÕ + \cmdname{tex}: + +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live ...) +kpathsea version 6.0.1 +Copyright ... D.E. Knuth. +... +\end{alltt} +åÓÌÉ ×Ù ÐÏÌÕÞÁÅÔÅ × ÏÔ×ÅÔ <> ×ÍÅÓÔÏ ÎÏÍÅÒÁ ×ÅÒÓÉÉ É +ÉÎÆÏÒÍÁÃÉÉ Ï ËÏÐÉÒÁÊÔÅ, Õ ×ÁÓ, ÓËÏÒÅÅ ×ÓÅÇÏ, ÎÅÔ ÄÉÒÅËÔÏÒÉÉ Ó ÎÕÖÎÙÍÉ +ÐÒÏÇÒÁÍÍÁÍÉ × ÐÅÒÅÍÅÎÎÏÊ \envname{PATH}. óÍ. ÏÂÓÕÖÄÅÎÉÅ ÎÁ +ÓÔÒÁÎÉÃÅ~\pageref{sec:env}. + + +\item óËÏÍÐÉÌÉÒÕÊÔÅ ÐÒÏÓÔÏÊ \LaTeX{}Ï×ÓËÉÊ ÆÁÊÌ: +\begin{alltt} +> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-... (TeX Live ...) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +åÓÌÉ ÐÒÏÇÒÁÍÍÁ ÎÅ ÍÏÖÅÔ ÎÁÊÔÉ \filename{sample2e.tex} ÉÌÉ ÄÒÕÇÉÅ +ÆÁÊÌÙ, ×ÏÚÍÏÖÎÏ, Õ ×ÁÓ ÏÓÔÁÌÉÓØ ÓÌÅÄÙ ÏÔ ÓÔÁÒÏÊ ÕÓÔÁÎÏ×ËÉ: ÐÅÒÅÍÅÎÎÙÅ +ÏËÒÕÖÅÎÉÑ ÉÌÉ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ. íÙ ÒÅËÏÍÅÎÄÕÅÍ ÓÎÁÞÁÌÁ ÕÂÒÁÔØ +×ÓÅ ÐÅÒÅÍÅÎÎÙÅ ÏËÒÕÖÅÎÉÑ, ÏÔÎÏÓÑÝÉÅÓÑ Ë \TeX Õ. (äÌÑ ÏÔÌÁÄËÉ ×Ù ×ÓÅÇÄÁ ÍÏÖÅÔÅ +ÐÏÐÒÏÓÉÔØ \TeX{} ÔÏÞÎÏ ÓËÁÚÁÔØ, ÞÔÏ ÉÍÅÎÎÏ ÏÎ ÉÝÅÔ; ÓÍ. <<ïÔÌÁÄËÁ>> ÎÁ +ÓÔÒ.~\pageref{sec:debugging}.) + +\item ðÏÓÍÏÔÒÉÔÅ ÒÅÚÕÌØÔÁÔ ÎÁ ÜËÒÁÎÅ: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +÷Ù ÄÏÌÖÎÙ Õ×ÉÄÅÔØ ÎÏ×ÏÅ ÏËÎÏ Ó ËÒÁÓÉ×Ï Ó×£ÒÓÔÁÎÎÙÍ ÄÏËÕÍÅÎÔÏÍ, +ÏÂßÑÓÎÑÀÝÉÍ ÏÓÎÏ×Ù \LaTeX{}Á. (ëÓÔÁÔÉ, ÅÓÌÉ ×Ù "--- ÎÏ×ÉÞÏË, ×ÁÍ +ÓÔ\'ÏÉÔ ÅÇÏ ÐÒÏÞÅÓÔØ.) þÔÏÂÙ ÐÒÏÇÒÁÍÍÁ \cmdname{xdvi} ÍÏÇÌÁ +ÚÁÐÕÓÔÉÔØÓÑ, ×Ù ÄÏÌÖÎÙ ÂÙÔØ × ÓÒÅÄÅ X Window; ÅÓÌÉ ÜÔÏ ÎÅ ÔÁË, ÉÌÉ +ÅÓÌÉ ÐÅÒÅÍÅÎÎÁÑ \envname{DISPLAY} ÕÓÔÁÎÏ×ÌÅÎÁ ÎÅÐÒÁ×ÉÌØÎÏ, ×Ù Õ×ÉÄÉÔÅ +ÏÛÉÂËÕ \samp{Can't open display}. + +\item óÏÚÄÁÊÔÅ ÆÁÊÌ × ÆÏÒÍÁÔÅ \PS{} ÄÌÑ ÐÅÞÁÔÉ ÉÌÉ ÐÒÏÓÍÏÔÒÁ ÎÁ ÜËÒÁÎÅ: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item óÏÚÄÁÊÔÅ ÆÁÊÌ × ÆÏÒÍÁÔÅ \acro{PDF} ×ÍÅÓÔÏ \dvi{}; ËÏÍÁÎÄÁ ÎÉÖÅ + ËÏÍÐÉÌÉÒÕÅÔ ÆÁÊÌ \filename{.tex} É ÓÏÚÄÁ£Ô \acro{PDF}: +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item ðÏÓÍÏÔÒÉÔÅ ÒÅÚÕÌØÔÁÔ ÎÁ ÜËÒÁÎÅ: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{ÉÌÉ:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +ë ÓÏÖÁÌÅÎÉÀ, ÎÉ \cmdname{gv}, ÎÉ \cmdname{xpdf} ÎÅ ×ËÌÀÞÅÎÙ × ÔÅËÕÝÕÀ +×ÅÒÓÉÀ \TL{}, ÔÁË ÞÔÏ ×ÁÍ ÐÒÉÄ£ÔÓÑ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ ÉÈ +ÏÔÄÅÌØÎÏ. óÍ. ÓÏÏÔ×ÅÔÓÔ×ÅÎÎÏ +\url{http://www.gnu.org/software/gv} É +\url{http://www.foolabs.com/xpdf}. òÁÚÕÍÅÅÔÓÑ, ÅÓÔØ É ÍÎÏÇÏ ÄÒÕÇÉÈ +ÐÒÏÇÒÁÍÍ ÄÌÑ ÐÒÏÓÍÏÔÒÁ ÆÁÊÌÏ× × ÆÏÒÍÁÔÅ \acro{PDF}. ðÏÌØÚÏ×ÁÔÅÌÑÍ +Windows ÍÙ ÒÅËÏÍÅÎÄÕÅÍ Sumatra PDF +(\url{http://blog.kowalczyk.info/software/sumatrapdf}). + +\item äÒÕÇÉÅ ÓÔÁÎÄÁÒÔÎÙÅ ÔÅÓÔÏ×ÙÅ ÆÁÊÌÙ, ËÏÔÏÒÙÅ ×ÁÍ ÍÏÇÕÔ ÐÒÉÇÏÄÉÔØÓÑ: + +\begin{ttdescription} +\item [small2e.tex] âÏÌÅÅ ÐÒÏÓÔÏÊ ÄÏËÕÍÅÎÔ, ÞÅÍ \filename{sample2e}, + ÕÄÏÂÎÙÊ, ÅÓÌÉ ÐÏÓÌÅÄÎÉÊ ÓÌÉÛËÏÍ ×ÅÌÉË ÄÌÑ ×ÁÓ. +\item [testpage.tex] ðÒÏ×ÅÒÑÅÔ ÐÏÌÑ É ÐÏÚÉÃÉÏÎÉÒÏ×ÁÎÉÅ ÂÕÍÁÇÉ ÄÌÑ + ×ÁÛÅÇÏ ÐÒÉÎÔÅÒÁ. +\item [nfssfont.tex] éÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÐÅÞÁÔÉ ÔÁÂÌÉà ÛÒÉÆÔÏ× É ÔÅÓÔÏ×. +\item [testfont.tex] ðÅÞÁÔØ ÔÁÂÌÉà ÛÒÉÆÔÏ× ÐÏÄ plain \TeX{}. +\item [story.tex] óÁÍÙÊ ËÁÎÏÎÉÞÅÓËÉÊ ÆÁÊÌ × ÆÏÒÍÁÔÅ (plain) \TeX. ÷Ù + ÄÏÌÖÎÙ ÎÁÐÅÞÁÔÁÔØ \samp{\bs bye} × ÏÔ×ÅÔ ÎÁ ÐÒÉÇÌÁÛÅÎÉÅ \code{*} + ÐÏÓÌÅ \samp{tex story.tex}. +\end{ttdescription} + +\item åÓÌÉ ×Ù ÕÓÔÁÎÏ×ÉÌÉ ÐÁËÅÔ \filename{xetex}, ×Ù ÍÏÖÅÔÅ ÐÒÏ×ÅÒÉÔØ, + ÄÏÓÔÕÐÎÙ ÌÉ ÅÍÕ ÓÉÓÔÅÍÎÙÅ ÛÒÉÆÔÙ: +\begin{alltt} +> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +(ÉÌÉ ÁÎÁÌÏÇÉÞÎÏ ÄÌÑ \filename{luatex}.) + +åÓÌÉ ×Ù ÐÏÌÕÞÉÔÅ ÓÏÏÂÝÅÎÉÅ Ï ÏÛÉÂËÅ: <>, ÔÏ ×ÁÍ ÎÕÖÎÏ ÎÁÓÔÒÏÉÔØ ÓÉÓÔÅÍÕ, ÞÔÏÂÙ \XeTeX{} ÍÏÇ +ÎÁÊÔÉ ÛÒÉÆÔÙ \TL. óÍ. ÒÁÚÄÅÌ~\ref{sec:font-conf-sys}. + +\end{enumerate} + +\subsection{óÓÙÌËÉ ÎÁ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÐÒÏÇÒÁÍÍÙ} + +åÓÌÉ ×Ù ÎÏ×ÉÞÏË × \TeX{}Å, ÉÌÉ ×ÁÍ ÎÕÖÎÁ ÐÏÍÏÝØ × ÓÏÚÄÁÎÉÉ ÄÏËÕÍÅÎÔÏ× +ÎÁ ÑÚÙËÅ \TeX{} ÉÌÉ \LaTeX{}, ÐÏÓÅÔÉÔÅ +\url{http://tug.org/begin.html}. + + +÷ÏÔ ÓÓÙÌËÉ ÎÁ ÎÅËÏÔÏÒÙÅ ÄÒÕÇÉÅ ÐÒÏÇÒÁÍÍÙ, ËÏÔÏÒÙÅ ×ÁÍ ÍÏÇÕÔ +ÐÒÉÇÏÄÉÔØÓÑ: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} Ó ÄÏÐÏÌÎÉÔÅÌØÎÙÍÉ + ÐÁËÅÔÁÍÉ ÉÚ ÁÒÈÉ×Á \acro{CPAN}, \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, ÄÌÑ + ËÏÎ×ÅÒÔÉÒÏ×ÁÎÉÑ É ÐÒÅÏÂÒÁÚÏ×ÁÎÉÑ ÇÒÁÆÉËÉ. +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, ÔÏÖÅ ÄÌÑ ÇÒÁÆÉËÉ. + +\item[òÅÄÁËÔÏÒÙ ÄÌÑ \TeX Á] éÈ ÏÞÅÎØ ÍÎÏÇÏ, É ×ÙÂÏÒ ÉÈ "--- ÄÅÌÏ + ×ËÕÓÁ. ÷ÏÔ ÎÅÓËÏÌØËÏ ÉÚ ÎÉÈ (ÎÅËÏÔÏÒÙÅ ÄÏÓÔÕÐÎÙ ÔÏÌØËÏ ÄÌÑ Windows): + \begin{itemize*} + \item \cmdname{GNU Emacs} ÅÓÔØ ÄÌÑ Windows, ÓÍ. + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs} Ó Auc\TeX ÏÍ ÄÌÑ Windows ÅÓÔØ × ÄÉÒÅËÔÏÒÉÉ + \path{tlpkg/support} ÎÁ \DVD{} \TL{}; ÅÇÏ ÓÔÒÁÎÉÃÁ ÎÁ ÓÅÔÉ: + \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} ÍÏÖÎÏ ÓËÁÞÁÔØ Ó \url{http://www.ctan.org/support/LEd}. + \item \cmdname{SciTE} ÍÏÖÎÏ ÓËÁÞÁÔØ Ó + \url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} "---~ÜÔÏ Ó×ÏÂÏÄÎÁÑ ÐÒÏÇÒÁÍÍÁ, ËÏÔÏÒÕÀ ÍÏÖÎÏ + ÓËÁÞÁÔØ Ó \url{http://www.xm1math.net/texmaker/}. + \item TeXnicCenter "---~ÜÔÏ Ó×ÏÂÏÄÎÁÑ ÐÒÏÇÒÁÍÍÁ, ËÏÔÏÒÕÀ ÍÏÖÎÏ ÓËÁÞÁÔØ Ó + \url{http://www.toolscenter.org} É × ÄÉÓÔÒÉÂÕÔÉ×Å pro\TeX{}t. + \item \cmdname{TeXworks} "---~ÜÔÏ Ó×ÏÂÏÄÎÁÑ ÐÒÏÇÒÁÍÍÁ, ËÏÔÏÒÕÀ ÍÏÖÎÏ + ÓËÁÞÁÔØ Ó + \url{http://tug.org/texworks}. å£ ×ÅÒÓÉÉ ÄÌÑ Windows É + \MacOSX\ ×ÈÏÄÑÔ × \TL. + \item \cmdname{Vim} "---~ÜÔÏ Ó×ÏÂÏÄÎÁÑ ÐÒÏÇÒÁÍÍÁ, ËÏÔÏÒÕÀ ÍÏÖÎÏ ÓËÁÞÁÔØ Ó + \url{http://www.vim.org}. + \item \cmdname{WinEdt} ÜÔÏ shareware. üÔÕ ÐÒÏÇÒÁÍÍÕ ÍÏÖÎÏ ÓËÁÞÁÔØ Ó + \url{http://tug.org/winedt} ÉÌÉ + \url{http://www.winedt.com}. + \item \cmdname{WinShell} ÍÏÖÎÏ ÓËÁÞÁÔØ Ó \url{http://www.winshell.de}. + \end{itemize*} +\end{description} + +çÏÒÁÚÄÏ ÂÏÌÅÅ ÐÏÌÎÙÊ ÌÉÓÔ ÐÒÏÇÒÁÍÍ É ÐÁËÅÔÏ× ÎÁÈÏÄÉÔÓÑ ÎÁ +\url{http://tug.org/interest.html}. + +\section{õÓÔÁÎÏ×ËÁ ÓÉÓÔÅÍÙ × ÏÓÏÂÙÈ ÓÌÕÞÁÑÈ} + +÷ ÐÒÅÄÙÄÕÝÉÈ ÒÁÚÄÅÌÁÈ ÏÐÉÓÙ×ÁÌÉÓØ ÏÓÎÏ×Ù ÐÒÏÃÅÓÓÁ ÕÓÔÁÎÏ×ËÉ \TL. +úÄÅÓØ ÍÙ ÏÓÔÁÎÏ×ÉÍÓÑ ÎÁ ÎÅÓËÏÌØËÉÈ ÏÓÏÂÙÈ ÓÌÕÞÁÑÈ. + +\htmlanchor{tlsharedinstall} +\subsection{õÓÔÁÎÏ×ËÁ × ÌÏËÁÌØÎÏÊ ÓÅÔÉ} +\label{sec:sharedinstall} + +\TL{} ÍÏÖÅÔ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÏÄÎÏ×ÒÅÍÅÎÎÏ ÒÁÚÎÙÍÉ ÐÏÌØÚÏ×ÁÔÅÌÑÍÉ ÉÌÉ +ÄÁÖÅ ÒÁÚÎÙÍÉ ÍÁÛÉÎÁÍÉ × ÌÏËÁÌØÎÏÊ ÓÅÔÉ. ÷ ÓÔÁÎÄÁÒÔÎÏÊ ÓÈÅÍÅ +ÄÉÒÅËÔÏÒÉÊ ×ÓÅ ÐÕÔÉ Ë ÆÁÊÌÁÍ Ñ×ÌÑÀÔÓÑ ÏÔÎÏÓÉÔÅÌØÎÙÍÉ: ÐÒÏÇÒÁÍÍÙ \TL{} +ÏÐÒÅÄÅÌÑÀÔ, ÇÄÅ ÌÅÖÁÔ ÎÕÖÎÙÅ ÉÍ ÆÁÊÌÙ, ÉÓÈÏÄÑ ÉÚ ÔÏÇÏ, ÇÄÅ ÏÎÉ +ÎÁÈÏÄÑÔÓÑ ÓÁÍÉ. ÷Ù ÍÏÖÅÔÅ Õ×ÉÄÅÔØ, ËÁË ÜÔÏ ÄÅÌÁÅÔÓÑ, ÐÏÓÍÏÔÒÅ× +ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ \filename{$TEXMFMAIN/web2c/texmf.cnf} ÓÏ +ÓÔÒÏÞËÁÍÉ ÔÉÐÁ +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +üÔÏ ÏÚÎÁÞÁÅÔ, ÞÔÏ ÄÒÕÇÉÅ ÓÉÓÔÅÍÙ ÉÌÉ ÐÏÌØÚÏ×ÁÔÅÌÉ ÄÏÌÖÎÙ ÐÒÏÓÔÏ +ÄÏÂÁ×ÉÔØ ÄÉÒÅËÔÏÒÉÀ Ó ÐÒÏÇÒÁÍÍÁÍÉ \TL{} Ë ÄÉÒÅËÔÏÒÉÑÍ ÐÏÉÓËÁ. + +ôÏÞÎÏ ÔÁË ÖÅ ×Ù ÍÏÖÅÔÅ ÕÓÔÁÎÏ×ÉÔØ \TL{} ÎÁ ÏÄÉÎ ËÏÍÐØÀÔÅÒ, Á ÚÁÔÅÍ +ÐÅÒÅÎÅÓÔÉ ×ÓÀ ÉÅÒÁÒÈÉÀ ÎÁ ÌÏËÁÌØÎÕÀ ÓÅÔØ. + +ðÏÄ Windows ÓËÒÉÐÔ ÄÌÑ ÕÓÔÁÎÏ×ËÉ ÓÉÓÔÅÍÙ × ÌÏËÁÌØÎÏÊ ÓÅÔÉ ÎÁÚÙ×ÁÅÔÓÑ +\filename{w32client} É ÎÁÈÏÄÉÔÓÑ ÎÁ +\url{http://tug.org/texlive/w32client.html}. ïÎ ÄÏÂÁ×ÌÑÅÔ Ë ÕÖÅ +ÕÓÔÁÎÏ×ÌÅÎÎÏÊ ÓÉÓÔÅÍÅ \TL{} ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÒÁÂÏÔÙ × ÌÏËÁÌØÎÏÊ ÓÅÔÉ +ÉÚÍÅÎÅÎÉÑ. åÓÔØ ÔÁËÖÅ ÓËÒÉÐÔ ÄÌÑ ÕÄÁÌÅÎÉÑ ÜÔÉÈ ÉÚÍÅÎÅÎÉÊ +\filename{w32unclient}. óÍ. ÂÏÌÅÅ ÐÏÄÒÏÂÎÏÅ ÏÐÉÓÁÎÉÅ ÎÁ ÓÔÒÁÎÉÃÅ +ÓËÒÉÐÔÁ ×ÙÛÅ. + + +\htmlanchor{tlportable} +\section{õÓÔÁÎÏ×ËÁ \TL\ ÎÁ ÆÌÅÛËÕ} +\label{sec:portable-tl} + +ïÐÃÉÑ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ \code{-portable} (ÉÌÉ ËÏÍÁÎÄÁ \code{V} × +ÔÅËÓÔÏ×ÏÍ ÒÅÖÉÍÅ, ÉÌÉ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÊ ÐÕÎËÔ ÍÅÎÀ × ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ) +ÓÏÚÄÁÅÔ ÓÉÓÔÅÍÕ, +ÎÁÈÏÄÑÝÕÀÓÑ ÐÏÌÎÏÓÔØÀ × Ó×ÏÅÊ ÄÉÒÅËÔÏÒÉÉ, É ÎÅ ÉÚÍÅÎÑÅÔ ËÏÎÆÉÇÕÒÁÃÉÉ +ËÏÍÐØÀÔÅÒÁ. ÷Ù ÍÏÖÅÔÅ ÕÓÔÁÎÏ×ÉÔØ ÔÁËÕÀ ÓÉÓÔÅÍÕ ÎÁ \USB{} ÆÌÅÛËÕ ÉÌÉ × +ÏÔÄÅÌØÎÕÀ ÄÉÒÅËÔÏÒÉÀ, Á ÐÏÔÏÍ ÓËÏÐÉÒÏ×ÁÔØ Å£ ÎÁ ÆÌÅÛËÕ. + +þÔÏÂÙ ÚÁÐÕÓÔÉÔØ \TeX\ Ó ÔÁËÏÊ ÆÌÅÛËÉ, ×ÁÍ ÎÕÖÎÏ ÄÏÂÁ×ÉÔØ ÄÉÒÅËÔÏÒÉÀ Ó +ÐÒÏÇÒÁÍÍÁÍÉ Ë ÐÕÔÑÍ ÐÏÉÓËÁ ÐÒÏÇÒÁÍÍ. ðÏÄ àÎÉËÓÏÍ ÜÔÏ ÄÅÌÁÅÔÓÑ ÐÒÉ +ÐÏÍÏÝÉ ÉÚÍÅÎÅÎÉÑ ÐÅÒÅÍÅÎÎÏÊ ÏËÒÕÖÅÎÉÑ \envname{PATH}. ðÏÄ Windows ×Ù +ÍÏÖÅÔÅ ÝÅÌËÎÕÔØ ÎÁ \filename{tl-tray-menu}, ÞÔÏÂÙ ×ÙÂÒÁÔØ ÉÚ +ÎÅÓËÏÌØËÉÈ ÓÔÁÎÄÁÒÔÎÙÈ ÚÁÄÁÞ, ËÁË ÐÏËÁÚÁÎÏ ÎÉÖÅ: + +\medskip +\tlpng{tray-menu}{4cm} +\smallskip + +\noindent íÅÎÀ <> ×ÙÚÙ×ÁÅÔ ÏËÏÛËÏ +Ó ÏÂßÑÓÎÅÎÉÅÍ, ËÁË ÄÏÂÁ×ÉÔØ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ×ÏÚÍÏÖÎÏÓÔÉ × ÍÅÎÀ. + +\htmlanchor{tlisoinstall} +\subsection{óÏÚÄÁÎÉÅ ÏÂÒÁÚÁ \ISO\ ÉÌÉ \DVD} +\label{sec:isoinstall} + +åÓÌÉ ×ÁÍ ÎÅ ÎÕÖÎÏ ÞÁÓÔÏ ÏÂÎÏ×ÌÑÔØ ÓÉÓÔÅÍÕ, É/ÉÌÉ Õ ×ÁÓ ÎÅÓËÏÌØËÏ +ÍÁÛÉÎ, ÎÁ ËÏÔÏÒÙÈ ×Ù ÈÏÔÉÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ \TL, ÔÏ ÄÌÑ ×ÁÓ ÍÏÖÅÔ +ÉÍÅÔØ ÓÍÙÓÌ ÓÏÚÄÁÔØ ÏÂÒÁÚ \ISO\ ÉÌÉ \DVD, ÔÁË ËÁË: + +\begin{itemize} +\item ëÏÐÉÒÏ×ÁÎÉÅ \ISO\ Ó ËÏÍÐØÀÔÅÒÁ ÎÁ ËÏÍÐØÀÔÅÒ ÂÙÓÔÒÅÅ, ÞÅÍ + ËÏÐÉÒÏ×ÁÎÉÅ ÏÂÙÞÎÏÊ ÓÉÓÔÅÍÙ. +\item åÓÌÉ ×Ù ÄÅÒÖÉÔÅ ÎÁ ÏÄÎÏÍ ËÏÍÐØÀÔÅÒÅ ÎÅÓËÏÌØËÏ ÏÐÅÒÁÃÉÏÎÎÙÈ + ÓÉÓÔÅÍ, É ÈÏÔÉÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÄÌÑ ÎÉÈ ÏÄÎÕ ËÏÐÉÀ \TL, ÔÏ ÓÏÚÄÁÔØ + ÏÂÒÁÚ ÄÉÓËÁ ÍÏÖÅÔØ ÂÙÔØ ÐÒÏÝÅ, ÞÅÍ ÕÞÉÔÙ×ÁÔØ ÏÓÏÂÅÎÎÏÓÔÉ É + ÏÇÒÁÎÉÞÅÎÉÑ ÆÁÊÌÏ×ÙÈ ÓÉÓÔÅÍ ÎÁ ÏÂÝÉÈ ÒÁÚÄÅÌÁÈ (\acro{FAT32}, + \acro{NTFS}, \acro{HFS+}). +\item ÷ÉÒÔÕÁÌØÎÙÅ ÍÁÛÉÎÙ ÍÏÇÕÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÏÂÒÁÚ ËÁË ×ÉÒÔÕÁÌØÎÙÊ + ÄÉÓË. +\end{itemize} + +òÁÚÕÍÅÅÔÓÑ, ×Ù ÍÏÖÅÔÅ ÔÁËÖÅ ÐÒÏÖÅÞØ ÒÅÁÌØÎÙÊ \DVD, ÅÓÌÉ ÜÔÏ ×ÁÍ +ÕÄÏÂÎÅÅ. + +äÅÓËÔÏÐÎÙÅ ×ÅÒÓÉÉ \GNU/Linux/Unix, ×ËÌÀÞÁÑ \MacOSX, ÕÍÅÀÔ ÍÏÎÔÉÒÏ×ÁÔØ +\ISO. ÷ ÏÓÔÁÌØÎÏÍ ÕÓÔÁÎÏ×ËÁ ÔÁËÁÑ ÖÅ, ËÁË ÐÒÉ ÕÓÔÁÎÏ×ËÅ ÎÁ ÖÅÓÔËÉÊ +ÄÉÓË, ÓÍ. ÒÁÚÄÅÌ~\ref{sec:env}. + +ðÒÉ ÕÓÔÁÎÏ×ËÅ ÎÁ \ISO\ ÉÍÅÅÔ ÓÍÙÓÌ ÎÅ ÄÅÌÁÔØ ÐÏÄÄÉÒÅËÔÏÒÉÀ ÄÌÑ ÇÏÄÁ +ÔÅËÕÝÅÊ ×ÅÒÓÉÉ, É ÕÓÔÁÎÁ×ÌÉ×ÁÔØ \filename{texmf-local} ÎÁ ÔÏÍ ÖÅ +ÕÒÏ×ÎÅÍ ÞÔÏ É ÄÒÕÇÉÅ ÄÅÒÅ×ØÑ (\filename{texmf}, \filename{texmf-dist}, +É Ô.\,Ä.). üÔÏ ÍÏÖÎÏ ÓÄÅÌÁÔØ ÐÒÉ ÐÏÍÏÝÉ ÏÐÃÉÊ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ. + +äÌÑ ÏÂÙÞÎÏÊ (ÎÅ ×ÉÒÔÕÁÌØÎÏÊ) ÍÁÛÉÎÙ ÐÏÄ Windows ×Ù ÍÏÖÅÔÅ ÐÒÏÖÅÞØ +\ISO\ ÎÁ \DVD. ïÄÎÁËÏ ×ÏÚÍÏÖÎÏ, ÞÔÏ ×ÁÍ ÂÕÄÅÔ ÕÄÏÂÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ +ÒÁÚÎÏÏÂÒÁÚÎÙÅ Ó×ÏÂÏÄÎÙÅ ÐÒÏÇÒÁÍÍÙ ÄÌÑ ÍÏÎÔÉÒÏ×ÁÎÉÑ ×ÉÒÔÕÁÌØÎÙÈ +ÄÉÓËÏ×. äÌÑ Windows \acro{XP} Microsoft ÒÅËÏÍÅÎÄÕÅÔ +\filename{winxpvirtualcdcontrolpanel}. + +äÌÑ ÌÕÞÛÅÇÏ ×ÚÁÉÍÏÄÅÊÓÔ×ÉÑ Ó ÓÉÓÔÅÍÏÊ, ×Ù ÍÏÖÅÔÅ ×ËÌÀÞÉÔØ ÓËÒÉÐÔÙ ÄÌÑ +\filename{w32client}, ÏÐÉÓÁÎÎÙÅ × ÒÁÚÄÅÌÅ~\ref{sec:sharedinstall} É ÎÁ +ÓÔÒÁÎÉÃÅ \url{http://tug.org/texlive/w32client.html}. ïÎÉ ÒÁÂÏÔÁÀÔ Ó +\ISO\ ÔÏÞÎÏ ÔÁË ÖÅ, ËÁË É Ó ÓÉÓÔÅÍÏÊ × ÌÏËÁÌØÎÏÊ ÓÅÔÉ. + +ðÏÄ \MacOSX\ TeXShop É \TeX{}works ÍÏÇÕÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÓÉÓÔÅÍÕ ÎÁ \DVD, +ÅÓÌÉ ÓÉÍÌÉÎË \filename{/usr/texbin} ÕËÁÚÙ×ÁÅÔ ÎÁ ÄÉÒÅËÔÏÒÉÀ Ó +ÐÒÏÇÒÁÍÍÁÍÉ ÄÌÑ ÎÕÖÎÏÊ ÁÒÈÉÔÅËÔÕÒÙ, ÎÁÐÒÉÍÅÒ +\begin{verbatim} +sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin +\end{verbatim} + +éÓÔÏÒÉÞÅÓËÁÑ ÓÐÒÁ×ËÁ: \TL{} 2010 ÂÙÌÁ ÐÅÒ×ÙÍ ÉÚÄÁÎÉÅÍ \TL, ËÏÔÏÒÙÊ ÎÅ +ÍÏÇ ÒÁÂÏÔÁÔØ ÎÅÐÏÓÒÅÓÔ×ÅÎÎÏ Ó ÄÉÓËÁ (<>). ïÄÎÁËÏ ÄÌÑ ÒÁÂÏÔÙ Ó +\DVD\ ÉÌÉ \ISO\ ×ÓÅÇÄÁ ÎÕÖÎÙ ÂÙÌÉ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÕÓÉÌÉÑ: ÎÁÐÒÉÍÅÒ, +ÎÅÏÂÈÏÄÉÍÏ ÂÙÌÏ ÕÓÔÁÎÏ×ÉÔØ ÈÏÔÑ ÂÙ ÏÄÎÕ ÐÅÒÅÍÅÎÎÕÀ ÏËÒÕÖÅÎÉÑ. åÓÌÉ ÂÙ +ÓÏÚÄÁÅÔÅ ÏÂÒÁÚ \ISO\ ÉÚ ÓÕÝÅÓÔ×ÕÀÝÅÊ ÓÉÓÔÅÍÙ, ÔÏ × ÜÔÏÍ ÎÅÔ ÎÕÖÄÙ. + +\section{áÄÍÉÎÉÓÔÒÉÒÏ×ÁÎÉÅ ÓÉÓÔÅÍÙ ÐÒÉ ÐÏÍÏÝÉ \cmdname{tlmgr}} +\label{sec:tlmgr} + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{\linewidth} +\caption{\prog{tlmgr} × ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ. óÐÉÓÏË + ÐÁËÅÔÏ×/ËÏÌÌÅËÃÉÊ/ÓÈÅÍ ÐÏÓÌÅ ÎÁÖÁÔÉÑ ÎÁ ËÌÁ×ÉÛÕ + <>}\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\hbox to \hsize{% + \vtop{\hsize=.59\linewidth + \null % make figures align at the top + \tlpng{tlmgr-general-options}{\hsize} + \caption{ðÒÏÇÒÁÍÍÁ \texttt{tlmgr} × ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ: ÇÌÁ×ÎÏÅ ÍÅÎÀ} + \label{fig:tlmgr-general-options} + } + \hfil + \vtop{\hsize=.39\linewidth + \null + \tlpng{tlmgr-paper-options}{\hsize} + \caption{ðÒÏÇÒÁÍÍÁ \texttt{tlmgr} × ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ: ÍÅÎÀ + ×ÙÂÏÒÁ ÒÁÚÍÅÒÁ ÂÕÍÁÇÉ} + \label{fig:tlmgr-paper-options} + } +} +\end{figure} + +÷ \TL{} ×ÈÏÄÉÔ ÐÒÏÇÒÁÍÍÁ \prog{tlmgr} ÄÌÑ ÁÄÍÉÎÉÓÔÒÉÒÏ×ÁÎÉÑ ÓÉÓÔÅÍÙ +ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ. ðÒÏÇÒÁÍÍÙ \prog{updmap}, \prog{fmtutil} É +\prog{texconfig} ×ÓÅ ÅÝ£ ÅÓÔØ × ÓÉÓÔÅÍÅ É ÂÕÄÕÔ ÔÁÍ × ÂÕÄÕÝÅÍ, ÎÏ +ÍÙ ÒÅËÏÍÅÎÄÕÅÍ ÔÅÐÅÒØ ÐÒÏÇÒÁÍÍÕ \prog{tlmgr}. óÒÅÄÉ Å£ ×ÏÚÍÏÖÎÏÓÔÅÊ: +\begin{itemize*} +\item ÕÓÔÁÎÏ×ËÁ, ÏÂÎÏ×ÌÅÎÉÅ, ÁÒÈÉ×ÉÒÏ×ÁÎÉÅ, ×ÏÓÓÔÁÎÏ×ÌÅÎÉÅ É ÕÄÁÌÅÎÉÅ + ÏÔÄÅÌØÎÙÈ ÐÁËÅÔÏ×, ÐÒÉ ÖÅÌÁÎÉÉ Ó ÕÞÅÔÏÍ ÚÁ×ÉÓÉÍÏÓÔÅÊ ÍÅÖÄÕ ÎÉÍÉ; +\item ÐÏÉÓË É ÐÅÒÅÞÉÓÌÅÎÉÅ ÐÁËÅÔÏ×; +\item ÐÅÒÅÞÉÓÌÅÎÉÅ, ÄÏÂÁ×ÌÅÎÉÅ É ÕÄÁÌÅÎÉÅ ÐÌÁÔÆÏÒÍ; +\item ÉÚÍÅÎÅÎÉÅ ÐÁÒÁÍÅÔÒÏ× ÓÉÓÔÅÍÙ, ÎÁÐÒÉÍÅÒ, ÒÁÚÍÅÒÁ ÂÕÍÁÇÉ É + ÉÓÔÏÞÎÉËÁ ÕÓÔÁÎÏ×ËÉ (ÓÍ. ÒÁÚÄÅÌ~\ref{sec:location}). +\end{itemize*} + +\subsection{ðÒÏÇÒÁÍÍÁ \cmdname{tlmgr} × ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ} +ðÒÏÇÒÁÍÍÁ \prog{tlmgr} ÍÏÖÅÔ ÂÙÔØ ÚÁÐÕÝÅÎÁ × ÇÒÁÆÉÞÅÓËÏÍ ÒÅÖÉÍÅ: +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +ÉÌÉ ÎÁ Windows ÉÚ ÍÅÎÀ Start: \texttt{Start}, \texttt{Programs}, +\texttt{TeX Live 2012}, \texttt{TeX Live Manager}. ðÏÓÌÅ ÎÁÖÁÔÉÑ ÎÁ +ËÌÁ×ÉÛÕ <>, ÏÎÁ ÐÏËÁÚÙ×ÁÅÔ ÓÐÉÓÏË ÄÏÓÔÕÐÎÙÈ É ÕÓÔÁÎÏ×ÌÅÎÎÙÈ +ÐÁËÅÔÏ×. üÔÏ, ÒÁÚÕÍÅÅÔÓÑ, ÐÒÏÉÓÈÏÄÉÔ ÐÒÉ ÕÓÌÏ×ÉÉ, ÞÔÏ ÉÓÔÏÞÎÉË +ÕÓÔÁÎÏ×ËÉ ÄÏÓÔÕÐÅÎ. + +îÁ ÒÉÓÕÎËÁÈ~\ref{fig:tlmgr-general-options} É~\ref{fig:tlmgr-paper-options} +ÐÏËÁÚÁÎÙ ÇÌÁ×ÎÏÅ ÍÅÎÀ É ÍÅÎÀ ×ÙÂÏÒÁ ÒÁÚÍÅÒÁ ÂÕÍÁÇÉ. + +\subsection{ðÒÉÍÅÒÙ ÚÁÐÕÓËÁ ÐÒÏÇÒÁÍÍÙ \cmdname{tlmgr} ÉÚ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ} + +ðÏÓÌÅ ÐÅÒ×ÏÎÁÞÁÌØÎÏÊ ÕÓÔÁÎÏ×ËÉ ×Ù ÍÏÖÅÔÅ ÏÂÎÏ×ÉÔØ ÓÉÓÔÅÍÕ ÄÏ ÐÏÓÌÅÄÎÉÈ +×ÅÒÓÉÊ, ÉÍÅÀÝÉÈÓÑ ÎÁ ÓÅÔÉ: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +åÓÌÉ ×Ù ÈÏÔÉÔÅ ÓÎÁÞÁÌÁ ÐÏÓÍÏÔÒÅÔØ, ÞÔÏ ÉÍÅÎÎÏ ÂÕÄÅÔ ÏÂÎÏ×ÌÑÔØÓÑ, +ÐÏÐÒÏÂÕÊÔÅ ÓÎÁÞÁÌÁ +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +ÉÌÉ (ÎÅ ÔÁË ÍÎÏÇÏÓÌÏ×ÎÏ): +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} + +÷ ÂÏÌÅÅ ÓÌÏÖÎÏÍ ÐÒÉÍÅÒÅ ÍÙ ÄÏÂÁ×ÌÑÅÍ ÎÏ×ÕÀ ËÏÌÌÅËÃÉÀ (\XeTeX) ÉÚ +ÌÏËÁÌØÎÏÊ ÄÉÒÅËÔÏÒÉÉ: + +\begin{alltt} +> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +÷ ÒÅÚÕÌØÔÁÔÅ ÓÉÓÔÅÍÁ ÐÅÞÁÔÁÅÔ ÓÌÅÄÕÀÝÅÅ (ÍÎÏÇÉÅ ÓÔÒÏËÉ ÕÄÁÌÅÎÙ ÄÌÑ +ËÒÁÔËÏÓÔÉ): +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2012/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} + +ëÁË ×Ù ×ÉÄÉÔÅ, \prog{tlmgr} ÕÞÉÔÙ×ÁÅÔ ÚÁ×ÉÓÉÍÏÓÔÉ ÍÅÖÄÕ ÐÁËÅÔÁÍÉ, É +ÓÁÍÁ ÄÅÌÁÅÔ ÎÕÖÎÙÅ ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ÛÁÇÉ, ×ËÌÀÞÁÑ ÏÂÎÏ×ÌÅÎÉÅ ÂÁÚÙ ÉÍÅÎ +ÆÁÊÌÏ× É ÐÅÒÅÇÅÎÅÒÉÒÏ×ÁÎÉÅ ÆÏÒÍÁÔÏ×. ÷ ÐÒÉÍÅÒÅ ×ÙÛÅ ÏÎÁ ÓÏÚÄÁÌÁ +ÎÏ×ÙÅ ÆÏÒÍÁÔÙ ÄÌÑ ÐÒÏÇÒÁÍÍÙ \XeTeX. + +ïÐÉÓÁÎÉÅ ÐÁËÅÔÁ (ÉÌÉ ËÏÌÌÅËÃÉÉ ÉÌÉ ÓÈÅÍÙ): +\begin{alltt} +> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +ÞÔÏ ÄÁÅÔ +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +é ÎÁËÏÎÅÃ, ÐÏÌÎÁÑ ÄÏËÕÍÅÎÔÁÃÉÑ ÎÁÈÏÄÉÔÓÑ ÐÏ ÁÄÒÅÓÕ +\url{http://tug.org/texlive/tlmgr.html} ÉÌÉ ×ÙÚÙ×ÁÅÔÓÑ ËÏÍÁÎÄÏÊ +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + + + +\section{äÏÐÏÌÎÉÔÅÌØÎÙÅ ÚÁÍÅÞÁÎÉÑ Ï Windows} +\label{sec:windows} + + +\subsection{äÏÐÏÌÎÉÔÅÌØÎÙÅ ×ÏÚÍÏÖÎÏÓÔÉ Windows} +\label{sec:winfeatures} + +ðÏÄ Windows ÐÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ ÄÅÌÁÅÔ ÎÅÓËÏÌØËÏ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ×ÅÝÅÊ: +\begin{description} +\item[íÅÎÀ É ÑÒÌÙËÉ.] õÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ ÐÏÄÍÅÎÀ <<\TL{}>> ÍÅÎÀ + <>, ËÏÔÏÒÏÅ ÓÏÄÅÒÖÉÔ ÎÅËÏÔÏÒÙÅ ÐÒÏÇÒÁÍÍÙ (\prog{tlmgr}, + \prog{texdoctk}, ÐÒÏÇÒÁÍÍÁ PS\_View (\prog{psv}) ÄÌÑ ÐÒÏÓÍÏÔÒÁ + ÆÁÊÌÏ× × ÆÏÒÍÁÔÅ PostScript) É ÄÏËÕÍÅÎÔÁÃÉÀ. +\item[ðÒÏÇÒÁÍÍÙ ÐÏ ÕÍÏÌÞÁÎÉÀ.] ðÒÉ ÎÅÏÂÈÏÄÉÏÓÔÉ, ÐÒÏÇÒÁÍÍÙ + \prog{TeXworks}, \prog{Dviout} É \prog{PS\_view} ÓÔÁÎÏ×ÑÔÓÑ + ÐÒÏÇÒÁÍÍÁÍÉ ÐÏ ÕÍÏÌÞÁÎÉÀ ÄÌÑ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ ÔÉÐÏ× ÆÁÊÌÏ× ÉÌÉ + ÚÁÎÏÓÑÔÓÑ × ÍÅÎÀ <<ïÔËÒÙÔØ ÐÒÉ ÐÏÍÏÝÉ...>> ÄÌÑ ÜÔÉÈ ÆÁÊÌÏ×. +\item[ëÏÎ×ÅÒÔÉÒÏ×ÁÎÉÅ ÇÒÁÆÉËÉ × ÆÏÒÍÁÔ eps.] ÷ ÍÅÎÀ <<ïÔËÒÙÔØ ÐÒÉ + ÐÏÍÏÝÉ...> ÄÌÑ ÇÒÁÆÉÞÅÓËÉÈ ÆÁÊÌÏ× ÄÏÂÁ×ÌÑÅÔÓÑ ËÏÍÁÎÄÁ + \cmdname{bitmap2eps}. üÔÏ ÐÒÏÓÔÏÊ ÓËÒÉÐÔ, ËÏÔÏÒÙÊ ×ÙÚÙ×ÁÅÔ + ÐÒÏÇÒÁÍÍÙ \cmdname{sam2p} ÉÌÉ \cmdname{bmeps} ÄÌÑ ËÏÎ×ÅÒÔÉÒÏ×ÁÎÉÑ + ÇÒÁÆÉËÉ. +\item[á×ÔÏÍÁÔÉÞÅÓËÁÑ ÕÓÔÁÎÏ×ËÁ ÐÅÒÅÍÅÎÎÙÈ ÏËÒÕÖÅÎÉÑ.] ÷ÓÅ ÐÅÒÅÍÅÎÎÙÅ + ÏËÒÕÖÅÎÉÑ ÕÓÔÁÎÁ×ÌÉ×ÁÀÔÓÑ Á×ÔÏÍÁÔÉÞÅÓËÉ. +\item[õÄÁÌÅÎÉÅ ÓÉÓÔÅÍÙ.] ðÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ ÓÏÚÄÁÅÔ × ÍÅÎÀ + <> ÚÁÐÉÓØ <<\TL{}>>. ëÌÁ×ÉÛÁ <<ÕÄÁÌÉÔØ>> × + ÍÅÎÀ \prog{tlmgr} ×ÙÚÙ×ÁÅÔ ÕÄÁÌÅÎÉÅ ÓÉÓÔÅÍÙ. +\end{description} + + + +\subsection{äÏÐÏÌÎÉÔÅÌØÎÙÅ ÐÁËÅÔÙ ÄÌÑ Windows} + + + +äÌÑ ÐÏÌÎÏÔÙ ÄÉÓÔÒÉÂÕÔÉ×Õ \TL ÎÅÏÂÈÏÄÉÍÙ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÐÁËÅÔÙ, +ËÏÔÏÒÙÅ ÏÂÙÞÎÏ ÎÅ ×ÓÔÒÅÞÁÀÔÓÑ ÎÁ ÍÁÛÉÎÅ ÐÏÄ Windows. ÷ \TL{} ÅÓÔØ +ÎÅÄÏÓÔÁÀÝÉÅ ÐÒÏÇÒÁÍÍÙ É ÐÁËÅÔÙ: +\begin{description} +\item[Perl É Ghostscript.] ÷×ÉÄÕ ×ÁÖÎÏÓÔÉ ÜÔÉÈ ÐÒÏÇÒÁÍÍ, \TL{} + ×ËÌÀÞÁÅÔ ÉÈ <<ÓËÒÙÔÙÅ>> ËÏÐÉÉ. ðÒÏÇÒÁÍÍÙ \TL{}, ËÏÔÏÒÙÍ ÏÎÉ ÎÕÖÎÙ, + ÚÎÁÀÔ, ÇÄÅ ÉÈ ÎÁÊÔÉ, ÎÏ ÏÎÉ ÎÅ ×ÙÄÁÀÔ ÉÈ ÐÒÉÓÕÔÓÔ×ÉÑ ÓÉÓÔÅÍÅ ÞÅÒÅÚ + ÐÅÒÅÍÅÎÎÙÅ ÏËÒÕÖÅÎÉÑ ÉÌÉ ÒÅÇÉÓÔÒ. üÔÏ ÕÓÅÞÅÎÎÙÅ ×ÁÒÉÁÎÔÙ ÐÒÏÇÒÁÍÍ + Perl É Ghostscript, É ÏÎÉ ÎÅ ÄÏÌÖÎÙ ÚÁÍÅÝÁÔØ ÓÉÓÔÅÍÎÙÅ ×ÅÒÓÉÉ. + +\item[PS\_View.] ôÁËÖÅ ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ PS\_View, ÐÒÏÇÒÁÍÍÁ ÄÌÑ + ÐÒÏÓÍÏÔÒÁ ÆÁÊÌÏ× × ÆÏÒÍÁÔÁÈ \PS{} É \acro{PDF}, + ÓÍ. ÒÉÓÕÎÏË~\ref{fig:psview}. + +\begin{figure}[tb] +\tlpng{psview}{.6\linewidth} +\caption{PS\_View: ÐÒÏÇÒÁÍÍÁ ÕÍÅÅÔ ÐÏËÁÚÙ×ÁÔØ ÆÁÊÌÙ ÐÏÄ ÂÏÌØÛÉÍ + Õ×ÅÌÉÞÅÎÉÅÍ!}\label{fig:psview} +\end{figure} + +\item[dviout.] ôÁËÖÅ ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ \prog{dviout}, ÐÒÏÇÒÁÍÍÁ ÄÌÑ + ÐÒÏÓÍÏÔÒÁ ÆÁÊÌÏ× × ÆÏÒÍÁÔÅ \acro{DVI}. ðÒÉ ÐÅÒ×ÏÍ ÚÁÐÕÓËÅ ÐÒÏÇÒÁÍÍÙ + ÏÎÁ ÓÏÚÄÁÅÔ ÛÒÉÆÔÙ ÄÌÑ ÐÒÏÓÍÏÔÒÁ ÆÁÊÌÏ×. åÓÌÉ ×Ù ÂÕÄÅÔÅ + ÐÏÌØÚÏ×ÁÔØÓÑ ÅÊ ÎÅËÏÔÏÒÏÅ ×ÒÅÍÑ, ÏÎÁ ÓÏÚÄÁÓÔ ÐÒÁËÔÉÞÅÓËÉ ×ÓÅ ÎÕÖÎÙÅ + ×ÁÍ ÛÒÉÆÔÙ, É ÏËÎÏ ÓÏÚÄÁÎÉÑ ÛÒÉÆÔÏ× ÂÕÄÅÔ ÐÏÑ×ÌÑÔØÓÑ ×ÓÅ ÒÅÖÅ. + äÏÐÏÌÎÉÔÅÌØÎÁÑ ÉÎÆÏÒÍÁÃÉÑ Ï ÐÒÏÇÒÁÍÍÅ ÓÏÄÅÒÖÉÔÓÑ × (ÏÞÅÎØ ÈÏÒÏÛÅÍ) + ÍÅÎÀ Help. + + +\item[TeXworks.] \TeX{}works "---~ÜÔÏ ÒÅÄÁËÔÏÒ ÄÌÑ \TeX Á ÓÏ + ×ÓÔÒÏÅÎÎÏÊ ÐÒÏÇÒÁÍÍÏÊ ÄÌÑ ÐÒÏÓÍÏÔÒÁ \acro{PDF}. ïÎ ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ + ÕÖÅ ÎÁÓÔÒÏÅÎÎÙÍ ÄÌÑ \TL. + + + +\item[õÔÉÌÉÔÙ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ.] ÷ÍÅÓÔÅ Ó ÐÒÏÇÒÁÍÍÁÍÉ \TL{} + ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ ÒÑÄ ÐÏÒÔÉÒÏ×ÁÎÎÙÈ ÐÏÄ Windows ÓÔÁÎÄÁÒÔÎÙÈ + ÀÎÉËÓÏ×ÓËÉÈ ÕÔÉÌÉÔ: \cmdname{gzip}, \cmdname{unzip} É ÐÒÏÇÒÁÍÍÙ ÉÚ + ÎÁÂÏÒÁ \cmdname{xpdf}. óÁÍ \cmdname{xpdf} ÐÏÄ Windows ÎÅ ÒÁÂÏÔÁÅÔ, + ÎÏ ×Ù ÍÏÖÅÔÅ ÓËÁÞÁÔØ ÏÓÎÏ×ÁÎÎÕÀ ÎÁ ÅÇÏ ËÏÄÅ ÐÒÏÇÒÁÍÍÕ Sumatra: + \url{http://blog.kowalczyk.info/software/sumatrapdf}.) + +\item[fc-list, fc-cache É Ô.Ä.] üÔÉ ÐÒÏÇÒÁÍÍÙ ÉÚ ÂÉÂÌÉÏÔÅËÉ + \prog{fontconfig} ÐÏÍÏÇÁÀÔ \XeTeX Õ ÒÁÂÏÔÁÔØ ÓÏ ÛÒÉÆÔÁÍÉ ÐÏÄ + Windows. ÷Ù ÍÏÖÅÔÅ ÏÐÒÅÄÅÌÉÔØ ÎÁÚ×ÁÎÉÑ ÛÒÉÆÔÏ× ÄÌÑ ËÏÍÁÎÄÙ + \cs{font} ÐÒÉ ÐÏÍÏÝÉ ÐÒÏÇÒÁÍÍÙ \prog{fc-list}. åÓÌÉ ÎÕÖÎÏ, ×ÙÚÏ×ÉÔÅ + ÓÎÁÞÁÌÁ ÐÒÏÇÒÁÍÍÕ \prog{fc-cache}, ÞÔÏÂÙ ÏÂÎÏ×ÉÔØ ÉÎÆÏÒÍÁÃÉÀ Ï + ÛÒÉÆÔÁÈ. + +\end{description} + + +\subsection{äÏÍÁÛÎÑÑ ÄÉÒÅËÔÏÒÉÑ ÐÏÄ Windows} +\label{sec:winhome} + +áÎÁÌÏÇÏÍ ÄÏÍÁÛÎÅÊ ÄÉÒÅËÔÏÒÉÉ ÐÏÄ UNIX Ñ×ÌÑÅÔÓÑ ÄÉÒÅËÔÏÒÉÑ +\verb|%USERPROFILE%|. ðÏÄ Windows \acro{XP} ÜÔÏ ÏÂÙÞÎÏ +\verb|C:\Documents and Settings\|, Á ÐÏÄ Windows Vista É +Windows~7 "--- +\verb|C:\Users\|. ÷ ÆÁÊÌÅ \filename{texmf.cnf} É ×ÏÏÂÝÅ ÐÒÉ +ÒÁÂÏÔÅ \KPS{}, ÔÉÌØÄÁ \verb|~| ÐÒÁ×ÉÌØÎÏ ÉÎÔÅÒÐÒÅÔÉÒÕÅÔÓÑ ËÁË ÄÏÍÁÛÎÑÑ +ÄÉÒÅËÔÏÒÉÑ ÐÏÌØÚÏ×ÁÔÅÌÑ É ÐÏÄ Windows, É +ÐÏÄ UNIX. + +\subsection{òÅÇÉÓÔÒ Windows} +\label{sec:registry} + +Windows ÈÒÁÎÉÔ ÐÏÞÔÉ ×ÓÅ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÄÁÎÎÙÅ × ÒÅÇÉÓÔÒÅ. òÅÇÉÓÔÒ +ÓÏÄÅÒÖÉÔ ÎÁÂÏÒ ÉÅÒÁÒÈÉÞÅÓËÉ ÏÒÇÁÎÉÚÏ×ÁÎÎÙÈ ÚÁÐÉÓÅÊ, Ó ÎÅÓËÏÌØËÉÍÉ +ËÏÒÎÅ×ÙÍÉ ÚÁÐÉÓÑÍÉ. îÁÉÂÏÌÅÅ ×ÁÖÎÙ ÄÌÑ ÐÒÏÇÒÁÍÍ ÕÓÔÁÎÏ×ËÉ ÚÁÐÉÓÉ +\path{HKEY_CURRENT_USER} É \path{HKEY_LOCAL_MACHINE}, ÓÏËÒÁÝÅÎÎÏ +\path{HKCU} É \path{HKLM}. ëÁË ÐÒÁ×ÉÌÏ, \path{HKCU} ÎÁÈÏÄÉÔÓÑ × +ÄÏÍÁÛÎÅÊ ÄÉÒÅËÔÏÒÉÉ ÐÏÌØÚÏ×ÁÔÅÌÑ (ÓÍ. ÒÁÚÄÅÌ~\ref{sec:winhome}), Á +\path{HKLM} "--- ÐÏÄÄÉÒÅËÔÏÒÉÑ ÄÉÒÅËÔÏÒÉÉ Windows. + +éÎÏÇÄÁ ËÏÎÆÉÇÕÒÁÃÉÑ ÓÉÓÔÅÍÙ ÏÐÒÅÄÅÌÑÅÔÓÑ ÐÅÒÅÍÅÎÎÙÍÉ ÏËÒÕÖÅÎÉÑ, ÎÏ +ÎÅËÏÔÏÒÙÅ ×ÅÝÉ (ÎÁÐÒÉÍÅÒ, ÐÏÌÏÖÅÎÉÅ ÑÒÌÙËÏ×) ÚÁÄÁÀÔÓÑ × ÒÅÇÉÓÔÒÅ. äÌÑ +ÔÏÇÏ, ÞÔÏÂÙ ÐÅÒÍÁÎÅÎÔÎÏ ÚÁÄÁÔØ ÐÅÒÅÍÅÎÎÙÅ ÏËÒÕÖÅÎÉÑ, ÔÁËÖÅ ÎÕÖÅÎ +ÄÏÓÔÕÐ Ë ÒÅÇÉÓÔÒÕ. + +\subsection{ðÒÁ×Á ÄÏÓÔÕÐÁ ÐÏÄ Windows} +\label{sec:winpermissions} + +÷ ÐÏÚÄÎÉÈ ×ÅÒÓÉÑÈ Windows ÄÅÌÁÅÔÓÑ ÒÁÚÌÉÞÉÅ ÍÅÖÄÕ ÏÂÙÞÎÙÍÉ +ÐÏÌØÚÏ×ÁÔÅÌÑÍÉ É ÁÄÍÉÎÉÓÔÒÁÔÏÒÁÍÉ, ÐÒÉÞÅÍ ÔÏÌØËÏ ÐÏÓÌÅÄÎÉÅ ÉÍÅÀÔ ÐÒÁ×Ï +ÄÏÓÔÕÐÁ ËÏ ×ÓÅÊ ÏÐÅÒÁÃÉÏÎÎÏÊ ÓÉÓÔÅÍÅ. îÁ ÐÒÁËÔÉËÅ ÏÄÎÁËÏ ÂÙÌÏ ÂÙ +ÂÏÌÅÅ ÐÒÁ×ÉÌØÎÏ ÏÐÉÓÙ×ÁÔØ ÜÔÉ ËÌÁÓÓÙ ÐÏÌØÚÏ×ÁÔÅÌÅÊ ËÁË +<<ÎÅÐÒÉ×ÉÌÅÇÉÒÏ×ÁÎÎÙÅ ÐÏÌØÚÏ×ÁÔÅÌÉ>> É <<ÏÂÙÞÎÙÅ ÐÏÌØÚÏ×ÁÔÅÌÉ>>: ÐÒÁ×Á +ÁÄÍÉÎÉÓÔÒÁÔÏÒÁ Ñ×ÌÑÀÔÓÑ ÐÒÁ×ÉÌÏÍ, Á ÎÅ ÉÓËÌÀÞÅÎÉÅÍ. ïÄÎÁËÏ ÍÙ +ÐÏÓÔÁÒÁÌÉÓØ ÓÄÅÌÁÔØ ×ÏÚÍÏÖÎÙÍ ÕÓÔÁÎÏ×ËÕ \TL{} ÂÅÚ ÐÒÁ× +ÁÄÍÉÎÉÓÔÒÁÔÏÒÁ. + +åÓÌÉ ÐÏÌØÚÏ×ÁÔÅÌØ Ñ×ÌÑÅÔÓÑ ÁÄÍÉÎÉÓÔÒÁÔÏÒÏÍ, ÏÎ ÍÏÖÅÔ ÕÓÔÁÎÏ×ÉÔØ \TL{} +ÄÌÑ ×ÓÅÈ ÐÏÌØÚÏ×ÁÔÅÌÅÊ. ÷ ÜÔÏÍ ÓÌÕÞÁÅ ÑÒÌÙËÉ ÓÏÚÄÁÀÔÓÑ Õ ×ÓÅÈ +ÐÏÌØÚÏ×ÁÔÅÌÅÊ, É ÍÏÄÉÆÉÃÉÒÕÀÔÓÑ ÓÉÓÔÅÍÎÙÅ ÐÁÒÁÍÅÔÒÙ. ÷ ÐÒÏÔÉ×ÎÏÍ +ÓÌÕÞÁÅ ÑÒÌÙËÉ É ÍÅÎÀ ÓÏÚÄÁÀÔÓÑ ÔÏÌØËÏ ÄÌÑ ÔÅËÕÝÅÇÏ ÐÏÌØÚÏ×ÁÔÅÌÑ, É +ÍÏÄÉÆÉÃÉÒÕÀÔÓÑ ÅÇÏ ÐÁÒÁÍÅÔÒÙ. + +÷ÎÅ ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÓÔÁÔÕÓÁ ÐÏÌØÚÏ×ÁÔÅÌÑ, ËÏÒÅÎØ ÕÓÔÁÎÏ×ËÉ \TL{}, +ÐÒÅÄÌÁÇÁÅÍÙÊ ÐÏ ÕÍÏÌÞÁÎÉÀ, ×ÓÅÇÄÁ ÎÁÈÏÄÉÔÓÑ ÐÏÄ +\verb|%SystemDrive%|. ðÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ËÉ ×ÓÅÇÄÁ ÐÒÏ×ÅÒÑÅÔ, ÏÔËÒÙÔÁ +ÌÉ ËÏÒÎÅ×ÁÑ ÄÉÒÅËÔÏÒÉÑ ÎÁ ÚÁÐÉÓØ ÄÌÑ ÔÅËÕÝÅÇÏ ÐÏÌØÚÏ×ÁÔÅÌÑ. + +íÏÖÅÔ ×ÏÚÎÉËÎÕÔØ ÐÒÏÂÌÅÍÁ, ÅÓÌÉ Õ ÐÏÌØÚÏ×ÁÔÅÌÑ ÎÅÔ ÐÒÁ× +ÁÄÍÉÎÉÓÔÒÁÔÏÒÁ, Á × ÐÕÔÉ ÐÏÉÓËÁ ÕÖÅ ÅÓÔØ \TeX{}. ðÏÓËÏÌØËÕ × ÐÕÔÉ +ÐÏÉÓËÁ ÓÉÓÔÅÍÎÙÊ ÐÕÔØ ÓÔÏÉÔ ÐÅÒÅÄ ÐÕÔÅÍ ÐÏÌØÚÏ×ÁÔÅÌÑ, \TeX{} ÉÚ \TL{} +ÎÅ ÂÕÄÅÔ ÎÁÊÄÅÎ. þÔÏÂÙ ÏÂÏÊÔÉ ÜÔÕ ÐÒÏÂÌÅÍÕ, ÐÒÏÇÒÁÍÍÁ × ÔÁËÏÍ ÓÌÕÞÁÅ +ÓÏÚÄÁÅÔ ÑÒÌÙË Ó ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÏÊ, × ËÏÔÏÒÏÊ ÄÉÒÅËÔÏÒÉÑ \TL{} ÓÔÏÉÔ +ÐÅÒ×ÏÊ × ÐÕÔÉ ÐÏÉÓËÁ. éÚ ÜÔÏÊ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ ÍÏÖÎÏ ÐÏÌØÚÏ×ÁÔØÓÑ +\TL{}. ñÒÌÙË ÄÌÑ \TeX{}works, ÅÓÌÉ ÜÔÁ ÐÒÏÇÒÁÍÍÁ ÕÓÔÁÎÏ×ÌÅÎÁ, ÔÁËÖÅ +ÄÏÂÁ×ÌÑÅÔ ÄÉÒÅËÔÏÒÉÉ \TL{} × ÎÁÞÁÌÏ ÐÕÔÉ ÐÏÉÓËÁ. + +õ Windows Vista É Windows~7 ÅÓÔØ ÅÝ£ ÏÄÎÁ ÏÓÏÂÅÎÎÏÓÔØ: ÄÁÖÅ ÅÓÌÉ ×Ù Ñ×ÌÑÅÔÅÓØ +ÁÄÍÉÎÉÓÔÒÁÔÏÒÏÍ, ×ÁÍ ÎÕÖÎÏ ÏÔÄÅÌØÎÏ ÕËÁÚÁÔØ ÁÄÍÉÎÉÓÔÒÁÔÉ×ÎÙÅ ÐÒÁ×Á ÐÒÉ +ÚÁÐÕÓËÅ ÐÒÏÇÒÁÍÍ. ðÏÜÔÏÍÕ ÎÅ ÉÍÅÅÔ ÏÓÏÂÏÇÏ ÓÍÙÓÌÁ ÚÁÈÏÄÉÔØ × ÓÉÓÔÅÍÕ +ËÁË ÁÄÍÉÎÉÓÔÒÁÔÏÒ: ×ÍÅÓÔÏ ÜÔÏÇÏ, ÝÅÌËÎÕ× ÐÒÁ×ÏÊ ËÌÁ×ÉÛÅÊ ÍÙÛÉ ÎÁ +ÑÒÌÙË, ×ÙÂÅÒÉÔÅ ÉÚ ÍÅÎÀ <>. + +\subsubsection{õ×ÅÌÉÞÅÎÉÅ ÐÒÅÄÏÓÔÁ×ÌÑÅÍÏÊ ÐÁÍÑÔÉ ÐÏÄ Windows É Cygwin} +\label{sec:cygwin-maxmem} + +ðÏÌØÚÏ×ÁÔÅÌÉ Windows É Cygwin (ÓÍ. ÒÁÚÄÅÌ~\ref{sec:cygwin} Ï +ÏÓÏÂÅÎÎÏÓÔÑÈ ÕÓÔÁÎÏ×ËÉ ÐÏÄ Cygwin) ÍÏÇÕÔ ÏÂÎÁÒÕÖÉÔØ, ÞÔÏ ÄÌÑ +ÎÅËÏÔÏÒÙÈ ÐÒÏÇÒÁÍÍ \TL{} ÎÅ È×ÁÔÁÅÔ ÏÐÅÒÁÔÉ×ÎÏÊ ÐÁÍÑÔÉ. îÁÐÒÉÍÅÒ, +ÐÒÏÇÒÁÍÍÁ \prog{asy} ÍÏÖÅÔ ÎÅ ÚÁÐÕÓÔÉÔØÓÑ, ÅÓÌÉ ×ÁÍ ÎÕÖÎÏ ÒÁÚÍÅÓÔÉÔØ +ÍÁÓÓÉ× × 25\,000\,000 ÞÉÓÌÅ Ó ÐÌÁ×ÁÀÝÅÊ ÔÏÞËÏÊ, Á Lua\TeX{} ÍÏÖÅÔ ÎÅ +ÓÐÒÁ×ÉÔØÓÑ Ó ÄÏËÕÍÅÎÔÏÍ, × ËÏÔÏÒÏÍ ÍÎÏÇÏ ÒÁÚÎÙÈ ÛÒÉÆÔÏ×. + +ðÏÄ Cygwin ÍÏÖÎÏ Õ×ÅÌÉÞÉÔØ ÉÓÐÏÌØÚÕÅÍÙÊ ÏÂßÅÍ ÐÁÍÑÔÉ, ÅÓÌÉ +×ÏÓÐÏÌØÚÏ×ÁÔØÓÑ ÉÎÓÔÒÕËÃÉÑÍÉ × òÕËÏ×ÏÄÓÔ×Å ÐÏÌØÚÏ×ÁÔÅÌÑ Cygwin +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +ðÏÄ Windows ÎÕÖÎÏ ÓÏÚÄÁÔØ ÆÁÊÌ, ÓËÁÖÅÍ, \code{moremem.reg}, ÓÏ +ÓÌÅÄÕÀÝÉÍÉ ÞÅÔÙÒØÍÑ ÓÔÒÏËÁÍÉ: + +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +\noindent Á ÚÁÔÅÍ ×ÙÐÏÌÎÉÔØ ËÁË ÁÄÍÉÎÉÓÔÒÁÔÏÒ ËÏÍÁÎÄÕ \code{regedit /s + moremem.reg}. åÓÌÉ ×Ù ÈÏÔÉÔÅ ÉÚÍÅÎÉÔØ ÜÔÏÔ ÐÁÒÁÍÅÔÒ ÔÏÌØËÏ ÄÌÑ +ÔÅËÕÝÅÇÏ ÐÏÌØÚÏ×ÁÔÅÌÑ, ÔÏ × ÔÒÅÔØÅÊ ÓÔÒÏËÅ ÎÁÄÏ ÎÁÐÉÓÁÔØ +\code{HKEY\_CURRENT\_USER}. + + +\section{òÕËÏ×ÏÄÓÔ×Ï ÐÏÌØÚÏ×ÁÔÅÌÑ Web2C} + +\Webc{} "--- ÜÔÏ ÉÎÔÅÇÒÉÒÏ×ÁÎÎÁÑ ËÏÌÌÅËÃÉÑ ÐÒÏÇÒÁÍÍ, ÏÔÎÏÓÑÝÉÈÓÑ Ë +\TeX{}Õ: ÓÁÍ \TeX{}, \MF{}, \MP, \BibTeX{}, É Ô.Ä. üÔÏ ÓÅÒÄÃÅ +\TL{}. óÔÒÁÎÉÃÁ \Webc{} Ó ÒÕËÏ×ÏÄÓÔ×ÏÍ ÐÏÌØÚÏ×ÁÔÅÌÑ É ÍÎÏÇÉÍ ÄÒÕÇÉÍ +ÎÁÈÏÄÉÔÓÑ ÎÁ \url{http://tug.org/web2c}. + +îÅÍÎÏÇÏ ÉÓÔÏÒÉÉ. ðÅÒ×ÁÑ ×ÅÒÓÉÑ ÐÒÏÇÒÁÍÍÙ ÂÙÌÁ ÎÁÐÉÓÁÎÁ ôÏÍÁÓÏÍ +òÏËÉËÉ, ËÏÔÏÒÙÊ × 1987 ÇÏÄÕ ÓÏÚÄÁÌ ÓÉÓÔÅÍÕ \TeX{}-to-C, ÁÄÁÐÔÉÒÏ×Á× +ÐÁÔÞÉ ÄÌÑ UNIX, ÒÁÚÒÁÂÏÔÁÎÎÙÅ × ÏÓÎÏ×ÎÏÍ çÏ×ÁÒÄÏÍ ôÒÉËÉ É ðÁ×ÌÏÍ +ëÕÒÔÉÓÏÍ. ôÉÍ íÏÒÇÁÎ ÓÔÁÌ ÐÏÄÄÅÒÖÉ×ÁÔØ ÓÉÓÔÅÍÕ, É × ÜÔÏÔ ÐÅÒÉÏÄ Å£ +ÎÁÚ×ÁÎÉÅ ÓÍÅÎÉÌÏÓØ ÎÁ Web-to-C\@. ÷ 1990 ÇÏÄÕ ëÁÒÌ âÅÒÒÉ ×ÚÑÌ ÎÁ ÓÅÂÑ +ÜÔÏÔ ÐÒÏÅËÔ, ËÏÏÒÄÉÎÉÒÕÑ ÒÁÂÏÔÕ ÄÅÓÑÔËÏ× ÐÒÏÇÒÁÍÍÉÓÔÏ×, Á × 1997 ÏÎ +ÐÅÒÅÄÁÌ ÒÕËÏ×ÏÄÓÔ×Ï ïÌÁÆÕ ÷ÅÂÅÒÕ, ËÏÔÏÒÙÊ ×ÅÒÎÕÌ ÅÇÏ ëÁÒÌÕ × 2006 +ÇÏÄÕ. + +óÉÓÔÅÍÁ \Webc{} ÒÁÂÏÔÁÅÔ ÐÏÄ UNIX, 32-ÂÉÔÏ×ÙÈ Windows, \MacOSX{}, É +ÄÒÕÇÉÈ ÏÐÅÒÁÃÉÏÎÎÙÈ ÓÉÓÔÅÍÁÈ. ïÎÁ ÉÓÐÏÌØÚÕÅÔ ÏÒÉÇÉÎÁÌØÎÙÅ ÉÓÈÏÄÎÉËÉ +ëÎÕÔÁ ÄÌÑ \TeX{}Á É ÄÒÕÇÉÈ ÐÒÏÇÒÁÍÍ, ÎÁÐÉÓÁÎÎÙÈ ÎÁ ÑÚÙËÅ \web{} É +ÐÅÒÅ×ÅÄ£ÎÎÙÈ ÎÁ C. ïÓÎÏ×ÎÙÅ ÐÒÏÇÒÁÍÍÙ ÓÉÓÔÅÍÙ: + +\begin{cmddescription} +\item[bibtex] ðÏÄÄÅÒÖËÁ ÂÉÂÌÉÏÇÒÁÆÉÊ. +\item[dvicopy] òÁÂÏÔÁ Ó ×ÉÒÔÕÁÌØÎÙÍÉ ÛÒÉÆÔÁÍÉ × ÆÁÊÌÁÈ \dvi{}. +\item[dvitomp] ðÅÒÅ×ÏÄ \dvi{} × MPX (ÒÉÓÕÎËÉ × \MP{}). +\item[dvitype] ðÅÒÅ×ÏÄ \dvi{} × ÔÅËÓÔ. +\item[gftodvi] çÒÁÎËÉ ÛÒÉÆÔÏ×. +\item[gftopk] õÐÁËÏ×ËÁ ÛÒÉÆÔÏ× +\item[gftype] ðÅÒÅ×ÏÄ GF × ÔÅËÓÔ. +\item[mf] óÏÚÄÁÎÉÅ ÛÒÉÆÔÏ×. +\item[mft] ÷£ÒÓÔËÁ ÉÓÈÏÄÎÉËÏ× \MF{}. +\item[mpost] òÉÓÏ×ÁÎÉÅ ÄÉÁÇÒÁÍÍ. +\item[patgen] óÏÚÄÁÎÉÅ ÔÁÂÌÉà ÐÅÒÅÎÏÓÏ×. +\item[pktogf] ðÅÒÅ×ÏÄ PK × GF. +\item[pktype] ðÅÒÅ×ÏÄ PK × ÔÅËÓÔ +\item[pltotf] ðÅÒÅ×ÏÄ ÉÚ ÓÐÉÓËÁ Ó×ÏÊÓÔ× ÛÒÉÆÔÁ × TFM. +\item[pooltype] òÁÓÛÉÆÒÏ×ËÁ ÆÁÊÌÏ× pool × \web{}. +\item[tangle] ðÅÒÅ×ÏÄ \web{} × Pascal. +\item[tex] ÷£ÒÓÔËÁ. +\item[tftopl] ðÅÒÅ×ÏÄ TFM × ÓÐÉÓÏË Ó×ÏÊÓÔ× ÛÒÉÆÔÁ. +\item[vftovp] ðÅÒÅ×ÏÄ ×ÉÒÔÕÁÌØÎÏÇÏ ÛÒÉÆÔÁ × ÓÐÉÓÏË Ó×ÏÊÓÔ× ÛÒÉÆÔÁ. +\item[vptovf] ðÅÒÅ×ÏÄ ÓÐÉÓËÁ Ó×ÏÊÓÔ× ÛÒÉÆÔÁ × ×ÉÒÔÕÁÌØÎÙÊ ÛÒÉÆÔ. +\item[weave] ðÅÒÅ×ÏÄ \web{} × \TeX. +\end{cmddescription} + +\noindent ðÏÌÎÏÓÔØÀ ÜÔÉ ÐÒÏÇÒÁÍÍÙ ÏÐÉÓÁÎÙ × ÄÏËÕÍÅÎÔÁÃÉÉ Ë +ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÍ ÐÁËÅÔÁÍ É ÓÁÍÏÊ \Webc{}. ïÄÎÁËÏ ÚÎÁÎÉÅ ÎÅËÏÔÏÒÙÈ +ÏÂÝÉÈ ÐÒÉÎÃÉÐÏ× ÄÌÑ ×ÓÅÊ ÓÅÍØÉ ÐÒÏÇÒÁÍÍ ÐÏÍÏÖÅÔ ×ÁÍ ÐÏÌÎÅÅ +ÉÓÐÏÌØÚÏ×ÁÔØ ÐÒÏÇÒÁÍÍÙ ÓÉÓÔÅÍÙ \Webc{}. + +÷ÓÅ ÐÒÏÇÒÁÍÍÙ ÐÏÄÄÅÒÖÉ×ÁÀÔ ÓÔÁÎÄÁÒÔÎÙÅ ÏÐÃÉÉ \acro{GNU}: +\begin{ttdescription} +\item[-{}-help] ÎÁÐÅÞÁÔÁÔØ ËÒÁÔËÕÀ ÓÐÒÁ×ËÕ +\item[-{}-verbose] ÐÅÞÁÔÁÔØ ÐÏÄÒÏÂÎÕÀ ÉÎÆÏÒÍÁÃÉÀ ÐÏ ÍÅÒÅ ÒÁÂÏÔÙ +\item[-{}-version] îÁÐÅÞÁÔÁÔØ ×ÅÒÓÉÀ ÐÒÏÇÒÁÍÍÙ É ÚÁ×ÅÒÛÉÔØ ÒÁÂÏÔÕ. +\end{ttdescription} + +äÌÑ ÐÏÉÓËÁ ÆÁÊÌÏ× ÐÒÏÇÒÁÍÍÙ \Webc{} ÉÓÐÏÌØÚÕÀÔ ÂÉÂÌÉÏÔÅËÕ \KPS{} +(\url{http://tug.org/kpathsea}). üÔÁ ÂÉÂÌÉÏÔÅËÁ ÉÓÐÏÌØÚÕÅÔ ËÏÍÂÉÎÁÃÉÀ +ÐÅÒÅÍÅÎÎÙÈ ÏËÒÕÖÅÎÉÑ É ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÈ ÆÁÊÌÏ×, ÞÔÏÂÙ ÎÁÊÔÉ ÎÕÖÎÙÅ +ÆÁÊÌÙ × ÏÇÒÏÍÎÏÊ ÓÉÓÔÅÍÅ \TeX{}. \Webc{} ÍÏÖÅÔ ÐÒÏÓÍÁÔÒÉ×ÁÔØ +ÏÄÎÏ×ÒÅÍÅÎÎÏ ÂÏÌØÛÅ ÏÄÎÏÇÏ ÄÅÒÅ×Á ÄÉÒÅËÔÏÒÉÊ, ÞÔÏ ÐÏÌÅÚÎÏ ÄÌÑ ÒÁÂÏÔÙ +ÓÏ ÓÔÁÎÄÁÒÔÎÙÍ ÄÉÓÔÒÉÂÕÔÉ×ÏÍ \TeX{}Á É ÅÇÏ ÌÏËÁÌØÎÙÍÉ ÒÁÓÛÉÒÅÎÉÑÍÉ. +äÌÑ ÕÓËÏÒÅÎÉÑ ÐÏÉÓËÏ× ÆÁÊÌÏ× ËÁÖÄÏÅ ÄÅÒÅ×Ï ÓÏÄÅÒÖÉÔ ÆÁÊÌ \file{ls-R}, +× ËÏÔÏÒÏÍ ÕËÁÚÁÎÙ ÎÁÚ×ÁÎÉÑ É ÏÔÎÏÓÉÔÅÌØÎÙÅ ÐÕÔÉ ×ÓÅÈ ÆÁÊÌÏ× × ÜÔÏÍ +ÄÅÒÅ×Å. + +\subsection{ðÏÉÓË ÆÁÊÌÏ× × Kpathsea} +\label{sec:kpathsea} + +òÁÓÓÍÏÔÒÉÍ ÓÎÁÞÁÌÁ ÏÂÝÉÊ ÁÌÇÏÒÉÔÍ ÂÉÂÌÉÏÔÅËÉ \KPS. + +âÕÄÅÍ ÎÁÚÙ×ÁÔØ \emph{ÐÕÔ£Í ÐÏÉÓËÁ} ÎÁÂÏÒ ÒÁÚÄÅÌ£ÎÎÙÈ Ä×ÏÅÔÏÞÉÅÍ ÉÌÉ +ÔÏÞËÏÊ Ó ÚÁÐÑÔÏÊ \emph{ÜÌÅÍÅÎÔÏ× ÐÕÔÉ}, ÐÒÅÄÓÔÁ×ÌÑÀÝÉÈ ÉÚ ÓÅÂÑ × +ÏÓÎÏ×ÎÏÍ ÎÁÚ×ÁÎÉÑ ÄÉÒÅËÔÏÒÉÊ. ðÕÔØ ÐÏÉÓËÁ ÍÏÖÅÔ ÉÍÅÔØ ÍÎÏÇÏ +ÉÓÔÏÞÎÉËÏ×. þÔÏÂÙ ÎÁÊÔÉ ÆÁÊÌ \samp{my-file} × ÄÉÒÅËÔÏÒÉÉ +\samp{.:/dir}, \KPS{} ÐÒÏ×ÅÒÑÅÔ ËÁÖÄÙÊ ÜÌÅÍÅÎÔ ÐÕÔÉ ÐÏ ÏÞÅÒÅÄÉ: +ÓÎÁÞÁÌÁ \file{./my-file}, ÚÁÔÅÍ \file{/dir/my-file}, ×ÏÚ×ÒÁÝÁÑ ÐÅÒ×ÙÊ +ÆÁÊÌ (ÉÌÉ, ×ÏÚÍÏÖÎÏ, ×ÓÅ ÆÁÊÌÙ). + +þÔÏÂÙ ÒÁÂÏÔÁÔØ Ó ÒÁÚÎÙÍÉ ÏÐÅÒÁÃÉÏÎÎÙÍÉ ÓÉÓÔÅÍÁÍÉ, \KPS{} ÐÏÄ ÓÉÓÔÅÍÏÊ, +ÏÔÌÉÞÎÏÊ ÏÔ UNIX ÍÏÖÅÔ ÉÓÐÏÌØÚÏ×ÁÔØ ÒÁÚÄÅÌÉÔÅÌÉ, ÏÔÌÉÞÎÙÅ ÏÔ +\samp{:} É \samp{/}. + +þÔÏÂÙ ÐÒÏ×ÅÒÉÔØ ÏÐÒÅÄÅÌ£ÎÎÙÊ ÜÌÅÍÅÎÔ ÐÕÔÉ \var{p}, \KPS{} ×ÎÁÞÁÌÅ +ÐÒÏ×ÅÒÑÅÔ ÎÁÌÉÞÉÅ ÂÁÚÙ ÄÁÎÎÙÈ (ÓÍ. ÒÁÚÄÅÌ <<âÁÚÁ ÄÁÎÎÙÈ +ÆÁÊÌÏ×>> ÎÁ ÓÔÒ.~\pageref{sec:filename-database}), Ô.Å., ÅÓÔØ ÌÉ ÂÁÚÁ × +ÄÉÒÅËÔÏÒÉÉ, ËÏÔÏÒÁÑ Ñ×ÌÑÅÔÓÑ ÐÒÅÆÉËÓÏÍ ÄÌÑ \var{p}. åÓÌÉ ÜÔÏ ÔÁË, +ÓÐÅÃÉÆÉËÁÃÉÑ ÐÕÔÉ ÓÒÁ×ÎÉ×ÁÅÔÓÑ Ó ÓÏÄÅÒÖÉÍÙÍ ÂÁÚÙ ÄÁÎÎÙÈ. + +åÓÌÉ ÂÁÚÁ ÄÁÎÎÙÈ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ, ÉÌÉ ÎÅ ÏÔÎÏÓÉÔÓÑ Ë ÜÔÏÍÕ ÜÌÅÍÅÎÔÕ +ÐÕÔÉ, ÉÌÉ ÎÅ ÓÏÄÅÒÖÉÔ ÎÕÖÎÏÇÏ ÜÌÅÍÅÎÔÁ, ÐÒÏ×ÅÒÑÅÔÓÑ ÆÁÊÌÏ×ÁÑ ÓÉÓÔÅÍÁ +(ÅÓÌÉ ÜÔÏ ÎÅ ÚÁÐÒÅÝÅÎÏ ÓÐÅÃÉÆÉËÁÃÉÅÊ, ÎÁÞÉÎÁÀÝÅÊÓÑ Ó \samp{!!}, É ÅÓÌÉ +ÆÁÊÌ ÄÏÌÖÅÎ ÓÕÝÅÓÔ×Ï×ÁÔØ). \KPS{} ËÏÎÓÔÒÕÉÒÕÅÔ ÓÐÉÓÏË ÄÉÒÅËÔÏÒÉÊ, +ËÏÔÏÒÙÅ ÓÏÏÔ×ÅÔÓÔ×ÕÀÔ ÜÌÅÍÅÎÔÕ, É × ËÁÖÄÏÊ ÄÉÒÅËÔÏÒÉÉ ÉÝÅÔ ÎÕÖÎÙÊ +ÆÁÊÌ. + +õÓÌÏ×ÉÅ <<ÆÁÊÌ ÄÏÌÖÅÎ ÓÕÝÅÓÔ×Ï×ÁÔØ>> ×ÁÖÎÏ ÄÌÑ ÆÁÊÌÏ× \samp{.vf} É +ÆÁÊÌÏ×, ËÏÔÏÒÙÅ ÏÔËÒÙ×ÁÅÔ \TeX{} ÐÏ ËÏÍÁÎÄÅ \cs{openin}. ôÁËÉÅ ÆÁÊÌÙ +ÍÏÇÕÔ É ÎÅ ÓÕÝÅÓÔ×Ï×ÁÔØ (ÎÁÐÒÉÍÅÒ, ÆÁÊÌ \file{cmr10.vf}), É ÂÙÌÏ ÂÙ +ÎÅÐÒÁ×ÉÌØÎÏ ÉÓËÁÔØ ÉÈ ÎÁ ÄÉÓËÅ. ðÏÜÔÏÍÕ, ÅÓÌÉ ×Ù ÎÅ ÏÂÎÏ×ÉÔÅ +\file{ls-R} ÐÒÉ ÕÓÔÁÎÏ×ËÅ ÎÏ×ÏÇÏ ÆÁÊÌÁ \samp{.vf}, ÏÎ ÎÉËÏÇÄÁ ÎÅ ÂÕÄÅÔ +ÎÁÊÄÅÎ. ëÁÖÄÙÊ ÜÌÅÍÅÎÔ ÐÕÔÉ ÉÝÅÔÓÑ ÐÏ ÏÞÅÒÅÄÉ: ÓÎÁÞÁÌÁ ÂÁÚÁ ÄÁÎÎÙÈ, +ÚÁÔÅÍ ÄÉÓË. åÓÌÉ ÎÕÖÎÙÊ ÆÁÊÌ ÎÁÊÄÅÎ, ÐÏÉÓË ÏÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ, É +×ÏÚ×ÒÁÝÁÅÔÓÑ ÒÅÚÕÌØÔÁÔ. + +èÏÔÑ ÓÁÍÙÊ ÐÒÏÓÔÏÊ É ÞÁÓÔÏ ×ÓÔÒÅÞÁÀÝÉÊÓÑ ÜÌÅÍÅÎÔ ÐÕÔÉ "--- ÜÔÏ +ÎÁÚ×ÁÎÉÅ ÄÉÒÅËÔÏÒÉÉ, \KPS{} ÐÏÄÄÅÒÖÉ×ÁÅÔ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ×ÏÚÍÏÖÎÏÓÔÉ: +ÒÁÚÎÏÏÂÒÁÚÎÙÅ ÚÎÁÞÅÎÉÑ ÐÏ ÕÍÏÌÞÁÎÉÀ, ÉÍÅÎÁ ÐÅÒÅÍÅÎÎÙÈ ÏËÒÕÖÅÎÉÑ, +ÚÎÁÞÅÎÉÑ ÉÚ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÈ ÆÁÊÌÏ×, ÄÏÍÁÛÎÉÅ ÄÉÒÅËÔÏÒÉÉ +ÐÏÌØÚÏ×ÁÔÅÌÅÊ, ÒÅËÕÒÓÉ×ÎÙÊ ÐÏÉÓË ÐÏÄÄÉÒÅËÔÏÒÉÊ. ðÏÜÔÏÍÕ ÍÙ ÇÏ×ÏÒÉÍ, +ÞÔÏ \KPS{} \emph{×ÙÞÉÓÌÑÅÔ} ÜÌÅÍÅÎÔ ÐÕÔÉ, Ô.Å., ÞÔÏ ÂÉÂÌÉÏÔÅËÁ +ÐÒÅÏÂÒÁÚÕÅÔ ÓÐÅÃÉÆÉËÁÃÉÉ × ÉÍÑ ÉÌÉ ÉÍÅÎÁ ÄÉÒÅËÔÏÒÉÉ. üÔÏ ÏÐÉÓÁÎÏ × +ÓÌÅÄÕÀÝÉÈ ÒÁÚÄÅÌÁÈ × ÔÏÍ ÖÅ ÐÏÒÑÄËÅ, × ËÏÔÏÒÏÍ ÐÒÏÉÓÈÏÄÉÔ ÐÏÉÓË. + +úÁÍÅÔØÔÅ, ÞÔÏ ÉÍÑ ÆÁÊÌÁ ÐÒÉ ÐÏÉÓËÅ ÍÏÖÅÔ ÂÙÔØ ÁÂÓÏÌÀÔÎÙÍ ÉÌÉ +ÏÔÎÏÓÉÔÅÌØÎÙÍ, Ô.Å. ÎÁÞÉÎÁÔØÓÑ Ó \samp{/}, ÉÌÉ \samp{./}, ÉÌÉ +\samp{../}, \KPS{} ÐÒÏÓÔÏ ÐÒÏ×ÅÒÑÅÔ, ÓÕÝÅÓÔ×ÕÅÔ ÌÉ ÆÁÊÌ. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{ðÒÉÍÅÒ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÏÇÏ ÆÁÊÌÁ} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{éÓÔÏÞÎÉËÉ ÐÕÔÅÊ ÐÏÉÓËÁ} +\label{sec:path-sources} + +ðÕÔØ ÐÏÉÓËÁ ÍÏÖÅÔ ÉÍÅÔØ ÒÁÚÎÙÅ ÉÓÔÏÞÎÉËÉ. \KPS{} ÉÓÐÏÌØÚÕÅÔ ÉÈ × +ÓÌÅÄÕÀÝÅÍ ÐÏÒÑÄËÅ: + +\begin{enumerate} +\item õÓÔÁÎÏ×ÌÅÎÎÙÅ ÐÏÌØÚÏ×ÁÔÅÌÅÍ ÐÅÒÅÍÅÎÎÙÅ ÏËÒÕÖÅÎÉÑ, ÎÁÐÒÉÍÅÒ + \envname{TEXINPUTS}\@. ðÅÒÅÍÅÎÎÙÅ ÏËÒÕÖÅÎÉÑ Ó ÔÏÞËÏÊ É ÎÁÚ×ÁÎÉÅÍ + ÐÒÏÇÒÁÍÍÙ ÉÍÅÀÔ ÐÒÅÉÍÕÝÅÓÔ×Ï; ÎÁÐÒÉÍÅÒ ÅÓÌÉ \samp{latex} "--- ÉÍÑ + ÐÒÏÇÒÁÍÍÙ. ÔÏ \envname{TEXINPUTS.latex} ÉÍÅÅÔ ÐÒÅÉÍÕÝÅÓÔ×Ï ÐÅÒÅÄ + \envname{TEXINPUTS}. +\item + ëÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ, ÓÐÅÃÉÆÉÞÅÓËÉÊ ÄÌÑ ÄÁÎÎÏÊ ÐÒÏÇÒÁÍÍÙ, ÎÁÐÒÉÍÅÒ, + ÓÔÒÏËÁ + \samp{S /a:/b} × \file{config.ps} ÄÌÑ \cmdname{dvips}. +\item + ëÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ \KPS{} \file{texmf.cnf}, ÓÏÄÅÒÖÁÝÉÊ ÓÔÒÏËÕ + ÔÉÐÁ + \samp{TEXINPUTS=/c:/d} (ÓÍ. ÎÉÖÅ). +\item úÎÁÞÅÎÉÅ, ÚÁÄÁÎÎÏÅ ÐÒÉ ËÏÍÐÉÌÑÃÉÉ. +\end{enumerate} +\noindent ÷Ù ÍÏÖÅÔÅ Õ×ÉÄÅÔØ ËÁÖÄÏÅ ÉÚ ÜÔÉÈ ÚÎÁÞÅÎÉÊ ÄÌÑ ÄÁÎÎÏÇÏ ÐÕÔÉ +ÐÏÉÓËÁ, ÚÁÄÁ× ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÊ ÕÒÏ×ÅÎØ ÏÔÌÁÄËÉ (ÓÍ. <<ïÔÌÁÄËÁ>> +ÎÁ ÓÔÒ.~\pageref{sec:debugging}). + +\subsubsection{ëÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ} + +\begingroup\tolerance=3500 +\KPS{} ÞÉÔÁÅÔ \emph{ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ} \file{texmf.cnf}, × +ËÏÔÏÒÙÈ ÚÁÄÁÀÔÓÑ ÐÁÒÁÍÅÔÒÙ ÐÒÏÇÒÁÍÍÙ. òÁÎØÛÅ ÄÌÑ ÐÏÉÓËÁ ÜÔÉÈ ÆÁÊÌÏ× +ÉÓÐÏÌØÚÏ×ÁÌÁÓØ ÐÅÒÅÍÅÎÎÁÑ \envname{TEXMFCNF}, ÎÏ ÔÅÐÅÒØ ÍÙ ÎÅ +ÒÅËÏÍÅÎÄÕÅÍ ÐÏÌØÚÏ×ÁÔØÓÑ ÜÔÏÊ (ÉÌÉ ËÁËÏÊ-ÌÉÂÏ ÄÒÕÇÏÊ) ÐÅÒÅÍÅÎÎÏÊ +ÏËÒÕÖÅÎÉÑ. + +ôÅÐÅÒØ ÐÒÉ ÎÏÒÍÁÌØÎÏÊ ÕÓÔÁÎÏ×ËÅ ÓÏÚÄÁÅÔÓÑ ÆÁÊÌ +\file{.../2012/texmf.cnf}. åÓÌÉ ×ÁÍ ÎÕÖÎÏ ÉÚÍÅÎÉÔØ ÎÁÓÔÒÏÊËÉ (ÏÂÙÞÎÏ +ÜÔÏÇÏ ÄÅÌÁÔØ, ÎÅ ÐÒÉÈÏÄÉÔÓÑ), ×ÎÅÓÉÔÅ ÉÈ × ÜÔÏÔ ÆÁÊÌ. çÌÁ×ÎÙÊ +ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ "--- ÆÁÊÌ \file{.../2012/texmf/web2c/texmf.cnf} +åÇÏ ÒÅÄÁËÔÉÒÏ×ÁÔØ \emph{ÎÅ} ÓÌÅÄÕÅÔ, ÔÁË ËÁË ÐÒÉ ÏÂÎÏ×ÌÅÎÉÉ ÓÉÓÔÅÍÙ +×ÁÛÉ ÉÚÍÅÎÅÎÉÑ ÐÒÏÐÁÄÕÔ. + +\emph{÷ÓÅ} ÎÁÊÄÅÎÎÙÅ ÆÁÊÌÙ \file{texmf.cnf} ÂÕÄÕÔ ÐÒÏÞÉÔÁÎÙ, É +ÏÐÒÅÄÅÌÅÎÉÑ × ÂÏÌÅÅ ÒÁÎÎÉÈ ÆÁÊÌÁÈ ÉÍÅÀÔ ÐÒÅÉÍÕÝÅÓÔ×Ï ÐÅÒÅÄ +ÏÐÒÅÄÅÌÅÎÉÑÍÉ × ÂÏÌÅÅ ÐÏÚÄÎÉÈ. ôÁËÉÍ ÏÂÒÁÚÏÍ, ÅÓÌÉ ÐÕÔØ ÐÏÉÓËÁ ÚÁÄÁÎ +ËÁË \verb|.:$TEXMF|, ÚÎÁÞÅÎÉÑ × \file{./texmf.cnf} ÉÍÅÀÔ ÐÒÅÉÍÕÝÅÓÔ×Ï +ÐÅÒÅÄ ÚÎÁÞÅÎÉÑÍÉ × \verb|$TEXMF/texmf.cnf|. +\endgroup + +\begin{itemize} +\item + ëÏÍÍÅÎÔÁÒÉÉ ÎÁÞÉÎÁÀÔÓÑ Ó \code{\%} É ÐÒÏÄÏÌÖÁÀÔÓÑ ÄÏ ËÏÎÃÁ ÓÔÒÏËÉ. +\item + ðÕÓÔÙÅ ÓÔÒÏËÉ ÉÇÎÏÒÉÒÕÀÔÓÑ +\item + \bs{} × ËÏÎÃÅ ÓÔÒÏËÉ ÏÚÎÁÞÁÅÔ ÐÒÏÄÏÌÖÅÎÉÅ, Ô.Å. ÄÏÂÁ×ÌÑÅÔÓÑ + ÓÌÅÄÕÀÝÁÑ ÓÔÒÏËÁ. ðÒÏÂÅÌÙ × ÎÁÞÁÌÅ ÓÌÅÄÕÀÝÅÊ ÓÔÒÏËÉ ÎÅ + ÉÇÎÏÒÉÒÕÀÔÓÑ. +\item + ïÐÒÅÄÅÌÅÎÉÑ ÐÁÒÁÍÅÔÒÏ× ÉÍÅÀÔ ×ÉÄ +\begin{alltt} + \emph{variable}[.\emph{progname}] [=] \emph{value} +\end{alltt}% + ÇÄÅ \samp{=} É ÐÒÏÂÅÌÙ ×ÏËÒÕÇ ÍÏÇÕÔ ÏÐÕÓËÁÔØÓÑ. +\item + \ttvar{variable} ÍÏÖÅÔ ÓÏÄÅÒÖÁÔØ ÌÀÂÙÅ ÓÉÍ×ÏÌÙ, ËÒÏÍÅ ÐÒÏÂÅÌÁ, + \samp{=} ÉÌÉ \samp{.}, ÎÏ ÎÁÄ£ÖÎÅÅ ×ÓÅÇÏ ÐÒÉÄÅÒÖÉ×ÁÔØÓÑ ÎÁÂÏÒÁ + \samp{A-Za-z\_}. +\item + åÓÌÉ ÅÓÔØ \samp{.\var{progname}}, ÏÐÒÅÄÅÌÅÎÉÅ ÏÔÎÏÓÉÔÓÑ ÔÏÌØËÏ Ë + ÐÒÏÇÒÁÍÍÅ, ËÏÔÏÒÁÑ ÎÁÚÙ×ÁÅÔÓÑ + \texttt{\var{progname}} ÉÌÉ \texttt{\var{progname}.exe}. üÔÏ + ÐÏÚ×ÏÌÑÅÔ, ÎÁÐÒÉÍÅÒ ÒÁÚÎÙÍ ×ÉÄÁÍ \TeX{}Á ÉÍÅÔØ ÒÁÚÎÙÅ ÐÕÔÉ ÐÏÉÓËÁ. +\item \var{value} ÍÏÖÅÔ ÓÏÄÅÒÖÁÔØ ÌÀÂÙÅ ÓÉÍ×ÏÌÙ, ËÒÏÍÅ + \code{\%} É \samp{@}. îÅÌØÚÑ ÉÓÐÏÌØÚÏ×ÁÔØ + \code{\$\var{var}.\var{prog}} × ÐÒÁ×ÏÊ ÞÁÓÔÉ; ×ÍÅÓÔÏ ÜÔÏÇÏ ×Ù ÄÏÌÖÎÙ + ÚÁÄÁÔØ ÄÏÐÏÌÎÉÔÅÌØÎÕÀ ÐÅÒÅÍÅÎÎÕÀ. óÉÍ×ÏÌ + \samp{;} × ÐÒÁ×ÏÊ ÞÁÓÔÉ ÜË×É×ÁÌÅÎÔÅÎ ÐÏÄ UNIX ÓÉÍ×ÏÌÕ \samp{:}; ÜÔÏ + ÐÏÌÅÚÎÏ, ÞÔÏÂÙ ÐÏÄÄÅÒÖÉ×ÁÔØ ÏÂÝÉÊ ÆÁÊÌ ÄÌÑ UNIX, \acro{MS-DOS} É + Windows. +\item + ÷ÓÅ ÏÐÒÅÄÅÌÅÎÉÑ ÞÉÔÁÀÔÓÑ ÄÏ ÐÏÄÓÔÁÎÏ×ÏË, ÐÏÜÔÏÍÕ Ë ÐÅÒÅÍÅÎÎÙÍ ÍÏÖÎÏ + ÏÂÒÁÝÁÔØÓÑ ÄÏ ÔÏÇÏ, ËÁË ÏÎÉ ÏÐÒÅÄÅÌÅÎÙ. +\end{itemize} +æÒÁÇÍÅÎÔ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÏÇÏ ÆÁÊÌÁ, ÉÌÌÀÓÔÒÉÒÕÀÝÉÊ ÜÔÉ ÐÒÁ×ÉÌÁ, ÐÒÉ×ÅÄeÎ +\ifSingleColumn +ÎÉÖÅ: + +\verbatiminput{examples/ex5.tex} +\else +ÎÁ ÒÉÓÕÎËÅ~\ref{fig:config-sample}. +\fi + +\subsubsection{ðÏÄÓÔÁÎÏ×ËÁ ÐÕÔÅÊ} +\label{sec:path-expansion} + + +\KPS{} ÒÁÓÐÏÚÎÁ£Ô ÏÐÒÅÄÅÌ£ÎÎÙÅ ÓÐÅÃÉÁÌØÎÙÅ ÓÉÍ×ÏÌÙ É ËÏÎÓÔÒÕËÃÉÉ × +ÐÕÔÑÈ ÐÏÉÓËÁ, ÁÎÁÌÏÇÉÞÎÙÅ ËÏÎÓÔÒÕËÃÉÑÍ × ÓÔÁÎÄÁÒÔÎÙÈ ÏÂÏÌÏÞËÁÈ +UNIX. îÁÐÒÉÍÅÒ, ÓÌÏÖÎÙÊ ÐÕÔØ +\verb+~$USER/{foo,bar}//baz+, ÏÚÎÁÞÁÅÔ ×ÓÅ ÐÏÄÄÉÒÅËÔÏÒÉÉ ÄÉÒÅËÔÏÒÉÊ +\file{foo} É \file{bar} × ÄÏÍÁÛÎÅÊ ÄÉÒÅËÔÏÒÉÉ ÐÏÌØÚÏ×ÁÔÅÌÑ +\texttt{\$USER}, ËÏÔÏÒÙÅ ÓÏÄÅÒÖÁÔ ÆÁÊÌ ÉÌÉ ÐÏÄÄÉÒÅËÔÏÒÉÀ \file{baz}. +üÔÏ ÏÂßÑÓÎÅÎÏ × ÓÌÅÄÕÀÝÉÈ ÒÁÚÄÅÌÁÈ. +%$ +\subsubsection{ðÏÄÓÔÁÎÏ×ËÁ ÐÏ ÕÍÏÌÞÁÎÉÀ} +\label{sec:default-expansion} + + +åÓÌÉ ÐÕÔØ ÐÏÉÓËÁ Ó ÎÁÉÂÏÌØÛÉÍ ÐÒÉÏÒÉÔÅÔÏÍ (ÓÍ. ÒÁÚÄÅÌ <<éÓÔÏÞÎÉËÉ ÐÕÔÅÊ +ÐÏÉÓËÁ>> ÎÁ ÓÔÒ.~\pageref{sec:path-sources}) ÓÏÄÅÒÖÉÔ \emph{ÄÏÐÏÌÎÉÔÅÌØÎÏÅ + Ä×ÏÅÔÏÞÉÅ} (× ÎÁÞÁÌÅ, × ËÏÎÃÅ, Ä×ÏÊÎÏÅ), \KPS{} ÚÁÍÅÎÑÅÔ ÅÇÏ +ÓÌÅÄÕÀÝÉÍ ÐÏ ÐÒÉÏÒÉÔÅÔÕ ÐÕÔ£Í. åÓÌÉ ÜÔÏÔ ×ÓÔÁ×ÌÅÎÎÙÊ ÐÕÔØ ÓÏÄÅÒÖÉÔ +ÄÏÐÏÌÎÉÔÅÌØÎÏÅ Ä×ÏÅÔÏÞÉÅ, ÔÏ ÖÅ ÐÒÏÉÓÈÏÄÉÔ ÓÏ ÓÌÅÄÕÀÝÉÍ ÐÕÔ£Í. +îÁÐÒÉÍÅÒ, ÅÓÌÉ ÐÅÒÅÍÅÎÎÁÑ ÏËÒÕÖÅÎÉÑ ÚÁÄÁÎÁ ËÁË + + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +É \code{TEXINPUTS} × ÆÁÊÌÅ \file{texmf.cnf} ÓÏÄÅÒÖÉÔ + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} +ÔÏ ÐÏÉÓË ÂÕÄÅÔ ÐÒÏÉÓÈÏÄÉÔØ Ó ÐÕÔ£Í + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +ðÏÓËÏÌØËÕ ÂÙÌÏ ÂÙ ÂÅÓÐÏÌÅÚÎÏ ×ÓÔÁ×ÌÑÔØ ÚÎÁÞÅÎÉÅ ÐÏ ÕÍÏÌÞÁÎÉÀ ÂÏÌÅÅ ÞÅÍ +ÏÄÉÎ ÒÁÚ, \KPS{} ÉÚÍÅÎÑÅÔ ÔÏÌØËÏ ÏÄÎÏ ÌÉÛÎÅÅ Ä×ÏÅÔÏÞÉÅ, É ÏÓÔÁ×ÌÑÅÔ +ÏÓÔÁÌØÎÙÅ: ÏÎÁ ÐÒÏ×ÅÒÑÅÔ ÓÎÁÞÁÌÁ Ä×ÏÅÔÏÞÉÅ × ÎÁÞÁÌÅ, ÐÏÔÏÍ × ËÏÎÃÅ, +ÐÏÔÏÍ Ä×ÏÊÎÙÅ Ä×ÏÅÔÏÞÉÑ. + +\subsubsection{ðÏÄÓÔÁÎÏ×ËÁ ÓËÏÂÏË} +\label{sec:brace-expansion} + +ðÏÌÅÚÎÁ ÔÁËÖÅ ÐÏÄÓÔÁÎÏ×ËÁ ÓËÏÂÏË, ÉÚ-ÚÁ ËÏÔÏÒÏÊ, ÎÁÐÒÉÍÅÒ, +\verb+v{a,b}w+ ÏÚÎÁÞÁÅÔ \verb+vaw:vbw+. ÷ÌÏÖÅÎÎÏÓÔØ ÔÕÔ ÄÏÐÕÓËÁÅÔÓÑ. +âÌÁÇÏÄÁÒÑ ÜÔÏÍÕ ÍÏÖÎÏ ÉÍÅÔØ ÎÅÓËÏÌØËÏ ÉÅÒÁÒÈÉÊ ÄÉÒÅËÔÏÒÉÊ, ÐÒÉÓ×ÏÉ× +\code{\$TEXMF} ÎÅÓËÏÌØËÏ ×ÁÒÉÁÎÔÏ× ÐÕÔÅÊ. +îÁÐÒÉÍÅÒ, × ÆÁÊÌÅ \file{texmf.cnf}, ÍÏÖÎÏ ÎÁÊÔÉ ÓÌÅÄÕÀÝÅÅ ÏÐÒÅÄÅÌÅÎÉÅ +(ÜÔÏ ÕÐÒÏÝÅÎÉÅ, ÎÁ ÓÁÍÏÍ ÄÅÌÅ ÔÁÍ ÅÝ£ ÂÏÌØÛÅ ÄÅÒÅ×ØÅ×): +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +âÌÁÇÏÄÁÒÑ ÜÔÏÍÕ ÍÏÖÎÏ ÐÉÓÁÔØ ÔÁËÏÅ: +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +ÞÔÏ ÏÚÎÁÞÁÅÔ, ÞÔÏ ËÒÏÍÅ ÔÅËÕÝÅÊ ÄÉÒÅËÔÏÒÉÉ ÂÕÄÅÔ ÐÒÏÉÓÈÏÄÉÔØ ÐÏÉÓË +\emph{ÔÏÌØËÏ} × \code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, +\code{\$TEXMFVAR/tex} É \code{\$TEXMFMAIN/tex} (ÐÏÓÌÅÄÎÉÅ Ä×Á ÄÅÒÅ×Á +ÉÓÐÏÌØÚÕÀÔ ÆÁÊÌÙ \file{ls-R}). üÔÏ ÕÄÏÂÎÏ ÄÌÑ ÐÏÄÄÅÒÖËÉ Ä×ÕÈ +ÐÁÒÁÌÌÅÌØÎÙÈ ÓÔÒÕËÔÕÒ, <<ÚÁÍÏÒÏÖÅÎÎÏÊ>> (ÎÁÐÒÉÍÅÒ, ÎÁ \CD) É +ÏÂÎÏ×ÌÑÅÍÏÊ ÐÏ ÍÅÒÅ ÐÏÑ×ÌÅÎÉÑ ÎÏ×ÙÈ ×ÅÒÓÉÊ. éÓÐÏÌØÚÕÑ ÐÅÒÅÍÅÎÎÕÀ +\code{\$TEXMF} ×Ï ×ÓÅÈ ÏÐÒÅÄÅÌÅÎÉÑÈ, ÍÏÖÎÏ ÚÁÄÁÔØ ÐÏÉÓË × ÏÂÎÏ×ÌÑÅÍÏÍ +ÄÅÒÅ×Å ÐÅÒ×ÙÍ. + +\subsubsection{ðÏÄÓÔÁÎÏ×ËÁ ÐÏÄÄÉÒÅËÔÏÒÉÊ} +\label{sec:subdirectory-expansion} + +ä×Á ÉÌÉ ÂÏÌÅÅ ÓÌÜÛÁ \samp{/} × ÜÌÅÍÅÎÔÅ ÐÕÔÉ ×ÓÌÅÄ ÚÁ ÉÍÅÎÅÍ ÄÉÒÅËÔÏÒÉÉ +\var{d} ÚÁÍÅÎÑÀÔÓÑ ×ÓÅÍÉ ÐÏÄÄÉÒÅËÔÏÒÉÑÍÉ \var{d} ÒÅËÕÒÓÉ×ÎÏ. îÁ ËÁÖÄÏÍ +ÕÒÏ×ÎÅ ÐÏÒÑÄÏË ÐÏÉÓËÁ ÐÏ ÄÉÒÅËÔÏÒÉÑÍ \emph{ÎÅ ÏÐÒÅÄÅÌ£Î}. + +åÓÌÉ ×Ù ÏÐÒÅÄÅÌÉÔÅ ËÏÍÐÏÎÅÎÔÙ ÉÍÅÎÉ ÆÁÊÌÁ ÐÏÓÌÅ \samp{//}, ÔÏÌØËÏ +ÐÏÄÄÉÒÅËÔÏÒÉÉ Ó ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÍÉ ËÏÍÐÏÎÅÎÔÁÍÉ ÂÕÄÕÔ ×ËÌÀÞÅÎÙ. +îÁÐÒÉÍÅÒ, \samp{/a//b} ÄÁ£Ô ÐÏÄÄÉÒÅËÔÏÒÉÉ \file{/a/1/b}, +\file{/a/2/b}, \file{/a/1/1/b}, É Ô.Ä., ÎÏ ÎÅ \file{/a/b/c} ÉÌÉ +\file{/a/1}. + +÷ÏÚÍÏÖÎÙ ÎÅÓËÏÌØËÏ ËÏÎÓÔÒÕËÃÉÊ \samp{//} × ÏÄÎÏÍ ÐÕÔÉ, ÎÏ +\samp{//} × ÎÁÞÁÌÅ ÐÕÔÉ ÉÇÎÏÒÉÒÕÀÔÓÑ. + +\subsubsection{óÐÉÓÏË ÓÐÅÃÉÁÌØÎÙÈ ÓÉÍ×ÏÌÏ× É ÉÈ ÚÎÁÞÅÎÉÊ} + +÷ ÓÌÅÄÕÀÝÅÍ ÓÐÉÓËÅ ÐÒÉ×ÏÄÑÔÓÑ ÓÐÅÃÉÁÌØÎÙÅ ÓÉÍ×ÏÌÙ × ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÈ +ÆÁÊÌÁÈ \KPS{}. + +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] òÁÚÄÅÌÉÔÅÌØ × ÓÐÅÃÉÆÉËÁÃÉÑÈ ÐÕÔÅÊ; × ÎÁÞÁÌÅ ÉÌÉ ËÏÎÃÅ + ÓÐÅÃÉÆÉËÁÃÉÉ ÏÚÎÁÞÁÅÔ ÐÏÄÓÔÁÎÏ×ËÕ ÐÏ ÕÍÏÌÞÁÎÉÀ. +\item[\CODE{;}] òÁÚÄÅÌÉÔÅÌØ ÐÕÔÅÊ × ÓÉÓÔÅÍÁÈ, ÏÔÌÉÞÎÙÈ ÏÔ UNIX (ÔÏ + ÖÅ, ÞÔÏ \code{:}). +\item[\CODE{\$}] ðÏÄÓÔÁÎÏ×ËÁ ÐÅÒÅÍÅÎÎÙÈ. +\item[\CODE{\string~}] ïÚÎÁÞÁÅÔ ÄÏÍÁÛÎÀÀ ÄÉÒÅËÔÏÒÉÀ ÐÏÌØÚÏ×ÁÔÅÌÑ. +\item[\CODE{\char`\{...\char`\}}] ðÏÄÓÔÁÎÏ×ËÁ ÓËÏÂÏË. +\item[\CODE{//}] ðÏÄÓÔÁÎÏ×ËÁ ÐÏÄÄÉÒÅËÔÏÒÉÊ (ÍÏÖÅÔ ×ÓÔÒÅÔÉÔØÓÑ ÇÄÅ + ÕÇÏÄÎÏ, ËÒÏÍÅ ÎÁÞÁÌÁ ÐÕÔÉ). +\item[\CODE{\%}] îÁÞÁÌÏ ËÏÍÍÅÎÔÁÒÉÑ. +\item[\CODE{\bs}] óÉÍ×ÏÌ ÐÒÏÄÏÌÖÅÎÉÑ (ÄÌÑ ËÏÍÁÎÄ ÉÚ ÎÅÓËÏÌØËÉÈ ÓÔÒÏË). +\item[\CODE{!!}] ðÏÉÓË \emph{ÔÏÌØËÏ} × ÂÁÚÅ ÄÁÎÎÙÈ, ÎÏ \emph{ÎÅ} ÎÁ + ÄÉÓËÅ. +\end{ttdescription} + + +\subsection{âÁÚÙ ÄÁÎÎÙÈ ÆÁÊÌÏ×} +\label{sec:filename-database} + +\KPS{} ÓÔÁÒÁÅÔÓÑ ÍÉÎÉÍÉÚÉÒÏ×ÁÔØ ÏÂÒÁÝÅÎÉÅ Ë ÄÉÓËÕ ÐÒÉ ÐÏÉÓËÅ. ôÅÍ ÎÅ +ÍÅÎÅÅ × ÓÉÓÔÅÍÁÈ Ó ÂÏÌØÛÉÍ ËÏÌÉÞÅÓÔ×ÏÍ ÄÉÒÅËÔÏÒÉÊ ÐÏÉÓË × ËÁÖÄÏÊ +×ÏÚÍÏÖÎÏÊ ÄÉÒÅËÔÏÒÉÉ ÍÏÖÅÔ ÚÁÎÑÔØ ÄÏÌÇÏÅ ×ÒÅÍÑ (ÜÔÏ ÏÓÏÂÅÎÎÏ ×ÅÒÎÏ, +ÅÓÌÉ ÎÁÄÏ ÐÒÏ×ÅÒÉÔØ ÓÏÔÎÉ ÄÉÒÅËÔÏÒÉÊ ÓÏ ÛÒÉÆÔÁÍÉ). ðÏÜÔÏÍÕ \KPS{} +ÕÍÅÅÔ ÉÓÐÏÌØÚÏ×ÁÔØ ×ÎÅÛÎÉÊ ÔÅËÓÔÏ×ÙÊ ÆÁÊÌ, +<<ÂÁÚÕ ÄÁÎÎÙÈ>> \file{ls-R}, ËÏÔÏÒÙÊ ÚÎÁÅÔ, ÇÄÅ ÎÁÈÏÄÑÔÓÑ ÆÁÊÌÙ × +ÄÉÒÅËÔÏÒÉÑÈ, ÞÔÏ ÄÁ£Ô ×ÏÚÍÏÖÎÏÓÔØ ÉÚÂÅÖÁÔØ ÞÁÓÔÙÈ ÏÂÒÁÝÅÎÉÊ Ë ÄÉÓËÕ. + +åÝ£ ÏÄÎÁ ÂÁÚÁ ÄÁÎÎÙÈ, ÆÁÊÌ \file{aliases} ÐÏÚ×ÏÌÑÅÔ ×ÁÍ ÄÁ×ÁÔØ +ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÎÁÚ×ÁÎÉÑ ÆÁÊÌÁÍ × \file{ls-R}. üÔÏ ÐÏÌÅÚÎÏ, ÅÓÌÉ ×ÁÍ +ÎÕÖÎÏ ÓÏÂÌÀÄÁÔØ ÐÒÁ×ÉÌÏ \acro{DOS} <<8.3>>. + +\subsubsection{âÁÚÙ ÄÁÎÎÙÈ \texttt{ls-R}} +\label{sec:ls-R} + +ëÁË ÏÂßÑÓÎÅÎÏ ×ÙÛÅ, ÏÓÎÏ×ÎÁÑ ÂÁÚÁ ÄÁÎÎÙÈ ÎÁÚÙ×ÁÅÔÓÑ \file{ls-R}. ÷Ù +ÍÏÖÅÔÅ ÓÏÚÄÁÔØ Å£ × ËÏÒÎÅ ËÁÖÄÏÇÏ ÄÅÒÅ×Á \TeX{}Á, ËÏÔÏÒÏÅ +ÐÒÏÓÍÁÔÒÉ×ÁÅÔÓÑ \KPS{} (ÐÏ ÕÍÏÌÞÁÎÉÀ, \code{\$TEXMF}). \KPS{} ÉÝÅÔ +ÆÁÊÌÙ \file{ls-R} × ÐÕÔÉ \code{TEXMFDBS}. + +òÅËÏÍÅÎÄÕÅÍÙÊ ÓÐÏÓÏ ÓÏÚÄÁÎÉÑ É ÐÏÄÄÅÒÖËÉ \samp{ls-R} "--- ÓËÒÉÐÔ +\code{mktexlsr}, ×ËÌÀÞ£ÎÎÙÊ × ÄÉÓÔÒÉÂÕÔÉ×. ïÎ ×ÙÚÙ×ÁÅÔÓÑ ÒÁÚÎÙÍÉ +ÓËÒÉÐÔÁÍÉ \samp{mktex}\dots. ÷ ÐÒÉÎÃÉÐÅ ÜÔÏÔ ÓËÒÉÐÔ ×ÙÐÏÌÎÑÅÔ ËÏÍÁÎÄÙ +ÔÉÐÁ +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +ÐÒÉ ÕÓÌÏ×ÉÉ, ÞÔÏ × ×ÁÛÅÊ ÓÉÓÔÅÍÅ \code{ls} ÄÁ£Ô ×Ù×ÏÄ × ÎÕÖÎÏÍ ÆÏÒÍÁÔÅ +(\acro{GNU} \code{ls} ÇÏÄÉÔÓÑ). þÔÏÂÙ ÐÏÄÄÅÒÖÉ×ÁÔØ ÂÁÚÕ ÄÁÎÎÙÈ × +ÔÅËÕÝÅÍ ÓÏÓÔÏÑÎÉÉ, ÐÒÏÝÅ ×ÓÅÇÏ ÐÅÒÅÇÅÎÅÒÉÒÏ×ÁÔØ Å£ ÒÅÇÕÌÑÒÎÏ ÉÚ +\code{cron}Á, ÔÁË ÞÔÏ ÏÎÁ Á×ÔÏÍÁÔÉÞÅÓËÉ ÏÂÎÏ×ÌÑÅÔÓÑ ÞÅÒÅÚ ÎÅËÏÔÏÒÏÅ +×ÒÅÍÑ ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ÎÏ×ÏÇÏ ÐÁËÅÔÁ. + +åÓÌÉ ÆÁÊÌ ÎÅ ÎÁÊÄÅÎ × ÂÁÚÅ ÄÁÎÎÙÈ, ÐÏ ÕÍÏÌÞÁÎÉÀ \KPS{} ÉÝÅÔ ÅÇÏ ÎÁ ÄÉÓËÅ. +åÓÌÉ ÜÌÅÍÅÎÔ ÐÕÔÉ ÎÁÞÉÎÁÅÔÓÑ Ó \samp{!!}, ÔÏ ÐÏÉÓË ÐÒÏÉÓÈÏÄÉÔ +\emph{ÔÏÌØËÏ} × ÂÁÚÅ ÄÁÎÎÙÈ. + + +\subsubsection{kpsewhich: ðÒÏÇÒÁÍÍÁ ÄÌÑ ÐÏÉÓËÁ ÆÁÊÌÏ×} +\label{sec:invoking-kpsewhich} + +ðÒÏÇÒÁÍÍÁ \texttt{kpsewhich} ×ÙÐÏÌÎÑÅÔ ÐÏÉÓË × ÓÏÏÔ×ÅÔÓÔ×ÉÉ Ó +ÁÌÇÏÒÉÔÍÏÍ, ÏÐÉÓÁÎÎÙÍ ×ÙÛÅ. üÔÏ ÍÏÖÅÔ ÂÙÔØ ÐÏÌÅÚÎÏ × ËÁÞÅÓÔ×Å +×ÁÒÉÁÎÔÁ ËÏÍÁÎÄÙ \code{find} ÄÌÑ ÐÏÉÓËÁ ÆÁÊÌÏ× × ÉÅÒÁÒÈÉÑÈ \TeX{}Á +(ÜÔÏ ÛÉÒÏËÏ ÉÓÐÏÌØÚÕÅÔÓÑ × ÓËÒÉÐÔÁÈ \samp{mktex}\dots). + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +ïÐÃÉÉ, ÕËÁÚÁÎÎÙÅ × \ttvar{option}, ÎÁÞÉÎÁÀÔÓÑ ÌÉÂÏ Ó \samp{-} +ÌÉÂÏ \samp{-{}-}, É ÌÀÂÙÅ ÏÄÎÏÚÎÁÞÎÙÅ ÓÏËÒÁÝÅÎÉÑ ÄÏÐÕÓÔÉÍÙ. + +\KPS{} ÒÁÓÓÍÁÔÒÉ×ÁÅÔ ËÁÖÄÙÊ ÁÒÇÕÍÅÎÔ, ÎÅ Ñ×ÌÑÀÝÉÊÓÑ ÏÐÃÉÅÊ, ËÁË ÉÍÑ +ÆÁÊÌÁ, É ×ÏÚ×ÒÁÝÁÅÔ ÐÅÒ×ÙÊ ÎÁÊÄÅÎÎÙÊ ÆÁÊÌ. îÅÔ ÏÐÃÉÉ ×ÅÒÎÕÔØ ×ÓÅ +ÎÁÊÄÅÎÎÙÅ ÆÁÊÌÙ (ÄÌÑ ÜÔÏÇÏ ÍÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÐÒÏÇÒÁÍÍÕ \samp{find}). + +îÁÉÂÏÌÅÅ ×ÁÖÎÙÅ ÏÐÃÉÉ ÏÐÉÓÁÎÙ ÎÉÖÅ. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{}\\ + õÓÔÁÎÏ×ÉÔØ ÒÁÚÒÅÛÅÎÉÅ \ttvar{num}; ÜÔÏ ×ÌÉÑÅÔ ÔÏÌØËÏ ÎÁ ÐÏÉÓË ÆÁÊÌÏ× + \samp{gf} É \samp{pk}. óÉÎÏÎÉÍ \samp{-D}, ÄÌÑ + ÓÏ×ÍÅÓÔÉÍÏÓÔÉ Ó \cmdname{dvips}. ðÏ ÕÍÏÌÞÁÎÉÀ 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + õÓÔÁÎÏ×ÉÔØ ÆÏÒÍÁÔ ÄÌÑ ÐÏÉÓËÁ \ttvar{name}. ðÏ ÕÍÏÌÞÁÎÉÀ, ÆÏÒÍÁÔ + ÏÐÒÅÄÅÌÑÅÔÓÑ ÉÚ ÉÍÅÎÉ ÆÁÊÌÁ. äÌÑ ÆÏÒÍÁÔÏ×, ÄÌÑ ËÏÔÏÒÙÈ ÎÅÔ + ÏÄÎÏÚÎÁÞÎÏÇÏ ÓÕÆÆÉËÓÁ, ÎÁÐÒÉÍÅÒ, ÆÁÊÌÏ× \MP{} É ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÈ + ÆÁÊÌÏ× \cmdname{dvips}, ×Ù ÄÏÌÖÎÙ ÕËÁÚÁÔØ ÎÁÚ×ÁÎÉÅ, ÉÚ×ÅÓÔÎÏÅ + \KPS{}, ÎÁÐÒÉÍÅÒ, \texttt{tex} ÉÌÉ \texttt{enc files}. óÐÉÓÏË + ×ÁÒÉÁÎÔÏ× ÍÏÖÎÏ ÐÏÌÕÞÉÔØ ËÏÍÁÎÄÏÊ \texttt{kpsewhich -{}-help}. + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + õÓÔÁÎÏ×ÉÔØ ÚÎÁÞÅÎÉÅ ÒÅÖÉÍÁ ÐÅÞÁÔÉ \ttvar{string}; ÜÔÏ ×ÌÉÑÅÔ ÔÏÌØËÏ + ÎÁ ÐÏÉÓË ÆÁÊÌÏ× \samp{gf} É \samp{pk}. úÎÁÞÅÎÉÑ ÐÏ ÕÍÏÌÞÁÎÉÀ ÎÅÔ: + ÉÝÕÔÓÑ ÆÁÊÌÙ ÄÌÑ ×ÓÅÈ ÒÅÖÉÍÏ×. + +\item[\texttt{-{}-must-exist}]\mbox{}\\ + óÄÅÌÁÔØ ×Ó£ ×ÏÚÍÏÖÎÏÅ, ÞÔÏÂÙ ÎÁÊÔÉ ÆÁÊÌ ×ËÌÀÞÁÑ ÐÏÉÓË ÎÁ ÄÉÓËÅ. ðÏ + ÕÍÏÌÞÁÎÉÀ ÄÌÑ ÐÏ×ÙÛÅÎÉÑ ÜÆÆÅËÔÉ×ÎÏÓÔÉ ÐÒÏÓÍÁÔÒÉ×ÁÅÔÓÑ ÔÏÌØËÏ ÂÁÚÁ + ÄÁÎÎÙÈ \file{ls-R}. + +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + éÓËÁÔØ × ÎÁÂÏÒÅ ÄÉÒÅËÔÏÒÉÊ \ttvar{string} (ËÁË ÏÂÙÞÎÏ, ÒÁÚÄÅÌ£ÎÎÙÈ + Ä×ÏÅÔÏÞÉÑÍÉ), ×ÍÅÓÔÏ ÔÏÇÏ, ÞÔÏÂÙ ×ÙÞÉÓÌÑÔØ ÐÕÔØ ÐÏÉÓËÁ ÐÏ ÉÍÅÎÉ + ÆÁÊÌÁ. \samp{//} É ÏÂÙÞÎÙÅ ÐÏÄÓÔÁÎÏ×ËÉ ÒÁÂÏÔÁÀÔ. ïÐÃÉÉ + \samp{-{}-path} É \samp{-{}-format} ÎÅÓÏ×ÍÅÓÔÉÍÙ. + +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + õÓÔÁÎÏ×ÉÔØ ÉÍÑ ÐÒÏÇÒÁÍÍÙ ÒÁ×ÎÙÍ \texttt{\var{name}}. üÔÏ ×ÌÉÑÅÔ ÎÁ + ÐÕÔØ ÐÏÉÓËÁ ÉÚ-ÚÁ ÐÒÅÆÉËÓÁ \texttt{.\var{progname}}. ðÏ ÕÍÏÌÞÁÎÉÀ + \cmdname{kpsewhich}. + +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + ðÏËÁÚÁÔØ ÐÕÔØ, ÉÓÐÏÌØÚÕÅÍÙÊ ÐÒÉ ÐÏÉÓËÁÈ ÆÁÊÌÏ× ÔÉÐÁ + \texttt{\var{name}}. íÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÒÁÓÛÉÒÅÎÉÅ (\code{.pk}, + \code{.vf} É Ô.Ä.) ÉÌÉ ÔÉÐ ÆÁÊÌÁ, ËÁË ÄÌÑ ÏÐÃÉÉ \samp{-{}-format}. + +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + õÓÔÁÎÏ×ÉÔØ ÕÒÏ×ÅÎØ ÏÔÌÁÄËÉ \texttt{\var{num}}. +\end{ttdescription} + + + +\subsubsection{ðÒÉÍÅÒÙ ÉÓÐÏÌØÚÏ×ÁÎÉÑ} +\label{sec:examples-of-use} + +äÁ×ÁÊÔÅ ÐÏÓÍÏÔÒÉÍ ÎÁ \KPS{} × ÄÅÊÓÔ×ÉÉ. ÷ÏÔ ÐÒÏÓÔÏÊ ÐÏÉÓË: + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +íÙ ÉÝÅÍ ÆÁÊÌ \file{article.cls}. ôÁË ËÁË ÓÕÆÆÉËÓ \samp{.cls} +ÏÄÎÏÚÎÁÞÅÎ, ÎÁÍ ÎÅ ÎÕÖÎÏ ÕËÁÚÙ×ÁÔØ, ÞÔÏ ÍÙ ÉÝÅÍ ÆÁÊÌ ÔÉÐÁ +\optname{tex} (ÉÓÈÏÄÎÉËÉ \TeX{}Á). íÙ ÎÁÈÏÄÉÍ ÅÇÏ × ÐÏÄÄÉÒÅËÔÏÒÉÉ +\file{tex/latex/base} ÄÉÒÅËÔÏÒÉÉ \samp{temf-dist} \TL. áÎÁÌÏÇÉÞÎÏ, +×Ó£ ÐÏÓÌÅÄÕÀÝÅÅ ÎÁÈÏÄÉÔÓÑ ÂÅÚ ÐÒÏÂÌÅÍ ÂÌÁÇÏÄÁÒÑ ÏÄÎÏÚÎÁÞÎÏÍÕ ÓÕÆÆÉËÓÕ: +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +ëÓÔÁÔÉ, ÐÏÓÌÅÄÎÅÅ "--- ÂÉÂÌÉÏÇÒÁÆÉÞÅÓËÁÑ ÂÁÚÁ ÄÁÎÎÙÈ ÓÔÁÔÅÊ ÖÕÒÎÁÌÁ +\textsl{TUGBoat}. + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +âÉÔÍÁÐÙ ÛÒÉÆÔÏ× ÔÉÐÁ \file{.pk} ÉÓÐÏÌØÚÕÀÔÓÑ ÐÒÏÇÒÁÍÍÁÍÉ +\cmdname{dvips} É \cmdname{xdvi}. îÉÞÅÇÏ ÎÅ ÎÁÊÄÅÎÏ, ÐÏÓËÏÌØËÕ Õ ÎÁÓ +ÎÅÔ ÇÏÔÏ×ÙÈ ÆÁÊÌÏ× ÛÒÉÆÔÏ× Computer Modern × ÆÏÒÍÁÔÅ \samp{.pk} (ÔÁË +ËÁË ÍÙ ÉÓÐÏÌØÚÕÅÍ ×ÅÒÓÉÉ × ÆÏÒÍÁÔÅ Type~1 ÉÚ ÄÉÓÔÒÉÂÕÔÉ×Á \TL{}). +\begin{alltt} +> \Ucom{kpsewhich wsiupa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +äÌÑ ÜÔÉÈ ÛÒÉÆÔÏ× (ÆÏÎÅÔÉÞÅÓËÉÊ ÁÌÆÁ×ÉÔ, ÓÏÚÄÁÎÎÙÊ × õÎÉ×ÅÒÓÉÔÅÔÅ +ÛÔÁÔÁ ÷ÁÛÉÎÇÔÏÎ) ÍÙ ÄÏÌÖÎÙ ÓÇÅÎÅÒÉÒÏ×ÁÔØ +\samp{.pk}, É ÔÁË ËÁË ÒÅÖÉÍ \MF{} ÐÏ ÕÍÏÌÞÁÎÉÀ × ÎÁÛÅÊ ÓÉÓÔÅÍÅ +\texttt{ljfour} Ó ÒÁÚÒÅÛÅÎÉÅÍ of 600\dpi{} (ÔÏÞÅË ÎÁ ÄÀÊÍ), ÜÔÏÔ ÛÒÉÆÔ +É ÎÁÊÄÅÎ. +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +÷ ÜÔÏÍ ÓÌÕÞÁÅ ÎÁÍ ÎÕÖÎÏ ÒÁÚÒÅÛÅÎÉÅ 300\dpi{} (\texttt{-dpi=300}); ÍÙ +×ÉÄÉÍ, ÞÔÏ ÔÁËÏÇÏ ÛÒÉÆÔÁ × ÓÉÓÔÅÍÅ ÎÅÔ. îÁ ÓÁÍÏÍ ÄÅÌÅ ÐÒÏÇÒÁÍÍÁ +\cmdname{dvips} ÉÌÉ \cmdname{xdvi} ÐÏÓÔÒÏÉÌÁ ÂÙ ÎÕÖÎÙÊ ÆÁÊÌ +\texttt{.pk} ÐÒÉ ÐÏÍÏÝÉ ÓËÒÉÐÔÁ \cmdname{mktexpk}. + +ôÅÐÅÒØ ÏÂÒÁÔÉÍÓÑ Ë ÚÁÇÏÌÏ×ËÁÍ É ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÍ ÆÁÊÌÁÍ +\cmdname{dvips}. ÷ÎÁÞÁÌÅ ÒÁÓÓÍÏÔÒÉÍ ÏÄÉÎ ÉÚ ÎÁÉÂÏÌÅÅ ÞÁÓÔÏ +ÉÓÐÏÌØÚÕÅÍÙÈ ÆÁÊÌÏ×, ÐÒÏÌÏÇ \file{tex.pro} ÄÌÑ ÐÏÄÄÅÒÖËÉ \TeX{}Á, Á +ÚÁÔÅÍ ÒÁÓÓÍÏÔÒÉÍ ÏÂÝÉÊ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ \file{config.ps} É ËÁÒÔÕ +ÛÒÉÆÔÏ× \file{psfonts.map} (Ó 2004 ÇÏÄÁ ËÁÒÔÙ É ÆÁÊÌÙ ËÏÄÉÒÏ×ÏË ÉÍÅÀÔ +ÓÏÂÓÔ×ÅÎÎÙÅ ÐÕÔÉ ÐÏÉÓËÁ × ÄÅÒÅ×ØÑÈ \dirname{texmf}). ôÁË ËÁË ÓÕÆÆÉËÓ +\samp{.ps} ÎÅÏÄÎÏÚÎÁÞÅÎ, ÍÙ ÄÏÌÖÎÙÅ Ñ×ÎÏ ÕËÁÚÁÔØ ÔÉÐ ÆÁÊÌÁ, ËÏÔÏÒÙÊ ÍÙ +ÉÝÅÍ: (\optname{dvips config}) ÄÌÑ ÆÁÊÌÁ \texttt{config.ps}. +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +òÁÓÓÍÏÔÒÉÍ ÔÅÐÅÒØ ÆÁÊÌÙ ÐÏÄÄÅÒÖËÉ \acro{URW} Times (\PS{}). ðÒÅÆÉËÓ +ÄÌÑ ÜÔÉÈ ÆÁÊÌÏ× × ÓÔÁÎÄÁÒÔÎÏÊ ÓÈÅÍÅ ÏÂÏÚÎÁÞÅÎÉÑ ÛÒÉÆÔÏ× \samp{utm}. +÷ÎÁÞÁÌÅ ÍÙ ÒÁÓÓÍÏÔÒÉÍ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ, ËÏÔÏÒÙÊ ÓÏÄÅÒÖÉÔ ÎÁÚ×ÁÎÉÅ +ËÁÒÔÙ ÛÒÉÆÔÏ×: +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} +/usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +óÏÄÅÒÖÁÎÉÅ ÜÔÏÇÏ ÆÁÊÌÁ: +\begin{alltt} + p +utm.map +\end{alltt} +ÞÔÏ ÕËÁÚÙ×ÁÅÔ ÎÁ ÆÁÊÌ \file{utm.map}, ËÏÔÏÒÙÊ ÍÙ ÈÏÔÉÍ ÔÅÐÅÒØ ÎÁÊÔÉ. +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +üÔÁ ËÁÒÔÁ ÏÐÒÅÄÅÌÑÅÔ ÎÁÚ×ÁÎÉÑ ÛÒÉÆÔÏ× ÆÏÒÍÁÔÁ Type~1 (\PS{}) × +ËÏÌÌÅËÃÉÉ URW. ïÎÁ ×ÙÇÌÑÄÉÔ ÔÁË (ÍÙ ÐÏËÁÚÙ×ÁÅÍ ÔÏÌØËÏ ÞÁÓÔØ ÆÁÊÌÁ): +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +éÚ ÜÔÉÈ ÐÒÉÍÅÒÏ× ×ÉÄÎÏ, ÞÔÏ ×Ù ÍÏÖÅÔÅ ÌÅÇËÏ ÎÁÊÔÉ ÚÁÄÁÎÎÙÊ ÆÁÊÌ. +üÔÏ ÏÓÏÂÅÎÎÏ ×ÁÖÎÏ, ÅÓÌÉ ×Ù ÐÏÄÏÚÒÅ×ÁÅÔÅ, ÞÔÏ ÐÒÏÇÒÁÍÍÙ ÎÁÈÏÄÑÔ +ÎÅÐÒÁ×ÉÌØÎÕÀ ×ÅÒÓÉÀ ÆÁÊÌÁ, ÐÏÓËÏÌØËÕ \cmdname{kpsewhich} ÐÏËÁÚÙ×ÁÅÔ +ÐÅÒ×ÙÊ ÎÁÊÄÅÎÎÙÊ ÆÁÊÌ. + +\subsubsection{ïÔÌÁÄËÁ} +\label{sec:debugging} + +éÎÏÇÄÁ ÎÅÏÂÈÏÄÉÍÏ ÐÒÏ×ÅÒÉÔØ, ËÁË ÐÒÏÇÒÁÍÍÁ ÉÝÅÔ ÆÁÊÌÙ. ó ÜÔÏÊ ÃÅÌØÀ +\KPS{} ÐÒÅÄÌÁÇÁÅÔ ÒÁÚÎÙÅ ÕÒÏ×ÎÉ ÏÔÌÁÄËÉ: + +\begin{ttdescription} +\item[\texttt{\ 1}] ÓÔÁÔÉÓÔÉËÁ ÏÂÒÁÝÅÎÉÊ Ë ÄÉÓËÕ. ðÒÉ ÒÁÂÏÔÅ Ó ÂÁÚÁÍÉ + \file{ls-R} ÜÔÏ ÐÏÞÔÉ ÎÅ ÄÏÌÖÎÏ ÄÁ×ÁÔØ ÚÁÐÉÓÅÊ × ÌÏÇ. +\item[\texttt{\ 2}] óÓÙÌËÉ ÎÁ ÈÅÛÉ (ÎÁÐÒÉÍÅÒ, ÂÁÚÙ ÄÁÎÎÙÈ \file{ls-R}, + ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ É Ô.Ä.). +\item[\texttt{\ 4}] ïÐÅÒÁÃÉÉ ÏÔËÒÙÔÉÑ É ÚÁËÒÙÔÉÑ ÆÁÊÌÏ×. +\item[\texttt{\ 8}] ïÂÝÁÑ ÉÎÆÏÒÍÁÃÉÑ Ï ÔÉÐÁÈ ÆÁÊÌÏ×, ËÏÔÏÒÙÅ ÉÝÅÔ + \KPS. üÔÏ ÐÏÌÅÚÎÏ ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÎÁÊÔÉ, ÇÄÅ ÏÐÒÅÄÅÌÑÅÔÓÑ ÔÉÐ ÐÕÔÉ + ÐÏÉÓËÁ ÄÌÑ ÄÁÎÎÏÇÏ ÆÁÊÌÁ. +\item[\texttt{16}] óÐÉÓÏË ÄÉÒÅËÔÏÒÉÊ ÄÌÑ ËÁÖÄÏÇÏ ÜÌÅÍÅÎÔÁ ÐÕÔÉ (ÐÒÉ + ÐÏÉÓËÁÈ ÎÁ ÄÉÓËÅ). +\item[\texttt{32}] ðÏÉÓËÉ ÆÁÊÌÏ×. +\item[\texttt{64}] úÎÁÞÅÎÉÑ ÐÅÒÅÍÅÎÎÙÈ. +\end{ttdescription} +úÎÁÞÅÎÉÅ \texttt{-1} ÚÁÄÁÓÔ ×ÓÅ ÏÐÃÉÉ ×ÙÛÅ; ÉÍÅÎÎÏ ÜÔÏ ÚÎÁÞÅÎÉÅ ÞÁÝÅ +×ÓÅÇÏ ÉÓÐÏÌØÚÕÅÔÓÑ ÎÁ ÐÒÁËÔÉËÅ. + +áÎÁÌÏÇÉÞÎÏ, ÚÁÐÕÓÔÉ× ÐÒÏÇÒÁÍÍÕ \cmdname{dvips} É ÉÓÐÏÌØÚÕÑ ÓÏÞÅÔÁÎÉÅ +ÜÔÉÈ ÏÐÃÉÊ, ÍÏÖÎÏ ÐÒÏÓÌÅÄÉÔØ ÐÏÄÒÏÂÎÏ, ËÁË ÉÝÕÔÓÑ ÆÁÊÌÙ. ó ÄÒÕÇÏÊ +ÓÔÏÒÏÎÙ, ÅÓÌÉ ÆÁÊÌ ÎÅ ÎÁÊÄÅÎ, ÔÒÁÓÓÉÒÏ×ËÁ ÐÏËÁÚÙ×ÁÅÔ, ÇÄÅ ÅÇÏ ÉÓËÁÌÉ, +ÔÁË ÞÔÏ ÍÏÖÎÏ ÐÏÎÑÔØ, × Þ£Í ÓÏÓÔÏÉÔ ÐÒÏÂÌÅÍÁ. + +÷ÏÏÂÝÅ ÇÏ×ÏÒÑ, ÐÏÓËÏÌØËÕ ÂÏÌØÛÉÎÓÔ×Ï ÐÒÏÇÒÁÍÍ ÐÏÌØÚÕÀÔÓÑ ÂÉÂÌÉÏÔÅËÏÊ +\KPS{}, ×Ù ÍÏÖÅÔÅ ÕÓÔÁÎÏ×ÉÔØ ÏÐÃÉÀ ÏÔÌÁÄËÉ ÉÓÐÏÌØÚÕÑ ÐÅÒÅÍÅÎÎÕÀ +ÏËÒÕÖÅÎÉÑ \envname{KPATHSEA\_DEBUG}, É ÕÓÔÁÎÏ×É× Å£ ÎÁ ËÏÍÂÉÎÁÃÉÀ +ÏÐÉÓÁÎÎÙÈ ×ÙÛÅ ÚÎÁÞÅÎÉÊ. + +(ðÒÉÍÅÞÁÎÉÅ ÄÌÑ ÐÏÌØÚÏ×ÁÔÅÌÅÊ Windows: × ÜÔÏÊ ÓÉÓÔÅÍÅ ÔÒÕÄÎÏ +ÐÅÒÅÎÁÐÒÁ×ÉÔØ ×ÓÅ ÓÏÏÂÝÅÎÉÑ × ÆÁÊÌ. äÌÑ ÄÉÁÇÎÏÓÔÉËÉ ×Ù ÍÏÖÅÔÅ ×ÒÅÍÅÎÎÏ +ÕÓÔÁÎÏ×ÉÔØ \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}). + + +òÁÓÓÍÏÔÒÉÍ × ËÁÞÅÓÔ×Å ÐÒÉÍÅÒÁ ÐÒÏÓÔÏÊ ÆÁÊÌ × ÆÏÒÍÁÔÅ \LaTeX{}, +\file{hello-world.tex}, ÓÏ ÓÌÅÄÕÀÝÉÍ ÓÏÄÅÒÖÁÎÉÅÍ: +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +üÔÏÔ ÍÁÌÅÎØËÉÊ ÆÁÊÌ ÉÓÐÏÌØÚÕÅÔ ÔÏÌØËÏ ÛÒÉÆÔ \file{cmr10}, ÔÁË ÞÔÏ +ÄÁ×ÁÊÔÅ ÐÏÓÍÏÔÒÉÍ, ËÁË \cmdname{dvips} ÓÏÚÄÁ£Ô ÆÁÊÌ × ÆÏÒÍÁÔÅ \PS{} +(ÍÙ ÈÏÔÉÍ ÉÓÐÏÌØÚÏ×ÁÔØ ×ÅÒÓÉÀ ÛÒÉÆÔÏ× × ÆÏÒÍÁÔÅ Type~1, ÏÔÓÀÄÁ ÏÐÃÉÑ +\texttt{-Pcms}). +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +÷ ÜÔÏÍ ÓÌÕÞÁÅ ÍÙ ÏÂßÅÄÉÎÉÌÉ ÏÔÌÁÄÏÞÎÙÊ ÕÒÏ×ÅÎØ 4 ÄÌÑ \cmdname{dvips} +(ÄÉÒÅËÔÏÒÉÉ ÛÒÉÆÔÏ×) Ó ÐÏÄÓÔÁÎÏ×ËÏÊ ÜÌÅÍÅÎÔÏ× ÐÕÔÅÊ × \KPS (ÓÍ. +òÕËÏ×ÏÄÓÔ×Ï ÐÏÌØÚÏ×ÁÔÅÌÑ \cmdname{dvips}, +\OnCD{texmf/doc/dvips/dvips.pdf}). òÅÚÕÌØÔÁÔ (ÓÌÅÇËÁ +ÏÔÒÅÄÁËÔÉÒÏ×ÁÎÎÙÊ) ÐÏËÁÚÁÎ ÎÁ ÒÉÓÕÎËÅ~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{ðÏÉÓË ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÈ ÆÁÊÌÏ×}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{ðÏÉÓË ÆÁÊÌÁ ÐÒÏÌÏÇÁ}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{ðÏÉÓË ÆÁÊÌÁ ÛÒÉÆÔÁ}\label{fig:dvipsdbgc} +\end{figure*} + +ðÒÏÇÒÁÍÍÁ \cmdname{dvips} ×ÎÁÞÁÌÅ ÉÝÅÔ Ó×ÏÉ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ. +óÎÁÞÁÌÁ ÎÁÈÏÄÉÔÓÑ \file{texmf.cnf}, ËÏÔÏÒÙÊ ÓÏÄÅÒÖÉÔ ÏÐÒÅÄÅÌÅÎÉÑ ÄÌÑ +ÐÕÔÅÊ ÐÏÉÓËÁ ÏÓÔÁÌØÎÙÈ ÆÁÊÌÏ×, ÚÁÔÅÍ ÂÁÚÁ ÄÁÎÎÙÈ \file{ls-R} (ÄÌÑ +ÏÐÔÉÍÉÚÁÃÉÉ ÐÏÉÓËÁ ÆÁÊÌÏ×) É ÆÁÊÌ \file{aliases}, ËÏÔÏÒÙÊ ÐÏÚ×ÏÌÑÅÔ +ÏÂßÑ×ÉÔØ ÎÅÓËÏÌØËÏ ÉͣΠ(ÎÁÐÒÉÍÅÒ, ËÏÒÏÔËÉÅ 8.3 É ÂÏÌÅÅ ÄÌÉÎÎÙÅ) ÄÌÑ +ÏÄÎÏÇÏ ÆÁÊÌÁ. úÁÔÅÍ \cmdname{dvips} ÉÝÅÔ Ó×ÏÊ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ +\file{config.ps} É ÆÁÊÌ +\file{.dvipsrc} (ËÏÔÏÒÙÊ × ÄÁÎÎÏÍ ÓÌÕÞÁÅ \emph{ÎÅ ÎÁÊÄÅÎ}). îÁËÏÎÅÃ, +\cmdname{dvips} ÎÁÈÏÄÉÔ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ ÄÌÑ ÛÒÉÆÔÏ× Computer +Modern \PS{} \file{config.cms} (ÜÔÏ ÂÙÌÏ ÚÁÄÁÎÏ ÏÐÃÉÅÊ \texttt{-Pcms} +× ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÅ). üÔÏÔ ÆÁÊÌ ÓÏÄÅÒÖÉÔ ÓÐÉÓÏË ËÁÒÔ, ËÏÔÏÒÙÅ +ÏÐÒÅÄÅÌÑÀÔ ÓÏÏÔÎÏÛÅÎÉÑ ÍÅÖÄÕ ÆÁÊÌÁÍÉ × ÆÏÒÍÁÔÁÈ \TeX{}, \PS{} +É ÎÁÚ×ÁÎÉÑÍÉ ÛÒÉÆÔÏ×: +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} ÎÁÈÏÄÉÔ ×ÓÅ ÜÔÉ ÆÁÊÌÙ ÐÌÀÓ ÏÂÝÕÀ ËÁÒÔÕ ÛÒÉÆÔÏ× +\file{psfonts.map}, ËÏÔÏÒÁÑ ×ÓÅÇÄÁ ÚÁÇÒÕÖÁÅÔÓÑ (ÏÎÁ ÓÏÄÅÒÖÉÔ ÏÂÙÞÎÙÅ +ÛÒÉÆÔÙ × ÆÏÒÍÁÔÅ \PS{}; ÓÍ. ÐÏÓÌÅÄÎÀÀ ÞÁÓÔØ +ÒÁÚÄÅÌÁ~\ref{sec:examples-of-use}). + +÷ ÜÔÏÔ ÍÏÍÅÎÔ \cmdname{dvips} ÓÏÏÂÝÁÅÔ Ï ÓÅÂÅ ÐÏÌØÚÏ×ÁÔÅÌÀ: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +úÁÔÅÍ ÏÎÁ ÉÝÅÔ ÐÒÏÌÏÇ \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +úÁÔÅÍ ÏÎÁ ÉÝÅÔ ÐÒÏÌÏÇ \file{texc.pro} (ÓÍ. +ÒÉÓÕÎÏË~\ref{fig:dvipsdbgb}). +\fi + +îÁÊÄÑ ÜÔÏÔ ÆÁÊÌ, \cmdname{dvips} ÐÅÞÁÔÁÅÔ ÄÁÔÕ É ×ÒÅÍÑ, É ÉÎÆÏÒÍÉÒÕÅÔ +ÎÁÓ, ÞÔÏ ÓÏÂÉÒÁÅÔÓÑ ÇÅÎÅÒÉÒÏ×ÁÔØ ÆÁÊÌ \file{hello-world.ps}, ÞÔÏ ÅÊ +ÎÕÖÅÎ ÆÁÊÌ \file{cmr10}, É ÞÔÏ ÐÏÓÌÅÄÎÉÊ Ñ×ÌÑÅÔÓÑ <<ÒÅÚÉÄÅÎÔÎÙÍ>> +(ÂÉÔÍÁÐÙ ÎÅ ÎÕÖÎÙ): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +ôÅÐÅÒØ ÏÎÁ ÉÝÅÔ ÆÁÊÌ \file{cmr10.tfm}, ËÏÔÏÒÙÊ ÏÎÁ ÎÁÈÏÄÉÔ, ÚÁÔÅÍ ÅÝ£ +ÎÅÓËÏÌØËÏ ÐÒÏÌÏÇÏ× (ÚÄÅÓØ ÏÎÉ ÏÐÕÝÅÎÙ), É ÎÁËÏÎÅà ÆÁÊÌ ÆÏÒÍÁÔÁ Type~1 +\file{cmr10.pfb} ÎÁÊÄÅÎ É ×ËÌÀÞ£Î × ×ÙÈÏÄÎÏÊ ÆÁÊÌ (ÓÍ, ÐÏÓÌÅÄÎÀÀ +ÓÔÒÏËÕ): +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{ïÐÃÉÉ ÚÁÐÕÓËÁ} + +åÝ£ ÏÄÎÁ ÐÏÌÅÚÎÁÑ ×ÏÚÍÏÖÎÏÓÔØ \Webc{} "--- ÉÚÍÅÎÅÎÉÅ ÐÁÒÁÍÅÔÒÏ× ÐÁÍÑÔÉ +(× ÏÓÏÂÅÎÎÏÓÔÉ ÒÁÚÍÅÒÏ× ÍÁÓÓÉ×Ï×) ÐÒÉ ÚÁÐÕÓËÅ, ×Ï ×ÒÅÍÑ ÞÔÅÎÉÑ ÆÁÊÌÁ +\file{texmf.cnf} ÂÉÂÌÉÏÔÅËÏÊ \KPS{}. ðÁÒÁÍÅÔÒÙ ÐÁÍÑÔÉ ÎÁÈÏÄÑÔÓÑ × +ÞÁÓÔÉ~3 ÜÔÏÇÏ ÆÁÊÌÁ × ÄÉÓÔÒÉÂÕÔÉ×Å \TL{}. ÷ÏÔ ÓÁÍÙÅ ×ÁÖÎÙÅ: + +\begin{ttdescription} +\item[\texttt{main\_memory}] ïÂÝÅÅ ËÏÌÉÞÅÓÔ×Ï ÓÌÏ× × ÐÁÍÑÔÉ ÄÌÑ + ÐÒÏÇÒÁÍÍ \TeX{}, \MF{} É \MP. ðÏÓÌÅ ÉÚÍÅÎÅÎÉÑ ÜÔÏÇÏ ÐÁÒÁÍÅÔÒÁ ÎÁÄÏ + ÐÅÒÅÇÅÎÅÒÉÒÏ×ÁÔØ ÆÏÒÍÁÔ. îÁÐÒÉÍÅÒ, ×Ù ÍÏÖÅÔÅ ÓÏÚÄÁÔØ <<ÏÇÒÏÍÎÕÀ>> + ×ÅÒÓÉÀ \TeX{}Á, É ÎÁÚ×ÁÔØ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÊ ÆÏÒÍÁÔ + \texttt{hugetex.fmt}. ðÏ ÏÂÝÉÍ ÐÒÁ×ÉÌÁÍ \KPS{}, ÚÎÁÞÅÎÉÅ ÐÅÒÅÍÅÎÎÏÊ + \texttt{main\_memory} ÂÕÄÅÔ ÞÉÔÁÔØÓÑ ÉÚ ÆÁÊÌÁ \file{texmf.cnf}. +\item[\texttt{extra\_mem\_bot}] äÏÐÏÌÎÉÔÅÌØÎÁÑ ÐÁÍÑÔØ ÄÌÑ <<ÂÏÌØÛÉÈ>> + ÓÔÒÕËÔÕÒ, ËÏÔÏÒÙÅ ÓÏÚÄÁ£Ô \TeX{}: ÂÏËÓÏ×, ËÌÅÑ É Ô.Ä. ïÓÏÂÅÎÎÏ + ÐÏÌÅÚÎÏ ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ \PiCTeX{}Á. +\item[\texttt{font\_mem\_size}] ëÏÌÉÞÅÓÔ×Ï ÓÌÏ× ÉÎÆÏÒÍÁÃÉÉ Ï ÛÒÉÆÔÁÈ + ÄÌÑ \TeX{}Á. üÔÏ ÐÒÉÍÅÒÎÏ ÓÕÍÍÁÒÎÙÊ ÒÁÚÍÅÒ ×ÓÅÈ ÆÁÊÌÏ× TFM, ËÏÔÏÒÙÅ + ÞÉÔÁÅÔ \TeX. +\item[\texttt{hash\_extra}] + äÏÐÏÌÎÉÔÅÌØÎÙÊ ÒÁÚÍÅÒ ÈÅÛÁ ÄÌÑ ÉͣΠËÏÍÁÎÄ. ðÒÉÍÅÒÎÏ 10\,000 ËÏÍÁÎÄ + ÍÏÖÅÔ ÂÙÔØ ÐÏÍÅÝÅÎÏ × ÏÓÎÏ×ÎÏÊ ÈÅÛ. åÓÌÉ ×Ù ÄÅÌÁÅÔÅ ÂÏÌØÛÕÀ ËÎÉÇÕ ÓÏ + ÍÎÏÇÉÍÉ ÐÅÒÅËÒ£ÓÔÎÙÍÉ ÓÓÙÌËÁÍÉ, ÜÔÏÇÏ ÍÏÖÅÔ ÎÅ È×ÁÔÉÔØ. ðÏ ÕÍÏÌÞÁÎÉÀ + \texttt{hash\_extra} ÒÁ×ÅÎ \texttt{50000}. +\end{ttdescription} + +\noindent òÁÚÕÍÅÅÔÓÑ, ÜÔÏ ÎÅ ÚÁÍÅÎÁ ÎÁÓÔÏÑÝÉÈ ÄÉÎÁÍÉÞÅÓËÉÈ ÍÁÓÓÉ×Ï× É +ÒÁÓÐÒÅÄÅÌÅÎÉÑ ÐÁÍÑÔÉ, ÎÏ ÐÏÓËÏÌØËÕ ÜÔÉ ÞÅÒÔÙ ÉÓËÌÀÞÉÔÅÌØÎÏ ÓÌÏÖÎÏ +ÏÓÕÝÅÓÔ×ÉÔØ × ÔÅËÕÝÅÍ \TeX{}Å, ÉÓÐÏÌØÚÏ×ÁÎÉÅ ÜÔÉÈ ÐÁÒÁÍÅÔÒÏ× +ÐÒÅÄÓÔÁ×ÌÑÅÔ ÓÏÂÏÊ ÐÏÌÅÚÎÙÊ ËÏÍÐÒÏÍÉÓÓ É ÏÂÅÓÐÅÞÉ×ÁÅÔ ÎÅËÏÔÏÒÕÀ +ÇÉÂËÏÓÔØ. + + +\begin{comment} +\section{ëÏÍÐÉÌÉÒÏ×ÁÎÉÅ ÄÌÑ ÎÏ×ÏÊ ÐÌÁÔÆÏÒÍÙ ÔÉÐÁ Unix} + + +åÓÌÉ Õ ×ÁÓ ÐÌÁÔÆÏÒÍÁ, ÄÌÑ ËÏÔÏÒÏÊ ÍÙ ÎÅ ÓËÏÍÐÉÌÉÒÏ×ÁÌÉ ÐÒÏÇÒÁÍÍ, ×ÁÍ +ÐÒÉÄ£ÔÓÑ ÜÔÏ ÓÄÅÌÁÔØ ÓÁÍÉÍ. üÔÏ ÎÅ ÔÁË ÕÖ ÓÌÏÖÎÏ. ÷Ó£, ÞÔÏ ×ÁÍ ÍÏÖÅÔ +ÐÏÎÁÄÏÂÉÔØÓÑ, ÅÓÔØ × ÄÉÓÔÒÉÂÕÔÉ×Å × ÄÉÒÅËÔÏÒÉÉ \texttt{source}. + +\subsection{îÅÏÂÈÏÄÉÍÙÅ ÉÎÓÔÒÕÍÅÎÔÙ} + +÷ÁÍ ÎÕÖÎÏ ÐÏ ËÒÁÊÎÅÊ ÍÅÒÅ 100\,Mb ÎÁ ÄÉÓËÅ ÄÌÑ ËÏÍÐÉÌÉÒÏ×ÁÎÉÑ \TeX{}Á É +ÄÒÕÇÉÈ ÐÒÏÇÒÁÍÍ. ÷ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ ËÏÍÐÉÌÑÔÏÒ \acro{ANSI} C, ÐÒÏÇÒÁÍÍÁ +\cmdname{make}, ÌÅËÓÉÞÅÓËÉÊ ÓËÁÎÅÒ É ÇÅÎÅÒÁÔÏÒ ÐÁÒÓÅÒÏ×. íÙ +ÒÅËÏÍÅÎÄÕÅÍ ×ÅÒÓÉÉ ÜÔÉÈ ÐÒÏÇÒÁÍÍ ÏÔ \acro{GNU} +(\cmdname{gcc}, \acro{GNU} \cmdname{make}, \cmdname{m4}, \cmdname{flex}, +\cmdname{bison}). ÷Ù ÍÏÖÅÔÅ ÒÁÂÏÔÁÔØ É Ó ÄÒÕÇÉÍÉ ËÏÍÐÉÌÑÔÏÒÁÍÉ É +×ÅÒÓÉÑÍÉ \cmdname{make}, ÎÏ ×ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ ÇÌÕÂÏËÏÅ ÐÏÎÉÍÁÎÉÅ UNIX, +ÞÔÏÂÙ ÒÁÚÏÂÒÁÔØÓÑ × ×ÏÚÍÏÖÎÙÈ ÐÒÏÂÌÅÍÁÈ. + +ëÒÏÍÅ ÔÏÇÏ, ËÏÍÁÎÄÁ \texttt{uname} ÄÏÌÖÎÁ ÄÁ×ÁÔØ ÒÁÚÕÍÎÙÊ ÒÅÚÕÌØÔÁÔ. + + +\subsection{ëÏÎÆÉÇÕÒÁÃÉÑ} + +óÎÁÞÁÌÁ ÐÒÏÉÚ×ÅÄÉÔÅ ÎÏÒÍÁÌØÎÕÀ ÕÓÔÁÎÏ×ËÕ \TL{} ÎÁ ×ÁÛ ÄÉÓË (ÓÍ. +ÒÁÚÄÅÌ~\ref{sec:unix-install-disk} +\p.~\pageref{sec:unix-install-disk}). ÷Ù ÍÏÖÅÔÅ ÐÒÏÐÕÓÔÉÔØ ÕÓÔÁÎÏ×ËÕ +ÓËÏÍÐÉÌÉÒÏ×ÁÎÎÙÈ ÐÒÏÇÒÁÍÍ. + +úÁÔÅÍ ÒÁÓÐÁËÕÊÔÅ ÉÓÈÏÄÎÉËÉ ÉÚ ÆÁÊÌÁ × ÄÉÒÅËÔÏÒÉÉ \dirname{source} ÎÁ +×ÁÛ ÄÉÓË É ÓÍÅÎÉÔÅ ÄÉÒÅËÔÏÒÉÀ ÔÕÄÁ, ÇÄÅ ×Ù ÒÁÓËÒÙÌÉ ÜÔÏÔ ÆÁÊÌ. + +úÁÔÅÍ ÚÁÐÕÓÔÉÔÅ \cmdname{configure}, ÎÁÐÒÉÍÅÒ, ÔÁË: +\begin{alltt} +> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +äÉÒÅËÔÏÒÉÑ \optname{-prefix} "--- ÜÔÏ ÍÅÓÔÏ, ËÕÄÁ ×Ù ÕÓÔÁÎÏ×ÉÌÉ +ÏÓÎÏ×ÎÏÅ ÄÅÒÅ×Ï ÐÏÄÄÅÒÖËÉ. óÔÒÕËÔÕÒÁ ÄÉÒÅËÔÏÒÉÊ ÂÕÄÅÔ ÔÁËÏ×Á +(\$TEXDIR ÏÚÎÁÞÁÅÔ ×ÙÂÒÁÎÎÕÀ ÄÉÒÅËÔÏÒÉÀ): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & ÏÓÎÏ×ÎÏÅ ÄÅÒÅ×Ï ÓÏ ÛÒÉÆÔÁÍÉ,\\ + & \qquad ÍÁËÒÏÓÙ É Ô.Ä.\\ + \dirname{$TEXDIR/man} & ÒÕËÏ×ÏÄÓÔ×Á × ÆÏÒÍÁÔÅ Unix man\\ + \dirname{$TEXDIR/info} & ÒÕËÏ×ÏÄÓÔ×Á × ÆÏÒÍÁÔÅ \acro{GNU} Info \\ + \dirname{$TEXDIR/bin/$PLATFORM} & ÐÒÏÇÒÁÍÍÙ\\ +\end{tabular} +%$ + +åÓÌÉ ×Ù ÈÏÔÉÔÅ ÕÂÒÁÔØ ÕÒÏ×ÅÎØ ÄÉÒÅËÔÏÒÉÊ \dirname{$PLATFORM}, +Ô.Å. ÐÏÍÅÓÔÉÔØ ÐÒÏÇÒÁÍÍÙ ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ × \dirname{$TEXDIR/bin}, +ÄÏÂÁ×ØÔÅ Ë ÏÐÃÉÑÍ \verb|--disable-multiplatform|. + +ðÏÓÍÏÔÒÉÔÅ ÎÁ ÒÅÚÕÌØÔÁÔ \verb|./configure --help| ÄÌÑ ÏÓÔÁÌØÎÙÈ +ÏÐÃÉÊ. îÁÐÒÉÍÅÒ, ×Ù ÍÏÖÅÔÅ ÎÅ ËÏÍÐÉÌÉÒÏ×ÁÔØ \OMEGA{} É +\eTeX{}. + + +\subsection{úÁÐÕÓË \cmdname{make}} + +õÂÅÄÉÔÅÓØ, ÞÔÏ ÐÅÒÅÍÅÎÎÁÑ ÏÂÏÌÏÞËÉ ÉÌÉ ÏÐÃÉÑ \texttt{noclobber} ÎÅ +ÚÁÄÁÎÁ. úÁÔÅÍ ÚÁÐÕÓÔÉÔÅ \cmdname{make}: +\begin{alltt} +> \Ucom{make world} +\end{alltt} +É ÒÁÓÓÌÁÂØÔÅÓØ\ldots + +åÓÌÉ ×Ù ÈÏÔÉÔÅ ÚÁÐÉÓÁÔØ × ÌÏÇ ×ÓÅ ÐÒÏÉÓÈÏÄÑÝÅÅ, ÉÓÐÏÌØÚÕÊÔÅ: +\begin{alltt} +> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +ðÅÒÅÄ ÔÅÍ, ËÁË ×Ù ÒÅÛÉÔÅ, ÞÔÏ ×Ó£ ÐÒÏÛÌÏ ÎÏÒÍÁÌØÎÏ, ÐÒÏ×ÅÒØÔÅ ÌÏÇ ÎÁ +ÏÛÉÂËÉ; \acro{GNU} \cmdname{make} ×ÓÅÇÄÁ ÉÓÐÏÌØÚÕÅÔ ÓÔÒÏËÕ \samp{***} +ÐÒÉ ÏÛÉÂËÅ. ëÒÏÍÅ ÔÏÇÏ, ÐÒÏ×ÅÒØÔÅ, ÞÔÏ ×ÓÅ ÐÒÏÇÒÁÍÍÙ +ÓËÏÍÐÉÌÉÒÏ×ÁÌÉÓØ: +\begin{alltt} +> \Ucom{cd \emph{TEXDIR}/bin/\emph{archname}} +> \Ucom{ls | wc} +\end{alltt} +òÅÚÕÌØÔÁÔ ÄÏÌÖÅÎ ÂÙÔØ ÂÏÌØÛÅ 200 (×Ù ÍÏÖÅÔÅ ÐÏÌÕÞÉÔØ ÔÏÞÎÏÅ ÞÉÓÌÏ, +ÐÒÏ×ÅÒÉ× ÓÏÄÅÒÖÉÍÏÅ ÄÉÒÅËÔÏÒÉÉ +\dirname{bin} × ÄÉÓÔÒÉÂÕÔÉ×Å). + +åÓÌÉ ×ÁÍ ÎÕÖÎÙ ÓÐÅÃÉÁÌØÎÙÅ ÐÒÉ×ÉÌÅÇÉÉ ÄÌÑ \texttt{make install}, ×Ù +ÍÏÖÅÔÅ ÒÁÚÄÅÌÉÔØ \samp{make world} ÎÁ Ä×Á ÐÒÉ£ÍÁ: +\begin{alltt} +> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +ðÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ×ÁÛÉÈ ÎÏ×ÙÈ ÐÒÏÇÒÁÍÍ, ×ÙÐÏÌÎÉÔÅ ÏÂÙÞÎÙÅ ÐÒÏÃÅÄÕÒÙ +ÎÁÓÔÒÏÊËÉ, ÏÐÉÓÁÎÎÙÅ × ÒÁÚÄÅÌÅ~\ref{sec:postinstall}, +\p.~\pageref{sec:postinstall}. + +ëÒÏÍÅ ÔÏÇÏ, ÅÓÌÉ ×Ù ÈÏÔÉÔÅ, ÞÔÏÂÙ ×ÁÛÉÍÉ ÐÒÏÇÒÁÍÍÁÍÉ ÐÏÌØÚÏ×ÁÌÉÓØ +ÄÒÕÇÉÅ ÌÀÄÉ, ÎÁÐÉÛÉÔÅ ÎÁÍ. íÙ ÂÕÄÅÍ ÒÁÄÙ ÐÏÍÅÓÔÉÔØ ÉÈ ÎÁ ÓÔÒÁÎÉÃÙ +\TL{} × ÓÅÔÉ. + +\end{comment} + +\htmlanchor{ack} +\section{âÌÁÇÏÄÁÒÎÏÓÔÉ} + +\TL{} "--- ÒÅÚÕÌØÔÁÔ ÏÂßÅÄÉΣÎÎÙÈ ÕÓÉÌÉÊ ÐÒÁËÔÉÞÅÓËÉ ×ÓÅÈ ÇÒÕÐÐ +ÐÏÌØÚÏ×ÁÔÅÌÅÊ \TeX Á. üÔÏ ÉÚÄÁÎÉÅ \TL{} ×ÙÈÏÄÉÔ ÐÏÄ ÒÅÄÁËÃÉÅÊ ëÁÒÌÁ +âÅÒÒÉ. äÒÕÇÉÅ ÏÓÎÏ×ÎÙÅ Á×ÔÏÒÙ, ÐÒÏÛÌÙÅ É ÎÁÓÔÏÑÝÉÅ, ÐÅÒÅÞÉÓÌÅÎÙ ÎÉÖÅ. +íÙ ÂÌÁÇÏÄÁÒÉÍ: + +\begin{itemize*} + +\item áÎÇÌÏÑÚÙÞÎÕÀ, ÎÅÍÅÃËÕÀ, ÇÏÌÌÁÎÄÓËÕÀ É ÐÏÌØÓËÕÀ ÇÒÕÐÐÙ + ÐÏÌØÚÏ×ÁÔÅÌÅÊ \TeX{}Á (\acro{TUG}, \acro{DANTE} e.V., \acro{NTG} É + \acro{GUST}) ÚÁ ÎÅÏÂÈÏÄÉÍÕÀ ÔÅÈÎÉÞÅÓËÕÀ É ÁÄÍÉÎÉÓÔÒÁÔÉ×ÎÕÀ + ÉÎÆÒÁÓÔÒÕËÔÕÒÕ. ðÏÖÁÌÕÊÓÔÁ, ×ÓÔÕÐÁÊÔÅ × ÇÒÕÐÐÙ ÐÏÌØÚÏ×ÁÔÅÌÅÊ \TeX + Á (ÓÍ. \url{http://tug.org/usergroups.html}). + +\item çÒÕÐÐÕ ÐÏÄÄÅÒÖËÉ \acro{CTAN}, × ÏÓÏÂÅÎÎÏÓÔÉ òÏÂÉÎÁ æÜÊÒÂÜÊÒÎÓÁ, + äÖÉÍÁ èÅÆÆÅÒÏÎÁ É òÁÊÎÅÒÁ ûÏÐÆÁ ÚÁ ÒÁÚÍÅÝÅÎÉÅ ÄÉÓËÏ× \TL{} É + ÐÏÄÄÅÒÖËÕ ÉÎÆÒÁÓÔÒÕËÔÕÒÙ ÏÂÎÏ×ÌÅÎÉÑ ÐÁËÅÔÏ×, ÏÔ ËÏÔÏÒÏÊ ÚÁ×ÉÓÉÔ + \TL. + +\item îÅÌØÓÏÎÁ âÉÂÁ ÚÁ ÐÒÅÄÏÓÔÁ×ÌÅÎÎÙÅ ÒÁÚÒÁÂÏÔÞÉËÁÍ \TL\ ËÏÍÐØÀÔÅÒÙ É + ÚÁ ÔÅÓÔÉÒÏ×ÁÎÉÅ ÄÉÓÔÒÉÂÕÔÉ×Á. + +\item äÖÏÎÁ âÏÕÍÁÎÁ ÚÁ ÒÁÂÏÔÕ ÐÏ ÉÎÔÅÇÒÉÒÏ×ÁÎÉÀ ÅÇÏ ÐÒÏÇÒÁÍÍÙ ÄÌÑ + ÓÌÏÖÎÏÊ ÇÒÁÆÉËÉ Asymptote × \TL. + + +\item ðÉÔÅÒÁ âÒÅÊÔÅÎÌÏÈÎÅÒÁ É ËÏÍÁÎÄÕ ÒÁÚÒÁÂÏÔÞÉËÏ× \eTeX Á ÚÁ + ÓÔÁÂÉÌØÎÙÊ Ä×ÉÖÏË ÄÌÑ ÂÕÄÕÝÉÈ \TeX Ï×, É × ÏÓÏÂÅÎÎÏÓÔÉ ðÉÔÅÒÁ ÚÁ + ÂÌÅÓÔÑÝÕÀ ÒÁÂÏÔÕ Ó ÓÉÓÔÅÍÏÊ \acro{GNU} autoools ÄÌÑ \TL{}. + +\item ãÚÉÎØ-èÕÜÑ þÏÕ É ËÏÍÁÎÄÕ ÒÁÚÒÁÂÏÔÞÉËÏ× DVIPDFM$x$ ÚÁ ÉÈ + ÐÒÅËÒÁÓÎÙÊ ÄÒÁÊ×ÅÒ É ÐÏÍÏÝØ × ÅÇÏ ËÏÎÆÉÇÕÒÁÃÉÉ. + + +\item ôÏÍÁÓÁ üÓÓÅÒÁ, ÂÅÚ ÚÁÍÅÞÁÔÅÌØÎÏÇÏ ÐÁËÅÔÁ \teTeX{} ËÏÔÏÒÏÇÏ \TL{} + ÎÅ ÓÕÝÅÓÔ×Ï×ÁÌ ÂÙ. + +\item íÁÊËÌÁ çÕÓÅÎÓÁ, ËÏÔÏÒÙÊ ÂÙÌ ÓÏÁ×ÔÏÒÏÍ ÐÅÒ×ÏÊ ×ÅÒÓÉÉ ÄÏËÕÍÅÎÔÁÃÉÉ. + + +\item üÊÔÁÎÁ çÕÒÁÒÉ, ÞÅÊ \TeX4ht{} ÉÓÐÏÌØÚÏ×ÁÌÓÑ ÄÌÑ ÓÏÚÄÁÎÉÑ ÆÁÊÌÏ× × + ÆÏÒÍÁÔÅ \HTML{}, É ËÏÔÏÒÙÊ ÎÅÕÓÔÁÎÎÏ ÒÁÂÏÔÁÌ, ÐÏ ÐÅÒ×ÏÍÕ ÔÒÅÂÏ×ÁÎÉÀ + ÄÏÂÁ×ÌÑÑ ÎÕÖÎÙÅ ÎÁÍ ×ÏÚÍÏÖÎÏÓÔÉ. üÊÔÁÎ ÂÅÚ×ÒÅÍÅÎÎÏ ÓËÏÎÞÁÌÓÑ × ÉÀÎÅ + 2009 ÇÏÄÁ, É ÍÙ ÐÏÓ×ÑÝÁÅÍ ÜÔÕ ÄÏËÕÍÅÎÔÁÃÉÀ ÅÇÏ ÐÁÍÑÔÉ. + +\item èÁÎÓÁ èÁÇÅÎÁ ÚÁ ÐÏÍÏÝØ × ÔÅÓÔÉÒÏ×ÁÎÉÉ É ÐÒÉÓÐÏÓÏÂÌÅÎÉÉ ÆÏÒÍÁÔÁ + \ConTeXt\ (\url{http://pragma-ade.com}) Ë \TL. + +\item èÁÎ ôÈÅ ôÈÁÎÑ, íÁÒÔÉÎÁ ûÒ£ÄÅÒÁ É ËÏÍÁÎÄÕ pdf\TeX a + (\url{http://pdftex.org}) ÒÁÓÛÉÒÅÎÉÅ ×ÏÚÍÏÖÎÏÓÔÅÊ \TeX + Á. + +\item èÁÒÔÍÕÔÁ èÅÎËÅÌÑ ÚÁ ÓÕÝÅÓÔ×ÅÎÎÙÊ ×ËÌÁÄ × pdf\TeX\, Lua\TeX{} É + ÄÒÕÇÉÅ ÐÒÏÇÒÁÍÍÙ. + + +\item ôÁËÏ èÏÅË×ÁÔÅÒÁ ÚÁ ×ÏÚÏÂÎÏ×ÌÅÎÉÅ ÒÁÂÏÔÙ ÎÁÄ \MP{} É (Lua)\TeX ÏÍ + (\url{http://luatex.org}) ÚÁ ÉÎÔÅÇÒÉÒÏ×ÁÎÉÅ \ConTeXt Á × \TL, + ÐÁÒÁÌÌÅÌÉÚÁÃÉÀ ÐÒÏÇÒÁÍÍÙ Kpathsea É ÍÎÏÇÏ ÄÒÕÇÏÅ + +\item ðÁ×ÌÁ ñÃËÏ×ÓËÏÇÏ ÚÁ ÉÎÓÔÁÌÌÑÔÏÒ ÄÌÑ Windows \cmdname{tlpm}, É + ôÏÍÁÛÁ ìÕÖÁËÁ ÚÁ \cmdname{tlpmgui}, ÉÓÐÏÌØÚÏ×ÁÎÎÙÅ × ÐÒÏÛÌÙÈ ×ÅÒÓÉÑÈ + \TL{}. + +\item áËÉÒÕ ëÁËÕÔÏ ÚÁ ÂÏÌØÛÕÀ ÐÏÍÏÝØ × ÉÎÔÅÇÒÉÒÏ×ÁÎÉÉ × ÓÉÓÔÅÍÕ + ÐÒÏÇÒÁÍÍ ÄÌÑ Windows ÉÚ ÅÇÏ ÄÉÓÔÒÉÂÕÔÉ×Á \acro{W32TEX} + (\url{http://www.fsci.fuk.kindai.ac.jp/kakuto/win32-ptex/}) É ÍÎÏÇÏÅ + ÄÒÕÇÏÅ. + +\item äÖÏÎÁÔÁÎÁ ëØÀ ÚÁ ÓÏÚÄÁÎÉÅ ÚÁÍÅÞÁÔÅÌØÎÏÊ + ÎÏ×ÏÊ ÓÉÓÔÅÍÙ Xe\TeX{}, ÚÁ ÕÓÉÌÉÑ ÐÏ Å£ ÉÎÔÅÇÒÉÒÏ×ÁÎÉÀ × \TL{}, ÚÁ + ÉÓÈÏÄÎÕÀ ×ÅÒÓÉÀ ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ Mac\TeX É ÚÁ + ÒÅËÏÍÅÎÄÏ×ÁÎÎÕÀ ÎÁÍÉ ÏÂÏÌÏÞËÕ ÄÌÑ ÒÁÂÏÔÙ × \TeX Å "--- \TeX works. + +\item äÉËÁ ëÏÞÁ ÚÁ ÐÏÄÄÅÒÖËÕ Mac\TeX Á (\url{http://tug.org/mactex}) × + ÔÅÓÎÏÍ ÓÏÔÒÕÄÎÉÞÅÓÔ×Å Ó \TL{}, É ÚÁ ÅÇÏ ÎÅÉÓÔÏÝÉÍÙÈ ÜÎÔÕÚÉÁÚÍ. + +\item òÅÊÎÈÁÒÄÁ ëÏÔÕÞÕ ÚÁ ÏÇÒÏÍÎÕÀ ÒÁÂÏÔÕ ÐÏ ÉÎÆÒÁÓÔÒÕËÔÕÒÅ + \TL{} 2008, ÚÁ ÉÓÓÌÅÄÏ×ÁÔÅÌØÓËÕÀ ÒÁÂÏÔÕ × ÏÂÌÁÓÔÉ Windows, ÚÁ + ÓËÒÉÐÔ \texttt{getnonfreefonts} É ÍÎÏÇÏÅ ÄÒÕÇÏÅ. + + +\item óÉÐÁ ëÒÏÎÅÎÂÅÒÇÁ, ÔÁËÖÅ ÚÁ ÂÏÌØÛÏÊ ×ÌÁÄ × ÉÎÆÒÁÓÔÒÕËÔÕÒÕ \TL{} + 2008 É ÐÒÏÇÒÁÍÍÕ ÕÓÔÁÎÏ×ËÉ, ÏÓÏÂÅÎÎÏ ÄÌÑ Windows, Á ÔÁËÖÅ ÚÁ + ÏÓÎÏ×ÎÕÀ ÒÁÂÏÔÕ ÐÏ ÄÏËÕÍÅÎÔÁÃÉÉ ÎÏ×ÙÈ ×ÏÚÍÏÖÎÏÓÔÅÊ. + + +\item èÅÊËÏ ïÂÅÒÄÉÅËÁ ÚÁ ÐÁËÅÔ \pkgname{epstopdf} É ÍÎÏÇÉÅ ÄÒÕÇÉÅ, + ×ËÌÀÞÁÑ ÓÖÁÔÉÅ ÏÇÒÏÍÎÙÈ ÆÁÊÌÏ× ÐÁËÅÔÁ \pkgname{pst-geo}, ÞÔÏ + ÐÏÚ×ÏÌÉÌÏ ×ËÌÀÞÉÔØ ÉÈ × ÄÉÔÒÉÂÕÔÉ×, É ÇÌÁ×ÎÏÅ "--- ÚÁ ÅÇÏ + ÚÁÍÅÞÁÔÅÌØÎÕÀ ÒÁÂÏÔÕ ÎÁÄ ÐÁËÅÔÏÍ \pkgname{hyperref}. + +\item ðÅÔÒÁ ïÌÛÁËÁ ÚÁ ËÏÏÒÄÉÎÁÃÉÀ É ÔÝÁÔÅÌØÎÕÀ ÐÒÏ×ÅÒËÕ ÞÅÛÓËÏÇÏ É + ÓÌÏ×ÁÃËÏÇÏ ÍÁÔÅÒÉÁÌÁ. + +\item ôÏÛÉÏ ïÛÉÍÕ ÚÁ ÐÒÏÇÒÁÍÍÕ \cmdname{dviout} ÄÌÑ Windows. + + +\item íÁÎÕÜÌÑ ðØÅÇÏÒØÅ-çÏÎÎÁÒÁ ÚÁ ÐÏÍÏÝØ × ÏÂÎÏ×ÌÅÎÉÉ ÐÁËÅÔÏ×, + ÄÏËÕÍÅÎÔÁÃÉÉ É ÒÁÂÏÔÕ ÎÁÄ ÐÒÏÇÒÁÍÍÏÊ \cmdname{texdoc}. + +\item æÁÂÒÉÃÉÑ ðÏÐÉÎØÅ, ÚÁ ÐÏÄÄÅÒÖËÕ Windows × ÐÅÒ×ÙÈ ×ÅÒÓÉÑÈ \TL{} É + ÚÁ ÒÁÂÏÔÕ ÎÁÄ ÆÒÁÎÃÕÚÓËÏÊ ÄÏËÕÍÅÎÔÁÃÉÅÊ. + +\item îÏÒÂÅÒÔÁ ðÒÅÊÎÉÎÇÁ, ËÏÔÏÒÙÊ ÂÙÌ ÇÌÁ×ÎÙÍ ÁÒÈÉÔÅËÔÏÒÏÍ + ÉÎÆÒÁÓÔÒÕËÔÕÒÙ É ÐÒÏÇÒÁÍÍÙ ÕÓÔÁÎÏ×ËÉ \TL{} 2008, Á ÔÁËÖÅ + ËÏÏÒÄÉÎÉÒÏ×ÁÌ ÄÅÂÉÁÎÏ×ÓËÕÀ ×ÅÒÓÉÀ \TL{} (ÓÏ×ÍÅÓÔÎÏ Ó æÒÁÎËÏÍ + ëÀÓÔÅÒÏÍ), ×ÙÄ×ÉÎÕ× ÍÎÏÇÏ ÃÅÎÎÙÈ ÐÒÅÄÌÏÖÅÎÉÊ. + + +\item óÅÂÁÓÔØÑÎÁ òÁÔÃÁ, ÓÏÚÄÁ×ÛÅÇÏ ÐÒÏÅËÔ \TL{} É ÍÎÏÇÏ ÌÅÔ + ÐÏÄÄÅÒÖÉ×Á×ÛÅÇÏ ÅÇÏ. + +\item æÉÌÁ ôÅÊÌÏÒÁ ÚÁ ÏÒÇÁÎÉÚÁÃÉÀ ÓËÁÞÉ×ÁÎÉÑ \TL{} × ÓÉÓÔÅÍÅ BitTorrent. + +\item ôÏÍÁÛÁ ôÖÅÞÁËÁ ÚÁ ÐÏÍÏÝØ × ÒÁÂÏÔÅ ÎÁÄ ×ÅÒÓÉÅÊ ÄÌÑ Windows. + +\item ÷ÌÁÄÉÍÉÒÁ ÷ÏÌÏ×ÉÞÁ ÚÁ ÐÏÍÏÝØ × ÐÏÒÔÉÒÏ×ÁÎÉÉ É ÐÏÄÄÅÒÖËÅ + ÐÒÏÇÒÁÍÍ, × ÏÓÏÂÅÎÎÏÓÔÉ ÚÁ ÒÁÂÏÔÕ ÎÁÄ \cmdname{xindy}, ËÏÔÏÒÁÑ ÄÁÌÁ + ×ÏÚÍÏÖÎÏÓÔØ ×ËÌÀÞÉÔØ ÜÔÕ ÐÒÏÇÒÁÍÍÕ × ÄÉÓÔÒÉÂÕÔÉ×. + +\item óÔÁÛÅËa ÷Á×ÒÉËÅ×ÉÞÁ, ËÏÔÏÒÙÊ ÂÙÌ ÇÌÁ×ÎÙÍ ÔÅÓÔÅÒÏÍ \TL{} É + ËÏÏÒÄÉÎÉÒÏ×ÁÌ ÍÎÏÇÉÅ ÐÏÌØÓËÉÅ ÐÒÏÅËÔÙ: ÛÒÉÆÔÙ, ÕÓÔÁÎÏ×ËÕ ÐÏÄ + Windows É ÍÎÏÇÏÅ ÄÒÕÇÏÅ. + +\item ïÌÁÆÁ ÷ÅÂÅÒÁ ÚÁ ÔÅÒÐÅÌÉ×ÕÀ ÒÁÂÏÔÕ ÎÁÄ \Webc. + +\item çÅÒÂÅÎÁ ÷ÉÅÒÄÕ ÚÁ ÒÁÚÒÁÂÏÔËÕ É ÐÏÄÄÅÒÖËÕ \TeX{}Á ÄÌÑ \MacOSX, + ÕÞÁÓÔÉÅ × ÓÂÏÒËÅ É ÔÅÓÔÉÒÏ×ÁÎÉÉ \TL. + +\item çÒÜÍÁ ÷ÉÌÌÉÁÍÓÁ, ÓÏÚÄÁ×ÛÅÇÏ ËÁÔÁÌÏÇ ÐÁËÅÔÏ× \TeX\ Catalogue. + +\end{itemize*} + +ðÒÏÇÒÁÍÍÙ ËÏÍÐÉÌÉÒÏ×ÁÌÉ: +üÔÔÏÒÅ áÌÄÒÏ×ÁÎÄÉ (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}). +áÌÁÎ âÒÁÓÌÁÕ (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}), +ðÉÔÅÒ âÒÅÊÔÅÎÌÏÈÎÅÒ (\pkgname{x86\_64-linux}), +ëÁÒÌ âÅÒÒÉ (\pkgname{i386-linux}), +ëÅÎ âÒÁÕÎ (\pkgname{i386-cygwin}), +áËÉÒÁ ëÁËÕÔÏ (\pkgname{win32}), +äÉË ëÏÞ (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}), +îÉËÏÌÁ ìÅÞÉÞ (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +íÏÊËÁ íÉËÌÁ×ÅË (\pkgname{mipsel-linux}), +îÏÒÂÅÒÔ ðÒÅÊÎÉÎÇ (\pkgname{alpha-linux}), +àËËÁ óÁÌÍÉ (\pkgname{i386-netbsd}), +ôÏÍÁÓ ûÍÉÔà (\pkgname{powerpc-linux}), +âÏÒÉÓ ÷ÅÊÃÍÁÎ (\pkgname{armel-linux}), +÷ÌÁÄÉÍÉÒ ÷ÏÌÏ×ÉÞ (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +ïÌÁÆ ÷ÅÂÅÒ (\pkgname{mips-irix}). +éÎÆÏÒÍÁÃÉÑ Ï ÐÒÏÃÅÓÓÅ ËÏÍÐÉÌÉÒÏ×ÁÎÉÑ \TL{} ÎÁÈÏÄÉÔÓÑ ÎÁ +\url{http://tug.org/texlive/build.html}. + + +ðÅÒÅ×ÏÄ ÄÏËÕÍÅÎÔÁÃÉÉ: +âÏÒÉÓ ÷ÅÊÃÍÁÎ (ÒÕÓÓËÉÊ), +ãÚÉÇÏÄ ãÚÑÎ, ãÚÉÎØÓÕÎ þÖÁÏ, àÜ ÷ÁÎ É èÜÌÉÎØ çÁÊ (ËÉÔÁÊÓËÉÊ), +õ×Å ãÉÇÅÎÈÁÇÅÎ (ÎÅÍÅÃËÉÊ), +íÁÎÕÜÌØ ðØÅÇÏÒØÅ-çÏÎÎÁÒ (ÆÒÁÎÃÕÚÓËÉÊ), +íÁÒËÏ ðÁÌÌÁÎÔ (ÉÔÁÌØÑÎÓËÉÊ), +îÉËÏÌÁ ìÅÞÉÞ (ÓÅÒÂÓËÉÊ), +ðÅÔÒ óÏÊËÁ É ñÎ âÕÓÁ (ÞÅÛÓËÉÊ É ÓÌÏ×ÁÃËÉÊ), +óÔÁÛÅË ÷Á×ÒÉËÅ×ÉÞ (ÐÏÌØÓËÉÊ). +óÔÒÁÎÉÃÁ ÄÏËÕÍÅÎÔÁÃÉÉ \TL{}: \url{http://tug.org/texlive/doc.html}. + +òÁÚÕÍÅÅÔÓÑ, ÎÁÛÁ ÇÌÁ×ÎÁÑ ÂÌÁÇÏÄÁÒÎÏÓÔØ "--- äÏÎÁÌØÄÕ ëÎÕÔÕ, ×Ï-ÐÅÒ×ÙÈ, +ÚÁ ÒÁÚÒÁÂÏÔËÕ \TeX Á, É ×Ï-×ÔÏÒÙÈ, ÚÁ ÔÏ, ÞÔÏ ÏÎ ÐÏÄÁÒÉÌ ÅÇÏ ÍÉÒÕ. + +\section{éÓÔÏÒÉÑ ÉÚÄÁÎÉÑ} +\label{sec:history} + +\subsection{ðÒÏÛÌÏÅ} + +÷ ËÏÎÃÅ 1993 ÇÏÄÁ × ÇÏÌÌÁÎÄÓËÏÊ ÇÒÕÐÐÅ ÐÏÌØÚÏ×ÁÔÅÌÅÊ \TeX{}Á ×Ï ×ÒÅÍÑ +ÒÁÂÏÔÙ ÎÁÄ ÄÉÓÔÒÉÂÕÔÉ×ÏÍ 4All\TeX{} \CD{} ÄÌÑ ÐÏÌØÚÏ×ÁÔÅÌÅÊ +\acro{MS-DOS} ×ÏÚÎÉËÌÁ ÎÏ×ÁÑ ÉÄÅÑ. âÙÌÁ ÐÏÓÔÁ×ÌÅÎÁ ÃÅÌØ ÓÏÚÄÁÔØ +ÅÄÉÎÙÊ \CD{} ÄÌÑ ×ÓÅÈ ÓÉÓÔÅÍ. üÔÁ ÃÅÌØ ÂÙÌÁ ÞÅÒÅÞÕÒ ÓÌÏÖÎÁ ÄÌÑ ÔÏÇÏ +×ÒÅÍÅÎÉ, ÏÄÎÁËÏ ÏÎÁ ÐÒÉ×ÅÌÁ ÎÅ ÔÏÌØËÏ Ë ÐÏÑ×ÌÅÎÉÀ ÏÞÅÎØ ÕÓÐÅÛÎÏÇÏ \CD{} +4All\TeX{}, ÎÏ É Ë ÓÏÚÄÁÎÉÀ ÒÁÂÏÞÅÊ ÇÒÕÐÐÙ ôÅÈÎÉÞÅÓËÏÇÏ óÏ×ÅÔÁ +\acro{TUG} ÐÏ ÓÔÒÕËÔÕÒÅ ÄÉÒÅËÔÏÒÉÊ ÄÌÑ \TeX{}Á +(\url{http://tug.org/tds}), ËÏÔÏÒÁÑ ÒÁÚÒÁÂÏÔÁÌÁ ÓÔÁÎÄÁÒÔ ÓÔÒÕËÔÕÒÙ +ÄÉÒÅËÔÏÒÉÊ ÄÌÑ ÓÉÓÔÅÍÙ \TeX{} É ÕËÁÚÁÌÁ, ËÁË ÓÏÚÄÁÔØ ÌÏÇÉÞÎÕÀ ÅÄÉÎÕÀ +ÓÉÓÔÅÍÕ ÆÁÊÌÏ× ÄÌÑ \TeX Á. îÅÓËÏÌØËÏ ×ÅÒÓÉÊ \TDS{} ÂÙÌÏ ÏÐÕÂÌÉËÏ×ÁÎÏ +× ÄÅËÁÂÒØÓËÏÍ ×ÙÐÕÓËÅ \textsl{TUGboat} × 1995 ÇÏÄÕ, É Ó ÓÁÍÏÇÏ ÎÁÞÁÌÁ +ÓÔÁÌÏ ÑÓÎÏ, ÞÔÏ ÓÌÅÄÕÅÔ ÓÏÚÄÁÔØ ÐÒÉÍÅÒ ÓÔÒÕËÔÕÒÙ ÎÁ \CD{}. äÉÓÔÒÉÂÕÔÉ×, +ËÏÔÏÒÙÊ ×Ù ÄÅÒÖÉÔÅ × ÒÕËÁÈ, "--- ÐÒÑÍÏÊ ÒÅÚÕÌØÔÁÔ ÒÁÂÏÔÙ ÜÔÏÊ ÇÒÕÐÐÙ. +éÚ ÕÓÐÅÈÁ 4All\TeX{} ÂÙÌ ÓÄÅÌÁÎ ×Ù×ÏÄ, ÞÔÏ ÐÏÌØÚÏ×ÁÔÅÌÑÍ UNIX ÔÁËÖÅ +ÐÏÄÏÊÄ£Ô ÔÁËÁÑ ÕÄÏÂÎÁÑ ÓÉÓÔÅÍÁ, É ÔÁË ÒÏÄÉÌÁÓØ ÄÒÕÇÁÑ ×ÁÖÎÁÑ ÞÁÓÔØ +\TL. + +íÙ ÎÁÞÁÌÉ ÄÅÌÁÔØ \CD{} Ó UNIX É ÓÔÒÕËÔÕÒÏÊ ÄÉÒÅËÔÏÒÉÊ \TDS{} ÏÓÅÎØÀ +1995 ÇÏÄÁ, É ÂÙÓÔÒÏ ÐÏÎÑÌÉ, ÞÔÏ Õ \teTeX{}Á ôÏÍÁÓÁ üÓÓÅÒÁ ÉÄÅÁÌØÎÙÊ +ÓÏÓÔÁ× ÄÉÓÔÒÉÂÕÔÉ×Á É ÐÏÄÄÅÒÖËÁ ÍÎÏÇÉÈ ÐÌÁÔÆÏÒÍ. ôÏÍÁÓ ÓÏÇÌÁÓÉÌÓÑ ÎÁÍ +ÐÏÍÏÞØ, É ÍÙ × ÎÁÞÁÌÅ 1996 ÇÏÄÁ ÓÔÁÌÉ ÓÅÒØ£ÚÎÏ ÒÁÂÏÔÁÔØ ÎÁÄ +ÄÉÓÔÒÉÂÕÔÉ×ÏÍ. ðÅÒ×ÏÅ ÉÚÄÁÎÉÅ ×ÙÛÌÏ × ÍÁÅ 1996 ÇÏÄÁ. ÷ ÎÁÞÁÌÅ 1997 +ÇÏÄÁ ëÁÒÌ âÅÒÒÉ ÚÁ×ÅÒÛÉÌ ÎÏ×ÕÀ ×ÅÒÓÉÀ Web2C, ËÏÔÏÒÁÑ ×ËÌÀÞÉÌÁ +ÐÒÁËÔÉÞÅÓËÉ ×ÓÅ ÎÏ×ÙÅ ×ÏÚÍÏÖÎÏÓÔÉ, ÄÏÂÁ×ÌÅÎÎÙÅ ôÏÍÁÓÏÍ üÓÓÅÒÏÍ × +\teTeX, É ÍÙ ÒÅÛÉÌÉ ÏÓÎÏ×ÁÔØ ×ÔÏÒÏÅ ÉÚÄÁÎÉÅ ÎÁ ÓÔÁÎÄÁÒÔÎÏÍ \Webc, Ó +ÄÏÂÁ×ÌÅÎÉÅÍ ÓËÒÉÐÔÁ \texttt{texconfig} ÉÚ \teTeX{}Á. ôÒÅÔØÅ ÉÚÄÁÎÉÅ +\CD{} ÏÓÎÏ×Ù×ÁÌÏÓØ ÎÁ ÎÏ×ÏÊ ×ÅÒÓÉÉ \Webc{} 7.2, ïÌÁÆÁ ÷ÅÂÅÒÁ; × ÔÏ ÖÅ +×ÒÅÍÑ ÂÙÌÁ ×ÙÐÕÝÅÎÁ ÎÏ×ÁÑ ×ÅÒÓÉÑ \teTeX{}Á, É \TL{} ×ËÌÀÞÉÌ ÐÏÞÔÉ ×ÓÅ +ÅÇÏ ÎÏ×ÙÅ ×ÏÚÍÏÖÎÏÓÔÉ. þÅÔ×ÅÒÔÏÅ ÉÚÄÁÎÉÅ ÓÌÅÄÏ×ÁÌÏ ÔÏÊ ÖÅ ÔÒÁÄÉÃÉÉ, +ÉÓÐÏÌØÚÕÑ ÎÏ×ÕÀ ×ÅÒÓÉÀ \teTeX{}Á É \Webc{} (7.3). ôÅÐÅÒØ × Î£Í ÂÙÌÁ +ÐÏÌÎÁÑ ÓÉÓÔÅÍÁ ÄÌÑ Windows. + +äÌÑ ÐÑÔÏÇÏ ÉÚÄÁÎÉÑ (ÍÁÒÔ 2000 ÇÏÄÁ) ÍÎÏÇÉÅ ÐÁËÅÔÙ ÎÁ \CD{} ÂÙÌÉ +ÐÅÒÅÓÍÏÔÒÅÎÙ É ÐÒÏ×ÅÒÅÎÙ. éÎÆÏÒÍÁÃÉÑ Ï ÐÁËÅÔÁÈ ÂÙÌÁ ÓÏÂÒÁÎÁ × ÆÁÊÌÙ +XML. îÏ ÇÌÁ×ÎÙÍ ÉÚÍÅÎÅÎÉÅÍ × \TeX\ Live 5 ÂÙÌÏ ÕÄÁÌÅÎÉÅ ×ÓÅÈ +ÎÅÓ×ÏÂÏÄÎÙÈ ÐÒÏÇÒÁÍÍ. ÷Ó£ ÎÁ \TL{} ÐÒÅÐÏÌÁÇÁÅÔÓÑ ÓÏ×ÍÅÓÔÉÍÙÍ Ó +ðÒÁ×ÉÌÁÍÉ äÅÂÉÁÎÁ ÄÌÑ ó×ÏÂÏÄÎÙÈ ðÒÏÇÒÁÍÍ +(\url{http://www.debian.org/intro/free}); ÍÙ ÓÄÅÌÁÌÉ ×Ó£, ÞÔÏ ÍÏÇÌÉ, +ÞÔÏÂÙ ÐÒÏ×ÅÒÉÔØ ÌÉÃÅÎÚÉÉ ×ÓÅÈ ÐÁËÅÔÏ×, É ÍÙ ÂÕÄÅÍ ÂÌÁÇÏÄÁÒÎÙ ÚÁ ÌÀÂÏÅ +ÕËÁÚÁÎÉÅ ÎÁ ÏÛÉÂËÉ. + +÷ ÛÅÓÔÏÍ ÉÚÄÁÎÉÉ (ÉÀÌØ 2001 ÇÏÄÁ) ÂÙÌÏ ÍÎÏÇÏ ÎÏ×ÏÇÏ ÍÁÔÅÒÉÁÌÁ. +çÌÁ×ÎÙÍ ÂÙÌÁ ÎÏ×ÁÑ ËÏÎÃÅÐÃÉÑ ÕÓÔÁÎÏ×ËÉ: ÐÏÌØÚÏ×ÁÔÅÌØ ×ÙÂÉÒÁÌ ÎÕÖÎÙÊ +ÎÁÂÏÒ ËÏÌÌÅËÃÉÊ. ñÚÙËÏ×ÙÅ ËÏÌÌÅËÃÉÉ ÂÙÌÉ ÐÏÌÎÏÓÔØÀ ÒÅÏÒÇÁÎÉÚÏ×ÁÎÙ, +ÔÁË ÞÔÏ ×ÙÂÏÒ ÌÀÂÏÊ ÉÚ ÎÉÈ ÕÓÔÁÎÁ×ÌÉ×ÁÌ ÎÅ ÔÏÌØËÏ ÍÁËÒÏÓÙ, ÛÒÉÆÔÙ É É +Ô.Ä., ÎÏ É ×ÎÏÓÉÌ ÉÚÍÅÎÅÎÉÑ × \texttt{language.dat}. + +óÅÄØÍÏÅ ÉÚÄÁÎÉÅ 2002 ÇÏÄÁ ÄÏÂÁ×ÉÌÏ ÐÏÄÄÅÒÖËÕ \MacOSX{}, É ÂÏÌØÛÏÅ +ËÏÌÉÞÅÓÔ×Ï ÏÂÎÏ×ÌÅÎÉÊ ÄÌÑ ÐÁËÅÔÏ× É ÐÒÏÇÒÁÍÍ. ÷ÁÖÎÏÊ ÃÅÌØÀ ÂÙÌÁ +ÉÎÔÅÇÒÁÃÉÑ Ó \teTeX{}ÏÍ, ÞÔÏÂÙ ÉÓÐÒÁ×ÉÔØ ÒÁÓÈÏÖÄÅÎÉÅ, ÎÁÍÅÔÉ×ÛÅÅÓÑ × +×ÅÒÓÉÑÈ~5 É~6. + +\subsubsection{2003} + +÷ 2003 ÇÏÄÕ ÍÙ ÐÒÏÄÏÌÖÉÌÉ ÉÚÍÅÎÅÎÉÑ É ÄÏÐÏÌÎÅÎÉÑ, É ÏÂÎÁÒÕÖÉÌÉ, ÞÔÏ +\TL{} ÔÁË ×ÙÒÏÓ, ÞÔÏ ÎÅ ÐÏÍÅÝÁÅÔÓÑ ÎÁ \CD. ðÏÜÔÏÍÕ ÍÙ ÒÁÚÄÅÌÉÌÉ ÅÇÏ ÎÁ +ÔÒÉ ÄÉÓÔÒÉÂÕÔÉ×Á (ÓÍ. ÒÁÚÄÅÌ~\ref{sec:tl-coll-dists}, +\p.\pageref{sec:tl-coll-dists}). ëÒÏÍÅ ÔÏÇÏ: + +\begin{itemize*} +\item ðÏ ÐÒÏÓØÂÅ Á×ÔÏÒÏ× \LaTeX{}Á, ÍÙ ÓÍÅÎÉÌÉ ÓÔÁÎÄÁÒÔÎÙÅ ËÏÍÁÎÄÙ + \cmdname{latex} É \cmdname{pdflatex}: ÔÅÐÅÒØ ÏÎÉ ÉÓÐÏÌØÚÕÀÔ \eTeX{} + (ÓÍ. ÓÔÒ.~\pageref{text:etex}). +\item îÏ×ÙÅ ÛÒÉÆÔÙ Latin Modern ×ËÌÀÞÅÎÙ É ÒÅËÏÍÅÎÄÏ×ÁÎÙ ÄÌÑ ÉÓÐÏÌØÚÏ×ÁÎÉÑ. +\item õÂÒÁÎÁ ÐÏÄÄÅÒÖËÁ ÄÌÑ Alpha \acro{OSF} + (ÐÏÄÄÅÒÖËÁ ÄÌÑ \acro{HPUX} ÂÙÌÁ ÕÂÒÁÎÁ ÒÁÎÅÅ), ÐÏÓËÏÌØËÕ ÎÉËÔÏ + ÎÅ ÉÍÅÌ (É ÎÅ ÐÒÅÄÌÏÖÉÌ) ËÏÍÐØÀÔÅÒÏ× ÄÌÑ ËÏÍÐÉÌÉÒÏ×ÁÎÉÑ + ÐÒÏÇÒÁÍÍ. +\item óÉÌØÎÏ ÉÚÍÅÎÉÌÁÓØ ÕÓÔÁÎÏ×ËÁ ÄÌÑ Windows: ×ÐÅÒ×ÙÅ ÂÙÌÁ ÐÒÅÄÌÏÖÅÎÁ + ÉÎÔÅÇÒÉÒÏ×ÁÎÎÁÑ ÓÒÅÄÁ ÎÁ ÏÓÎÏ×Å ÒÅÄÁËÔÏÒÁ XEmacs. +\item äÏÂÁ×ÌÅÎÙ ×ÓÐÏÍÏÇÁÔÅÌÎÙÅ ÐÒÏÇÒÁÍÍÙ ÄÌÑ Windows + (Perl, Ghost\-script, Image\-Magick, Ispell). +\item æÁÊÌÙ Fontmap ÄÌÑ \cmdname{dvips}, \cmdname{dvipdfm} + É \cmdname{pdftex} ÇÅÎÅÒÉÒÕÀÔÒÓÑ ÐÒÏÇÒÁÍÍÏÊ + \cmdname{updmap} É ÕÓÔÁÎ×ÁÌÉ×ÁÀÔÓÑ × \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{}, and \MP{} ÔÅÐÅÒØ ÐÏ ÕÍÏÌÞÁÎÉÀ ×Ù×ÏÄÑÔ ÓÉÍ×ÏÌÙ + ÉÚ ×ÅÒÈÎÅÊ ÐÏÌÏ×ÉÎÙ ÔÁÂÌÉÃÙ ASCII × ÆÁÊÌÙ, ÏÔËÒÙÔÙÅ + ËÏÍÁÎÄÏÊ \verb|\write|, ÌÏÇÉ É ÎÁ ÔÅÒÍÉÎÁÌ ÂÕË×ÁÌØÎÏ, + Ô.Å. \emph{ÎÅ} ÉÓÐÏÌØÚÕÑ ÆÏÒÍÁÔ \verb|^^|. ÷ \TL{}~7 ÜÔÏ ÚÁ×ÉÓÅÌÏ ÏÔ + ÓÉÓÔÅÍÎÏÊ ÌÏËÁÌÉ, ÎÏ ÔÅÐÅÒØ ÜÔÏ ×ÅÒÎÏ ÄÌÑ ×ÓÅÈ ÌÏËÁÌÅÊ. åÓÌÉ + ×ÁÍ ÎÕÖÅÎ ÆÏÒÍÁÔ \verb|^^|, ÐÅÒÅÉÍÅÎÕÊÔÅ ÆÁÊÌ + \verb|texmf/web2c/cp8bit.tcx|. ÷ ÂÕÄÕÝÅÍ ÜÔÁ ÐÒÏÃÅÄÕÒÁ ÂÕÄÅÔ + ÕÐÒÏÝÅÎÁ. +\item äÏËÕÍÅÎÔÁÃÉÑ ÂÙÌÁ ÓÕÝÅÓÔ×ÅÎÎÏ ÏÂÎÏ×ÌÅÎÁ. +\item îÁËÏÎÅÃ, ÉÚ-ÚÁ ÔÏÇÏ, ÞÔÏ ÎÕÍÅÒÁÃÉÑ ÐÏ ÉÚÄÁÎÉÑÍ ÓÔÁÌÁ ÎÅÕÄÏÂÎÏÊ, + ÍÙ ÐÅÒÅÛÌÉ ÎÁ ÎÕÍÅÒÁÃÉÀ ÐÏ ÇÏÄÁÍ: \TL{} 2003. +\end{itemize*} + +\subsubsection{2004} + +÷ 2004 ÇÏÄÕ ÍÙ ×ÎÅÓÌÉ ÍÎÏÇÏ ÉÚÍÅÎÅÎÉÊ. + +\begin{itemize} + +\item åÓÌÉ Õ ×ÁÓ ÅÓÔØ ÌÏËÁÌØÎÙÅ ÛÒÉÆÔÙ Ó ÓÏÂÓÔ×ÅÎÎÙÍÉ ÆÁÊÌÁÍÉ + \filename{.map} ÉÌÉ \filename{.enc}, ×ÁÍ ÍÏÖÅÔ ÐÏÎÁÄÏÂÉÔØÓÑ + ÐÅÒÅÍÅÓÔÉÔØ ÜÔÉ ÆÁÊÌÙ. + + æÁÊÌÙ \filename{.map} ÔÅÐÅÒØ ÉÝÕÔÓÑ ÔÏÌØËÏ × ÐÏÄÄÉÒÅËÔÏÒÉÑÈ + \dirname{fonts/map} (× ËÁÖÄÏÍ ÄÅÒÅ×Å \filename{texmf}) × ÐÕÔÉ + \envname{TEXFONTMAPS}. áÎÁÌÏÇÉÞÎÏ ÆÁÊÌÙ \filename{.enc} ÔÅÐÅÒØ + ÉÝÕÔÓÑ × ÔÏÌØËÏ × ÐÏÄÄÉÒÅËÔÏÒÉÑÈ \dirname{fonts/enc} × ÐÕÔÉ + \envname{ENCFONTS}. ðÒÏÇÒÁÍÍÁ \cmdname{updmap} ÐÒÅÄÕÐÒÅÖÄÁÅÔ, ÅÓÌÉ + ÎÁÈÏÄÉÔ ÜÔÉ ÆÁÊÌÙ ÎÅ ÔÁÍ, ÇÄÅ ÏÎÉ ÄÏÌÖÎÙ ÂÙÔØ. + + óÍ. ÏÐÉÓÁÎÉÅ ÜÔÏÊ ÓÔÒÕËÔÕÒÙ ÎÁ + \url{http://tug.org/texlive/mapenc.html}. + +\item ë ËÏÌÌÅËÃÉÉ \TK{} ÂÙÌ ÄÏÂÁ×ÌÅÎ ÕÓÔÁÎÏ×ÏÞÎÙÊ \CD{} Ó + ÄÉÓÔÒÉÂÕÔÉ×ÏÍ \MIKTEX{} ÄÌÑ ÔÅÈ, ËÔÏ ÐÒÅÄÐÏÞÉÔÁÅÔ \MIKTEX{} + ÐÒÏÇÒÁÍÍÁÍ, ÏÓÎÏ×ÁÎÎÙÍ ÎÁ \Webc. óÍ. ÒÁÚÄÅÌ~\ref{sec:overview-tl} + (\p.\pageref{sec:overview-tl}). + + +\item äÅÒÅ×Ï \dirname{texmf} × \TL{} ÂÙÌÏ ÒÁÚÄÅÌÅÎÏ ÎÁ ÔÒÉ: + \dirname{texmf}, \dirname{texmf-dist} É \dirname{texmf-doc}. + óÍ. ÒÁÚÄÅÌ~\ref{sec:tld} (\p.\pageref{sec:tld}) É ÆÁÊÌÙ + \filename{README} × ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÈ ÄÉÒÅËÔÏÒÉÑÈ. + +\item ÷ÓÅ ÆÁÊÌÙ, ËÏÔÏÒÙÅ ÞÉÔÁÅÔ \TeX, ÓÏÂÒÁÎÙ × ÐÏÄÄÉÒÅËÔÏÒÉÉ + \dirname{tex} ÄÅÒÅ×ØÅ× \dirname{texmf*} ×ÍÅÓÔÏ ÒÁÚÄÅÌÅÎÉÑ ÎÁ + \dirname{tex}, \dirname{etex}, \dirname{pdftex}, \dirname{pdfetex} É + Ô.Ä. óÍ. \CDref{texmf-doc/doc/english/tds/tds.html\#Extensions} + {\texttt{texmf-doc/doc/english/tds/tds.html\#Extensions}}. + + +\item ÷ÓÐÏÍÏÇÁÔÅÌØÎÙÅ ÓËÒÉÐÔÙ (×ÙÚÙ×ÁÅÍÙÅ ÄÒÕÇÉÍÉ ÐÒÏÇÒÁÍÍÁÍÉ, Á ÎÅ + ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ ÐÏÌØÚÏ×ÁÔÅÌÅÍ) ÔÅÐÅÒØ ÓÏÂÒÁÎÙ × ÄÉÒÅËÔÏÒÉÉ + \dirname{scripts} ÄÅÒÅ×ØÅ× \dirname{texmf*} É ÉÝÕÔÓÑ ËÏÍÁÎÄÏÊ + \verb|kpsewhich -format=texmfscripts|. ðÏÜÔÏÍÕ ÅÓÌÉ Õ ×ÁÓ ÅÓÔØ + ÐÒÏÇÒÁÍÍÙ, ËÏÔÏÒÙÅ ×ÙÚÙ×ÁÀÔ ÔÁËÉÅ ÓËÒÉÐÔÙ, ÉÈ ÎÁÄÏ ÉÚÍÅÎÉÔØ. óÍ. + \CDref{texmf-doc/doc/english/tds/tds.html\#Scripts} + {\texttt{texmf-doc/doc/english/tds/tds.html\#Scripts}}. + + +\item ðÏÞÔÉ ×ÓÅ ÆÏÒÍÁÔÙ ÔÅÐÅÒØ ÐÅÞÁÔÁÀÔ ÂÏÌØÛÉÎÓÔ×Ï ÓÉÍ×ÏÌÏ× + ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ, ÉÓÐÏÌØÚÕÑ <<ÔÁÂÌÉÃÙ ÐÅÒÅ×ÏÄÁ>> \filename{cp227.tcx} + ×ÍÅÓÔÏ ÆÏÒÍÁÔÁ \verb|^^|. ÷ ÞÁÓÔÎÏÓÔÉ, ÓÉÍ×ÏÌÙ Ó ËÏÄÁÍÉ 32--256 + ÐÌÀÓ ÔÁÂÕÌÑÃÉÑ, ×ÅÒÔÉËÁÌØÎÁÑ ÔÁÂÕÌÑÃÉÑ É ÐÅÒÅ×ÏÄ ÓÔÒÁÎÉÃÙ ÐÅÞÁÔÁÀÔÓÑ + ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ. éÓËÌÀÞÅÎÉÑÍÉ Ñ×ÌÑÀÔÓÑ plain \TeX{} (ÐÅÞÁÔÁÀÔÓÑ + ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ ÓÉÍ×ÏÌÙ 32--127), \ConTeXt{} (0--255) É ÆÏÒÍÁÔÙ, + ÏÔÎÏÓÑÝÉÅÓÑ Ë ÐÒÏÇÒÁÍÍÅ \OMEGA. üÔÏ ÐÏ×ÅÄÅÎÉÅ ÐÏÞÔÉ ÔÁËÏÅ ÖÅ, ËÁË Õ + \TL\,2003, ÎÏ ÒÅÁÌÉÚÏ×ÁÎÏ ÂÏÌÅÅ ÁËËÕÒÁÔÎÏ, Ó Â\'ÏÌØÛÅÊ ×ÏÚÍÏÖÎÏÓÔØÀ + ÎÁÓÔÒÏÊËÉ. óÍ. \CDref{texmf/doc/web2c/web2c.html\#TCX-files} + {\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. (ëÓÔÁÔÉ, ÐÒÉ ××ÏÄÅ + × Unicode, \TeX\ ÍÏÖÅÔ ×Ù×ÏÄÉÔØ ÐÒÉ ÕËÁÚÁÎÉÉ ÎÁ ÏÛÉÂËÕ ÔÏÌØËÏ ÞÁÓÔØ + ÍÎÏÇÏÂÁÊÔÎÏÇÏ ÓÉÍ×ÏÌÁ, ÔÁË ËÁË ×ÎÕÔÒÉ \TeX\ ÒÁÂÏÔÁÅÔ Ó ÂÁÊÔÁÍÉ). + + +\item \textsf{pdfetex} ÔÅÐÅÒØ ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ×ÓÅÈ ÆÏÒÍÁÔÏ×, ËÒÏÍÅ + plain \textsf{tex}. (òÁÚÕÍÅÅÔÓÑ, ÏÎ ÄÅÌÁÅÔ ÆÁÊÌÙ × ÆÏÒÍÁÔÅ + \acro{DVI}, ÅÓÌÉ ×ÙÚ×ÁÎ ËÁË \textsf{latex} É Ô.Ð.). üÔÏ ÏÚÎÁÞÁÅÔ, + ÐÏÍÉÍÏ ÐÒÏÞÅÇÏ, ÞÔÏ ×ÏÚÍÏÖÎÏÓÔÉ \textsf{pdftex}a ÄÌÑ ÍÉËÒÏÔÉÐÏÇÒÁÆÉÉ + Á ÔÁËÖÅ ×ÏÚÍÏÖÎÏÓÔÉ \eTeX Á ÄÏÓÔÕÐÎÙ × ÆÏÒÍÁÔÁÈ \LaTeX, \ConTeXt{} É + Ô.Ä. (\OnCD{texmf-dist/doc/etex/base/}). + + üÔÏ ÔÁËÖÅ ÏÚÎÁÞÁÅÔ, ÞÔÏ ÔÅÐÅÒØ \emph{ÏÞÅÎØ ×ÁÖÎÏ} ÉÓÐÏÌØÚÏ×ÁÔØ ÐÁËÅÔ + \pkgname{ifpdf} (ÒÁÂÏÔÁÅÔ É Ó plain, É Ó \LaTeX) ÉÌÉ ÜË×É×ÁÌÅÎÔÎÙÅ + ÓÒÅÄÓÔ×Á, ÐÏÓËÏÌØËÕ ÐÒÏÓÔÏ ÐÒÏ×ÅÒËÁ, ÏÐÒÅÄẠ̊ΠÌÉ \cs{pdfoutput} ÉÌÉ + ÄÒÕÇÏÊ ÐÒÉÍÉÔÉ× ÎÅ ÄÏÓÔÁÔÏÞÎÁ ÄÌÑ ÔÏÇÏ, ÞÔÏÂÙ ÐÏÎÑÔØ, × ËÁËÏÍ + ÆÏÒÍÁÔÅ ÇÅÎÅÒÉÒÕÅÔÓÑ ÒÅÚÕÌØÔÁÔ. íÙ ÓÄÅÌÁÌÉ ×Ó£ ×ÏÚÍÏÖÎÏÅ ÄÌÑ + ÓÏ×ÍÅÓÔÉÍÏÓÔÉ × ÜÔÏÍ ÇÏÄÕ, ÎÏ × ÂÕÄÕÝÅÍ ÇÏÄÕ \cs{pdfoutput} ÍÏÖÅÔ + ÂÙÔØ ÏÐÒÅÄẠ̊ΠÄÁÖÅ ÅÓÌÉ ÇÅÎÅÒÉÒÕÅÔÓÑ \acro{DVI}. + + +\item õ ÐÒÏÇÒÁÍÍÙ pdf\TeX\ (\url{http://pdftex.org}) ÍÎÏÇÏ ÎÏ×ÙÈ + ×ÏÚÍÏÖÎÏÓÔÅÊ: + + \begin{itemize*} + + \item ðÏÄÄÅÒÖËÁ ËÁÒÔ ÛÒÉÆÔÏ× ÉÚÎÕÔÒÉ ÄÏËÕÍÅÎÔÁ ÐÒÉ ÐÏÍÏÝÉ + \cs{pdfmapfile} É \cs{pdfmapline}. + + \item íÉËÒÏÔÉÐÏÇÒÁÆÉÞÅÓËÉÅ ÒÁÓÛÉÒÅÎÉÑ ÍÏÇÕÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÙ + ÎÁÍÎÏÇÏ + ÐÒÏÝÅ.\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + + \item ÷ÓÅ ÐÁÒÁÍÅÔÒÙ, ÒÁÎÅÅ ÚÁÄÁ×Á×ÛÉÅÓÑ × ÓÐÅÃÉÁÌØÎÏÍ + ËÏÎÆÉÇÕÒÁÃÉÏÎÎÏÍ ÆÁÊÌÅ \filename{pdftex.cfg}, ÔÅÐÅÒØ ÄÏÌÖÎÙ ÂÙÔØ + ÕÓÔÁÎÏ×ÌÅÎÙ ÐÒÉÍÉÔÉ×ÁÍÉ, ÎÁÐÒÉÍÅÒ, × ÆÁÊÌÅ + \filename{pdftexconfig.tex}. æÁÊÌ \filename{pdftex.cfg} ÂÏÌØÛÅ ÎÅ + ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ. ðÒÉ ÉÚÍÅÎÅÎÉÉ ÆÁÊÌÁ \filename{pdftexconfig.tex} + ×ÓÅ ÆÏÒÍÁÔÙ \filename{.fmt} ÄÏÌÖÎÙ ÂÙÔØ ÐÅÒÅÇÅÎÅÒÉÒÏ×ÁÎÙ. + + \item ïÓÔÁÌØÎÙÅ ÉÚÍÅÎÅÎÉÑ ÏÐÉÓÁÎÙ × ÒÕËÏ×ÏÄÓÔ×Å ÐÏÌØÚÏ×ÁÔÅÌÑ + ÐÒÏÇÒÁÍÍÏÊ pdf\TeX: \OnCD{texmf/doc/pdftex/manual}. + + \end{itemize*} + + +\item ðÒÉÍÉÔÉ× \cs{input} × ÐÒÏÇÒÁÍÍÅ \cmdname{tex} (É \cmdname{mf} É + \cmdname{mpost}) ÔÅÐÅÒØ ÐÒÁ×ÉÌØÎÏ ÉÎÔÅÒÐÒÅÔÉÒÕÅÔ ÐÒÏÂÅÌÙ É ÄÒÕÇÉÅ + ÓÐÅÃÉÁÌØÎÙÅ ÓÉÍ×ÏÌÙ × Ä×ÏÊÎÙÈ ËÁ×ÙÞËÁÈ. ÷ÏÔ ÔÉÐÉÞÎÙÅ ÐÒÉÍÅÒÙ: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +óÍ. ÐÏÄÒÏÂÎÏÓÔÉ × ÒÕËÏ×ÏÄÓÔ×Å Ë ÐÒÏÇÒÁÍÍÅ \Webc: \OnCD{texmf/doc/web2c}. + + +\item ðÏÄÄÅÒÖËÁ enc\TeX Á ×ËÌÀÞÅÎÁ × \Webc, É ÐÏÜÔÏÍÕ ×Ï ×ÓÅ + ÐÒÏÇÒÁÍÍÙ \TeX, ËÏÔÏÒÙÅ ÔÅÐÅÒØ ÐÏÄÄÅÒÖÉ×ÁÀÔ ÏÐÃÉÀ \optname{-enc} + (ÔÏÌØËÏ ÐÒÉ ÇÅÎÅÒÉÒÏ×ÁÎÉÉ ÆÏÒÍÁÔÏ×). enc\TeX{} + ÏÂÅÓÐÅÞÉ×ÁÅÔ ÏÂÝÕÀ ÐÅÒÅËÏÄÉÒÏ×ËÕ ×ÈÏÄÎÏÇÏ É ×ÙÈÏÄÎÏÇÏ ÐÏÔÏËÏ×, ÞÔÏ + ÐÏÚ×ÏÌÑÅÔ ÐÏÌÎÕÀ ÐÏÄÄÅÒÖËÕ Unicode (× \acro{UTF}-8). + óÍ. \OnCD{texmf-dist/doc/generic/enctex/} É + \url{http://www.olsak.net/enctex.html}. + +\item ÷ ÄÉÓÔÒÉÂÕÔÉ×Å ÐÏÑ×ÉÌÁÓØ ÎÏ×ÁÑ ÐÒÏÇÒÁÍÍÁ Aleph, ÓÏÞÅÔÁÀÝÁÑ + \eTeX\ É \OMEGA. ëÒÁÔËÁÑ ÉÎÆÏÒÍÁÃÉÑ Ï ÎÅÊ ÎÁÈÏÄÉÔÓÑ × + \OnCD{texmf-dist/doc/aleph/base} É + \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. æÏÒÍÁÔ + ÄÌÑ \LaTeX Á ÎÁ ÏÓÎÏ×Å ÜÔÏÊ ÐÒÏÇÒÁÍÍÙ ÎÁÚÙ×ÁÅÔÓÑ \textsf{lamed}. + +\item ðÏÓÌÅÄÎÑÑ ×ÅÒÓÉÑ \LaTeX Á ×ËÌÀÞÁÅÔ ÎÏ×ÕÀ ×ÅÒÓÉÀ ÌÉÃÅÎÚÉÉ + \acro{LPPL} "--- ÔÅÐÅÒØ ÏÆÉÃÉÁÌØÎÏ ÏÄÏÂÒÅÎÎÕÀ DebianÏÍ. îÅËÏÔÏÒÙÅ + ÄÒÕÇÉÅ ÉÚÍÅÎÅÎÉÑ ÐÅÒÅÞÉÓÌÅÎÙ × ÆÁÊÌÁÈ \filename{ltnews} × + \OnCD{texmf-dist/doc/latex/base}. + +\item ÷ ÄÉÓÔÒÉÂÕÔÉ×Å ÐÏÑ×ÉÌÁÓØ \cmdname{dvipng}, ÎÏ×ÁÑ ÐÒÏÇÒÁÍÍÁ ÄÌÑ + ÐÅÒÅ×ÏÄÁ \acro{DVI} × \acro{PNG}. + óÍ. \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item íÙ ÕÍÅÎØÛÉÌÉ ÒÁÚÍÅÒ ÐÁËÅÔÁ \pkgname{cbgreek} ÄÏ ÐÒÉÅÍÌÅÍÏÇÏ + ÎÁÂÏÒÁ ÛÒÉÆÔÏ×, Ó ÓÏÇÌÁÓÉÑ É ÓÏ×ÅÔÁ Á×ÔÏÒÁ (ëÌÁÕÄÉÏ âÅËËÁÒÉ). + éÓËÌÀÞÅÎÙ ÎÅ×ÉÄÉÍÙÅ, ÐÒÏÚÒÁÞÎÙÅ É ÐÏÌÕÐÒÏÚÒÁÞÎÙÅ ÛÒÉÆÔÙ, ËÏÔÏÒÙÅ + ÏÔÎÏÓÉÔÅÌØÎÏ ÒÅÄËÏ ÉÓÐÏÌØÚÕÀÔÓÑ, Á ÎÁÍ ÎÅ È×ÁÔÁÌÏ ÍÅÓÔÁ. ðÏÌÎÙÊ + ÎÁÂÏÒ ÛÒÉÆÔÏ× ÍÏÖÎÏ ÎÁÊÔÉ × ÁÒÈÉ×Å \acro{CTAN} + (\url{http://www.ctan.org/tex-archive/fonts/greek/cb}). + + +\item ðÒÏÇÒÁÍÍÁ \cmdname{oxdvi} ÕÄÁÌÅÎÁ ÉÚ ÄÉÓÔÒÉÂÕÔÉ×Á; ÉÓÐÏÌØÚÕÊÔÅ + \cmdname{xdvi}. + + +\item ìÉÎËÉ \cmdname{ini} É \cmdname{vir} ÄÌÑ ÐÒÏÇÒÁÍÍ \cmdname{tex}, + \cmdname{mf} É \cmdname{mpost} (ÎÁÐÒÉÍÅÒ, \cmdname{initex}) ÂÏÌØÛÅ + ÎÅ ÓÏÚÄÁÀÔÓÑ. õÖÅ ÍÎÏÇÏ ÌÅÔ ÏÐÃÉÑ \optname{-ini} ÉÈ ÕÓÐÅÛÎÏ + ÚÁÍÅÎÑÅÔ. + +\item õÂÒÁÎÁ ÐÏÄÄÅÒÖËÁ ÐÌÁÔÆÏÒÍÙ \textsf{i386-openbsd}. ôÁË ËÁË × + ÐÏÒÔÁÈ BSD ÅÓÔØ ÐÁËÅÔ \pkgname{tetex}, É ÍÏÖÎÏ ÐÏÌØÚÏ×ÁÔØÓÑ + ÐÒÏÇÒÁÍÍÁÍÉ ÄÌÑ \acro{GNU/}Linux É Free\acro{BSD}, ÍÙ ÐÏÓÞÉÔÁÌÉ, ÞÔÏ + ×ÒÅÍÑ ÄÏÂÒÏ×ÏÌØÎÙÈ ÓÏÔÒÕÄÎÉËÏ× ÐÒÏÅËÔÁ ÍÏÖÎÏ ÐÏÔÒÁÔÉÔØ Ó Â\'ÏÌØÛÅÊ + ÐÏÌØÚÏÊ ÐÏ-ÄÒÕÇÏÍÕ. + + +\item ðÏ ËÒÁÊÎÅÊ ÍÅÒÅ ÄÌÑ ÐÌÁÔÆÏÒÍÙ \textsf{sparc-solaris} ÔÒÅÂÕÅÔÓÑ + ÕÓÔÁÎÏ×ÉÔØ ÐÅÒÅÍÅÎÎÕÀ ÏËÒÕÖÅÎÉÑ \envname{LD\_LIBRARY\_PATH} ÄÌÑ + ÒÁÂÏÔÙ ÐÒÏÇÒÁÍÍ \pkgname{t1utils}. üÔÏ ×ÙÚ×ÁÎÏ ÔÅÍ, ÞÔÏ ÏÎÉ + ÎÁÐÉÓÁÎÙ ÎÁ C++, Á ÓÔÁÎÄÁÒÔÎÏÊ ÄÉÒÅËÔÏÒÉÉ ÄÌÑ ÂÉÂÉÌÉÏÔÅË C++ × + ÓÉÓÔÅÍÅ ÎÅÔ (ÜÔÏ ÐÏÑ×ÉÌÏÓØ ÄÏ 2004 ÇÏÄÁ, ÎÏ ÒÁÎÅÅ ÜÔÁ ÏÓÏÂÅÎÎÏÓÔØ ÎÅ + ÂÙÌÁ ÄÏËÕÍÅÎÔÉÒÏ×ÁÎÁ). áÎÁÌÏÇÉÞÎÏ, × \textsf{mips-irix} ÔÒÅÂÕÀÔÓÑ + ÂÉÂÌÉÏÔÅËÉ \acro{MIPS}pro~7.4. + +\end{itemize} + +\subsubsection{2005} + +÷ 2005 ÇÏÄÕ ÂÙÌÏ, ËÁË ×ÓÅÇÄÁ, ÓÄÅÌÁÎÏ ÍÎÏÇÏ ÉÚÍÅÎÅÎÉÊ × ÐÁËÅÔÁÈ É +ÐÒÏÇÒÁÍÍÁÈ. éÎÆÒÁÓÔÒÕËÔÕÒÁ ÐÏÞÔÉ ÎÅ ÉÚÍÅÎÉÌÁÓØ ÐÏ ÓÒÁ×ÎÅÎÅÎÉÀ Ó 2004 +ÇÏÄÏÍ, ÎÏ ÎÅËÏÔÏÒÙÅ ÎÅÉÚÂÅÖÎÙÅ ÉÚÍÅÎÅÎÉÑ ÂÙÌÉ ÓÄÅÌÁÎÙ. + +\begin{itemize} + +\item âÙÌÉ ÄÏÂÁ×ÌÅÎÙ ÎÏ×ÙÅ ÓËÒÉÐÔÙ \cmdname{texconfig-sys}, + \cmdname{updmap-sys} É \cmdname{fmtutil-sys}, ËÏÔÏÒÙÅ ÉÚÍÅÎÑÀÔ + ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ × ÓÉÓÔÅÍÎÙÈ ÄÅÒÅ×ØÑÈ. óËÒÉÐÔÙ + \cmdname{texconfig}, \cmdname{updmap} É \cmdname{fmtutil} ÔÅÐÅÒØ + ÍÏÄÉÆÉÃÉÒÕÀÔ ÉÎÄÉ×ÉÄÕÁÌØÎÙÅ ÆÁÊÌÙ ÐÏÌØÚÏ×ÁÔÅÌÑ × + \dirname{$HOME/.texlive2005}. + +\item âÙÌÉ ÄÏÂÁ×ÌÅÎÙ ÎÏ×ÙÅ ÐÅÒÅÍÅÎÎÙÅ \envname{TEXMFCONFIG} É + \envname{TEXMFSYSCONFIG} ÄÌÑ ÕËÁÚÁÎÉÑ, ÇÄÅ ÎÁÈÏÄÑÔÓÑ + ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ (ÐÏÌØÚÏ×ÁÔÅÌØÓËÉÅ É ÓÉÓÔÅÍÎÙÅ). ôÁËÉÍ + ÏÂÒÁÚÏÍ, ×ÁÍ ÎÁÄÏ ÐÅÒÅÍÅÓÔÉÔØ ÔÕÄÁ ×ÁÛÉ ÌÉÞÎÙÅ ËÏÐÉÉ + \filename{fmtutil.cnf} É \filename{texmf.cnf}. ÷ ÌÀÂÏÍ ÓÌÕÞÁÅ + ÐÏÌÏÖÅÎÉÅ ÜÔÉÈ ÆÁÊÌÏ× É ÚÎÁÞÅÎÉÑ ÐÅÒÅÍÅÎÎÙÈ \envname{TEXMFCONFIG} É + \envname{TEXMFSYSCONFIG} ÄÏÌÖÎÙ ÂÙÔØ ÓÏÇÌÁÓÏ×ÁÎÙ. + óÍ. ÒÁÚÄÅÌ~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. + +\item ÷ ÐÒÏÛÌÏÍ ÇÏÄÕ ÍÙ ÏÓÔÁ×ÉÌÉ ÎÅÏÐÒÅÄÅÌ£ÎÎÙÍÉ \verb|\pdfoutput| É + ÄÒÕÇÉÅ ÐÅÒÅÍÅÎÎÙÅ ÐÒÉ ÇÅÎÅÒÉÒÏ×ÁÎÉÉ ÆÁÊÌÏ× × ÆÏÒÍÁÔÅ DVI, ÈÏÔÑ ÄÌÑ + ÜÔÏÇÏ ÉÓÐÏÌØÚÏ×ÁÌÁÓØ ÐÒÏÇÒÁÍÍÁ \cmdname{pdfetex}. ÷ ÜÔÏÍ ÇÏÄÕ, ËÁË + É ÂÙÌÏ ÏÂÅÝÁÎÏ, ÜÔÏ ÕÖÅ ÎÅ ÔÁË. ðÏÜÔÏÍÕ ÅÓÌÉ ×ÁÛ ÄÏËÕÍÅÎÔ + ÉÓÐÏÌØÚÕÅÔ ÄÌÑ ÐÒÏ×ÅÒËÉ ÆÏÒÍÁÔÁ \verb|\ifx\pdfoutput\undefined|, ÅÇÏ + ÎÁÄÏ ÉÚÍÅÎÉÔØ. ÷Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÐÁËÅÔ \pkgname{ifpdf.sty} + (ÒÁÂÏÔÁÅÔ × plain \TeX{} É \LaTeX) ÉÌÉ ÁÎÁÌÏÇÉÞÎÕÀ ÌÏÇÉËÕ. + +\item ÷ ÐÒÏÛÌÏÍ ÇÏÄÕ ÍÙ ÉÚÍÅÎÉÌÉ ÂÏÌØÛÉÎÓÔ×Ï ÆÏÒÍÁÔÏ×, ËÏÔÏÒÙÅ ÓÔÁÌÉ + ×ÙÄÁ×ÁÔØ 8-ÂÉÔÏ×ÙÅ ÓÉÍ×ÏÌÙ. åÓÌÉ ×ÁÍ ×Ó£ ÖÅ ÎÕÖÎÙ ÓÔÁÒÙÊ ×ÁÒÉÁÎÔ Ó + \verb|^^|, ÉÓÐÏÌØÚÕÊÔÅ ÎÏ×ÙÊ ÆÁÊÌ \filename{empty.tcx}: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + + +\item äÏÂÁ×ÌÅÎÁ ÎÏ×ÁÑ ÐÒÏÇÒÁÍÍÁ \cmdname{dvipdfmx} ÄÌÑ ÐÅÒÅ×ÏÄÁ ÉÚ DVI + × PDF; ÜÔÏ ÁËÔÉ×ÎÏ ÐÏÄÄÅÒÖÉ×ÁÅÍÁÑ ×ÅÒÓÉÑ ÐÒÏÇÒÁÍÍÙ + \cmdname{dvipdfm}, ËÏÔÏÒÁÑ ÐÏËÁ ÅÝ£ ×ËÌÀÞÅÎÁ × ÄÉÓÔÒÉÂÕÔÉ×, ÎÏ ÕÖÅ + ÎÅ ÒÅËÏÍÅÎÄÏ×ÁÎÁ. + +\item äÏÂÁ×ÌÅÎÙ ÎÏ×ÙÅ ÐÒÏÇÒÁÍÍÙ \cmdname{pdfopen} É + \cmdname{pdfclose}, ËÏÔÏÒÙÅ ÐÏÚ×ÏÌÑÀÔ ÐÅÒÅÇÒÕÚÉÔØ ÆÁÊÌ PDF × Adobe + Acrobat Reader, ÎÅ ÐÅÒÅÚÁÐÕÓËÁÑ ÐÒÏÇÒÁÍÍÕ (Õ ÄÒÕÇÉÈ ÐÒÏÇÒÁÍÍ ÄÌÑ + ÞÔÅÎÉÑ ÆÁÊÌÏ× PDF, ×ËÌÀÞÁÑ \cmdname{xpdf}, \cmdname{gv} É + \cmdname{gsview}, ÔÁËÏÊ ÐÒÏÂÌÅÍÙ ÎÉËÏÇÄÁ ÎÅ ÂÙÌÏ). + +\item äÌÑ ÅÄÉÎÏÏÂÒÁÚÉÑ ÍÙ ÐÅÒÅÉÍÅÎÏ×ÁÌÉ ÐÅÒÅÍÅÎÎÙÅ \envname{HOMETEXMF} + É \envname{VARTEXMF} × \envname{TEXMFHOME} É \envname{TEXMFSYSVAR}. + åÓÔØ ÔÁËÖÅ \envname{TEXMFVAR}, ÉÎÄÉ×ÉÄÕÁÌØÎÁÑ ÄÌÑ ËÁÖÄÏÇÏ + ÐÏÌØÚÏ×ÁÔÅÌÑ (ÓÍ. ÐÅÒ×ÙÊ ÐÕÎËÔ ×ÙÛÅ). +\end{itemize} + +\subsubsection{2006--2007} + +÷ 2006--2007 ÇÌÁ×ÎÙÍ ÎÏ×Ï××ÅÄÅÎÉÅÍ ÂÙÌÁ ÐÒÏÇÒÁÍÍÁ Xe\TeX{}, ×ÙÚÙ×ÁÅÍÁÑ +ËÁË \texttt{xetex} ÉÌÉ \texttt{xelatex}; +ÓÍ. \url{http://scripts.sil.org/xetex}. + +úÎÁÞÉÔÅÌØÎÏ ÏÂÎÏ×ÌÅÎÁ ÐÒÏÇÒÁÍÍÁ \MP; ÐÒÅÄÐÏÌÁÇÁÀÔÓÑ ÄÏÐÏÌÎÉÔÅÌØÎÙÅ +ÏÂÎÏ×ÌÅÎÉÑ × ÂÕÄÕÝÅÍ (\url{http://tug.org/metapost/articles}). ôÁËÖÅ +ÏÂÎÏ×̣Πpdf\TeX{} (\url{http://tug.org/applications/pdftex}). + +æÏÒÍÁÔÙ \filename{.fmt} É Ô.Ä. ÔÅÐÅÒØ ÈÒÁÎÑÔÓÑ × ÐÏÄÄÉÒÅËÔÏÒÉÑÈ +\dirname{texmf/web2c}, Á ÎÅ × ÓÁÍÏÊ ÄÉÒÅËÔÏÒÉÉ (ÈÏÔÑ ÄÉÒÅËÔÏÒÉÑ ×Ó£ ÅÝ£ +×ËÌÀÞÅÎÁ × ÐÏÉÓË ÆÏÒÍÁÔÏ×, ÎÁ ÓÌÕÞÁÊ, ÅÓÌÉ ÔÁÍ ÎÁÈÏÄÑÔÓÑ ÓÔÁÒÙÅ +ÆÁÊÌÙ). ðÏÄÄÉÒÅËÔÏÒÉÉ ÎÁÚ×ÁÎÙ ÐÏ ÉÍÅÎÉ ÐÒÏÇÒÁÍÍÙ, ÎÁÐÒÉÍÅÒ, +\filename{tex}, \filename{pdftex}, \filename{xetex}. üÔÏ ÉÚÍÅÎÅÎÉÅ ÎÅ +ÄÏÌÖÎÏ ×ÌÉÑÔØ ÎÁ ÒÁÂÏÔÕ ÐÒÏÇÒÁÍÍ. + +ðÒÏÇÒÁÍÍÁ (plain) \texttt{tex} ÂÏÌØÛÅ ÎÅ ÏÐÒÅÄÅÌÑÅÔ ÐÏ \texttt{\%\&} × +ÐÅÒ×ÏÊ ÓÔÒÏËÅ, ËÁËÏÊ ÆÏÒÍÁÔ ÉÓÐÏÌØÚÏ×ÁÔØ: ÜÔÏ ×ÓÅÇÄÁ ëÎÕÔÏ×ÓËÉÊ +\TeX{} (\LaTeX{} É ÄÒÕÇÉÅ ÅÝ£ ÉÓÐÏÌØÚÕÀÔ \texttt{\%\&}). + +òÁÚÕÍÅÅÔÓÑ, × ÜÔÏÍ ÇÏÄÕ ÂÙÌÉ, ËÁË ÏÂÙÞÎÏ, ÓÏÔÎÉ ÏÂÎÏ×ÌÅÎÉÊ ÐÁËÅÔÏ× É +ÐÒÏÇÒÁÍÍ. ëÁË ÏÂÙÞÎÏ, ÏÂÎÏ×Ì£ÎÎÙÅ ×ÅÒÓÉÉ ÍÏÖÎÏ ÎÁÊÔÉ × ÓÅÔÉ \acro{CTAN} +(\url{http://www.ctan.org}). + +äÅÒÅ×Ï \TL{} ÔÅÐÅÒØ ÈÒÁÎÉÔÓÑ × ÓÉÓÔÅÍÅ Subversion, É Õ ÎÁÓ ÐÏÑ×ÉÌÓÑ +WWW-ÉÎÔÅÒÆÅÊÓ ÄÌÑ ÅÇÏ ÐÒÏÓÍÏÔÒÁ. íÙ ÐÒÅÄÐÏÌÁÇÁÅÍ, ÞÔÏ ÜÔÁ ÓÉÓÔÅÍÁ +ÂÕÄÅÔ ÉÓÐÏÌØÚÏ×ÁÎÁ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ × ÂÕÄÕÝÅÍ. + +îÁËÏÎÅÃ, × ÍÁÅ 2006 ÇÏÄÁ ôÏÍÁÓ üÓÓÅÒ ÏÂßÑ×ÉÌ Ï ÐÒÅËÒÁÝÅÎÉÉ ÒÁÂÏÔÙ ÎÁÄ +te\TeX ÏÍ (\url{http://tug.org/tetex}). üÔÏ ×ÙÚ×ÁÌÏ ×ÓÐÌÅÓË ÉÎÔÅÒÅÓÁ +Ë \TL, ÏÓÏÂÅÎÎÏ ÓÒÅÄÉ ÒÁÚÒÁÂÏÔÞÉËÏ× ÓÉÓÔÅÍ \acro{GNU}/Linux (ÍÙ +ÄÏÂÁ×ÉÌÉ ÓÈÅÍÕ \texttt{tetex}, ËÏÔÏÒÁÑ ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ ÓÉÓÔÅÍÕ, ÐÒÉÍÅÒÎÏ +ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÕÀ te\TeX Õ). íÙ ÎÁÄÅÅÍÓÑ, ÞÔÏ ÜÔÏ ÐÒÉ×ÅÄ£Ô × ËÏÎÅÞÎÏÍ +ÉÔÏÇÅ Ë ÕÌÕÞÛÅÎÉÀ ÒÁÂÏÔÙ × \TeX Å ÄÌÑ ×ÓÅÈ. + + +\subsubsection{2008} + +÷ 2008 ÂÙÌÁ ÚÁÎÏ×Ï ÒÁÚÒÁÂÏÔÁÎÁ É ÐÅÒÅÐÉÓÁÎÁ ×ÓÑ ÓÔÒÕËÔÕÒÁ +\TL{}. ðÏÌÎÁÑ ÉÎÆÏÒÍÁÃÉÑ Ï ÕÓÔÁÎÏ×ËÅ ÓÉÓÔÅÍÙ ÔÅÐÅÒØ ÈÒÁÎÉÔÓÑ × +ÔÅËÓÔÏ×ÏÍ ÆÁÊÌÅ \filename{tlpkg/texlive.tlpdb}. + +ðÏÍÉÍÏ ÐÒÏÞÅÇÏ, ÜÔÏ ÎÁËÏÎÅà ÐÏÚ×ÏÌÉÌÏ ÏÂÎÏ×ÌÅÎÉÅ \TL{} ÐÏ ÓÅÔÉ "--- +×ÏÚÍÏÖÎÏÓÔØ, ËÏÔÏÒÁÑ ÍÎÏÇÏ ÌÅÔ ÂÙÌÁ Õ ÐÒÏÇÒÁÍÍÙ MiK\TeX{}. íÙ +ÐÒÅÄÐÏÌÁÇÁÅÍ ÒÅÇÕÌÑÒÎÏ ÏÂÎÏ×ÌÑÔØ ÐÁËÅÔÙ, ÐÏÓÔÕÐÁÀÝÉÅ ÎÁ \CTAN. + +÷ËÌÀÞÅÎ ÎÏ×ÙÊ ×ÁÖÎÙÊ <<Ä×ÉÖÏË>> Lua\TeX\ (\url{http://luatex.org}); +ÐÏÍÉÍÏ ÎÏ×ÏÇÏ ÕÒÏ×ÎÑ ×£ÒÓÔËÉ, ÜÔÏ ÄÁÅÔ ÐÒÅËÒÁÓÎÙÊ ÓËÒÉÐÔÏ×ÙÊ ÑÚÙË ÄÌÑ +ÉÓÐÏÌØÚÏ×ÁÎÉÑ ËÁË ÉÚÎÕÔÒÉ ÄÏËÕÍÅÎÔÏ× \TeX Á, ÔÁË É ÏÔÄÅÌØÎÏ. + +ðÏÄÄÅÒÖËÁ ÍÎÏÇÉÈ ÐÌÁÔÆÏÒÍ ÎÁ ÏÓÎÏ×Å UNIX É Windows ÔÅÐÅÒØ ÇÏÒÁÚÄÏ +ÂÏÌÅÅ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÁ. ÷ ÞÁÓÔÎÏÓÔÉ, ÂÏÌØÛÉÎÓÔ×Ï ÓËÒÉÐÔÏ× ÎÁ ÑÚÙËÁÈ +Perl É Lua ÔÅÐÅÒØ ÄÏÓÔÕÐÎÙ ÐÏÄ Windows ÂÌÁÇÏÄÁÒÑ ×ÅÒÓÉÉ PerlÁ, +ÒÁÓÐÒÏÓÔÒÁÎÑÅÍÏÊ Ó \TL{}. + +îÏ×ÙÊ ÓËÒÉÐÔ \cmdname{tlmgr} (ÓÍ. ÒÁÚÄÅÌ~\ref{sec:tlmgr}) ÔÅÐÅÒØ +Ñ×ÌÑÅÔÓÑ ÏÓÎÏ×ÎÙÍ ÉÎÔÅÒÆÅÊÓÏÍ ÄÌÑ ÁÄÍÉÎÉÓÔÒÉÒÏ×ÁÎÉÑ \TL{} ÐÏÓÌÅ +ÕÓÔÁÎÏ×ËÉ. ïÎ ÏÓÕÝÅÓÔ×ÌÑÅÔ ÏÂÎÏ×ÌÅÎÉÅ ÐÁËÅÔÏ× É ÐÅÒÅÇÅÎÅÒÉÒÏ×ÁÎÉÅ +ÆÏÒÍÁÔÏ×, ËÁÒÔ ÛÒÉÆÔÏ× É ÑÚÙËÏ×, ×ËÌÀÞÁÑ ÌÏËÁÌØÎÙÅ ÄÏÂÁ×ÌÅÎÉÑ. + +÷ Ó×ÑÚÉ Ó ÐÏÑ×ÌÅÎÉÅÍ ÐÒÏÇÒÁÍÍÙ \cmdname{tlmgr}, ×ÏÚÍÏÖÎÏÓÔÉ ÐÒÏÇÒÁÍÍÙ +\cmdname{texconfig} ÐÏ ÒÅÄÁËÔÉÒÏ×ÁÎÉÀ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÈ ÆÁÊÌÏ× ÆÏÒÍÁÔÏ× +É ÔÁÂÌÉà ÐÅÒÅÎÏÓÁ ÏÔËÌÀÞÅÎÙ. + +ðÒÏÇÒÁÍÍÁ \cmdname{xindy} (\url{http://xindy.sourceforge.net/}) ÄÌÑ +ÓÏÚÄÁÎÉÑ ÕËÁÚÁÔÅÌÅÊ ÔÅÐÅÒØ ÒÁÂÏÔÁÅÔ ÎÁ ÂÏÌØÛÉÎÓÔ×Å ÐÌÁÔÆÏÒÍ. + +ðÒÏÇÒÁÍÍÁ \cmdname{kpsewhich} ÔÅÐÅÒØ ÍÏÖÅÔ ÓÏÏÂÝÉÔØ ÏÂÏ ×ÓÅÈ ÎÕÖÎÙÈ +ÆÁÊÌÁÈ (ÏÐÃÉÑ \optname{-all}) É ÏÇÒÁÎÉÞÉÔØ ÐÏÉÓË ÏÐÒÅÄÅÌÅÎÎÏÊ +ÐÏÄÄÉÒÅËÔÏÒÉÅÊ (ÏÐÃÉÑ \optname{-subdir}). + +ðÒÏÇÒÁÍÍÁ \cmdname{dvipdfmx} ÔÅÐÅÒØ ÍÏÖÅÔ ÉÚ×ÌÅËÁÔØ ÉÎÆÏÒÍÁÃÉÀ Ï +×ÙÓÏÔÅ É ÛÉÒÉÎÅ ÔÅËÓÔÁ, ÅÓÌÉ ×ÙÚ×ÁÎÁ ËÁË \cmdname{extractbb}; ÜÔÏ ÏÄÎÁ +ÉÚ ÐÏÓÌÅÄÎÉÈ ×ÏÚÍÏÖÎÏÓÔÅÊ ÐÒÏÇÒÁÍÍÙ \cmdname{dvipdfm}, ËÏÔÏÒÏÊ ÎÅ ÂÙÌÏ +Õ \cmdname{dvipdfmx}. + +áÌÉÁÓÙ \filename{Times-Roman}, \filename{Helvetica} É Ô.Ä. ÕÂÒÁÎÙ. +òÁÚÎÙÅ ÐÁËÅÔÙ ÏÖÉÄÁÀÔ ÏÔ ÎÉÈ ÒÁÚÎÏÇÏ ÐÏ×ÅÄÅÎÉÑ (ÏÓÏÂÅÎÎÏ ÐÒÉ ÒÁÚÎÙÈ +ËÏÄÉÒÏ×ËÁÈ), É ÍÙ ÎÅ ÎÁÛÌÉ ÓÐÏÓÏÂÁ ÒÅÛÉÔØ ÜÔÕ ÐÒÏÂÌÅÍÕ ÅÄÉÎÏÏÂÒÁÚÎÏ. + +æÏÒÍÁÔ \pkgname{platex} ÕÂÒÁÎ ÉÚ-ÚÁ ËÏÎÆÌÉËÔÁ Ó ÑÐÏÎÓËÉÍ ÐÁËÅÔÏÍ +\pkgname{platex}; ÔÅÐÅÒØ ÏÓÎÏ×ÎÁÑ ÐÏÄÄÅÒÖËÁ ÐÏÌØÓËÏÇÏ ÑÚÙËÁ +ÏÓÕÝÅÓÔ×ÌÑÅÔÓÑ ÞÅÒÅÚ ÐÁËÅÔ \pkgname{polski}. + +ðÕÌÙ ÓÔÒÏËÏ×ÙÈ ËÏÎÓÔÁÎÔ \web\ ÔÅÐÅÒØ ËÏÍÐÉÌÉÒÕÀÔÓÑ × ÓÁÍÉ ÐÒÏÇÒÁÍÍÙ +ÄÌÑ ÕÄÏÂÓÔ×Á ÏÂÎÏ×ÌÅÎÉÊ. + +îÁËÏÎÅÃ, ÄÏÂÁ×ÌÅÎÙ ÉÚÍÅÎÅÎÉÑ, ÓÄÅÌÁÎÎÙÅ äÏÎÁÌØÄÏÍ ëÎÕÔÏÍ × ÅÇÏ +<<îÁÓÔÒÏÊËÅ \TeX Á 2008 ÇÏÄÁ>>, ÓÍ. +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + +\subsubsection{2009} + +îÁÞÉÎÁÑ Ó 2009 ÇÏÄÁ ÐÏ ÕÍÏÌÞÁÎÉÀ Lua\AllTeX\ ÔÅÐÅÒØ ÓÏÚÄÁÅÔ ÆÁÊÌÙ × +ÆÏÒÍÁÔÅ PDF, ÞÔÏÂÙ ÐÏÌÎÅÅ ÉÓÐÏÌØÚÏ×ÁÔØ ÐÏÄÄÅÒÖËÕ ÛÒÉÆÔÏ× × ÆÏÒÍÁÔÅ +OpenType. þÔÏÂÙ ÐÏÌÕÞÉÔØ ÒÅÚÕÌØÔÁÔ × ÆÏÒÍÁÔÅ DVI, ÉÓÐÏÌØÚÕÊÔÅ +ÐÒÏÇÒÁÍÍÙ \code{dviluatex} É \code{dvilualatex}. óÔÒÁÎÉÃÁ Lua\TeX\ +ÎÁÈÏÄÉÔÓÑ ÎÁ \url{http://luatex.org}. + +ðÒÏÇÒÁÍÍÁ Omega É ÆÏÒÍÁÔ Lambda ÂÙÌÉ ÐÏÓÌÅ ËÏÎÓÕÌØÔÁÃÉÊ Ó Á×ÔÏÒÁÍÉ +ÉÓËÌÀÞÅÎÙ ÉÚ ÄÉÓÔÒÉÂÕÔÉ×Á. ÷ ÄÉÓÔÒÉÂÕÔÉ×Å ÏÓÔÁÌÉÓØ Aleph É Lamed, Á +ÔÁËÖÅ ÕÔÉÌÉÔÙ ÉÚ ÎÁÂÏÒÁ Omega. + +÷ËÌÀÞÅÎÁ ÎÏ×ÁÑ ×ÅÒÓÉÑ ÛÒÉÆÔÏ× AMS × ÆÏÒÍÁÔÅ Type~1. ïÎÁ ×ËÌÀÞÁÅÔ +Computer Modern: ÂÙÌÉ ÕÞÔÅÎÙ ÉÚÍÅÎÅÎÉÑ, ËÏÔÏÒÙÅ ëÎÕÔ ×ÎÅÓ × ÉÓÈÏÄÎÙÅ +ÐÁÒÁÍÅÔÒÙ ÄÌÑ ÐÒÏÇÒÁÍÍÙ Metafont, Á ÔÁËÖÅ ÏÂÎÏ×ÌÅÎÙ ÈÉÎÔÙ. ûÒÉÆÔÙ +Euler ÂÙÌÉ ÐÏÌÎÏÓÔØÀ ÐÅÒÅÒÉÓÏ×ÁÎÙ çÅÒÍÁÎÏÍ ãÁÐÆÏÍ +(ÓÍ. +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). ÷Ï +×ÓÅÈ ÓÌÕÞÁÑÈ ÍÅÔÒÉËÉ ÛÒÉÆÔÏ× ÎÅ ÉÚÍÅÎÉÌÉÓØ. óÔÒÁÎÉÃÁ ÛÒÉÆÔÏ× AMS +ÎÁÈÏÄÉÔÓÑ ÎÁ \url{http://www.ams.org/tex/amsfonts.html}. + +îÏ×ÁÑ ÇÒÁÆÉÞÅÓËÁÑ ÏÂÏÌÏÞËÁ \TeX{}works ×ËÌÀÞÅÎÁ × ÄÉÓÔÒÉÂÕÔÉ× ÄÌÑ +Windows É Mac\TeX. éÎÆÏÒÍÁÃÉÑ Ï ×ÅÒÓÉÑÈ ÄÌÑ ÄÒÕÇÉÈ ÐÌÁÔÆÏÒÍ É +ÄÏÐÏÌÎÉÔÅÌØÎÁÑ ÄÏËÕÍÅÎÔÁÃÉÑ ÎÁÈÏÄÉÔÓÑ ÎÁ +\url{http://tug.org/texworks}. üÔÏ ÍÕÌØÔÉÐÌÁÔÆÏÒÍÅÎÎÁÑ ÏÂÏÌÏÞËÁ, +×ÄÏÈÎÏ×ÌÅÎÎÁÑ ÐÒÏÇÒÁÍÍÏÊ TeXShop ÄÌÑ \MacOSX{} É ÏÒÉÅÎÔÉÒÏ×ÁÎÎÁÑ ÎÁ +ÕÐÒÏÝÅÎÉÅ ÒÁÂÏÔÙ Ó \TeX{}ÏÍ. + +çÒÁÆÉÞÅÓËÁÑ ÐÒÏÇÒÁÍÍÁ Asymptote ×ËÌÀÞÅÎÁ × ÄÉÓÔÒÉÂÕÔÉ× ÄÌÑ ÎÅÓËÏÌØËÉÈ +ÐÌÁÔÆÏÒÍ. ïÎÁ ÏÓÎÏ×ÁÎÁ ÎÁ ÑÚÙËÅ ÐÒÅÄÓÔÁ×ÌÅÎÉÑ ÇÒÁÆÉËÉ, ÎÁÐÏÍÉÎÁÀÝÅÍ +MetaPost, ÎÏ Ó ÐÏÄÄÅÒÖËÏÊ ÔÒÅÈÍÅÒÎÙÈ ÏÂßÅËÔÏ× É ÄÒÕÇÉÍÉ +×ÏÚÍÏÖÎÏÓÔÑÍÉ. å£ ÓÔÒÁÎÉÃÁ ÎÁÈÏÄÉÔÓÑ ÎÁ +\url{http://asymptote.sourceforge.net}. + +ðÒÏÇÒÁÍÍÁ \code{dvipdfm} ÂÙÌÁ ÚÁÍÅÎÅÎÁ ÐÒÏÇÒÁÍÍÏÊ \code{dvipdfmx}; +ÅÓÌÉ ×ÙÚ×ÁÔØ ÐÏÓÌÅÄÎÀÀ ËÁË \code{dvipdfm}, ÏÎÁ ÒÁÂÏÔÁÅÔ × ÓÐÅÃÉÁÌØÎÏÍ +ÒÅÖÉÍÅ ÜÍÕÌÑÃÉÉ \code{dvipdfm}. ðÒÏÇÒÁÍÍÁ \code{dvipdfmx} ×ËÌÀÞÁÅÔ +ÐÏÄÄÅÒÖËÕ ËÉÔÁÊÓËÏÇÏ, ÑÐÏÎÓËÏÇÏ É ËÏÒÅÊÓËÏÇÏ ÑÚÙËÏ× (CJK) É ÍÎÏÇÏ +ÄÒÕÇÉÈ ÉÚÍÅÎÅÎÉÊ ÐÏ ÓÒÁ×ÎÅÎÉÀ Ó \code{dvipdfm}. å£ ÓÔÒÁÎÉÃÁ +ÎÁÈÏÄÉÔÓÑ ÎÁ \url{http://project.ktug.or.kr/dvipdfmx}. + +÷ ÄÉÓÔÒÉÂÕÔÉ× ×ËÌÀÞÅÎÙ ÐÒÏÇÒÁÍÍÙ ÄÌÑ \pkgname{cygwin} É +\pkgname{i386-netbsd}, × ÔÏ ×ÒÅÍÑ ËÁË ÄÒÕÇÉÅ ×ÁÒÉÁÎÔÙ BSD ÂÙÌÉ +ÉÓËÌÀÞÅÎÙ: ÎÁÍ ÓËÁÚÁÌÉ, ÞÔÏ ÐÏÌØÚÏ×ÁÔÅÌÉ OpenBSD É FreeBSD +ÕÓÔÁÎÁ×ÌÉ×ÁÀÔ \TeX, ÐÏÌØÚÕÑÓØ ÐÁËÅÔÎÙÍÉ ÍÅÎÅÄÖÅÒÁÍÉ. ëÒÏÍÅ ÔÏÇÏ, +ÏËÁÚÁÌÏÓØ ÓÌÏÖÎÙÍ ÓÏÚÄÁÔØ ÐÒÏÇÒÁÍÍÙ, ËÏÔÏÒÙÅ ÂÙ ÒÁÂÏÔÁÌÉ ÐÏÄ ÒÁÚÎÙÍÉ +×ÅÒÓÉÑÍÉ ÜÔÉÈ ÓÉÓÔÅÍ. + +åÝ£ ÎÅÓËÏÌØËÏ ÉÚÍÅÎÅÎÉÊ: ÍÙ ÔÅÐÅÒØ ÉÓÐÏÌØÚÕÅÍ ÁÒÈÉ×ÁÔÏÒ \code{xz}, +ÓÔÁÂÉÌØÎÕÀ ÚÁÍÅÎÕ ÄÌÑ \code{lzma} (\url{http://tukaani.org/xz/}); +ÚÎÁË ÄÏÌÌÁÒÁ |$| ÔÅÐÅÒØ ÄÏÐÕÓÔÉÍ × ÉÍÅÎÁÈ ÆÁÊÌÏ×, ÅÓÌÉ ÒÅÚÕÌØÔÁÔ ÎÅ ÍÏÖÅÔ +ÂÙÔØ ÉÓÔÏÌËÏ×ÁÎ ËÁË ÉÚ×ÅÓÔÎÁÑ ÐÅÒÅÍÅÎÁ ÏËÒÕÖÅÎÉÑ; ÂÉÂÌÉÏÔÅËÁ Kpathsea +ÔÅÐÅÒØ ÐÁÒÁÌÌÅÌÉÚÏ×ÁÎÁ (ÜÔÏ ÎÕÖÎÏ ÄÌÑ ÎÏ×ÏÊ ×ÅÒÓÉÉ ÐÒÏÇÒÁÍÍÙ +MetaPost); ÐÒÏÃÅÓÓ ËÏÍÐÉÌÑÃÉÉ ÔÅÐÅÒØ ÐÏÌÎÏÓÔØÀ ÏÓÎÏ×ÁÎ ÎÁ Automake. + +ðÏÓÌÅÄÎÅÅ ÚÁÍÅÞÁÎÉÅ Ï ÐÒÏÛÌÏÍ: ×ÓÅ ×ÙÐÕÓËÉ \TL{} ×ÍÅÓÔÅ Ó +ÄÏÐÏÌÎÉÔÅÌØÎÙÍÉ ÍÁÔÅÒÉÁÌÁÍÉ ×ÒÏÄÅ ÏÂÌÏÖÅË \CD{} ÈÒÁÎÑÔÓÑ ÎÁ +\url{ftp://tug.org/historic/systems/texlive}. +\url{ftp://tug.org/historic/systems/texlive}. + +\subsubsection{2010} +\label{sec:2010news} % keep with 2010 + +îÁÞÉÎÁÑ Ó 2010 ÇÏÄÁ ÆÁÊÌÙ × ÆÏÒÍÁÔÅ PDF ÐÏ ÕÍÏÌÞÁÎÉÑÀ ÓÏÚÄÁÀÔÓÑ × +×ÅÒÓÉÉ PDF~1.5. üÔÏ ×ÅÒÎÏ ÄÌÑ ×ÓÅÈ ×ÁÒÉÁÎÔÏ× \TeX Á, ËÏÔÏÒÙÅ ÓÐÏÓÏÂÎÙ +ÓÏÚÄÁ×ÁÔØ ÆÁÊÌÙ PDF, Á ÔÁËÖÅ ÄÌÑ \code{dvipdfmx}. þÔÏÂÙ ÐÏÌÕÞÁÔØ +ÆÁÊÌÙ × ÆÏÒÍÁÔÅ PDF~1.4, ÉÓÐÏÌØÚÕÊÔÅ \LaTeX Ï×ÓËÉÊ ÐÁËÅÔ +\pkgname{pdf14} ÉÌÉ ËÏÍÁÎÄÕ |\pdfminorversion=4|. + +pdf\AllTeX\ ÔÅÐÅÒØ \emph{Á×ÔÏÍÁÔÉÞÅÓËÉ} ËÏÎ×ÅÒÔÉÒÕÅÔ ÆÁÊÌÙ × ÆÏÒÍÁÔÅ +Encapsulated PostScript (EPS) × PDF ÐÒÉ ÐÏÍÏÝÉ ÐÁËÅÔÁ +\pkgname{epstopdf}, ÅÓÌÉ ÉÓÐÏÌØÚÕÅÔÓÑ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÊ ÆÁÊÌ +\code{graphics.cfg} × \LaTeX Å, É ÔÒÅÂÕÅÔÓÑ ×Ù×ÏÄ × ÆÏÒÍÁÔÅ PDF. ÷Ù +ÍÏÖÅÔÅ ÏÔËÁÚÁÔØÓÑ ÏÔ ÚÁÇÒÕÚËÉ ÐÁËÅÔÁ \code{epstopdf}, ÐÏÍÅÓÔÉ× ÐÅÒÅÄ +ÏÂßÑ×ÌÅÎÉÅÍ \cs{documentclass} ËÏÍÁÎÄÕ +|\newcommand{\DoNotLoadEpstopdf}{}| (ÉÌÉ |\def...|). ïÎ ÔÁËÖÅ ÎÅ +ÚÁÇÒÕÖÁÅÔÓÑ, ÅÓÌÉ ÉÓÐÏÌØÚÕÅÔÓÑ ÐÁËÅÔ \pkgname{pst-pdf}. óÍ. ÔÁËÖÅ +ÄÏËÕÍÅÎÔÁÃÉÀ Ë ÐÁËÅÔÕ \pkgname{epstopdf} +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +ó ÜÔÉÍ Ó×ÑÚÁÎÏ ÅÝ£ ÏÄÎÏ ÉÚÍÅÎÅÎÉÅ: ÔÅÐÅÒØ ÐÏ ÕÍÏÌÞÁÎÉÀ ÒÁÚÒÅÛÅÎÏ +×ÙÚÙ×ÁÔØ ÉÚ \TeX Á ÎÅÓËÏÌØËÏ ×ÎÅÛÎÉÈ ËÏÍÁÎÄ (ÐÒÉ ÐÏÍÏÝÉ ÍÅÈÁÎÉÚÍÁ +\cs{write18}). üÔÏ \code{repstopdf}, \code{makeindex}, +\code{kpsewhich}, \code{bibtex} É \code{bibtex8}. óÐÉÓÏË ÏÐÒÅÄÅÌÅÎ × +\code{texmf.cnf}. ÷ ÓÌÕÞÁÅ, ÅÓÌÉ ÎÅÏÂÈÏÄÉÍÏ ÚÁÐÒÅÔÉÔØ ×ÓÅ ÔÅËÉÅ +ËÏÍÁÎÄÙ, ÍÏÖÎÏ ÕÂÒÁÔØ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÕÀ ÏÐÃÉÀ ÐÒÉ ÕÓÔÁÎÏ×ËÅ ÓÉÓÔÅÍÙ +(ÓÍ. ÒÁÚÄÅÌ~\ref{sec:options}) ÉÌÉ ÐÅÒÅËÏÎÆÉÇÕÒÉÒÏ×ÁÔØ ÓÉÓÔÅÍÕ ÐÏÓÌÅ +ÕÓÔÁÎÏ×ËÉ ËÏÍÁÎÄÏÊ |tlmgr conf texmf shell_escape 0|. + +åÝ£ ÏÄÎÏ ÉÚÍÅÎÅÎÉÅ, Ó×ÑÚÁÎÎÏÅ Ó ÜÔÉÍ: ÔÅÐÅÒØ \BibTeX\ É Makeindex +ÐÏ ÕÍÏÌÞÁÎÉÀ ÏÔËÁÚÙ×ÁÀÔÓÑ ÚÁÐÉÓÙ×ÁÔØ × ÆÁÊÌÙ, ÌÅÖÁÝÉÅ × ÐÒÏÉÚ×ÏÌØÎÏÊ +ÄÉÒÅËÔÏÒÉÉ ÓÉÓÔÅÍÙ (ËÁË É ÓÁÍ \TeX). ðÏÜÔÏÍÕ ÉÈ ÍÏÖÎÏ ÚÁÐÕÓËÁÔØ ÞÅÒÅÚ +ÍÅÈÁÎÉÚÍ \cs{write18}. þÔÏÂÙ ÉÚÍÅÎÉÔØ ÜÔÏ ÐÒÁ×ÉÌÏ, ÍÏÖÎÏ ÕÓÔÁÎÏ×ÉÔØ +ÐÅÒÅÍÅÎÎÕÀ ÏËÒÕÖÅÎÉÑ \envname{TEXMFOUTPUT} ÉÌÉ ÉÚÍÅÎÉÔØ ÚÎÁÞÅÎÉÅ +ÐÁÒÁÍÅÔÒÁ |openout_any|. + +\XeTeX\ ÔÅÐÅÒØ ÐÏÄÄÅÒÖÉ×ÁÅÔ ÏÐÔÉÞÅÓËÏÅ ×ÙÒÁ×ÎÉ×ÁÎÉÅ ÐÏÌÅÊ, ËÁË ÜÔÏ +ÕÍÅÅÔ ÄÅÌÁÔØ pdf\TeX. (ûÒÉÆÔÙ Ó ×ÁÒÉÁÎÔÁÍÉ ÐÏËÁ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÀÔÓÑ). + +ðÏ ÕÍÏÌÞÁÎÉÀ, \prog{tlmgr} ÔÅÐÅÒØ ÓÏÈÒÁÎÑÅÔ ÐÒÅÄÙÄÕÝÕÀ ×ÅÒÓÉÀ ËÁÖÄÏÇÏ +ÐÁËÅÔÁ ÐÏÓÌÅ ÁÐÇÒÅÊÄÁ (\code{tlmgr option autobackup 1}), ÐÏÜÔÏÍÕ +ÏÛÉÂËÉ ÍÏÖÎÏ <<ÏÔËÁÔÉÔØ ÎÁÚÁÄ>> ËÏÍÁÎÄÏÊ \code{tlmgr restore}. åÓÌÉ Õ +×ÁÓ ÎÅÔ ÍÅÓÔÁ ÎÁ ÄÉÓËÅ ÄÌÑ ÜÔÉÈ ËÏÐÉÊ, ÚÁÐÕÓÔÉÔÅ \code{tlmgr option + autobackup 0}. + +îÏ×ÙÅ ÐÒÏÇÒÁÍÍÙ: p\TeX\ É ÐÁËÅÔ ÕÔÉÌÉÔ ÄÌÑ ÎÁÂÏÒÁ ÑÐÏÎÓËÉÈ ÔÅËÓÔÏ×, +ÐÒÏÇÒÁÍÍÁ \BibTeX{}U ÄÌÑ ×ÁÒÉÁÎÔÁ \BibTeX Á Ó ÐÏÄÄÅÒÖËÏÊ àÎÉËÏÄÁ, +ÕÔÉÌÉÔÁ \prog{chktex} (\url{http://baruch.ev-en.org/proj/chktex}) ÄÌÑ +ÐÒÏ×ÅÒËÉ ÄÏËÕÍÅÎÔÏ×, ÓÏÚÄÁÎÎÙÈ \AllTeX ÏÍ, ÐÒÏÇÒÁÍÍÁ \prog{dvisvgm} +(\url{http://dvisvgm.sourceforge.net}) ÄÌÑ ÐÅÒÅ×ÏÄÁ ÉÚ ÆÏÒÍÁÔÁ DVI × +ÆÏÒÍÁÔ SVG. + +÷ËÌÀÞÅÎÙ ÐÒÏÇÒÁÍÍÙ ÄÌÑ ÓÌÅÄÕÀÝÉÈ ÎÏ×ÙÈ ÐÌÁÔÆÏÒÍ: \code{amd64-freebsd}, +\code{amd64-kfreebsd}, \code{i386-freebsd}, \code{i386-kfreebsd}, +\code{x86\_64-darwin}, \code{x86\_64-solaris}. + +ï ÏÄÎÏÍ ÉÚÍÅÎÅÎÉÉ × \TL{} 2009 ÍÙ ÚÁÂÙÌÉ ÕÐÏÍÑÎÕÔØ × Ó×ÏÅ ×ÒÅÍÑ: +ÍÎÏÇÏÞÉÓÌÅÎÎÙÅ ÐÒÏÇÒÁÍÍÙ ËÏÎ×ÅÒÔÅÒÁ \TeX4ht +(\url{http://tug.org/tex4ht}) ÂÙÌÉ ÕÂÒÁÎÙ ÉÚ ÄÉÒÅËÔÏÒÉÊ ÄÌÑ +ÂÉÎÁÒÎÉËÏ×; ×ÓÅ ÔÅÐÅÒØ ÄÅÌÁÅÔÓÑ ÏÄÎÏÊ ÐÒÏÇÒÁÍÍÏÊ \code{mk4ht}. + +îÁËÏÎÅÃ, ÒÅÌÉÚ \TL{} ÎÁ \TK\ \DVD\ ÕÖÅ ÎÅÌØÚÑ ÉÓÐÏÌØÚÏ×ÁÔØ <>, +ÎÅÐÏÓÒÅÄÓÔ×ÅÎÎÏ Ó ÄÉÓËÁ (ÞÔÏ ÍÏÖÅÔ ÐÏËÁÚÁÔØÓÑ ÓÔÒÁÎÎÙÍ). ëÓÔÁÔÉ, +ÉÚ-ÚÁ ÜÔÏÇÏ ÕÓÔÁÎÏ×ËÁ Ó \DVD\ ÂÕÄÅÔ ÔÅÐÅÒØ ÚÎÁÞÉÔÅÌØÎÏ ÂÙÓÔÒÅÅ. + +\subsubsection{2011} + + +÷ 2011 ÇÏÄÕ ÂÙÌÏ ÓÄÅÌÁÎÏ ÏÔÎÏÓÉÔÅÌØÎÏ ÎÅÍÎÏÇÏ ÉÚÍÅÎÅÎÉÊ. + +ðÒÏÇÒÁÍÍÙ ÄÌÑ \MacOSX\ (\code{universal-darwin} É +\code{x86\_64-darwin}) ÒÁÂÏÔÁÀÔ ÔÅÐÅÒØ ÔÏÌØËÏ ÐÏÄ Leopard ÉÌÉ ÍÌÁÄÛÅÊ +ÓÉÓÔÅÍÏÊ; Panther É Tiger ÂÏÌØÛÅ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÀÔÓÑ. + +ðÒÏÇÒÁÍÍÁ \code{biber} ÄÌÑ ÏÂÒÁÂÏÔËÉ ÂÉÂÌÉÏÇÒÁÆÉÞÅÓËÉÈ ÓÐÉÓËÏ× +ÄÏÂÁ×ÌÅÎÁ ÄÌÑ ×ÓÅÈ ÐÌÁÔÆÏÒÍ. ïÎÁ ÔÅÓÎÏ Ó×ÑÚÁÎÁ Ó ÐÁËÅÔÏÍ +\code{biblatex}, ËÏÔÏÒÙÊ ÐÒÅÄÌÁÇÁÅÔ ÓÏ×ÅÒÛÅÎÎÏ ÎÏ×ÙÊ ÓÐÏÓÏ ÏÂÒÁÂÏÔËÉ +ÂÉÂÌÉÏÇÒÁÆÉÊ ÉÚ \LaTeX Á. + +ðÒÏÇÒÁÍÍÁ MetaPost (\code{mpost}) ÂÏÌØÛÅ ÎÅ ÓÏÚÄÁÅÔ ÆÁÊÌÏ× +\code{.mem}. îÕÖÎÙÅ ÆÁÊÌÙ, ÎÁÐÒÉÍÅÒ \code{plain.mp}, ÔÅÐÅÒØ ÐÒÏÓÔÏ +ÐÅÒÅÞÉÔÙ×ÁÀÔÓÑ ÐÒÉ ËÁÖÄÏÍ ÚÁÐÕÓËÅ. üÔÏ Ó×ÑÚÁÎÏ Ó ÐÏÄÄÅÒÖËÏÊ MetaPost +ËÁË ÂÉÂÌÉÏÔÅËÉ "--- ÅÝ£ ÏÄÎÏ ×ÁÖÎÏÅ, ÎÏ ÐÒÏÚÒÁÞÎÏÅ ÄÌÑ ÐÏÌØÚÏ×ÁÔÅÌÑ +ÉÚÍÅÎÅÎÉÅ. + +÷ÅÒÓÉÑ ÐÒÏÇÒÁÍÍÙ \code{updmap}, ÎÁÐÉÓÁÎÎÁÑ ÎÁ ðÅÒÌÅ, ÒÁÎÅÅ +ÉÓÐÏÌØÚÏ×ÁÎÎÁÑ ÔÏÌØËÏ ÐÏÄ Windows, ÔÅÐÅÒØ ÕÌÕÞÛÅÎÁ É ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ +ÄÌÑ ×ÓÅÈ ÐÌÁÔÆÏÒÍ. üÔÏ ÄÏÌÖÎÏ ÂÙÔØ ÐÒÏÚÒÁÞÎÏ ÄÌÑ ÐÏÌØÚÏ×ÁÔÅÌÑ "--- +ÒÁÚ×Å ÞÔÏ ÐÒÏÇÒÁÍÍÁ ÔÅÐÅÒØ ÒÁÂÏÔÁÅÔ ÇÏÒÁÚÄÏ ÂÙÓÔÒÅÅ. + +% +\htmlanchor{news} +\subsection{îÁÓÔÏÑÝÅÅ} +\label{sec:tlcurrent} + +ðÒÏÇÒÁÍÍÁ \code{tlmgr} ÔÅÐÅÒØ ÐÏÄÄÅÒÖÉ×ÁÅÔ ÏÂÎÏ×ÌÅÎÉÑ ÉÚ ÎÅÓËÏÌØËÉÈ +ÓÅÔÅ×ÙÈ ÒÅÐÏÚÉÔÏÒÉÅ×. üÔÉ ×ÏÚÍÏÖÎÏÓÔÉ ÐÏÄÒÏÂÎÅÅ ÏÐÉÓÁÎÙ × +ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÅÍ ÒÁÚÄÅÌÅ \code{tlmgr help}. + +ðÁÒÁÍÅÔÒ \cs{XeTeXdashbreakstate} ÔÅÐÅÒØ ÐÏ ÕÍÏÌÞÁÎÉÀ ÒÁ×ÅÎ~1, ËÁË +ÄÌÑ \code{xetex}, ÔÁË É ÄÌÑ \code{xelatex}. üÔÏ ÒÁÚÒÅÛÁÅÔ ÐÅÒÅÈÏÄ ÎÁ +ÎÏ×ÕÀ ÓÔÒÏËÕ ÐÏÓÌÅ ÔÉÒÅ, ÞÔÏ ×ÓÅÇÄÁ ÂÙÌÏ ÒÁÚÒÅÛÅÎÏ × plain TeX, +\LaTeX, Lua\TeX\ É Ô.Ä. óÔÁÒÙÅ ÄÏËÕÍÅÎÔÙ × \XeTeX Å, ÄÌÑ ËÏÔÏÒÙÈ +ÎÕÖÎÏ × ÔÏÞÎÏÓÔÉ ÓÏÈÒÁÎÉÔØ ÓÔÁÒÏÅ ÆÏÒÍÁÔÉÒÏ×ÁÎÉÅ, ÔÅÐÅÒØ ÄÏÌÖÎÙ ÂÕÄÕÔ +Ñ×ÎÏ ÕÓÔÁÎÏ×ÉÔØ \cs{XeTeXdashbreakstate} ÒÁ×ÎÙÍ~0. + +æÁÊÌÙ, ÓÏÚÄÁ×ÁÅÍÙÅ ÐÒÏÇÒÁÍÍÁÍÉ \code{pdftex} É \code{dvips}, ÔÅÐÅÒØ +ÍÏÇÕÔ ÂÙÔØ ÂÏÌØÛÅ 2~ÇÉÇÁÂÁÊÔ. + +35 ÓÔÁÎÄÁÒÔÎÙÈ ÛÒÉÆÔÏ× PostScriptÁ ÔÅÐÅÒØ ÐÏ ÕÍÏÌÞÁÎÉÀ ×ËÌÀÞÅÎÙ × +ÆÁÊÌÙ, ÓÏÚÄÁ×ÁÅÍÙÅ \code{dvips}, ÔÁË ËÁË ÓÅÊÞÁÓ ÓÕÝÅÓÔ×ÕÅÔ ÍÎÏÇÏ +ÒÁÚÎÙÈ ×ÅÒÓÉÊ ÜÔÉÈ <<ÓÔÁÎÄÁÒÔÎÙÈ>> ÛÒÉÆÔÏ×. + +ë ÐÒÏÇÒÁÍÍÁÍ, ËÏÔÏÒÙÅ ÍÏÇÕÔ ÐÏ ÕÍÏÌÞÁÎÉÀ ×ÙÚÙ×ÁÔØÓÑ × ÏÇÒÁÎÉÞÅÎÎÏÍ +ÒÅÖÉÍÅ ÞÅÒÅÚ \cs{write18}, ÄÏÂÁ×ÌÅÎÁ \code{mpost}. + +æÁÊÌ \code{texmf.cnf} ÔÅÐÅÒØ ÉÝÅÔÓÑ ÅÝ£ É × ÄÉÒÅËÔÏÒÉÉ +\filename{../texmf-local}, Ô.\,Å. ÅÓÌÉ ÆÁÊÌ +\filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf} ÓÕÝÅÓÔ×ÕÅÔ, +ÏÎ ÂÕÄÅÔ ÉÓÐÏÌØÚÏ×ÁÎ. + +óËÒÉÐÔ \code{updmap} ÔÅÐÅÒØ ÞÉÔÁÅÔ ÆÁÊÌÙ \code{updmap.cfg} × ËÁÖÄÏÍ +ÐÏÄÄÅÒÅ×Å ÄÉÒÅËÔÏÒÉÊ, ×ÍÅÓÔÏ ÏÄÎÏÇÏ ÇÌÏÂÁÌØÎÏÇÏ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÏÇÏ +ÆÁÊÌÁ. üÔÏ ÉÚÍÅÎÅÎÉÅ ÄÏÌÖÎÏ ÂÙÔØ ÐÒÏÚÒÁÞÎÙÍ ÄÌÑ ÐÏÌØÚÏ×ÁÔÅÌÑ, ÅÓÌÉ ÂÙ +ÎÅ ÒÅÄÁËÔÉÒÏ×ÁÌÉ ×ÒÕÞÎÕÀ ÆÁÊÌÙ \code{updmap.cfg}. ðÏÄÒÏÂÎÅÅ ÏÂßÑÓÎÅÎÏ +× ÄÏËÕÍÅÎÔÁÃÉÉ, ×ÙÄÁ×ÁÅÍÏÊ ËÏÍÁÎÄÏÊ \code{updmap --help}. + +ðÌÁÔÆÏÒÍÙ: ÄÏÂÁ×ÌÅÎÙ \pkgname{armel-linux} É \pkgname{mipsel-linux}; +ÉÚ ÏÓÎÏ×ÎÏÇÏ ÄÉÓÔÒÉÂÕÔÉ×Á ÉÓËÌÀÞÅÎÁ ÐÌÁÔÆÏÒÍÁ \pkgname{sparc-linux}. +å£ ÔÅÐÅÒØ ÍÏÖÎÏ ÓÇÒÕÚÉÔØ, ×ÍÅÓÔÅ Ó ÄÒÕÇÉÍÉ ÄÏÐÏÌÎÉÔÅÌØÎÙÍÉ +ÐÌÁÔÆÏÒÍÁÍÉ, ÉÚ \url{http://tug.org/texlive/custom-bin.html}. + +\subsection{âÕÄÕÝÅÅ} + +\emph{\TL{} ÎÅ ÓÏ×ÅÒÛÅÎÅÎ!} (é ÎÉËÏÇÄÁ ÎÅ ÂÕÄÅÔ.) íÙ ÐÒÅÄÐÏÌÁÇÁÅÍ +×ÙÐÕÓËÁÔØ ÎÏ×ÙÅ ×ÅÒÓÉÉ, ÄÏÂÁ×ÌÑÑ ÓÐÒÁ×ÏÞÎÙÊ ÍÁÔÅÒÉÁÌ, +ÕÔÉÌÉÔÙ, ÕÓÔÁÎÏ×ÏÞÎÙÅ ÐÒÏÇÒÁÍÍÙ É (ËÏÎÅÞÎÏ) ÎÏ×ÏÅ, ÕÌÕÞÛÅÎÎÏÅ É +ÐÒÏ×ÅÒÅÎÎÏÅ ÄÅÒÅ×Ï ÍÁËÒÏÓÏ× É ÛÒÉÆÔÏ×. üÔÁ ÒÁÂÏÔÁ ÄÅÌÁÅÔÓÑ ÏÞÅÎØ +ÚÁÎÑÔÙÍÉ ÄÏÂÒÏ×ÏÌØÃÁÍÉ × Ó×ÏÂÏÄÎÏÅ ×ÒÅÍÑ, É ÍÎÏÇÏÅ ÏÓÔÁÅÔÓÑ ÓÄÅÌÁÔØ. +åÓÌÉ ×Ù ÍÏÖÅÔÅ ÐÏÍÏÞØ, ÎÅ +ÓÔÅÓÎÑÊÔÅÓØ. óÍ. \url{http://tug.org/texlive/contribute.html}. + +ðÒÉÓÙÌÁÊÔÅ, ÐÏÖÁÌÕÊÓÔÁ, ÚÁÍÅÞÁÎÉÑ É ÐÒÅÄÌÏÖÅÎÉÑ ÐÏ ÁÄÒÅÓÕ:\hfill\null +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Happy \TeX ing!} + +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% LaTeX-command-style: (("." "pdflatex")) +%%% TeX-view-style: (("." "acroread %s.pdf")) +%%% End: diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/Makefile b/Master/texmf-dist/doc/texlive/texlive-sr/Makefile new file mode 100644 index 00000000000..6b080f3e5a5 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-sr/Makefile @@ -0,0 +1,26 @@ +# Makefile for Serbian Translation of the TeX Live documentation. + +TEX = xelatex +TECKIT = teckit_compile +doc = texlive-sr +source = $(doc).tex +pdf = $(doc).pdf +html = ${doc}.html + +all: realclean pdf + +env = TEXINPUTS=../texlive-common:../texlive-en:images:; export TEXINPUTS; + +pdf: + $(env) $(TEX) $(source) + $(env) $(TEX) $(source) + $(env) $(TEX) $(source) + +clean: + rm -f *.aux *.log *.blg *.toc *.out *.lot tex4ht.ps *.4* + rm -f *.xref* *.lg *.idv *.out *.otc *.tmp tmp.* + rm -f $(doc).dvi $(doc).ps $(doc).xdv + +realclean: clean + rm -f $(doc).pdf + rm -f *.html *.htm $(doc).css *.gif *.jpg $(doc).tec *~ diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/README-SR.txt b/Master/texmf-dist/doc/texlive/texlive-sr/README-SR.txt new file mode 100644 index 00000000000..1f663444e95 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-sr/README-SR.txt @@ -0,0 +1,48 @@ +======================================================================== + TeX Live Guide Translation (Serbian, Cyrillic Script) + -------------------------------------------------------------------- + Original: The TeX Live Guide: TeX Live 2012, Karl Berry (ed.) + Translator: Nikola LeÄić +======================================================================== + +To compile texlive-sr.tex, you need: + +1. XeTeX (xelatex); + +2. the following packages, apart from those required to build texlive-en: + fontspec, xunicode, xltxtra, polyglossia, caption and relsize; + +3. the following fonts: + + Old Standard >= 2.0.2 (by Alexey Kryukov) [1] + Computer Modern Unicode >= 0.6.3a (by Andrey Panov) [2] + + [1] http://www.thessalonica.org.ru/en/oldstandard.html + [2] http://canopus.iacp.dvo.ru/~panov/cm-unicode/ + http://sourceforge.net/projects/cm-unicode/ + + (these fonts are also included in TeX Live >= 2010 -- please read + the TeX Live Guide, section `Font configuration for XeTeX' on how to + configure your system); + +4. BSD or GNU make. + +To produce texlive-sr.pdf, type `make pdf'. + +Since tex4ht currently does not fully support XeTeX, the HTML version +of this documentation is produced similarly to that of the English +original, but some handiwork was necessary to simplify .tex and .sty, to +change encoding to cp1251 and back to utf-8, and to alter the generated +CSS. Therefore you cannot produce HTML from the source using Makefile. + +If you have any problems, suggestions or questions, please contact the +translator. + +Permission is granted to copy, distribute and/or modify this translation +under the terms of the adapted version of FreeBSD documentation licence. +The text of the licence is included in texlive-sr.tex and at the end of +resulting PDF/HTML files. + +http://www.gnu.org/licenses/license-list.html#FreeDocumentationLicenses +http://www.freebsd.org/copyright/freebsd-doc-license.html + diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-collections-freebsd-sr.png b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-collections-freebsd-sr.png new file mode 100644 index 00000000000..8331906a354 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-collections-freebsd-sr.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-expert-gui-freebsd-sr.png b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-expert-gui-freebsd-sr.png new file mode 100644 index 00000000000..98f16710444 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-expert-gui-freebsd-sr.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-wizard-win32-sr.png b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-wizard-win32-sr.png new file mode 100644 index 00000000000..27b38416a8e Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-install-tl-wizard-win32-sr.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-main-screen-freebsd-sr.png b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-main-screen-freebsd-sr.png new file mode 100644 index 00000000000..5e135ecd93c Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-main-screen-freebsd-sr.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-options-freebsd-sr.png b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-options-freebsd-sr.png new file mode 100644 index 00000000000..03ca041eeb1 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-options-freebsd-sr.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-paper-options-freebsd-sr.png b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-paper-options-freebsd-sr.png new file mode 100644 index 00000000000..a35d4835709 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-sr/images/tl2012-tlmgr-paper-options-freebsd-sr.png differ diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.css b/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.css new file mode 100644 index 00000000000..d4f18b9bb10 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.css @@ -0,0 +1,178 @@ + +/* start css.sty */ +.larm-1728{font-size:170%;} +.larm-2074{font-size:200%;} +.lmsy-10x-x-172{font-size:172%;} +.larm-1200{font-size:120%;} +.larm-0900{font-size:90%;} +.larm-0700{font-size:70%;} +.larm-0800{font-size:80%;} +p.noindent { text-indent: 0em } +td p.noindent { text-indent: 0em; margin-top:0em; } +p.nopar { text-indent: 0em; } +p.indent{ text-indent: 1.5em } +@media print {div.crosslinks {visibility:hidden;}} +a img { border-top: 0; border-left: 0; border-right: 0; } +center { margin-top:1em; margin-bottom:1em; } +td center { margin-top:0em; margin-bottom:0em; } +.Canvas { position:relative; } +img.math{vertical-align:middle;} +li p.indent { text-indent: 0em } +li p:first-child{ margin-top:0em; } +li p:last-child, li div:last-child { margin-bottom:0.5em; } +li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; } +.enumerate1 {list-style-type:decimal;} +.enumerate2 {list-style-type:lower-alpha;} +.enumerate3 {list-style-type:lower-roman;} +.enumerate4 {list-style-type:upper-alpha;} +div.newtheorem { margin-bottom: 2em; margin-top: 2em;} +.obeylines-h,.obeylines-v {white-space: nowrap; } +div.obeylines-v p { margin-top:0; margin-bottom:0; } +.overline{ text-decoration:overline; } +.overline img{ border-top: 1px solid black; } +td.displaylines {text-align:center; white-space:nowrap;} +.centerline {text-align:center;} +.rightline {text-align:right;} +div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; } +.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.fbox {display:table} +div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +div.minipage{width:100%;} +div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;} +div.center div {text-align: left;} +div.flushright, div.flushright div.flushright {text-align: right;} +div.flushright div {text-align: left;} +div.flushleft {text-align: left;} +.underline{ text-decoration:underline; } +.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; } +.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; } +.framebox-c {text-align:center;} +.framebox-l {text-align:left;} +.framebox-r {text-align:right;} +span.thank-mark{ vertical-align: super } +span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; } +div.footnotes{border-top:solid 1px black; border-bottom:solid 1px black; padding-bottom:1ex; padding-top:0.5ex; margin-right:15%; margin-top:2ex; font-style:italic; font-size:85%;} +div.footnotes p{margin-top:0; margin-bottom:0; text-indent:0;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +.tabbing-right {text-align:right;} +span.TEX {letter-spacing: -0.125em; } +span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;} +a span.TEX span.E {text-decoration: none; } +span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;} +span.LATEX span.TEX{ position:relative; left: -0.4em; } +div.float, div.figure {margin-left: auto; margin-right: auto;} +div.float img {text-align:center;} +div.figure img {text-align:center;} +.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;} +.marginpar p{margin-top:0.4em; margin-bottom:0.4em;} +table.equation {width:100%;} +.equation td{text-align:center; } +td.equation { margin-top:1em; margin-bottom:1em; } +td.equation-label { width:5%; text-align:center; } +td.eqnarray4 { width:5%; white-space: normal; } +td.eqnarray2 { width:5%; } +table.eqnarray-star, table.eqnarray {width:100%;} +div.eqnarray{text-align:center;} +div.array {text-align:center;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.pmatrix img{vertical-align:middle;} +div.pmatrix {text-align:center;} +table.pmatrix {width:100%;} +span.bar-css {text-decoration:overline;} +img.cdots{vertical-align:middle;} +div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; } +table.tabular td p{margin-top:0em;} +table.tabular {margin-left: auto; margin-right: auto;} +td p:first-child{ margin-top:0em; } +td p:last-child{ margin-bottom:0em; } +div.td00{ margin-left:0pt; margin-right:0pt; } +div.td01{ margin-left:0pt; margin-right:5pt; } +div.td10{ margin-left:5pt; margin-right:0pt; } +div.td11{ margin-left:5pt; margin-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +td.td00{ padding-left:0pt; padding-right:0pt; } +td.td01{ padding-left:0pt; padding-right:5pt; } +td.td10{ padding-left:5pt; padding-right:0pt; } +td.td11{ padding-left:5pt; padding-right:5pt; } +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +.hline hr, .cline hr{ height : 1px; margin:0px; } +div.array {text-align:center;} +.partToc a, .partToc, .likepartToc a, .likepartToc {line-height: 200%; font-weight:bold; font-size:110%;} +.index-item, .index-subitem, .index-subsubitem {display:block} +div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left;} +div.caption span.id{font-weight: bold; white-space: nowrap; } +h1.partHead{text-align: center} +p.bibitem { text-indent: -2em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +p.bibitem-p { text-indent: 0em; margin-left: 2em; margin-top:0.6em; margin-bottom:0.6em; } +.paragraphHead, .likeparagraphHead { margin-top:2em; font-weight: bold;} +.subparagraphHead, .likesubparagraphHead { font-weight: bold;} +.quote {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; margin-right:1em; text-align:justify;} +.verse{white-space:nowrap; margin-left:2em} +div.maketitle {text-align:center;} +h2.titleHead{text-align:center;} +div.maketitle{ margin-bottom: 2em; } +div.author, div.date {text-align:center;} +div.thanks{text-align:left; margin-left:10%; font-size:85%; font-style:italic; } +.quotation {margin-bottom:0.25em; margin-top:0.25em; margin-left:1em; } +.abstract p {margin-left:5%; margin-right:5%;} +div.abstract {width:100%;} +.alltt P { margin-bottom : 0em; margin-top : 0em; } +.alltt { margin-bottom : 1em; margin-top : 1em; } +.figure img.graphics {margin-left:10%;} +table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; } +div.longtable{text-align:center;} +.uline{ text-decoration:underline; } +.uuline{ text-decoration:underline; } +span.sout {text-decoration: line-through } +span.xout {text-decoration: line-through } +span.uwave {text-decoration:underline } +P.fancyvrb {white-space: nowrap; margin:0em;} +div#fancyvrb1{ border-top: solid 0.4pt; } +div#fancyvrb1{ border-left: solid 0.4pt; } +div#fancyvrb1{ border-bottom: solid 0.4pt; } +div#fancyvrb1{ border-right: solid 0.4pt; } +div#fancyvrb2{ border-top: solid 0.4pt; } +div#fancyvrb2{ border-left: solid 0.4pt; } +div#fancyvrb2{ border-bottom: solid 0.4pt; } +div#fancyvrb2{ border-right: solid 0.4pt; } +div#fancyvrb3{ border-top: solid 0.4pt; } +div#fancyvrb3{ border-left: solid 0.4pt; } +div#fancyvrb3{ border-bottom: solid 0.4pt; } +div#fancyvrb3{ border-right: solid 0.4pt; } +div#fancyvrb4{ border-top: solid 0.4pt; } +div#fancyvrb4{ border-left: solid 0.4pt; } +div#fancyvrb4{ border-bottom: solid 0.4pt; } +div#fancyvrb4{ border-right: solid 0.4pt; } +/* end css.sty */ + +/* handiwork */ +body, h3.sectionHead, h4.subsectionHead, h5.subsubsectionHead { font-family : "DejaVu Sans", Verdana, Calibri, Arial, Helvetica, "Bitstream Vera Sans", sans-serif; } +div.fancyvrb, div.BVerbatimInput, .texttt, .file, .samp { font-family: "DejaVu Sans Mono", "Courier New", Monaco, "Andale Mono", "Lucida Console", "Bitstream Vera Sans Mono", monospace; font-size: 85%; } +.url {font-family: "DejaVu Sans Mono", "Courier New", Monaco, "Andale Mono", "Lucida Console", "Bitstream Vera Sans Mono", monospace; font-size: 80%; } +div.verbatim {font-family: "DejaVu Sans Mono", "Courier New", Monaco, "Andale Mono", "Lucida Console", "Bitstream Vera Sans Mono", monospace; white-space: nowrap; text-align:left; clear:both; } +dt.description {font-weight: bold; } +dt.list {font-family: "DejaVu Sans Mono", "Courier New", Monaco, "Andale Mono", "Lucida Console", "Bitstream Vera Sans Mono", monospace; font-weight: bold; font-size: 80%; } +.obeylines-h,.obeylines-v { font-family: "DejaVu Sans Mono", "Courier New", Monaco, "Andale Mono", "Lucida Console", "Bitstream Vera Sans Mono", monospace; font-size: 80%; } +div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; text-align:left; margin-top: .5em; margin-bottom: .9em; } +.path { font-family: "DejaVu Sans Mono", "Courier New", Monaco, "Andale Mono", "Lucida Console", "Bitstream Vera Sans Mono", monospace; font-size: 80%; } +div.footnotes{border-top:solid 1px black; border-bottom:solid 1px black; padding-bottom:1ex; padding-top:0.5ex; margin-right:15%; margin-top:2ex; font-style:normal; font-size:85%;} +div.footnotes p{margin-top:0; margin-bottom:0; text-indent:0;} +.larm-0700 { font-size: 85%; } +.command { font-weight: bold; } +.emph { font-style: italic; } diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.html b/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.html new file mode 100644 index 00000000000..a011d3744e4 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.html @@ -0,0 +1,5934 @@ + + + + TeX Live: Приручник +TeX Live 2012 + + + + + + + + + + +

+ + + + + +

TEX Live: Приручник
+TEX Live 2012*

+
Карл Бери, уредник +
http://tug.org/texlive/
+
превод на ÑрпÑки језик +
Ðикола Лечић +
nikola.lecic@anthesphoria.net

+
јун 2012
+
+

Садржај

+
+ 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 СиÑтемÑке променљиве на Unix-у +
  3.4.2 СиÑтемÑке променљиве: глобална подешавања + + +
  3.4.3 Ðадоградње преко Интернета поÑле инÑталације +Ñа DVD-ја +
  3.4.4 Подешавање ÑиÑтемÑких фонтова за XeTEX и LuaTEX +
  3.4.5 ConTEXt Mark IV +
  3.4.6 Укључивање локалних и личних макроа +
  3.4.7 Укључивање Ñпољних фонтова +
 3.5 ТеÑтирање инÑталације +
 3.6 Додатни Ñофтвер који Ñе може преузети Ñа Интернета +
4 Специјализоване инÑталације +
 4.1 ИнÑталације које дели више кориÑника или +више компјутера +
 4.2 ПреноÑиве инÑталације на USB-диÑку +
 4.3 ISO (или DVD) инÑталације +
5 Одржавање инÑталације помоћу tlmgr +
 5.1 tlmgr у графичком (GUI) режиму рада +
 5.2 Примери позивања tlmgr-а Ñа командне линије +
6 Ðапомене за Windows +
 6.1 МогућноÑти Ñпецифичне за Windows +
 6.2 Додатни Ñофтвер укључен на Windows-у +
 6.3 Лични кориÑнички директоријум на Windows-у +
 6.4 Windows-ов „registry“ +
 6.5 Овлашћења на Windows-у +
 6.6 Увећавање макÑимума доÑтупне меморије +на Windows-у и Cygwin-у +
7 КориÑнички водич кроз Web2C +
 7.1 Проналажење фајлова помоћу Kpathsea +
  7.1.1 Извори путања +
  7.1.2 Конфигурациони фајлови +
  7.1.3 Прерачунавање путање +
  7.1.4 Стандардно прерачунавање +
  7.1.5 Прерачунавање заграда +
  7.1.6 Прерачунавање поддиректоријума +
  7.1.7 СпиÑак Ñпецијалних Ñимбола и њихово значење: +преглед +
 7.2 Базе података Ñа именима фајлова +
  7.2.1 База података ls-R +
  7.2.2 СамоÑтални програм за претраживање: kpsewhich +
  7.2.3 Примери употребе +
  7.2.4 ПоÑтупци отклањања грешака +
 7.3 Опције током рада (runtime options) +
8 Захвалнице +
9 ИÑторија Ð¸Ð·Ð´Ð°ÑšÄ +
 9.1 ПрошлоÑÑ‚ +
  9.1.1 2003 +
  9.1.2 2004 +
  9.1.3 2005 +
  9.1.4 2006–2007 +
  9.1.5 2008 +
  9.1.6 2009 +
  9.1.7 2010 +
  9.1.8 2011 +
 9.2 Тренутно Ñтање +
 9.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-а налази Ñе +на крају документа, у одељку 9 (ÑÑ‚Ñ€. 81). +

+

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

+

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

Што Ñе тиче Windows-а, подржани Ñу Ñамо Windows XP и каÑније верзије. +Windows 2000 ће Ñа великом вероватноћом и даље радити за +највећи број Ñтвари. Ðе поÑтоје поÑебни 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-диÑку (погледајте одељак 4.2). ИнÑталација је +детаљно опиÑана у одељцима који Ñледе (ÑÑ‚Ñ€. 13); укратко, поÑтупак изгледа +овако: +

    +
  • ИнÑталациона Ñкрипта + Ñе зове install-tl. Она може да ради у поједноÑтављеном графичком, тзв. + + + „wizard“ режиму, ако Ñе позове Ñа опцијом -gui=wizard (подразумевани режим на + Windows-у, у текÑтуалном режиму ако Ñе позове Ñа -gui=text (подразумевани режим на Ñвим + другим ÑиÑтемима), и графичком режиму на екÑпертÑком нивоу (тзв. „expert GUI“ режим), + који Ñе позива Ñа -gui=perltk. +
  • +
  • Један од инÑталираних програма је и TEX Live Manager, који Ñе + позива помоћу tlmgr. Као и програм за инÑталацију, он може да Ñе кориÑти + и у графичком (GUI) и у текÑтуалном режиму. Можете га кориÑтити да инÑталирате и + деинÑталирате пакете и да обавите разне конфигурационе задатке. +
+

+

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://mirror.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. Треба поменути и + Интернет-Ñтраницу LATEX + заједнице (LATEX Community, http://www.latex-community.org/) и њихов + форум http://www.latex-community.org/forum/, као и Интернет-портал TEX StackExchange, + http://tex.stackexchange.com/. +
+подршка везана за 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 +приказује вредноÑти ових променљивих тако да лако можете да видите на +који директоријум (дрво) на Вашој инÑталацији оне +упућују. +

Сви ови директоријуми (дрвета), укључујући и лични, треба да +поштују TDS (Ñтруктуру TEX директоријума, одноÑно +TEX Directory Structure — http://tug.org/tds), Ñа Ñвим безбројним поддиректоријумима +карактериÑтичним за њу, иначе може да Ñе деÑи да Ñе неки фајлови не могу +пронаћи. Одељак 3.4.6 (ÑÑ‚Ñ€. 43) детаљно Ñе бави овом темом. +

+

+ TEXMFMAIN
+

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

+ TEXMFDIST
+

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

+ TEXMFLOCAL
+

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

+ TEXMFHOME
+

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

+ TEXMFCONFIG
+

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

+ TEXMFSYSCONFIG
+

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

+ TEXMFVAR
+

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

+ TEXMFSYSVAR
+

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

+ TEXMFCACHE
+

Дрво (или више дрвета) које ConTEXt MkIV кориÑти за чување + (кешираних) радних података.

+

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

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

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

+ 2012
+

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

+ bin
+

  +

+ i386-freebsd    
+

програми за FreeBSD + + +

+ 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%) +
+ .texlive2011
+

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

+ .texlive2012
+

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

+ texmf-var   
+

TEXMFVAR, TEXMFCACHE +

+ 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-у. Ðа Ñтраници http://tug.org/texlive/acquire.html налазе Ñе додатне +информације како можете да дођете до Ñофтвера. +

+ + +

+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 на DVD-ју. Ðа + Windows-у Ñе инÑталациони програм обично Ñам покреће када убаците DVD. DVD + можете добити ако поÑтанете члан неке групе кориÑника TEX-а (наша Ñрдачна препорука да + урадите тако, погледајте http://tug.org/usergroups.html), тако што ћете га + купити (http://tug.org/store), или тако што ћете Ñами нарезати ISO Ñ„ајл. + Ðа већини ÑиÑтема можете и да директно приÑтупите Ñадржају ISO + одраза („mount“). Ðко поÑле инÑталације преко DVD-ја или ISO одраза + желите да наÑтавите Ñа надоградњама преко Интернета, погледајте + одељак 3.4.3. +
+

Без обзира на то који извор кориÑтите, покреће Ñе један иÑти инÑталер. +Ðајвидљивија разлика је то што преко мреже („Net installer“) +добијате пакете који Ñу доÑтупни у том тренутку. За разлику од тога, +DVD и ISO фајлови Ñе не оÑвежавају у периоду између главних +издања. +

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

+

3.1.1 Unix
+

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

+

cd /путања/до/програма/за/инÑталацију +
perl install-tl +
+
(УмеÑто тога, можете је позвати Ñа perl +/путања/до/инÑталера/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 2012 from: ...
  Platform: i386-linux => "Intel x86 with GNU/Linux"
  Distribution: live (compressed)
  ... +
   Detected platform: Intel x86 with GNU/Linux
  
   <B> platforms: 1 out of 19
  
   <S> installation scheme (scheme-full) +
       84 collections out of 85, disk space required: 3091 MB
  
   Customizing installation scheme: +
     <C> standard collections
     <L> language collections
  
   <D> directories:
     TEXDIR (the main TeX directory): +
       /usr/local/texlive/2012
     ...
  
   <O> options:
     [ ] use letter size instead of A4 by default
     ...
   +
     <V> set up for portable installation
  
  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 уколико не +поÑтоје на Вашем ÑиÑтему. Препоручују Ñе и ови додатни пакети: +

    +
  • fontconfig [потребан за XeTEX] +
  • +
  • ghostscript [потребан за више разних програма] +
  • +
  • libXaw7 [потребан за xdvi] +
  • +
  • ncurses [обезбеђује команду clear коју кориÑти инÑталациони + програм]
+

+

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 platforms:
  =============================================================================== +
     a [ ] alpha-linux      DEC Alpha with GNU/Linux
     b [X] amd64-freebsd    x86_64 with FreeBSD +
     c [ ] amd64-kfreebsd   x86_64 with GNU/kFreeBSD
     d [ ] armel-linux      ARM with GNU/Linux +
     e [ ] i386-cygwin      Intel x86 with Cygwin
     f [ ] i386-freebsd     Intel x86 with FreeBSD +
     g [ ] i386-kfreebsd    Intel x86 with GNU/kFreeBSD
     h [ ] i386-linux       Intel x86 with GNU/Linux +
     i [ ] i386-solaris     Intel x86 with Solaris
     j [ ] mips-irix        SGI IRIX
     k [ ] mipsel-linux     mipsel with Linux +
     l [ ] powerpc-aix      PowerPC with AIX
     m [ ] powerpc-linux    PowerPC 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 scheme:
  =============================================================================== +
   a [X] full scheme (everything)
   b [ ] medium scheme (small + more packages and languages) +
   c [ ] small scheme (basic + xetex, metapost, a few languages)
   d [ ] basic scheme (plain and latex) +
   e [ ] minimal scheme (plain only)
   f [ ] ConTeXt scheme
   g [ ] GUST TeX Live scheme +
   h [ ] teTeX scheme (more than medium, but nowhere near full)
   i [ ] XML scheme
   j [ ] custom selection of collections
+
Слика 5: Мени Ñа шемама
+ + +


+

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


+ + + + + +
+

+ +

pict +

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


+

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

Колекције Ñу за један ниво детаљније него шеме — +поједноÑтављено речено, једна шема Ñе ÑаÑтоји од неколико +колекција, колекција Ñе ÑаÑтоји од једног или више пакетÄ, а +пакет (најнижи ниво групиÑања у TEX Live-у) Ñадржи Ñтварне фајлове +TEX Ð¼Ð°ÐºÑ€Ð¾Ð°, фонтова, итд. +

Ðко желите још више контроле него што нуде менији Ñа колекцијама, +можете да кориÑтите TEX Live Manager (tlmgr) након инÑталације (подгледајте +одељак 5); помоћу њега можете да контролишете инÑталацију на +нивоу пакетÄ. +

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

Подразумевани раÑпоред Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ˜ÑƒÐ¼Ä Ð¾Ð¿Ð¸Ñан је у одељку 2.3, ÑÑ‚Ñ€. 9. +Стандардна локација директоријума TEXDIR је /usr/local/texlive/2012 на +Unix-у и %SystemDrive%\texlive\2012 на Windows-у. +

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

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

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

Промена вредноÑти променљиве TEXDIR у инÑталационом програму повлачи за Ñобом и +промену Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ˜ÑƒÐ¼Ä TEXMFLOCAL, TEXMFSYSVAR и TEXMFSYSCONFIG. +

Препоручујемо да кориÑтите TEXMFHOME као меÑто за личне макрое и пакете. +Подразумевана вредноÑÑ‚ је ~/texmf. ÐаÑупрот TEXDIR-у, овде Ñе ознака ~ чува у +новозапиÑаним конфигурационим фајловима зато што означава лични директоријум +било ког појединца који кориÑти TEX. Он на Unix-у узима вредноÑÑ‚ $HOME а на +Windows-у поÑтаје %USERPROFILE%. ПоÑебна, већ помало Ñувишна напомена: +TEXMFHOME, као и Ñва дрвета Ñа подацима, мора бити организовано у Ñкладу Ñа TDS; у противном Ñе +може деÑити да фајлови не могу да Ñе пронађу. +

TEXMFVAR је меÑто где Ñе Ñмештају кеширани подаци који Ñе +Ñтварају током рада Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ä Ð¸ који Ñе разликују од кориÑника +до кориÑника. ConTEXt MkIV кориÑти у те Ñврхе директоријум TEXMFCACHE +(погледајте одељак 3.4.5, ÑÑ‚Ñ€. 42). +

+

3.2.4 Опције
+


+ + + + + +
  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:
   <Y> after installation, get package updates from CTAN: [X]
+
Слика 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 (одељак 9.1.7). +
+направи фајлове Ñа форматима
(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. +
+поÑле инÑталације обнављати пакете преко CTAN-а
(after installation, get + package updates from CTAN): Када инÑталирате Ñа DVD-ја, ова опција Ñе + подразумева зато што већина кориÑника жели да преузме Ñве нове верзије + пакета Ñа CTAN-а које Ñе појаве током године. Једини разумни + разлог да иÑкључите ову опцију појављује Ñе + у Ñлучају када Ñа DVD-ја инÑталирате Ñамо део ÑиÑтема и планирате + да га каÑније проширите. У Ñваком Ñлучају, репозиторијум + Ð¿Ð°ÐºÐµÑ‚Ä ÐºÐ¾Ñ˜Ð¸ Ñе кориÑти за инÑталацију и за будуће + оÑвежавање ÑиÑтема може да Ñе подеÑи и каÑније; погледајте + одељке 3.3.1 и 3.4.3.
+

Када Ñу Ñви параметри подешени према Вашој жељи, можете да притиÑнете „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-у. +

+ -lang LL
+

Задавање језика инÑталационог програма према Ñтандардном двоÑловном + коду LL. ИнÑталациони програм ће покушати + да уÑтанови који Ñе језик кориÑти на ÑиÑтему; ако не уÑпе + или ако језик није доÑтупан, пребациће Ñе на енглеÑки. + Команда install-tl --help ће приказати лиÑту раÑположивих језика. + ИнÑталациони програм је преведен на ÑрпÑки; покрените га помоћу + install-tl -gui -lang sr. +

+

+ -in-place
+

Ðко већ имате копију TEX Live-а направљену + помоћу rsync, svn или друге копије Ñамог TEX Live-а (погледајте + http://tug.org/texlive/acquire-mirror.html), онда Ñе овим параметром задаје да + Ñе употреби то што имате, такво какво је; биће обављене + Ñамо неопходне поÑÑ‚-инÑталационе радње. Будите пажљиви зато што + фајл tlpkg/texlive.tlpdb може бити пребриÑан новом верзијом; на Вама + је да га Ñачувате. Такође, уклањање Ð¿Ð°ÐºÐµÑ‚Ä Ð¼Ð¾Ñ€Ð° + да Ñе уради ручно. Ðе треба да кориÑтите овај параметар ако не знате тачно + шта радите. Овај параметар не може да Ñе укључи преко графичког + интерфејÑа инÑталера. +

+ -portable
+

Припрема преноÑиве инÑталације на USB-диÑку. Овај параметар Ñе може + изабрати и у текÑтуалном режиму инÑталера (помоћу команде V), као и у + графичком режиму. Погледајте одељак 4.2. +

+ -profile file
+ + +

Учитава инÑталациони профил file и обавља + инÑталацију без интеракције Ñа кориÑником. ИнÑталациони програм увек + запиÑује фајл texlive.profile у tlpkg, поддиректоријум Ваше + инÑталације. Помоћу ове опције поменути фајл Ñе може + употребити да Ñе, на пример, идентична инÑталација понови да неком другом + ÑиÑтему. ОÑим тога, можете да лако припремите ÑопÑтвени профил тако што промените + вредноÑти у профилу који је аутоматÑки направљен (проÑтом + изменом вредноÑти у текÑÑ‚ едитору) или да подеÑите да профил буде празан фајл + (у ком Ñлучају ће инÑталациони програм без питања инÑталирати + TEX Live Ñа подразумеваним параметрима). +

Ова опција задаје програму да изнова употреби такав фајл тако + да, након прве инÑталације, можете да инÑталирате 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 СиÑтемÑке променљиве на Unix-у
+

Ðко Ñте изабрали да Ñе направе Ñимболички линкови у Ñтандардним директоријумима (као што је +објашњено у одељку 3.2.4), онда нема потребе да Ñе преправљају ÑиÑтемÑке +променљиве.3 +У Ñупротном Ñе на Unix ÑиÑтемима директоријум Ñа програмима за Ваш оперативни +ÑиÑтем мора додати у путању за претрагу. (Ðа Windows-у о овоме инÑталер Ñам води +рачуна.) + + +

Сваки подржани оперативни ÑиÑтем има Ñвој поддиректоријум унутар TEXDIR/bin. +Ðа Ñлици 4 можете да видите ÑпиÑак поддиректоријума и одговарајућих +платформи. +

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

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

+

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

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

+

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

Ðко у Ñвојим конфигурационим фајловима („који почињу Ñа +тачком“) већ имате нека подешавања ове врÑте, онда би наравно требало +да уклопите TEX Live Ð´Ð¸Ñ€ÐµÐºÑ‚оријуме у већ поÑтојеће +вредноÑти. +

+

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

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

Можемо Вам дати два Ñавета: (1) Ð¿Ñ€Ð¾Ð±Ð°Ñ˜Ñ‚е да потражите фајл /etc/manpath.config +и да, ако поÑтоји, додате линије као што Ñу ове: +

+

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

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

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

+

3.4.3 Ðадоградње преко Интернета поÑле инÑталације Ñа DVD-ја
+

Ðко Ñте инÑталирали TEX Live Ñа DVD-ја и желите да поÑле тога преузимате надоградње +Ñа Интернета, потребно је да покренете ову команду — али тек пошто +Ñте проширили Ñвоју питању за претрагу (као што је опиÑано у +претходном одељку): +

+ + +

tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet +
+
+

Ова команда говори програму tlmgr да употреби оближњу Ñајт-копију +(mirror) CTAN-а за будуће надоградње. Ðадоградње ће Ñе овим путем +аутоматÑки обављати ако Ñте инÑталирали TEX Live Ñа DVD-ја, према опцији +опиÑаној у одељку 3.2.4. +

У Ñлучају проблема Ñа аутоматÑким избором најближег Ñајта, можете да +назначите неку поÑебну копију (mirror) CTAN-а Ñа ÑпиÑка доÑтупног на http://ctan.org/mirrors. +КориÑтите тачну путању до поддиректоријума tlnet на том Ñајту, као што +је урађено у нашем примеру. +

+

3.4.4 Подешавање ÑиÑтемÑких фонтова за XeTEX Ð¸ LuaTEX
+

XeTEX Ð¸ LuaTEX Ð¼Ð¾Ð³Ñƒ да кориÑте не Ñамо фонтове који Ñу укључени у TEX Live, +него и било који фонт инÑталиран на Вашем ÑиÑтему. Они то раде на Ñличан, али не идентичан +начин. +

Ðа Windows-у Ñу фонтови укључени у TEX Live Ð°ÑƒÑ‚оматÑки доÑтупни XeTEX-у. +Ðли, ако Ñте инÑталирали пакет xetex на оперативном ÑиÑтему компатибилним Ñа Unix-ом, +морате да подеÑите ÑиÑтем тако да може да пронађе фонтове из TEX Live-а према +Ñтварном називу фонта, а не проÑто према именима фајлова од којих Ñе фонт +ÑаÑтоји. +

Како биÑмо олакшали овај задатак, када Ñе инÑталира пакет xetex (у +иницијалној поÑтавци или накнадно) прави Ñе и одговарајући +конфигурациони фајл TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf. +

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

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

Ðко немате овлашћења да ово урадите или ако Вам је довољно да +фонтови из TEX Live-а буду видљиви Ñамо једном кориÑнику, можете да урадите +Ñледеће: +

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

Команда fc-list ће излиÑтати називе Ñвих фонтова раÑположивих на Вашем ÑиÑтему. Ðко +је позовете помоћу fc-list : family style file spacing (унеÑите аргументе баш у +том облику), биће приказане информације које ће Вам +највероватније бити веома кориÑне за рад. +

+

3.4.5 ConTEXt Mark IV
+

И „Ñтари“ ConTEXt (Mark II) и „нови“ ConTEXt (Mark IV) требало би да раде без икаквих +интервенција након инÑталације TEX Live-а; тако би требало и да оÑтане ако за +надоградње будете кориÑтили Ñамо tlmgr. + + +

Ипак, пошто ConTEXt MkIV не кориÑти библиотеку Kpathsea, неопходне Ñу неке ручне +интервенције кад год ручно инÑталирате нове фајлове (без tlmgr). ПоÑле Ñваке такве +инÑталације кориÑник мора да покрене команду +

  luatools --generate
+

како би оÑвежио кеширане радне податке које ConTEXt чува на диÑку. Ðаправљени +фајлови Ñе Ñмештају у TEXMFCACHE; подразумевана вредноÑÑ‚ ове променљиве +у TEX Live-у је TEXMSYSVAR;TEXMFVAR. +

ConTEXt MkIV ће читати из Ñвих путања поменутих у TEXMFCACHE, а податке +ће Ñмештати у прву путању у коју Ñе може упиÑивати. Приликом +читања, поÑледње уÑтановљено поклапање ће имати предноÑÑ‚ +у Ñлучају дуплираних кешираних података. +

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

+

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

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

У оба ова директоријума фајлови треба да буду раÑпоређени у +одговарајуће поддиректоријуме у Ñкладу Ñа Ñтруктуром +TEX директоријума (TDS) — погледајте 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) режиму. +

Подразумевана вредноÑÑ‚ Ñваке ове променљиве једнака je једном поÑебном +директоријуму, као што је Ð¼Ð°Ð»Ð¾Ñ‡Ð°Ñ Ð¿Ð¾ÐºÐ°Ð·Ð°Ð½Ð¾. Ово правило није Ñтриктно. Ðа +пример, ако Вам је потребно да Ñе лако пребацујете навише и наниже кроз разне +верзије великих пакета, можете да одржавате више директоријума (дрвета) за Ваше +ÑопÑтвене потребе. То Ñе ради тако што Ñе TEXMFHOME подеÑи као ÑпиÑак директоријума +одвојених зарезима, унутар заграда: + + +

+
    TEXMFHOME = {/мој/дир1,/мојдир2,/неки/трећи/дир}
+
+

+

Одељак 7.1.5 Ñе детаљно бави прерачунавањем заграда. +

+

3.4.7 Укључивање Ñпољних фонтова
+

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

Једна од Ð°Ð»Ñ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ä ÐºÐ¾Ñ˜Ðµ Вам Ñтоје на раÑполагању +јеÑте да кориÑтите XeTEX Ð¸Ð»Ð¸ LuaTEX (погледајте одељак 2.4); ови +програми Вам омогућавају да кориÑтите фонтове из оперативног ÑиÑтема без икакве +инÑталације унутар TEX-а. +

Ðко ипак морате да Ñе упуÑтите у ову Ñложену материју, погледајте +http://tug.org/fonts/fontinstall.html: на тој Ñтрани Ñмо најбоље што Ñмо +могли покушали да опишемо неопходну процедуру. Ðко Ñтрого одржавате Ñвоје +локалне мапе фонтова, онда команда tlmgr generate updmap +може бити кориÑна, нарочито када Ñе пребацујете Ñа +једног издања на друго; погледајте документацију програма +tlmgr. +

+

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

+

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

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

+

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

    tex --version +
    TeX 3.1415926 (TeX Live ...) +
    kpathsea version 6.0.1 +
    Copyright ... D.E. Knuth. +
    ... +
    +
    Ðко овде добијете поруку „command not found“ („команда Ñе не може пронаћи“) + умеÑто података о верзији TEX-а и ауторÑким правима, или ако је + верзија коју видите Ñтарија, то највероватније значи + да немате иÑправан поддиректоријум bin као елемент у ÑиÑтемÑкој + променљиви PATH. Погледајте како Ñе подешавају ÑиÑтемÑке + променљиве на ÑÑ‚Ñ€. 40. +
  2. +
  3. Покушајте да обрадите оÑновни LATEX фајл:
    + + +

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

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

    dvips sample2e.dvi -o sample2e.ps +
    +
    +
  8. +
  9. Ðаправите PDF умеÑто DVI фајла; ова команда ће обрадити .tex фајл и + директно направити PDF:
    +

    pdflatex sample2e.tex +
    +
    +
  10. +
  11. Прегледајте добијени 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). +
  12. +
  13. Може бити кориÑно да пробате и друге теÑÑ‚-фајлове оÑим sample2e.tex: +

    +

    + small2e.tex:
    +

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

    + testpage.tex:
    +

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

    + nfssfont.tex:
    +

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

    + testfont.tex:
    +

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

    + story.tex:
    +

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

    +
  14. +
  15. Ðко Ñте инÑталирали пакет 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. +
    +
    (Идентичан поÑтупак Ñе може употребити и за luatex.) +

    Ðко добијете поруку „Invalid fontname "Latin Modern Roman/ICU"…“ („ÐеиÑправно име + фонта "Latin Modern Roman/ICU"…“), онда морате да подеÑите ÑиÑтем тако да XeTEX може да + пронађе фонтове који Ñу укључени у TEX Live. Погледајте + одељак 3.4.4. +

+

+

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-у): +
    +
  • GNU Emacs је доÑтупан и у изворном облику за Windows: погледајте + http://www.gnu.org/software/emacs/windows/ntemacs.html. +
  • +
  • Emacs Ñа AucTEX-ом за Windows доÑтупан је преко CTAN-a. + Интернет-Ñтраница AucTEX-а је http://www.gnu.org/software/auctex. +
  • +
  • LEd Ñе може набавити на http://mirror.ctan.org/support/LEd. +
  • +
  • SciTE је доÑтупан на http://www.scintilla.org/SciTE.html. +
  • +
  • Texmaker је Ñофтвер отвореног кода, доÑтупан на + http://www.xm1math.net/texmaker. +
  • +
  • TexMakerX је дериват (fork) Texmaker-а и укључује неке + додатне могућноÑти; погледајте http://texmakerx.sourceforge.net. +
  • +
  • TeXnicCenter + је Ñофтвер отвореног кода, доÑтупан на http://www.texniccenter.org и као део + диÑтрибуције proTEXt. +
  • +
  • TeXworks + је такође отворени Ñофтвер, доÑтупан на http://tug.org/texworks; на + Windows-у и Mac OS X-у инÑталира Ñе као део TEX Live-а. +
  • +
  • Vim је отворени Ñофтвер, доÑтупан преко http://www.vim.org. +
  • +
  • WinEdt је „shareware“ доÑтупан на http://tug.org/winedt или + http://www.winedt.com. +
  • +
  • WinShell Ñе може набавити на http://www.winshell.de.
+
+

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

+

4 Специјализоване инÑталације

+

Претходни одељци бавили Ñу Ñе оÑновним процеÑом инÑталације. Сада прелазимо на +неке Ñпецијализоване Ñлучајеве. +

+ + +

4.1 ИнÑталације које дели више кориÑника или више компјутера

+

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 +фајлу. Погледајте поменуту Интернет Ñтраницу ако Вам је потребно више +података о овом поÑтупку. +

+

4.2 ПреноÑиве инÑталације на USB-диÑку

+

Ðко инÑталациони програм покренете Ñа параметром -portable (или употребите команду V у +текÑтуалном режиму, одноÑно ако изаберете одговарајућу опцију у +графичком режиму), направиће Ñе потпуно затворена и ÑамоÑтална инÑталација TEX +Live-а и биће изоÑтављена интеграција Ñа оÑтатком ÑиÑтема. Такву +инÑталацију можете да направите директно на USB-диÑку или да је на USB-диÑк +каÑније копирате. +

Као и обично, како биÑте покренули TEX Ð¸Ð· овакве преноÑиве инÑталације, морате да +додате одговарајући директоријум Ñа програмима у путању за +претрагу у Ñвом терминалу. Ðа Windows-у Вам двоÑтруки клик миша на радну („tray“) иконицу +даје избор између неколико уобичајених задатака, као што је +приказано на Ñледећој Ñлици: +

+

+ +

pict

+

Ставка „More…“ објашњава како овај мени можете да прилагодите +Ñвојим потребама. +

+

4.3 ISO (или DVD) инÑталације

+

Ðко немате потребе да чеÑто надограђујете инÑталацију или да је +мењате на било који начин и/или имате неколико ÑиÑÑ‚ÐµÐ¼Ä Ð½Ð° којима +је потребно кориÑтити TEX Live, може бити веома кориÑно да направите ISO Ð¾Ð´Ñ€Ð°Ð· +Ñвоје личне инÑталације TEX Live-а. Ова пракÑа може бити веома добра зато +што Ñ˜Ðµ: + + +

    +
  • копирање ISO Ñ„ајла Ñа компјутера на компјутер много + брже него копирање обичне инÑталације; +
  • +
  • ако имате компјутер Ñа више оперативних ÑиÑтема (dual-boot) и желите да Ñе + инÑталација TEX Live-а кориÑти на Ñвим тим ÑиÑтемима, ISO-инÑталација + није уÑловљена ÑпецифичноÑтима и ограничењима Ñтраних + ÑиÑтема (FAT32, NTFS, HFS+); +
  • +
  • директан приÑтуп таквом ISO Ð¾Ð´Ñ€Ð°Ð·Ñƒ („mount“) је једноÑтаван на + виртуелним машинама.
+

Ðаравно, Ваш ISO Ð¾Ð´Ñ€Ð°Ð· може и да Ñе нареже на DVD Ð°ÐºÐ¾ Вам је тако згодније. +

ДеÑктоп ÑиÑтеми из GNU/Linux/Unix породице, укључујући Mac OS X, +могу да приÑтупе Ñадржају ISO Ð¾Ð´Ñ€Ð°Ð·Ð° као обичном фајл-ÑиÑтему („mount“). ОÑим тог +детаља, ништа није другачије у поређењу Ñа обичном +инÑталацијом на хард-диÑку: погледајте одељак 3.4.1. +

Када припремате такву ISO Ð¸Ð½Ñталацију, најбоље је да +изоÑтавите поддиректоријум који Ñе одноÑи на годину издања +и да поÑтавите texmf-local на иÑти ниво Ñа другим дрветима (texmf, texmf-dist итд). Ово +можете да урадите у инÑталеру кориÑтећи уобичајене опције за +директоријуме. +

За реални (не виртуелни) Windows ÑиÑтем можете да нарежете ISO Ð½Ð° DVD. Међутим, +иÑплати Ñе одвојити мало времена и иÑпитати могућноÑти директне употребе +ISO Ð¾Ð´Ñ€Ð°Ð·Ä (ISO-mounting) које нуди отворени Ñофтвер. ОÑим тога, за Windows XP +Microsoft нуди winxpvirtualcdcontrolpanel. +

Ради боље интеграције Ñа ÑиÑтемом на Windows-у можете да убаците и Ñкрипте из +групе w32client (опиÑане у одељку 4.1 и на Ñтраници http://tug.org/texlive/w32client.html), +које добро баратају и ISO Ð¸Ð½Ñталацијама и инÑталацијама преко +мреже. +

Ðа Mac OS X-у, програми TeXShop and TEXworks могу да кориÑте DVD-инÑталацију ако +Ñимболички линк /usr/texbin показује на одговарајући директоријум Ñа +програмима, на пример + + +

+
  sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin
+
+

+

ИÑторијÑка напомена: TEX Live 2010 био је први TEX Live који +није био издат „жив“ (live). Ипак, увек је било потребно мало акробација да +би Ñе TEX Live кориÑтио Ñа DVD-ја или из ISO Ð¾Ð´Ñ€Ð°Ð·Ð°; ово Ñе поÑебно одноÑило на +чињеницу да није поÑтојао згодан начин да Ñе подеÑи барем још +једна додатна ÑиÑтемÑка променљива. Ðко, међутим, направите Ñвој +ÑопÑтвени ISO Ð¾Ð´ поÑтојеће инÑталације, за овим додатком неће +бити потребе. +

+

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

+


+ + + + + +
+

+ +

pict +

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


+


+ + + + + +
+

pict +

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


+

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

    +
  • инÑталацију, оÑвежавање, бекаповање, + повраћање из бекапа, уклањање појединачних + пакета Ñа могућношћу да Ñе узму у обзир Ñа њима повезани пакети; +
  • +
  • претрагу и прављење разних ÑпиÑкова пакета; +
  • +
  • излиÑтавање, додавање и уклањање верзија + програма за неки оперативни ÑиÑтем (одноÑно платформу); +
  • +
  • промену параметара инÑталације као што Ñу величина папира или + локација изворног кода (погледајте одељак 3.3.1).
+

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

+

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

+

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

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

+

5.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/2012/texmf/ls-R...
  ... +
  running fmtutil-sys --missing
  ...
  Transcript written on xelatex.log.
  fmtutil: /usr/local/texlive/2012/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 +
+
+

+

6 Ðапомене за Windows

+

+

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

+

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

+Менији и пречице.
У Start менију Ñе додаје нови одељак + „TEX Live“, преко кога Ñе могу позивати неки графички (GUI) програми (tlmgr, + texdoctk, PS_View (psv) PostScript previewer) и преко кога можете да дођете до + једног дела документације. +
+Повезивање клаÑа докумената Ñа одговарајућим програмима.
Ðко Ñу + инÑталирани, TeXworks, Dviout и PS_view поÑтају или подразумевани програми + за одговарајуће клаÑе докумената или добијају Ñтавку + у менију „Open with“ („отвори помоћу“), који Ñе добија + када документима поменутих клаÑа приÑтупите притиÑком на деÑно дугме миша. +
+Превођење бит-мапа у eps формат.
Разни формати који + за оÑнову имају бит-мапе добијају Ñтавку bitmap2eps у Ñвом + менију „Open with“ („отвори помоћу“), који Ñе добија + притиÑком на деÑно дугме миша. Bitmap2eps је једноÑтавна Ñкрипта + која омогућава да sam2p и bmeps обаве главни део поÑла. + + +
+ÐутоматÑко подешавање путања.
Ðије потребна никаква ручна + интервенција по овом питању. +
+Уклањање TEX Live-а.
+ ИнÑталациони програм додаје одговарајућу Ñтавку за TEX Live + у „Add/Remove Programs“. Дугме за деинÑталацију у графичком (GUI) режиму + програма TEX Live Manager („Уклони“) води до тамо.
+

+

6.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 како би + Ñе подаци о фонтовима оÑвежили. +
+

+

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

+

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

+

6.4 Windows-ов „registry“

+

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

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

+

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

+

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

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

Без обзира на то да ли кориÑник има ÑÑ‚Ð°Ñ‚ÑƒÑ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратора или не, подразумевани оÑновни +директоријум за TEX Live који предлаже инÑталациони програм увек је +унутар %SystemDrive%. Програм увек теÑтира да ли тренутни кориÑник може да упиÑује +податке у тај оÑновни директоријум. +

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

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

+

6.6 Увећавање макÑимума доÑтупне меморије на 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.) +

+

7 КориÑнички водич кроз 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 који Ñадржи запиÑе ÑаÑтављене од +имена и релативне путање за Ñве фајлове који Ñе налазе ниже по +хијерархији у том директоријуму. +

+

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

+

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

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

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

Када проверава поједини елемент путање p, Kpathsea +прво проверава да ли Ñе унапред припремљена база података (погледајте +„База података Ñа именима фајлова“ на Ñтрани 69) може употребити за p, тј. да ли Ñе база података налази у директоријуму +који је Ð¿Ñ€ÐµÑ„Ð¸ÐºÑ Ð¾Ð´ p. Ðко је то +Ñлучај, задата путања Ñе Ñ€Ã Ð²Ð½Ä Ð¿Ñ€ÐµÐ¼Ð° Ñадржају базе +података. +

Ðко база података не поÑтоји или ако Ñе не може применити на задати елемент +путање или ако у њој нема Ñлагања, претражује Ñе реални +фајл-ÑиÑтем (ако то није забрањено Ñпецификацијом +која почиње Ñа „!!“ Ð¸Ð»Ð¸ ако је задато да +фајл који Ñе тражи „мора да поÑтоји“). Kpathsea конÑтруише ÑпиÑак +директоријума који одговарају овом елементу путање и затим +тражи задати фајл у Ñваком од ÑšÐ¸Ñ…. +

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

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

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

+

7.1.1 Извори путања
+

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

+

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

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

+

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

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

УмеÑто тога, уобичајени инÑталациони Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð´Ð¾Ð²Ð¾Ð´Ð¸ до обликовања +фајла .../2012/texmf.cnf. Ðко морате да начините неке промене +вредноÑти које Ñу тамо упиÑане као подразумеване (што обично није потребно), +онда је овај фајл меÑто где те вредноÑти треба упиÑати. Главни +конфигурациони фајл је .../2012/texmf/web2c/texmf.cnf; +њега не би требало да преправљате зато што ће Ñе промене изгубити када Ñе +верзија инÑталирана путем диÑтрибуције оÑвежи. +

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

    +
  • Коментари почињу Ñа % и наÑтављају Ñе до краја + линије. +
  • +
  • Празне линије Ñе преÑкачу. +
  • +
  • Симбол \ на крају линије има улогу ознаке за наÑтавак, тј. + Ñледећа линија Ñе придодаје на текућу. Размаци + (whitespace5) + на почетку линије која Ñе додаје Ñе не + игноришу. +
  • +
  • Све оÑтале линије имају Ñледећи облик:
    +

      Ð¿Ñ€Ð¾Ð¼ÐµÐ½Ñ™Ð¸Ð²Ð°[.име-програма] [=] Ð²Ñ€ÐµÐ´Ð½Ð¾ÑÑ‚ +
    +
    где Ñе знак „=“ и размаци око њега могу изоÑтавити. + + +
  • +
  • променљива може да Ñадржи било који + знак оÑим Ñ€Ð°Ð·Ð¼Ð°ÐºÄ (whitespace), „=“ и „.“, али је најÑигурније држати Ñе Ñкупа „A-Za-z_“ (тј. велика и мала Ñлова енглеÑког алфабета и + доња црта). +
  • +
  • Ðко је приÑутна променљива „.име-програма“, дефиниција важи Ñамо ако Ñе покренути + програм зове име-програма или име-програма.exe. Између оÑталог, + то значи да разни варијетети TEX-а могу да имају различите путање за + претрагу. +
  • +
  • вредноÑÑ‚ може да Ñадржи било који знак оÑим % и „@“. МогућноÑÑ‚ \$\var {пром}.\var {прог} не може + Ñе кориÑтити Ñа ове Ñтране једнакоÑти; умеÑто тога, морате да употребите + додатну променљиву. Знак „;“ ÑƒÐ½ÑƒÑ‚ар променљиве преводи Ñе у „:“ ако + је у питању Unix; ово је кориÑно јер омогућава + да Ñе иÑти texmf.cnf кориÑти и за Unix и за MS-DOS и за + Windows. +
  • +
  • Све дефиниције Ñе прочитају пре него што Ñе било шта прерачуна, што значи да + Ñе променљиве могу употребити и пре него што Ñе дефинишу.
+

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

+

+  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;}// +
+

+

7.1.3 Прерачунавање путање
+

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

+

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

Ðко путања за претрагу Ñа највећим приоритетом (погледајте +„Извори путања“ на ÑÑ‚Ñ€. 63) Ñадржи једну додатну +двотачку (на почетку, на крају, или удвојену) Kpathsea убацује на +том меÑту путању која је Ñледећу по приоритету у оквиру задате +претраге. Ðко та уметнута путања има додатну двотачку, иÑто Ñе дешава Ñа Ñледећим +раÑположивим приоритетом по важноÑти. Ðа пример, ако Ñу ÑиÑтемÑке променљиве +поÑтављене овако: +

+ + +

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

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

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

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

+

7.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 у Ñвим +дефиницијама, можемо бити Ñигурни да ће увек оно дрво које Ñе оÑвежава +бити прво које Ñе претражује. +

+

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

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

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

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

+

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

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

+

+ :
+

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

+ ;
+

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

+ \$
+

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

+  ~
+

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

+ {...}
+

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

+ //
+

Прерачунавање Ð¿Ð¾Ð´Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ˜ÑƒÐ¼Ä (може да Ñтоји било + где у путањи изузев на почетку). +

+ %
+

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

+
+

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

+ !!
+

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

+

+

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

+

Kpathsea покушава да колико је могуће Ñмањи физички приÑтуп диÑку +када обавља Ñвоје претраге. Ð£Ð¿Ñ€ÐºÐ¾Ñ Ñ‚Ð¾Ð¼Ðµ, на инÑталацијама Ñа +великим бројем директоријума, претраживање Ñвих могућих +директоријума да би Ñе нашао задати фајл може предуго да траје (ово +је нарочито Ñлучај ако Ñе мора проћи више Ñтотина директоријума +који Ñадрже фонтове). Из тог разлога је Kpathsea оÑмишљен да може да +кориÑти унапред ÑаÑтављену „базу података“ — заправо текÑтуални фајл — по имену +ls-R, који повезује Ñтварне фајлове Ñа +одговарајућим директоријумима и на тај начин елиминише потребу +да Ñе диÑку чеÑто приÑтупа. +

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

+

7.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 јеÑте да крене у претрагу директно на диÑку. Ðко, +међутим, неки поједини елемент путање почиње Ñа „!!“, претражиће Ñе Ñамо база података, +никада Ñâм диÑк. +

+

7.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.

+

+

7.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 приказати Ñамо први фајл на који +наиђе. + + +

+

7.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 фонтове; поÑледњи део +одељка 7.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] +
+
+

7.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-а, ови параметри за покретање програма +предÑтављају практични ÐºÐ¾Ð¼Ð¿Ñ€Ð¾Ð¼Ð¸Ñ ÐºÐ¾Ñ˜Ð¸ ипак даје и нешто +флекÑибилноÑти. +

+

8 Захвалнице

+

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

    +
  • Централно удружење кориÑника + TEX-а, као и удружења из Ðемачке, Холандије и ПољÑке (TUG, + DANTE e.V., NTG и GUST), која обезбеђују неопходну техничку + и админиÑтративну инфраÑтруктуру. Молимо Ð’Ð°Ñ Ð´Ð° Ñе учланите у најближу групу + кориÑника TEX-а! (Погледајте http://tug.org/usergroups.html); +
  • +
  • CTAN тим, поÑебно Робин Ð¤ÐµÑ€Ð½Ð±ÐµÑ€Ð½Ñ [Robin Fairbairns], Ðим Хеферон [Jim Hefferon] + и Рајнер Шепф [Rainer Schöpf], који диÑтрибуира издања + TEX Live-а и обезбеђује обједињену инфраÑтруктуру + за оÑвежавање Ñвих пакета који имају везе Ñа TEX-ом, од + којих TEX Live завиÑи; +
  • +
  • Ðелзон Биб [Nelson Beebe], који је Ñтавио програмерима TEX Live-а + на раÑполагање многе платформе и који је Ñâм + обавио много темељних теÑтова; +
  • +
  • Ðон Боумен [John Bowman], који је обавио велики поÑао на + интеграцији Ñвог напредног графичког програма Asymptote у TEX Live; +
  • +
  • Петер Брајтенлонер [Peter Breitenlohner] и e-TEX Ñ‚им, зато што Ñу поÑтавили + чврÑте темеље будућим варијантама TEX-а, а Петеру поÑебно + за бриљантан поÑао на увођењу и одржавању ÑиÑтема + GNU autotools унутар TEX Live-а; +
  • +
  • Сташек Ваврикевич [Staszek Wawrykiewicz], главна оÑоба за теÑтирање TEX + Live-а и координатор многих пољÑких пројеката, за рад на Windows + инÑталацији, и још много тога; +
  • +
  • Олаф Вебер [Olaf Weber], за Ñвоје Ñтрпљиво одржавање ÑиÑтема + Web2C; +
  • +
  • Гербен Вирда [Gerben Wierda], зато што је уÑтановио и одржавао TEX Live на + Mac OS X-у и за учешће у теÑтирању; +
  • +
  • Грејем Ð’Ð¸Ð»Ð¸Ñ˜Ð°Ð¼Ñ [Graham Williams], на чији рад Ñе + оÑлања каталог Ð¿Ð°ÐºÐµÑ‚Ä TEX Catalogue; +
  • +
  • Владимир Волович, за помоћ око портовања TEX Live-а на многе ÑиÑтеме + и за рад на многим програмима, нарочито зато што је омогућио да Ñе у + диÑтрибуцију укључи xindy; + + +
  • +
  • Ђин-Хуан Чо [Jin-Hwan Cho] и DVIPDFMx тим, за њихов изврÑни + драјвер и брзе реакције везане за конфигурационе проблеме; +
  • +
  • Михел ГоÑÐµÐ½Ñ [Michel Goossens], који је био један од аутора прве + верзије ове документације; +
  • +
  • Ејтан Гурари [Eitan Gurari], чији Ñе ÑиÑтем TEX4ht употребљава + да Ñе направе верзије ове документације у HTML формату, и + који је Ñваке године неуморно радио на уÑавршавању Ñвог + програма. Ејтан је прерано преминуо у јуну 2009. и ми + поÑвећујемо ову документацију уÑпомени на њега; +
  • +
  • Ð¢Ð¾Ð¼Ð°Ñ Ð•Ñер [Thomas Esser], без чијег Ñјајног teTEX пакета TEX + Live никада не би поÑтојао; +
  • +
  • Павел ЈаковÑки [Paweł Jackowski], за развој инÑталационог програма за + Windows по имену tlpm, и Томаш Лужак [Tomasz Łuczak] за програм tlpmgui, који + Ñу Ñе кориÑтили у ранијим издањима; +
  • +
  • Ðкира Какуто [Akira Kakuto], зато што је Ñтавио на раÑполагање + верзије програма за Windows из Ñвоје диÑтрибуције W32TEX + за јапанÑки TEX (http://w32tex.org), као и за велики Ð´Ð¾Ð¿Ñ€Ð¸Ð½Ð¾Ñ Ñ€Ð°Ð·Ð²Ð¾Ñ˜Ñƒ + многих елемената TEX Live-a; +
  • +
  • Ðонатан Кју [Jonathan Kew], зато што је развио изузетни дериват + XeTEX и зато што је одвојио време и Ñнагу да га уклопи у TEX Live, као + и за почетну верзију инÑталера за MacTEX Ð¸ за рад на Ñпецијализованом + едитору TEXworks, који Ñада препоручујемо као окружење за + рад; +
  • +
  • Рајнхард Котуха [Reinhard Kotucha], + за велики Ð´Ð¾Ð¿Ñ€Ð¸Ð½Ð¾Ñ Ð½Ð° развоју инфраÑтруктуре и инÑталационог програма за TEX + Live 2008, као и за многа иÑтраживања на пољу Windows-а, за Ñкрипту + getnonfreefonts, и још много тога; +
  • +
  • Дик Коч [Dick Koch], за одржавање MacTEX-а (http://tug.org/mactex) у + теÑној Ñарадњи Ñа TEX Live тимом, као и за Ñвој непреÑушни + ентузијазам током рада; +
  • +
  • Сип Кроненберг [Siep Kroonenberg], за велики Ð´Ð¾Ð¿Ñ€Ð¸Ð½Ð¾Ñ Ñƒ раду на инфраÑтруктури и + инÑталационом програму за TEX Live 2008, поÑебно на Windows-у, као и за велики рад на + проширивању овог приручника како би Ñе те нове могућноÑти опиÑале; +
  • +
  • Хеико Обердик [Heiko Oberdiek], за пакет epstopdf и за многе друге пакете, за + компреÑију огромних pst-geo фајлова Ñа подацима тако да Ñмо могли да + их укључимо у диÑтрибуцију, и изнад Ñвега, за његов изузетни рад + на hyperref пакету; +
  • +
  • Петр Олшак [Petr OlÅ¡ak], који је веома пажљиво прегледао + цео чешки и Ñловачки материјал и координиÑао рад да Ñе он направи; +
  • +
  • Тошио Ошима [Toshio Oshima], за његов dviout приказивач за Windows; +
  • +
  • Мануел Перугје-Гонар [Manuel Pégourié-Gonnard], + за помоћ на оÑвежавању пакета, Ñтално унапређивање + документације, као и за развој програма texdoc; + + +
  • +
  • Ð¤Ð°Ð±Ñ€Ð¸Ñ ÐŸÐ¾Ð¿Ð¸Ð½Ð¾ [Fabrice Popineau], за првобитну подршку за Windows у TEX Live-у и за рад + на француÑкој верзији документације; +
  • +
  • Ðорберт Прајнинг [Norbert Preining], зато што је био главни + архитекта инфраÑтруктуре и инÑталационог програма за TEX Live 2008, као и за + координацију верзије TEX Live-а за Debian, заједно Ñа Франком + КиÑтером [Frank Küster], као и за многе добре Ñавете током тог рада; +
  • +
  • СебаÑтијан Рац [Sebastian Rahtz], зато што је Ñтворио TEX Live и + одржавао га много година; +
  • +
  • Фил Тејлор [Phil Taylor], зато што је омогућио да Ñе TEX Live + преузима преко BitTorrent ÑиÑтема; +
  • +
  • Томаш Тжечак [Tomasz Trzeciak], за Ñвеобухватну помоћ везану за Windows; +
  • +
  • Хан Те Танг [Hàn Thế Thành], Мартин Шредер [Martin Schröder] и pdfTEX Ñ‚им + (http://pdftex.org) за непреÑтани рад на проширивању могућноÑти TEX-а; +
  • +
  • Ð¥Ð°Ð½Ñ Ð¥Ð°Ñ…ÐµÐ½ [Hans Hagen], за велики поÑао теÑтирања Ñвог ConTEXt Ñ„ормата + (http://pragma-ade.com) и зато што је омогућио да он ради у оквиру TEX + Live-а; +
  • +
  • Хартмут Хенкел [Hartmut Henkel], за значајни Ð´Ð¾Ð¿Ñ€Ð¸Ð½Ð¾Ñ Ð½Ð° развоју + pdfTEX-а, LuaTEX-а, и још много тога; +
  • +
  • Тако Хукватер [Taco Hoekwater], зато што је обновио развој MetaPost-а + и за рад на [Lua]TEX-у (http://luatex.org), за напоре на укључивању + ConTEXt-а у TEX Live, зато што је омогућио multi-threading у Kpathsea + библиотеци, и још много тога. +
+

Програме за подржане оперативне ÑиÑтеме Ñу припремили: Еторе Ðлдрованди (i386-solaris, +x86_64-solaris), Карл Бери [Karl Berry] (i386-linux), Петер Брајтенлонер [Peter Breitenlohner] +(x86_64-linux), Ðлан БраÑло [Alan Braslau] (amd64-kfreebsd, i386-kfreebsd), Кен Браун [Ken Brown] +(i386-cygwin), Олаф Вебер [Olaf Weber] (mips-irix), Ð‘Ð¾Ñ€Ð¸Ñ Ð’ÐµÑ˜Ñ†Ð¼Ð°Ð½ [Ð‘Ð¾Ñ€Ð¸Ñ Ð’ÐµÐ¹Ñ†Ð¼Ð°Ð½] +(armel-linux), Владимир Волович (powerpc-aix, sparc-solaris), Ðкира Какуто [Akira Kakuto] (win32), Дик +Коч [Dick Koch] (universal-darwin, x86_64-darwin), Ðикола Лечић (amd64-freebsd, i386-freebsd), +Мојца Миклавец (mipsel-linux), Ðорберт Прајнинг [Norbert Preining] (alpha-linux), +Ð¢Ð¾Ð¼Ð°Ñ Ð¨Ð¼Ð¸Ñ† [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] (француÑки), Петр +Сојка [Petr Sojka] и Јан Буша [Ján BuÅ¡a] (чешки/Ñловачки), Уве Цигенхаген [Uwe +Ziegenhagen] (немачки), Интернет-Ñтраница Ñа документацијом за TEX Live је +http://tug.org/texlive/doc.html. +

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

+

9 ИÑторија издањÄ

+ + +

+

9.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. + + +

+

9.1.1 2003
+

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

    +
  • Према захтеву развојног тима LATEX-а променили Ñмо Ñтандардне команде latex + и pdflatex тако да од Ñада кориÑте e-TEX (в. ÑÑ‚Ñ€. 12). +
  • +
  • Укључени Ñу нови Latin Modern фонтови и препоручени за употребу. +
  • +
  • Укинута је подршка за Alpha OSF (подршка за HPUX је укинута + још раније), зато што нико није имао нити био Ñпреман да + уÑтупи хардвер на којем биÑмо компајлирали нове верзије + програмÄ. +
  • +
  • ИнÑталација за Windows је измењена из корена; по први пут Ñмо + укључили интегриÑано окружење заÑновано на XEmacs-у. +
  • +
  • Верзије важних помоћних програма за Windows (Perl, Ghostscript, + ImageMagick, Ispell) Ñада Ñу укључене у Ñтандардну инÑталацију TEX + Live-а. +
  • +
  • Фонт-мапе које кориÑте dvips, dvipdfm и pdftex Ñада Ñе праве помоћу новог + програма по имену updmap и инÑталирају Ñе у texmf/fonts/map. +
  • +
  • TEX, Metafont и MetaPost Ñада, оÑим ако није другачије подешено, + упиÑују већину унеÑених знакова (Ñа ASCII кôдом 32 и + даље) као такве + у излазне фајлове (нпр. \write), лог-фајлове и на терминал, тј. + непреведене уз помоћ нотације ^^. У TEX + Live 7, овај превод је завиÑио од језичких подешавања + у ÑиÑтему (тзв. „locale“); Ñада језичка подешавања немају + утицај на понашање TEX програмÄ. Ðко Вам је из + неког разлога потребан излаз прерађен помоћу ^^, проÑто промените + име фајла texmf/web2c/cp8bit.tcx. (У будућим издањима ова + процедура ће бити упрошћена.) +
  • +
  • Ова документација је темељно прерађена. +
  • +
  • Коначно, пошто Ñу бројеви у ознаци верзије поÑтали непрактични за + употребу, верзија је Ñада проÑто изједачена Ñа годином: TEX + Live 2003.
+

+

9.1.2 2004
+

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

    + + +
  • Ðко имате приватно инÑталиране фонтове који кориÑте Ñвоје ÑопÑтвене + .map или (много мање вероватно) .enc помоћне фајлове, може Ñе + деÑити да ћете морати да те фајлове уклоните. +

    .map фајлови Ñе Ñада, оÑим дуж путање TEXFONTMAPS, траже + иÑкључиво у директоријумима иÑпод fonts/map (тј. у Ñваком + texmf Ñтаблу). Слично, .enc фајлови Ñе Ñада, оÑим дуж путање + ENCFONTS, траже иÑкључиво у директоријумима иÑпод fonts/enc. + updmap ће покушати да изда неко упозорење ако наиђе на + проблематичне фајлове. +

    УпутÑтва о томе како да Ñе поÑтупа Ñа овим и другим подацима налазе Ñе на + http://tug.org/texlive/mapenc.html. +

  • +
  • TEX Collection Ñ˜Ðµ проширен инÑталациониом CD-ом базираним на MiKTEX-у, за + оне који више воле ту имплементацију него Web2C. Погледајте + одељак 2 (ÑÑ‚Ñ€. 7). +
  • +
  • Унутар TEX Live-а, једно велико texmf Ñтабло из претходних издања + замењено је Ñа три: texmf, texmf-dist и texmf-doc. Погледајте + одељак 2.2 (ÑÑ‚Ñ€. 8) и фајлове по имену README у Ñваком од + њих. +
  • +
  • Сви улазни фајлови који Ñе одноÑе на TEX Ñада Ñу прикупљени + у поддиректоријум tex у Ñваком texmf* дрвету; они Ñу Ñе раније налазили + у одвојеним Ñродним директоријумима tex, etex, pdftex, pdfetex, итд. + Погледајте texmf-dist/doc/generic/tds/tds.html#Extensions. +
  • +
  • Помоћне Ñкрипте (helper + scripts) — за које није предвиђено да их покрећу Ñами + кориÑници — Ñада Ñу Ñмештене у нове поддиректоријуме по имену scripts у Ñваком + texmf* дрвету, и могу Ñе пронаћи помоћу kpsewhich -format=texmfscripts. + То значи да треба да поправите подешавања у програмима + који позивају такве Ñкрипте, ако их имате. Погледајте texmf-dist/doc/generic/tds/tds.html#Scripts. +
  • +
  • Скоро Ñви формати оÑтављају већину Ñлова одштампаним каква + јеÑу преко „фајла Ñа преводом“ cp227.tcx; некада Ñу их преводили + помоћу ^^ нотације. ПоÑебно, Ñлова на позицијама 32–256, + „tab“, „vertical tab“ и „form feed“ Ñада Ñе Ñматрају приказивим (printable) не + преводе Ñе. Изузетак предÑтављају формати везани за чиÑти (plain) + TEX (Ñамо Ñе 32–126 могу штампати), за ConTEXt (0–255 Ñу принтабилни) и за + програм Omega. Ово подразумевано понашање је Ñкоро иÑто као у + TEX Live 2003, али је реализовано на много чиÑтији начин, Ñа + више могућноÑти за накнадна подешавања. Погледајте texmf/doc/web2c/web2c.html#TCX-files. (Узгред, ако је + улаз по Unicode Ñтандарду, може Ñе деÑити да TEX Ð¸Ð·Ð±Ð°Ñ†Ð¸ непотпуне низове знакова + када показује контекÑÑ‚ грешке, пошто ради Ñамо Ñа појединачним + бајтовима.) +
  • +
  • pdfetex је Ñада подразумевани програм за Ñве формате изузев за чиÑти (plain) tex. + (Ðаравно, он прави DVI када ради као latex, итд.) Ово између оÑталог значи да + Ñу микротипографÑке могућноÑти pdftex-а доÑтупне и у LATEX-у, ConTEXt-у, итд; + иÑто важи и за могућноÑти e-TEX-а (texmf-dist/doc/etex/base/). +

    То такође значи да је важније него икада раније + да Ñе кориÑти пакет ifpdf (који ради и Ñа чиÑтим TEX-ом и Ñа LATEX-ом) + + + или неки Ñличан кôд, зато што проÑто теÑтирање да ли \pdfoutput или нека примитива (primitive) ниÑу дефиниÑани + није поуздан начин да Ñе одреди да ли је излаз који Ñе Ñтвара + уједно и у PDF формату. Ове године Ñмо подеÑили да ово понашање + буде компатибилно Ñа ранијим верзијама колико Ñмо могли, али + Ñледеће године Ñе може деÑити да \pdfoutput буде + дефиниÑан чак и ако Ñе прави DVI. +

  • +
  • pdfTEX (http://pdftex.org) има много нових могућноÑти: +
      +
    • \pdfmapfile и \pdfmapline + омогућавају да Ñе барата фонт-мапама из Ñамог документа. +
    • +
    • Олакшана је употреба микротипографÑког проширења фонтова (font + expansion).
      http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html +
    • +
    • Сви параметри који Ñу Ñе раније подешавали у поÑебном + конфигурационом фајлу pdftex.cfg Ñада Ñе морају подешавати + путем примитивÄ, обично у фајлу pdftexconfig.tex; укинута је + подршка за pdftex.cfg. Сви поÑтојећи .fmt фајлови + морају да Ñе прераде кад год Ñе pdftexconfig.tex промени. +
    • +
    • Више информација о Ñвему овоме можете пронаћи у приручнику за + pdfTEX: texmf-dist/doc/pdftex/manual/pdftex-a.pdf. +
    +
  • +
  • Примитива \input у програму tex (као и у mf и у mpost) Ñада + прихвата аргументе Ñа дуплим наводницима који Ñадрже размаке и друге + Ñпецијалне знаке. Типични примери: + + +
    +
      \input "име Ñ„ајла Ñа Ñ€Ð°Ð·Ð¼Ð°Ñ†Ð¸Ð¼Ð°"   % plain
      \input{"име Ñ„ајла Ñа Ñ€Ð°Ð·Ð¼Ð°Ñ†Ð¸Ð¼Ð°"}  % latex
    +
    +

    Web2C приручник Ñадржи много више информација о овоме: texmf/doc/web2c. +

  • +
  • Web2C Ñада укључује и подршку за encTEX (а тиме и за Ñве TEX Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ðµ) + путем опције -enc, али Ñамо када Ñе праве фајлови Ñа + форматима. encTEX Ð¿Ð¾Ð´Ñ€Ð¶Ð°Ð²Ð° Ñвеобухватно мењање кодног раÑпореда + улаза и излаза, омогућујући на тај начин пуну подршку за + Unicode (у UTF-8 кодном раÑпореду). Погледајте texmf-dist/doc/generic/enctex/ и + http://www.olsak.net/enctex.html. +
  • +
  • У диÑтрибуцији је Ñада доÑтупан Aleph, програм који комбинује + e-TEX Ð¸ Omega. Кратка документација Ñе може наћи у texmf-dist/doc/aleph/base + и на Ñтраници http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph. Aleph формат заÑнован на + LATEX-у назива Ñе lamed. +
  • +
  • Ðајновије издање LATEX-а Ñадржи нову верзију LPPL + лиценце — која је Ñада званично одобрена од Ñтране Debian-а. Што Ñе + тиче других новоÑти везаних за ову облаÑÑ‚, погледајте фајл ltnews у + texmf-dist/doc/latex/base. +
  • +
  • У диÑтрибуцију је укључен dvipng, нови програм за претварање + DVI фајлова у PNG Ñлике. Погледајте texmf/doc/man/man1/dvipng.1. +
  • +
  • Скуп фонтова који припадају пакету cbgreek Ñвели Ñмо на „Ñредњу“ + величину, уз приÑтанак и Ñавет аутора, Клаудија Бекарија [Claudio + Beccari]. ИÑкључили Ñмо невидљиве, провидне и „оцртане“ (outlined) + фонтове; они Ñе веома ретко кориÑте а нама је проÑтор био преко потребан. + Цела колекција је наравно и даље доÑтупна преко CTAN-a + (http://mirror.ctan.org/tex-archive/fonts/greek/cb). +
  • +
  • oxdvi је уклоњен; умеÑто њега проÑто кориÑтите xdvi. +
  • +
  • Линкови ini и vir за команде tex, mf и mpost више Ñе не праве (као нпр. initex). ФункционалноÑÑ‚ + команде ini била је доÑтупна путем опције -ini годинама уназад. +
  • +
  • Укинута је подршка за платформу i386-openbsd. Пошто је пакет tetex доÑтупан + преко портова на BSD ÑиÑтемима и пошто Ñмо имали Ñпремљене верзије + Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ä Ð·Ð° GNU/Linux и FreeBSD, били Ñмо мишљења да Ñе време + Ð²Ð¾Ð»Ð¾Ð½Ñ‚ÐµÑ€Ä Ð¼Ð¾Ð³Ð»Ð¾ боље употребити за неке друге Ñтвари. +
  • +
  • Ðа платформи sparc-solaris (можда и другде) може бити неопходно да подеÑите ÑиÑтемÑку + променљиву LD_LIBRARY_PATH како би програми из пакета t1utils могли да раде. + Ово Ñе деÑило зато што Ñе они компајлирају помоћу C++, а на том + ÑиÑтему нема Ñтандардне локације за библиотеке које програми кориÑте док + раде. (Ово није ново у верзији 2004, али није било документовано у + претходним издањима.) Слично, на платформи mips-irix, неоходни Ñу MIPSpro 7.4 радне + библиотеке. +
+ + +

+

9.1.3 2005
+

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

    +
  • Уведене Ñу нове Ñкрипте texconfig-sys, updmap-sys и fmtutil-sys; оне мењају + конфигурацију у ÑиÑтемÑким директоријумима. Скрипте texconfig, + updmap и fmtutil Ñада прерађују фајлове Ñпецифичне за + кориÑника; ти фајлови Ñу Ñмештени у $HOME/.texlive2005. +
  • +
  • У Ñкладу Ñа тим, уведене Ñу и одговарајуће нове променљиве + TEXMFCONFIG и TEXMFSYSCONFIG; оне одређују + директоријуме у којима Ñе налазе конфигурациони фајлови + (кориÑнички + или ÑиÑтемÑки). Стога Ñе може деÑити да треба да премеÑтите личне верзије + фајлова fmtutil.cnf и updmap.cfg на та нова меÑта; друга могућноÑÑ‚ + је да у texmf.cnf промените вредноÑти TEXMFCONFIG или TEXMFSYSCONFIG. + У Ñваком Ñлучају, Ñтварни положај ових фајлова и вредноÑти + променљивих TEXMFCONFIG и TEXMFSYSCONFIG морају да Ñе Ñлажу. + Погледајте одељак 2.3, ÑÑ‚Ñ€. 9. +
  • +
  • Прошле године Ñмо задржали \pdfoutput и друге примитиве које ниÑу + дефиниÑане за DVI Ð¸Ð·Ð»Ð°Ð·, чак и ако Ñе кориÑти pdfetex. Ове године, као што Ñмо + обећали, повукли Ñмо ту меру компатибилноÑти. Дакле, ако Ваш документ кориÑти + \ifx\pdfoutput\undefined да уÑтанови да ли Ñе прави PDF као излаз, морате да промените + тај теÑÑ‚. Можете да за ту Ñврху употребите пакет ifpdf.sty (који ради и + под чиÑтим TEX-ом и под LATEX-ом) или да позајмите логику из његовог + кôда. +
  • +
  • Прошле године Ñмо променили већину формата тако да иÑпиÑују (8-битне) + знакове као такве (погледајте претходни одељак). Ðови TCX фајл + empty.tcx Ñада омогућава лакши начин да Ñе добије оригинална ^^ + нотација ако је желите, на пример: + + +
    +
      latex --translate-file=empty.tcx yourfile.tex
    +
    +

    +

  • +
  • У диÑтрибуцију је Ñада укључен нови програм dvipdfmx који + преводи DVI у PDF; ово је надоградња програма dvipdfm која иза Ñебе + има активну групу програмера (Ñтари програм је за Ñада још увек доÑтупан, + премда га не препоручујемо). +
  • +
  • Укључени Ñу нови програми pdfopen и pdfclose: они омогућавају да Ñе + .pdf фајлови изнова учитају у приказивачу Adobe Acrobat Reader без поновног + покретања програма. (Други pdf читачи, пре Ñвега xpdf, gv и gsview, никада ниÑу имали + овај проблем.) +
  • +
  • Ради доÑледноÑти, имена променљивих HOMETEXMF и VARTEXMF промењена + Ñу у TEXMFHOME и TEXMFSYSVAR. Ту је такође и TEXMFVAR, за + коју је предвиђено да буде Ñпецифична за појединог + кориÑника. Погледајте прву Ñтавку у овом ÑпиÑку. +
+

+

9.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://mirror.ctan.org). +

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

Коначно, у мају 2006. Ð¢Ð¾Ð¼Ð°Ñ Ð•Ñер [Thomas Esser] је објавио да више +неће радити на teTEX-у (http://tug.org/tetex). Директна поÑледица овог потеза било +је огромно интереÑовање за TEX Live, поÑебно међу GNU/Linux +диÑтрибуцијама. (У TEX Live-у Ñада поÑтоји нова инÑталациона шема tetex, која даје приближни еквивалент.) Ðадамо Ñе да +ће Ñе ово у једном тренутку преточити у побољшање квалитета + + +TEX Ð¾ÐºÑ€ÑƒÐ¶ÐµÑšÐ° за Ñве кориÑнике. +

+

9.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 (одељак 5) Ñада предÑтавља општи Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÑ˜Ñ +за одржавање 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. +

+

9.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. +

+

9.1.7 2010
+

У издању 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-ја је Ñада много бржа. +

+

9.1.8 2011
+

Издање TEX Live-a из 2011. године донело је релативно мало промена. +

Програми за Mac OS X (universal-darwin и x86_64-darwin) Ñада раде Ñамо на ÑиÑтему Leopard и на +новијим издањима; Panther и Tiger ниÑу више подржани. +

Укључен је програм за обраду библиографија biber; поÑтоје +верзије за Ñве уобичајене оперативне ÑиÑтеме. Развој овог Ñофтвера +је теÑно повезан Ñа пакетом biblatex. biber поÑтавља на нове оÑнове библиографÑке +могућноÑти које поÑтоје у LATEX-у. +

Програм MetaPost (mpost) више не прави и не кориÑти .mem фајлове. Ðеопховни +фајлови, као што је plain.mp, напроÑто Ñе изнова читају Ñваки пут када Ñе +програм покрене. Ова промена везана је за подршку MetaPost-а као библиотеке, што +је још једна значајна, премда за кориÑнике невидљива +промена. +

Имплементација програма updmap у програмÑком језику Perl, која +је раније била у употреби Ñамо на Windows-у, Ñада је прерађена и +Ñтављена у употребу на Ñвим платформама. Ова промена не би требало да буде видљива +за кориÑнике, оÑим што ће од Ñада програм радити много брже. +

+ + +

9.2 Тренутно Ñтање

+

tlmgr Ñада може да обавља надоградње кориÑтећи неколико +репозиторијума на Интернету упоредо. О овоме можете да прочитате више у +документацији TEX Live Ð¼ÐµÐ½Ð°ÑŸÐµÑ€Ð° (tlmgr help). +

Подразумевана вредноÑÑ‚ параметра \XeTeXdashbreakstate Ñада +је 1 (и за xetex и за xelatex). То значи да ће Ñе линије ломити поÑле +Ñредњих и великих Ñ†Ñ€Ñ‚Ä (em-dash и en-dash), као што је увек био +Ñлучај у чиÑтом TEX-у, LATEX-у, LuaTEX-у, итд. У поÑтојећим +XeTEX Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚има у којима је неопходно задржати потпуну компатибилноÑÑ‚ по +питању ломљења линије иза црте морате изричито да подеÑите +вредноÑÑ‚ \XeTeXdashbreakstate на 0. +

Фајлови које праве pdftex и dvips (између оÑталих) Ñада могу да буду +већи од 2 гигабајта. +

35 Ñтандардних PostScript фонтова Ñада Ñе уграђују у Ñве фајлове +које прави dvips, зато што Ñе појавило много разних верзија ових +„Ñтандардних“ фонтова. +

У режиму рада \write18 (у коме је дозвољено +покретање Ñамо малог броја Ñпољних команди), још једна +команда додата је у повлашћени ÑпиÑак у Ñтандардној инÑталацији: +mpost. +

Фајл texmf.cnf Ñе Ñада може пронаћи и у ../texmf-local, тј. преко +/usr/local/texlive/texmf-local/web2c/texmf.cnf (ако поÑтоји). +

Скрипта updmap Ñада чита updmap.cfg у Ñваком дрвету умеÑто Ñамо једну глобалну +конфигурацију. Ова промена нема никаквих практичних поÑледица за кориÑнике који +ниÑу директно мењали updmap.cfg фајлове. Више информација можете +пронаћи у документацији Ñкрипте updmap (покрените updmap --help). +

Додате Ñу нове платформе armel-linux и mipsel-linux; платформе sparc-linux и i386-netbsd +удаљене Ñу из главне диÑтрибуције TEX Live-а, али програме за ове платформе (као и +за велики број других) и даље је могуће инÑталирати +помоћу поÑтупка опиÑаног на Ñтраници http://tug.org/texlive/custom-bin.html. +

+

9.3 БудућноÑÑ‚

+

TEX Live није Ñавршен! (И никада неће ни бити.) +Ðамера нам је да наÑтавимо да издајемо нове верзије, да пружимо +више помоћног материјала, више алатки, више инÑталационих програма и +(наравно) још боље подешену и теÑтирану Ñтруктуру макроа и фонтова, +који Ñе Ñа Ñвоје Ñтране непреÑтано уÑавршавају. Сав овај рад +обављају волонтери у Ñвом Ñлободном времену, тако да поÑла увек има на претек. +Стога Ð’Ð°Ñ Ð¿Ð¾Ð·Ð¸Ð²Ð°Ð¼Ð¾ да поÑетите Ñтраницу http://tug.org/texlive/contribute.html. +

Молимо Ð’Ð°Ñ Ð´Ð° шаљете иÑправке, предлоге и понуде за помоћ на: +

+

Срећно 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 2012.
Copyright (C) 2010, 2011, 2012 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: +

    +
  • Redistributions of source code (XeLATEX code) must retain the above copyright notice, this + list of conditions and the following disclaimer as the first lines of the source file unmodified. +
  • +
  • Redistributions in compiled form (transformed to other DTDs, converted to PDF, HTML, + PostScript, RTF and other formats) must reproduce the above copyright notice, this list of + conditions and the following disclaimer in the documentation and/or other materials provided + with the distribution.
+

THIS DOCUMENTATION IS PROVIDED BY THE TRANSLATOR "AS IS" AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE TRANSLATOR BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +

+

+ *Превод текÑта: Karl Berry (ed.), The TEX Live Guide: TEX Live 2012. +Ова верзија превода је еквивалент TEX ÐºÃ´Ð´Ð° из фајла +texlive-en.tex, SVN r26703. УÑлови под којима можете да +кориÑтите овај превод дати Ñу на крају документа, као и у фајлу +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“ — прим. прев.

+ + + + + + diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.pdf b/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.pdf new file mode 100644 index 00000000000..02e9040a216 Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.pdf differ diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.sty b/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.sty new file mode 100644 index 00000000000..d36ddff8c92 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.sty @@ -0,0 +1,70 @@ +\def\Status{1} + +% Settings specific for Serbian translation and its XeLaTeX code +% --------------------------------------------------------------------- + +% Extra packages needed for XeLaTeX +\RequirePackage{polyglossia} +% Import the original tex-live.sty from texlive-en; this must be done +% after fontspec (fontspec is loaded by polyglossia). xltxtra loads +% xunicode: +\RequirePackage{tex-live} +\RequirePackage{xltxtra} +% ... and: +\RequirePackage[center,it,small]{caption} +\RequirePackage{relsize} +\RequirePackage{fancyhdr} + +% Load the default and all other languages. +% For the sake of simplicity, we enclose non-Serbian text in +% appropriate \textLL{} only if we need different hyphenation. +\setdefaultlanguage[script=Cyrillic]{serbian} +\setotherlanguage{english} +\setotherlanguage{russian} +\setotherlanguage{german} +\setotherlanguage{french} +\setotherlanguage{italian} +\setotherlanguage{polish} +\setotherlanguage{czech} +\setotherlanguage{slovak} +\setotherlanguage{dutch} +\setotherlanguage{finnish} + +% OTF fonts that we use; cf. README-SR.txt. +% (We use only tex-text for the sake of simplicity.) +\setmainfont[RawFeature={+ss11,+ss12},Mapping=tex-text]{Old Standard} +\newfontfamily\serbianfont[RawFeature={+ss11,+ss12},% + Mapping=tex-text]{Old Standard} +\setsansfont{CMU Sans Serif} +\setmonofont{CMU Typewriter Text Light} + +% A bit more tuning: +% "Windows" is a very frequent word so let's get it properly +% hyphenated. The same for Kpathsea: +\newcommand{\Windows}{\textenglish{Windows}} +\def\KPS{\textenglish{Kpathsea}} +% We need different quotes for Serbian. +\renewcommand{\samp}[1]{\char"201E\texttt{#1}\char"201C{}} +% There is no slanted Old Standard, so use XeTeX's fake slant feature. +\newfontfamily\slantfont[FakeSlant=.2]{Old Standard} +\newfontfamily\cmutt{CMU Typewriter Text} +\renewcommand{\var}[1]{{\slantfont#1}} +\renewcommand{\textsl}[1]{{\slantfont#1}} +\def\Ucom#1{{\cmutt\bfseries#1}} +\renewcommand{\BibTeX}{B{\smaller IB}\TeX{}} +% Redefine running headers. +\pagestyle{fancyplain} +\fancyhf{} +\renewcommand{\sectionmark}[1]{\markboth{#1}{}} +\lhead{\fancyplain{}{{\serbianfont\emph{\MakeUppercase\leftmark}}}} +\rhead{\fancyplain{}{{\serbianfont\thepage}}} +\setlength{\headheight}{12.22003pt} +\renewcommand{\headrulewidth}{0pt} + +% Finally: +\widowpenalty=4000 +\clubpenalty=4000 +\frenchspacing +\flushbottom + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.tex b/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.tex new file mode 100644 index 00000000000..56897545f34 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-sr/texlive-sr.tex @@ -0,0 +1,3907 @@ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Public domain. + +% ---------------------------------------------------------------------- +% Serbian translation of TeX Live Guide: TeX Live 2012 +% Copyright (C) 2010, 2011, 2012 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: +% +% * Redistributions of source code (XeLaTeX code) must retain the above +% copyright notice, this list of conditions and the following +% disclaimer as the first lines of the source file unmodified. +% +% * Redistributions in compiled form (transformed to other DTDs, +% converted to PDF, HTML, PostScript, RTF and other formats) must +% reproduce the above copyright notice, this list of conditions and +% the following disclaimer in the documentation and/or other +% materials provided with the distribution. +% +% THIS DOCUMENTATION IS PROVIDED BY THE TRANSLATOR ``AS IS'' AND ANY +% EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +% IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +% PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE TRANSLATOR BE LIABLE +% FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +% CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +% SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +% BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +% WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +% OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +% DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +% See README-SR.txt for the technical details specific to this +% translation. + +% Revision history: +% 2012/06/02: for TeX Live 2012: new screenshots, +% = texlive-en.tex r26703. +% 2011/06/14: = texlive-en.tex r22906; screenshots updated. +% 2011/06/07: small corrections. +% 2011/06/05: first version for TeX Live 2011; new screenshots; +% = texlive-en.tex r22709. +% 2010/07/17: New localised screenshots. +% 2010/07/14: = texlive-en.tex r19386. +% 2010/07/07: = texlive-en.tex r19168. +% 2010/06/22: first revision to be included into the TL SVN trunk. The +% translated text is equivalent to texlive-en.tex r19070. +% 2010/07/06: fixed typos, some better wording; = texlive-en.tex r19168. +% 2010/07/13: = texlive-en.tex r19386. +% 2010/07/17: a small adjustment for new screenshot. +% ---------------------------------------------------------------------- + +\documentclass{article} +\let\tldocenglish=0 % for live4ht.cfg +\usepackage{texlive-sr} + +\begin{document} + +% Different font; we want to change geometry a bit, plus +% we want footnotes etc.: +\newgeometry{hscale=0.75,lines=57,vmarginratio=10:8} + +\title{% + {\huge \textit{\TeX\ Live: Приручник}\\\smallskip}% + {\LARGE \textsf{\TL{} 2012}}% + \footnote{\textserbian{Превод текÑта: \textenglish{Karl Berry + (ed.), \emph{The \TL{} Guide: \TL{} 2012}}. Ова верзија превода је + еквивалент \TeX\ ко\char"0302 да из фајла + \hbox{\file{texlive-en.tex}}, \acro{SVN} r26703. УÑлови под којима + можете да кориÑтите овај превод дати Ñу на крају документа, као + и у фајлу \hbox{\file{texlive-sr.tex}}.}}% +} + +\author{% + Карл Бери, уредник\\[1mm] + \url{http://tug.org/texlive/}\\[5mm] + \small{\textit{превод на ÑрпÑки језик}}\\[.5mm] + \small{Ðикола Лечић}\\ + \scriptsize{\email{nikola.lecic@anthesphoria.net}} +} + +\date{јун 2012} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +%\listoftables +\end{multicols} +\vfill +\pagebreak + +\section{Увод} +\label{sec:intro} + +\subsection{\TeX\ Live и \TeX\ Collection} + +У овом документу Ñу опиÑане главне могућноÑти ÑофтверÑке диÑтрибуције +\TL{}, која Ñе ÑаÑтоји од \TeX{}-а и програма који Ñу повезани Ñа њим, +и која Ñе прави за \GNU/Linux и друге варијанте Unix-а, \MacOSX и +\Windows{}. + +\TL{} Ñе може преузети Ñа Интернета или добити преко \TK{} \DVD-ја +који групе кориÑника \TeX{}-а диÑтрибуирају Ñвојим члановима, и на +разне друге начине. Одељак \ref{sec:tl-coll-dists} укратко опиÑује +Ñадржај \DVD-ја. \TL{} и \TK{} Ñу резултат удружених напора многих +група кориÑника \TeX{}-а. Овај документ опиÑује пре Ñвега +Ñа\char"0302 м \TL{}. + +У \TL{} Ñу укључени програми \TeX{}, \LaTeXe{}, \ConTeXt, \MF, \MP, +\BibTeX{} и многи други, обимна колекција макроа, фонтова и +документације, као и подршка за припрему текÑта на много разних +пиÑама и језика из Ñвих делова Ñвета. + +Кратак преглед најважнијих промена у овом издању \TL{}-а налази Ñе на +крају документа, у одељку~\ref{sec:history} +(ÑÑ‚Ñ€.~\pageref{sec:history}). + +\htmlanchor{platforms} +\subsection{Подржани оперативни ÑиÑтеми} +\label{sec:os-support} + +\TL{} Ñадржи унапред компајлиране програме за многе варијанте Unix-а, +укључујући \GNU/Linux и \MacOSX. Такође, ту Ñу и верзије програма за +Cygwin. Пошто је изворни код укључен у диÑтрибуцију, програми Ñе могу +компајлирати и на платформама\footnote{\textserbian{\emph{Платформа} +предÑтавља комбинацију архитектуре и оперативног ÑиÑтема: нпр. +оперативни ÑиÑтем Free\acro{BSD} који ради на 64-битном \acro{Intel} +или \acro{AMD} процеÑору јеÑте платформа по имену +\pkgname{amd64-freebsd}. Развојни тим \TL{}-a Ñе одлучио да овом +изразу да\char"0302\ предноÑÑ‚ у одноÑу на израз „оперативни ÑиÑтем“ и +ми ћемо Ñледити ту одлуку колико је то могуће, мада не у Ñвим +Ñлучајевима (пре Ñвега у ÑрпÑком преводу програма\char"0304\ +\prog{install-tl} и \prog{tlmgr}, у којима би употреба израза +\emph{архитектура} могла лако да збуни кориÑника пошто тамо није +могуће дати овакво објашњење) --- \emph{прим. прев.}}} за које немамо +унапред припремљене бинарне фајлове. + +Што Ñе тиче \Windows{}-а, подржани Ñу Ñамо \Windows{} \acro{XP} и +каÑније верзије. \Windows{}~2000 ће Ñа великом вероватноћом и даље +радити за највећи број Ñтвари. Ðе поÑтоје поÑебни 64-битни програми +за \Windows{}; умеÑто тога, 32-битни програми би требало да раде на +64-битним ÑиÑтемима. + +Погледајте одељек~\ref{sec:tl-coll-dists} ако Вам је потребно више +информација о алтернативним решењима за \Windows{} и \MacOSX. + +\subsection{ОÑновна инÑталација \protect\TL{}-а} +\label{sec:basic} + +\TL{} Ñе може инÑталирати Ñа \DVD{}-ја или преко Интернета +(\url{http://tug.org/texlive/acquire.html}). Сам програм за +инÑталацију који ради преко мреже је мали и Ñкида Ñве што је задато +Ñа Интернета. + +Програм за инÑталацију Ñа \DVD{}-ја Вам омогућава да инÑталирате +\TL{} на локални диÑк. \TL{} Ñе не може директно покретати Ñа +\DVD{}-ја (као ни из \DVD{} \code{.iso} одраза), али зато можете да +припремите преноÑиву радну верзију на нпр. \acro{USB}-диÑку +(погледајте одељак~\ref{sec:portable-tl}). ИнÑталација је детаљно +опиÑана у одељцима који Ñледе (ÑÑ‚Ñ€.~\pageref{sec:install}); укратко, +поÑтупак изгледа овако: + +\begin{itemize*} + +\item ИнÑталациона Ñкрипта Ñе зове \filename{install-tl}. Она може да + ради у поједноÑтављеном графичком, тзв. „wizard“ режиму, ако Ñе + позове Ñа опцијом \code{-gui=wizard} (подразумевани режим на + Win\-\hbox{dows-у}, у текÑтуалном режиму ако Ñе позове Ñа + \code{-gui=text} (подразумевани режим на Ñвим другим + ÑиÑтемима), и графичком режиму на екÑпертÑком нивоу (тзв. „expert + \GUI{}“ режим), који Ñе позива Ñа \code{-gui=perltk}. + +\item Један од инÑталираних програма је и \TL\ Manager, који Ñе позива + помоћу \prog{tlmgr}. Као и програм за инÑталацију, он може да Ñе + кориÑти и у графичком (\GUI{}) и у текÑтуалном режиму. Можете га + кориÑтити да инÑталирате и деинÑталирате пакете и да обавите разне + конфигурационе задатке. + +\end{itemize*} + + +\htmlanchor{security} +\subsection{Ðа шта треба обратити пажњу што Ñе тиче ÑигурноÑти} +\label{sec:security} + +Према нашем најдубљем знању и уверењу, оÑновни \TeX\ програми који +чине језгро \TL{}-a изузетно Ñу робуÑни (и увек Ñу били такви). +Међутим, допунÑки програми који Ñу укључени у \TeX\ Live ниÑу нужно +на иÑтом нивоу, ÑƒÐ¿Ñ€ÐºÐ¾Ñ Ð²ÐµÐ»Ð¸ÐºÐ¸Ð¼ напорима. Као и увек, требало би да +будете опрезни када покрећете програме да обрађују непоуздане улазне +податке; најÑигурније што можете да урадите јеÑте да то увек радите у +новом поддиректоријуму. + +Потреба за опрезом је нарочито важна на \Windows{}-у, пошто +\Windows{} обично тражи програме у текућем директоријуму пре него на +било ко другом меÑту, без обзира на путању за претрагу коју задаје +кориÑник. Ово отвара широку лепезу могућноÑти\char"0304\ за напад. Ми +Ñмо Ñанирали многе ÑигурноÑне пропуÑте, али неки превиди Ñу без Ñумње +и даље ту, нарочито у програмима који нам долазе Ñа Ñтране. Стога +препоручујемо да проверите да ли радни директоријум Ñадржи Ñумњиве, +пре Ñвега извршне фајлове (бинарне или Ñкрипте). Њих обично нема, и +Ñвакако не би требало да Ñе Ñтворе обичном обрадом неког документа. + +Коначно, \TeX\ (и пратећи програми) чеÑто Ñтварају нове фајлове када +обрађују документ, што је оÑобина која Ñе може злоупотребити на много +разних начина. Да поновимо, обрада непознатих докумената у новом +поддиректоријуму је најÑигурније што можете да урадите. + + +\subsection{Помоћ у раду} +\label{sec:help} + +Заједница кориÑника \TeX{}-а је активна и пријатељÑки раÑположена, +тако да Ñе и на најозбиљнија питања на крају нађе одговор. Међутим, +ова подршка је неформалне природе будући да долази од +волонтера\char"0304\ и Ñлучајних читалаца мејлинг-лиÑта, тако да је +нарочито важно да „урадите домаћи задатак“ пре него што нешто питате. +(Ðко више волите загарантовану комерцијалну подршку, можете Ñе у у +потпуноÑти одрећи \TL{}-а и купити одговарајући ÑиÑтем; на Ñтраници +\url{http://tug.org/interest.html#vendors} поÑтоји ÑпиÑак таквих +продаваца.) + +Ово је лиÑта раÑположивих реÑурÑа датих отприлике редоÑледом по коме +препоручујемо да их кориÑтите: + +\begin{description} +\item [Страница за почетнике] Ðко Ñте нови у \TeX-у, Ñтраница +\url{http://tug.org/begin.html} нуди кратак увод у ÑиÑтем. + +\item [\TeX{} \acro{FAQ}] (питања везана за \TeX{} која Ñе чеÑто +поÑтављају) предÑтавља огромну збирку одговора на Ñве врÑте питања, +од најоÑновнијих до најÑложенијих. Та збирка је укључена у \TL{} и +налази Ñе у директоријуму +\OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html}, а доÑтупна је и +на Интернету преко \url{http://www.tex.ac.uk/faq}. Молимо Ð’Ð°Ñ Ð´Ð° +одговоре прво овде потражите. + +\item [\TeX{} Catalogue] (\TeX{}-каталог) Ðко тражите неки Ñпецифичан +пакет, фонт или програм, \TeX{}-каталог је меÑто на коме треба +отпочети претрагу. То је огромна колекција Ñвих Ñтвари које имају +везе Ñа \TeX{}-ом. Погледајте +\url{http://mirror.ctan.org/help/Catalogue/}. + +\item [\TeX{} реÑурÑи на Интернету] Интернет-Ñтраница +\url{http://tug.org/interest.html} Ñадржи многе линкове који имају +везе Ñа \TeX{}-ом, нарочито на бројне књиге, приручнике и чланке о +Ñвим аÑпектима ÑиÑтема. + +\item [архивирана подршка] Два главна форума Ñу Usenet група + \url{news:comp.text.tex} и мејлинг-лиÑта \email{texhax@tug.org}. + Ðрхиве ова два форума Ñадрже велики број питања и одговора + прикупљених током много година; ове претраживе архиве Ñу доÑтупне + преко \url{http://groups.google.com/group/comp.text.tex/topics} и + \url{http://tug.org/mail-archives/texhax}. Такође, обична претрага + Интернета, на пример преко \url{http://google.com}, никад није на + одмет. + +\item [поÑтављање питања] Ðко и даље не можете да пронађете одговор, + можете да поÑтавите питање на \dirname{comp.text.tex} кориÑтећи + Google или Ñвој newsreader, или на \email{texhax@tug.org} путем + електронÑке поште. Ðли, пре него што поÑтавите питање, \emph{молимо + ВаÑ} да прочитате овај текÑÑ‚ из \acro{FAQ} колекције како биÑте + увећали шанÑе да добијете кориÑтан одговор: + \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}. + Треба поменути и Ин\-тер\-нет-Ñтраницу \LaTeX{} заједнице + (\textenglish{\LaTeX{} Community}, + \url{http://www.latex-community.org/}) и њихов форум + \url{http://www.latex-community.org/forum/}, као и Интернет-портал + \TeX\ \textenglish{StackExchange}, + \url{http://tex.stackexchange.com/}. + +\item [подршка везана за \TL{}] Ðко желите да пријавите грешку или + ако имате предлоге и коментаре везане за диÑтрибуцију, инÑталацију + или документацију \TL{}-а, мејлинг-лиÑта је \email{tex-live@tug.org}. + Међутим, ако Ñе Ваше питање тиче употребе неког поÑебног програма + укљученог у \TL{}, молимо Ð’Ð°Ñ Ð´Ð° пишете оÑоби која тренутно одржава + тај програм или на одговарајућу мејлинг-лиÑту. Врло чеÑто, покретање + програма Ñа параметром \code{-{}-help} даје адреÑу на коју треба + пријавити грешке. + +\end{description} + +С друге Ñтране, ту је пружање помоћи онима који поÑтављају питања. И +\dirname{comp.text.tex} и \code{texhax} Ñу отворени за Ñваког, па +Ñтога будите Ñлободни да Ñе прикључите; почните да читате и помозите +где можете. + + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{Преглед \protect\TeX\protect\ Live{}-а} +\label{sec:overview-tl} + +Овај одељак опиÑује Ñадржај диÑтрибуције \TK{} и њеног ÑаÑтавног дела, \TL{}-а. + +\subsection{\protect\TeX\protect\ Collection: \TL, pro\TeX{}t, Mac\TeX} +\label{sec:tl-coll-dists} + +\TK{} \DVD{} обухвата: + +\begin{description} + +\item [\TL] Комплетан \TeX{} ÑиÑтем који Ñе може инÑталирати на диÑк. + Интернет-Ñтраница \TL{}-a је \url{http://tug.org/texlive/}. + +\item [Mac\TeX] Варијанта \TL{}-а за \MacOSX; укључује инÑталациони + програм пиÑан Ñпецијално за \MacOSX\ и још неке Mac апликације. + Интернет-Ñтраница пројекта је \url{http://tug.org/mactex/}. + +\item [pro\TeX{}t] Рађен као проширење \Windows{} диÑтрибуције + \MIKTEX, \ProTeXt\ укључује неколико допунÑких алатки и + поједноÑтављује инÑталацију. Он је у потпуноÑти незавиÑан од \TL{}-а + и има ÑопÑтвена упутÑтва за инÑталацију. Интернет-Ñтраница + \ProTeXt\ пројекта је \url{http://tug.org/protext}. + +\item [CTAN] Сајт-копија (mirror) репозиторијума \CTAN{} + (\url{http://www.ctan.org}). + +\item [\texttt{\textbf texmf-extra}] Директоријум Ñа разним допунÑким + пакетима. + +\end{description} + +Лиценце које одређују уÑлове умножавања \CTAN{}-а, пакета + \pkgname{protext} и Ñадржаја директоријума \dirname{texmf-extra} ниÑу + нужно иÑте као у \TL{}-у, па Ñтога будите опрезни када их + редиÑтрибуирате или преправљате. + + +\subsection{\TL{} директоријуми највишег нивоа} +\label{sec:tld} + +Ево ÑпиÑка и кратких опиÑа директоријума\char"0304\ највишег нивоа у +\TL{} инÑталацији: + +\begin{ttdescription} +\item[bin] Програми \TeX{} ÑиÑтема, групиÑани по платформама. +% +\item[readme-*.dir] Кратак преглед \TL{}-a и кориÑни линкови на + разним језицима, у \HTML{} и текÑтуалном формату. +% +\item[source] Изворни ко\char"0302 д Ñвих програма који Ñу укључени у + \TL{}, укључујући Ñредишње \TeX{} диÑтрибуције заÑноване на + \Webc{}-у. +% +\item[texmf] Погледајте Ð¾Ð¿Ð¸Ñ Ð¿Ñ€Ð¾Ð¼ÐµÐ½Ñ™Ð¸Ð²Ðµ \dirname{TEXMFMAIN} у Ñледећем + одељку. +% +\item[texmf-dist] Погледајте Ð¾Ð¿Ð¸Ñ Ð¿Ñ€Ð¾Ð¼ÐµÐ½Ñ™Ð¸Ð²Ðµ \dirname{TEXMFDIST} у + Ñледећем одељку. +% +\item[tlpkg] Скрипте, програми и подаци потребни за одржавање + инÑталације, као и фајлови Ñпецифични за \Windows{}. +\end{ttdescription} + +ОÑим управо набројаних директоријума, на највишем нивоу диÑтрибуције +налазе Ñе и инÑталационе Ñкрипте и \filename{README} +(\filename{ПРОЧИТÐЈ-МЕ}) фајлови на разним језицима. + +Што Ñе тиче документације, од помоћи могу да буду иÑцрпни линкови у +фајлу \OnCD{doc.html}, који Ñе налази у директоријуму највишег нивоа. +Документација за поједине програме (приручници, man-Ñтранице, +Info-фајлови) налази Ñе у \dirname{texmf/doc}. Документација за \TeX\ +пакете и формате налази Ñе у \dirname{texmf-dist/doc}. Можете да +употребите програм \cmdname{texdoc} ако желите да пронађете било који +део документације. + +Документација о Ñамој диÑтрибуцији \TL\ налази Ñе у +\dirname{texmf/doc/texlive} и доÑтупна је на неколико језика: + +\begin{itemize*} +\item{енглеÑки:} \OnCD{texmf/doc/texlive/texlive-en} +\item{италијанÑки:} \OnCD{texmf/doc/texlive/texlive-it} +\item{кинеÑки:} \OnCD{texmf/doc/texlive/texlive-zh-cn} +\item{немачки:} \OnCD{texmf/doc/texlive/texlive-de} +\item{пољÑки:} \OnCD{texmf/doc/texlive/texlive-pl} +\item{руÑки:} \OnCD{texmf/doc/texlive/texlive-ru} +\item{ÑрпÑки:} \OnCD{texmf/doc/texlive/texlive-sr} (овај документ) +\item{француÑки:} \OnCD{texmf/doc/texlive/texlive-fr} +\item{чешки и Ñловачки:} \OnCD{texmf/doc/texlive/texlive-cz} +\end{itemize*} + +\subsection{Садржај директоријума texmf} +\label{sec:texmftrees} + +Овај одељак даје ÑпиÑак унапред дефиниÑаних променљивих које одређују +раÑпоред података унутар директоријума texmf, Ñврху којој Ñлуже, као +и њихов подразумевани положај и ÑвојÑтва унутар \TL{}-а. Команда +\texttt{tlmgr~conf} приказује вредноÑти ових променљивих тако да лако +можете да видите на који директоријум (дрво) на Вашој инÑталацији оне +упућују. + +Сви ови директоријуми (дрвета), укључујући и лични, треба да поштују +\TDS\ (\emph{Ñтруктуру \TeX{} директоријума}, одноÑно \TeX{} +\textenglish{Directory Structure} --- \url{http://tug.org/tds}), Ñа +Ñвим безбројним поддиректоријумима карактериÑтичним за њу, иначе може +да Ñе деÑи да Ñе неки фајлови не могу пронаћи. +Одељак~\ref{sec:local-personal-macros} +(ÑÑ‚Ñ€.~\pageref{sec:local-personal-macros}) детаљно Ñе бави овом темом. + +\begin{ttdescription} +\item [TEXMFMAIN] Дрво у коме Ñе налазе витални делови ÑиÑтема као + што Ñу конфигурациони фајлови, помоћне Ñкрипте и документација за + програме. +\item [TEXMFDIST] Дрво које Ñадржи главни Ñкуп макро-пакета, фонтова, + итд. +\item [TEXMFLOCAL] Дрво које админиÑтратори могу да кориÑте за + инÑталацију додатних или надограђених макроа, фонтова, итд; Ñадржај + овог дрвета важи за цео ÑиÑтем. +\item [TEXMFHOME] Дрво које кориÑници могу да кориÑте за Ñвоје личне + инÑталације додатних или надограђених макроа, фонтова, итд; вредноÑÑ‚ + ове променљиве динамички Ñе прилагођава положају личног директоријума + Ñваког појединог кориÑника. +\item [TEXMFCONFIG] (Лично кориÑниково) дрво које апликације + \verb+texconfig+, \verb+updmap+ и \verb+fmtutil+ кориÑте за чување + измењених конфигурационих података. +\item [TEXMFSYSCONFIG] (Глобално важеће) дрво које кориÑте апликације + \verb+texconfig-sys+, \verb+updmap-sys+ и \verb+fmtutil-sys+ за + чување измењених конфигурационих података. +\item [TEXMFVAR] (Лично кориÑниково) дрво које кориÑте + \verb+texconfig+, \verb+updmap+ и \verb+fmtutil+ за чување аутоматÑки + направљених података које разни програми кориÑте током рада, као што + Ñу формати и мапе. +\item [TEXMFSYSVAR] (Глобално важеће) дрво које кориÑте + \verb+texconfig-sys+, \verb+updmap-sys+ и \verb+fmtutil-sys+, као и + \verb+tlmgr+, за чување аутоматÑки направљених података које разни + програми кориÑте током рада, као што Ñу формати и мапе. +\item [TEXMFCACHE] Дрво (или више дрвета) које \ConTeXt\ Mk\acro{IV} + кориÑти за чување (кешираних) радних података. +\end{ttdescription} + +\noindent +Подразумевана Ñтруктура директоријума изгледа овако: +\begin{description} + \item[корен ÑиÑтема] може да Ñадржи више различитих издања \TL{}-а: + \begin{ttdescription} + \item[2011] Претходно издање. + \item[2012] Тренутно издање. + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-freebsd\ \ \ \ ] програми за FreeBSD + \item [i386-linux\ \ \ \ \ \ ] програми за \GNU/Linux + \item [...] + \item [universal-darwin] програми за \MacOSX + \item [win32\ \ \ \ \ \ \ \ \ \ \ ] програми за \Windows{} + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] \envname{TEXMFMAIN} + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var \ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL}, заједнички за Ñва издања. + \end{ttdescription} + \item[кориÑников лични директоријум] (\texttt{\$HOME} или + \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2011] Лични направљени и конфигурациони подаци за + претходно издање. + \item[.texlive2012] Лични направљени и конфигурациони подаци за + тренутно издање. + \begin{ttdescription} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR}, \envname{TEXMFCACHE} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} Лични макрои итд. + \end{ttdescription} +\end{description} + + +\subsection{Проширења \protect\TeX-а} +\label{sec:tex-extensions} + +Кнутов [Knuth] оригинални \TeX{} је замрзнут: оÑим ретких поправки +грешака, у њега Ñе не уноÑе никакве иÑправке. Изворни \TeX{} је још +увек приÑутан у \TL-у као програм \prog{tex}, и тако ће и оÑтати у +будућноÑти. \TL{} Ñадржи неколико проширених варијанти \TeX-а: + +\begin{description} + +\item [\eTeX] додаје неколико нових примитива\char"0304\ + \label{text:etex} (којe Ñе одноÑе на проширење макроа, читање + Ñимбола\char"0304, клаÑе ознака, додатне могућноÑти за отклањање + грешака и још пуно тога), као и проширење звано \TeXXeT{} које + Ñлужи за припрему докумената Ñа Ñадржајем на језицима који Ñе пишу + Ñа лева на деÑно, уз оне који Ñе пишу Ñа деÑна на лево. + У подразумеваном режиму, \eTeX{} је 100\% компатибилан Ñа Ñтандардним + \TeX-ом. Погледајте \OnCD{texmf-dist/doc/etex/base/etex_man.pdf}. + +\item [pdf\TeX] је изграђен на проширењима које је донео \eTeX, + додајући на њих подршку за прављење докумената директно у \acro{PDF} + формату (поред уобичајеног \dvi{}) и много проширења невезаних за + излаз. Ово је програм који Ñе кориÑти за већину формата, као што Ñу + \prog{etex}, \prog{latex}, \prog{pdflatex}. Интернет Ñтраница + пројекта је \url{http://www.pdftex.org/}. УпутÑтво за употребу је + \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}, а примери који + демонÑтрирају неке од његових могућноÑти налазе Ñе у + \OnCD{texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex}. + +\item [Lua\TeX] је предвиђен да буде наÑледник pdf\TeX-а, и углавном + је (мада не у потпуноÑти) компатибилан Ñа Ñвојим претходницима. + Ðамера је такође да он буде функционални надÑкуп Aleph-а (погледајте + ниже), премда нема намере да Ñе подржи техничка компатибилноÑÑ‚. + Уграђени интерпретер језика Lua (\url{http://www.lua.org/}) омогућава + елегантна решења за многе тешко решиве проблеме у \TeX{}-у. Када Ñе + позива као \filename{texlua}, функционише као ÑамоÑтални Lua + интерпретер и као такав је већ у употреби унутар \TL-а. + Интернет-Ñтраница пројекта је \url{http://www.luatex.org/} а + приручник је \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}. + +\item [\XeTeX] додаје подршку за ÑƒÐ½Ð¾Ñ Ñ‚ÐµÐºÑта према Unicode + Ñтандарду уз употребу OpenType фонтова; \XeTeX\ може да кориÑти + фонтове који већ поÑтоје на ÑиÑтему; ова подршка је урађена уз + употребу Ñпољних библиотека. Погледајте \url{http://tug.org/xetex}. + +\item [\OMEGA\ (Omega)] је заÑнован на Unicode Ñтандарду (Ñваки знак + заузима 16 бита), па Ñтога подржава рад Ñа Ñкоро Ñвим ÑветÑким + пиÑмима у иÑто време. Он подржава и тзв. „\OMEGA{} процеÑе превођења“ + („\textenglish{\OMEGA{}~Translation Processes}“ --- \acro{OTP}) за + извођење Ñложених транформација над произвољним улазом. Omega није + више укључен у \TL{} као одвојени програм; одржавамо Ñамо Aleph + (погледајте иÑпод). + +\item [Aleph] комбинује проширења која Ñу донели \OMEGA\ и \eTeX. + Погледајте \OnCD{texmf-dist/doc/aleph/base}. + +\end{description} + + +\subsection{Други иÑтакнути програми у \protect\TL} + +Ево неколико других важних програма који Ñу укључени у \TL{} и који +Ñе чеÑто кориÑте: + +\begin{cmddescription} +\itemsep=-.2em +\item [bibtex, bibtex8] подршка за прављење библиографија\char"0304. +\item [makeindex, xindy] подршка за прављење индекÑа\char"0304. +\item [dvips] пребацује \dvi{} формат у \PS{}. +\item [xdvi] програм за приказивање \dvi{} формата у графичком + ÑиÑтему X (X Window System). +\item [dvilj] \dvi{} драјвер за породицу штампача\char"0304\ HP LaserJet. +\item [dviconcat, dviselect] рад Ñа документима у \dvi{} формату. +\item [dvipdfmx] пребацује \dvi{} у \acro{PDF}; Ñлужи као + алтернатива приÑтупу који омогућава pdf\TeX\ (објашњено у претходном одељку). +\item [psselect, psnup...] алатке за баратање \PS{} документима. +\item [pdfjam, pdfjoin...] алатке за баратање \acro{PDF} документима. +\item [texexec, texmfstart] програми за Con\TeX{}t и \acro{PDF}. +\item [tex4ht] конвертор из \TeX{}-а у \acro{HTML}, \acro{XML} и + много других формата. +\end{cmddescription} + + +\subsection{Фонтови у \protect\TL} +\label{sec:tl-fonts} + +У \TL{} је укључен велики број векторÑких фонтова виÑоког квалитета. +Погледајте \url{http://tug.org/fonts} и +\OnCD{texmf-dist/doc/fonts/free-math-font-survey}. + + +\htmlanchor{installation} +\section{ИнÑталација} +\label{sec:install} + +\subsection{Покретање инÑталационог програма} +\label{sec:inst-start} + +За почетак, потребан Вам је \TK{} \DVD{} или програм за инÑталирање +\TL{}-а преко Интернета (\textenglish{net installer}). Пронађите +инÑталациону Ñкрипту: она Ñе зове \filename{install-tl} на Unix-има, +а \filename{install-tl.bat} на \Windows{}-у. Ðа Ñтраници +\url{http://tug.org/texlive/acquire.html} налазе Ñе додатне информације +како можете да дођете до Ñофтвера. + +\begin{description} +\item [Net installer:] Скините га Ñа \CTAN-а, налази Ñе у + директоријуму \dirname{systems/texlive/tlnet}; преко путање + \url{http://mirror.ctan.org/systems/texlive/tlnet} бићете аутоматÑки + пребачени на географÑки најближи Ñајт-копију (mirror) који Ñадржи + најновије верзије целокупног Ñадржаја. Можете да преузмете + \filename{install-tl.zip}, који Ñе може кориÑтити и под Unix-ом и под + \Windows{}-ом, или значајно мањи \filename{install-unx.tar.gz} (Ñамо + за Unix). Када раÑпакујете фајл који Ñте преузели, у поддиректоријуму + \dirname{install-tl} наћи ћете фајлове \filename{install-tl} и + \filename{install-tl.bat}. + +\item [\TeX{} Collection \DVD:] Уђите у директоријум \dirname{texlive} + на \DVD-ју. Ðа \Windows{}-у Ñе инÑталациони програм обично Ñам + покреће када убаците \DVD. \DVD можете добити ако поÑтанете члан неке + групе кориÑника \TeX-а (наша Ñрдачна препорука да урадите тако, + погледајте \url{http://tug.org/usergroups.html}), тако што ћете га + купити (\url{http://tug.org/store}), или тако што ћете Ñами нарезати + \ISO\ фајл. Ðа већини ÑиÑтема можете и да директно приÑтупите + Ñадржају \ISO{} одраза („\textenglish{mount}“). Ðко поÑле инÑталације + преко \DVD{}-ја или \ISO{} одраза желите да наÑтавите Ñа надоградњама + преко Интернета, погледајте одељак~\ref{sec:dvd-install-net-updates}. + +\end{description} + +Без обзира на то који извор кориÑтите, покреће Ñе један иÑти инÑталер. +Ðајвидљивија разлика је то што преко мреже („\textenglish{Net +installer}“) добијате пакете који Ñу доÑтупни у том тренутку. За +разлику од тога, \DVD{} и \ISO{} фајлови Ñе не оÑвежавају у периоду +између главних издања. + +Ðаредни одељци детаљно објашњавају како Ñе инÑталациони програм +кориÑти. + +\subsubsection{Unix} + +Од Ñада па надаље, \texttt{>} означава „промпт“ („shell prompt“); оно +што уноÑи кориÑник приказано је \Ucom{подебљаним} \Ucom{Ñловима}. +Скрипта \filename{install-tl} је напиÑана у језику Perl. +ÐајједноÑтавнији начин да је покренете на Unix ÑиÑтемима изгледа +овако: +\begin{alltt}> \Ucom{cd /путања/до/програма/за/инÑталацију} +> \Ucom{perl install-tl} +\end{alltt} +(УмеÑто тога, можете је позвати Ñа \Ucom{perl +/путања/до/инÑталера/install-tl} или Ñа \Ucom{./install-tl} ако је +Ñкрипта извршни фајл --- има „права на извршавање“, речено Unix +језиком --- итд; нећемо понављати Ñве ове варијације.) Може Ñе деÑити +да је потребно да повећате прозор Ñвог терминала како би у њега Ñтао +цео Ñадржај програма (Ñлика~\ref{fig:text-main}). + +Ðко желите да обавите инÑталацију у екÑпертÑком графичком режиму +(„expert \acro{GUI}“, Ñлика~\ref{fig:gui-main}), биће Вам потребан +\dirname{Perl/TK} модул компајлиран Ñа \acro{XFT} подршком; то је +обично тако на \GNU/Linux-у, али није нужно Ñлучај на другим +ÑиÑтемима.\footnote{\textserbian{Ово нарочито важи ако кориÑтите +ћириличне верзије програма, укључујући и ÑрпÑку; фонтови могу бити +читљиви, али ће изгледати веома лоше --- \emph{прим. прев.}}} Када +Ñве буде Ñпремно, откуцајте: +\begin{alltt}> \Ucom{perl install-tl -gui} +\end{alltt} + +Ðко желите да видите комплетан ÑпиÑак разних опција, откуцајте: +\begin{alltt}> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{Упозорење везано за кориÑничка овлашћења на Unix ÑиÑтемима:} +ИнÑталациони програм \TL{}-а ће поштовати Ваш \code{umask} који важи +у време инÑталације. Дакле, ако желите да инÑталирани ÑиÑтем кориÑте +и други кориÑници, побрините Ñе да подеÑите одговарајуће дозволе, на +пример, \code{umask 002}. ИÑцрпније информације о команди +\code{umask} можете пронаћи у документацији на Вашем ÑиÑтему. + +\textbf{ПоÑебни обзири везани за Cygwin:} За разлику од других +ÑиÑтема компатибилних Ñа Unix-ом, Cygwin у Ñвом Ñтандардном облику не +Ñадржи Ñве неопходне програме који Ñу потребни инÑталационом програму +\TL{}-а. Одељак~\ref{sec:cygwin} поÑвећен је овој теми. + + +\subsubsection{MacOSX} + +Као што је поменуто у одељку~\ref{sec:tl-coll-dists}, за \MacOSX је +припремљена поÑебна диÑтрибуција по имену Mac\TeX\ +(\url{http://tug.org/mactex}). Препоручујемо да на \MacOSX ÑиÑтему +кориÑтите изворни инÑталациони програм умеÑто оног који је укључен у +\TL\ зато што ће Mac\TeX\ верзија урадити и нека додатна подешавања +Ñпецифична за \MacOSX, пре Ñвега она која Вам омогућавају да Ñе лако +пребацујете Ñа једне на другу диÑтрибуцију \TeX-а (Mac\TeX, Fink, +MacPorts...). + +Mac\TeX\ је Ñтрого заÑнован на \TL-у и главни \TeX\ директоријуми Ñу +у потпуноÑти иÑти. Mac\TeX\ на ту Ñтруктуру додаје неколико допунÑких +директоријума Ñа документацијом и апликацијама Ñпецифичним за Mac. + + +\subsubsection{Windows} + +Ðко кориÑтите програм за инÑталацију преко Интернета (net installer) +или ако Ñе инÑталациони програм Ñа \DVD-ја не отвори аутоматÑки, +двапут кликните \filename{install-tl.bat}. Ðко желите да имате више +могућноÑти око подешавања разних параметара, нпр. да изаберете или не +изаберете поједине колекције пакета, умеÑто поменутог програма +покрените \filename{install-tl-advanced.bat}. + +ИнÑталациони програм Ñе може покренути и Ñа командне линије +(command-prompt). У наÑтавку текÑта, \texttt{>} ће означавати промпт; +оно што куца кориÑник биће штампано \Ucom{подебљаним} \Ucom{Ñловима}. +Када уђете у директоријум у коме Ñе налази инÑталациони програм, +откуцајте: +\begin{alltt}> \Ucom{install-tl} +\end{alltt} + +Можете да употребите и апÑолутну путању, на пример: +\begin{alltt}> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +Овај конкретан пример значи да кориÑтите \TK\ \DVD и да је ознака +оптичког драјва на Вашем компјутеру \dirname{D:}. +Слика~\ref{fig:wizard-w32} приказује поједноÑтављени графички +(„wizard“) режим рада инÑталационог програма; овај режим Ñе на +\Windows{}-у подразумева. + +Ðко хоћете да инÑталирате у текÑтуалном режиму, откуцајте: +\begin{alltt}> \Ucom{install-tl -no-gui} +\end{alltt} + +Комплетан ÑпиÑак опција\char"0304\ добићете ако откуцате: +\begin{alltt}> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2012 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: live (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + platforms: 1 out of 19 + + installation scheme (scheme-full) + 84 collections out of 85, disk space required: 3091 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + options: + [ ] use letter size instead of A4 by default + ... + + set up for portable installation + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{Главни екран инÑталационог програма + (\GNU/Linux)}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{tl2012-install-tl-expert-gui-freebsd-sr}{\linewidth} + \caption{ИнÑталациони програм у екÑпертÑком графичком („Expert + \GUI{}“) режиму (FreeBSD)}\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{tl2012-install-tl-wizard-win32-sr}{\linewidth} +\caption{ИнÑталациони програм у поједноÑтављеном графичком („Wizard“) + режиму (\Windows{})}\label{fig:wizard-w32} +\end{figure} + + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +ИнÑталациони програм \TL{}-а ради Ñамо на Cygwin 1.7. Пре него што +почнете инÑталацију, покрените Cygwin-ов програм \filename{setup.exe} +како биÑте инÑталирали пакете \filename{perl} и \filename{wget} +уколико не поÑтоје на Вашем ÑиÑтему. Препоручују Ñе и ови додатни +пакети: +\begin{itemize*} +\item \filename{fontconfig} [потребан за \XeTeX] +\item \filename{ghostscript} [потребан за више разних програма] +\item \filename{libXaw7} [потребан за \code{xdvi}] +\item \filename{ncurses} [обезбеђује команду \code{clear} коју + кориÑти инÑталациони програм] +\end{itemize*} + + +\subsubsection{ИнÑталација у текÑтуалном режиму} + +Слика~\ref{fig:text-main} приказује главни екран инÑталационог +програма у текÑтуалном режиму рада на Unix-у. ТекÑтуални режим је +Ñтандард на Unix-у. + +У овом режиму, инÑталациони програм Ñе иÑкључиво оÑлања на командну +линију; употреба курзора није могућа. Ðа пример, не можете да +употебите дугме „Тab“ да Ñе премештате од поља до поља за избор и +ÑƒÐ½Ð¾Ñ Ñ‚ÐµÐºÑта. ПроÑто откуцате нешто на промпту (разлика између великих +и малих Ñлова је битна) и притиÑнете Enter; тада Ñе цео екран +терминала поново иÑпуњава измењеним Ñадржајем. + +ТекÑтуални Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÑ˜Ñ Ñ˜Ðµ Ñ Ñ€Ð°Ð·Ð»Ð¾Ð³Ð¾Ð¼ овако примитиван: он је дизајниран +да ради на што је год могуће већем броју оперативних ÑиÑтема, +укључујући и оне Ñа тако једноÑтавним инÑталацијама које Ñадрже Ñамо +чиÑÑ‚ Perl. + + +\subsubsection{ИнÑталација у екÑпертÑком графичком режиму} + +Слика~\ref{fig:gui-main} приказује екÑпертÑки графички режим рада на +Free\acro{BSD} ÑиÑтему. ОÑновна разлика у одноÑу на текÑтуални режим +јеÑте то што овде можете да кориÑтите дугмиће и меније. + +Овај режим рада Ñе може изричито позвати помоћу +\begin{alltt}> \Ucom{install-tl -gui=perltk} +\end{alltt} + + +\subsubsection{ИнÑталација у поједноÑтављеном графичком („wizard“) + режиму} + +Ðко није другачије захтевано, на \Windows{}-у инÑталациони програм +кориÑти најједноÑтавнији режим рада који Ñмо могли да оÑмиÑлимо и који +Ñе зове „wizard“ („чаробњак“ --- Ñлика \ref{fig:wizard-w32}). Програм +у том режиму инÑталира Ñве и не пита Ñкоро ништа. Ðко желите да +подешавате инÑталацију, треба да кориÑтите неки од горе опиÑаних +режима. + +Овај режим Ñе може изричито позвати помоћу +\begin{alltt}> \Ucom{install-tl -gui=wizard} +\end{alltt} + + +\subsection{Употреба инÑталационог програма} +\label{sec:runinstall} + +ИнÑталер је направљен Ñа намером да буде мање-више јаÑан по Ñеби, али +ево неколико напомена о разним опцијама. + +\subsubsection{Мени за избор платформе (Ñамо на Unix-у)} +\label{sec:binary} + +\begin{figure}[tb] +\begin{boxedverbatim} +Available platforms: +=============================================================================== + a [ ] alpha-linux DEC Alpha with GNU/Linux + b [X] amd64-freebsd x86_64 with FreeBSD + c [ ] amd64-kfreebsd x86_64 with GNU/kFreeBSD + d [ ] armel-linux ARM with GNU/Linux + e [ ] i386-cygwin Intel x86 with Cygwin + f [ ] i386-freebsd Intel x86 with FreeBSD + g [ ] i386-kfreebsd Intel x86 with GNU/kFreeBSD + h [ ] i386-linux Intel x86 with GNU/Linux + i [ ] i386-solaris Intel x86 with Solaris + j [ ] mips-irix SGI IRIX + k [ ] mipsel-linux mipsel with Linux + l [ ] powerpc-aix PowerPC with AIX + m [ ] powerpc-linux PowerPC 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 +\end{boxedverbatim} +\caption{Мени за избор платформе (тј. архитектуре и оперативног ÑиÑтема) за програме}\label{fig:bin-text} +\end{figure} + +Слика~\ref{fig:bin-text} приказује мени Ñа подржаним платформама +(в.~фуÑноту 1 за објашњење израза „платформа“) за програме, у +текÑтуалном режиму. Подразумева Ñе да ће бити инÑталиране Ñамо +верзије програма за тип процеÑора и оперативни ÑиÑтем на коме Ñте +покренули инÑталацију. Можете, међутим, изабрати и да инÑталирате +верзије програма и за неке друге платформе. Ово може да буде кориÑно +ако Ñе \TeX\ заједнички кориÑти на мрежи Ñа разнородним машинама или +на компјутерима који на Ñеби имају неколико различитих оперативних +ÑиÑтема. + +\subsubsection{Избор компоненти} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Select scheme: +=============================================================================== + a [X] full scheme (everything) + b [ ] medium scheme (small + more packages and languages) + c [ ] small scheme (basic + xetex, metapost, a few languages) + d [ ] basic scheme (plain and latex) + e [ ] minimal scheme (plain only) + f [ ] ConTeXt scheme + g [ ] GUST TeX Live scheme + h [ ] teTeX scheme (more than medium, but nowhere near full) + i [ ] XML scheme + j [ ] custom selection of collections +\end{boxedverbatim} +\caption{Мени Ñа шемама}\label{fig:scheme-text} +\end{figure} + +Слика~\ref{fig:scheme-text} приказује \TL-ов мени Ñа шемама; преко њега +можете изабрати „шему“, тј. један кохерентан Ñкуп колекција пакета. +Подразумевана „пуна“ (\optname{full}) шема инÑталира Ñве. Препоручује +Ñе да тако и урадите; ипак, можете да изаберете и „оÑновну“ +(\optname{basic}) шему прикладну за мале ÑиÑтеме, „минималну“ +(\optname{minimal}) шему за потребе теÑтирања и „Ñредњу“ +(\optname{medium}) шему --- заправо \optname{teTeX} --- нешто у +Ñредини између претходна два. ПоÑтоје такође и разне Ñпецијализоване +шеме и шеме прилагођене некој поÑебној земљи. + +\begin{figure}[tb] +\begin{center} + \tlpng{tl2012-install-tl-collections-freebsd-sr}{.85\linewidth} + \caption{Мени Ñа колекцијама}\label{fig:collections-gui} +\end{center} +\end{figure} + +Одабир шеме може да Ñе даље разради помоћу менија „Стандардне +колекције“ и „Језичке колекције“ (Ñлика~\ref{fig:collections-gui}, +овог пута, за промену, приказани у графичком режиму). + +Колекције Ñу за један ниво детаљније него шеме --- поједноÑтављено +речено, једна шема Ñе ÑаÑтоји од неколико колекција, колекција Ñе +ÑаÑтоји од једног или више пакета\char"0304, а пакет (најнижи ниво +групиÑања у \TL-у) Ñадржи Ñтварне фајлове \TeX\ макроа, фонтова, итд. + +Ðко желите још више контроле него што нуде менији Ñа колекцијама, +можете да кориÑтите \textenglish{\TeX\ Live Manager} (\prog{tlmgr}) +након инÑталације (подгледајте одељак~\ref{sec:tlmgr}); помоћу њега +можете да контролишете инÑталацију на нивоу пакета\char"0304. + +\subsubsection{Директоријуми} +\label{sec:directories} + +Подразумевани раÑпоред директоријума\char"0304\ опиÑан је у +одељку~\ref{sec:texmftrees}, ÑÑ‚Ñ€.~\pageref{sec:texmftrees}. +Стандардна локација директоријума \dirname{TEXDIR} је +\dirname{/usr/local/texlive/2012} на Unix-у и +|%SystemDrive%\texlive\2012| на Win\-dows-у. + +Главни разлог да промените ове вредноÑти јеÑте ако немате право +упиÑивања на подразумевано меÑто. Ðе морате да будете root или +админиÑтратор да биÑте инÑталирали \TL, али морате имати право +упиÑивања у циљни директоријум. + +Разумна алтернатива јеÑте неки директоријум унутар личног +директоријума, поÑебно ако ћете једини кориÑник бити Ви. Ознака за +лични доректоријум је „|~|“, на пример „|~/texlive/2012|“. + +Препоручујемо да укључите ознаку за годину у име изабраног +директоријума како биÑте били у могућноÑти да држите различита издања +\TL{}-а једно поред другог. (Такође, можете и да помоћу Ñимболичког +линка направите име незавиÑно од верзије, нпр. +\dirname{/usr/local/texlive-cur} и да тај линк каÑније промените +након теÑтирања новог издања.) + +Промена вредноÑти променљиве \dirname{TEXDIR} у инÑталационом +програму повлачи за Ñобом и промену директоријума\char"0304\ +\dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} и +\dirname{TEXMFSYSCONFIG}. + +Препоручујемо да кориÑтите \dirname{TEXMFHOME} као меÑто за личне +макрое и пакете. Подразумевана вредноÑÑ‚ је |~/texmf|. ÐаÑупрот +\dirname{TEXDIR}-у, овде Ñе ознака |~| чува у новозапиÑаним +конфигурационим фајловима зато што означава лични директоријум +било ког појединца који кориÑти \TeX. Он на Unix-у узима вредноÑÑ‚ +\dirname{$HOME} а на \Windows{}-у поÑтаје \verb|%USERPROFILE%|. +ПоÑебна, већ помало Ñувишна напомена: \envname{TEXMFHOME}, као и +Ñва дрвета Ñа подацима, мора бити организовано у Ñкладу Ñа \TDS{}; +у противном Ñе може деÑити да фајлови не могу да Ñе пронађу. + +\dirname{TEXMFVAR} је меÑто где Ñе Ñмештају кеширани подаци који Ñе +Ñтварају током рада програма\char"0304\ и који Ñе разликују од +кориÑника до кориÑника. \ConTeXt\ Mk\acro{IV} кориÑти у те Ñврхе +директоријум \dirname{TEXMFCACHE} (погледајте +одељак~\ref{sec:context-mkiv}, ÑÑ‚Ñ€.~\pageref{sec:context-mkiv}). + + +\subsubsection{Опције} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Options setup: +=============================================================================== +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: + after installation, get package updates from CTAN: [X] +\end{boxedverbatim} +\caption{Мени Ñа опцијама (Unix)}\label{fig:options-text} +\end{figure} + +Слика~\ref{fig:options-text} приказује мени Ñа опцијама у текÑтуалном режиму +рада. Следи више информација о Ñвакој од њих: + +\begin{description} +\itemsep=.2em +\item[узети Letter као подразумевану величину папира умеÑто A4] + (\textenglish{use letter size instead of A4 by de\-fault}): Избор + подразумеване величине папира. Ðаравно, можете да употребите било + коју величину папира ако Ñе за тим укаже потреба у неком поÑебном + документу. + +\item[извршавање ограничене лиÑте програма] (\textenglish{execution + of restricted list of programs}): Почев од \TL\ 2010, покретање + једног броја Ñпољних програма дозвољено је у Ñтандардној инÑталацији. + ЛиÑта дозвољених програма (која је веома кратка) дата је у + \filename{texmf.cnf}. Више детаља можете наћи у ÑпиÑку новитета за + \TL\ 2010 (одељак~\ref{sec:2010news}). + +\item[направи фајлове Ñа форматима] (\textenglish{create format + files}): Иако фајлови Ñа форматима које не кориÑтите заузимају меÑто + на диÑку и одузимају време да Ñе направе, препоручује Ñе да оÑтавите + ову опцију укључену: ако то не урадите, формати ће по потреби бити + прављени у личним директоријумима кориÑника (дрво \dirname{TEXMFVAR}). + Ðа том меÑту неће бити аутоматÑки оÑвежени ако Ñе, рецимо, појави + нова верзија програма или правила за прелом текÑта, па кориÑник лако + може да има проблем Ñа некомпатибилним форматима. + +\item[инÑталирај изворни ко\char"0302 д и документацију фонтова и макроа] + (\textenglish{install font/macro doc/source tree}): Ове опције Вам + омогућавају да изоÑтавите преузимање Ñа Интернета или инÑталацију + документације и изворног ко\char"0302 да који поÑтоје за већину пакета. + ИÑкључивање ове опције Ñе не препоручује. + +\item[направи Ñимболичке линкове у ÑиÑтемÑким директоријумима] + (\textenglish{create symlinks in standard directories}): Ова опција + (Ñамо на Unix-у) Ñлужи да избегнете подешавање променљивих из + радног окружења (\textenglish{environment variables}). Без ове опције, + директоријуми \TL{}-а обично морају да Ñе додају у \envname{PATH}, + \envname{MANPATH} и \envname{INFOPATH}. Биће Вам потребно и овлашћење + за упиÑивање у те ÑиÑтемÑке директоријуме. Изричито Ñаветујемо да + употребом ове опције \emph{не дирате} инÑталацију \TeX-а која је део + Вашег ÑиÑтема. Она је намењена пре Ñвега да би Ñе \TL{} ÑиÑтему + приÑтупало кроз директоријуме који Ñу већ познати кориÑнику, као што + је \dirname{/usr/local/bin} али Ñамо ако они пре тога ниÑу Ñадржавали + никакве фајлове везане за \TeX. + +\item[поÑле инÑталације обнављати пакете преко CTAN-а] + (\textenglish{after installation, get package updates from CTAN}): + Када инÑталирате Ñа \DVD-ја, ова опција Ñе подразумева зато што већина + кориÑника жели да преузме Ñве нове верзије пакета Ñа \CTAN-а које Ñе + појаве током године. Једини разумни разлог да иÑкључите ову опцију + појављује Ñе у Ñлучају када Ñа \DVD-ја инÑталирате Ñамо део ÑиÑтема и + планирате да га каÑније проширите. У Ñваком Ñлучају, репозиторијум + пакета\char"0304\ који Ñе кориÑти за инÑталацију и за будуће + оÑвежавање ÑиÑтема може да Ñе подеÑи и каÑније; погледајте + одељке~\ref{sec:location} и~\ref{sec:dvd-install-net-updates}. +\end{description} + +Када Ñу Ñви параметри подешени према Вашој жељи, можете да притиÑнете +„|I|“ како биÑте започели поÑтупак инÑталације. Када Ñе Ñве заврши, +пређите на одељак~\ref{sec:postinstall} и прочитајте шта поÑле тога +има да Ñе уради, ако уопште нешто буде потребно. + + +\subsection{Параметри програма install-tl на командној линији} +\label{sec:cmdline} + +Откуцајте +\begin{alltt}> \Ucom{install-tl -help} +\end{alltt} +како биÑте добили ÑпиÑак Ñвих параметара које можете да употребите на +командној линији. Можете да кориÑтите и |-| и |--| иÑпред назива +параметра. Ово је ÑпиÑак могућноÑти које Ñе најчешће употребљавају: + +\begin{ttdescription} +\item[-gui] Ðко је могуће биће употребљена графичка (\GUI{}) верзија + инÑталационог програма. За ово је потребан Perl/Tk модул + (\url{http://tug.org/texlive/distro.html#perltk}) компајлиран Ñа + подршком за \acro{XFT}; ако Perl/Tk није доÑтупан, инÑталација Ñе + наÑтавља у текÑтуалном режиму. + +\item[-no-gui] Изричито захтевање употребе текÑтуалног режима рада, + чак и на \Windows{}-у. + +\item[-lang {\sl LL}] Задавање језика инÑталационог програма према + Ñтандардном двоÑловном коду \textsl{LL}. ИнÑталациони програм ће + покушати да уÑтанови који Ñе језик кориÑти на ÑиÑтему; ако не уÑпе + или ако језик није доÑтупан, пребациће Ñе на енглеÑки. Команда + \code{install-tl --help} ће приказати лиÑту раÑположивих језика. + ИнÑталациони програм је преведен на ÑрпÑки; покрените га помоћу + \code{install-tl -gui -lang sr}. + +\htmlanchor{opt-in-place} +\item[-in-place] Ðко већ имате копију \TL{}-а направљену помоћу + \prog{rsync}, \prog{svn} или друге копије Ñамог \TL{}-а (погледајте + \url{http://tug.org/texlive/acquire-mirror.html}), онда Ñе овим + параметром задаје да Ñе употреби то што имате, такво какво је; биће + обављене Ñамо неопходне поÑÑ‚-инÑталационе радње. Будите пажљиви зато + што фајл \filename{tlpkg/texlive.tlpdb} може бити пребриÑан новом + верзијом; на Вама је да га Ñачувате. Такође, уклањање + пакета\char"0304\ мора да Ñе уради ручно. Ðе треба да кориÑтите овај + параметар ако не знате тачно шта радите. Овај параметар не може да Ñе + укључи преко графичког интерфејÑа инÑталера. + +\item[-portable] При\char"030F према преноÑиве инÑталације на + \acro{USB}-диÑку. Овај параметар Ñе може изабрати и у текÑтуалном + режиму инÑталера (помоћу команде \code{V}), као и у графичком режиму. + Погледајте одељак~\ref{sec:portable-tl}. + +\item[-profile {\sl file}] Учитава инÑталациони профил \var{file} и + обавља инÑталацију без интеракције Ñа кориÑником. ИнÑталациони + програм увек запиÑује фајл \filename{texlive.profile} у + \dirname{tlpkg}, поддиректоријум Ваше инÑталације. Помоћу ове опције + поменути фајл Ñе може употребити да Ñе, на пример, идентична + инÑталација понови да неком другом ÑиÑтему. ОÑим тога, можете да лако + припремите ÑопÑтвени профил тако што промените вредноÑти у профилу + који је аутоматÑки направљен (проÑтом изменом вредноÑти у текÑÑ‚ + едитору) или да подеÑите да профил буде празан фајл (у ком Ñлучају ће + инÑталациони програм без питања инÑталирати \TL{} Ñа подразумеваним + параметрима). + +Ова опција задаје програму да изнова употреби такав фајл + тако да, након прве инÑталације, можете да инÑталирате \TL{} на више + ÑиÑтема или компјутера у режиму без поÑтављања питања (batch mode), + понављајући Ñве опције које Ñте првобитно изабрали. + +\item [-repository {\sl url-or-directory}] Одређује репозиторијум из + кога ће Ñе инÑталирати пакети; погледајте Ñледећи одељак. +\end{ttdescription} + + +\subsubsection{Параметар \optname{-repository}} +\label{sec:location} + +Подразумевани репозиторијум пакета је један од Ñајтова-копија +(mirror) \CTAN{}-a који Ñе аутоматÑки одређује преко +\url{http://mirror.ctan.org}. + +Ðко не желите да кориÑтите овај ÑиÑтем, вредноÑÑ‚ локације може да +буде путања (URL) која почиње Ñа \texttt{ftp:}, \texttt{http:} или +\texttt{file:/}, или пак да буде обична путања до локалног +директоријума. (Када задајете \texttt{http:} или \texttt{ftp:}, +завршни знак „\texttt{/}“ и/или завршни текÑÑ‚ +„\texttt{/tlpkg}“ Ñе игноришу.) + +Ðа пример, можете да изаберете неки поÑебан \CTAN\ mirror отприлике +овако: +\url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +Ñтављајући право име Ñервера (hostname) и његову Ñпецифичну путању до +\CTAN-Ñадржаја умеÑто |ctan.example.org/tex-archive|. Увек Ñвежа +лиÑта Ñервера\char"0304\ који држе Ñвеже копије Ñадржаја \CTAN-а +налази Ñе на \url{http://ctan.org/mirrors}. + +Ðко је задата вредноÑÑ‚ локална (путања или URL који почиње Ñа +\texttt{file:/}), употребиће Ñе Ñпаковани фајлови из поддиректоријума +\dirname{archive} у репозиторијуму (чак и у Ñлучају да Ñу раÑпаковани +фајлови доÑтупни упоредо Ñа њима). + + +\subsection{ПоÑтинÑталациони задаци} +\label{sec:postinstall} + +Може Ñе деÑити да је потребно урадити нешто и поÑле инÑталације. + + +\subsubsection{СиÑтемÑке променљиве на Unix-у} +\label{sec:env} + +Ðко Ñте изабрали да Ñе направе Ñимболички линкови у Ñтандардним +директоријумима (као што је објашњено у одељку~\ref{sec:options}), +онда нема потребе да Ñе преправљају ÑиÑтемÑке променљиве.% +\footnote{\textserbian{\emph{СиÑтемÑка променљива} је +превод израза \textenglish{\emph{environment variable}}. Други могући +превод био би \emph{променљива из окружења}, али Ñмо Ñе одлучили да +избегнемо ту конÑтрукцију зато што је она по нашем мишљењу (1) мање +јаÑна кориÑницима \Windows{}-а и зато што (2) обе имају мање-више +иÑто значење у пракÑи --- \emph{прим. прев.}}} У Ñупротном Ñе на Unix +ÑиÑтемима директоријум Ñа програмима за Ваш оперативни ÑиÑтем мора +додати у путању за претрагу. (Ðа \Windows-у о овоме инÑталер Ñам води +рачуна.) + +Сваки подржани оперативни ÑиÑтем има Ñвој поддиректоријум унутар +\dirname{TEXDIR/bin}. Ðа Ñлици~\ref{fig:bin-text} можете да видите +ÑпиÑак поддиректоријума и одговарајућих платформи. + +По избору можете да додате и директоријуме Ñа man-Ñтраницама и +Info-документацијом у одговарајуће путање за претрагу, уколико желите +да ÑиÑтемÑке алатке могу да их уоче. Може Ñе деÑити да man-Ñтранице +поÑтану аутоматÑки доÑтупне и поÑле проширивања ÑпиÑка путања из +ÑиÑтемÑке променљиве \envname{PATH}. + +Ðко кориÑтите шкољку (shell) компатибилну Ñа Bourne као што је +\prog{bash} и Intel x86 GNU/Linux и ако Ñте задржали подразумевани +раÑпоред директоријума као у нашем примеру, фајл који треба да +уредите требало би да буде \filename{$HOME/.profile} (или неки други +фајл који Ñе позива из \filename{.profile}), а линије које треба +додати изгледале би овако: + +\begin{sverbatim} +PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} + +Ðко кориÑтите шкољку csh или tcsh, фајл који треба уредити обично је +\filename{$HOME/.cshrc}, а линије које треба додати изгледале би +овако: + +\begin{sverbatim} +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{sverbatim} + +Ðко у Ñвојим конфигурационим фајловима („који почињу Ñа тачком“) већ +имате нека подешавања ове врÑте, онда би наравно требало да уклопите +\TL\ директоријуме у већ поÑтојеће вредноÑти. + + +\subsubsection{СиÑтемÑке променљиве: глобална подешавања} +\label{sec:envglobal} + +Ðко желите да промене опиÑане у претходном одељку важе глобално и за +Ñваког новог кориÑника на ÑиÑтему, онда Ñте препуштени Ñами Ñеби; +напроÑто поÑтоји превише варијација од ÑиÑтема до ÑиÑтема у погледу +тога како и где Ñе ове Ñтвари подешавају. + +Можемо Вам дати два Ñавета: (1)~пробајте да потражите фајл +\filename{/etc/manpath.config} и да, ако поÑтоји, додате линије као +што Ñу ове: + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man +\end{sverbatim} + +Или, (2)~потра\char"0301 жите фајл \filename{/etc/environment}; у њему +би могле бити дефиниÑане путање за претрагу и друге подразумеване +ÑиÑтемÑке променљиве. + +ОÑим тога, у Ñвим директоријумима Ñа програмима на Unix ÑиÑтемима +прави Ñе Ñимболички линк \code{man} који показује према +\dirname{texmf/doc/man}. Ðеке варијанте програма \code{man}, као што +је Ñтандардни \code{man} на \MacOSX-у, аутоматÑки ће Ñе Ñнаћи Ñа +новом путањом; на тај начин ћете избећи потребу да било шта подешавате +на путањама за претрагу. + + +\subsubsection{Ðадоградње преко Интернета поÑле инÑталације Ñа \DVD-ја} +\label{sec:dvd-install-net-updates} + +Ðко Ñте инÑталирали \TL\ Ñа \DVD-ја и желите да поÑле тога преузимате +надоградње Ñа Интернета, потребно је да покренете ову команду --- али +\emph{тек пошто Ñте} проширили Ñвоју питању за претрагу (као што је +опиÑано у претходном одељку): + +\begin{alltt}> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +Ова команда говори програму \cmdname{tlmgr} да употреби оближњу +Ñајт-копију (\textenglish{mirror}) \CTAN-а за будуће надоградње. +Ðадоградње ће Ñе овим путем аутоматÑки обављати ако Ñте инÑталирали +\TL\ Ñа \DVD-ја, према опцији опиÑаној у одељку~\ref{sec:options}. + + +У Ñлучају проблема Ñа аутоматÑким избором најближег Ñајта, можете да +назначите неку поÑебну копију (\textenglish{mirror}) \CTAN-а Ñа ÑпиÑка +доÑтупног на \url{http://ctan.org/mirrors}. КориÑтите тачну путању до +поддиректоријума \dirname{tlnet} на том Ñајту, као што је урађено у +нашем примеру. + + +\htmlanchor{xetexfontconfig} % keep historical anchor working +\htmlanchor{sysfontconfig} +\subsubsection{Подешавање ÑиÑтемÑких фонтова за \XeTeX\ и Lua\TeX} +\label{sec:font-conf-sys} + +\XeTeX\ и Lua\TeX\ могу да кориÑте не Ñамо фонтове који Ñу укључени +у \TL, него и било који фонт инÑталиран на Вашем ÑиÑтему. Они то раде +на Ñличан, али не идентичан начин. + +Ðа \Windows-у Ñу фонтови укључени у \TL\ аутоматÑки доÑтупни \XeTeX-у. +Ðли, ако Ñте инÑталирали пакет \filename{xetex} на оперативном ÑиÑтему +компатибилним Ñа Unix-ом, морате да подеÑите ÑиÑтем тако да може да +пронађе фонтове из \TL-а према Ñтварном називу фонта, а не проÑто +према именима фајлова од којих Ñе фонт ÑаÑтоји. + +Како биÑмо олакшали овај задатак, када Ñе инÑталира пакет +\pkgname{xetex} (у иницијалној поÑтавци или накнадно) прави Ñе и +одговарајући конфигурациони фајл +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}. + +Како биÑте начинили фонтове из \TL{}-а видљивим за цео ÑиÑтем, +подразумевајући да имате одговарајућа овлашћења на ÑиÑтему, урадите +Ñледеће: +\begin{enumerate*} +\item прекопирајте фајл \filename{texlive-fontconfig.conf} у + \dirname{/etc/fonts/conf.d/09-texlive.conf}; +\item покрените \Ucom{fc-cache -fsv}. +\end{enumerate*} + +Ðко немате овлашћења да ово урадите или ако Вам је довољно да фонтови +из \TL{}-а буду видљиви Ñамо једном кориÑнику, можете да урадите +Ñледеће: +\begin{enumerate*} +\item прекопирајте \filename{texlive-fontconfig.conf} у + \filename{~/.fonts.conf}, где \filename{~} предÑтавља Ваш лични + директоријум; +\item покрените \Ucom{fc-cache -fv}. +\end{enumerate*} + +Команда \code{fc-list} ће излиÑтати називе Ñвих фонтова раÑположивих +на Вашем ÑиÑтему. Ðко је позовете помоћу +\code{fc-list : family style file spacing} (унеÑите аргументе баш у +том облику), биће приказане информације које ће Вам највероватније +бити веома кориÑне за рад. + + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context-mkiv} + +И „Ñтари“ \ConTeXt{} (Mark \acro{II}) и „нови“ \ConTeXt{} (Mark +\acro{IV}) требало би да раде без икаквих интервенција након +инÑталације \TL{}-а; тако би требало и да оÑтане ако за надоградње +будете кориÑтили Ñамо \verb+tlmgr+. + +Ипак, пошто \ConTeXt{} Mk\acro{IV} не кориÑти библиотеку \KPS{}, +неопходне Ñу неке ручне интервенције кад год ручно инÑталирате нове +фајлове (без \verb+tlmgr+). ПоÑле Ñваке такве инÑталације кориÑник +мора да покрене команду +\begin{sverbatim} +luatools --generate +\end{sverbatim} +како би оÑвежио кеширане радне податке које \ConTeXt{} чува на диÑку. +Ðаправљени фајлови Ñе Ñмештају у \code{TEXMFCACHE}; подразумевана +вредноÑÑ‚ ове променљиве у \TL-у је \verb+TEXMSYSVAR;TEXMFVAR+. + +\ConTeXt\ Mk\acro{IV} ће читати из Ñвих путања поменутих у +\verb+TEXMFCACHE+, а податке ће Ñмештати у прву путању у коју Ñе може +упиÑивати. Приликом читања, поÑледње уÑтановљено поклапање ће имати +предноÑÑ‚ у Ñлучају дуплираних кешираних података. + +Више информација можете наћи на +\url{http://wiki.contextgarden.net/Running_Mark_IV}. + + +\subsubsection{Укључивање локалних и личних макроа} +\label{sec:local-personal-macros} + +Ова тема је имплицтно већ начета у одељку~\ref{sec:texmftrees}: +\dirname{TEXMFLOCAL} (чија је подразумевана вредноÑÑ‚ +\dirname{/usr/local/texlive/texmf-local} или +\verb|%SystemDrive%\texlive\texmf-local| на \Windows-у) јеÑте меÑто +предвиђено за локалне фонтове и макрое који Ñе употребљавају на целом +ÑиÑтему, док је \dirname{TEXMFHOME} (чија је подразумевана вредноÑÑ‚ +\dirname{$HOME/texmf} или \verb|%USERPROFILE%\texmf|) намењен за +кориÑникове личне фонтове и макрое. Предвиђено је да Ñе ови +директоријуми не мењају од издања до издања и да нове верзије \TL{}-а +аутоматÑки узимају у обзир њихов Ñадржај. Стога је најбоље да Ñе +Ñуздржите од подешавања вредноÑти променљиве \dirname{TEXMFLOCAL} на +нешто што је превише удаљено од главног директоријума \TL{}-а, иначе +ћете морати ручно да мењате ту вредноÑÑ‚ за Ñвако будуће издање. + +У оба ова директоријума фајлови треба да буду раÑпоређени у +одговарајуће поддиректоријуме у Ñкладу Ñа \emph{Ñтруктуром \TeX{} +директоријума} (\TDS) --- погледајте \url{http://tug.org/tds} или +прегледајте фајл \filename{texmf/web2c/texmf.cnf}. Ðа пример, једна +\LaTeX{} клаÑа или пакет треба да Ñе Ñтаве у +\dirname{TEXMFLOCAL/tex/latex} или у \dirname{TEXMFHOME/tex/latex}, +или у неки поддиректоријум поменутих директоријума. + +ФункционалноÑÑ‚ директоријума \dirname{TEXMFLOCAL} завиÑи од тога да +ли је база података Ñа именима фајлова увек Ñвежа; у Ñупротном фајлови +неће моћи да Ñе пронађу. Базу можете оÑвежити командом +\cmdname{mktexlsr} или употребом дугмета „Поново поÑтави базу +података Ñа фајловима“ („\textenglish{Reinit file database}“) --- наћи +ћете га у језичку за конфигурацију програма \TeX\ Live Manager +(\prog{tlmgr}) када он ради у графичком (\GUI) режиму. + +Подразумевана вредноÑÑ‚ Ñваке ове променљиве једнака je једном поÑебном +директоријуму, као што је Ð¼Ð°Ð»Ð¾Ñ‡Ð°Ñ Ð¿Ð¾ÐºÐ°Ð·Ð°Ð½Ð¾. Ово правило није Ñтриктно. +Ðа пример, ако Вам је потребно да Ñе лако пребацујете навише и наниже +кроз разне верзије великих пакета, можете да одржавате више +директоријума (дрвета) за Ваше ÑопÑтвене потребе. То Ñе ради тако што +Ñе \dirname{TEXMFHOME} подеÑи као ÑпиÑак директоријума одвојених +зарезима, унутар заграда: + +\begin{verbatim} + TEXMFHOME = {/мој/дир1,/мојдир2,/неки/трећи/дир} +\end{verbatim} + +Одељак~\ref{sec:brace-expansion} Ñе детаљно бави прерачунавањем +заграда. + + +\subsubsection{Укључивање Ñпољних фонтова} + +ÐажалоÑÑ‚, ово је веома компликован задатак. Ðемојте ни да размишљате +о овоме уколико ниÑте вољни да Ñе удубите у најÑитније детаље +инÑталације \TeX{}-а. Ðе заборавите да прво прегледате шта Вам Ñтоји +на раÑполагању за Ñлободну употребу: погледајте +одељак~\ref{sec:tl-fonts}. + +Једна од алтернатива\char"0304\ које Вам Ñтоје на раÑполагању јеÑте +да кориÑтите \XeTeX\ или Lua\TeX\ (погледајте +одељак~\ref{sec:tex-extensions}); ови програми Вам омогућавају да +кориÑтите фонтове из оперативног ÑиÑтема без икакве инÑталације +унутар \TeX-а. + +Ðко ипак морате да Ñе упуÑтите у ову Ñложену материју, погледајте +\url{http://tug.org/fonts/fontinstall.html}: на тој Ñтрани Ñмо +најбоље што Ñмо могли покушали да опишемо неопходну процедуру. Ðко +Ñтрого одржавате Ñвоје локалне мапе фонтова, онда команда +\texttt{tlmgr generate updmap} \emph{може} бити кориÑна, нарочито +када Ñе пребацујете Ñа једног издања на друго; погледајте +документацију програма \cmdname{tlmgr}. + + +\subsection{ТеÑтирање инÑталације} +\label{sec:test-install} + +Ðакон што Ñте инÑталирали \TL{}, природно је да ћете желети да га +иÑпробате како биÑте могли да почнете Ñа израдом дивних докумената +и\slash или фонтова. + +Овај одељак опиÑује неке оÑновне поÑтупке за проверу функционалноÑти +новог ÑиÑтема. Овде ћемо дати команде за Unix-е; ако кориÑтите +\MacOSX{} или \Windows{}, вероватно ћете Ñве ове команде покретати +покренути кроз графички интерфејÑ, мада принцип оÑтаје иÑти. + +\begin{enumerate} + +\item Ðајпре проверите да ли можете да покренете Ñам програм + \cmdname{tex}: +\begin{alltt}> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live ...) +kpathsea version 6.0.1 +Copyright ... D.E. Knuth. +... +\end{alltt} +Ðко овде добијете поруку „command not found“ („команда Ñе не може +пронаћи“) умеÑто података о верзији \TeX-а и ауторÑким правима, или +ако је верзија коју видите Ñтарија, то највероватније значи да немате +иÑправан поддиректоријум \dirname{bin} као елемент у ÑиÑтемÑкој +променљиви \envname{PATH}. Погледајте како Ñе подешавају ÑиÑтемÑке +променљиве на ÑÑ‚Ñ€.~\pageref{sec:env}. + +\item Покушајте да обрадите оÑновни \LaTeX{} фајл: +\begin{alltt}> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-... (TeX Live ...) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +Ðко \LaTeX{} не уÑпе да пронађе \filename{sample2e.tex} или неки +други фајл, највероватније је у питању нека збрка Ñтарих и нових +ÑиÑтемÑких променљивих или конфигурационих фајлова; у таквим +Ñлучајевима Ñе препоручује да, за почетак, обришете вредноÑти Ñвих +ÑиÑтемÑких променљивих које имају везе Ñа \TeX-ом. (Ðко Вам треба +дубља анализа, може Ñе од Ñамог \TeX{} програма тражити да извеÑти +које путање употребљава за претрагу и шта притом уÑпева да пронађе; +погледајте одељак „ПоÑтупци за отклањање грешака“ +[\textenglish{debugging}] на ÑÑ‚Ñ€.~\pageref{sec:debugging}.) + +\item Затим прегледајте како изгледа документ који Ñте добили овом + обрадом: +\begin{alltt}> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +Требало би да Ñе појави нови прозор Ñа лепим документом који +објашњава неке оÑновне Ñтвари о \LaTeX{}-у. (Узгред, тај текÑÑ‚ је +врло кориÑно прочитати ако Ñте почетник.) Како би програм +\cmdname{xdvi} радио, морате имати покренут графички X Ñервер; ако X +не ради или ако је ÑиÑтемÑка променљива \envname{DISPLAY} неправилно +подешена, добићете грешку \samp{Can't open display} („Ðије могуће +отворити диÑплеј“). + +\item Ðаправите \PS{} фајл за штампање или гледање на екрану: +\begin{alltt}> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item Ðаправите \acro{PDF} умеÑто \dvi{} фајла; ова команда ће + обрадити \filename{.tex} фајл и директно направити \acro{PDF}: +\begin{alltt}> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item Прегледајте добијени \acro{PDF} фајл: +\begin{alltt}> \Ucom{gv sample2e.pdf} +\textrm{или:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +Ðи \cmdname{gv} ни \cmdname{xpdf} ниÑу укључени у \TL{}, тако да +морате да их Ñами одвојено инÑталирате. Погледајте +\url{http://www.gnu.org/software/gv} и +\url{http://www.foolabs.com/xpdf} ако Вам треба више информација о +овим програмима. Ðаравно, има још много других програма у којима +можете отварати \acro{PDF} фајлове. Ðко кориÑтите \Windows{}, +препоручујемо да пробате Sumatra PDF +(\url{http://blog.kowalczyk.info/software/sumatrapdf}). + +\item Може бити кориÑно да пробате и друге теÑÑ‚-фајлове оÑим +\filename{sample2e.tex}: + +\begin{ttdescription} +\item [small2e.tex:] једноÑтавнији документ него \filename{sample2e}; + Ñврха му је да минимализује величину података који Ñе обрађују ако Ñе + појаве неки проблеми; +\item [testpage.tex:] проверава понашање Вашег штампача (ивице, итд); +\item [nfssfont.tex:] Ñлужи да одштампате табеле фонтова и + одговарајуће теÑтове везане за њих; +\item [testfont.tex:] такође за табеле Ñа фонтовима, али кориÑти + оÑновни \TeX{}; +\item [story.tex:] најчиÑтији канонÑки теÑÑ‚-фајл за \TeX{} који Ñе + може направити; морате да откуцате \samp{\bs bye} када Ñе појави упит + Ñа звездицом (\code{*}) након што покренете \samp{tex story.tex}. +\end{ttdescription} + +\item Ðко Ñте инÑталирали пакет \filename{xetex}, можете да иÑпробате + да ли Ñу ÑиÑтемÑки фонтови видљиви за \XeTeX\ на овај начин: +\begin{alltt}> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926... +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +(Идентичан поÑтупак Ñе може употребити и за \filename{luatex}.) + +Ðко добијете поруку „Invalid fontname `Latin Modern Roman/ICU'\dots“ +(„ÐеиÑправно име фонта `Latin Modern Roman/ICU'\dots“), онда морате +да подеÑите ÑиÑтем тако да \XeTeX{} може да пронађе фонтове који Ñу +укључени у \TL. Погледајте одељак~\ref{sec:font-conf-sys}. + +\end{enumerate} + +\subsection{Додатни Ñофтвер који Ñе може преузети Ñа Интернета} + +Ðко Ñте нови у \TeX{}-у, или Вам из било ког разлога треба помоћ око +пиÑања докумената у \TeX{}-у или \LaTeX{}-у, молимо Ð’Ð°Ñ Ð´Ð° поÑетите +\url{http://tug.org/begin.html}: ту ћете наћи неке текÑтове који Ñу +веома добри као увод. + +Ово Ñу линкови ка Интернет-Ñтраницама Ñа још неким програмима који +би могли да Вам буду од кориÑти: +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/}; +\item[Perl] \url{http://www.perl.org/} Ñа додатним пакетима Ñа + \acro{CPAN}-а, \url{http://www.cpan.org/}. +\item[ImageMagick] \url{http://www.imagemagick.com}, за обраду Ñлика + и пребацивање из једног формата у други. +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, такође за обраду + Ñлика. +\item[Едитори Ñпецијализовани за \TeX] Овде имате велики избор и Ñве + завиÑи од Вашег укуÑа. Ево Ñамо неколико, по абецедном реду (неки од + побројаних програма раде Ñамо на \Windows{}-у): + \begin{itemize*} + \itemsep=.1em + \item \cmdname{GNU Emacs} је доÑтупан и у изворном облику за + \Windows{}: погледајте + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}. + \item \cmdname{Emacs} Ñа Auc\TeX-ом за \Windows{} доÑтупан је преко + \CTAN-a. Интернет-Ñтраница Auc\TeX-а је + \url{http://www.gnu.org/software/auctex}. + \item \cmdname{LEd} Ñе може набавити на + \url{http://mirror.ctan.org/support/LEd}. + \item \cmdname{SciTE} је доÑтупан на + \url{http://www.scintilla.org/SciTE.html}. + \item \cmdname{Texmaker} је Ñофтвер отвореног кода, доÑтупан на + \url{http://www.xm1math.net/texmaker}. + \item \cmdname{TexMakerX} је дериват (fork) \cmdname{Texmaker}-а и + укључује неке додатне могућноÑти; погледајте + \url{http://texmakerx.sourceforge.net}. + \item \cmdname{TeXnicCenter} је Ñофтвер отвореног кода, доÑтупан на + \url{http://www.texniccenter.org} и као део диÑтрибуције pro\TeX{}t. + \item \cmdname{TeXworks} је такође отворени Ñофтвер, доÑтупан на + \url{http://tug.org/texworks}; на \Windows{}-у и \MacOSX-у инÑталира + Ñе као део \TL-а. + \item \cmdname{Vim} је отворени Ñофтвер, доÑтупан преко + \url{http://www.vim.org}. + \item \cmdname{WinEdt} је „shareware“ доÑтупан на + \url{http://tug.org/winedt} или \url{http://www.winedt.com}. + \item \cmdname{WinShell} Ñе може набавити на + \url{http://www.winshell.de}. + \end{itemize*} +\end{description} +Још иÑцрпнији ÑпиÑак пакета и програма налази Ñе на +\url{http://tug.org/interest.html}. + + +\section{Специјализоване инÑталације} + +Претходни одељци бавили Ñу Ñе оÑновним процеÑом инÑталације. Сада +прелазимо на неке Ñпецијализоване Ñлучајеве. + +\htmlanchor{tlsharedinstall} +\subsection{ИнÑталације које дели више кориÑника или више компјутера} +\label{sec:sharedinstall} + +\TL{} је дизајниран тако га иÑтовремено могу употребљавати или више +кориÑника на неком ÑиÑтему или кориÑници који имају разне +оперативне ÑиÑтеме на некој компјутерÑкој мрежи. Ðко Ñе држите +Ñтандардног раÑпореда директоријума, подешавања не Ñадрже ниједну +фикÑирану путању: локације фајлова који Ñу потребни \TL{} програмима +проналазе Ñе релативно у одноÑу на Ñаме програме. Овакав приÑтуп +поÑтаје јаÑан ако погледате главни конфигурациони фајл +\filename{$TEXMFMAIN/web2c/texmf.cnf}, који Ñадржи овакве линије: +\begin{sverbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{sverbatim} +Ово значи да кориÑници других оперативних ÑиÑтема Ñамо треба да додају +директоријум који Ñадржи верзије програма за њихову платформу у Ñвоје +путање за претрагу како би добили поÑтавку Ñпремну за употребу. + +Ðа иÑти начин можете да инÑталирате \TL{} локално и да онда накнадно +премеÑтите целу хијерархију на неко друго меÑто на мрежи. + +За \Windows{} Ñмо припремили једноÑтавну Ñкрипту за мрежне +инÑталације по имену \filename{w32client}; можете је преузети на +Ñтраници \url{http://tug.org/texlive/w32client.html}. Она прави Ñва +потребна подешавања и пречице у менијима тако да можете да кориÑтите +поÑтојећу инÑталацију \TL{}-а на \acro{LAN} мрежи. Скрипта такође +поÑтавља и деинÑталациони програм \filename{w32unclient} који можете +наћи у иÑтом zip фајлу. Погледајте поменуту Интернет Ñтраницу ако Вам +је потребно више података о овом поÑтупку. + + +\htmlanchor{tlportable} +\subsection{ПреноÑиве инÑталације на USB-диÑку} +\label{sec:portable-tl} + +Ðко инÑталациони програм покренете Ñа параметром \code{-portable} +(или употребите команду \code{V} у текÑтуалном режиму, одноÑно ако +изаберете одговарајућу опцију у графичком режиму), направиће Ñе +потпуно затворена и ÑамоÑтална инÑталација \TL{}-а и биће изоÑтављена +интеграција Ñа оÑтатком ÑиÑтема. Такву инÑталацију можете да направите +директно на \USB{}-диÑку или да је на \USB{}-диÑк каÑније копирате. + +Као и обично, како биÑте покренули \TeX\ из овакве преноÑиве +инÑталације, морате да додате одговарајући директоријум Ñа програмима +у путању за претрагу у Ñвом терминалу. Ðа \Windows{}-у Вам двоÑтруки +клик миша на радну („tray“) иконицу даје избор између неколико +уобичајених задатака, као што је приказано на Ñледећој Ñлици: + +\medskip +\begin{center} + \tlpng{tray-menu}{4cm} +\end{center} +\smallskip + +\noindent Ставка „More\ldots“ објашњава како овај мени можете да +прилагодите Ñвојим потребама. + + +\htmlanchor{tlisoinstall} +\subsection{\ISO\ (или \DVD) инÑталације} +\label{sec:isoinstall} + +Ðко немате потребе да чеÑто надограђујете инÑталацију или да је мењате +на било који начин и\slash или имате неколико ÑиÑтема\char"0304\ на +којима је потребно кориÑтити \TL{}, може бити веома кориÑно да +направите \ISO\ одраз Ñвоје личне инÑталације \TL{}-а. Ова пракÑа може +бити веома добра зато што~је: + +\begin{itemize} +\itemsep=.01em +\item копирање \ISO\ фајла Ñа компјутера на компјутер много брже него + копирање обичне инÑталације; +\item ако имате компјутер Ñа више оперативних ÑиÑтема + (\textenglish{dual-boot}) и желите да Ñе инÑталација \TL{}-а кориÑти + на Ñвим тим ÑиÑтемима, \ISO-инÑталација није уÑловљена + ÑпецифичноÑтима и ограничењима Ñтраних ÑиÑтема (\acro{FAT32}, + \acro{NTFS}, \acro{HFS+}); +\item директан приÑтуп таквом \ISO\ одразу („\textenglish{mount}“) је + једноÑтаван на виртуелним машинама. +\end{itemize} + +Ðаравно, Ваш \ISO\ одраз може и да Ñе нареже на \DVD\ ако Вам је тако +згодније. + +ДеÑктоп ÑиÑтеми из \acro{GNU}/Linux/Unix породице, укључујући \MacOSX, +могу да приÑтупе Ñадржају \ISO\ одраза као обичном фајл-ÑиÑтему +(„\textenglish{mount}“). ОÑим тог детаља, ништа није другачије у +поређењу Ñа обичном инÑталацијом на хард-диÑку: погледајте +одељак~\ref{sec:env}. + +Када припремате такву \ISO\ инÑталацију, најбоље је да изоÑтавите +поддиректоријум који Ñе одноÑи на годину издања и да поÑтавите +\filename{texmf-local} на иÑти ниво Ñа другим дрветима +(\filename{texmf}, \filename{texmf-dist} итд). Ово можете да урадите +у инÑталеру кориÑтећи уобичајене опције за директоријуме. + +За реални (не виртуелни) \Windows{} ÑиÑтем можете да нарежете \ISO\ на +\acro{DVD}. Међутим, иÑплати Ñе одвојити мало времена и иÑпитати +могућноÑти директне употребе \ISO\ одраза\char"0304\ +(\ISO-\textenglish{mounting}) које нуди отворени Ñофтвер. ОÑим тога, +за \Windows{} \acro{XP} \textenglish{Microsoft} нуди +\filename{winxpvirtualcdcontrolpanel}. + +Ради боље интеграције Ñа ÑиÑтемом на \Windows{}-у можете да убаците и +Ñкрипте из групе \filename{w32client} +(опиÑане у одељку~\ref{sec:sharedinstall} и на Ñтраници +\url{http://tug.org/texlive/w32client.html}), које добро баратају и +\ISO\ инÑталацијама и инÑталацијама преко мреже. + +Ðа \MacOSX-у, програми TeXShop and \TeX{}works могу да кориÑте +\acro{DVD}-инÑталацију ако Ñимболички линк \filename{/usr/texbin} +показује на одговарајући директоријум Ñа програмима, на пример +\begin{verbatim} +sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin +\end{verbatim} + +ИÑторијÑка напомена: \TL{} 2010 био је први \TL{} који није био издат +„жив“ (\textenglish{live}). Ипак, увек је било потребно мало +акробација да би Ñе \TL{} кориÑтио Ñа \DVD-ја или из \ISO\ одраза; ово +Ñе поÑебно одноÑило на чињеницу да није поÑтојао згодан начин да Ñе +подеÑи барем још једна додатна ÑиÑтемÑка променљива. Ðко, међутим, +направите Ñвој ÑопÑтвени \ISO\ од поÑтојеће инÑталације, за овим +додатком неће бити потребе. + + +\htmlanchor{tlmgr} +\section{Одржавање инÑталације помоћу \cmdname{tlmgr}} +\label{sec:tlmgr} + +\begin{figure}[tb] +\begin{center} + \tlpng{tl2012-tlmgr-main-screen-freebsd-sr}{\linewidth} + \caption{\prog{tlmgr} у графичком (\GUI) режиму рада: главни + прозор, Ñтање поÑле учитавања\\ репозиторијума помоћу дугмета „Учитај“ + („Load“).} +\label{fig:tlmgr-gui} +\end{center} +\end{figure} + +\begin{figure}[tb] +\begin{minipage}[t]{.56\linewidth} + \null + \tlpng{tl2012-tlmgr-options-freebsd-sr}{\hsize} + \caption{\texttt{tlmgr} у графичком режиму: Општа подешавања} + \label{fig:tlmgr-general-options} +\end{minipage} + \hfil +\begin{minipage}[t]{.39\linewidth} + \null + \tlpng{tl2012-tlmgr-paper-options-freebsd-sr}{\hsize} + \caption{\texttt{tlmgr} у графичком режиму: Подешавање величине + папира} + \label{fig:tlmgr-paper-options} +\end{minipage} +\end{figure} + +\TL{} Ñадржи програм по имену \prog{tlmgr} који Ñлужи за одржавање +\TL{}-а након почетне инÑталације. Програми \prog{updmap}, +\prog{fmtutil} и \prog{texconfig} и даље Ñу укључени и биће задржани +као део ÑиÑтема и у будућноÑти, али \prog{tlmgr} је Ñада алатка која +Ñе препоручује. Његове могућноÑти између оÑталог укључују: + +\begin{itemize*} +\item инÑталацију, оÑвежавање, бекаповање, повраћање из бекапа, + уклањање појединачних пакета Ñа могућношћу да Ñе узму у обзир Ñа њима + повезани пакети; +\item претрагу и прављење разних ÑпиÑкова пакета; +\item излиÑтавање, додавање и уклањање верзија програма за неки + оперативни ÑиÑтем (одноÑно платформу); +\item промену параметара инÑталације као што Ñу величина папира или + локација изворног кода (погледајте одељак~\ref{sec:location}). +\end{itemize*} + +\subsection{\cmdname{tlmgr} у графичком (GUI) режиму рада} +\prog{tlmgr} Ñе може покренути у графичком (\GUI{}) режиму + (Ñлика~\ref{fig:tlmgr-gui}) помоћу +\begin{alltt}> \Ucom{tlmgr -gui} +\end{alltt} +(ÑрпÑки језик добијате помоћу \Ucom{-gui-lang sr}) или преко +Start-менија на \Windows{}-у: \texttt{Start}, \texttt{Programs}, +\texttt{TeX Live 2012}, \texttt{TeX Live Manager}. Када притиÑнете +„Учитај“ („Load“), програм приказује ÑпиÑак доÑтупних и инÑталираних +пакета. Овде Ñе наравно подразумева да је извор инÑталације +(\textenglish{installation source}) иÑправно задат, функционалан и +доÑтупан. + +Слике~\ref{fig:tlmgr-general-options} и~\ref{fig:tlmgr-paper-options} +приказују изглед програма приликом подешавања општих опција и +величине папира. + +\subsection{Примери позивања \cmdname{tlmgr}-а Ñа командне линије} + +Ðакон почетне инÑталације, можете да оÑвежите Ñвој ÑиÑтем најновијим +доÑтупним верзијама целокупног Ñадржаја помоћу: +\begin{alltt}> \Ucom{tlmgr update -all} +\end{alltt} +Ðко Ð’Ð°Ñ Ð¾Ð²Ð¾ чини нервозним, прво пробајте +\begin{alltt}> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +или (Ñа мање објашњења): +\begin{alltt}> \Ucom{tlmgr update -list} +\end{alltt} + +Следећи Ñложенији пример додаје једну колекцију (Ñве што је везано за +\XeTeX), и то из једног локалног директоријума: + +\begin{alltt}> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +Ова команда даје Ñледеће поруке (Ñкраћено): +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2012/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} + +Као што видите, \prog{tlmgr} инÑталира Ñве неопходне пакете и води +рачуна о Ñвим радњама које Ñу неопходне поÑле инÑталације, што у овом +Ñлучају обухвата оÑвежавање базе података Ñа именима фајлова и +поновно прављење неких формата. У претходном примеру Ñмо направили +нове формате за \XeTeX. + +Ðко Вам је потребан Ð¾Ð¿Ð¸Ñ Ð¿Ð°ÐºÐµÑ‚Ð° (или колекције или шеме), откуцајте: +\begin{alltt}> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +Команда даје Ñледећи излаз: +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +ПоÑледње и најважније, пуна документација о програму \prog{tlmgr} +налази Ñе на Ñтраници \url{http://tug.org/texlive/tlmgr.html}, а +можете је видети и ако откуцате: +\begin{alltt}> \Ucom{tlmgr -help} +\end{alltt} + + +\section{Ðапомене за Windows} +\label{sec:windows} + +\subsection{МогућноÑти Ñпецифичне за Windows} +\label{sec:winfeatures} + +ОÑим онога што је опиÑано у претходним одељцима, инÑталациони програм +на \Windows{}-у обавља још неке додатне Ñтвари: +\begin{description} +\item[Менији и пречице.] У Start менију Ñе додаје нови одељак + „\TL{}“, преко кога Ñе могу позивати неки графички (\GUI{}) програми + (\prog{tlmgr}, \prog{texdoctk}, PS\_View (\prog{psv}) PostScript + previewer) и преко кога можете да дођете до једног дела + документације. +\item[Повезивање клаÑа докумената Ñа одговарајућим програмима.] Ðко Ñу + инÑталирани, \prog{TeXworks}, \prog{Dviout} и \prog{PS\_view} поÑтају + или подразумевани програми за одговарајуће клаÑе докумената или + добијају Ñтавку у менију „\textenglish{Open with}“ („отвори помоћу“), + који Ñе добија када документима поменутих клаÑа приÑтупите притиÑком + на деÑно дугме миша. +\item[Превођење бит-мапа у eps формат.] Разни формати који за оÑнову + имају бит-мапе добијају Ñтавку \cmdname{bitmap2eps} у Ñвом менију + „\textenglish{Open with}“ („отвори помоћу“), који Ñе добија притиÑком + на деÑно дугме миша. Bitmap2eps је једноÑтавна Ñкрипта која омогућава + да \cmdname{sam2p} и \cmdname{bmeps} обаве главни део поÑла. +\item[ÐутоматÑко подешавање путања.] Ðије потребна никаква ручна + интервенција по овом питању. +\item[Уклањање \TL{}-а.] ИнÑталациони програм додаје одговарајућу + Ñтавку за \TL{} у „\textenglish{Add/Re\-mo\-ve Programs}“. Дугме + за деинÑталацију у графичком (\GUI) режиму програма + \textenglish{\TeX\ Live Manager} („Уклони“) води до тамо. +\end{description} + +\subsection{Додатни Ñофтвер укључен на Windows-у} + +За целовиту инÑталацију \TL-а потребни Ñу помоћни пакети који обично +не поÑтоје на \Windows{} компјутеру. \TL{} обезбеђује Ñледеће карике +које недоÑтају: +\begin{description} +\item[Perl и Ghostscript.] Због важноÑти Perl-а и Ghostscript-а, + \TL{} Ñадржи „Ñкривене“ копије ових програма. \TL{} програми који их + кориÑте знају где треба да их потраже, али не одају њихово приÑуÑтво + кроз ÑиÑтемÑке променљиве или путем измена у „registry“-ју. То ниÑу + целовите инÑталације и не би требало да дођу у Ñукоб Ñа неком правом + инÑталацијом Perl-а или Ghostscript-а која је \Windows{}-у видљива. + +\item[PS\_View.] Такође Ñе инÑталира и PS\_View, програм у коме Ñе + могу отворити \PS{} и \acro{PDF} фајлови; погледајте + Ñлику~\ref{fig:psview}. + +\begin{figure}[tb] +\begin{center} + \tlpng{psview}{.6\linewidth} + \caption{PS\_View може да приказује Ñадржај под великим + увећањем}\label{fig:psview} +\end{center} +\end{figure} + +\item[dviout.] Ðа \Windows{}-у Ñе инÑталира и \prog{dviout}, програм + у коме можете да прегледате \acro{DVI} фајлове. У почетку, када + почнете да га употребљавате за ту Ñврху, \prog{dviout} ће правити + потребне фонтове (зато што фонтови за екран ниÑу инÑталирани). ПоÑле + неког времена у употреби, направиће Ñе већина фонтова која Вам је + потребна и ретко ћете виђати прозор који Ð’Ð°Ñ Ð¾Ð±Ð°Ð²ÐµÑˆÑ‚Ð°Ð²Ð° о овом + поÑтупку. О овом програму можете добити много више података на + Интернет Ñтраници (коју топло препоручујемо). + +\item[\TeX{}works.] \TeX{}works је едитор Ñпецијализован за \TeX; он + има уграђен приказивач \acro{PDF} фајлова. + +\item[Ðлатке за командну линију.] ОÑим уобичајених \TL{} програма, на + \Windows{}-у Ñе инÑталира и извеÑтан број \Windows{} + верзија\char"0304\ уобичајених Unix алатки за командну линију. Ту + Ñпадају \cmdname{gzip}, \cmdname{unzip} и алати из пројекта + \cmdname{xpdf} (\cmdname{pdfinfo}, \cmdname{pdffonts}...). + Са\char"0302 м \cmdname{xpdf} \textenglish{viewer} (прегледач) нема + верзију која ради на \Windows{}-у. Jедна алтернатива јеÑте да умеÑто + њега преузмете Sumatra \acro{PDF} viewer, који је заÑнован на + \cmdname{xpdf}-у; Интернет-Ñтраница пројекта је + \url{http://blog.kowalczyk.info/software/sumatrapdf}. + +\item[fc-list, fc-cache...] Ðлатке из библиотеке fontconfig + омогућавају \XeTeX{}-у да барата ÑиÑтемÑким фонтовима на + \Windows{}-у. Можете да кориÑтите \prog{fc-list} да одредите имена + фонтова која задајете у \XeTeX-овој проширеној команди \cs{font}. Ðко + је потребно, најпре покрените \prog{fc-cache} како би Ñе подаци о + фонтовима оÑвежили. + +\end{description} + + +\subsection{Лични кориÑнички директоријум на Windows-у} +\label{sec:winhome} + +Еквивалент Unix-овом личном директоријуму кориÑника (home) на +\Windows{}-у јеÑте директоријум \verb|%USERPROFILE%|. Ðа \Windows{}-у +\acro{XP} то је обично \verb|C:\Documents and Settings\|, +док \Windows{} Vista кориÑти \verb|C:\Users\|. У фајлу +\filename{texmf.cnf} и у \KPS{} уопште, Ñимбол \verb|~| ће Ñе +претворити у иÑправну путању и на \Windows{}-у и на Unix-у. + + +\subsection{Windows-ов „registry“} +\label{sec:registry} + +\Windows{} држи Ñкоро Ñва подешавања у тзв. „registry“-ју. То +Ñкладиште Ñадржи Ñкуп хијерархијÑки организованих кључева, Ñа +неколико кључева највишег нивоа. Ðајважнији за инÑталационе програме +Ñу \path{HKEY_CURRENT_USER} и \path{HKEY_LOCAL_MACHINE}, или Ñкраћено +\path{HKCU} и \path{HKLM}. Део „registry“-ја \path{HKCU} налази Ñе у +личном директоријуму кориÑника (погледајте одељак~\ref{sec:winhome}). +\path{HKLM} Ñе обично налази у поддиректоријуму директоријума званог +\Windows{}. + +У неким Ñлучајевима, информације о ÑиÑтему Ñе могу добити из +ÑиÑтемÑких променљивих, али неке, на пример локација +пречица\char"0304, и даље захтевају да Ñе конÑултује „registry“. +Трајно подешавање ÑиÑтемÑких променљивих такође захтева приÑтуп +„registry“-ју. + + +\subsection{Овлашћења на Windows-у} +\label{sec:winpermissions} + +У новијим верзијама \Windows{}-а поÑтоји разлика између обичних +кориÑника и админиÑтратора; Ñамо админиÑтратори имају Ñлободан +приÑтуп целом оперативном ÑиÑтему. У пракÑи би, међутим, боље било +опиÑати ове клаÑе кориÑника као неовлашћене и обичне кориÑнике: бити +админиÑтратор је правило, а не изузетак. Без обриза на то, уложили +Ñмо доÑта напора да омогућимо да Ñе \TL{} може инÑталирати без +админиÑтраторÑких овлашћења. + +Ðко је кориÑник админиÑтратор, доÑтупна му је опција да инÑталира +\TL{} за Ñве кориÑнике. Ðко изабере да ово уради, пречице Ñе праве за +Ñве кориÑнике и мењају Ñе поÑтавке на нивоу ÑиÑтема. У Ñупротном, +пречице и одељци у менију праве Ñе Ñамо за текућег кориÑника и мења +Ñе Ñамо његово окружење. + +Без обзира на то да ли кориÑник има ÑÑ‚Ð°Ñ‚ÑƒÑ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратора или не, +подразумевани оÑновни директоријум за \TL{} који предлаже инÑталациони +програм увек је унутар \verb|%SystemDrive%|. Програм увек теÑтира да +ли тренутни кориÑник може да упиÑује податке у тај оÑновни директоријум. + +Може Ñе појавити проблем ако кориÑник није админиÑтратор а \TeX{} већ +поÑтоји у путањи за претрагу програма. Пошто Ñе радна путања за +претрагу ÑаÑтоји од ÑиÑтемÑког дела иза кога Ñледи кориÑнички део Ñа +Ñвојим путањама, нови \TL{} никад неће добити предноÑÑ‚. Како би Ñе +решила ова Ñитуација, инÑталациони програм прави пречицу до командног +промпта у коме Ñу нови \TL{} програми Ñтављени иÑпред локалне путање +за претрагу. Ðови \TL{} ће увек бити употребљив унутар таквог +командног промпта. Пречица за \TeX{}works, ако Ñе тај програм +инÑталира, такође додаје \TL{} на почетак путање за претрагу, тако да +би и тај едитор требало да буде имун на ове проблеме Ñа путањама. + +Ðа \Windows-у Vista и 7 поÑтоји још једна оÑобеноÑÑ‚: чак иако Ñте +улоговани као админиÑтратор, морате да изричито затражите +админиÑтраторкÑе привилегије. У Ñтвари, нема много Ñврхе да узимате +улогу правог админиÑтратора. УмеÑто тога, кликните деÑним дугметом +миша на програм који желите да покренете или на његову пречицу, и то +ће Вам у нормалним околноÑтима дати могућноÑÑ‚ да „покренете програм +као админиÑтратор“ („\textenglish{Run as administrator}“). + +\subsection{Увећавање макÑимума доÑтупне меморије на Windows-у и + Cygwin-у} +\label{sec:cygwin-maxmem} + +КориÑницима \Windows{}-а и Cygwin-а (погледајте +одаљак~\ref{sec:cygwin} о ÑпецифичноÑтима инÑталације на Cygwin-у) +може да Ñе деÑи да оÑтану без меморије када покрећу неке програме +укључене у \TL. Ðа пример, \prog{asy} може да оÑтане без меморије ако +покушате да заузмете низ (array) од 25.000.000 реалних бројева, а +Lua\TeX\ може да оÑтане без меморије ако покушавате да обрадите +документ Ñа много великих фонтова. + +Што Ñе тиче Cygwin-а, можете да увећате раÑположиву меморију ако +пратите одговарајућа упутÑтва из њиховог водича за кориÑнике (Cygwin +User's Guide --- +\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}). + +Ðа \Windows{}-у морате да направите један додатни фајл, рецимо +\code{moremem.reg}, који Ñадржи Ñледеће четири линије: + +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +\noindent и да онда извршите команду \code{regedit /s moremem.reg} +као админиÑтратор. (Ðко желите да увећате меморију Ñамо за тренутног +кориÑника умеÑто на целом ÑиÑтему, употребите кључ +\code{HKEY\_CURRENT\_USER}.) + + +\section{КориÑнички водич кроз Web2C} + +\Webc{} је интегриÑана колекција програма везаних за \TeX: +Ñа\char"0302 м \TeX{}, \MF{}, \MP, \BibTeX{}, итд. \Webc{} је Ñрце +\TL{}-а. Интернет-Ñтраница пројекта, на којој Ñе налази најновији +приручник и много других Ñтвари, налази Ñе на +\url{http://tug.org/web2c}. + +Мало иÑторије: првобитну имплементацију је направио Ð¢Ð¾Ð¼Ð°Ñ Ð Ð¾ÐºÐ¸Ñ†ÐºÐ¸ +[\textgerman{Tomas Rokicki}], који је 1987. развио први „\TeX{}-у-C“ +разрадивши изворну Unix верзију, оригинални рад Хауарда Трикија +[\textenglish{Howard Trickey}] и Павела КертиÑа [\textenglish{Pavel +Curtis}]. + +Одржавање ÑиÑтема је наÑтавио Тим Морган [\textenglish{Tim +Morgan}] и током тог периода име је промењено у Web-to-C\@. 1990. +године рад је преузео Карл Бери [\textenglish{Karl Berry}] који је уз +помоћ више деÑетина Ñарадника одржавао пројекат до 1997, када је +предао штафету Олафу Веберу [\textenglish{Olaf Weber}], који је +руковођење вратио Карлу 2006. године. + +\Webc{} ÑиÑтем ради на Unix-у, 32-битним \Windows{} ÑиÑтемима, +\MacOSX{}-у и многим другим оперативним ÑиÑтемима. Он кориÑти +оригинални Кнутов [\textenglish{Knuth}] ко\char"0302 д за \TeX{} и +друге оÑновне програме напиÑане у „\web{} ÑиÑтему за пиÑмено +програмирање“ (\web{} literate programming system) и преводи их у +језик C. Језгро ÑаÑтављено од \TeX{} програма\char"0304\ који Ñе +третирају на овај начин чине: + +\begin{cmddescription} +\item[bibtex] Рад Ñа библиографијама. +\item[dvicopy] Рад Ñа виртуелним фонтовима у \dvi{} фајловима. +\item[dvitomp] Претвара \dvi{} у \acro{MPX} (\MP{} Ñлике). +\item[dvitype] Претвара \dvi{} у читљив текÑÑ‚. +\item[gftodvi] Визуализација изворних (\textenglish{generic}) + фонтова. +\item[gftopk] Претвара изворне (generic) у Ñпаковане (packed) + фонтове. +\item[gftype] Претвара \acro{GF} (изворне фонтове) у читљив текÑÑ‚. +\item[mf] Програм за прављење породица\char"0304\ фонтова + (typeface families). +\item[mft] „Лепо штампање“ (prettyprinting) \MF{} + ко\char"0302 да +\item[mpost] Програм за прављење техничких дијаграма. +\item[patgen] Програм за прављење правила\char"0304\ за прелом + речи\char"0304\ (\textenglish{hyphenation patterns}). +\item[pktogf] Претвара Ñпаковане (packed) у изворне (generic) + фонтове. +\item[pktype] Претвара \acro{PK} у читљив текÑÑ‚. +\item[pltotf] Претвара текÑтуални ÑпиÑак оÑобина фонта у acro{TFM}. +\item[pooltype] Приказује \web{} pool фајлове. +\item[tangle] Преводи \web{} ко\char"0302 д у језик Pascal. +\item[tex] Припрема текÑта. +\item[tftopl] Претвара \acro{TFM} у текÑтуални ÑпиÑак оÑобина фонта. +\item[vftovp] Претвара виртуелни фонт у виртуелни ÑпиÑак + оÑобина\char"0304. +\item[vptovf] Претвара виртуелни ÑпиÑак оÑобина\char"0304\ у + виртуелни фонт. +\item[weave] Преводи \web{} ко\char"0302 д у \TeX. +\end{cmddescription} + +\noindent Прецизне функције и ÑинтакÑа ових програма опиÑани Ñу у +документацији која долази уз одговарајуће пакете, као и уз +Ñа\char"0302 м \Webc{}. Међутим, кориÑно је знати неколико +заједничких принципа који важе за Ñве њих зато што на тај начин +можете боље да иÑкориÑтите Ñвоју \Webc{} инÑталацију. + +Сви ови програми поштују ове Ñтандардне \GNU параметре: +\begin{ttdescription} +\item[-{}-help] штампање оÑновног прегледа употребе. +\item[-{}-verbose] штампање детаљнијег извештаја о раду. +\item[-{}-version] штампање података о верзији, иза кога Ñледи + напуштање програма. +\end{ttdescription} + +Да би одредили положај разних фајлова, \Webc{} програми кориÑте +библиотеку за претрагу \KPS{} (\url{http://tug.org/kpathsea}). Ова +библиотека кориÑти комбинацију ÑиÑтемÑких променљивих и +конфигурационих фајлова како би оптимизовала претрагу кроз (огромни) +Ñадржај \TeX{} ÑиÑтема. \Webc{} може да упоредо кориÑти више +хијерархија за претрагу, што је кориÑно за одржавање Ñтандардних +диÑтрибуција \TeX-а упоредо Ñа локалним и личним проширењима у +одвојеним директоријумима. Како би Ñе претраживање убрзало, +директоријум највишег нивоа у Ñвакој хијерархији има фајл \file{ls-R} +који Ñадржи запиÑе ÑаÑтављене од и\char"030F мена и релативне путање +за Ñве фајлове који Ñе налазе ниже по хијерархији у том директоријуму. + + +\subsection{Проналажење фајлова помоћу Kpathsea} +\label{sec:kpathsea} + +Опишимо најпре механизам трагања који кориÑти библиотека \KPS{}. + +\emph{Путањом за претрагу} (search path) називамо ÑпиÑак +\emph{елемената путање} раздвојених двотачком или тачка-зарезом; ти +елементи Ñу обично имена директоријума, мада путања за претрагу може +да Ñе ÑаÑтави од елемената који потичу из разних извора. Када тражи +фајл \samp{my-file} по путањи \samp{.:/dir}, \KPS{} проверава један +по један Ñваки елемент путање: прво \file{./my-file}, затим +\file{/dir/my-file}, и враћа први погодак (уз могућноÑÑ‚ да врати и +Ñве поготке одједном). + +Како би Ñе оптимално прилагодила конвенцијама Ñвих оперативних +ÑиÑтема, на ÑиÑтемима који ниÑу Ñродни Ñа Unix-ом \KPS{} може да +кориÑти и друге Ñепараторе а не Ñамо двотачку (\samp{:}) и коÑу црту +(\samp{/}). + +Када проверава поједини елемент путање \var{p}, \KPS{} прво проверава +да ли Ñе унапред припремљена база података (погледајте „База података +Ñа именима фајлова“ на Ñтрани~\pageref{sec:filename-database}) може +употребити за \var{p}, тј. да ли Ñе база података налази у +директоријуму који је Ð¿Ñ€ÐµÑ„Ð¸ÐºÑ Ð¾Ð´ \var{p}. Ðко је то Ñлучај, задата +путања Ñе ра\char"0300 вна\char"0304\ према Ñадржају базе података. + +Ðко база података не поÑтоји или ако Ñе не може применити на задати +елемент путање или ако у њој нема Ñлагања, претражује Ñе реални +фајл-ÑиÑтем (ако то није забрањено Ñпецификацијом која почиње Ñа +\samp{!!}\ или ако је задато да фајл који Ñе тражи „мора да поÑтоји“). +\KPS{} конÑтруише ÑпиÑак директоријума који одговарају овом елементу +путање и затим тражи задати фајл у Ñваком од~њих. + +УÑлов „фајл мора да поÑтоји“ одноÑи Ñе пре Ñвега на \samp{.vf} +фајлове и на улазне фајлове који Ñе читају \TeX-овом командом +\cs{openin}. Може Ñе деÑити да такви фајлови не поÑтоје (нпр. +\file{cmr10.vf}) па би Ñтога било погрешно претраживати диÑк. Дакле, +ако Ñе деÑи да пропуÑтите да оÑвежите \file{ls-R} када инÑталирате +нови \samp{.vf} фајл, он никад неће бити пронађен. У Ñваком пролаÑку +Ñе проверава по један елемент путање: најпре база података, затим +диÑк. Ðко Ñе нађе оно што је задато, претрага Ñе зауÑтавља и враћа Ñе +резултат. + +Премда је најједноÑтавнији и најуобичајенији елемент путање име +директоријума, \KPS{} подржава и додатне могућноÑти у путањама за +претрагу: „рашчлањене“ подразумеване вредноÑти (\textenglish{layered +default values}, одноÑно вредноÑти које имају предноÑÑ‚ једна у одноÑу +на другу завиÑно од извора у одноÑу на који Ñе кориÑте), имена +ÑиÑтемÑких променљивих, вредноÑти из конфигурационих фајлова, личне +директоријуме кориÑника\char"0304, као и наредбе за рекурзивно +претраживање поддиректоријума\char"0304. Стога кажемо да \KPS{} +\emph{прерачунава}\footnote{\textserbian{\emph{Прерачунавање} је +превод израза \textenglish{\emph{expanding}; генерално Ñе ради о +замени неког једноÑтавног израза неким компликованијим Ñадржајем до +кога Ñе долази одговарајућим алгоритмом; Ñтога, у завиÑноÑти од +контекÑта, може да значи и \emph{рашчлањавање} и \emph{проширивање}} +--- \emph{прим. прев.}}} елемент путање, што значи да он транÑформише +Ñве Ñпецификације у оÑновно име (или имена) директоријума. Ово је +опиÑано у наредним одељцима у иÑтом поретку у коме Ñе претрага и врши. + +Обратите пажњу на један детаљ: ако је име фајла који Ñе тражи +апÑолутно или изричито задато у релативном облику, тј. ако почиње Ñа +\samp{/}, \samp{./} или \samp{../}, \KPS{} проÑто проверава да ли тај +фајл поÑтоји. + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{ИлуÑтративни пример конфигурационог фајла} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{Извори путања} +\label{sec:path-sources} + +Путања за претрагу може имати разне изворе. Ово је редоÑлед у коме их +\KPS{} кориÑти: + +\begin{enumerate} +\item СиÑтемÑке променљиве подешене од Ñтране кориÑника, на пример +\envname{TEXINPUTS}\@. СиÑтемÑке променљиве које Ñадрже име програма + придодато на крају иза тачке добијају предноÑÑ‚; нпр. ако је име + покренутог програма \samp{latex}, онда ће \envname{TEXINPUTS.latex} + имати предноÑÑ‚ у одноÑу на \envname{TEXINPUTS}. +\item Конфигурациони фајл Ñпецифичан за поједини програм, нпр. линија + \samp{S /a:/b} у фајлу \file{config.ps} који припада програму + \cmdname{dvips}. +\item Конфигурациони фајл \file{texmf.cnf} који припада \KPS{}-у, и + који Ñадржи линију као што је \samp{TEXINPUTS=/c:/d} (погледајте + ниже). +\item ВредноÑÑ‚ задата у време компајлирања. +\end{enumerate} +\noindent Како Ñе према Ñвакој од набројаних Ñтавки формирају +вредноÑти за неку задату путању можете да пратите ако употребите +опцију за отклањање грешака (\textenglish{debugging}) --- погледајте +одељак „ПоÑтупци за отклањање грешака“ на +Ñтрани~\pageref{sec:debugging}). + +\subsubsection{Конфигурациони фајлови} + +\KPS{} чита конфигурационе фајлове назване \file{texmf.cnf} (ови +фајлови Ñу предвиђени да Ñе читају Ñамо када програми раде) и из њих +узима путању за претрагу и друге дефиниције. Путања за претрагу која +Ñе кориÑти да Ñе Ñа\char"0301 ми ови фајлови лоцирају зове Ñе +\envname{TEXMFCNF}, али ми не препоручујемо да поÑтављате ову (нити +било коју другу) ÑиÑтемÑку променљиву. + +УмеÑто тога, уобичајени инÑталациони Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð´Ð¾Ð²Ð¾Ð´Ð¸ до обликовања +фајла \file{.../2012/texmf.cnf}. Ðко морате да начините неке промене +вредноÑти\char"0304\ које Ñу тамо упиÑане као подразумеване (што +обично није потребно), онда је овај фајл меÑто где те вредноÑти треба +упиÑати. Главни конфигурациони фајл је +\file{.../2012/texmf/web2c/texmf.cnf}; њега не би требало да +преправљате зато што ће Ñе промене изгубити када Ñе верзија +инÑталирана путем диÑтрибуције оÑвежи. + +\emph{Сви} фајлови названи \file{texmf.cnf} који Ñе нађу у путањи за +претрагу биће прочитани и дефиниције из претходних фајлова биће +замењене онима на које Ñе каÑније наиђе. Ðа пример, ако је путања за +претрагу \verb|.:$TEXMF|, вредноÑти из \file{./texmf.cnf} имају +предноÑÑ‚ у одноÑу на оне из \verb|$TEXMF/texmf.cnf|. + +\begin{itemize*} +\item + Коментари почињу Ñа \code{\%} и наÑтављају Ñе до краја линије. +\item + Празне линије Ñе преÑкачу. +\item + Симбол \bs{} на крају линије има улогу ознаке за наÑтавак, тј. + Ñледећа линија Ñе придодаје на текућу. Размаци + (\textenglish{whitespace}\footnote{\textserbian{Израз + \emph{whitespace} означава Ñве врÑте „провидних знакова“, пре Ñвега + размак („\textenglish{space}“) и „Tab“ --- \emph{прим. прев.}}}) на + почетку линије која Ñе додаје Ñе \emph{не} игноришу. +\item + Све оÑтале линије имају Ñледећи облик: +\begin{alltt} \var{променљива}[.\var{име-програма}] [=] \var{вредноÑÑ‚} +\end{alltt}% + где Ñе знак \samp{=} и размаци око њега могу изоÑтавити. +\item + \ttvar{променљива} може да Ñадржи било који знак оÑим + размака\char"0304\ (\textenglish{whitespace}), \samp{=} и \samp{.}, + али је најÑигурније држати Ñе Ñкупа \samp{A-Za-z\_} (тј. велика и + мала Ñлова енглеÑког алфабета и доња црта). +\item + Ðко је приÑутна променљива \samp{.\var{име-програма}}, дефиниција + важи Ñамо ако Ñе покренути програм зове \texttt{\var{име-програма}} + или \texttt{\var{име-програма}.exe}. Између оÑталог, то значи да + разни варијетети \TeX{}-а могу да имају различите путање за претрагу. +\item + \var{вредноÑÑ‚} може да Ñадржи било који знак оÑим \code{\%} и + \samp{@}. МогућноÑÑ‚ \code{\$\var{пром}.\var{прог}} не може Ñе + кориÑтити Ñа ове Ñтране једнакоÑти; умеÑто тога, морате да употребите + додатну променљиву. Знак \samp{;}\ унутар \var{променљиве} преводи Ñе + у \samp{:} ако је у питању Unix; ово је кориÑно јер омогућава да Ñе + иÑти \file{texmf.cnf} кориÑти и за Unix и за \acro{MS-DOS} и за + \Windows{}. +\item + Све дефиниције Ñе прочитају пре него што Ñе било шта прерачуна, што + значи да Ñе променљиве могу употребити и пре него што Ñе дефинишу. +\end{itemize*} +Део конфигурационог фајла који илуÑтрује већину ових Ñтвари +\ifSingleColumn +приказан је у Ñледећој табели: + +\verbatiminput{examples/ex5.tex} +\else +приказан је на Ñлици~\ref{fig:config-sample}. +\fi + +\subsubsection{Прерачунавање путање} +\label{sec:path-expansion} + +\KPS{} препознаје неке Ñпецијалне ознаке и конÑтрукције у путањама за +претрагу, Ñличне онима из Unix шкољки (\textenglish{shells}). Ðа +пример, Ñложена путања \verb+~$USER/{foo,bar}//baz+ претвара Ñе поÑле +прерачунавања у Ñве поддиректоријуме унутар директоријума\char"0304\ +\file{foo} и \file{bar} у личном директоријуму кориÑника +\texttt{\$USER}, и то Ñамо онакве који Ñадрже у Ñеби директоријум или +фајл по имену \file{baz}. Овакве транÑформације објашњене Ñу у Ñледећем +одељку. + +\subsubsection{Стандардно прерачунавање} +\label{sec:default-expansion} + +Ðко путања за претрагу Ñа највећим приоритетом (погледајте „Извори +путања“ на ÑÑ‚Ñ€.~\pageref{sec:path-sources}) Ñадржи једну +\emph{додатну двотачку} (на почетку, на крају, или удвојену) \KPS{} +убацује на том меÑту путању која је Ñледећу по приоритету у оквиру +задате претраге. Ðко та уметнута путања има додатну двотачку, иÑто Ñе +дешава Ñа Ñледећим раÑположивим приоритетом по важноÑти. Ðа пример, +ако Ñу ÑиÑтемÑке променљиве поÑтављене овако: + +\begin{alltt}> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} +и ако је вредноÑÑ‚ променљиве \code{TEXINPUTS} из \file{texmf.cnf} +једнака + +\begin{alltt} .:\$TEXMF//tex +\end{alltt} +онда ће коначна вредноÑÑ‚ која ће бити употребљена за претрагу бити: + +\begin{alltt} /home/karl:.:\$TEXMF//tex +\end{alltt} + +Пошто би било беÑкориÑно уметати подразумевану вредноÑÑ‚ на више од +једног меÑта, \KPS{} транÑформише Ñамо један додатни \samp{:} а +оÑтале оÑтавља како јеÑу. Програм најпре тражи има ли \samp{:} на +почетку реда, затим на крају, а затим тражи двоÑтруке \samp{:}. + +\subsubsection{Прерачунавање заграда} +\label{sec:brace-expansion} + +Једна кориÑна могућноÑÑ‚ је и прерачунавање заграда: на пример, +\verb+v{a,b}w+ Ñе претвара у \verb+vaw:vbw+. Дозвољено је уметање +заграда унутар поÑтојећег пара заграда; захваљујући овоме могуће је +имати више \TeX{} хијерархија директоријума\char"0304\ тако што Ñе +\code{\$TEXMF}-у додели лиÑта заграда. Ðа пример, у фајлу +\file{texmf.cnf} је направљена оваква дефиниција (у овом примеру +Ñтварни ко\char"0302 д је поједноÑтављен): +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +Захваљујући овоме, могуће је напиÑати: +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +што значи да ће Ñе претрага, након задржавања у тренутном +директоријуму, обавити \emph{иÑкључиво} у дрветима +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, +\code{\$TEXMFVAR/tex} и \code{\$TEXMFMAIN/tex} (поÑледња два имају +базу података Ñа фајловима \file{ls-R}). Ово предÑтавља један удобан +начин да одржавате две паралелне Ñтруктуре \TeX{}-а, једну +„замрзнуту“ (на пример на \CD-у) и једну која Ñе непреÑтано оÑвежава +новим верзијама чим Ñе појаве. Пошто кориÑтимо променљиву +\code{\$TEXMF} у Ñвим дефиницијама, можемо бити Ñигурни да ће увек +оно дрво које Ñе оÑвежава бити прво које Ñе претражује. + +\subsubsection{Прерачунавање поддиректоријума} +\label{sec:subdirectory-expansion} + +Две или више узаÑтопних коÑих црта у елементу путање које Ñледе иза +директоријума \var{d} транÑформишу Ñе у ÑпиÑак Ñвих поддиректоријума +који Ñе по хијерархији налазе иÑпод \var{d}: прво иду они који Ñу +непоÑредно иÑпод \var{d}, затим они иÑпод њих, итд. Ðа Ñваком од +тих нивоа редоÑлед којим Ñе директоријуми претражују \emph{није +изричито одређен}. + +Ðко Ñтавите неки део имена фајла поÑле \samp{//}, биће укључени Ñамо +поддиректоријуми који Ñадрже поклапање Ñа тим делом имена. Ðа пример, +\samp{/a//b} Ñе претвара у директоријуме \file{/a/1/b}, +\file{/a/2/b}, \file{/a/1/1/b} итд, али не у \file{/a/b/c} или +\file{/a/1}. + +Могуће је употребити и више конÑтрукција Ñа \samp{//} у једној +путањи, али Ñе \samp{//} на почетку путање игнорише. + +\subsubsection{СпиÑак Ñпецијалних Ñимбола и њихово значење: преглед} + +Следећа лиÑта даје преглед Ñпецијалних Ñимбола у конфигурационим +фајловима које кориÑти \KPS{}. + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] Сепаратор у задавању путање; на почетку или на крају + путање Ñлужи умеÑто подразумеваног прерачунавања путање.\par +\item[\CODE{;}] Сепаратор на ÑиÑтемима који ниÑу Ñродни Ñа Unix-им + (понаша Ñе иÑто као \code{:}). +\item[\CODE{\$}] Прерачунавање променљиве. +\item[\CODE{\string~}] ПредÑтавља кориÑников лични директоријум. +\item[\CODE{\char`\{...\char`\}}] Прерачунавање заграда\char"0304. +\item[\CODE{//}] Прерачунавање поддиректоријума\char"0304\ (може да + Ñтоји било где у путањи изузев на почетку). +\item[\CODE{\%}] Почетак коментара. +\item[\CODE{\bs}] Ознака да Ñледи наÑтавак текÑта (омогућава Ñтавке + које Ñе проÑтиру кроз више линија). +\item[\CODE{!!}] Претраживање \emph{иÑкључиво} базе података да Ñе + нађе фајл, диÑк Ñе \emph{не} претражује. +\end{ttdescription} + + +\subsection{Базе података Ñа именима фајлова} +\label{sec:filename-database} + +\KPS{} покушава да колико је могуће Ñмањи физички приÑтуп диÑку када +обавља Ñвоје претраге. Ð£Ð¿Ñ€ÐºÐ¾Ñ Ñ‚Ð¾Ð¼Ðµ, на инÑталацијама Ñа великим +бројем директоријума, претраживање Ñвих могућих директоријума да би +Ñе нашао задати фајл може предуго да траје (ово је нарочито Ñлучај +ако Ñе мора проћи више Ñтотина директоријума који Ñадрже фонтове). Из +тог разлога је \KPS{} оÑмишљен да може да кориÑти унапред ÑаÑтављену +„базу података“ --- заправо текÑтуални фајл --- по имену \file{ls-R}, +који повезује Ñтварне фајлове Ñа одговарајућим директоријумима и на +тај начин елиминише потребу да Ñе диÑку чеÑто приÑтупа. + +Други фајл --- база података, по имену \file{aliases}, омогућава Вам +да дате додатна имена фајловима који Ñу излиÑтани у \file{ls-R}. Ово +може да буде од кориÑти ако је потребно да Ñе у неком изворном коду +поштује конвенција о именима фајлова која потиче из ÑиÑтема +\acro{DOS}~8.3. + +\subsubsection{База података ls-R} +\label{sec:ls-R} + +Као што је Ð¼Ð°Ð»Ð¾Ñ‡Ð°Ñ Ð¾Ð±Ñ˜Ð°ÑˆÑšÐµÐ½Ð¾, име главне базе података Ñа фајловима +мора бити \file{ls-R}. Можете да Ñтавите по један такав фајл у корен +Ñваке \TeX{}-хијерархије коју имате и коју желите да претражујете +помоћу \KPS{} (подразумева Ñе \code{\$TEXMF}). \KPS{} увек проверава +да ли има неки \file{ls-R} дуж \code{TEXMFDBS}. + +Препоручени начин да направите и одржавате \samp{ls-R} јеÑте да +покренете Ñкрипту \code{mktexlsr} (која је укључена у диÑтрибуцију). +Њу позивају разне \samp{mktex}... Ñкрипте. У принципу, ова Ñкрипта +напроÑто покреће команду +\begin{alltt}cd \var{/корен/texmf/хијерархије} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} +уз претпоÑтавку да команда \code{ls} на Вашем ÑиÑтему даје иÑправан +излаз (\GNU \code{ls} је таква команда). Како биÑте били Ñигурни да је +база података увек Ñвежа, најлакши начин је да је редовно преправљате +кориÑтећи \code{cron}, тако да Ñе она аутоматÑки оÑвежава увек када +Ñе неки већ инÑталирани фајл промени, као што је Ñлучај када Ñе +инÑталира или оÑвежава неки \LaTeX{} пакет. + +Ðко фајл не може да Ñе пронађе у бази података, подразумевана радња +коју предузима \KPS{} јеÑте да крене у претрагу директно на диÑку. +Ðко, међутим, неки поједини елемент путање почиње Ñа \samp{!!}, +претражиће Ñе \emph{Ñамо} база података, никада Ñа\char"0302 м диÑк. + + +\subsubsection{СамоÑтални програм за претраживање: kpsewhich} +\label{sec:invoking-kpsewhich} + +Програм \texttt{kpsewhich} изводи претраживање незавиÑно од било које +апликације. У овом ÑмиÑлу он може бити кориÑтан и као нека врÑта +програма \code{find} ако треба лоцирати појединачне фајлове у +\TeX{}-хијерархијама (\texttt{kpsewhich} Ñе заиÑта и кориÑти веома +интензивно у Ñкриптама \samp{mktex}... које Ñу део диÑтрибуције). + +\begin{alltt}> \Ucom{kpsewhich \var{option}... \var{filename}...} +\end{alltt} +Опције назначене у \ttvar{option} могу да почну и Ñа \samp{-} и Ñа +\samp{-{}-}; такође, дозвољено је и било које недвоÑмиÑлено Ñкраћивање. + +\KPS{} третира Ñваки аргумент Ñа командне линије (који није опција) +као име фајла, и враћа први фајл који пронађе. Ðе поÑтоји могућноÑÑ‚ +да Ñе врате Ñва имена фајлова Ñа појединим именом (ако Вам је тако +нешто потребно, употребите Unix команду \samp{find}). + +Следи Ð¾Ð¿Ð¸Ñ Ð½Ð°Ñ˜Ð²Ð°Ð¶Ð½Ð¸Ñ˜Ð¸Ñ… параметара. + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{}\\ + Задаје резолуцију \ttvar{num}; ово Ñе тиче Ñамо претрага за + фајловима типа \samp{gf} и \samp{pk}. \samp{-D} је Ñиноним, омогућен + ради компатибилноÑти Ñа \cmdname{dvips}. Подразумевана вредноÑÑ‚ је + 600. + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + Задаје да Ñе тражи формат \ttvar{name}. Подразумевани формат Ñе + претпоÑтавља на оÑнову имена фајла. За формате који немају + једнозначан наÑтавак, као што Ñу нпр. помоћни фајлови програма + \MP{} или конфигурациони фајлови програма \cmdname{dvips}, морате + назначити име које је познато \KPS{}-у, на пример \texttt{tex} или + \texttt{enc files}. Покрените \texttt{kpsewhich -{}-help} ако желите + да видите целовит ÑпиÑак. + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + Задаје режим по имену \ttvar{string}; ово Ñе тиче једино претрага + за фајловима типа \samp{gf} и \samp{pk}. Ðема подразумеване + вредноÑти: тражиће Ñе фајлови за Ñве режиме. + +\item[\texttt{-{}-must-exist}]\mbox{}\\ + Задаје да Ñе учини Ñве што је могуће да Ñе фајлови пронађу; пре + Ñвега Ñе миÑли на прибегавање директном претраживању диÑка. + Подразумева Ñе да Ñе, ефикаÑноÑти ради, проверава Ñамо база података + \file{ls-R}. + +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + Претрага ће Ñе вршити низ путању \ttvar{string} (обично Ñу то + елементи раздвојени двотачкама), умеÑто да Ñе путања за претрагу + претпоÑтавља на оÑнову имена фајла. Подржани Ñу \samp{//} и Ñва + Ñтандардна прерачунавања и транÑформације. Параметри \samp{-{}-path} + и \samp{-{}-format} узајамно Ñе иÑкључују. + +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + Задаје \texttt{\var{name}} као име програма. Ово може да утиче на + путање за претрагу путем могућноÑти допиÑивања имена програма + (\texttt{.\var{progname}}). Подразумевана вредноÑÑ‚ је + \cmdname{kpsewhich}. + +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + Приказује путању која Ñе кориÑти да Ñе пронађе фајл или тип фајла + \texttt{\var{name}}. Могу Ñе кориÑтити и наÑтавци за имена фајлова + (\code{.pk}, \code{.vf}, итд), као и Ñама имена, баш као у Ñлучају + опције \hbox{\samp{-{}-format}}. + +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + ПоÑтавља ниво потраге за грешкама на \texttt{\var{num}}. +\end{ttdescription} + + +\subsubsection{Примери употребе} +\label{sec:examples-of-use} + +Погледајмо Ñада \KPS{} на делу. Ево једне једноÑтавне претраге: + +\begin{alltt}> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +Оно што тражимо је фајл \file{article.cls}. Пошто је наÑтавак +\samp{.cls} недвоÑмиÑлен, не морамо да поÑебно назначимо да желимо да +тражимо фајл типа \optname{tex} (директоријуми који Ñадрже фајлове Ñа +изворним \TeX{} ко\char"0302 дом). Тражимо га у поддиректоријуму +\file{tex/latex/base} који Ñе налази у \TL\ директоријуму +\samp{texmf-dist}. Ðа Ñличан начин, Ñви фајлови у примерима који Ñледе +проналазе Ñе без проблема захваљујући Ñвојим недвоÑмиÑленим +наÑтавцима: +\begin{alltt}> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +Узгред, поÑледњи фајл из овог низа је библиографÑка база података +програма \BibTeX{} која Ñе одноÑи на чланке у чаÑопиÑу +\textsl{TUGboat}. + +\begin{alltt}> \Ucom{kpsewhich cmr10.pk} +\end{alltt} +Фајловe типa \file{.pk} (фонтови направљени као бит-мапе) кориÑте +приказивачи као што Ñу \cmdname{dvips} и \cmdname{xdvi}. У овом +Ñлучају Ñе не враћа никаква вредноÑÑ‚ пошто нема унапред припремљених +\textenglish{Computer Modern} \samp{.pk} фајлова у \TL{}-у --- +подразумева Ñе да Ñе кориÑте Type~1 варијанте. +\begin{alltt}> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} +За ове фонтове (фонетÑки алфабет, производ Универзитета Вашингтона) +морамо да генеришемо \samp{.pk} фајлове, и пошто је подразумевани +режим програма \MF{} на нашем ÑиÑтему \texttt{ljfour} Ñа оÑновном +резолуцијом од 600\dpi{} (тачака по инчу), имамо баш овај резултат. +\begin{alltt}> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} +У овом Ñлучају, међутим, када је изричито назначено да Ñмо +заинтереÑовани за резолуцију од 300\dpi{} (\texttt{-dpi=300}), видимо +да такав фонт није раÑположив на ÑиÑтему. ОÑтаје на програмима као +што Ñу \cmdname{dvips} или \cmdname{xdvi} да Ñами направе потребне +\texttt{.pk} фајлове помоћу Ñкрипте \cmdname{mktexpk}. + +Сада ћемо размотрити заглавља (\textenglish{headers}) и +конфигурационе фајлове програма \cmdname{dvips}. Погледајмо најпре +један веома чеÑто коришћени фајл, пролог \file{tex.pro} за \TeX{} +подршку, а затим један општи конфигурациони фајл (\file{config.ps}) и +\PS{} фонт-мапу \file{psfonts.map} --- од издања \TL{}-а из 2004. +фајлови Ñа мапама и кодним раÑпоредима имају Ñвоје ÑопÑтвене путање +за претрагу и нов положај унутар \dirname{texmf} дрвета\char"0304. +Пошто је наÑтавак \samp{.ps} вишеÑмиÑлен, морамо да изричито +назначимо који тип имамо у виду (\optname{dvips config}) за фајл +\texttt{config.ps}. +\begin{alltt}> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +Погледајмо Ñада поближе помоћне фајлове програма \PS{} који Ñе тичу +фонта \acro{URW} Times. ПрефикÑи за ове фајлове Ñу, према Ñтандардној +шеми за именовање фонтова, \samp{utm}. Први фајл који разматрамо је +један конфигурациони фајл, који Ñадржи име фајла Ñа одговарајућом +мапом: +\begin{alltt}> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} +Садржај тог фајла је +\begin{alltt} p +utm.map +\end{alltt} +што указује на фајл \file{utm.map}, и он је Ñледећи ког желимо да +лоцирамо. +\begin{alltt}> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} +Овај фајл Ñа мапом одређује имена фајлова Type~1 \PS{} фонтова у URW +колекцији. Његов Ñадржај изгледа овако (приказујемо Ñамо део): +\begin{alltt}utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +Из ових примера требало би да буде јаÑно како лако можете да одредите +положај било ког задатог фајла. Ово је нарочито важно ако Ñумњате да +је у обради неког документа употребљена погрешна верзија неког фајла, +пошто ће Вам \cmdname{kpsewhich} приказати Ñамо први фајл на који наиђе. + +\subsubsection{ПоÑтупци отклањања грешака} +\label{sec:debugging} + +Понекад је неопходно да Ñе иÑпита како неки програм разрешава +упућивања на одређене фајлове. Да би помогао у таквим Ñитуацијама, +\KPS{} нуди разне нивое излаза у режиму трагања за грешкама +(\textenglish{debugging}): +\begin{ttdescription} +\item[\texttt{\ 1}] СтатиÑтика директног приÑтупа диÑку. Када Ñе + претрага обавља Ñа Ñвежом \file{ls-R} базом, ово не би требало да + да\char"0302\ готово никакав излаз. +\item[\texttt{\ 2}] Упућивања на „hash“ табеле (као што је база + података \file{ls-R}, фајлови Ñа мапама, конфигурациони фајлови). +\item[\texttt{\ 4}] Операције отварања и затварања фајлова. +\item[\texttt{\ 8}] Опште информације о путањама које \KPS{} кориÑти + за разне типове фајлова. Ово је кориÑно када треба уÑтановити на + ком меÑту је нека поједина путања за неки фајл дефиниÑана. +\item[\texttt{16}] ЛиÑта директоријума за Ñваки елемент путање (ово + је релевантно Ñамо ако Ñе претражује диÑк). +\item[\texttt{32}] Претраге за фајловима. +\item[\texttt{64}] ВредноÑти променљивих. +\end{ttdescription} +ВредноÑÑ‚ \texttt{-1} ће активирати Ñве опиÑане опције; у пракÑи је ово +обично и најкориÑније. + +Ðа Ñличан начин, ако Ñе програм \cmdname{dvips} покрене Ñа +одговарајућом комбинацијом ових опција, може Ñе до најÑитнијих детаља +пратити одакле Ñе узимају поједини фајлови. Или, ако Ñе неки фајл не +пронађе, детаљан излаз који Ñмо добили показује у којим је +директоријумима програм покушавао да нађе задати фајл, тако да Ñе +може добити неки наговештај о томе где лежи проблем. + +Уопштено говорећи, будући да већина програма позива библиотеку \KPS{} +интерно, опција за отклањање грешака Ñе може укључити путем ÑиÑтемÑке +променљиве \envname{KPATHSEA\_DEBUG} тако што Ñе она подеÑи на неку +вредноÑÑ‚ (или комбинацију вредноÑти) опиÑану у претходној табели. + +(Ðапомена за кориÑнике \Windows{}-а: на овом ÑиÑтему није лако +преуÑмерити Ñве поруке које даје неки програм у фајл. За Ñврхе +дијагноÑтиковања можете привремено да подеÑите одговарајућу +променљиву помоћу \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}.) + +Размотримо као пример један мали фајл Ñа \LaTeX{} ко\char"0302 дом, +\file{hello-world.tex} („Здраво, Ñвете!“), Ñа Ñледећим Ñадржајем: +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +Овај мали фајл кориÑти Ñамо фонт \file{cmr10}, па погледајмо Ñтога +како \cmdname{dvips} припрема \PS{} фајл (желимо да кориÑтимо Type~1 +верзију фонтова из породице \textenglish{Computer Modern}, отуда +опција \texttt{-Pcms}). +\begin{alltt}> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +У овом Ñлучају Ñмо комбиновали ниво 4 за отклањање грешака програма +\cmdname{dvips} (тј. путање везане за фонтове) Ñа прерачунавањем +елемента путање преко \KPS{} (погледајте упутÑтво за употребу +програма \cmdname{dvips}, \OnCD{texmf/doc/dvips/dvips.pdf}). Излаз +(незнатно преÑложен) може Ñе видети на Ñлици~\ref{fig:dvipsdbga}. +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{Тражење конфигурационих фајлова}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{Тражење пролог фајла}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{Тражење фајла Ñа фонтом}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} почиње тако што лоцира Ñвоје ÑопÑтвене конфигурационе +фајлове. Ðајпре налази \file{texmf.cnf}, и тај фајл му даје дефиниције +путања на којима треба наћи друге фајлове, затим Ñе проналази база +података \file{ls-R} (како би Ñе трагање за фајловима оптимизовало), +и коначно фајл \file{aliases}, који омогућава да Ñе зада више имена +за иÑти фајл (нпр. кратка имена у Ñтилу ÑиÑтема \acro{DOS}~8.3 или +читкије дуже варијанте). Затим \cmdname{dvips} прелази на тражење +општег конфигурационог фајла \file{config.ps}, пре него што прегледа +фајл Ñа подешавањима по имену \file{.dvipsrc} (који, у овом Ñлучају, +\emph{није пронађен}). Коначно, \cmdname{dvips} налази конфигурациони +фајл за породицу \PS{} фонтова \textenglish{Computer Modern}, који Ñе +зове \file{config.cms} (ово је иницирано зато што је уз команду +\cmdname{dvips} употребљена опција \texttt{-Pcms}). Овај фајл Ñадржи +лиÑту фајлова Ñа мапама који дефинишу Ð¾Ð´Ð½Ð¾Ñ Ð¸Ð·Ð¼ÐµÑ’Ñƒ \TeX{}-а, \PS{}-а +и Ñтварних имена фонтова на диÑку. +\begin{alltt}> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +\cmdname{dvips} налази Ñве ове фајлове, као и општи фајл Ñа мапом по +имену \file{psfonts.map}, који Ñе увек учитава (он Ñадржи декларације +за најчешће коришћене \PS{} фонтове; поÑледњи део одељка +\ref{sec:examples-of-use} Ñадржи више информација о коришћењу фајлова +Ñа мапама за \PS{} фонтове). + +Ðа овом Ñтупњу \cmdname{dvips} Ñе предÑтавља кориÑнику: +\begin{alltt}This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +Затим прелази на тражење пролог фајла \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +Затим тражи пролог фајла \file{texc.pro} (погледајте +Ñлику~\ref{fig:dvipsdbgb}). +\fi + +Ðашавши поменути фајл, \cmdname{dvips} иÑпиÑује датум и време и +обавештава Ð½Ð°Ñ Ð´Ð° ће направити фајл \file{hello-world.ps}, затим да +му треба фонт-фајл \file{cmr10}, као и да ће овај поÑледњи бити +означен као „резидентан“ (тј. да му ниÑу потребне бит-мапе): +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +Сада Ñе претрага наÑтавља, овог пута за фајлом \file{cmr10.tfm}; када +га пронађе, упућује Ñе на још неколико пролог фајлова (ниÑу +приказани), и на крају Ñе лоцира Type~1 облик фонта, који Ñе зове +\file{cmr10.pfb}, и тај податак Ñе укључује у фајл Ñа излазом +(погледајте поÑледњу линију). +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{Опције током рада (runtime options)} + +Још једна кориÑна ÑпоÑобноÑÑ‚ \Webc{}-а јеÑте могућноÑÑ‚ да Ñе +контролише велики број меморијÑких параметара (а поÑебно „array +sizes“) путем фајла \file{texmf.cnf} који чита \KPS{}. Подешавања +која Ñе тичу меморије могу Ñе пронаћи у делу~3 тог фајла у \TL{} +диÑтрибуцији. Важнији параметри које можете да подеÑите Ñу: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + Укупна раÑположива меморија (\textenglish{Total words of memory + available}) за \TeX{}, \MF{} и \MP. За Ñваку вредноÑÑ‚ Ñе мора + направити поÑебан фајл Ñа форматом. Ðа пример, можете да направите + „огромну“ (huge) верзију \TeX{}-a и да назовете фајл Ñа форматом + \texttt{hugetex.fmt}. Према Ñтандардним правилима означавања + имена\char"0304\ програма\char"0304\ којих Ñе држи \KPS{}, поÑебна + вредноÑÑ‚ променљиве \texttt{main\_memory} прочитаће Ñе из фајла + \file{texmf.cnf}. +\item[\texttt{extra\_mem\_bot}] + Додатни проÑтор за „велике“ („large“) Ñтруктуре података које прави + \TeX{}: оквири (\textenglish{boxes}), лепак (\textenglish{glue}), + меÑта прелома (\textenglish{breakpoints}) итд. ПоÑебно кориÑно ако + кориÑтите \PiCTeX{}. +\item[\texttt{font\_mem\_size}] + Количина меморије за податке о фонтовима која Ñтоји \TeX{}-у на + раÑполагању. Ово је мање-више укупна величина Ñвих прочитаних + \acro{TFM} фајлова. +\item[\texttt{hash\_extra}] + Додатни проÑтор за „hash“ табелу Ñа именима контролних Ñеквенци. + Само \char"007E 10.000 контролних Ñеквенци може да Ñе ÑмеÑти у + главну „hash“ табелу; ако имате велику књигу Ñа бројним унакрÑним + референцама, може Ñе лако деÑити да то није довољно. Подразумевана + вредноÑÑ‚ променљиве \texttt{hash\_extra} је \texttt{50000}. +\end{ttdescription} + +\noindent Ðаравно, ово није замена за праве динамичке низове и методе + раÑполагања меморијом, али пошто је изузетно тешко да Ñе тако нешто + изведе у Ñадашњем изворном ко\char"0302 ду \TeX{}-а, ови параметри за + покретање програма предÑтављају практични ÐºÐ¾Ð¼Ð¿Ñ€Ð¾Ð¼Ð¸Ñ ÐºÐ¾Ñ˜Ð¸ ипак даје и + нешто флекÑибилноÑти. + + +\begin{comment} +\section{Компајлирање на новом Unix оператовном ÑиÑтему} + +Ðко имате платформу (оперативни ÑиÑтем) за који ниÑу укључени +прекомпајлирани програми, мораћете да компајлирате \TeX{} и пропратне +програме. То није тако тешко као што звучи. Оно што Вам треба је Ñве +што Ñе налази у директоријуму \texttt{source} који Ñе налази у +диÑтрибуцији. + +\subsection{ПредуÑлови} + +Требаће Вам најмање 100 мегабајта Ñлободног проÑтора на диÑку ако +желите да компајлирате \TeX{} и Ñве помоћне програме. Такође ће Вам +требати и \acro{ANSI} C компајлер, алатка \cmdname{make}, лекÑички +Ñкенер и парÑер-генератор. Препоручујемо \GNU-ове верзије ових +програма (\cmdname{gcc}, \GNU \cmdname{make}, \cmdname{m4}, +\cmdname{flex}, \cmdname{bison}). Може бити Ñлучај да уÑпете Ñве ово +да урадите и Ñа другим C компајлерима и \cmdname{make} програмаима, +али за то ће Вам вероватно бити потребно веома добро разумевање +компајлирања програма на Unix-у како биÑте решили проблеме када Ñе +појаве. + +Такође, команда \texttt{uname} мора приказати ÑмиÑлену вредноÑÑ‚. + + +\subsection{Конфигурација} + +За почетак, обавите уобичајену инÑталацију \TL{}-а на диÑк +(погледајте одељак~\ref{sec:install-disk}, +ÑÑ‚Ñ€.~\pageref{sec:install-disk}). Може бити и да желите да преÑкочите +инÑталацију Ñвих унапред компајлираних програма. + +Затим, раÑпакујте Ñпаковане \texttt{tar}-фајлове из директоријума +\dirname{source} на диÑк и уђите у директоријум где Ñте их +раÑпаковали. + +Затим, покренуте \cmdname{configure} Ñа оваквом командном линијом: +\begin{alltt}> \Ucom{sh configure -prefix=/usr/local/TeX} +\end{alltt} + +Директоријум задат уз \optname{-prefix} је меÑто где ће Ñе инÑталирати +подржавајуће дрво; Ñтруктура директоријума ће бити оваква (\$TEXDIR означава +директоријум који Ñте изабрали): + +\noindent +\begin{tabular}{>{\ttfamily}ll@{}} + \dirname{$TEXDIR/share/texmf} & главно дрво Ñа фонтовима,\\ + & \qquad макроима, итд.\\ + \dirname{$TEXDIR/man} & Unix man-Ñтранице\\ + \dirname{$TEXDIR/info} & Info-Ñтранице у \GNU Ñтилу\\ + \dirname{$TEXDIR/bin/$PLATFORM} & програми\\ +\end{tabular} +%$ + +Ðко желите да одуÑтанете (изоÑтавите) од поддиректоријума +\dirname{$PLATFORM}, тј. да Ñтавите програме директно у +\dirname{$TEXDIR/bin}, назначите то програму \cmdname{configure} +помоћу опције \verb|--disable-multiplatform|. + +Излаз команде \verb|./configure --help| Вам нуди ÑпиÑак Ñвих опција +које можете да употребите. Ðа пример, можете да преÑкочите +компајлирање програма \OMEGA{} и \eTeX{}. + + +\subsection{Покретање \cmdname{make}} + +Побрините Ñе да ниÑу подешене ШЕЛ променљива или опција +\texttt{noclobber}. Затим покрените главни \cmdname{make} на овај +начин: +\begin{alltt}> \Ucom{make world} +\end{alltt} +и опуÑтите Ñе... + +Ðлтернативно, можете да запишете цео излаз, овако: +\begin{alltt}> \Ucom{sh -c "make world >world.log 2>\&1" \&} +\end{alltt} + +Пре него што поверујете да је Ñве прошло како треба, молимо Ð’Ð°Ñ Ð´Ð° +прегледате лог-фајл и проверите да ли је пријављена нека грешка: \GNU +\cmdname{make} увек кориÑти Ñтринг \samp{***} када нека команда не +уÑпе да Ñе изврши. Такође, проверите да ли Ñу Ñе Ñви програми +компајлирали: + +\begin{alltt}> \Ucom{cd \var{TEXDIR}/bin/\var{archname}} +> \Ucom{ls | wc} +\end{alltt} +Резултат би требало да буде преко 200 (можете да упоредите тачан број +Ñа Ñадржајем директоријума \dirname{bin} у диÑтрибуцији). + +Ðко Вам требају поÑебне привилегије за \texttt{make install}, можете +да на овај начин раздвојите \samp{make world} у два одвојена +поÑтупка: +\begin{alltt}> \Ucom{make all} +> \Ucom{su} +> \Ucom{make install strip} +\end{alltt} + +Када инÑталирате нове програме, Ñледите уобичајену поÑÑ‚-инÑталациону +процедуру опиÑану у одељку~\ref{sec:postinstall}, +ÑÑ‚Ñ€.~\p.\pageref{sec:postinstall}. + +Такође, ако желите да нови програми буду на раÑполагању и другим +кориÑницима Вашег ÑиÑтема, молимо Ð’Ð°Ñ Ð´Ð° Ð½Ð°Ñ ÐºÐ¾Ð½Ð°ÐºÑ‚Ð¸Ñ€Ð°Ñ‚Ðµ. Бићемо +веома задовољни да их поÑтавимо на \TL\ Интернет Ñтранице. +\end{comment} + +\htmlanchor{ack} +\section{Захвалнице} + +\TL{} је резултат заједничких напора практично Ñвих група кориÑника +\TeX{}-а. Овим издањем \TL{}-а руководио је Карл Бери +[\textenglish{Karl Berry}]. Групе и појединци набројани на ÑпиÑку +који Ñледи, они који Ñу у прошлоÑти радили на \TL{}-у и они који Ñу +тренутно активни, заÑлужују нашу велику захвалноÑÑ‚. + +\begin{itemize} +% We need this manual tuning here to avoid very ugly page break. +\itemsep=.25em +\parskip=0pt + +\item Централно удружење кориÑника \TeX{}-а, као и удружења из + Ðемачке, Холандије и ПољÑке (\acro{TUG}, \acro{DANTE} e.V., + \acro{NTG} и \acro{GUST}), која обезбеђују неопходну техничку и + админиÑтративну инфраÑтруктуру. Молимо Ð’Ð°Ñ Ð´Ð° Ñе учланите у најближу + групу кориÑника \TeX{}-а! (Погледајте + \url{http://tug.org/usergroups.html}); + +\item \acro{CTAN} тим, поÑебно Робин Ð¤ÐµÑ€Ð½Ð±ÐµÑ€Ð½Ñ [\textenglish{Robin + Fairbairns}], Ðим Хеферон [\textenglish{Jim Hefferon}] и Рајнер Шепф + [\textgerman{Rainer Schöpf}], који диÑтрибуира издања \TL{}-а и + обезбеђује обједињену инфраÑтруктуру за оÑвежавање Ñвих пакета који + имају везе Ñа \TeX{}-ом, од којих \TL{} завиÑи; + +\item Ðелзон Биб [\textenglish{Nelson Beebe}], који је Ñтавио + програмерима \TL{}-а на раÑполагање многе платформе и који је + Ñа\char"0302 м обавио много темељних теÑтова; + +\item Ðон Боумен [\textenglish{John Bowman}], који је обавио велики + поÑао на интеграцији Ñвог напредног графичког програма + \prog{Asymptote} у \TL{}; + +\item Петер Брајтенлонер [\textgerman{Peter Breitenlohner}] и \eTeX\ + тим, зато што Ñу поÑтавили чврÑте темеље будућим варијантама \TeX-а, + а Петеру поÑебно за бриљантан поÑао на увођењу и одржавању ÑиÑтема + \GNU\ autotools унутар \TL-а; + +\item Сташек Ваврикевич [\textpolish{Staszek Wawrykiewicz}], главна + оÑоба за теÑтирање \TL{}-а и координатор многих пољÑких пројеката, + за рад на \Windows{} инÑталацији, и још много тога; + +\item Олаф Вебер [\textenglish{Olaf Weber}], за Ñвоје Ñтрпљиво + одржавање ÑиÑтема \Webc; + +\item Гербен Вирда [\textdutch{Gerben Wierda}], зато што је + уÑтановио и одржавао \TL{} на \MacOSX-у и за учешће у теÑтирању; + +\item Грејем Ð’Ð¸Ð»Ð¸Ñ˜Ð°Ð¼Ñ [\textenglish{Graham Williams}], на чији рад Ñе + оÑлања каталог пакета\char"0304\ \TeX\ Catalogue; + +\item Владимир Волович, за помоћ око портовања \TL{}-а на многе + ÑиÑтеме и за рад на многим програмима, нарочито зато што је омогућио + да Ñе у диÑтрибуцију укључи \cmdname{xindy}; + +\item Ђин-Хуан Чо [\textenglish{Jin-Hwan Cho}] и \acro{DVIPDFM}$x$ + тим, за њихов изврÑни драјвер и брзе реакције везане за + конфигурационе проблеме; + +\item Михел ГоÑÐµÐ½Ñ [\textdutch{Michel Goossens}], који је био један + од аутора прве верзије ове документације; + +\item Ејтан Гурари [\textenglish{Eitan Gurari}], чији Ñе ÑиÑтем + \TeX4ht употребљава да Ñе направе верзије ове документације у \HTML{} + формату, и који је Ñваке године неуморно радио на уÑавршавању Ñвог + програма. Ејтан је прерано преминуо у јуну 2009. и ми поÑвећујемо ову + документацију уÑпомени на њега; + +\item Ð¢Ð¾Ð¼Ð°Ñ Ð•Ñер [\textgerman{Thomas Esser}], без чијег Ñјајног + \teTeX{} пакета \TL{} никада не би поÑтојао; + +\item Павел ЈаковÑки [\textpolish{Pawe{\l} Jackowski}], за развој + инÑталационог програма за \Windows{} по имену \cmdname{tlpm}, и Томаш + Лужак [\textpolish{Tomasz {\L}uczak}] за програм \cmdname{tlpmgui}, + који Ñу Ñе кориÑтили у ранијим издањима; + +\item Ðкира Какуто [\textenglish{Akira Kakuto}], зато што је Ñтавио + на раÑполагање верзије програма за \Windows{} из Ñвоје диÑтрибуције + \acro{W32TEX} за јапанÑки \TeX\ (\url{http://w32tex.org}), као и за + велики Ð´Ð¾Ð¿Ñ€Ð¸Ð½Ð¾Ñ Ñ€Ð°Ð·Ð²Ð¾Ñ˜Ñƒ многих елемената \TL{}-a; + +\item Ðонатан Кју [\textenglish{Jonathan Kew}], зато што је развио + изузетни дериват \XeTeX{} и зато што је одвојио време и Ñнагу да га + уклопи у \TL{}, као и за почетну верзију инÑталера за Mac\TeX\ и за + рад на Ñпецијализованом едитору \TeX{}works, који Ñада препоручујемо + као окружење за рад; + +\item Рајнхард Котуха [\textgerman{Reinhard Kotucha}], за велики + Ð´Ð¾Ð¿Ñ€Ð¸Ð½Ð¾Ñ Ð½Ð° развоју инфраÑтруктуре и инÑталационог програма за \TL{} + 2008, као и за многа иÑтраживања на пољу \Windows{}-а, за Ñкрипту + \texttt{getnonfreefonts}, и још много тога; + +\item Дик Коч [\textenglish{Dick Koch}], за одржавање Mac\TeX-а + (\url{http://tug.org/mactex}) у теÑној Ñарадњи Ñа \TL{} тимом, као и + за Ñвој непреÑушни ентузијазам током рада; + +\item Си\char"0304 п Кроненберг [\textdutch{Siep Kroonenberg}], + за велики Ð´Ð¾Ð¿Ñ€Ð¸Ð½Ð¾Ñ Ñƒ раду на инфраÑтруктури и инÑталационом програму + за \TL{} 2008, поÑебно на \Windows{}-у, као и за велики рад на + проширивању овог приручника како би Ñе те нове могућноÑти опиÑале; + +\item Хеико Оберди\char"0304 к [\textdutch{Heiko Oberdiek}], за пакет + \pkgname{epstopdf} и за многе друге пакете, за компреÑију огромних + \pkgname{pst-geo} фајлова Ñа подацима тако да Ñмо могли да их + укључимо у диÑтрибуцију, и изнад Ñвега, за његов изузетни рад на + \pkgname{hyperref} пакету; + +\item Петр Олшак [\textczech{Petr OlÅ¡ak}], који је веома пажљиво + прегледао цео чешки и Ñловачки материјал и координиÑао рад да Ñе он + направи; + +\item Тошио Ошима [\textenglish{Toshio Oshima}], за његов + \cmdname{dviout} приказивач за \Windows{}; + +\item Мануел Перугје-Гонар [\textfrench{Manuel Pégourié-Gonnard}], за + помоћ на оÑвежавању пакета, Ñтално унапређивање документације, као и + за развој програма \cmdname{texdoc}; + +\item Ð¤Ð°Ð±Ñ€Ð¸Ñ ÐŸÐ¾Ð¿Ð¸Ð½Ð¾ [\textfrench{Fabrice Popineau}], за првобитну + подршку за \Windows{} у \TL{}-у и за рад на француÑкој верзији + документације; + +\item Ðорберт Прајнинг [\textgerman{Norbert Preining}], зато што је + био главни архитекта инфраÑтруктуре и инÑталационог програма за \TL{} + 2008, као и за координацију верзије \TL{}-а за Debian, заједно Ñа + Франком КиÑтером [\textgerman{Frank Küster}], као и за многе добре + Ñавете током тог рада; + +\item СебаÑтијан Рац [\textgerman{Sebastian Rahtz}], зато што је + Ñтворио \TL{} и одржавао га много година; + +\item Фил Тејлор [\textenglish{Phil Taylor}], зато што је омогућио + да Ñе \TL{} преузима преко \textenglish{BitTorrent} ÑиÑ\-тема; + +\item Томаш Тжечак [\textpolish{Tomasz Trzeciak}], за Ñвеобухватну + помоћ везану за \Windows{}; + +\item Хан Те Танг [Hàn The\char"0302\char"0301\ Thành], Мартин Шредер + [\textgerman{Martin Schröder}] и pdf\TeX\ тим + (\url{http://pdftex.org}) за непреÑтани рад на проширивању могућноÑти + \TeX-а; + +\item Ð¥Ð°Ð½Ñ Ð¥Ð°Ñ…ÐµÐ½ [\textdutch{Hans Hagen}], за велики поÑао теÑтирања + Ñвог \ConTeXt\ формата (\url{http://pragma-ade.com}) и зато што је + омогућио да он ради у оквиру \TL-а; + +\item Хартмут Хенкел [\textgerman{Hartmut Henkel}], за значајни + Ð´Ð¾Ð¿Ñ€Ð¸Ð½Ð¾Ñ Ð½Ð° развоју pdf\TeX-а, Lua\TeX-а, и још много тога; + +\item Тако Хукватер [\textdutch{Taco Hoekwater}], зато што је обновио + развој MetaPost-а и за рад на [Lua]\TeX-у (\url{http://luatex.org}), + за напоре на укључивању \ConTeXt-а у \TL, зато што је омогућио + \textenglish{multi-threading} у \KPS{} библиотеци, и још много тога. + +\end{itemize} + +Програме за подржане оперативне ÑиÑтеме Ñу припремили: +Еторе Ðлдрованди (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}), +Карл Бери [\textenglish{Karl Berry}] (\pkgname{i386-linux}), +Петер Брајтенлонер [\textgerman{Peter Breitenlohner}] + (\pkgname{x86\_64-linux}), +Ðлан БраÑло [\textfrench{Alan Braslau}] (\pkgname{amd64-kfreebsd}, + \pkgname{i386-kfreebsd}), +Кен Браун [\textenglish{Ken Brown}] (\pkgname{i386-cygwin}), +Олаф Вебер [\textenglish{Olaf Weber}] (\pkgname{mips-irix}), +Ð‘Ð¾Ñ€Ð¸Ñ Ð’ÐµÑ˜Ñ†Ð¼Ð°Ð½ [\textrussian{Ð‘Ð¾Ñ€Ð¸Ñ Ð’ÐµÐ¹Ñ†Ð¼Ð°Ð½}] (\pkgname{armel-linux}), +Владимир Волович (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Ðкира Какуто [\textenglish{Akira Kakuto}] (\pkgname{win32}), +Дик Коч [\textenglish{Dick Koch}] (\pkgname{universal-darwin}, + \pkgname{x86\_64-darwin}), +Ðикола Лечић (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +Мојца Миклавец (\pkgname{mipsel-linux}), +Ðорберт Прајнинг [\textgerman{Norbert Preining}] + (\pkgname{alpha-linux}), +Ð¢Ð¾Ð¼Ð°Ñ Ð¨Ð¼Ð¸Ñ† [\textgerman{Thomas Schmitz}] (\pkgname{powerpc-linux}). +ÐŸÑ€Ð¾Ñ†ÐµÑ ÐºÐ¾Ð¼Ð¿Ð°Ñ˜Ð»Ð¸Ñ€Ð°ÑšÐ° \TL{}-а опиÑан је на +\url{http://tug.org/texlive/build.html}. + +Ову документацију Ñу превели: +Сташек Ваврикевич [\textpolish{Staszek Wawrykiewicz}] (пољÑки), +Ð‘Ð¾Ñ€Ð¸Ñ Ð’ÐµÑ˜Ñ†Ð¼Ð°Ð½ [\textrussian{Ð‘Ð¾Ñ€Ð¸Ñ Ð’ÐµÐ¹Ñ†Ð¼Ð°Ð½}] (руÑки), Ђигод Ђијанг + [\textenglish{Jjgod Jiang}], ЂинÑонг Ðао + [\textenglish{Jinsong Zhao}], Јие Ванг [\textenglish{Yue Wang}] и + Хелин Гаи [\textenglish{Helin Gai}] (кинеÑки), +Ðикола Лечић (ÑрпÑки), +Марко Паланте \textitalian{[Marco Pallante]} (италијанÑки), +Мануел Пегурје-Гонар [\textfrench{Manuel Pégourié-Gonnard}] + (француÑки), +Петр Сојка [\textczech{Petr Sojka}] и Јан Буша [\textslovak{Ján + BuÅ¡a}] (чешки\slash Ñловачки), +Уве Цигенхаген [\textgerman{Uwe Ziegenhagen}] (немачки), +Интернет-Ñтраница Ñа документацијом за \TL{} је +\url{http://tug.org/texlive/doc.html}. + +Ðаравно, најважнија захвалница мора ићи Доналду Кнуту [Donald Knuth], +најпре зато што је изумео \TeX, а потом зато што га је поклонио Ñвету. + + +\section{ИÑторија издања\char"0304} +\label{sec:history} + +\subsection{ПрошлоÑÑ‚} + +Крајем 1993. године у ХоландÑком удружењу кориÑника\char"0304\ +\TeX{}-а Ñе, током рада на пројекту 4All\TeX{} \CD{} (намењеног +кориÑницима \acro{MS-DOS}-а), појавила идеја да Ñе можда може +направити јединÑтвени \CD{} за Ñве ÑиÑтеме. То је био преамбициозан +циљ за оно време; ипак, идеја не Ñамо што је дала подÑтрек да Ñе +доврши рад на иначе веома уÑпешном 4All\TeX{} \CD{} пројекту, него је +из ње произашла и радна група названа Технички Ñавет \acro{TUG}-а +(Удружења кориÑника\char"0304\ \TeX{}-а) која је радила на +\emph{Ñтруктури \TeX{} директоријума} (\emph{\TeX{} +\textenglish{Directory Structure}} --- \url{http://tug.org/tds}); +група је оÑмиÑлила како да Ñе направи конзиÑтентна и употребљива +колекција помоћних \TeX{} фајлова. Целовит нацрт \TDS{}-а објављен је +у децембарÑком издању чаÑопиÑа \textsl{TUGboat} из 1995. и већ на том +раном Ñтадијуму било је јаÑно да би такву Ñтруктуру требало Ñледити и +на \CD{}-у. ДиÑтрибуција \TL{} која је пред Вама предÑтавља директан +резултат преданоÑти те радне групе. Такође је било јаÑно да је уÑпех +4All\TeX{} \CD{}-а показао да кориÑници Unix-а могу имати кориÑти од +тако функционалног ÑиÑтема, и управо ова идеја предÑтавља други +главни мотив за рад на \TL-у. + +Предузели Ñмо прве кораке да направимо такав \TDS{} \CD{} који би +радио на Unix-у на јеÑен 1995. и брзо Ñмо Ñхватили да је \teTeX{} +ТомаÑа ЕÑера [\textgerman{Thomas Esser}] Ñавршена полазна тачка, +пошто је он већ имао подршку за више оперативних ÑиÑтема и пошто је +био направљен узимајући у обзир преноÑивоÑÑ‚ у погледу организације +фајлова које ти ÑиÑтеми кориÑте. Ð¢Ð¾Ð¼Ð°Ñ Ñе Ñложио да помогне и +озбиљан рад је почео почетком 1996. Прво издање објављено је у мају +иÑте године. Почетком 1997, Карл Бери [\textenglish{Karl Berry}] је +објавио ново издање ÑиÑтема \Webc{}, које је укључивало готово Ñве +могућноÑти које је Ð¢Ð¾Ð¼Ð°Ñ Ð•Ñер већ убацио у \teTeX, и тако Ñмо +одлучили да Ñе друго издање \CD{}-а базира на Ñтандардном \Webc-у, уз +додатак Ñкрипте \texttt{texconfig} из \teTeX-а. Треће издање \CD{}-а +заÑнивало Ñе на темељно прерађеној верзији \Webc{}-a (7.2), коју је +урадио Олаф Вебер [\textenglish{Olaf Weber}]; иÑтовремено је урађена +и нова верзија \teTeX-а, а \TL{} је укључио Ñкоро Ñве његове +могућноÑти. Четврто издање Ñледило је иÑти Ñмер, укључивало је нову +верзију \teTeX-а и ново издање \Webc{}-а (7.3). СиÑтем је овог пута +имао и потпуну подршку за \Windows{}. + +За пето издање (март 2000) многи делови \CD{}-а Ñу редизајнирани и +темељније теÑтирани, а биле Ñу укључене и нове верзије више Ñтотина +пакета. Подаци о пакетима Ñпаковани Ñу у \acro{XML} фајлове. Ипак, +највећа промена у \TeX\ Live~5 била је то што Ñу уклоњени Ñви +програми који ниÑу рађени у Ñкладу Ñа идејом Ñлободног Ñофтвера. +Ðаиме, намера је била да од тада Ñве у \TL{}-у буде у ÑаглаÑноÑти Ñа +Debian-овим упутÑтвима за Ñлободни Ñофтвер (\textenglish{Debian Free +Software Guidelines} --- \url{http://www.debian.org/intro/free}); +учинили Ñмо Ñве што је тада било у нашој моћи да проверимо лиценце +Ñвих пакета; били биÑмо веома захвални ако Ð½Ð°Ñ Ð¸Ð·Ð²ÐµÑтите о било којој +грешци коју Ñмо направили. + +ШеÑто издање (јул 2001) Ñадржавало је још више оÑвеженог материјала. +Главна промена био је нов инÑталациони концепт: кориÑник од Ñада може +да изабере много одређенији Ñкуп колекција које Ñу му потребне. +Језичке колекције биле Ñу комплетно преуређене за ово издање: избор +неке од њих од тада не значи да Ñе Ñамо инÑталирају одговарајући +макрои, фонтови итд, него да Ñе уз то припреми и одговарајући +\texttt{language.dat}. + +Седмо издање из 2002. укључивало је велики новитет у облику подршке +за \MacOSX{}, и већ уобичајено огромни број оÑвежења Ñвих врÑта +пакета и програма. Један од најважнијих циљева овог издања била је и +поновна интеграција ко\char"0302 да Ñа \teTeX-ом како би Ñе +елиминиÑао раÑкорак направљен у верзијама 5~и~6. + +\subsubsection{2003} + +2003. године, уÑлед непреÑтаног прилива измена и допуна, Ñхватили Ñмо +да је \TL{} толико нараÑтао да више није могао да Ñтане на један \CD, +тако да Ñмо га поделили на три одвојене диÑтрибуције (погледајте +одељак~\ref{sec:tl-coll-dists}, ÑÑ‚Ñ€.~\pageref{sec:tl-coll-dists}). Уз +то, + +\begin{itemize*} +\itemsep=.5em +\item Према захтеву развојног тима \LaTeX{}-а променили Ñмо + Ñтандардне команде \cmdname{latex} и \cmdname{pdflatex} тако да од + Ñада кориÑте \eTeX{} (в.~ÑÑ‚Ñ€.~\pageref{text:etex}). +\item Укључени Ñу нови \textenglish{Latin Modern} фонтови и + препоручени за употребу. +\item Укинута је подршка за Alpha \acro{OSF} (подршка за \acro{HPUX} + је укинута још раније), зато што нико није имао нити био Ñпреман да + уÑтупи хардвер на којем биÑмо компајлирали нове верзије + програма\char"0304. +\item ИнÑталација за \Windows{} је измењена из корена; по први пут + Ñмо укључили интегриÑано окружење заÑновано на \prog{XEmacs}-у. +\item Верзије важних помоћних програма за \Windows{} (Perl, + Ghost\-script, Image\-Magick, Ispell) Ñада Ñу укључене у Ñтандардну + инÑталацију \TL{}-а. +\item Фонт-мапе које кориÑте \cmdname{dvips}, \cmdname{dvipdfm} и + \cmdname{pdftex} Ñада Ñе праве помоћу новог програма по имену + \cmdname{updmap} и инÑталирају Ñе у \dirname{texmf/fonts/map}. +\item \TeX{}, \MF{} и \MP{} Ñада, оÑим ако није другачије подешено, + упиÑују већину унеÑених знакова (Ñа \acro{ASCII} ко\char"0302 дом 32 + и даље) као такве у излазне фајлове (нпр. \verb|\write|), + лог-фајлове и на терминал, тј. \emph{непреведене} уз помоћ нотације + \verb|^^|. У \TL{}~7, овај превод је завиÑио од језичких подешавања у + ÑиÑтему (тзв. „\textenglish{locale}“); Ñада језичка подешавања немају + утицај на понашање \TeX{} програма\char"0304. Ðко Вам је из неког + разлога потребан излаз прерађен помоћу \verb|^^|, проÑто промените + име фајла \verb|texmf/web2c/cp8bit.tcx|. (У будућим издањима ова + процедура ће бити упрошћена.) +\item Ова документација је темељно прерађена. +\item Коначно, пошто Ñу бројеви у ознаци верзије поÑтали непрактични + за употребу, верзија је Ñада проÑто изједачена Ñа годином: + \TL{}~2003. +\end{itemize*} + + +\subsubsection{2004} + +2004. године деÑиле Ñу Ñе многе промене: + +\begin{itemize} + +\item Ðко имате приватно инÑталиране фонтове који кориÑте Ñвоје + ÑопÑтвене \filename{.map} или (много мање вероватно) \filename{.enc} + помоћне фајлове, може Ñе деÑити да ћете морати да те фајлове + уклоните. + + \filename{.map} фајлови Ñе Ñада, оÑим дуж путање + \envname{TEXFONTMAPS}, траже иÑкључиво у директоријумима иÑпод + \dirname{fonts/map} (тј. у Ñваком \filename{texmf} Ñтаблу). Слично, + \filename{.enc} фајлови Ñе Ñада, оÑим дуж путање \envname{ENCFONTS}, + траже иÑкључиво у директоријумима иÑпод \dirname{fonts/enc}. + \cmdname{updmap} ће покушати да изда неко упозорење ако наиђе на + проблематичне фајлове. + + УпутÑтва о томе како да Ñе поÑтупа Ñа овим и другим подацима налазе + Ñе на \url{http://tug.org/texlive/mapenc.html}. + +\item \TK\ је проширен инÑталациониом \CD-ом базираним на \MIKTEX-у, + за оне који више воле ту имплементацију него \Webc. Погледајте + одељак~\ref{sec:overview-tl} (ÑÑ‚Ñ€.~\pageref{sec:overview-tl}). + +\item Унутар \TL-а, једно велико \dirname{texmf} Ñтабло из претходних + издања замењено је Ñа три: \dirname{texmf}, \dirname{texmf-dist} и + \dirname{texmf-doc}. Погледајте одељак~\ref{sec:tld} + (ÑÑ‚Ñ€.~\pageref{sec:tld}) и фајлове по имену \filename{README} у + Ñваком од њих. + +\item Сви улазни фајлови који Ñе одноÑе на \TeX\ Ñада Ñу прикупљени у + поддиректоријум \dirname{tex} у Ñваком \dirname{texmf*} дрвету; они + Ñу Ñе раније налазили у одвојеним Ñродним директоријумима + \dirname{tex}, \dirname{etex}, \dirname{pdftex}, \dirname{pdfetex}, + итд. Погледајте + \CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions}% + {\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}. + +\item Помоћне Ñкрипте (\textenglish{helper scripts}) --- за које + није предвиђено да их покрећу Ñами кориÑници --- Ñада Ñу Ñмештене у + нове поддиректоријуме по имену \dirname{scripts} у Ñваком + \dirname{texmf*} дрвету, и могу Ñе пронаћи помоћу + \verb|kpsewhich -format=texmfscripts|. То значи да треба да + поправите подешавања у програмима који позивају такве Ñкрипте, ако + их имате. Погледајте + \CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts}% + {\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}. + +\item Скоро Ñви формати оÑтављају већину Ñлова одштампаним каква јеÑу + преко „фајла Ñа преводом“ \filename{cp227.tcx}; некада Ñу их + преводили помоћу \verb|^^| нотације. ПоÑебно, Ñлова на позицијама + 32--256, „\textenglish{tab}“, „\textenglish{vertical tab}“ и + „\textenglish{form feed}“ Ñада Ñе Ñматрају приказивим + (\textenglish{printable}) не преводе Ñе. Изузетак предÑтављају + формати везани за чиÑти (\textenglish{plain}) \TeX\ (Ñамо Ñе 32--126 + могу штампати), за \ConTeXt\ (0--255 Ñу принтабилни) и за програм + \OMEGA. Ово подразумевано понашање је Ñкоро иÑто као у \TL~2003, али + је реализовано на много чиÑтији начин, Ñа више могућноÑти за накнадна + подешавања. Погледајте \CDref{texmf/doc/web2c/web2c.html\#TCX-files}% + {\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}. (Узгред, ако је + улаз по \textenglish{Unicode} Ñтандарду, може Ñе деÑити да \TeX\ + избаци непотпуне низове знакова када показује контекÑÑ‚ грешке, пошто + ради Ñамо Ñа појединачним бајтовима.) + +\item \textsf{pdfetex} је Ñада подразумевани програм за Ñве формате + изузев за чиÑти (\textenglish{plain}) \textsf{tex}. (Ðаравно, он + прави \acro{DVI} када ради као \textsf{latex}, итд.) Ово између + оÑталог значи да Ñу микротипографÑке могућноÑти \textsf{pdftex}-а + доÑтупне и у \LaTeX-у, \ConTeXt-у, итд; иÑто важи и за могућноÑти + \eTeX-а (\OnCD{texmf-dist/doc/etex/base/}). + + То такође значи да је важније него икада раније да Ñе кориÑти пакет % emph! + \pkgname{ifpdf} (који ради и Ñа чиÑтим \TeX-ом и Ñа \LaTeX-ом) или + неки Ñличан ко\char"0302 д, зато што проÑто теÑтирање да ли + \cs{pdfoutput} или нека примитива (\textenglish{primitive}) ниÑу + дефиниÑани није поуздан начин да Ñе одреди да ли је излаз који Ñе + Ñтвара уједно и у \acro{PDF} формату. Ове године Ñмо подеÑили да ово + понашање буде компатибилно Ñа ранијим верзијама колико Ñмо могли, али + Ñледеће године Ñе може деÑити да \cs{pdfoutput} буде дефиниÑан чак и + ако Ñе прави \acro{DVI}. + +\item pdf\TeX\ (\url{http://pdftex.org}) има много нових могућноÑти: + +\begin{itemize*} + + \item \cs{pdfmapfile} и \cs{pdfmapline} омогућавају да Ñе барата + фонт-мапама из Ñамог документа. + + \item Олакшана је употреба микротипографÑког проширења фонтова + (\textenglish{font expansion}).\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item Сви параметри који Ñу Ñе раније подешавали у поÑебном + конфигурационом фајлу \filename{pdftex.cfg} Ñада Ñе морају + подешавати путем примитива\char"0304, обично у фајлу + \filename{pdftexconfig.tex}; укинута је подршка за + \filename{pdftex.cfg}. Сви поÑтојећи \filename{.fmt} фајлови + морају да Ñе прераде кад год Ñе \filename{pdftexconfig.tex} промени. + + \item Више информација о Ñвему овоме можете пронаћи у приручнику за + pdf\TeX: \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}. + + \end{itemize*} + +\item Примитива \cs{input} у програму \cmdname{tex} (као и у + \cmdname{mf} и у \cmdname{mpost}) Ñада прихвата аргументе Ñа дуплим + наводницима који Ñадрже размаке и друге Ñпецијалне знаке. Типични + примери: +\begin{verbatim} +\input "име фајла Ñа размацима" % plain +\input{"име фајла Ñа размацима"} % latex +\end{verbatim} + \Webc{} приручник Ñадржи много више информација о овоме: + \OnCD{texmf/doc/web2c}. + +\item \Webc{} Ñада укључује и подршку за enc\TeX\ (а тиме и за Ñве + \TeX\ програме) путем опције \optname{-enc}, али \emph{Ñамо када + Ñе праве фајлови Ñа форматима}. enc\TeX\ подржава Ñвеобухватно мењање + кодног раÑпореда улаза и излаза, омогућујући на тај начин пуну + подршку за \textenglish{Unicode} (у \acro{UTF}-8 кодном раÑпореду). + Погледајте \OnCD{texmf-dist/doc/generic/enctex/} и + \url{http://www.olsak.net/enctex.html}. + +\item У диÑтрибуцији је Ñада доÑтупан Aleph, програм који комбинује + \eTeX\ и \OMEGA. Кратка документација Ñе може наћи у + \OnCD{texmf-dist/doc/aleph/base} и на Ñтраници + \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph}. Aleph + формат заÑнован на \LaTeX-у назива Ñе \textsf{lamed}. + +\item Ðајновије издање \LaTeX-а Ñадржи нову верзију \acro{LPPL} + лиценце --- која је Ñада званично одобрена од Ñтране Debian-а. Што Ñе + тиче других новоÑти везаних за ову облаÑÑ‚, погледајте фајл + \filename{ltnews} у \OnCD{texmf-dist/doc/latex/base}. + +\item У диÑтрибуцију је укључен \cmdname{dvipng}, нови програм за + претварање \acro{DVI} фајлова у \acro{PNG} Ñлике. Погледајте + \OnCD{texmf/doc/man/man1/dvipng.1}. + +\item Скуп фонтова који припадају пакету \pkgname{cbgreek} Ñвели Ñмо + на „Ñредњу“ величину, уз приÑтанак и Ñавет аутора, Клаудија + Бекарија\textitalian{[Claudio Beccari]}. ИÑкључили Ñмо невидљиве, + провидне и „оцртане“ (\textenglish{outlined}) фонтове; они Ñе веома + ретко кориÑте а нама је проÑтор био преко потребан. Цела колекција је + наравно и даље доÑтупна преко \acro{CTAN}-a + (\url{http://mirror.ctan.org/tex-archive/fonts/greek/cb}). + +\item \cmdname{oxdvi} је уклоњен; умеÑто њега проÑто кориÑтите + \cmdname{xdvi}. + +\item Линкови \cmdname{ini} и \cmdname{vir} за команде \cmdname{tex}, + \cmdname{mf} и \cmdname{mpost} више Ñе не праве (као нпр. + \cmdname{initex}). ФункционалноÑÑ‚ команде \cmdname{ini} била је + доÑтупна путем опције \optname{-ini} годинама уназад. + +\item Укинута је подршка за платформу \textsf{i386-openbsd}. Пошто је + пакет \pkgname{tetex} доÑтупан преко портова на \acro{BSD} ÑиÑтемима + и пошто Ñмо имали Ñпремљене верзије програма\char"0304\ за + \acro{GNU/}Linux и Free\acro{BSD}, били Ñмо мишљења да Ñе време + волонтера\char"0304\ могло боље употребити за неке друге Ñтвари. + +\item Ðа платформи \textsf{sparc-solaris} (можда и другде) може бити + неопходно да подеÑите ÑиÑтемÑку променљиву + \envname{LD\_LIBRARY\_PATH} како би програми из пакета + \pkgname{t1utils} могли да раде. Ово Ñе деÑило зато што Ñе они + компајлирају помоћу C++, а на том ÑиÑтему нема Ñтандардне локације за + библиотеке које програми кориÑте док раде. (Ово није ново у верзији + 2004, али није било документовано у претходним издањима.) Слично, на + платформи \textsf{mips-irix}, неоходни Ñу \acro{MIPS}pro 7.4 радне + библиотеке. + +\end{itemize} + +\subsubsection{2005} + +Издање из 2005. објављено је, као и увек, Ñа великим бројем измена на +пакетима и програмима. ИнфраÑтруктура је оÑтала релативно непромењена +у одноÑу на 2004. годину. Ðеизбежно, понешто је морало другачије да +Ñе уради: + +\begin{itemize} +\itemsep=.5em + +\item Уведене Ñу нове Ñкрипте \cmdname{texconfig-sys}, + \cmdname{updmap-sys} и \cmdname{fmtutil-sys}; оне мењају + конфигурацију у ÑиÑтемÑким директоријумима. Скрипте + \cmdname{texconfig}, \cmdname{updmap} и \cmdname{fmtutil} Ñада + прерађују фајлове Ñпецифичне за кориÑника; ти фајлови Ñу Ñмештени у + \dirname{$HOME/.texlive2005}. + +\item У Ñкладу Ñа тим, уведене Ñу и одговарајуће нове променљиве + \envname{TEXMFCONFIG} и \envname{TEXMFSYSCONFIG}; оне одређују + директоријуме у којима Ñе налазе конфигурациони фајлови (кориÑнички + или ÑиÑтемÑки). Стога Ñе може деÑити да треба да премеÑтите личне + верзије фајлова \filename{fmtutil.cnf} и \filename{updmap.cfg} на та + нова меÑта; друга могућноÑÑ‚ је да у \filename{texmf.cnf} промените + вредноÑти \envname{TEXMFCONFIG} или \envname{TEXMFSYSCONFIG}. У + Ñваком Ñлучају, Ñтварни положај ових фајлова и вредноÑти променљивих + \envname{TEXMFCONFIG} и \envname{TEXMFSYSCONFIG} морају да Ñе Ñлажу. + Погледајте одељак~\ref{sec:texmftrees}, + ÑÑ‚Ñ€.~\pageref{sec:texmftrees}. + +\item Прошле године Ñмо задржали \verb|\pdfoutput| и друге примитиве +које ниÑу дефиниÑане за \dvi\ излаз, чак и ако Ñе кориÑти +\cmdname{pdfetex}. Ове године, као што Ñмо обећали, повукли Ñмо ту +меру компатибилноÑти. Дакле, ако Ваш документ кориÑти +\verb|\ifx\pdfoutput\undefined| да уÑтанови да ли Ñе прави \acro{PDF} +као излаз, морате да промените тај теÑÑ‚. Можете да за ту Ñврху +употребите пакет \pkgname{ifpdf.sty} (који ради и под чиÑтим \TeX-ом +и под \LaTeX-ом) или да позајмите логику из његовог ко\char"0302 да. + +\item Прошле године Ñмо променили већину формата тако да иÑпиÑују + (8-битне) знакове као такве (погледајте претходни одељак). Ðови + \acro{TCX} фајл \filename{empty.tcx} Ñада омогућава лакши начин да Ñе + добије оригинална \verb|^^| нотација ако је желите, на пример: +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + +\item У диÑтрибуцију је Ñада укључен нови програм \cmdname{dvipdfmx} + који преводи \acro{DVI} у \acro{PDF}; ово је надоградња програма + \cmdname{dvipdfm} која иза Ñебе има активну групу програмера (Ñтари + програм је за Ñада још увек доÑтупан, премда га не препоручујемо). + +\item Укључени Ñу нови програми \cmdname{pdfopen} и + \cmdname{pdfclose}: они омогућавају да Ñе \filename{.pdf} фајлови + изнова учитају у приказивачу \textenglish{Adobe Acrobat Reader} без + поновног покретања програма. (Други pdf читачи, пре Ñвега + \cmdname{xpdf}, \cmdname{gv} и \cmdname{gsview}, никада ниÑу имали + овај проблем.) + +\item Ради доÑледноÑти, имена променљивих \envname{HOMETEXMF} и + \envname{VARTEXMF} промењена Ñу у \envname{TEXMFHOME} и + \envname{TEXMFSYSVAR}. Ту је такође и \envname{TEXMFVAR}, за коју је + предвиђено да буде Ñпецифична за појединог кориÑника. Погледајте прву + Ñтавку у овом ÑпиÑку. + +\end{itemize} + + +\subsubsection{2006--2007} + +Током 2006. и 2007. главни додатак \TL{}-у био је програм \XeTeX{}, +доÑтупан путем команди \texttt{xetex} и \texttt{xelatex}; погледајте +\url{http://scripts.sil.org/xetex}. + +Такође, значајно је обновљен и унапређен програм \MP{}, уз велике +планове за будућноÑÑ‚ (\url{http://tug.org/metapost/articles}); +наÑтављен је и развој pdf\TeX{}-а +(\url{http://tug.org/applications/pdftex}). + +\TeX-ов \filename{.fmt} (\textenglish{high-speed format}) и Ñлични +фајлови за \MP\ и \MF\ Ñада Ñу Ñмештени у директоријуме унутар +\dirname{texmf/web2c} умеÑто у Ñа\char"0302 м тај директоријум +(премда Ñе тај директоријум и даље претражује, зарад поÑтојећих +\filename{.fmt} фајлова). Поддиректоријуми Ñу названи према +програмима (врÑтама \TeX{}-а) који Ñу у употреби, као што Ñу +\filename{tex}, \filename{pdftex} или \filename{xetex}. Ова промена +не би требало да буде видљива у Ñвакодневној употреби. + +(ЧиÑти) \texttt{tex} програм више не чита прву линију која почиње Ñа +\texttt{\%\&} како би одредио који формат да покрене; \texttt{tex} је +Ñада чиÑти кнутовÑки \TeX. (\LaTeX\ и Ñви други и даље читају линије +Ñа \texttt{\%\&}.) + +Ðаравно, и ове године Ñмо, као и обично, унели Ñтотине надоградњи +Ñвих пакета и програма. Као и увек, молимо Ð’Ð°Ñ Ð´Ð° проверите да ли +поÑтоје нове верзије на \acro{CTAN}-у (\url{http://mirror.ctan.org}). + +Што Ñе тиче интерног рада програмерÑког тима, развојно дрво \TL{}-а +Ñе Ñада држи под контролом ÑиÑтема \textenglish{Subversion}, Ñа +уобичајеним веб-интерфејÑом за прегледање ко\char"0302 да; можете +доћи до одговарајућих Ñтраница преко наше уводне Интернет-Ñтране. +Премда није оÑтавила много видљивих трагова у коначном издању из ове +године, очекујемо да ће ова промена обезбедити Ñтабилан развојни +темељ за године које долазе. + +Коначно, у мају 2006. Ð¢Ð¾Ð¼Ð°Ñ Ð•Ñер [\textgerman{Thomas Esser}] је +објавио да више неће радити на te\TeX{}-у +(\url{http://tug.org/tetex}). Директна поÑледица овог потеза било је +огромно интереÑовање за \TL{}, поÑебно међу \GNU/Linux +диÑтрибуцијама. (У \TL{}-у Ñада поÑтоји нова инÑталациона шема +\texttt{tetex}, која даје приближни еквивалент.) Ðадамо Ñе да ће Ñе +ово у једном тренутку преточити у побољшање квалитета \TeX\ окружења +за Ñве кориÑнике. + + +\subsubsection{2008} + +2008. године цела инфраÑтруктура \TL{}-а је редизајнирана и иÑпиÑана +иÑпочетка. Сви подаци о инÑталацији Ñада Ñу Ñмештени у текÑтуалном +фајлу \filename{tlpkg/texlive.tlpdb}. + +Између оÑталог, ово је коначно омогућило да Ñе инÑталција \TL{}-а +оÑвежава преко Интернета након почетног Ñмештања на диÑк, што је +функционалноÑÑ‚ коју је MiK\TeX\ имао пре много година. Очекујемо да +кориÑницима редовно Ñтављамо на раÑполагање нове пакете чим Ñе објаве +на \CTAN-у. + +У диÑтрибуцију је укључен важан нови дериват Lua\TeX\ +(\url{http://luatex.org}); поред новог нивоа флекÑибилноÑти у +припреми текÑта, он уводи и Ñјајан језик за пиÑање команди у облику +Ñкрипте (\textenglish{scripting language}), који може да Ñе кориÑти и +унутар и ван \TeX\ докумената. + +Подршка за \Windows{} и платформе заÑноване на Unix-у Ñада је много +униформнија. Ðарочито је битно то што је Ñада већина Ñкрипти које Ñу +напиÑане у језицима Perl и Lua Ñада доÑтупна и на \Windows{}-у зато +што Ñе Perl диÑтрибуира у оквиру \TL-а. + +Ðова Ñкрипта \cmdname{tlmgr} (одељак~\ref{sec:tlmgr}) Ñада предÑтавља +општи Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÑ˜Ñ Ð·Ð° одржавање \TL{}-а поÑле почетне инÑталације. Она +барата новим верзијама пакета\char"0304\ и води рачуна о одговарајућим +прерадама фајлова Ñа форматима, мапама (\textenglish{map files}), +фајловима везаним за поједине језике, уз могућноÑÑ‚ да Ñе укључе и +локални додаци. + +Пошто Ñада имамо на раÑполагању Ñкрипту \cmdname{tlmgr}, Ñве радње +(везане за прераду конфигурационих фајлова Ñа форматима и правилима +за прелом речи\char"0304) које је некада обављао програм +\cmdname{texconfig} Ñада Ñу иÑкључене. + +Програм за прављење индекÑа\char"0304\ \cmdname{xindy} +(\url{http://xindy.sourceforge.net/}) укључен је за већину подржаних +оперативних ÑиÑтема. + +Ðлатка \cmdname{kpsewhich} Ñада може да врати Ñве поготке за задати +фајл (опција \optname{--all}) или да ограничи поготке на задати +поддиректоријум (опција \optname{--subdir}). + +Програм \cmdname{dvipdfmx} Ñада има могућноÑÑ‚ да извуче податке о +виÑини и ширини текÑта (\textenglish{bounding box}) ако Ñе позове као +\cmdname{extractbb}; ово је била једна од поÑледњих могућноÑти које +је имао \cmdname{dvipdfm} а које ниÑу поÑтојале у +\cmdname{dvipdfmx}-у. + +Уклоњена Ñу алтернативна имена (алиаÑи) за фонтове +\filename{Times-Roman}, \filename{Helvetica} итд. Различити пакети +очекују различито понашање од тих имена (пре Ñвега очекују да имају +различите кодне раÑпореде), и није поÑтојао добар начин да Ñе ово +реши. + +Уклоњен је формат \pkgname{platex} како би Ñе разрешио конфликт око +имена Ñа потпуно незавиÑним јапанÑким \pkgname{platex}-ом; пакет +\pkgname{polski} Ñада предÑтавља главни оÑлонац за Ñве што Ñе тиче +пољÑког језика. + +Интерно, \web\ string pool фајлови Ñада Ñу компајлирани као бинарни +фајлови, како би Ñе олакшале надоградње. + +Коначно, промене које је увео Доналд Кнут [Donald Knuth] у Ñвом раду +„Дорада \TeX{}-а из 2008“ („\textenglish{\TeX\ tuneup of 2008}“) +укључене Ñу у ово издање. Погледајте +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}. + + +\subsubsection{2009} + +У издању из 2009, PDF је поÑтављен као подразумевани излазни формат +за Lua\AllTeX\ како би Ñе иÑкориÑтиле могућноÑти напредне Lua\TeX-ове +подршке за OpenType итд. Ðови програми названи \code{dviluatex} и +\code{dvilualatex} покрећу Lua\TeX\ Ñа излазом у DVI формату. +Интернет-Ñтраница Lua\TeX-а је \url{http://luatex.org}. + +Програм Omega и формат Lambda Ñу уклоњени, након диÑкуÑије Ñа +ауторима пројекта Omega. У диÑтрибуцији Ñу оÑтале надограђене верзије +Aleph-а и Lamed-а, као и алатке из пројекта Omega. + +Укључено је и ново издање AMS \TypeI\ фонтова, међу њима и +\textenglish{Computer Modern}: на тај начин је поÑтало доÑтупно +неколико промена облика\char"0304\ које је Кнут [Knuth] током +претходних година унео у изворни \MF\ ко\char"0302 д, а побољшан је и +„hinting“. Херман Цапф [\textgerman{Hermann Zapf}] је темељно +редизајнирао Ојлер [\textgerman{Euler}] фонтове (в. +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). У +Ñвим овим Ñлучајевима, метрика је оÑтала непромењена. +Интернет-Ñтраница фонтова Ðмеричког математичког друштва (AMS) је +\url{http://www.ams.org/tex/amsfonts.html}. + +У диÑтрибуцију Ñу укључене верзије новог графичког окружења +\TeX{}works за \Windows{} и Mac\TeX. Ðко желите да кориÑтите +\TeX{}works на другим оперативним ÑиÑтемима, погледајте +Интернет-Ñтраницу пројекта \url{http://tug.org/texworks}. \TeX{}works +је програм пиÑан за више платформи и инÑпириÑан је \MacOSX\ едитором +TeXShop, Ñа циљем да олакша Ñвакодневни рад у \TeX{}-у. + +Такође, укључене Ñу верзије графичког програма +\textenglish{Asymptote} за неколико оперативних ÑиÑтема. Он +интерпретира језик за опиÑивање цртежа\char"0304\ који личи на \MP, али +Ñа развијеном подршком за тродимензионалне пројекције и многим другим +могућноÑтима. Интернет-Ñтраница овог програма је +\url{http://asymptote.sourceforge.net}. + +ЗаÑебни програм \code{dvipdfm} замењен је \code{dvipdfmx}-ом; +\code{dvipdfmx} може да ради у поÑебном режиму компатибилноÑти ако Ñе +позове Ñа Ñтарим именом. \code{dvipdfmx} укључује подршку за кинеÑки, +јапанÑки и корејÑки (\acro{CJK}) и током година које Ñу прошле од +поÑледњег издања \code{dvipdfm}-а накупило Ñе много иÑправки. +Интернет-Ñтраница DVIPDFM$x$-а је +\url{http://project.ktug.or.kr/dvipdfmx}. + +Додати Ñу програми за платформе \pkgname{i386-cygwin} и +\pkgname{i386-netbsd}; поÑаветовани Ñмо да кориÑници Open\acro{BSD}-ја +добијају \TL{} преко Ñвог ÑиÑтема за пакете; такође, било је и тешкоћа +да Ñе направе програми који би имали шанÑу да раде на више од једног +издања тог оперативног ÑиÑтема. + +Још неколико малих промена: Ñада кориÑтимо компреÑију типа +\pkgname{xz}, која предÑтавља Ñтабилну замену за \pkgname{lzma} +(\url{http://tukaani.org/xz/}); знак |$| је Ñада дозвољен у именима +фајлова уколико то не доводи то поклапања Ñа именом неке поÑтојеће +променљиве; библиотека \KPS{} Ñада има подршку за +\textenglish{multi-threading} (неопходно за нову верзију програма +\MP{}); читаво компајлирање \TL{}-а Ñада Ñе заÑнива на ÑиÑтему +\textenglish{Automake}. + +Ðа крају, једна напомена везана за прошлоÑÑ‚: Ñва издања \TL{}-а, Ñа +допунÑким материјалом као што Ñу налепнице и омоти за \CD-ове, +доÑтупна Ñу на Ñтраници \url{ftp://tug.org/historic/systems/texlive}. + + +\subsubsection{2010} +\label{sec:2010news} % keep with 2010 + +У издању \TL{}-а из 2010. године подразумевана верзија \acro{PDF} +формата који праве разни програми поÑтављена је на 1.5; ово омогућава +бољу компреÑију докумената. Ова промена важи за Ñве \TeX\ програме +када им је задато да праве PDF, као и за \code{dvipdfmx}. Ðко желите +да вратите верзију на PDF~1.4, учитајте \LaTeX\ пакет по имену +\pkgname{pdf14} или подеÑите |\pdfminorversion=4|. + +pdf\AllTeX\ Ñада \emph{аутоматÑки} пребацује задати +\textenglish{Encapsulated PostScript} (EPS) фајл у PDF формат помоћу +пакета \pkgname{epstopdf}; иÑто важи и ако је учитан \LaTeX-ов +конфигурациони фајл \code{graphics.cfg} и ако је излаз подешен на +PDF. Стандардне опције Ñу подешене Ñа намером да елиминишу могућноÑÑ‚ +да Ñе неки ручно урађени PDF фајл Ñлучајно пребрише у том процеÑу, +али Ви Ñвеједно можете да Ñпречите да Ñе \code{epstopdf} учитава +Ñтављајући |\newcommand{\DoNotLoadEpstopdf}{}| (или |\def...|) пре +команде \cs{documentclass}. ИÑто тако, \code{epstopdf} Ñе не учитава +ако Ñе кориÑти пакет \pkgname{pst-pdf}. Више детаља о овим Ñтварима +можете пронаћи у документацији укљученој у пакет \pkgname{epstopdf} +(\url{http://ctan.org/pkg/epstopdf-pkg}). + +Још једна промена која има везе Ñа овим: Ñада је покретање малог +броја Ñпољних команди од Ñтране \TeX-a (путем \cs{write18}) +активирано у Ñтандардној инÑталацији. Ове команде Ñу: +\code{repstopdf}, \code{makeindex}, \code{kpsewhich}, \code{bibtex} и +\code{bibtex8}; ÑпиÑак је одређен у фајлу \code{texmf.cnf}. Ðко +радите у окружењу у коме морате да укинете покретање Ñвих таквих +Ñпољних команди, можете да иÑкључите одговарајућу опцију у +инÑталационом програму (погледајте одељак~\ref{sec:options}) или да +промените вредноÑÑ‚ након инÑталације помоћу команде +|tlmgr conf texmf shell_escape 0|. + +Промена која Ñледи из претходне две јеÑте то што ће \BibTeX\ и +Makeindex Ñада, у Ñтандардној конфигурацији, одбити да упиÑују Ñвоје +излазне фајлове у произвољни директоријум (као и Ñа\char"0302 м +\TeX). Ова промена је уведена да би Ñе иÑкориÑтила могућноÑÑ‚ да Ñе +\cmdname{bibtex} и \cmdname{makeindex} додају на лиÑту дозвољених +команди путем \cs{write18}; из поменутих разлога оне Ñу у тај ÑпиÑак +и укључене. Ðко желите да промените ово подразумевано понашање, +можете да дефинишете ÑиÑтемÑку променљиву \envname{TEXMFOUTPUT} или +да промените параметар |openout_any|. + +\XeTeX\ Ñада подржава микротипографÑке ефекте (\textenglish{margin +kerning}) на иÑти начин као pdf\TeX. (Проширивање фонтова +[\textenglish{font expansion}] тренутно није подржано.) + +У Ñтандардној конфигурацији, \prog{tlmgr} Ñада прави по једну +резервну копију (бекап) за Ñваки надограђени пакет (\code{tlmgr +option autobackup 1}), тако да Ñе пакети чије оÑвежавање не уÑпе могу +лако повратити у радно Ñтање помоћу \code{tlmgr restore}. Ðко +надограђујете пакете поÑле инÑталације а немате проÑтора на диÑку за +резервне копије, покрените команду \code{tlmgr option autobackup 0}. + +У \TL{} Ñу укључени неки нови програми: p\TeX\ и алатке повезане Ñа +њим, Ñпецијализовани за припрему текÑта на јапанÑком језику; програм +\BibTeX{}U који уводи подршку за \textenglish{Unicode} у \BibTeX; +алатка \prog{chktex} (\url{http://baruch.ev-en.org/proj/chktex}) која +проверава иÑправноÑÑ‚ \AllTeX\ докумената; програм за пребацивање из +DVI у SVG векторÑки формат (\url{http://dvisvgm.sourceforge.net}). + +Додате Ñу верзије програма\char"0304\ за пет нових платформи: +\code{amd64-freebsd}, \code{amd64-kfreebsd}, \code{i386-freebsd}, +\code{i386-kfreebsd}, \code{x86\_64-darwin} и \code{x86\_64-solaris}. + +Једна промена из \TL{} 2009 коју Ñмо пропуÑтили да евидентирамо: +бројни програми везани за \TeX4ht\ (\url{http://tug.org/tex4ht}) +Ñклоњени Ñу из директоријума Ñа извршним фајловима. Програм +\code{mk4ht} Ñада покрива Ñве могуће \code{tex4ht} комбинације. + +Ðа нашу велику жалоÑÑ‚, издање \TL{}-а на \TK\ \DVD-ју више не може да +Ñе покреће „живо“ (\textenglish{live}): \DVD\ као медиј проÑто више +није довољно велики. У томе има, међутим, и једна уÑпутна предноÑÑ‚: +инÑталација Ñа \DVD-ја је Ñада много бржа. + + +\subsubsection{2011} + +Издање \TL{}-a из 2011. године донело је релативно мало промена. + +Програми за \MacOSX\ (\code{universal-darwin} и \code{x86\_64-darwin}) +Ñада раде Ñамо на ÑиÑтему \textenglish{Leopard} и на новијим издањима; +\textenglish{Panther} и \textenglish{Tiger} ниÑу више подржани. + +Укључен је програм за обраду библиографија \code{biber}; поÑтоје +верзије за Ñве уобичајене оперативне ÑиÑтеме. Развој овог Ñофтвера је +теÑно повезан Ñа пакетом \code{biblatex}. \code{biber} поÑтавља на +нове оÑнове библиографÑке могућноÑти које поÑтоје у \LaTeX{}-у. + +Програм \MP\ (\code{mpost}) више не прави и не кориÑти \code{.mem} +фајлове. Ðеопховни фајлови, као што је \code{plain.mp}, напроÑто Ñе +изнова читају Ñваки пут када Ñе програм покрене. Ова промена везана је +за подршку \MP-а као библиотеке, што је још једна значајна, премда за +кориÑнике невидљива промена. + +Имплементација програма \code{updmap} у програмÑком језику Perl, +која је раније била у употреби Ñамо на \Windows-у, Ñада је прерађена +и Ñтављена у употребу на Ñвим платформама. Ова промена не би требало +да буде видљива за кориÑнике, оÑим што ће од Ñада програм радити много +брже. + + +% +\htmlanchor{news} +\subsection{Тренутно Ñтање} +\label{sec:tlcurrent} + +\code{tlmgr} Ñада може да обавља надоградње кориÑтећи неколико +репозиторијума на Интернету упоредо. О овоме можете да прочитате +више у документацији \TL\ менаџера (\code{tlmgr help}). + +Подразумевана вредноÑÑ‚ параметра \cs{XeTeXdashbreakstate} Ñада је~1 +(и за \code{xetex} и за \code{xelatex}). То значи да ће Ñе линије +ломити поÑле Ñредњих и великих црта\char"0304\ +(\textenglish{em-dash} и \textenglish{en-dash}), као што је увек био +Ñлучај у чиÑтом \TeX-у, \LaTeX-у, Lua\TeX-у, итд. У поÑтојећим \XeTeX\ +документима у којима је неопходно задржати потпуну компатибилноÑÑ‚ по +питању ломљења линије иза црте морате изричито да подеÑите вредноÑÑ‚ +\cs{XeTeXdashbreakstate} на~0. + +Фајлови које праве \code{pdftex} и \code{dvips} (између оÑталих) Ñада +могу да буду већи од 2 гигабајта. + +35 Ñтандардних \PS фонтова Ñада Ñе уграђују у Ñве фајлове које прави +\code{dvips}, зато што Ñе појавило много разних верзија ових +„Ñтандардних“ фонтова. + +У режиму рада \cs{write18} (у коме је дозвољено покретање Ñамо малог +броја Ñпољних команди), још једна команда додата је у повлашћени ÑпиÑак +у Ñтандардној инÑталацији: \code{mpost}. + +Фајл \code{texmf.cnf} Ñе Ñада може пронаћи и у +\filename{../texmf-local}, тј. преко +\filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf} (ако поÑтоји). + +Скрипта \code{updmap} Ñада чита \code{updmap.cfg} у Ñваком дрвету +умеÑто Ñамо једну глобалну конфигурацију. Ова промена нема никаквих +практичних поÑледица за кориÑнике који ниÑу директно мењали +\code{updmap.cfg} фајлове. Више информација можете пронаћи у +документацији Ñкрипте \code{updmap} (покрените \code{updmap --help}). + +Додате Ñу нове платформе \pkgname{armel-linux} и +\pkgname{mipsel-linux}; платформе \pkgname{sparc-linux} и +\pkgname{i386-netbsd} удаљене Ñу из главне диÑтрибуције \TL-а, али +програме за ове платформе (као и за велики број других) и даље је +могуће инÑталирати помоћу поÑтупка опиÑаног на Ñтраници +\url{http://tug.org/texlive/custom-bin.html}. + + +\subsection{БудућноÑÑ‚} + +\emph{\TL{} није Ñавршен!} (И никада неће ни бити.) Ðамера нам је да +наÑтавимо да издајемо нове верзије, да пружимо више помоћног +материјала, више алатки, више инÑталационих програма и (наравно) још +боље подешену и теÑтирану Ñтруктуру макроа и фонтова, који Ñе Ñа +Ñвоје Ñтране непреÑтано уÑавршавају. Сав овај рад обављају волонтери +у Ñвом Ñлободном времену, тако да поÑла увек има на претек. Стога Ð’Ð°Ñ +позивамо да поÑетите Ñтраницу +\url{http://tug.org/texlive/contribute.html}. + +Молимо Ð’Ð°Ñ Ð´Ð° шаљете иÑправке, предлоге и понуде за помоћ на: +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{Срећно \TeX-овање!} + +% ---------------------------------------------------------------------- +\vfill +\noindent\rule{\linewidth}{.4pt} + +\bigskip +\noindent\centering\begin{minipage}[b]{.8\textwidth} +\scriptsize + +\begin{english} +Permission is granted to copy, distribute and/or modify this translation +under the terms of the adapted version of \mbox{FreeBSD} documentation +licence. + +\smallskip +\url{http://www.gnu.org/licenses/license-list.html#FreeDocumentationLicenses}\\ +\url{http://www.freebsd.org/copyright/freebsd-doc-license.html} +\end{english} + +\smallskip +ДиÑтрибуција овог превода дозвољена је под уÑловима прилагођене +варијанте FreeBSD Documentation License. TекÑÑ‚ лиценце je прилагођен +техничким карактериÑтикама ове документације. + +\bigskip +\begin{english} +Serbian translation of \emph{\TeX\ Live Guide: \TL{} 2012}.\\ +Copyright © 2010, 2011, 2012 Nikola LeÄić (the translator). + +\smallskip +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: + +\begin{itemize} +\parskip=0pt +\itemsep=.1em + +\item Redistributions of source code (\XeLaTeX\ code) must retain the + above copyright notice, this list of conditions and the following + disclaimer as the first lines of the source file unmodified. + +\item Redistributions in compiled form (transformed to other DTDs, + converted to PDF, HTML, PostScript, RTF and other formats) must + reproduce the above copyright notice, this list of conditions and + the following disclaimer in the documentation and/or other materials + provided with the distribution. +\end{itemize} + +THIS DOCUMENTATION IS PROVIDED BY THE TRANSLATOR ``AS IS'' AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE TRANSLATOR BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +\end{english} +\end{minipage} +% ---------------------------------------------------------------------- + +\end{document} diff --git a/Master/texmf-dist/doc/texlive/texlive-zh-cn/Makefile b/Master/texmf-dist/doc/texlive/texlive-zh-cn/Makefile new file mode 100644 index 00000000000..54edd60add4 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-zh-cn/Makefile @@ -0,0 +1,23 @@ +# $Id$ +# Makefile for TeX Live documentation. Public domain. +TEX = xelatex +doc = texlive-zh-cn +source = $(doc).tex +pdf = $(doc).pdf + +all: $(pdf) + +env = TEXINPUTS=../texlive-common:../texlive-en:; export TEXINPUTS; + +$(pdf): $(source) tex-live-zh-cn.sty + $(env) $(TEX) $< + $(env) $(TEX) $< + +clean: + rm -f *.aux *.log *.blg *.toc *.out *.lot tex4ht.ps *.4* + rm -f *.xref* *.lg *.idv *.out *.otc *.tmp tmp.* + rm -f $(doc).dvi $(doc).ps + +realclean: clean + rm -f $(doc).pdf + rm -f *.html *.htm $(doc).css *.gif *.jpg diff --git a/Master/texmf-dist/doc/texlive/texlive-zh-cn/README-live.ZH-CN b/Master/texmf-dist/doc/texlive/texlive-zh-cn/README-live.ZH-CN new file mode 100644 index 00000000000..29191a6a5d4 --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-zh-cn/README-live.ZH-CN @@ -0,0 +1,25 @@ +TeX Live Guide Translation (Simplified Chinese) +=============================================== + +To compile live.tex, you need: + +1. Xe(La)TeX (and related packages like fontspec) 0.9995+ +(a recent version is bundled with TeX Live). + +2. xeCJK macro package. + +3. We use the following fonts: + + AR PL UMing + AR PL UKai [1] + Droid Sans Fallback [2] + + They can be retrieved here: + [1] http://www.freedesktop.org/wiki/Software/CJKUnifonts/Download + [2] http://android.git.kernel.org/?p=platform/frameworks/base.git;a=tree;f=data/fonts;hb=HEAD + +4. make + +5. If you have any problems, please contact: + gzjjgod at gmail dot com + diff --git a/Master/texmf-dist/doc/texlive/texlive-zh-cn/tex-live-zh-cn.sty b/Master/texmf-dist/doc/texlive/texlive-zh-cn/tex-live-zh-cn.sty new file mode 100644 index 00000000000..cf6d597105a --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-zh-cn/tex-live-zh-cn.sty @@ -0,0 +1,35 @@ +% Import the original tex-live.sty from texlive-en +\def\Status{1} + +% Chinese support (with XeTeX 0.9995+) +\RequirePackage{xeCJK} +\parindent=20pt +\defaultfontfeatures{Mapping=tex-text} +\setCJKmainfont[BoldFont=Droid Sans Fallback, ItalicFont=AR PL UKai CN]{AR PL UMing CN} +\setCJKmonofont[Scale=0.9]{AR PL UKai CN} +\setCJKfamilyfont{song}[BoldFont=Droid Sans Fallback]{AR PL UMing CN} +\setCJKfamilyfont{sf}[BoldFont=Droid Sans Fallback]{Droid Sans Fallback} + +\RequirePackage{tex-live} + +\renewcommand\contentsname{目录} +\renewcommand\listfigurename{æ’图列表} +\renewcommand\listtablename{表格列表} +\renewcommand\refname{å‚考文献} +\renewcommand\indexname{索引} +\renewcommand\figurename{图} +\renewcommand\tablename{表} +\renewcommand\partname{部分} +\renewcommand\appendixname{附录} +\renewcommand\abstractname{摘è¦} +\setlength{\parskip}{5pt} + +% Fix for xeCJK: xeCJK will remove all spaces after Chinese, +% but it cannot add spaces between Chinese and \Url, that's +% why we need to add them here +% \renewcommand\path{ \begingroup \urlstyle{tt}\Url} +% \def\OnCD#1{ \href{../../../../#1}{\path{#1}}} +% \def\email#1{ \href{mailto:#1}{\path{#1}}} % \path comes from url +% \renewcommand\url{ \begingroup \Url} + +\endinput diff --git a/Master/texmf-dist/doc/texlive/texlive-zh-cn/texlive-zh-cn.pdf b/Master/texmf-dist/doc/texlive/texlive-zh-cn/texlive-zh-cn.pdf new file mode 100644 index 00000000000..6ff85630bcd Binary files /dev/null and b/Master/texmf-dist/doc/texlive/texlive-zh-cn/texlive-zh-cn.pdf differ diff --git a/Master/texmf-dist/doc/texlive/texlive-zh-cn/texlive-zh-cn.tex b/Master/texmf-dist/doc/texlive/texlive-zh-cn/texlive-zh-cn.tex new file mode 100644 index 00000000000..abb8acc13ab --- /dev/null +++ b/Master/texmf-dist/doc/texlive/texlive-zh-cn/texlive-zh-cn.tex @@ -0,0 +1,2788 @@ +% $Id$ +% TeX Live documentation. Originally written by Sebastian Rahtz and +% Michel Goossens, now maintained by Karl Berry and others. +% Translated by Jjgod Jiang , +% Jinsong Zhao , +% Yue Wang +% Helin Gai +% Public domain. +% +\documentclass{article} +\let\tldocenglish=1 % for live4ht.cfg + +\usepackage{tex-live-zh-cn, indentfirst} + +\begin{document} + +\title{% + {\huge \textit{\TeX\ Live 指å—}\\\smallskip}% + {\LARGE \textsf{\TL{} 2012}} +} + +\author{Karl Berry 编写 \\[3mm] + \url{http://tug.org/texlive/} + } + +\date{2012 å¹´ 6 月} + +\maketitle + +\begin{multicols}{2} +\tableofcontents +%\listoftables +\end{multicols} + +\section{简介} +\label{sec:intro} + +\subsection{\TeX\ Live 与 \TeX\ Collection} + +本文档æè¿° \TL{} 软件的主è¦åŠŸèƒ½å’Œç‰¹æ€§ï¼Œ\TL{} 是 \TeX{} åŠå…¶ç›¸å…³ç¨‹åºåœ¨ +\acro{GNU}/Linux åŠå…¶ä»–ç±» Unix 系统ã€\MacOSX\ å’Œ Windows +系统下的一套å‘行版。 + +ä½ å¯ä»¥ç›´æŽ¥ä¸‹è½½ \TL{},也å¯ä»¥åœ¨ \TeX{} 用户组织给会员分å‘çš„ \TK{} +\DVD 中找到。第~\ref{sec:tl-coll-dists}~节中,简è¦åœ°ä»‹ç»äº† +\DVD 的内容。这两套å‘行版都是用户组织共åŒå作完æˆçš„。 +这篇文档, 主è¦ä»‹ç» \TL{} 本身。 + +\TL{} 包括了 \TeX{}, \LaTeXe{}, \ConTeXt, \MF, \MP, \BibTeX{} +等许多å¯æ‰§è¡Œç¨‹åºï¼›ç§ç±»ç¹å¤šçš„å®åŒ…ã€å­—体和文档,并支æŒä¸–界上许多 +ä¸åŒçš„语言。 + +文档末尾的第~\ref{sec:history}~节 (第~\pageref{sec:history}~页) +介ç»äº†è¿™ä¸€ç‰ˆ \TL{} çš„é‡è¦æ”¹å˜ã€‚ + +\htmlanchor{platforms} +\subsection{æ“作系统支æŒ} +\label{sec:os-support} + +\TL{} 为多ç§åŸºäºŽ Unix çš„å¹³å°æ供了å¯æ‰§è¡Œæ–‡ä»¶ï¼ŒåŒ…括 \GNU/Linux〠+\MacOSX{}ã€å’Œ Cygwin。它还包å«äº†æºä»£ç ï¼Œå¯ä¾›åœ¨æ²¡æœ‰æ +ä¾›å¯æ‰§è¡Œæ–‡ä»¶çš„å¹³å°ä¸Šç¼–译安装。 + +至于 Windows,\TL{} ä»…æ”¯æŒ Windows \acro{XP} 或åŽç»­ç‰ˆæœ¬ã€‚ +Windows~2000 å¯èƒ½å¯ä»¥ç»§ç»­å·¥ä½œã€‚æˆ‘ä»¬æ²¡æœ‰åŒ…å« 64 ä½çš„ Windows +å¯æ‰§è¡Œæ–‡ä»¶ï¼Œä¸è¿‡ 32 ä½çš„å¯æ‰§è¡Œæ–‡ä»¶ä¹Ÿèƒ½ 64 ä½çš„系统上正常è¿è¡Œã€‚ + +除了 \TL{} 以外,Windows å’Œ \MacOSX 用户还有其它的选择,请å‚考 +第~\ref{sec:tl-coll-dists}~节。 + +\subsection{\protect\TL{} 的基本安装} +\label{sec:basic} + +ä½ å¯ä»¥ä½¿ç”¨ \DVD{} æ–¹å¼æˆ–者网络方å¼æ¥å®‰è£… \TL{} +(\url{http://tug.org/texlive/acquire.html})。 +通过网络的安装程åºæœ¬èº«éžå¸¸å°ï¼Œå®ƒå¯ä»¥ä»Žç½‘上下载所有的你所è¦æ±‚的软 +件包。网络安装程åºå¯¹ä»…使用 \TL{} 一å°éƒ¨åˆ†çš„用户æ¥è¯´éžå¸¸é€‚宜。 + +\DVD{} 安装程åºå¯ä»¥æŠŠ \TL{} 安装到你的本地ç£ç›˜ä¸Šã€‚ä½ ä¸èƒ½ç›´æŽ¥ä»Ž \TK{} +\DVD{} (或者它的 \code{.iso} é•œåƒ) 上è¿è¡Œ \TL{},但你å¯ä»¥åœ¨ä¸€ä¸ª \acro{USB} 盘上 +安装一套å¯ä»¥è¿è¡Œçš„版本 (å‚è§ \ref{sec:portable-tl})。安装方法将 +在下é¢çš„ç« èŠ‚ä»‹ç» (\p.\pageref{sec:install}),这里æ供一个快速入门: + +\begin{itemize*} + +\item 安装脚本的å称是 \filename{install-tl}。它å¯ä»¥åœ¨æŒ‡å®šäº† +\code{-gui=wizard} 选项的情况下以“å‘导â€æ¨¡å¼ (Windows 下的默认模å¼) +工作,或指定 \code{-gui=text} é€‰é¡¹ä»¥æ–‡æœ¬æ¨¡å¼ (其它系统下默认模å¼) +工作,还有一个专家 \GUI{} 模å¼å¯ä»¥é€šè¿‡ \code{-gui=perltk} 选项å¯ç”¨ã€‚ + +\item 安装完æˆåŽå¯ä»¥å¾—到一个å为 \prog{tlmgr} 的程åºï¼š`\TL\ Manager'。 +和安装程åºä¸€æ ·ï¼Œå®ƒå¯ä»¥åœ¨ \GUI{} 模å¼æˆ–文本模å¼ä¸‹è¿è¡Œã€‚ä½ ä¸ä½†å¯ä»¥ç”¨å®ƒ +æ¥å®‰è£…或å¸è½½è½¯ä»¶åŒ…,还å¯ä»¥ç”¨æ¥å®Œæˆå„ç§é…置工作。 + +\end{itemize*} + + +\subsection{获得帮助} +\label{sec:help} + +\TeX{} 社群是活跃而å‹å¥½çš„,几乎所有认真的æ问都能得到回答。尽管如此,这ç§ç”±å¿—愿者 +和业余读者组æˆçš„技术支æŒä»ç„¶æ˜¾å¾—ä¸å¤ªæ­£å¼ï¼Œæ‰€ä»¥ï¼Œåœ¨æé—®å‰æœ€å¥½åšå¥½åŠŸè¯¾ã€‚(如果你更喜欢 +有ä¿éšœçš„商业性技术支æŒï¼Œå¯ä»¥æ”¾å¼ƒ \TL{},改为购买商业 \TeX{} 系统,在 +\url{http://tug.org/interest.html#vendors} 上有一份销售商的列表。) + +按照推è使用的顺åºï¼Œæˆ‘们列出了这样一份资æºåˆ—表: + +\begin{description} +\item [èµ·æ­¥] 如果你刚刚接触 \TeX,\url{http://tug.org/begin.html} +这个网页æ供了这个系统的简短介ç»ã€‚ + +\item [\TeX{} \acro{FAQ}] 这套庞大的 \TeX{} \acro{FAQ} 对å„ç§å„æ ·çš„ +问题——从最基础到最晦涩的——都给予了简明的回答,它在 \TL{} çš„ +\OnCD{texmf-dist/doc/generic/FAQ-en/html/index.html},也å¯ä»¥åœ¨ +\url{http://www.tex.ac.uk/faq} 网站上找到。有问题时请先看看这里能å¦æ‰¾ +到解答。 + +\item [\TeX{} Catalogue] 如果你在寻找æŸä¸ªç‰¹å®šçš„å®åŒ…ã€å­—体ã€ç¨‹åºç­‰ç­‰ï¼Œ\TeX{} +Catalogue 就是你首先该找的地方。这里是所有 \TeX{} 相关内容的一个巨大集åˆã€‚å‚è§ +\url{http://mirror.ctan.org/help/Catalogue/}。 + +\item [\TeX{} 网上资æº] \url{http://tug.org/interest.html}~页é¢ä¸Šæœ‰ +许多和 \TeX{} 相关的链接,包括讨论这个系统方方é¢é¢çš„许多书ç±ã€æ‰‹å†Œå’Œæ–‡ç« ã€‚ + +\item [支æŒä¿¡æ¯çš„å½’æ¡£] 最é‡è¦çš„两个技术支æŒè®ºå›æ˜¯ Usenet 的新闻组 +\url{news:comp.text.tex} 和邮件列表 \email{texhax@tug.org}。它们的内容 +归档中有多年以æ¥çš„æ问和回答供你æœç´¢ã€‚ä½ å¯ä»¥åˆ†åˆ«ä»Ž \\ +\url{http://groups.google.com/groups?group=comp.text.tex} å’Œ \\ +\url{http://tug.org/mail-archives/texhax} 进行查询。当然,一般性的æœç´¢ +æ–¹å¼ï¼Œæ¯”如用 \url{http://google.com} 找找,总没有å处。 + +\item [æé—®] 如果你还是找ä¸åˆ°ç­”案,就å¯ä»¥é€šè¿‡ Google 或者你的新闻组阅读器在 +\dirname{comp.text.tex} 上æ问,或者å‘é€é‚®ä»¶åˆ° \email{texhax@tug.org}。 +ä¸è¿‡ï¼Œåœ¨æ问之å‰\emph{请一定}先阅读 \acro{FAQ} 上的这一æ¡ï¼š +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion}, +它能æ高你获得回答的å¯èƒ½æ€§ã€‚ +Also worth mentioning are the \LaTeX{} Community site at +å¦å¤–值得æ到的有ä½äºŽ \url{http://www.latex-community.org/} çš„ +\LaTeX{} Community å’Œå®ƒçš„è®ºå› +\url{http://www.latex-community.org/forum/} ä»¥åŠ +在 \url{http://tex.stackexchange.com/} çš„ \TeX\ StackExchange。 + +\item [\TL{} 技术支æŒ] 如果你需è¦æŠ¥å‘Š bug,或者æ出对 \TL{} çš„å‘è¡Œã€å®‰è£…或 +文档的建议和æ„è§ï¼Œå¯ä»¥ä½¿ç”¨ \email{tex-live@tug.org} 这个邮件列表。ä¸è¿‡ï¼Œå¦‚果问题 +是针对 \TL{} 中包å«çš„æŸä¸ªç‰¹å®šç¨‹åºï¼Œé‚£æœ€å¥½è¿˜æ˜¯å†™ä¿¡ç»™è¿™ä¸ªç¨‹åºçš„维护者或邮件列表。 +用 \code{-{}-help} å‚æ•°æ¥è¿è¡Œç¨‹åºéƒ½ä¸€èˆ¬èƒ½å¾—到用æ¥æŠ¥å‘Šå…¶ bug 的地å€ã€‚ + +\end{description} + +å¦ä¸€æ–¹é¢ï¼Œä½ ä¹Ÿä¸å¦¨å¸®åŠ©å…¶ä»–有问题的朋å‹ï¼Œ\dirname{comp.text.tex} 与 +\code{texhax} 都是对所有人开放的,请尽管å‚与进去,在你能力所åŠçš„范围内æ供帮助。 + +% don't use \TL so the \uppercase in the headline works. Also so +% tex4ht ends up with the right TeX. Likewise the \protect's. +\section{\protect\TeX\protect\ Live 概览} +\label{sec:overview-tl} + +这个å°èŠ‚æ述的是 \TL{} 的内容,以åŠåŒ…å« \TL{} çš„ \TK{}。 + +\subsection{\TL, pro\TeX{}t, Mac\TeX\ 的大集åˆï¼š\TK} +\label{sec:tl-coll-dists} + +\TK{} çš„ \DVD{} 包å«äº†ä»¥ä¸‹å†…容: + +\begin{description} + +\item [\TL] 是一个完整的 \TeX{} 系统,它å¯ä»¥å®‰è£…在本 +地ç£ç›˜ä¸Šã€‚它的主页在 \url{http://tug.org/texlive/}。 + +\item [Mac\TeX] 在 \TL{} 的基础上增加了原生的 \MacOSX\ 的安装程åºå’Œä¸€äº›å…¶å®ƒçš„ +Mac 应用程åºã€‚它的主页在 \url{http://tug.org/mactex/}。 + +\item [pro\TeX{}t] 是 Windows 下的 \MIKTEX\ å‘行版的一个增强版本。\ProTeXt\ 在 +\MIKTEX\ 基础上增加了一些工具,简化了安装。它完全独立于 \TL{},有其 +自己的安装步骤。\ProTeXt\ 的主页在 \url{http://tug.org/protext}。 + +\item [CTAN] 一份 \CTAN{} 仓库的快照 (\url{http://mirror.ctan.org})。 + +\item[\texttt{texmf-extra}] 一个æä¾›é¢å¤–çš„é…套软件包的目录。 + +\end{description} + +\CTAN{}, \pkgname{protext} å’Œ \dirname{texmf-extra} 并ä¸ä¸€å®šéµå¾ª \TL{} +的版æƒå议,因此在分å‘或修改时è¦æ ¼å¤–地å°å¿ƒã€‚ + +\subsection{\TL{} 的顶层目录} +\label{sec:tld} + +这里是 \TL{} å‘行版顶层目录的一个简短的列表和æ述。 + +\begin{ttdescription} +\item[bin] \TeX{} 系统程åºï¼ŒæŒ‰å¹³å°ç»„织。 +% +\item[readme.html] 网页,æ供了多ç§è¯­è¨€çš„简介和有用的链接。 +\item[readme-*.dir] \TL{} 多ç§è¯­è¨€çš„简介和有用的链接,åŒæ—¶æœ‰ \HTML{} +和纯文本版本。 + +% +\item[source] 所有程åºçš„æºä»£ç ï¼ŒåŒ…括主è¦çš„基于 \Webc{} çš„ \TeX{} + å‘行版。 +% +\item[texmf] è§ä¸‹æ–‡çš„ \dirname{TEXMFMAIN}。 +% +\item[texmf-dist] è§ä¸‹æ–‡çš„ \dirname{TEXMFDIST}。 +% +\item[tlpkg] 用æ¥ç»´æŠ¤å®‰è£…程åºæ‰€ç”¨åˆ°çš„脚本,程åºå’Œæ•°æ®ï¼Œä»¥åŠå¯¹ +Windows 的特殊支æŒã€‚ +\end{ttdescription} + +上述目录之外,安装脚本和 (多ç§è¯­è¨€çš„) \filename{README} 文件也存放在å‘行版的顶层目录下。 + +至于文档,顶层目录下的 \OnCD{doc.html} 文件中æ供的完整的链接会有帮助。 +程åºçš„文档 (手册,man page, Info 文件等) 在 \dirname{texmf/doc} +目录下,因为这些程åºæœ¬èº«æ˜¯å±žäºŽ \dirname{texmf} 目录的。\TeX\ å®åŒ…与格å¼æ–‡ä»¶ +的文档则放在 \dirname{texmf-dist/doc} 目录。但ä¸ç®¡æ”¾åœ¨å“ªä¸ªåœ°æ–¹ï¼Œä½ éƒ½å¯ä»¥ä½¿ç”¨ +\cmdname{texdoc} 程åºæ¥å¯»æ‰¾è¿™äº›æ–‡æ¡£ã€‚ + +\TL\ 本身的文档在 \dirname{texmf/doc/texlive} 目录下,有以下这些语言的版本: + +\begin{itemize*} +\item{æ·å…‹/斯洛ä¼å…‹è¯­:} \OnCD{texmf/doc/texlive/texlive-cz} +\item{德语:} \OnCD{texmf/doc/texlive/texlive-de} +\item{英语:} \OnCD{texmf/doc/texlive/texlive-en} +\item{法语:} \OnCD{texmf/doc/texlive/texlive-fr} +\item{æ„大利语:} \OnCD{texmf/doc/texlive/texlive-it} +\item{波兰语:} \OnCD{texmf/doc/texlive/texlive-pl} +\item{俄语:} \OnCD{texmf/doc/texlive/texlive-ru}a +\item{塞尔维亚语:} \OnCD{texmf/doc/texlive/texlive-sr} +\item{简体中文:} \OnCD{texmf/doc/texlive/texlive-zh-cn} +\end{itemize*} + + +\subsection{预定义的 texmf 目录树概览} +\label{sec:texmftrees} + +本å°èŠ‚列出了系统中用于指定 texmf 目录的所有预定义å˜é‡åŠå…¶ç”¨é€”, +ä»¥åŠ \TL{} 的默认布局。\texttt{tlmgr~conf} å‘½ä»¤å¯ +以列出这些å˜é‡çš„值,这样你å¯ä»¥å¾ˆå®¹æ˜“找到它们和你所安装到的目录 +å称的对应关系。 + +所有这些目录树,包括个人的,都应该éµå¾ª \TeX\ 目录结构 (\TDS, +\url{http://tug.org/tds}),包括其中所有细å°çš„å­ç›®å½•ï¼Œå¦åˆ™æ–‡ä»¶å°± +å¯èƒ½æ‰¾ä¸åˆ°ã€‚第 \ref{sec:local-personal-macros} 节 (第 +\pageref{sec:local-personal-macros} 页) 有更详细的介ç»ã€‚ + +\begin{ttdescription} +\item [TEXMFMAIN] 存储系统核心部件的目录树,包括é…置文件ã€è¾…助 +脚本和程åºæ–‡æ¡£ã€‚ +\item [TEXMFDIST] 存储主è¦çš„å®åŒ…ã€å­—体等等。 +\item [TEXMFLOCAL] 系统管ç†å‘˜ç”¨æ¥å®‰è£…供整个系统使用的é¢å¤–的或更新过的å®åŒ…ã€å­—体的目录。 +\item [TEXMFHOME] 给用户存放它们自己独立安装的的å®åŒ…ã€å­—体等等。 +这个å˜é‡æ ¹æ®ä¸åŒçš„用户选择ä¸åŒçš„主目录。 +\item [TEXMFCONFIG] ç»™ \verb+texconfig+ã€\verb+updmap+ã€å’Œ \verb+fmtutil+ +这些程åºå­˜å‚¨ä¸ªäººä¿®æ”¹è¿‡çš„é…置文件。 +\item [TEXMFSYSCONFIG] ç»™ \verb+texconfig-sys+ã€\verb+updmap-sys+ å’Œ +\verb+fmtutil-sys+ 这些程åºå­˜å‚¨ä¿®æ”¹è¿‡çš„全局文件. +\item [TEXMFVAR] 这个目录是给 \verb+texconfig+ã€\verb+updmap+ å’Œ + \verb+fmtutil+ 存储 (缓存) æ ¼å¼æ–‡ä»¶ã€ç”Ÿæˆ map 文件这类è¿è¡Œæ—¶ä¸ªäººæ•°æ®çš„。 +\item [TEXMFSYSVAR] ç»™ \verb+texconfig-sys+ã€\verb+updmap-sys+ å’Œ +\verb+fmtutil-sys+ 还有 \verb+tlmgr+ 这几个命令存储ã€ç¼“å­˜è¿è¡Œæ—¶ä½¿ç”¨çš„æ ¼å¼æ–‡ä»¶å’Œ +生æˆçš„ map 文件,对整个系统都有效。 +\item [TEXMFCACHE] \ConTeXt\ Mk\acro{IV} 用æ¥ä¿å­˜ (缓存的) è¿è¡Œæ—¶æ•°æ®çš„目录树。 +\end{ttdescription} + +\noindent +默认的目录结构: +\begin{description} + \item[全系统根目录] å¯ä»¥åŒ…å«å¤šä¸ª \TL{} 版本: + \begin{ttdescription} + \item[2011] 上一个版本。 + \item[2012] 当å‰ç‰ˆæœ¬ã€‚ + \begin{ttdescription} + \item [bin] ~ + \begin{ttdescription} + \item [i386-linux] \GNU/Linux 二进制文件 + \item [...] + \item [universal-darwin] \MacOSX\ 二进制文件 + \item [win32] Windows 二进制文件 + \end{ttdescription} + \item [texmf\ \ \ \ \ \ \ ] 这是 \envname{TEXMFMAIN}。 + \item [texmf-dist\ \ ] \envname{TEXMFDIST} + \item [texmf-var \ \ ] \envname{TEXMFSYSVAR} + \item [texmf-config] \envname{TEXMFSYSCONFIG} + \end{ttdescription} + \item [texmf-local] \envname{TEXMFLOCAL} 用æ¥å­˜æ”¾åœ¨ä¸åŒç‰ˆæœ¬é—´å…±äº«çš„æ•°æ®ã€‚ + \end{ttdescription} + \item[用户主 (home) 目录] (\texttt{\$HOME} 或 + \texttt{\%USERPROFILE\%}) + \begin{ttdescription} + \item[.texlive2011] 给上个版本的,个人生æˆå’Œé…置的数æ®ã€‚ + \item[.texlive2012] 给这个版本的,个人生æˆå’Œé…置的数æ®ã€‚ + \begin{ttdescription} + \item [texmf-var\ \ \ ] \envname{TEXMFVAR}, \envname{TEXMFCACHE} + \item [texmf-config] \envname{TEXMFCONFIG} + \end{ttdescription} + \item[texmf] \envname{TEXMFHOME} 个人的å®åŒ…文件,等等。 + \textit{等等。} + \end{ttdescription} +\end{description} + + +\subsection{\protect\TeX\ 的扩展版本} +\label{sec:tex-extensions} + +原始的 Knuth \TeX{} 本身的开å‘å·²ç»å†»ç»“了,仅仅修改除去å‘现的 +æžå…¶å°‘é‡çš„错误。它在 \TL\ 中ä»ç„¶ä½œä¸º \prog{tex} 程åºå‡ºçŽ°ï¼Œåœ¨ +å¯è§çš„未æ¥ä¹Ÿä»ç„¶å¦‚此。\TL{} 包括了一些建立在 \TeX\ 基础上的 +扩展程åºï¼š + +\begin{description} + +\item [\eTeX] 为 \TeX\ 增加了一套新的原语 (primitive)。 +\label{text:etex} (包括å®å±•å¼€ï¼Œå­—符扫æ,mark 的分类,é¢å¤–的调试功能,等等) +以åŠç”¨äºŽåŒå‘排版的 \TeXXeT{} 扩展模å¼ã€‚在默认模å¼ä¸‹ï¼Œ\eTeX{} 是与原始的 \TeX\ +100\% 兼容的。å‚è§ \OnCD{texmf-dist/doc/etex/base/etex_man.pdf}。 + +\item [pdf\TeX] 在 \eTeX\ 扩展的基础上构建,在 \dvi{} 输出之外增加对 +\acro{PDF} 输出的支æŒï¼Œä»¥åŠè®¸å¤šå…¶ä»–的扩展。 +这是针对 \prog{etex}, \prog{latex} 或 \prog{pdflatex} 这些格å¼ä½¿ç”¨çš„缺çœç¨‹åºã€‚ +å¯ä»¥åœ¨ \OnCD{texmf/doc/pdftex/manual/samplepdf/samplepdf.tex} 找到展示部分功 +能的例å­ã€‚ + +\item [Lua\TeX] 是 pdf\TeX\ 指定的åŽç»§è€…,而且对 pdf\TeX\ ä¿æŒå¤§éƒ¨åˆ† +(但ä¸æ˜¯å®Œå…¨åœ°) å‘ä¸‹å…¼å®¹ã€‚å®ƒä¹Ÿå¸Œæœ›åŒ…å« Aleph (è§åŽ) 的功能,尽管在技术 +上未必与它兼容。它内置的 Lua 语言解释器 (\url{http://www.lua.org}) 为 +许多棘手的 \TeX{} 问题æ供了优雅的解决方案。 +当以 \filename{texlua} 命令执行时,它就åƒä¸€ä¸ªæ ‡å‡†çš„ Lua 解释器一样工作, +所以,Lua\TeX\ 在 \TL\ 中也被作为 Lua 程åºçš„解释器。 +è§ \url{http://www.luatex.org} å’Œ \OnCD{texmf-dist/doc/luatex/luatexref-t.pdf}。 + +\item [Xe\TeX] 通过第三方库,增加对 Unicode 输入文本和 OpenType 字体的支æŒï¼Œ +能够直接使用系统字体。å‚è§ \url{http://tug.org/xetex}。 + +\item [\OMEGA\ (Omega)] 基于 Unicode (16 ä½å­—符集),因而åŒæ—¶æ”¯æŒå¤„ç†ä¸–界上 +几乎所有的语言。它åŒæ—¶è¿˜æ”¯æŒæ‰€è°“çš„ `\OMEGA{} Translation Processes' (\acro{OTP}), +用于对任æ„输入进行å¤æ‚çš„å˜æ¢æ“作。Omega 现在已ç»ä¸ä½œä¸ºå•ç‹¬çš„程åºå‡ºçŽ°åœ¨ \TL{} +中了;改为åªæ”¯æŒ Aleph: + +\item [Aleph] å°† \OMEGA\ 与 \eTeX\ 扩展åˆå¹¶åˆ°ä¸€èµ·å¾—到的。 +å‚è§ \OnCD{texmf-dist/doc/aleph/base}。 + +\end{description} + + +\subsection{\protect\TL\ 中其他值得一æ的程åº} + +这里是在 \TL{} 中其他的一些常用程åºï¼š + +\begin{cmddescription} + +\item [bibtex, bibtex8] å‚考文献支æŒã€‚ + +\item [makeindex, xindy] 索引支æŒã€‚ + +\item [dvips] å°† \dvi{} 转æ¢ä¸º \PS{}。 + +\item [xdvi] X Window System 下的 \dvi{} 阅读器。 + +\item [dvilj] HP LaserJet 系列打å°æœºçš„ \dvi{} 驱动。 + +\item [dviconcat, dviselect] 从 \dvi{} 文件中å¤åˆ¶å’Œç²˜è´´é¡µé¢ã€‚ + +\item [dvipdfmx] å°† \dvi{} 转æ¢ä¸º \acro{PDF},是 (å‰é¢æ到过的) +pdf\TeX\ 的一套替æ¢æ–¹æ¡ˆã€‚ + +\item [psselect, psnup, \ldots] \PS{} 实用程åºã€‚ + +\item [pdfjam, pdfjoin, \ldots] \acro{PDF} 实用程åºã€‚ + +\item [texexec, texmfstart] Con\TeX{}t å’Œ \acro{PDF} 处ç†å·¥å…·ã€‚ + +\item [tex4ht] \TeX{} 到 \acro{HTML} (还有 \acro{XML} 等其他格å¼) +的转æ¢å™¨ã€‚ + +\end{cmddescription} + + +\subsection{\TL\ 中的字体} +\label{sec:tl-fonts} + +\TL{} 中包括了很多的高质é‡çŸ¢é‡å­—体,å‚è§ \url{http://tug.org/fonts} å’Œ +\OnCD{texmf-dist/doc/fonts/free-math-fonts-survey}。 + +\htmlanchor{installation} +\section{安装} +\label{sec:install} + +\subsection{å¯åŠ¨å®‰è£…程åº} +\label{sec:inst-start} + +首先请找æ¥ä¸€å¼  \TK{} çš„ \DVD{},或者下载 \TL{} 的网络安装程åºï¼Œç„¶åŽ +找到这个安装脚本:Unix 下是 \filename{install-tl},Windows 下是 +\filename{install-tl.bat}。å‚è§ \url{http://tug.org/texlive/acquire.html} +以了解更多关于获得这个软件的信æ¯å’Œæ–¹æ³•ã€‚ + +\begin{description} +\item [网络安装程åºï¼š] 在 \CTAN çš„ \dirname{systems/texlive/tlnet} +目录下å¯ä»¥ä¸‹è½½ï¼Œ\url{http://mirror.ctan.org/systems/texlive/tlnet} 这个地å€èƒ½ +自动将你导å‘一个附近的ã€ä¿æŒæ›´æ–°çš„é•œåƒã€‚ä½ å¯ä»¥ä¸‹è½½åŒæ—¶æ”¯æŒ Unix å’Œ +Windows çš„ \filename{install-tl.zip} 或者å°å¾—多ã€ä½†åªæ”¯æŒ Unix çš„ +\filename{install-unx.tar.gz}。解压åŽï¼Œ\filename{install-tl} å’Œ +\filename{install-tl.bat} 就会出现在 \dirname{install-tl} å­ç›®å½•ä¸­ã€‚ + +\item [\TeX{} Collection \DVD:] 打开 \DVD\ çš„ \dirname{texlive} 这个å­ç›®å½•ã€‚ +在 Windows 下安装程åºé€šå¸¸åœ¨æ’å…¥ \DVD åŽå°±è‡ªåŠ¨å¯åŠ¨äº†ã€‚è¦èŽ·å¾— \DVD çš„ +è¯å¯ä»¥åŠ å…¥ä¸€ä¸ª \TeX\ 用户组织 (推è这么åšï¼Œå‚è§ +\url{http://tug.org/usergroups.html}) 或是å•ç‹¬è´­ä¹° (通过 +\url{http://tug.org/store}),åˆæˆ–者是自己从 \ISO\ é•œåƒåˆ»å½•ã€‚ +在多数系统里你都å¯ä»¥ç›´æŽ¥æŒ‚载这个 \ISO{}。在从 \DVD\ 或者 \ISO{} 安装åŽï¼Œ +如果还希望从 Internet 获得æŒç»­çš„更新,请看第 \ref{sec:dvd-install-net-updates} +节。 + +\end{description} + +ä¸ç®¡ä»Žå“ªé‡Œè½½å…¥ï¼Œæ‰§è¡Œçš„都是åŒä¸€ä¸ªå®‰è£…程åºã€‚两者最明显的区别是通过网络安装 +得到的当å‰å¯ç”¨çš„程åºåŒ…。这和和 \DVD\ 或者 \ISO\ é•œåƒåœ¨ä¸»ç‰ˆæœ¬ä¹‹é—´ä¸èƒ½æ›´æ–° +ä¸åŒã€‚ + +\noindent +下é¢çš„章节介ç»æ›´è¯¦ç»†åœ°ä»‹ç»äº†å®‰è£…程åºçš„å¯åŠ¨ã€‚ + +\subsubsection{Unix} + +\filename{install-tl} 是一个 Perl 脚本。在 Unix 兼容的系统下å¯åŠ¨å®ƒæœ€ç®€å• +的方法是这样的: + +\begin{alltt} +> \Ucom{cd /path/to/installer} +> \Ucom{perl install-tl} +\end{alltt} +(或者你å¯ä»¥ç›´æŽ¥è¿è¡Œ \Ucom{perl /path/to/installer/install-tl},或者 +\Ucom{./install-tl},如果这个文件有å¯æ‰§è¡Œå±žæ€§ï¼Œæˆ‘们ä¸ä¼šæŠŠæ‰€æœ‰è¿™äº›æ‰§ +行方法列出æ¥ã€‚) ä½ å¯èƒ½éœ€è¦æ‰©å¤§ç»ˆç«¯çª—å£çš„大å°æ‰èƒ½åœ¨ä¸€å±å†…显示完整的 +文本安装程åºç•Œé¢ (图~\ref{fig:text-main})。 + +è¦åœ¨ä¸“家 \GUI\ 模å¼ä¸‹å®‰è£… (è§å›¾~\ref{fig:gui-main}),你需è¦åŠ å…¥äº† +\acro{XFT} 支æŒçš„ \dirname{Perl/TK}模å—,\GNU/Linux 下通常都是这样, +但其他系统下å¯èƒ½ä¸æ˜¯ã€‚è¿™ç§æƒ…况下,你å¯ä»¥è¿è¡Œï¼š +\begin{alltt} +> \Ucom{perl install-tl -gui} +\end{alltt} + +è¦åˆ—出所有这些选项: +\begin{alltt} +> \Ucom{perl install-tl -help} +\end{alltt} + +\textbf{关于 Unix 下æƒé™çš„警告:} 在安装过程中,\TL{} 安装程åºå°†ä¼š +éµç…§ä½ çš„ \code{umask} 行事。所以如果你需è¦è®©ä½ çš„安装能给其他用户使 +用,就必须ä¿è¯ä½ è®¾ç½®çš„æƒé™è¶³å¤Ÿï¼Œæ¯”如 \code{umask 002}。更多关于 +\code{umask} çš„ä¿¡æ¯è¯·å‚è§ä½ è‡ªå·±ç³»ç»Ÿçš„文档。 + +\textbf{关于 Cygwin 的特殊考虑:} 和其他 Unix 兼容系统ä¸åŒï¼ŒCygwin +并没有包å«æ‰€æœ‰è¿è¡Œ \TL{} 安装程åºæ‰€å¿…须的程åºï¼Œè¯¦è§ç¬¬~\ref{sec:cygwin}~节。 + +\subsubsection{Mac OS X} + +如第~\ref{sec:tl-coll-dists}~节æ到的,我们给 \MacOSX 准备了一套独立的 +å‘行版,å«åš Mac\TeX\ (\url{http://tug.org/mactex})。我们推è使用原生的 +Mac\TeX\ 安装程åºï¼Œè€Œä¸æ˜¯ \TL\ 自带的那个,因为原生的安装程åºåšäº†ä¸€äº› +针对 Mac 的调整,尤其方便在多个 \MacOSX 下的 \TeX\ å‘行版 (Mac\TeX, Fink, +MacPorts, \ldots) 之间切æ¢ã€‚ + +Mac\TeX\ 是严格ä¾èµ– \TL 构建的,所以主 \TeX\ 树也是完全一致的。ä¸è¿‡å®ƒæ·» +加了一些用æ¥å­˜æ”¾ Mac 专有文档和程åºçš„目录。 + +\subsubsection{Windows} + +如果你使用的是网络安装程åºï¼Œåˆæˆ–者 \DVD 安装程åºæ— æ³•è‡ªåŠ¨å¯åŠ¨äº†ï¼Œè¯· +åŒå‡» \filename{install-tl.bat}。如果你需è¦æ›´å¤šå®šåˆ¶é€‰é¡¹ï¼Œæ¯”如è¦é€‰æ‹© +特定的包集åˆï¼Œè¯·æ”¹ä¸ºè¿è¡Œ \filename{install-tl-advanced.bat}。 + +你也å¯ä»¥ä»Žå‘½ä»¤è¡Œæ示符下å¯åŠ¨å®‰è£…程åºã€‚ä¸‹é¢ \texttt{>} 表示的就是æ示符, +用户输入用 \Ucom{\texttt{bold}} 体表示。如果你正在安装程åºç›®å½•ä¸‹ï¼Œåªéœ€è¦ +è¿è¡Œï¼š +\begin{alltt} +> \Ucom{install-tl} +\end{alltt} + +或者你也å¯ä»¥é€šè¿‡ç»å¯¹è·¯å¾„æ¥è¿è¡Œï¼Œæ¯”如: +\begin{alltt} +> \Ucom{D:\bs{}texlive\bs{}install-tl} +\end{alltt} +这是对 \TK\ \DVD 而言的,å‡å®š \dirname{D:} 是光驱。图~\ref{fig:wizard-w32} +展示了å‘导安装程åºï¼Œå®ƒæ˜¯ Windows 下的默认形å¼ã€‚ + +è¦åœ¨æ–‡æœ¬æ¨¡å¼ä¸‹å®‰è£…,使用: +\begin{alltt} +> \Ucom{install-tl -no-gui} +\end{alltt} + +è¦åˆ—出所有å¯ç”¨çš„选项: +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} + +\begin{figure}[tb] +\begin{boxedverbatim} +Installing TeX Live 2012 from: ... +Platform: i386-linux => 'Intel x86 with GNU/Linux' +Distribution: inst (compressed) +... + Detected platform: Intel x86 with GNU/Linux + + platforms: 1 out of 19 + + installation scheme (scheme-full) + 84 collections out of 85, disk space required: 2600 MB + + Customizing installation scheme: + standard collections + language collections + + directories: + TEXDIR (the main TeX directory): + /usr/local/texlive/2012 + ... + + options: + ... + + set up for portable installation + +Actions: + start installation to hard disk + help + quit +\end{boxedverbatim} +\caption{文本安装程åºä¸»ç•Œé¢ (\GNU/Linux)}\label{fig:text-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{install-lnx-main}{\linewidth} +\caption{ä¸“å®¶æ¨¡å¼ \GUI{} 安装程åºç•Œé¢ (\GNU/Linux)}\label{fig:gui-main} +\end{figure} + +\begin{figure}[tb] +\tlpng{wizard-w32}{\linewidth} +\caption{å‘导模å¼å®‰è£…程åºç•Œé¢ (Windows)}\label{fig:wizard-w32} +\end{figure} + + +\htmlanchor{cygwin} +\subsubsection{Cygwin} +\label{sec:cygwin} + +\TL{} 安装程åºåªæ”¯æŒ Cygwin 1.7。 +在开始安装之å‰ï¼Œè¯·å…ˆä½¿ç”¨ Cygwin çš„ \filename{setup.exe} 程åºå®‰è£… +\filename{perl} å’Œ \filename{wget} 软件包,如果你还没装过。此外 +还推è安装下列软件包: +\begin{itemize*} +\item \filename{fontconfig} [\XeTeX\ 需è¦] +\item \filename{ghostscript} [å„ç§å®žç”¨å·¥å…·éœ€è¦] +\item \filename{libXaw7} [\code{xdvi} 需è¦] +\item \filename{ncurses} [给安装程åºæä¾› \code{clear} 命令] +\end{itemize*} + +\subsubsection{文本界é¢å®‰è£…程åº} + +图~\ref{fig:text-main} 展示了 Unix 下文本模å¼çš„主界é¢ï¼Œè¿™æ˜¯ Unix +下安装程åºçš„默认界é¢ã€‚ + +这是一个完全用命令行æ“作的安装程åºï¼Œå®Œå…¨ä¸æ”¯æŒå…‰æ ‡ç§»åŠ¨ã€‚所以你无法 +在多选框或者输入框之间用 Tab 上下切æ¢ï¼Œåªèƒ½åœ¨æ示符下输入特定的字符 +(大å°å†™æ•æ„Ÿçš„) 然åŽæŒ‰ä¸‹ Enter,整个终端窗å£å°±ä¼šæŠŠæ–°çš„内容刷新出æ¥ã€‚ + +文本安装程åºä¹‹æ‰€ä»¥è¿™ä¹ˆç®€é™‹æ˜¯å› ä¸ºå®ƒè¦å°½å¯èƒ½æ”¯æŒæœ€å¤šçš„å¹³å°ï¼Œå°±ç®— +åªæœ‰ä¸€ä¸ª Perl 的系统也能è¿è¡Œå®ƒã€‚ + +\subsubsection{专家图形界é¢å®‰è£…程åº} + +图~\ref{fig:gui-main} 展示了 \GNU/Linux 下的专家图形界é¢å®‰è£…程åºã€‚ +除使用了按钮和èœå•ä»¥å¤–,这个和文本模å¼çš„安装程åºæ²¡ä»€ä¹ˆåŒºåˆ«ã€‚ + +这个模å¼å¯ä»¥é€šè¿‡ä¸‹é¢çš„命令手工å¯åŠ¨ï¼š +\begin{alltt} +> \Ucom{install-tl -gui=perltk} +\end{alltt} + +\subsubsection{简化的å‘导安装程åº} + +在 Windows 下,缺çœä¼šä½¿ç”¨æˆ‘们所支æŒçš„最简å•çš„安装方法,也就是“å‘导â€å®‰è£… +ç¨‹åº (图~\ref{fig:wizard-w32})。它会把所有东西都装上,ä¸æ任何问题。如果 +你需è¦å®šåˆ¶å®‰è£…,请è¿è¡Œå…¶ä»–的安装程åºã€‚ + +这个模å¼å¯ä»¥é€šè¿‡ä¸‹é¢çš„命令手工å¯åŠ¨ï¼š +\begin{alltt} +> \Ucom{install-tl -gui=wizard} +\end{alltt} + + +\subsection{执行安装程åº} +\label{sec:runinstall} + +安装程åºåº”该ä¸éœ€è¦æ–‡æ¡£å°±è¶³å¤Ÿæ˜Žç¡®ï¼Œä½†ä¸‹é¢è¿˜æ˜¯å¯¹è¿™äº›é€‰é¡¹å’Œå­èœå•ä½œä¸€ç‚¹è¯´æ˜Žã€‚ + +\subsubsection{二进制系统èœå• (åªå¯¹ Unix 适用)} +\label{sec:binary} + +\begin{figure}[tb] +\begin{boxedverbatim} +Available platforms: +=============================================================================== + a [ ] alpha-linux DEC Alpha with GNU/Linux + b [ ] amd64-freebsd x86_64 with FreeBSD + c [ ] amd64-kfreebsd x86_64 with GNU/kFreeBSD + d [ ] armel-linux ARM with GNU/Linux + e [ ] i386-cygwin Intel x86 with Cygwin + f [ ] i386-freebsd Intel x86 with FreeBSD + g [ ] i386-kfreebsd Intel x86 with GNU/kFreeBSD + h [X] i386-linux Intel x86 with GNU/Linux + i [ ] i386-solaris Intel x86 with Solaris + j [ ] mips-irix SGI IRIX + k [ ] mipsel-linux mipsel with Linux + l [ ] powerpc-aix PowerPC with AIX + m [ ] powerpc-linux PowerPC 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 +\end{boxedverbatim} +\caption{Binaries (二进制程åº) èœå•}\label{fig:bin-text} +\end{figure} + +图~\ref{fig:bin-text} 展示了文本模å¼ä¸‹çš„ binaries (二进制程åº) +èœå•ã€‚默认情况下åªä¼šå®‰è£…你当å‰å¹³å°ä¸‹çš„二进制程åºã€‚在这个èœå•ä¸‹ï¼Œ +ä½ å¯ä»¥é€‰æ‹©å®‰è£…其他平å°çš„二进制程åºã€‚这对你è¦å°† \TeX\ 树共享在 +异构网络上的情况比较有用,åˆæˆ–者用于åŒå¯åŠ¨çš„系统。 + +\subsubsection{选择è¦å®‰è£…的组件} +\label{sec:components} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Select scheme: +=============================================================================== + a [X] full scheme (everything) + b [ ] medium scheme (small + more packages and languages) + c [ ] small scheme (basic + xetex, metapost, a few languages) + d [ ] basic scheme (plain and latex) + e [ ] minimal scheme (plain only) + f [ ] ConTeXt scheme + g [ ] GUST TeX Live scheme + h [ ] teTeX scheme (more than medium, but nowhere near full) + i [ ] XML scheme + j [ ] custom selection of collections +\end{boxedverbatim} +\caption{Scheme (安装方案) èœå•}\label{fig:scheme-text} +\end{figure} + +图~\ref{fig:scheme-text} 展示了 \TL\ 的安装方案èœå•ï¼›ä»Žè¿™é‡Œä½ é€‰æ‹©çš„是 +一套``安装方案'',也就是对软件包集åˆçš„一个统一划分。默认的 \optname{full} +方案会把所有å¯ç”¨çš„都装上。这是推è方案,ä¸è¿‡ä½ ä¹Ÿå¯ä»¥ç»™å°ç‚¹çš„系统选择 +\optname{basic} 方案,为测试选用 \optname{minimal} 方案,åˆæˆ–者是 +介乎其间的 \optname{medium} 或 \optname{teTeX} 方案。还有许多特殊或者 +专门针对特定国家的方案。 + +\begin{figure}[tb] +\tlpng{stdcoll}{.7\linewidth} +\caption{Collections (集åˆ) èœå•}\label{fig:collections-gui} +\end{figure} + +ä½ å¯ä»¥ä½¿ç”¨ `standard collections' 与 `language collections' èœå•æ¥è¯¦ç»† +选择安装方案。(图~\ref{fig:collections-gui} 显示了 \GUI 模å¼ä¸‹ä¿®æ”¹çš„情 +况。) + +Collection (安装集åˆ) 是比 scheme (方案) è¦æ›´ç»†çš„一层 \Dash 实际上一个 +方案包å«äº†å¤šä¸ªé›†åˆï¼Œè€Œä¸€ä¸ªé›†åˆåˆåŒ…å«äº†ä¸€åˆ°å¤šä¸ªè½¯ä»¶åŒ…,然åŽæ¯ä¸ªè½¯ä»¶åŒ… +(\TL 中最å°çš„组织å•ä½) 则包å«äº†å®žé™…çš„ \TeX\ å®æ–‡ä»¶ï¼Œå­—体文件,等等。 + +如果你觉得 collection èœå•å¯¹å®‰è£…控制还ä¸å¤Ÿç»†ï¼Œå¯ä»¥åœ¨å®‰è£…åŽä½¿ç”¨ +\TeX\ Live Manager (\prog{tlmgr}) ç¨‹åº (å‚è§ç¬¬~\ref{sec:tlmgr}~节), +它能在软件包一层控制安装。 + +\subsubsection{目录} +\label{sec:directories} + +缺çœçš„目录布局在第~\ref{sec:texmftrees}~节有过å™è¿°ï¼Œè§ +第~\pageref{sec:texmftrees}~页。默认的 \dirname{TEXDIR} 路径 +在 Unix 下是 \dirname{/usr/local/texlive/2012} 而 Windows 下是 +|%SystemDrive%\texlive\2012|。 + +更改默认值的主è¦åŽŸå› å¤§æ¦‚是你å¯èƒ½æ²¡æœ‰é»˜è®¤ä½ç½®çš„写æƒé™ã€‚虽然è¦å®‰è£… +\TL ä¸éœ€è¦æ˜¯ç®¡ç†å‘˜æˆ–者 root 用户,但你至少得对安装的目的目录有写 +æƒé™ã€‚ + +一个åˆç†çš„选择是你自己主目录下的一个å­ç›®å½•ï¼Œå°¤å…¶åœ¨åªæœ‰ä½ ä¸€ä¸ªäºº +使用的时候。使用 `|~|' æ¥è¡¨ç¤ºä¸»ç›®å½•ï¼Œæ¯”如 `|~/texlive/2012|'。 + +我们建议在目录å称中ä¿ç•™å¹´ä»½ï¼Œè¿™æ ·å¯ä»¥è®©ä½ ä¿ç•™å¤šä¸ªä¸åŒç‰ˆæœ¬çš„ +\TL{}。(ä½ å¯èƒ½å¸Œæœ›ç”¨ä¸€ä¸ªç±»ä¼¼ \dirname{/usr/local/texlive-cur} +这样的å字作为指å‘当å‰ç‰ˆæœ¬çš„符å·é“¾æŽ¥ï¼Œè¿™æ ·çš„目录å就和版本无 +关了,你åªè¦åœ¨æ–°ç‰ˆæœ¬å‡ºæ¥ç›´æŽ¥æ›´æ–°ç¬¦å·é“¾æŽ¥å³å¯ã€‚) + +在安装程åºä¸­ä¿®æ”¹ \dirname{TEXDIR} 之åŽè¿˜ä¼šåŒæ—¶ä¿®æ”¹ +\dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} å’Œ +\dirname{TEXMFSYSCONFIG}。 + +\dirname{TEXMFHOME} 是推è用æ¥å­˜æ”¾ä¸ªäººå®æ–‡ä»¶å’Œè½¯ä»¶åŒ…的目录。 +其缺çœå€¼æ˜¯ |~/texmf|。与 \dirname{TEXDIR} ä¸åŒï¼Œå…¶ä¸­åŒ…å«çš„ +|~| 会被ä¸åŠ è½¬æ¢åœ°å†™è¿›é…置文件,因为它能在 \TeX 系统è¿è¡Œæ—¶ +自动被替æ¢ä¸ºæ¯ä¸ªç”¨æˆ·è‡ªå·±çš„主目录。在 Unix 它会被展开为 +\dirname{$HOME},而 Windows 下展开为 \verb|%USERPROFILE%|。 +多加一å¥ï¼š\envname{TEXMFHOME} 和所有的目录树一样,都必须按照 +\TDS\ 组织,å¦åˆ™æ–‡ä»¶å¯èƒ½ä¼šæ‰¾ä¸åˆ°ã€‚ + +\dirname{TEXMFVAR} 是用æ¥ç»™æ¯ä¸ªç”¨æˆ·å­˜å‚¨å¤§å¤šæ•°è¿è¡Œæ—¶ç¼“å­˜æ•°æ® +的。\dirname{TEXMFCACHE} 则给 \ConTeXt\ Mk\acro{IV} 存储缓存 +(è§ \pageref{sec:context-mkiv} 页)。 + +\subsubsection{选项} +\label{sec:options} + +\begin{figure}[tbh] +\begin{boxedverbatim} +Current setup: +

use letter size instead of A4 by default: [ ] + execution of restricted list of programs: [X] + create format files: [X] + install font/macro doc tree: [X] + install font/macro source tree: [X] + create symlinks in standard directories: [ ] + binaries to: + manpages to: + info to: + after installation, get package updates from CTAN: [X] +\end{boxedverbatim} +\caption{Options èœå• (Unix)}\label{fig:options-text} +\end{figure} + +图~\ref{fig:options-text} 显示了文本模å¼çš„选项èœå•ã€‚关于这个èœå•çš„ +æ¯ä¸ªé€‰é¡¹ï¼š + +\begin{description} +\item[use letter size instead of A4 by default:] 缺çœçš„纸张大å°é€‰æ‹©ã€‚ +当然如果需è¦ï¼Œæ¯ä»½æ–‡æ¡£éƒ½å¯ä»¥å¹¶ä¸”应该å•ç‹¬è®¾å®šä¸€ä¸ªçº¸å¼ å¤§å°ã€‚ + +\item[execution of restricted list of programs:] 在 \TL\ 2010 中, +默认å…许执行一些外部程åºã€‚è¿™ (很少的一部分) å…许的程åºåˆ—表在 +\filename{texmf.cnf} 中定义。å‚è§ 2010 版新闻 (第~\ref{sec:2010news} 节) +以了解更多信æ¯ã€‚ + +\item[create format files:] 虽然创建ä¸å¿…è¦çš„æ ¼å¼æ–‡ä»¶ä¼šæµªè´¹ä¸€ +点时间,也会多å ä¸€äº›ç£ç›˜ç©ºé—´ï¼Œä½† +我们还是建议现在ä¿æŒè¿™ä¸ªé€‰é¡¹çš„选定状æ€ï¼Œå› ä¸ºå¦‚果这次ä¸ç”Ÿæˆï¼Œä¸‹æ¬¡ +用到的时候格å¼æ–‡ä»¶å°±ä¼šåœ¨ç”¨æˆ·ä¸ªäººçš„ \dirname{TEXMFVAR} 目录树内生 +æˆã€‚这样æ¯æ¬¡äºŒè¿›åˆ¶æ–‡ä»¶æˆ–者断字模å¼æ›´æ–°çš„时候,这些格å¼æ–‡ä»¶ä¹Ÿå¾—ä¸ +到更新,所以å¯èƒ½ä¼šå¯¼è‡´å®ƒä»¬çš„ä¸å…¼å®¹ã€‚ + +\item[install font/macro \ldots\ tree:] 这些选项å…许你忽略下载安装 +大部分å®åŒ…中的文档和æºä»£ç æ–‡ä»¶ã€‚ä¸å»ºè®®ä½¿ç”¨ã€‚ + +\item[create symlinks in standard directories:] +这个选项 (åªå¯¹ Unix 有效的) å¯ä»¥çœä¸‹è®¾å®šçŽ¯å¢ƒå˜é‡çš„步骤。如果 +没有选择它,就必须把 \TL{} 的对应目录添加到 \envname{PATH}, +\envname{MANPATH} å’Œ \envname{INFOPATH} 中。如果è¦åˆ›å»ºç¬¦å·é“¾ +接,你需è¦å¯¹è¿™äº›ç›®æ ‡ç›®å½•çš„写æƒé™ã€‚我们强烈建议ä¸è¦\emph{ä¸è¦} +用这个命令æ¥è¦†ç›–现有的 \TeX\ 系统,它主è¦æ˜¯ä¸ºäº†åœ¨ç”¨æˆ·å·²çŸ¥çš„ +标准目录中创建符å·é“¾æŽ¥è®¾è®¡çš„,这些目录并ä¸åŒ…å«ä»»ä½• \TeX\ 文件。 + +\item[after installation \ldots\ \CTAN:] 从 \DVD\ 安装时,这个选项 +被缺çœå¯ç”¨ï¼Œå› ä¸ºé€šå¸¸ä½ ä¼šå¸Œæœ›åœ¨æ­¤åŽé€šè¿‡ \CTAN\ 安装一年内更新的软件 +包。ç¦ç”¨å®ƒå”¯ä¸€å¯èƒ½çš„原因是你åªå®‰è£…了 \DVD\ å†…å®¹çš„ä¸€éƒ¨åˆ†ï¼Œè®¡åˆ’åœ¨ä»¥åŽ +扩展安装。无论如何,安装程åºæ—¶å’Œå®‰è£…åŽçš„更新的软件包仓库如果需è¦å¯ +以分别设置,è§ç¬¬~\ref{sec:location}~节和 +第~\ref{sec:dvd-install-net-updates}~节。 +\end{description} + +如果所有的设置已ç»é½å¤‡ï¼Œä½ å°±å¯ä»¥æŒ‰ä¸‹ `I' æ¥å¼€å§‹å®‰è£…了。安装完æˆåŽï¼Œ +ä½ å¯ä»¥è·³è‡³ç¬¬~\ref{sec:postinstall}~节æ¥äº†è§£è¿˜éœ€è¦åšäº›ä»€ä¹ˆå·¥ä½œã€‚ + +\subsection{install-tl 命令行选项} +\label{sec:cmdline} + +输入 +\begin{alltt} +> \Ucom{install-tl -help} +\end{alltt} +å¯ä»¥åˆ—出所有的命令行å‚数。你既å¯ä»¥ç”¨ |-| 也å¯ä»¥ç”¨ |--| æ¥æŒ‡å®šä¸€ä¸ª +å‚数。这里有些比较常è§çš„: + +\begin{ttdescription} +\item[-gui] å°½å¯èƒ½ç”¨ \GUI{} 模å¼çš„安装程åºã€‚它需è¦å®‰è£…了 + 编译进 \acro{XFT} 支æŒçš„ Perl/Tk æ¨¡å— + (\url{http://tug.org/texlive/distro.html#perltk})ï¼› + 如果找ä¸åˆ° Perl/Tk,安装程åºå°±ä¼šåœ¨æ–‡æœ¬æ¨¡å¼ä¸‹å‡ºçŽ°ã€‚ + +\item[-no-gui] 强制使用文本模å¼å®‰è£…程åºï¼Œå°±ç®—在 Windows 下也是如此。 + +\item[-lang {\sl LL}] 指定安装程åºç•Œé¢çš„语言,使用标准的 (通常是两个 +两个字符) 语言代ç ã€‚安装程åºä¼šå°è¯•è‡ªå·±åˆ¤æ–­å‡ºåˆé€‚的语言,如果判断出的 +语言没有支æŒå°±ä¼šä½¿ç”¨è‹±è¯­æ›¿ä»£ã€‚å¯ä»¥è¿è¡Œ \code{install-tl --help} 获得 +支æŒçš„语言列表。 + +\htmlanchor{opt-in-place} +\item[-in-place] 如果你已ç»æœ‰ä¸€ä»½ç”¨ rsync, svn, 或者其他方å¼å®‰è£…çš„ +\TL{} (å‚è§ \url{http://tug.org/texlive/acquire-mirror.html}) é‚£ +这个选项会使用现有的,åªæ‰§è¡Œå¿…è¦çš„安装åŽæ“ä½œã€‚æ³¨æ„ \filename{tlpkg/texlive.tlpdb} +文件会被覆盖,你需è¦è‡ªå·±å¤‡ä»½å®ƒã€‚å¦å¤–,文件的删除必须手动完æˆã€‚所以 +åªåœ¨ä½ çŸ¥é“自己在干什么的情况下æ‰ç”¨å®ƒã€‚这个选项ä¸èƒ½åœ¨å®‰è£…程åºç•Œé¢ä¸­ +选择。 + +\item[-portable] 为比如 \acro{USB} 盘上便æºä½¿ç”¨å®‰è£…。也å¯ä»¥åœ¨ +文本安装程åºä¸­ç”¨ \code{V} 命令选择,或者 GUI 安装程åºä¸­é€‰æ‹©ï¼Œ +å‚è§ç¬¬ \ref{sec:portable-tl} 节。 + +\item[-profile {\sl profile}] 载入安装é…置文件 \var{file} 以ä¸éœ€è¦ +用户干预的方å¼å®Œæˆå®‰è£…。安装程åºä¼šåœ¨å®‰è£…到的 \dirname{tlpkg} +å­ç›®å½•ä¸­åˆ›å»ºä¸€ä¸ªå« \filename{texlive.profile} 的文件。这个文件å¯ä»¥ +用作å‚数,在ä¸åŒçš„系统下完æˆå®Œå…¨ä¸€è‡´çš„安装。或者你也å¯ä»¥ä½¿ç”¨ä¸€ä¸ªå®š +制的é…置文件,一般通过è£å‰ªç”Ÿæˆçš„文件得到,或者空文件,这样安装时会 +使用所有缺çœå€¼ã€‚ + +\item [-repository {\sl url-or-directory}] 指定作为æ¥æºçš„软件包仓库, +å‚è§ä¸‹æ–‡ã€‚ +\end{ttdescription} + +\subsubsection{\optname{-repository} å‚æ•°} +\label{sec:location} + +默认的网络软件包安装ä½ç½®æ˜¯ç”± \url{http://mirror.ctan.org} 自动选择 +çš„ \CTAN{} é•œåƒã€‚ + +如果你需è¦è‡ªå·±æŒ‡å®šï¼Œåœ°å€å¯ä»¥æ˜¯ä»¥ \texttt{ftp:}, \texttt{http:} 或 +\texttt{file:/} 起始的 URL,或者本地路径。(如果给定了一个 +\texttt{http:} 或 \texttt{ftp:} 地å€ï¼Œå…¶æœ«å°¾çš„ `\texttt{/}' 字符 +和末尾的 `\texttt{/tlpkg}' 这段都会被忽略。) + +比如你å¯ä»¥é€‰æ‹©è¿™æ ·çš„一个 \CTAN\ é•œåƒï¼š +\url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/}, +当然你应该把 |ctan.example.org/tex-archive| 替æ¢ä¸ºå…·ä½“é•œåƒçš„ +域å和特定的顶层 \CTAN\ 路径 (\url{http://ctan.org/mirrors}) +维护了一个 \CTAN\ çš„é•œåƒåˆ—表)。 + +如果给定的地å€åœ¨æœ¬åœ°ç£ç›˜ä¸Š (或者是路径或者是 \texttt{file:/} +开头的 URL),就会使用指定路径下 \dirname{archive} å­ç›®å½•ä¸­çš„ +压缩文件进行安装。 + +\subsection{安装åŽçš„æ“作} +\label{sec:postinstall} + +安装åŽå¯èƒ½éœ€è¦ä¸€äº›é¢å¤–çš„æ“作。 + +\subsubsection{Unix 下的环境å˜é‡} +\label{sec:env} + +如果你选择了在标准路径下创建符å·è¿žæŽ¥ (在第~\ref{sec:options}~节æ到), +那就ä¸éœ€è¦è®¾ç½®çŽ¯å¢ƒå˜é‡äº†ã€‚å¦åˆ™ï¼Œåœ¨ Unix ç³»ç»Ÿä¸­ï¼Œä½ åº”è¯¥å°†è‡ªå·±ä½¿ç”¨çš„å¹³å° +下二进制程åºçš„目录加入æœç´¢è·¯å¾„中。(在 Windows 下安装程åºä¼šè´Ÿè´£è¿™ä¸€æ­¥ã€‚) + +æ¯ä¸ªæ”¯æŒçš„å¹³å°éƒ½åœ¨ \dirname{TEXDIR/bin} 下有自己的å­ç›®å½•ã€‚ +å‚è§å›¾~\ref{fig:bin-text} 以了解所有的这些å­ç›®å½•å’Œå®ƒä»¬å¯¹åº”çš„å¹³å°ã€‚ + +如果希望 man å’Œ info 能够找到,你还å¯ä»¥æŠŠæ–‡æ¡£çš„ man å’Œ Info 目录加 +入其对应的æœç´¢è·¯å¾„中。在添加 \envname{PATH} åŽï¼Œæ‰‹å†Œé¡µé¡µå¯ä»¥è¢«è‡ªåŠ¨ +找到。 + +对于 \prog{bash} 这样的 Bourne 兼容 shell 而言,以 Intel x86 下的 +GNU/Linuxã€é»˜è®¤çš„目录设置为例,需è¦ä¿®æ”¹çš„文件是 \filename{$HOME/.profile} +(或者其他由 \filename{.profile} 载入的文件),应该添加的内容应该类似 +这样: + +\begin{sverbatim} +PATH=/usr/local/texlive/2012/bin/i386-linux:$PATH; export PATH +MANPATH=/usr/local/texlive/2012/texmf/doc/man:$MANPATH; export MANPATH +INFOPATH=/usr/local/texlive/2012/texmf/doc/info:$INFOPATH; export INFOPATH +\end{sverbatim} + +对于 csh 或者 tcsh,需è¦ä¿®æ”¹çš„文件通常是 \filename{$HOME/.cshrc},而 +应该添加的内容类似: + +\begin{sverbatim} +setenv PATH /usr/local/texlive/2012/bin/i386-linux:$PATH +setenv MANPATH /usr/local/texlive/2012/texmf/doc/man:$MANPATH +setenv INFOPATH /usr/local/texlive/2012/texmf/doc/info:$INFOPATH +\end{sverbatim} + +如果你已ç»åœ¨ä½ çš„é…置文件里写过了这样的路径设置,那就åªéœ€è¦ +把 \TL\ 的这些目录加进去就行了。 + +\subsubsection{环境å˜é‡çš„全局é…ç½®} +\label{sec:envglobal} + +如果你希望在整个系统范围内修改这些å˜é‡ï¼Œæˆ–这样系统新增的用户自动 +继承这些å˜é‡ï¼Œå°±å¾—自寻方法了,因为ä¸åŒçš„系统之间这方é¢çš„é…置差异 +太大。 + +我们的建议是: 1)~ä½ å¯èƒ½åº”该看看 \filename{/etc/manpath.config} +这个文件是å¦å­˜åœ¨ï¼Œå¦‚果有的è¯ï¼Œæ·»åŠ ä¸‹é¢è¿™æ ·çš„内容: + +\begin{sverbatim} +MANPATH_MAP /usr/local/texlive/2012/bin/i386-linux \ + /usr/local/texlive/2012/texmf/doc/man +\end{sverbatim} + +ç„¶åŽ 2)~检查 \filename{/etc/environment} 是å¦å®šä¹‰äº†é»˜è®¤çš„æœç´¢è·¯å¾„ +和其他的默认环境å˜é‡ã€‚ + +在æ¯ä¸ª (Unix) 二进制目录下,我们都会创建一个 \code{man} 符å·é“¾æŽ¥ +到 \dirname{texmf/doc/man} 目录。因为 +有些 \code{man} 程åºï¼Œæ¯”如 \MacOSX\ 标准的 \code{man} 就能够自动通 +过这个链接找到对应的手册页,这样你就ä¸å¿…手工设置手册页路径了。 + +\subsubsection{\DVD\ 安装åŽçš„网络更新} +\label{sec:dvd-install-net-updates} + +如果你从 \DVD\ 安装了 \TL\ 并希望从网络获å–更新,需è¦åœ¨æ›´æ–°äº†æœç´¢è·¯å¾„ +(如上一节所述) \emph{之åŽ}执行这个命令: + +\begin{alltt} +> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet} +\end{alltt} + +这告诉 \cmdname{tlmgr} 从就近的 \CTAN\ é•œåƒèŽ·å–未æ¥æ›´æ–°ã€‚ +从 \DVD{} 安装时会默认完æˆè¿™ä¸€æ­¥ï¼Œé€šè¿‡ç¬¬~\ref{sec:options}~èŠ‚ä»‹ç» +的选项。 + +如果自动镜åƒé€‰æ‹©å‡ºçŽ°äº†é—®é¢˜ï¼Œä½ å¯ä»¥ä»Ž \url{http://ctan.org/mirrors} +列表中自己指定一个 \CTAN\ é•œåƒã€‚使用与上述一致的 \dirname{tlnet} +å­ç›®å½•è·¯å¾„。 + +\subsubsection{\XeTeX{} å’Œ Lua\TeX{} 的系统字体é…ç½®} +\label{sec:font-conf-sys} + +\XeTeX\ å’Œ Lua\TeX\ å¯ä»¥ä½¿ç”¨ä»»ä½•ç³»ç»Ÿå®‰è£…的字体,而ä¸åªæ˜¯ \TeX\ 目录树 +中的那些。它们使用类似但ä¸å®Œå…¨ä¸€è‡´çš„æ–¹å¼å®žçŽ°è¿™ä¸€åŠŸèƒ½ã€‚ + +在 Windows 下 \TL\ æ供的字体会自动为 \XeTeX\ 所用。 +但如果你在 Unix 兼容的系统中安装了 \filename{xetex} 软件包,则需è¦æŠŠç³» +统é…置一番 \XeTeX\ æ‰èƒ½æ‰¾åˆ°éš \TL\ 安装的那些字体。 + +为了进行é…置,\pkgname{xetex} å®‰è£…åŽ (ä¸ç®¡æ˜¯åˆå§‹å®‰è£…还是åŽæ¥å®‰è£…çš„) 都会在 +\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf} 创建一个 +必需的é…置文件。 + +è¦åœ¨æ•´ä¸ªç³»ç»Ÿä¸­ä½¿ç”¨ \TL{} 的字体 (å‡å®šä½ æœ‰è¶³å¤Ÿçš„æƒé™),请ä¾ç…§ä¸‹é¢çš„ +步骤æ¥åšï¼š +\begin{enumerate*} +\item å°† \filename{texlive-fontconfig.conf} 文件å¤åˆ¶åˆ° +\dirname{/etc/fonts/conf.d/09-texlive.conf}。 +\item è¿è¡Œ \Ucom{fc-cache -fsv}。 +\end{enumerate*} + +如果你没有足够的æƒé™æ‰§è¡Œä¸Šè¿°æ“作,或者åªéœ€è¦æŠŠ \TL{} 字体æ供给你自 +己,å¯ä»¥è¿™ä¹ˆåšï¼š +\begin{enumerate*} +\item å°† \filename{texlive-fontconfig.conf} 文件å¤åˆ¶åˆ° + \filename{~/.fonts.conf},其中 \filename{~} 是你的主目录。 +\item è¿è¡Œ \Ucom{fc-cache -fv}。 +\end{enumerate*} + +ä½ å¯ä»¥è¿è¡Œ \code{fc-list} æ¥æŸ¥çœ‹ç³»ç»Ÿå­—体的å称。命令 +\code{fc-list : family style file spacing} å¯ä»¥åˆ—出一些有趣的信æ¯ã€‚ + +\subsubsection{\ConTeXt{} Mark IV} +\label{sec:context-mkiv} + +“旧â€çš„ \ConTeXt{} (Mark \acro{II}) 和“新的†\ConTeXt{} (Mark \acro{IV}) +应该在 \TL{} 安装åŽç›´æŽ¥å°±èƒ½è¿è¡Œï¼Œè€Œä¸”åªè¦ä½ ä¸€ç›´ç”¨ \verb+tlmgr+ æ¥æ›´æ–°ï¼Œ +它ä¸åº”该需è¦ä»»ä½•å…¶ä»–的处ç†ã€‚ + +然而,因为 \ConTeXt{} Mk\acro{IV} 没有使用 kpathsea 库,在你手动安装 +文件 (没使用 \verb+tlmgr+) åŽå¿…须执行一定的设置。在æ¯æ¬¡å®‰è£…åŽï¼Œæ¯ä¸ª +Mk\acro{IV} 用户必须执行: + +\begin{sverbatim} +context --generate +\end{sverbatim} +æ¥åˆ·æ–° \ConTeXt{} ç£ç›˜ç¼“存数æ®ã€‚ +生æˆçš„文件会被ä¿å­˜åœ¨ \code{TEXMFCACHE} 目录下,在 \TL{} 中这个目录 +的默认值是 \verb+TEXMSYSVAR;TEXMFVAR+。 + +\ConTeXt\ Mk\acro{IV} ä¼šè¯»å– \verb+TEXMFCACHE+ æ到的所有路径, +并写入第一个å¯å†™ä¸œé£Žè·¯å¾„。在读å–时,最åŽæ‰¾åˆ°çš„匹é…会被优先选择。 + +è¦äº†è§£æ›´å¤šä¿¡æ¯ï¼Œå‚è§ +\url{http://wiki.contextgarden.net/Running_Mark_IV}。 + +\subsubsection{集æˆæœ¬åœ°ä¸Žä¸ªäººå®æ–‡ä»¶} +\label{sec:local-personal-macros} + +这在第~\ref{sec:texmftrees}~节已ç»é¡ºå¸¦æ到过了:\dirname{TEXMFLOCAL} +目录 (它的默认值是 \dirname{/usr/local/texlive/texmf-local} 或者 +Windows 下的 \verb|%SystemDrive%\texlive\texmf-local|) 这个目录就是为了存储 +é¢å‘整个系统的本地字体和å®æ–‡ä»¶çš„;而 \dirname{TEXMFHOME} 目录 (å…¶ +默认值是 \dirname{$HOME/texmf} 或者 \verb|%USERPROFILE%\texmf|), +则是用æ¥å­˜å‚¨ä¸ªäººçš„字体和å®æ–‡ä»¶çš„。这些目录应该在å„个 \TL{} +版本之间共享,æ¯ä¸ªç‰ˆæœ¬éƒ½èƒ½çœ‹åˆ°å…¶å†…容。因此ä¸åº”该把 +\dirname{TEXMFLOCAL} 改得和主 \TL{} 目录差别太大,å¦åˆ™æ–°çš„ç‰ˆæœ¬å‡ºæ¥ +ä½ åˆå¾—å†æ”¹ã€‚ + +对于这两个目录树而言,文件都应该放到åˆé€‚çš„ \TeX\ 目录结构 (\TDS) +å­ç›®å½•ä¸­ï¼Œå‚è§ \url{http://tug.org/tds} 或者 \filename{texmf/web2c/texmf.cnf} +文件。比如一个 \LaTeX{} 文档类或者å®åŒ…应该放在 +\dirname{TEXMFLOCAL/tex/latex} 或者 \dirname{TEXMFHOME/tex/latex} +目录下,è¦ä¸ç„¶å°±æ˜¯å®ƒä»¬çš„一个å­ç›®å½•ä¸‹ã€‚ + +\dirname{TEXMFLOCAL} 目录需è¦ä¸€ä¸ªä¿æŒæ›´æ–°çš„文件åæ•°æ®åº“,å¦åˆ™æ–°å¢ž +的文件就无法找到。你å¯ä»¥ä½¿ç”¨ \cmdname{mktexlsr} 命令或者 +\TeX\ Live Manager \GUI{},configuration 选项å¡ä¸­çš„ +`Reinit file database' 按钮æ¥åˆ·æ–°å®ƒã€‚ + +默认情况下,这些å˜é‡çš„æ¯ä¸€ä¸ªéƒ½å®šä¹‰ä¸ºæ‰€ç¤ºå•ç‹¬çš„目录。这ä¸æ˜¯ä¸€ä¸ªç¡¬æ€§ +规定。如果你需è¦åœ¨æŸäº›å¤§çš„å®åŒ…çš„ä¸åŒç‰ˆæœ¬ç›´æŽ¥æ–¹ä¾¿åœ°åˆ‡æ¢ï¼Œå¯ä»¥ç»´æŠ¤å¤š +个自己的目录树,这通过把 \dirname{TEXMFHOME} 设置为目录列表实现, +大括å·åŒ…围,逗å·åˆ†éš”: + +\begin{verbatim} + TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir} +\end{verbatim} + +第~\ref{sec:brace-expansion}~节进一步介ç»äº†æ‹¬å·å±•å¼€ã€‚ + +\subsubsection{集æˆç¬¬ä¸‰æ–¹å­—体} + +ä¸å¹¸çš„是,这是一个éžå¸¸æ··ä¹±çš„问题。除éžä½ æ„¿æ„深入 \TeX{} 安装的细节, +å¦åˆ™è¯·ä¸è¦æ¶‰è¶³è¿™ä¸ªé¢†åŸŸã€‚别忘了事先看看我们附带的字体,å‚è§ +第~\ref{sec:tl-fonts}~节。 + +\XeTeX\ 或 Lua\TeX\ 是å¯è¡Œçš„替代方案 (å‚è§ç¬¬~\ref{sec:tex-extensions}~节), +它们能让你使用æ“作系统的字体而ä¸å¿…将它安装到 \TeX 中。 + +如果你éžå¾—这么åšï¼Œå‚è§ \url{http://tug.org/fonts/fontinstall.html}, +这是我们对整个过程最好的æ述。如果你严格地管ç†è‡ªå·±çš„本地字体映射, +\texttt{tlmgr generate updmap} \textit{å¯èƒ½}会有用,尤其是在版本 +å‡çº§æ—¶ï¼Œå‚è§ \cmdname{tlmgr} 文档。 + +\subsection{测试安装是å¦æˆåŠŸ} +\label{sec:test-install} + +在完æˆä½ æ‰€éœ€è¦çš„ \TL{} 安装之åŽï¼Œè‡ªç„¶ä½ ä¼šå¸Œæœ›è¯•è¯•çœ‹å®ƒæ˜¯å¦æ­£å¸¸å·¥ä½œï¼Œå¥½è®©ä½ åœ¨ä»¥åŽèƒ½å¤Ÿ +创建优美的文档和字体。 + +这个å°èŠ‚给出了一些测试系统是å¦æ­£å¸¸å·¥ä½œçš„基本步骤。我们这里使用的是 Unix 命令,在 +\MacOSX{} å’Œ Windows 下你更å¯èƒ½æ˜¯ä½¿ç”¨å›¾å½¢ç•Œé¢è¿è¡Œè¿™äº›æµ‹è¯•çš„,ä¸è¿‡å…¶åŽŸç†å¹¶æ— ä¸åŒã€‚ + +\begin{enumerate} + +\item 首先确认你å¯ä»¥æ‰§è¡Œ \cmdname{tex} 程åºï¼š +\begin{alltt} +> \Ucom{tex -{}-version} +TeX 3.1415926 (TeX Live ...) +kpathsea version 6.0.1 +Copyright ... D.E. Knuth. +... +\end{alltt} +如果返回的结果是 `command not found' 而éžç‰ˆæœ¬å’Œç‰ˆæƒä¿¡æ¯ï¼Œæˆ–者显示了 +旧版本的信æ¯ï¼Œå¾ˆæœ‰å¯èƒ½æ˜¯å› ä¸ºä½ æ²¡æœ‰æŠŠæ­£ç¡®çš„ \dirname{bin} å­ç›®å½•æ·»åŠ  +到 \envname{PATH} 中。å‚è§ç¬¬~\pageref{sec:env}~页关于设置环境å˜é‡ +的说明。 + +\item 处ç†ä¸€ä¸ªåŸºæœ¬çš„ \LaTeX{} 文件: +\begin{alltt} +> \Ucom{latex sample2e.tex} +pdfTeX 3.1415926-... (TeX Live ...) +... +Output written on sample2e.dvi (3 pages, 7484 bytes). +Transcript written on sample2e.log. +\end{alltt} +如果无法找到 \filename{sample2e.tex} 或其他什么文件,很å¯èƒ½æ˜¯å› ä¸ºæ—§çš„环境å˜é‡ +或é…置文件影å“了判断。我们建议你é‡ç½®æ‰€æœ‰ \TeX 相关的环境å˜é‡ç„¶åŽé‡è¯•ã€‚(ä½ å¯ä»¥ +让 \TeX{} 报告具体æœç´¢çš„路径,以便仔细分æžå‡ºé”™çš„原因。å‚è§ +第~\pageref{sec:debugging}~页的``调试æ“作''一节以了解更多信æ¯ã€‚) + +\item å³æ—¶é¢„览结果: +\begin{alltt} +> \Ucom{xdvi sample2e.dvi} # Unix +> \Ucom{dviout sample2e.dvi} # Windows +\end{alltt} +你应该å¯ä»¥çœ‹åˆ°åœ¨æ–°çª—å£ä¸­å‡ºçŽ°äº†ä¸€ç¯‡ä»‹ç» \LaTeX{} 基础的有趣文档。 +(如果你刚接触 \TeX\ 系统,还是值得一读的。) \cmdname{xdvi} +需è¦è¿è¡Œåœ¨ X 窗å£ç³»ç»Ÿä¸‹æ‰èƒ½å·¥ä½œï¼Œå¦‚果没有è¿è¡Œçª—å£çŽ¯å¢ƒæˆ– +\envname{DISPLAY} 环境å˜é‡è®¾ç½®é”™è¯¯ï¼Œéƒ½ä¼šå¾—到 +\samp{Can't open display} è¿™å¥é”™è¯¯ä¿¡æ¯ã€‚ + +\item 创建用于打å°æˆ–显示的 \PS{} 文件: +\begin{alltt} +> \Ucom{dvips sample2e.dvi -o sample2e.ps} +\end{alltt} + +\item 创建 \acro{PDF} æ–‡ä»¶è€Œéž \dvi{}ï¼Œè¿™é‡Œé‡‡ç”¨ç›´æŽ¥å¤„ç† \filename{.tex} +文件输出 \acro{PDF} çš„æ–¹å¼ï¼š +\begin{alltt} +> \Ucom{pdflatex sample2e.tex} +\end{alltt} + +\item 预览 \acro{PDF} 文件: +\begin{alltt} +> \Ucom{gv sample2e.pdf} +\textrm{或:} +> \Ucom{xpdf sample2e.pdf} +\end{alltt} +\cmdname{gv} å’Œ \cmdname{xpdf} 现在都ä¸åŒ…å«åœ¨ \TL{} 中,你 +å¿…é¡»å•ç‹¬å®‰è£…它们。请分别å‚阅 \url{http://www.gnu.org/software/gv} å’Œ +\url{http://www.foolabs.com/xpdf}。(还有许多其他的 \acro{PDF} 查看器。) +Windows 下我们推è Sumatra PDF (\url{http://blog.kowalczyk.info/software/sumatrapdf})。 + +\item 除 \filename{sample2e.tex} 外å¯èƒ½ä¼šå¯¹ä½ æœ‰ç”¨çš„标准测试文件: + +\begin{ttdescription} +\item [small2e.tex] 比 \filename{sample2e} 更为简å•çš„文档,供你在é‡åˆ°é—®é¢˜ +æ—¶å°è¯•å‡å°‘输入的内容。 +\item [testpage.tex] 测试你的打å°æœºæ˜¯å¦å¸¦æœ‰é¢„设的å移é‡ã€‚ +\item [nfssfont.tex] 打å°ä¸€ä»½å­—体表格 (proofsheet) 以供测试。 +\item [testfont.tex] 用 plain \TeX{} 打å°å­—体表格。 +\item [story.tex] 最ç»å…¸çš„ (plain) \TeX{} 测试文件。在执行 +\samp{tex story.tex} 之åŽï¼Œä½ è¿˜è¦åœ¨ \code{*} æ示符下键入 \samp{\bs bye}。 +\end{ttdescription} +ä½ å¯ä»¥ç”¨ä¸Žæˆ‘ä»¬å¤„ç† \filename{sample2e.tex} 文件时相åŒçš„æ–¹å¼æ¥å¤„ç†è¿™äº›æ–‡ä»¶ã€‚ + +\item 如果你安装了 \filename{xetex} 包,å¯ä»¥æŒ‰å¦‚下步骤测试它能å¦è®¿é—®ç³»ç»Ÿå­—体: +\begin{alltt} +> \Ucom{xetex opentype-info.tex} +This is XeTeX, Version 3.1415926\dots +... +Output written on opentype-info.pdf (1 page). +Transcript written on opentype-info.log. +\end{alltt} +(或者对 \filename{luatex} åšåŒæ ·çš„步骤。) + +如果你收到 ``Invalid fontname `Latin Modern Roman/ICU'\dots'' 这样 +的错误信æ¯ï¼Œå°±è¯´æ˜Žéœ€è¦é…置系统 \XeTeX{} æ‰èƒ½æ‰¾åˆ° \TL{} 自带的字体。 +å‚è§ç¬¬~\ref{sec:font-conf-sys}~节。 + +\end{enumerate} + +\subsection{其他å¯ä¸‹è½½è½¯ä»¶çš„链接} + +如果你还是个 \TeX{} 新手,或者在编辑 \TeX{} 或 \LaTeX{} 文档时需è¦å¸®åŠ©ï¼Œ +请访问 \url{http://tug.org/begin.html} 寻找引导性的资æºã€‚ + +这里是一些你å¯èƒ½ä¼šè€ƒè™‘安装的其他工具的链接。 +\begin{description} +\item[Ghostscript] \url{http://www.cs.wisc.edu/~ghost/} +\item[Perl] \url{http://www.perl.org/} 与 \acro{CPAN} 中的补充包, + \url{http://www.cpan.org/} +\item[ImageMagick] \url{http://www.imagemagick.com}, 用于图形处ç†å’Œè½¬æ¢ +\item[NetPBM] \url{http://netpbm.sourceforge.net/}, åŒæ ·ç”¨äºŽå›¾å½¢ã€‚ + +\item[é¢å‘ \TeX\ 的编辑器] 有很广泛的选择,一般ä¾ç”¨æˆ·ä¸ªäººçš„å£å‘³è€Œå®šã€‚è¿™ + 里按字典åºåˆ—出了一些 (部分是 Windows æ‰æœ‰çš„)。 + \begin{itemize*} + \item \cmdname{GNU Emacs} 在 Windows 下的原生版本在 + \url{http://www.gnu.org/software/emacs/windows/ntemacs.html}。 + \item \cmdname{Emacs çš„ Auc\TeX\ 包} çš„ Windows 版本在 \CTAN\ æ供。 + AuC\TeX\ 的主页在 \url{http://www.gnu.org/software/auctex}。 + \item \cmdname{LEd} 在 \url{http://mirror.ctan.org/support/LEd} æ供。 + \item \cmdname{SciTE} 在 + \url{http://www.scintilla.org/SciTE.html} æ供。 + \item \cmdname{Texmaker} 是自由软件,在 + \url{http://www.xm1math.net/texmaker} æ供。 + \item \cmdname{TexMakerX} 是 \cmdname{Texmaker} 的一个 + fork,引入了é¢å¤–的功能;\url{http://texmakerx.sourceforge.net}。 + \item \cmdname{TeXnicCenter} 是自由软件,在 + \url{http://www.texniccenter.org} æä¾›ï¼Œä¹Ÿéš pro\TeX{}t + å‘行版附带。 + \item \cmdname{TeXworks} 是自由软件,在 + \url{http://tug.org/texworks} æ供,也作为 \TL{} 的一部分在 + Windows å’Œ \MacOSX\ 下被安装。 + \item \cmdname{Vim} 是自由软件,在 + \url{http://www.vim.org} æ供。 + \item \cmdname{WinEdt} 是共享软件,在 + \url{http://tug.org/winedt} 或 \url{http://www.winedt.com} æ供。 + \item \cmdname{WinShell} 在 \url{http://www.winshell.de} æ供。 + \end{itemize*} +\end{description} +关于这类软件包和程åºï¼Œ\url{http://tug.org/interest.html} 有一份更长的列表。 + +\section{特殊安装} + +å‰é¢çš„章节æ述了基本的安装过程。这里我们介ç»ä¸€äº›ç‰¹æ®Šçš„情形。 + +\htmlanchor{tlsharedinstall} +\subsection{用户共享 (或跨机器) 安装} +\label{sec:sharedinstall} + +\TL{} 的设计å¯ä»¥ä½¿å®ƒåœ¨åŒä¸€ä¸ªç³»ç»Ÿçš„ä¸åŒçš„用户间共享,或者å¯ä»¥åœ¨ç½‘ç»œä¸Šä¸ +åŒçš„系统间共享。在标准的目录结构下,ä¸éœ€è¦é…置固定的ç»å¯¹è·¯å¾„:\TL{} 程 +åºæ‰€éœ€è¦çš„文件都能通过都在这些程åºè‡ªèº«çš„相对路径找到。你å¯ä»¥åœ¨ +\filename{$TEXMFMAIN/web2c/texmf.cnf} é…置文件中看到实际的处ç†ï¼Œ +它包å«äº†ç±»ä¼¼ä¸‹é¢çš„内容: +\begin{verbatim} +TEXMFMAIN = $SELFAUTOPARENT/texmf +... +TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local +\end{verbatim} +这就æ„味ç€ï¼Œå…¶å®ƒçš„系统或用户åªéœ€è¦æŠŠ \TL{} çš„å¯æ‰§è¡Œæ–‡ä»¶çš„ä½ç½®æ·»åŠ åˆ°å…¶ +系统的æœç´¢è·¯å¾„中就å¯ä»¥ä½¿ç”¨äº†ã€‚ + +åŒç†ï¼Œä½ ä¹Ÿå¯ä»¥å…ˆæŠŠ \TL{} 安装在本地,然åŽå†æŠŠæ•´ä¸ªå®‰è£…目录转移到网络上。 + +至于 Windows,å¯ä»¥åœ¨ \url{http://tug.org/texlive/w32client.html} +ä¸‹è½½åˆ°ä¸€ä¸ªå« \filename{w32client} 的示例网络安装脚本。它å¯ä»¥ä¸ºå±€åŸŸ +网上的 \TL{} 安装产生é…置文件和èœå•å¿«æ·æ–¹å¼ã€‚å®ƒè¿˜ä¼šæ³¨å†Œä¸€ä¸ªå« +\filename{w32unclient} çš„å¸è½½ç¨‹åºï¼Œåœ¨åŒä¸€ä¸ª zip 文件中。å‚è§å®ƒçš„ +网页以了解更多信æ¯ã€‚ + +\htmlanchor{tlportable} +\section{ä¾¿æº (\USB{}) 安装} +\label{sec:portable-tl} + +\code{-portable} 安装程åºé€‰é¡¹ (或者文本安装程åºçš„ \code{V} 命令, +或对应的 \GUI{} 选项) 创建的是一套在一个独立路径下完全自包å«çš„ \TL{} +安装,而跳过系统集æˆã€‚ä½ å¯ä»¥åœ¨ \USB{} 盘上创建这样的安装,或者在安装 +åŽå¤åˆ¶åˆ° \USB{} 盘上。 + +è¦ä½¿ç”¨è¿™æ ·çš„便æºå®‰è£…æ¥è¿è¡Œ \TeX{},你必须将对应的二进制目录加入终端 +çš„æœç´¢è·¯å¾„,如往常一样。在 Windows 下,你å¯ä»¥åŒå‡»å®‰è£…根目录下的 +\filename{tl-tray-menu} æ¥é€‰æ‹©æ‰§è¡Œä¸€äº›å¸¸è§ä»»åŠ¡ï¼Œå¦‚这个截图所示: + +\medskip +\tlpng{tray-menu}{4cm} +\smallskip + +\noindent `More\ldots' 项目解释了如何定制这个èœå•ã€‚ + +\htmlanchor{tlisoinstall} +\subsection{\ISO\ (或 \DVD) 安装} +\label{sec:isoinstall} + +如果你ä¸éœ€è¦ç»å¸¸æ›´æ–°æˆ–者修改安装,或者有其他å¯ä»¥ä½¿ç”¨ \TL{} 的系统, +创建一个 \TL{} 安装的 \ISO\ å¯èƒ½ä¼šæ¯”较方便,因为: + +\begin{itemize} +\item 在ä¸åŒè®¡ç®—机之间å¤åˆ¶ \ISO\ è¦æ¯”å¤åˆ¶æ™®é€šå®‰è£…快得多。 +\item 如果你åŒå¯åŠ¨ä¸åŒçš„æ“作系统而且希望它们共享一个 + \TL{} 的安装,\ISO\ 安装ä¸ä¼šå—ä¸åŒæ–‡ä»¶ç³»ç»Ÿæ”¯æŒ + (\acro{FAT32}, \acro{NTFS}, \acro{HFS+}) çš„é™åˆ¶ã€‚ +\item 虚拟机å¯ä»¥ç›´æŽ¥æŒ‚载这样的 \ISO{}。 +\end{itemize} + +当然你还å¯ä»¥æŠŠ \ISO\ 刻录到 \DVD{} 上,如果有用的è¯ã€‚ + +æ¡Œé¢ \GNU/Linux/Unix 系统,包括 \MacOSX{},都能够挂载 \ISO{}。此外, +没有任何与普通硬盘安装ä¸åŒçš„地方,å‚è§ç¬¬ \ref{sec:env} 节。 + +在准备这样的 \ISO\ 安装时,最好忽略å‘布年份的å­ç›®å½•ï¼Œå¹¶è®© \filename{texmf-local} +处在和其他目录树 (\filename{texmf}, \filename{texmf-dist} ç­‰) åŒçº§ã€‚ +ä½ å¯ä»¥åœ¨å®‰è£…程åºçš„普通目录选项中设置这些。 + +对于一个物ç†çš„ (而ä¸æ˜¯è™šæ‹Ÿçš„) Windows 系统,你å¯ä»¥å°† \ISO\ 刻录在 +\acro{DVD} 上,ä¸è¿‡èŠ±ç‚¹æ—¶é—´åœ¨å…费的 \ISO\ 挂载工具上是值得的。对于 +Windows \acro{XP},微软æ供了 \filename{winxpvirtualcdcontrolpanel}。 + +至于 Windows 系统集æˆï¼Œä½ å¯ä»¥åŒ…å«ç¬¬~\ref{sec:sharedinstall} 节æè¿°çš„ +\filename{w32client} 脚本 (在 \url{http://tug.org/texlive/w32client.html}), +它在 \ISO\ 里和在网络安装时一样好用。 + +在 \MacOSX{},如果符å·é“¾æŽ¥ \filename{/usr/texbin} 指å‘对应的二进制目录, +TeXShop å’Œ \TeX{}works 会使用 \acro{DVD} 安装,比如: +\begin{verbatim} +sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin +\end{verbatim} + +历å²è¯´æ˜Žï¼š\TL{} 2010 是第一个ä¸æ”¯æŒâ€œliveâ€å‘布的 \TL{} 版本,但è¦åœ¨ +\DVD\ 或者 \ISO\ 上执行一直是需è¦ä¸€å®šæŠ€å·§çš„,尤其是必须设置一些环境 +å˜é‡ã€‚如果你从现有的安装创建 \ISO\ å°±ä¸éœ€è¦äº†ã€‚ + +\htmlanchor{tlmgr} +\section{\cmdname{tlmgr}: 管ç†ä½ çš„安装} +\label{sec:tlmgr} + + +\begin{figure}[tb] +\tlpng{tlmgr-gui}{.8\linewidth} +\caption{\GUI\ 模å¼çš„ \prog{tlmgr}:按下 `Load' åŽçš„主窗å£ã€‚} +\label{fig:tlmgr-gui} +\end{figure} + +\begin{figure}[tb] +\hbox to \hsize{% + \vtop{\hsize=.59\linewidth + \null % make figures align at the top + \tlpng{tlmgr-general-options}{\hsize} + \caption{\GUI\ 模å¼çš„ \texttt{tlmgr}:通用选项} + \label{fig:tlmgr-general-options} + } + \hfil + \vtop{\hsize=.39\linewidth + \null + \tlpng{tlmgr-paper-options}{\hsize} + \caption{\GUI\ 模å¼çš„ \texttt{tlmgr}:纸张尺寸选项} + \label{fig:tlmgr-paper-options} + } +} +\end{figure} + +\TL{} 包å«ä¸€ä¸ªå« \prog{tlmgr} 的程åºï¼Œå®ƒå¯ä»¥ç”¨æ¥ç®¡ç†å®‰è£…åŽçš„ +ç³»ç»Ÿã€‚åƒ \prog{updmap}, \prog{fmtutil} å’Œ \prog{texconfig} è¿™äº›ç¨‹åº +ä»ç„¶åŒ…å«åœ¨å‘行版中,而且在将æ¥ä¹Ÿä¸ä¼šå‰”除,但是 \prog{tlmgr} 是一个 +优选的界é¢ã€‚它的功能包括: + +\begin{itemize*} +\item 列出方案 (scheme),集åˆå’Œå®‰è£…包; +\item 安装ã€å‡çº§ã€å¤‡ä»½ã€æ¢å¤ã€å¸è½½è½¯ä»¶åŒ…,并且能自动计算ä¾èµ–关系; +\item 查找和列出软件包; +\item 列出ã€æ·»åŠ å’Œåˆ é™¤ä¸åŒå¹³å°çš„å¯æ‰§è¡Œæ–‡ä»¶ï¼› +\item 改å˜å®‰è£…选项,比如纸张大å°å’Œæºæ–‡ä»¶ä½ç½® (å‚è§ç¬¬~\ref{sec:location}~节)。 +\end{itemize*} + +\subsection{图形界é¢æ¨¡å¼çš„ \cmdname{tlmgr}} +\prog{tlmgr} å¯ä»¥ç”¨ä»¥ä¸‹å‘½ä»¤ä»¥å›¾å½¢æ¨¡å¼ (图~\ref{fig:tlmgr-gui}) å¯åŠ¨ï¼š +\begin{alltt} +> \Ucom{tlmgr -gui} +\end{alltt} +Windows 下å¯ä»¥é€šè¿‡å¼€å§‹èœå•ï¼š\texttt{开始},\texttt{程åº}, +\texttt{TeX Live 2012},\texttt{TeX Live Manager}。 +在å‡å®šå®‰è£…包æºæ˜¯æœ‰æ•ˆä¸”å¯åŠçš„情况下,在点击 `Load' 以åŽï¼Œå®ƒä¼šåˆ—出 +所有å¯èŽ·å–的或已安装的软件包。 + +图~\ref{fig:tlmgr-general-options} å’Œ~\ref{fig:tlmgr-paper-options} +展示了通用和纸张尺寸选项界é¢ã€‚ + +\subsection{\cmdname{tlmgr} 命令行使用示例} + +在åˆå§‹å®‰è£…之åŽï¼Œä½ å¯ä»¥ç”¨ä¸‹é¢çš„命令更新系统: +\begin{alltt} +> \Ucom{tlmgr update -all} +\end{alltt} +如果这太激进了一点,先å°è¯•ï¼š +\begin{alltt} +> \Ucom{tlmgr update -all -dry-run} +\end{alltt} +或 (产生更少输出): +\begin{alltt} +> \Ucom{tlmgr update -list} +\end{alltt} + +下é¢è¿™ä¸ªæ›´å¤æ‚一点的例å­ä»Žæœ¬åœ°ç›®å½•æ·»åŠ äº†ä¸€ä¸ªæ–°çš„软件包集åˆï¼Œç”¨äºŽ \XeTeX\ 引擎。 + +\begin{alltt} +> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex} +\end{alltt} +它会产生下é¢çš„输出 (节略部分): +\begin{fverbatim} +install: collection-xetex +install: arabxetex +... +install: xetex +install: xetexconfig +install: xetex.i386-linux +running post install action for xetex +install: xetex-def +... +running mktexlsr +mktexlsr: Updating /usr/local/texlive/2012/texmf/ls-R... +... +running fmtutil-sys --missing +... +Transcript written on xelatex.log. +fmtutil: /usr/local/texlive/2012/texmf-var/web2c/xetex/xelatex.fmt installed. +\end{fverbatim} + +如你所è§ï¼Œ\prog{tlmgr} 会安装所有ä¾èµ–的包,也会处ç†æ‰€æœ‰åŒ…括刷新文件å +æ•°æ®åº“å’Œé‡æ–°ç”Ÿæˆæ ¼å¼æ–‡ä»¶åœ¨å†…的所有必è¦çš„安装åŽå·¥ä½œã€‚上é¢ç»™ \XeTeX{} +生æˆäº†æ–°çš„æ ¼å¼æ–‡ä»¶ã€‚ + +è¦æ述一个包 (或者集åˆã€å®‰è£…方案): +\begin{alltt} +> \Ucom{tlmgr show collection-latexextra} +\end{alltt} +会产生 +\begin{fverbatim} +package: collection-latexextra +category: Collection +shortdesc: LaTeX supplementary packages +longdesc: A large collection of add-on packages for LaTeX. +installed: Yes +revision: 14675 +\end{fverbatim} + +最åŽä¹Ÿæ˜¯æœ€é‡è¦çš„,查阅 \url{http://tug.org/texlive/tlmgr.html} +这里的完整文档,或者: +\begin{alltt} +> \Ucom{tlmgr -help} +\end{alltt} + +\section{有关 Windows å¹³å°çš„说明} +\label{sec:windows} + +\subsection{针对 Windows 的特å¾} +\label{sec:winfeatures} + +在 Windows 下,安装程åºé¢å¤–地åšäº†ä»¥ä¸‹ä¸€äº›äº‹æƒ…: +\begin{description} +\item[èœå•ä¸Žå¿«æ·æ–¹å¼ã€‚] 在开始èœå•ä¸ŠåŠ å…¥äº†æ–°çš„`\TL{}'程åºèœå•ï¼Œä¸»è¦æ˜¯ä¸€äº› +\GUI{} ç¨‹åº (如 \prog{tlmgr}ã€\prog{texdoctk}ã€PS\_View (\prog{psv}),它是 +PostScript 预览程åº) 和一些文档的èœå•ã€‚ +\item[文件关è”。] 如果å¯ç”¨ï¼Œ\prog{TeXworks}ã€\prog{Dviout} +å’Œ \prog{PS\_view} 会æˆä¸ºå®ƒä»¬å¯¹åº”文件类型的默认程åºï¼Œæˆ–者在 +这些文件类型的“用...打开â€å³é”®èœå•ä¸­å‡ºçŽ°ã€‚ +\item[ä½å›¾åˆ° eps 转æ¢å™¨ã€‚] 许多ä½å›¾æ ¼å¼ä¼šåœ¨å®ƒä»¬çš„“用...打开â€èœå•ä¸­èŽ·å¾—一个 + \cmdname{bitmap2eps} 项目。Bitmap2eps 是一个使用 \cmdname{sam2p} 或 + \cmdname{bmeps} 的简å•è„šæœ¬ã€‚ +\item[自动路径调整。] ä¸éœ€è¦æ‰‹åŠ¨é…置步骤。 +\item[自动设置环境å˜é‡ã€‚] ä¸å†éœ€è¦æ‰‹åŠ¨çš„é…置步骤。 +\item[å安装程åºã€‚] 安装程åºä¸º \TL{} 创建了`添加/删除程åº'æ¡ç›®ã€‚这与 +\TeX\ Live Manager \GUI\ 的删除按钮相对应。 +\end{description} + +\subsection{Windows 上附加的软件} + +为了使安装更加完整,\TL{} 需è¦æ”¯æŒé‚£äº› Windows 机器上ä¸å¸¸è§çš„软件包。 +\TL{} æ供了以下缺失的部分: +\begin{description} +\item[Perl å’Œ Ghostscript。] 由于 Perl å’Œ Ghostscript çš„é‡è¦æ€§ï¼Œ\TL{} +æ供了这些程åºçš„`éšè—'æ‹·è´ã€‚需è¦è¿™äº›è½¯ä»¶æ”¯æŒçš„ \TL{} 程åºçŸ¥é“它们的ä½ç½®ï¼Œ +但它们ä¸ä¼šé€šè¿‡çŽ¯å¢ƒå˜é‡å’Œæ³¨å†Œè¡¨è®¾ç½®æ¥æš´éœ²æ‰€åœ¨çš„ä½ç½®ã€‚它们ä¸æ˜¯å®Œæ•´çš„安装版, +也ä¸ä¼šä¸Žä»»ä½• Perl 或 Ghostscript 系统安装程åºå†²çªã€‚ + +\item[PS\_View。] åŒæ—¶å®‰è£…的还有 PS\_View,一款 \PS{} å’Œ \acro{PDF} +æµè§ˆå™¨ï¼›è§å›¾~\ref{fig:psview}。 + +\begin{figure}[tb] +\tlpng{psview}{.6\linewidth} +\caption{PS\_View:å¯ä»¥èŽ·å¾—很高的放大å€æ•°ï¼}\label{fig:psview} +\end{figure} + +\item[dviout。] å¦å¤–安装的还包括一款 \acro{DVI} é¢„è§ˆç¨‹åº \prog{dviout}。 +当你第一次使用 \cmdname{dviout} 预览文件时,因为没有安装å±å¹•æ˜¾ç¤ºå­—体,它 +将生æˆå­—体。一段时间åŽï¼Œä½ æ‰€ä½¿ç”¨çš„大部分字体都将生æˆï¼ŒéšåŽï¼Œä½ å°†å¾ˆå°‘å†çœ‹ +到生æˆå­—体的窗å£ã€‚ä½ å¯ä»¥ä»Ž (强烈推èçš„) 在线帮助中获得更加详细的信æ¯ã€‚ + +\item[\TeX{}works.] \TeX{}works 是一个集æˆäº† \acro{PDF} 阅读器的 + \TeX\ 编辑器。 + +\item[命令行工具。] 与常è§çš„ \TL{} 二进制文件一起,还安装了一些常è§çš„ +Unix 命令行工具的 Windows 移æ¤ç‰ˆæœ¬ã€‚它们包括 \cmdname{gzip}〠+\cmdname{unzip} 以åŠæ¥è‡ªäºŽ \cmdname{xpdf} 套装中的一些工具 +(\cmdname{pdfinfo}, \cmdname{pdffonts}, \ldots)。 +虽然 \cmdname{xpdf} æµè§ˆå™¨æœ¬èº«æ²¡æœ‰ Windows 版本,但你å¯ä»¥ä»Ž +\url{http://blog.kowalczyk.info/software/sumatrapdf} +下载基于 xpdf çš„ Sumatra \acro{PDF} æµè§ˆå™¨ï¼Œè¿™æ˜¯ä¸€ç§è§£å†³åŠžæ³•ã€‚ + +\item[fc-listã€fc-cache, \ldots] æ¥è‡ªäºŽ fontconfig 库的这些工具有助于 \XeTeX{} +å¤„ç† Windows 的系统字体。你å¯ä»¥ä½¿ç”¨ \prog{fc-list} æ¥ç¡®å®šä¼ é€’ç»™ç» \XeTeX +扩展åŽçš„ \cs{font} 命令的字体å称。如果需è¦ï¼Œé¦–å…ˆè¿è¡Œ \prog{fc-cache} æ›´æ–° +字体信æ¯ã€‚ +\end{description} + + +\subsection{User Profile 目录相当于主目录} +\label{sec:winhome} + +Windows 下对应于 Unix 下的主目录的是 \verb|%USERPROFILE%|。 +在 Windows \acro{XP} 下,它通常ä½äºŽ +\verb|C:\Documents and Settings\|ï¼› +在 Windows Vista å’Œ Windows~7 下是 \verb|C:\Users\|。通常情况下,在 +\filename{texmf.cnf} 文件和 \KPS{} 中,\verb|~| 在 Windows å’Œ Unix 下å‡å¯ä»¥ +进行åˆé€‚的展开。 + +\subsection{Windows 注册表} +\label{sec:registry} + +Windows 将几乎所有的é…置数æ®å­˜æ”¾åœ¨æ³¨å†Œè¡¨ä¸­ã€‚注册表是包å«å‡ ä¸ªä¸»æ”¯çš„一系 +列分层组织的分支。对于安装的程åºè€Œè¨€ï¼Œæœ€é‡è¦çš„主支是 \path{HKEY_CURRENT_USER} +å’Œ \path{HKEY_LOCAL_MACHINE},通常简写为 \path{HKCU} å’Œ \path{HKLM}。注册表的 +\path{HKCU} 部分ä½äºŽç”¨æˆ·çš„主目录 (å‚è§~\ref{sec:winhome}~节)。\path{HKLM} +通常ä½äºŽ Windows 目录的å­ç›®å½•ä¸­ã€‚ + +在æŸäº›æƒ…况下,系统信æ¯å¯ä»¥ä»ŽçŽ¯å¢ƒå˜é‡èŽ·å¾—,但对于其它信æ¯ï¼Œå¦‚å¿«æ·æ–¹å¼çš„ä½ç½®ï¼Œ +则需è¦è®¿é—®æ³¨å†Œè¡¨ã€‚设置永久环境å˜é‡ä¹Ÿéœ€è¦è®¿é—®æ³¨å†Œè¡¨ã€‚ + + +\subsection{Windows æƒé™} +\label{sec:winpermissions} + +在较新的 Windows 版本中,普通用户与管ç†å‘˜æ˜¯æœ‰åŒºåˆ«çš„。åªæœ‰ç®¡ç†å‘˜èƒ½è‡ªç”±è®¿é—® +整个æ“作系统。尽管如此,在实际中,作为å—é™ç”¨æˆ·ä¸Žæ™®é€šç”¨æˆ·ï¼Œä½ æœ€èƒ½å¥½èƒ½å¤Ÿæ +述所处的用户类别:作为一个管ç†å‘˜æ˜¯æƒ¯ä¾‹ï¼Œè€Œä¸æ˜¯ç‰¹ä¾‹ã€‚无论如何,我们努力使得 +\TL{} 的安装ä¸éœ€è¦ç®¡ç†å‘˜æƒé™ã€‚ + +如果用户是管ç†å‘˜èº«ä»½ï¼Œä¼šæœ‰é€‰é¡¹å…许给所有用户安装,如果å¯ç”¨äº†è¿™ä¸ªé€‰é¡¹ï¼Œå°±ä¼š +给所有用户创建快æ·æ–¹å¼ï¼Œå¹¶ä¿®æ”¹ç³»ç»ŸçŽ¯å¢ƒå˜é‡ã€‚å¦åˆ™ï¼Œå®‰è£…程åºåªä¸ºå½“å‰ç”¨æˆ·åˆ›å»º +å¿«æ·æ–¹å¼ï¼Œå¹¶æ”¹å˜ç”¨æˆ·çŽ¯å¢ƒå˜é‡ã€‚ + +无论管ç†å‘˜çŠ¶æ€å¦‚何,\TL{} 预设的默认根目录总是ä½äºŽ \verb|%SystemDrive%| +下。对于当å‰ç”¨æˆ·å®‰è£…程åºæ€»æ˜¯è¦æµ‹è¯•ï¼Œæ ¹ç›®å½•æ˜¯å¦å¯å†™ã€‚ + +如果用户ä¸æ˜¯ç®¡ç†å‘˜ï¼Œå¹¶ä¸” \TeX{} å·²ç»å­˜åœ¨æœç´¢è·¯å¾„中,则å¯èƒ½ä¼šå‡ºçŽ°é—®é¢˜ã€‚ +因为有效路径是由系统路径åŽæŽ¥ç”¨æˆ·è·¯å¾„组æˆï¼Œæ–°å®‰è£…çš„ \TL{} å¯èƒ½æ°¸è¿œä¸ä¼š +优先è¿è¡Œã€‚为了ä¿é™©èµ·è§ï¼Œå®‰è£…程åºä¸ºå‘½ä»¤æ示符创建快æ·æ–¹å¼ã€‚åœ¨è¿™ä¸ªå¿«æ· +æ–¹å¼ä¸­ï¼Œæ–°å®‰è£…çš„ \TL{} çš„å¯æ‰§è¡Œç›®å½•è¢«é¢„设于本地的æœç´¢è·¯å¾„中。当从这个 +å¿«æ·æ–¹å¼å¯åŠ¨å‘½ä»¤è¡Œä»»åŠ¡æ—¶ï¼Œä¾¿å¯ä»¥ä½¿ç”¨æ–°çš„ \TL{}。如果安装了 \TeX{}works, +其快æ·æ–¹å¼ä¹Ÿå°† \TL{} 加进了æœç´¢è·¯å¾„中,所以它应该ä¸ä¼šå‡ºçŽ°è·¯å¾„问题。 + +对于 Vista å’Œ Windows~7 系统,还有å¦å¤–一个奇怪的问题:å³ä½¿ä½ ä»¥ç®¡ç†å‘˜èº« +份登录系统,ä¾æ—§è¦æ±‚ä½ æ供管ç†å‘˜æƒé™ã€‚实际上,是å¦ä»¥ç®¡ç†å‘˜èº«ä»½ç™»å½•å¹¶ä¸ +是问题所在。相å,在你希望è¿è¡Œçš„程åºæˆ–å¿«æ·æ–¹å¼ä¸Šå•å‡»å³é”®ï¼Œç³»ç»Ÿé€šå¸¸ä¼šç»™å‡º +“以管ç†å‘˜èº«ä»½æ‰§è¡Œâ€è¿™æ ·çš„选择。 + +\subsection{增加 Windows å’Œ Cygwin 下的最大内存é‡} +\label{sec:cygwin-maxmem} + +Windows å’Œ Cygwin (å‚è§ç¬¬~\ref{sec:cygwin}~节以了解 Cygwin 安装细节) çš„ +用户å¯èƒ½ä¼šåœ¨æ‰§è¡Œç‰¹å®š \TL\ 程åºæ—¶é‡åˆ°å†…å­˜ä¸è¶³çš„情况。例如 \prog{asy} 在 +ä½ å°è¯•åˆ†é…一个 25,000,000 个实数的数组时å¯èƒ½ä¼šå†…å­˜ä¸è¶³ï¼Œè€Œ Lua\TeX\ 在 +ä½ å°è¯•å¤„ç†ä¸€ä¸ªåŒ…å«å¤§é‡å­—体的文档时å¯èƒ½ä¼šå†…å­˜ä¸è¶³ã€‚ + +对 Cygwin,你å¯ä»¥æŒ‰ç…§ Cygwin ç”¨æˆ·æŒ‡å— +(\url{http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html}) 中的办法 +增加å¯ç”¨å†…å­˜é‡ã€‚ + +对 Windows,你必须创建一个文件,例如命å为 \code{moremem.reg}ï¼ŒåŒ…å« +如下内容: + +\begin{sverbatim} +Windows Registry Editor Version 5.00 + +[HKEY_LOCAL_MACHINE\Software\Cygwin] +"heap_chunk_in_mb"=dword:ffffff00 +\end{sverbatim} + +\noindent 然åŽä»¥ç®¡ç†å‘˜èº«ä»½æ‰§è¡Œå‘½ä»¤ \code{regedit /s moremem.reg}。(如果 +ä½ åªå¸Œæœ›ä¿®æ”¹å½“å‰ç”¨æˆ·è€Œä¸æ˜¯æ•´ä¸ªç³»ç»Ÿçš„内存,改用 \code{HKEY\_CURRENT\_USER}。) + +\section{Web2C 用户指å—} + +\Webc{} 是一整套 \TeX{} 相关程åºçš„集åˆï¼š\TeX{} 本身ã€\MF{}ã€\MP{}ã€\BibTeX{}, +等等。它是 \TL{} 的核心。\Webc{} 的主页åŠæœ€æ–°çš„手册等都在 +\url{http://tug.org/web2c}。 + +我们简å•çš„介ç»ä¸€ä¸‹å®ƒçš„历å²ï¼šæœ€æ—©å®ƒæ˜¯ç”± Tomas Rokicki 在 1987 年实现的,他开å‘了第一套 +å°† \TeX{} 系统的代ç è½¬æ¢ä¸º C 语言代ç çš„系统,基于的是 Unix 下 change files +的原ç†ï¼Œchange files çš„ +工作是 Howard Trickey å’Œ Pavel Curtis 完æˆçš„。Tim Morgan åŽæ¥æˆä¸ºäº†è¿™å¥—系统的维护 +者,在这期间,软件的å称改为了 Web-to-C\@。在许多其他贡献者的帮助下,1990 å¹´ Karl Berry +接手了这个工作,到 1997 年,他把这项工作交给了 Olaf Weber。Olaf Weber 在 2006 å¹´åˆ +把这项工作交还给了 Karl。 + +\Webc{} 系统å¯ä»¥åœ¨ Unixã€32 ä½ Windows 系统ã€\MacOSX{} 和其他的一些æ“作系统下è¿è¡Œã€‚ +它使用的是 Knuth 用 \web{} 文学编程语言编写的 \TeX{} 和其他基本程åºçš„原始代ç ï¼Œå°†å…¶è½¬æ¢ä¸º C +æºç ã€‚用这ç§æ–¹æ³•å¤„ç†çš„核心的 \TeX{} 程åºåŒ…括: + +\begin{cmddescription} +\item[bibtex] 维护å‚考文献。 +\item[dvicopy] 展开 \dvi{} 中的虚拟字体 (virtual font) 引用。 +\item[dvitomp] å°† \dvi{} 转æ¢ä¸º MPX (MetaPost 图片)。 +\item[dvitype] å°† \dvi{} 转æ¢ä¸ºå¯è¯»æ–‡æœ¬ã€‚ +\item[gftodvi] ç”Ÿæˆ Generic æ ¼å¼å­—体的 proofsheet。 +\item[gftopk] å°† Generic æ ¼å¼å­—体转æ¢ä¸º packed æ ¼å¼å­—体。 +\item[gftype] å°† Generic æ ¼å¼å­—体转æ¢ä¸ºå¯è¯»æ–‡æœ¬ã€‚ +\item[mf] 创建字体。 +\item[mft] 以漂亮的方å¼æŽ’版输出 \MF{} 的代ç ã€‚ +\item[mpost] 创建技术性æ’图。 +\item[patgen] 创建断字规则文件。 +\item[pktogf] å°† Packed æ ¼å¼å­—体转æ¢ä¸º generic æ ¼å¼å­—体。 +\item[pktype] å°† PK æ ¼å¼è½¬æ¢ä¸ºå¯è¯»çš„文本。 +\item[pltotf] 将纯文本的 property list 转æ¢ä¸º TFM æ ¼å¼ã€‚ +\item[pooltype] 显示 \web{} çš„ pool 文件。 +\item[tangle] å°† \web{} 转æ¢ä¸º Pascal 代ç ã€‚ +\item[tex] 排版。 +\item[tftopl] å°† TFM æ ¼å¼è½¬æ¢ä¸ºçº¯æ–‡æœ¬çš„ property list æ ¼å¼ã€‚ +\item[vftovp] 将虚拟字体格å¼è½¬æ¢ä¸º virtual property list æ ¼å¼ã€‚ +\item[vptovf] å°† virtual property list æ ¼å¼è½¬æ¢ä¸ºè™šæ‹Ÿå­—体格å¼ã€‚ +\item[weave] å°† \web{} 转æ¢ä¸º \TeX。 +\end{cmddescription} + +\noindent 这些程åºçš„详细功能和调用语法都在其å„自软件包的文档中有说明,在 \Webc{} çš„æ–‡ +档中也有相关介ç»ã€‚ä¸è¿‡ï¼Œæœ‰äº›è§„则对所有这些程åºéƒ½æ˜¯é€šç”¨çš„,了解这些规则有助于你更好的使用 +\Webc{}。 + +所有的程åºéƒ½æŽ¥å—这些 \GNU 标准的选项: +\begin{ttdescription} +\item[-{}-help] 显示基本使用说明。 +\item[-{}-verbose] 显示详细的执行过程。 +\item[-{}-version] 显示版本信æ¯ï¼Œç„¶åŽé€€å‡ºã€‚ +\end{ttdescription} + +所有的 \Webc{} 程åºå‡ä½¿ç”¨ \KPS{} (\url{http://tug.org/kpathsea}) 路径æœç´¢åº“æ¥æŸ¥æ‰¾æ–‡ä»¶ï¼Œ +这套库结åˆçŽ¯å¢ƒå˜é‡å’Œé…置文件的 +使用æ¥ä¼˜åŒ–å¤§é‡ \TeX{} 文件的æœç´¢ã€‚\Webc{} å¯ä»¥åœ¨å¤šäºŽä¸€å¥—的目录树下执行查找,这å¯ä»¥æ–¹ +便维护类似 \TeX{} 标准å‘行版和本地版本的扩展这样两套目录树。为了优化æœç´¢çš„速度,æ¯ä¸ªç›® +录树的顶层目录下都有一个 \file{ls-R} 文件,这个文件里包å«äº†æ‰€æœ‰æ­¤ç›®å½•ä¸‹æ–‡ä»¶çš„å称和对 +应的相对路径。 + +\subsection{Kpathsea 路径æœç´¢} +\label{sec:kpathsea} + +我们首先介ç»ä¸€ä¸‹ \KPS{} 库的的通用路径æœç´¢æ–¹å¼ã€‚ + +我们将目录å称称作\emph{路径元素},而把用冒å·æˆ–者分å·åˆ†éš”的路径元素列表称 +作\emph{æœç´¢è·¯å¾„}。æœç´¢è·¯å¾„å¯èƒ½æ˜¯è®¸å¤šç§æ¥æºçš„组åˆï¼Œæ¯”如在 \samp{.:/dir} 路径下 +æœç´¢ \samp{my-file} 这个文件,\KPS{} å°†é€ä¸ªå°è¯•è·¯å¾„中的æ¯ä¸ªå…ƒç´ ï¼šé¦–先是 +\file{./my-file},然åŽæ˜¯ \file{/dir/my-file},并返回找到的第一个结果 (或者 +也å¯ä»¥è¿”回所有的结果)。 + +为了符åˆæ‰€æœ‰æ“作系统下的习惯,\KPS{} åœ¨éž Unix 系统下使用的路径分隔符å¯èƒ½ä¸æ˜¯å†’å· +(\samp{:}) å’Œæ–œæ  (\samp{/})。 + +在检查一个具体的路径元素 \var{p} 时,\KPS{} 首先检查是å¦æœ‰ç¬¦åˆ \var{p} 的文件å +æ•°æ®åº“ (è§ç¬¬~\pageref{sec:filename-database}~页的``文件åæ•°æ®åº“'') 存在,也就是说, +是å¦æœ‰æ•°æ®åº“æ­£å¥½å¯¹åº”ç€ \var{p} 的一个å‰ç¼€ã€‚如果存在,就在数æ®åº“中寻找符åˆçš„路径åŽç¼€ã€‚ + +è¦æ˜¯æ²¡æœ‰è¿™ç§æ•°æ®åº“存在ã€åˆæˆ–者所有的数æ®åº“都ä¸èƒ½å’ŒæŒ‡å®šçš„路径å‰ç¼€åŒ¹é…上ã€å†æˆ–者找到的数 +æ®åº“里没有进一步的匹é…,就è¦æœç´¢æ–‡ä»¶ç³»ç»Ÿäº† (å‰æ是我们没在路径å‰åŠ ä¸Š \samp{!!} ï¼Œåˆ +或者æœç´¢æ—¶å°±æŒ‡å®šäº†è¿™æ˜¯ä¸€æ¬¡``必定存在 (must exist)''åž‹çš„æœç´¢æ–¹å¼)。此时 \KPS{} å°† +æ ¹æ®è·¯å¾„元素构建一个需è¦æ£€æŸ¥çš„目录列表,é€ä¸ªå°è¯•è¿™äº›ç›®å½•ï¼Œè¯•å›¾æ‰¾åˆ°æŒ‡å®šçš„文件。 + +æœç´¢ \samp{.vf} 文件和 \TeX{} 用 \cs{openin} 命令读入的文件时,会指定``文件必 +定存在 (must exist)''这个选项。而有些文件 (比如 \file{cmr10.vf}) å¯èƒ½ä¸å­˜åœ¨ï¼Œ +花费时间在ç£ç›˜ä¸Šå¯¹å®ƒè¿›è¡Œæœç´¢æ˜¯ä¸å€¼å¾—的。因此,如果你安装了新的 \samp{.vf} 文件åŽæ²¡æœ‰ +æ›´æ–° \file{ls-R},那这个文件将永远找ä¸åˆ°ã€‚æœç´¢æ—¶ä¼šä¼˜å…ˆåœ¨æ•°æ®åº“寻找,然åŽå†åŽ»æœç´¢ç£ç›˜ã€‚ +一旦找到了就立å³åœæ­¢æœç´¢ï¼Œè¿”回结果。 + +尽管最简å•ä¹Ÿæœ€å¸¸è§çš„路径元素是目录å称,\KPS{} æœç´¢çš„路径里还是å¯ä»¥ä½¿ç”¨å…¶ä»–é¢å¤–功能的: +多层默认值,环境å˜é‡å称ã€é…置文件值ã€ç”¨æˆ·ä¸»ç›®å½•ï¼Œä»¥åŠé€’å½’å¼å­ç›®å½•æŸ¥æ‰¾ã€‚所以我们把 \KPS{} +å°†æœç´¢è·¯å¾„å˜æ¢ä¸ºä¸€ä¸ªæˆ–多个基本目录å的过程称为\emph{展开}è·¯å¾„å…ƒç´ çš„è¿‡ç¨‹ã€‚å±•å¼€çš„æ–¹å¼ +按执行的顺åºåœ¨åŽç»­å°èŠ‚里有å™è¿°ã€‚ + +注æ„,如果æœç´¢çš„文件给出了ç»å¯¹è·¯å¾„或者明确的相对路径,å³ä»¥ \samp{/} 或 \samp{./} 或 +\samp{../} 起始,\KPS{} å°†åªæ£€æŸ¥è¯¥æ–‡ä»¶æ˜¯å¦å­˜åœ¨ã€‚ + +\ifSingleColumn +\else +\begin{figure*} +\verbatiminput{examples/ex5.tex} +\setlength{\abovecaptionskip}{0pt} + \caption{一份示例性的é…置文件的例å­} + \label{fig:config-sample} +\end{figure*} +\fi + +\subsubsection{路径的æ¥æº} +\label{sec:path-sources} + +æœç´¢è·¯å¾„å¯èƒ½æ¥è‡ªè®¸å¤šåœ°æ–¹ï¼Œ\KPS{} 是按照下é¢çš„顺åºæŸ¥æ‰¾çš„: + +\begin{enumerate} +\item + 用户设置的环境å˜é‡ï¼Œä¾‹å¦‚ \envname{TEXINPUTS}\@。以 . 连接æŸä¸ªç¨‹åºå称的环境å˜é‡ +有更高的优先级,比如若正在è¿è¡Œçš„程åºæ˜¯ \samp{latex},那 \envname{TEXINPUTS.latex} +将比 \envname{TEXINPUTS} 优先级更高。 +\item + 专门针对æŸä¸ªç¨‹åºçš„é…置文件,比如 \cmdname{dvips} çš„ \file{config.ps} 里出现 +\samp{S /a:/b} 这样一行。 +\item \KPS{} é…置文件 \file{texmf.cnf},包å«ç±»ä¼¼ + \samp{TEXINPUTS=/c:/d} 这样的一行 (å‚è§ä¸‹é¢çš„解释)。 +\item 编译时的缺çœå€¼ã€‚ +\end{enumerate} +\noindent ä½ å¯ä»¥é€šè¿‡è°ƒè¯•é€‰é¡¹çœ‹åˆ°æ‰€æœ‰çš„这些值 (å‚è§ç¬¬~\pageref{sec:debugging}~页的 +``调试æ“作'')。 + +\subsubsection{é…置文件} + +\KPS{} 读入\emph{è¿è¡Œæ—¶é…置文件} \file{texmf.cnf} æ¥èŽ·å¾—æœç´¢è·¯å¾„和其他定义。 +而这个 \file{texmf.cnf} 存放的路径则是在 \envname{TEXMFCNF} å˜é‡é‡Œå®šä¹‰çš„, +但我们ä¸å»ºè®®è®¾ç½®è¿™ä¸ª (或者任何) 环境å˜é‡ã€‚ + +作为代替,标准的安装将产生文件 \file{.../2012/texmf.cnf}ã€‚å¦‚æžœä½ å¿…é¡»ä¿®æ”¹ç¼ºçœ +值 (一般ä¸éœ€è¦),这是修改的地方。主é…置文件是 +\file{.../2012/texmf/web2c/texmf.cnf}。你ä¸åº”该修改åŽè€…,因为在å‘行版本被更新 +åŽä¼šä¸¢å¤±ä¿®æ”¹ã€‚ + +æœç´¢è·¯å¾„里\emph{所有的} \file{texmf.cnf} 文件都会被读入,而先读入的优先级更高。 +比如æœç´¢è·¯å¾„是 \verb|.:$TEXMF|,那么文件 \file{./texmf.cnf} 里é¢çš„值è¦æ¯” +\verb|$TEXMF/texmf.cnf| 里边的优先。 + +\begin{itemize} +\item + 以 \code{\%} 表示å•è¡Œæ³¨é‡Šã€‚ +\item + 忽略空行。 +\item + 行末的 \bs{} 作为连接符,å³æŠŠä¸‹ä¸€è¡Œç›´æŽ¥æŽ¥ä¸Šã€‚但ä¿ç•™ä¸‹ä¸€è¡Œè¡Œé¦–的空白。 +\item + 所有剩余的行格å¼å¦‚下: +\begin{alltt} + \var{variable}[.\var{progname}] [=] \var{value} +\end{alltt}% + \samp{=} å·å’Œç©ºç™½éƒ½æ˜¯å¯é€‰çš„。 +\item + \ttvar{variable} (å˜é‡) å…许包å«ä»»ä½•å­—符,除空白ã€\samp{=}ã€\samp{.} + 之外。ä¸è¿‡åªç”¨ \samp{A-Za-z\_} 是最ä¿é™©çš„。 +\item + 如果 \samp{.\var{progname}} (程åºå) 存在,则该定义åªå¯¹æ­£åœ¨è¿è¡Œçš„åå« + \texttt{\var{progname}} 或 \texttt{\var{progname}.exe} + 的程åºèµ·ä½œç”¨ã€‚è¿™å¯ä»¥è®©ç»™ä¸åŒç§ç±»çš„ \TeX{} 程åºè®¾ç½®ä¸åŒçš„æœç´¢è·¯å¾„。 +\item \var{value} (值) å…许任何 \code{\%} 与 \samp{@} 之外的字符出现。 + ä¸æ”¯æŒåœ¨ç­‰å·å³ä¾§ä½¿ç”¨ \code{\$\var{var}.\var{prog}} 这样的写法。 + 如果在 Unix 下,\var{value} 中的 \samp{;}\ 字符会被转æ¢ä¸º + \samp{:}。如果你希望让 Unix, \acro{MS-DOS} å’Œ Windows 里都用åŒä¸€ä¸ª + \file{texmf.cnf},这会很有用。 +\item + 在读入所有定义åŽå†å¼€å§‹å±•å¼€ï¼Œæ‰€ä»¥ä½ å¯ä»¥å¼•ç”¨åŽè¾¹æ‰å®šä¹‰çš„å˜é‡ã€‚ +\end{itemize} +展示上é¢æ‰€æœ‰å†…容的一段é…置文件 +\ifSingleColumn +如下: + +\verbatiminput{examples/ex5.tex} +\else +è§å›¾~\ref{fig:config-sample}. +\fi + +\subsubsection{路径展开} +\label{sec:path-expansion} + +å’Œ Unix shell 类似,\KPS{} 能够识别æœç´¢è·¯å¾„中的特殊字符。比如一个å¤æ‚的路径 +\verb+~$USER/{foo,bar}//baz+,将展开为这样的å­ç›®å½•ï¼šåœ¨ \texttt{\$USER} +的主目录下的 \file{foo} 或 \file{bar} ç›®å½•ä¸­ï¼Œä¸”åŒ…å« \file{baz} +文件或目录。这ç§å±•å¼€å°†åœ¨ä¸‹é¢è§£é‡Šã€‚ +%$ +\subsubsection{默认展开} +\label{sec:default-expansion} + +如果最高优先级 (å‚è§ç¬¬~\pageref{sec:path-sources}~页的``路径æ¥æº'') +çš„æœç´¢è·¯å¾„中包å«ä¸€ä¸ª\emph{é¢å¤–的冒å·} (å³å‰ç½®ã€åŽç½®æˆ–连续的冒å·),\KPS{} 将在 +此处æ’入次高优先级的æœç´¢è·¯å¾„。如果æ’入的那个路径里也有é¢å¤–的冒å·ï¼ŒåŒæ ·çš„步骤将å‘生 +在更次以åŠä¼˜å…ˆçº§çš„路径上。å‡è®¾çŽ¯å¢ƒå˜é‡è®¾ç½®ä¸º + +\begin{alltt} +> \Ucom{setenv TEXINPUTS /home/karl:} +\end{alltt} + +而 \file{texmf.cnf} 里的 \code{TEXINPUTS} 值为 + +\begin{alltt} + .:\$TEXMF//tex +\end{alltt} + +则用于æœç´¢çš„最终值为: + +\begin{alltt} + /home/karl:.:\$TEXMF//tex +\end{alltt} + +因为没必è¦æ’入多个相åŒçš„值,所以 \KPS{} åªä¼šä¿®æ”¹ä¸€ä¸ªé¢å¤–çš„ \samp{:},其他的ä¸å˜ã€‚ +它首先检查å‰ç½®çš„ \samp{:},然åŽæ˜¯æœ«å°¾çš„ \samp{:},最åŽæ˜¯è¿žç»­çš„ \samp{:}。 + +\subsubsection{大括å·å±•å¼€} +\label{sec:brace-expansion} + +大括å·å±•å¼€æ˜¯ä¸€é¡¹æœ‰ç”¨çš„特性,其作用是把 \verb+v{a,b}w+ 这样的转æ¢ä¸º +\verb+vaw:vbw+,å…许嵌套使用。通过把 \code{\$TEXMF} 赋值为一个括å·åˆ—表, +å¯ä»¥æž„造出多套 \TeX{} 层级结构。例如在 \file{texmf.cnf} 里有下é¢çš„定义 +(简化的例å­): +\begin{verbatim} + TEXMF = {$TEXMFHOME,$TEXMFLOCAL,!!$TEXMFVAR,!!$TEXMFMAIN} +\end{verbatim} +这样一æ¥ï¼Œå½“你设置 +\begin{verbatim} + TEXINPUTS = .;$TEXMF/tex// +\end{verbatim} +%$ +的时候,检查完当å‰ç›®å½•åŽï¼Œä¾æ¬¡æ£€æŸ¥çš„路径是 +\code{\$TEXMFHOME/tex}, \code{\$TEXMFLOCAL/tex}, \code{\$TEXMFVAR/tex} +å’Œ \code{\$TEXMFMAIN/tex} (åŽä¸¤ä¸ªåªåœ¨ \file{ls-R} æ•°æ®åº“中æœç´¢)。这样维护 +两套并行的 \TeX{} 结构就很方便的,一套是``固定 (frozen)''çš„ (比如放在 \CD\ 上) +而å¦ä¸€å¥—是在新版本出现时就更新的。因为所有的定义里都用到了 \code{\$TEXMF}, +所以你å¯ä»¥ç¡®ä¿¡æ—¶å¸¸æ›´æ–°çš„那个版本肯定是先被找到的。 + +\subsubsection{å­ç›®å½•å±•å¼€} +\label{sec:subdirectory-expansion} + +在路径元素里的目录å称 \var{d} åŽé¢æŽ¥è¿žä½¿ç”¨ä¸¤ä¸ªæˆ–更多连续的斜æ ï¼Œè¡¨ç¤º \var{d} çš„ +所有å­ç›®å½•ï¼šé¦–先是直接处于 \var{d} 下的那些,然åŽæ˜¯è¿™äº›å­ç›®å½•çš„å­ç›®å½•ï¼Œä¾æ­¤ç±»æŽ¨ã€‚ +æ¯å±‚的目录出现的顺åºæ˜¯\emph{ä¸ä¸€å®š}的。 + +如果你在 \samp{//} åŽé¢è¿˜æŒ‡å®šäº†æ–‡ä»¶å,匹é…çš„å°†åªæ˜¯é‚£äº›åŒ…å«äº†æŒ‡å®šæ–‡ä»¶çš„路径。 +比如 \samp{/a//b} 将展开为路径 \file{/a/1/b}, \file{/a/2/b}, +\file{/a/1/1/b} 等等,但ä¸ä¼šå±•å¼€ä¸º \file{/a/b/c} 或 \file{/a/1}。 + +å¯ä»¥åœ¨å•ä¸ªè·¯å¾„元素里使用多个 \samp{//},但出现在路径开头的 \samp{//} +将被忽略。 + +\subsubsection{特殊字符与其æ„义:简è¦è¯´æ˜Ž} + +下é¢çš„列表总结了 \KPS{} é…置文件中出现的特殊字符: + +% need a wider space for the item labels here. +\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}} +\begin{ttdescription} +\item[\CODE{:}] 路径分隔符,在路径的å‰è¾¹æˆ–者末尾时表示默认的展开方å¼ã€‚\par +\item[\CODE{;}] éž Unix 系统下的路径分隔符 (å’Œ \code{:} 功能一样)。 +\item[\CODE{\$}] å˜é‡å±•å¼€ã€‚ +\item[\CODE{\string~}] 表示用户的个人主目录。 +\item[\CODE{\char`\{...\char`\}}] Brace expansion. +\item[\CODE{//}] å­ç›®å½•å±•å¼€ (å¯ä»¥å‡ºçŽ°åœ¨é™¤è·¯å¾„开头外的任æ„ä½ç½®)。 +\item[\CODE{\%}] 注释的起始。 +\item[\CODE{\bs}] 连接下一行的字符 (以支æŒè·¨è¡Œçš„设置项)。 +\item[\CODE{!!}] \emph{åª}在数æ®åº“中æœç´¢æ–‡ä»¶ï¼Œ\emph{ä¸}æœå¯»ç£ç›˜ã€‚ +\end{ttdescription} + + +\subsection{文件åæ•°æ®åº“} +\label{sec:filename-database} + +\KPS{} 使用了一些方法æ¥å‡å°‘æœç´¢æ—¶çš„ç£ç›˜è®¿é—®æ¬¡æ•°ã€‚å°½ç®¡å¦‚æ­¤ï¼Œå¦‚æžœå®‰è£…çš„æ–‡ä»¶è¶³å¤Ÿå¤šï¼Œåœ¨å„ +个å¯èƒ½çš„目录下æœç´¢æŸä¸ªæ–‡ä»¶ä»ç„¶å¯èƒ½èŠ±ä¸Šå¾ˆé•¿æ—¶é—´ (尤其是在必须é历数百个字体目录的时候)。 +因此,\KPS{} 使用一个专门构建的纯文本``æ•°æ®åº“''文件,这个文件å«åš \file{ls-R},它将 +文件和目录进行映射,é¿å…对ç£ç›˜çš„大é‡æœç´¢ã€‚ + +第二个数æ®åº“ \file{aliases} å…许你给 \file{ls-R} 中的文件指定其他的å字。有助于 +帮助æºæ–‡ä»¶ç¬¦åˆ \acro{DOS} 8.3 命å规范。 + +\subsubsection{文件åæ•°æ®åº“} +\label{sec:ls-R} + +å‰è¾¹å·²ç»è§£é‡Šè¿‡ï¼Œä¸»æ–‡ä»¶åæ•°æ®åº“çš„å称必须是 \file{ls-R}。你å¯ä»¥åœ¨æ¯ä¸ªéœ€è¦æœç´¢çš„ +\TeX{} 目录树 (缺çœæ˜¯ \code{\$TEXMF}) 下放置一个这样的文件。\KPS{} 在 +\code{TEXMFDBS} 指定的路径中寻找这些 \file{ls-R} 文件。 + +推è使用å‘行版中包å«çš„ \code{mktexlsr} 脚本æ¥åˆ›å»ºå’Œç»´æŠ¤ \samp{ls-R} 文件。å„ç±» +\samp{mktex} 脚本也å¯èƒ½ä¼šé—´æŽ¥è°ƒç”¨è¿™ä¸ªè„šæœ¬ã€‚实际上,这个脚本åªæ˜¯æ‰§è¡Œä¸‹é¢çš„命令: + +\begin{alltt} +cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R +\end{alltt} + +æ„味ç€ä½ çš„系统的 \code{ls} 命令的输出格å¼å¿…须正确 (\GNU \code{ls} 是没 +问题的)。è¦ä¿è¯æ•°æ®åº“åŠæ—¶æ›´æ–°ï¼Œæœ€ç®€å•çš„方法是定期通过 \code{cron} æ¥é‡å»ºã€‚ + +如果文件在数æ®åº“中找ä¸åˆ°ï¼Œç¼ºçœæƒ…况下 \KPS{} 会在ç£ç›˜ä¸Šæœç´¢ã€‚如果æŸä¸ªç‰¹å®šçš„路径元素 +是以 \samp{!!} 起始的,就\emph{åªä¼š}在针对这一元素的数æ®åº“中查找而ä¸æœç´¢ç£ç›˜ã€‚ + + +\subsubsection{kpsewhich: 独立的路径æœç´¢} +\label{sec:invoking-kpsewhich} + +\texttt{kpsewhich} 程åºå°†è·¯å¾„æœç´¢ä»Žå…¶ä»–专用程åºä¸­ç‹¬ç«‹å‡ºæ¥ï¼Œå®ƒå¯ä»¥ä½œä¸ºç±»ä¼¼ \code{find} +一样的程åºï¼Œä¸“门在 \TeX{} 层级结构中定ä½æ–‡ä»¶ (这在å‘行版中的 \samp{mktex}\dots\ +脚本中使用得éžå¸¸å¤š)。 + +\begin{alltt} +> \Ucom{kpsewhich \var{option}\dots{} \var{filename}\dots{}} +\end{alltt} +\ttvar{option} 处的选项å¯ä»¥ç”¨ \samp{-} 也å¯ä»¥ç”¨ \samp{-{}-} æ¥èµ·å§‹ï¼Œå¹¶æŽ¥å— +任何ä¸é€ æˆç–‘义的缩写。 + +\KPS{} 将第一个éžé€‰é¡¹çš„å‚数作为文件åæ¥æŸ¥æ‰¾ï¼Œå¹¶è¿”回找到的第一个文件。它ä¸æä¾› +寻找所有相åŒå称文件的功能 (ä½ å¯ä»¥ä½¿ç”¨ Unix çš„ \samp{find} 程åºæ¥è¾¾åˆ°è¿™ä¸ªåŠŸèƒ½)。 + +下é¢ä»‹ç»äº†ä¸€äº›æ¯”较常è§çš„选项。 + +\begin{ttdescription} +\item[\texttt{-{}-dpi=\var{num}}]\mbox{} + 将解æžåº¦è®¾ç½®ä¸º \ttvar{num},这个选项åªå½±å“ \samp{gf} 文件和 \samp{pk} + 文件的查找。为了与 \cmdname{dvips} 兼容,æä¾› \samp{-D} + 这个åŒä¹‰çš„å‚数,默认值是 600。 + +\item[\texttt{-{}-format=\var{name}}]\mbox{}\\ + 将查找的文件格å¼è®¾ç½®ä¸º \ttvar{name}。默认情况下是通过文件åæ¥çŒœæµ‹æ ¼å¼çš„。对于扩展å +有二义性的格å¼ï¼Œæ¯”如 \MP{} 支æŒæ–‡ä»¶å’Œ \cmdname{dvips} é…置文件,必须以 \KPS{} 已知 +çš„å称指定格å¼ï¼Œæ¯”如 \texttt{tex} 或 \texttt{enc files}。è¿è¡Œ + \texttt{kpsewhich -{}-help} 会显示格å¼çš„列表。 + +\item[\texttt{-{}-mode=\var{string}}]\mbox{}\\ + 设置模å¼ä¸º \ttvar{string},åªå½±å“ \samp{gf} å’Œ \samp{pk} + 文件的查找。默认情况匹é…所有的模å¼ã€‚ +\item[\texttt{-{}-must-exist}]\mbox{}\\ + 尽一切å¯èƒ½æ‰¾åˆ°æ–‡ä»¶ï¼ŒåŒ…括直接在ç£ç›˜ä¸Šæœå¯»ã€‚默认情况下为了效率考虑,åªæ£€æŸ¥ + \file{ls-R} æ•°æ®åº“里的内容。 +\item[\texttt{-{}-path=\var{string}}]\mbox{}\\ + ä¸é€šè¿‡æ–‡ä»¶åæ¥çŒœæµ‹è·¯å¾„,沿 \ttvar{string} 指出的路径æœç´¢ + (也使用冒å·åˆ†éš”)ã€‚æ”¯æŒ \samp{//} 和所有常è§çš„展开方å¼ã€‚\samp{-{}-path} 选项 + å’Œ \samp{-{}-format} 选项是互斥的。 +\item[\texttt{-{}-progname=\var{name}}]\mbox{}\\ + 将执行查找的程åºå称设为 \texttt{\var{name}}。 + 这会通过 \texttt{.\var{progname}} 特性影å“æœç´¢è·¯å¾„。 + 缺çœå€¼æ˜¯ \cmdname{kpsewhich}。 +\item[\texttt{-{}-show-path=\var{name}}]\mbox{}\\ + 显示用于查找 \texttt{\var{name}} 类型文件的路径。和 \samp{-{}-format} + 选项一样,å¯ä»¥ä½¿ç”¨æ‰©å±•å (\code{.pk}, \code{.vf}, 等等) 也å¯ä»¥ä½¿ç”¨å…¨å。 +\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\ + 将调试选项 (等级) 设置为 \texttt{\var{num}}。 +\end{ttdescription} + + +\subsubsection{使用举例} +\label{sec:examples-of-use} + +现在我们看看实际使用 \KPS{} 的例å­ã€‚这里是一个简å•çš„æœç´¢ï¼š + +\begin{alltt} +> \Ucom{kpsewhich article.cls} + /usr/local/texmf-dist/tex/latex/base/article.cls +\end{alltt} +我们寻找的是 \file{article.cls} 文件。因为 \samp{.cls} åŽç¼€å·²ç»è¯´æ˜Žäº†æ–‡ä»¶çš„类型,所以 +我们ä¸éœ€è¦ç‰¹åˆ«æŒ‡æ˜ŽæŸ¥æ‰¾çš„是 \optname{tex} 类型的文件 (也就是è¦åœ¨ (\TeX{} æºæ–‡ä»¶ç›®å½•ä¸‹æŸ¥æ‰¾)。 +我们在 \samp{texmf-dist} çš„ \file{tex/latex/base} å­ç›®å½•ä¸‹æ‰¾åˆ°äº†è¿™ä¸ªæ–‡ä»¶ã€‚与之类似, +下列所有文件都顺利找到,因为其扩展å没有二义。 +\begin{alltt} +> \Ucom{kpsewhich array.sty} + /usr/local/texmf-dist/tex/latex/tools/array.sty +> \Ucom{kpsewhich latin1.def} + /usr/local/texmf-dist/tex/latex/base/latin1.def +> \Ucom{kpsewhich size10.clo} + /usr/local/texmf-dist/tex/latex/base/size10.clo +> \Ucom{kpsewhich small2e.tex} + /usr/local/texmf-dist/tex/latex/base/small2e.tex +> \Ucom{kpsewhich tugboat.bib} + /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib +\end{alltt} + +å¦å¤–,最åŽä¸€ä¸ªæ˜¯ \textsl{TUGBoat} 文章的 \BibTeX{} å‚考文献数æ®åº“。 + +\begin{alltt} +> \Ucom{kpsewhich cmr10.pk} +\end{alltt} + +\file{.pk} 类型的字体ä½å›¾æ–‡ä»¶æ˜¯ç»™ \cmdname{dvips} 或者 \cmdname{xdvi} +è¿™ç§æ˜¾ç¤ºç¨‹åºæ供的。因为 \TL{} 里没有预生æˆçš„ Computer Modern \samp{.pk} +字体,所以没有找到任何内容\Dash \TL{} 默认使用 Type~1 版本的。 + +\begin{alltt} +> \Ucom{kpsewhich wsuipa10.pk} +\ifSingleColumn /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk +\else /usr/local/texmf-var/fonts/pk/ljfour/public/ +... wsuipa/wsuipa10.600pk +\fi\end{alltt} + +而这个字体 (Washington 大学的一套注音字æ¯è¡¨) 就需è¦ç”Ÿæˆ \samp{.pk} 文件了。我们默认的 +\MF{} 模å¼æ˜¯ \texttt{ljfour},基础解æžåº¦æ˜¯ 600\dpi{} (dots per inch),所以会得到这样一个文件。 +\begin{alltt} +> \Ucom{kpsewhich -dpi=300 wsuipa10.pk} +\end{alltt} + +一旦指明我们需è¦å¯»æ‰¾çš„åªæ˜¯ 300\dpi{} 的文件时 (\texttt{-dpi=300}),就会å‘现系统里 +没有符åˆè¦æ±‚的文件。这样 \cmdname{dvips} 或 \cmdname{xdvi} 会使用 \cmdname{mktexpk} +脚本去创建所需的 \texttt{.pk} 文件。 + +下é¢æˆ‘们将注æ„åŠ›è½¬å‘ \cmdname{dvips} 的头文件和é…置文件。首先看看最常用的一个,\file{tex.pro} +prologue 文件,然åŽæ£€æŸ¥é€šç”¨é…置文件 \file{config.ps} å’Œ \PS{} 字体映射文件 +\file{psfonts.map}\Dash 从 2004 年开始,映射文件和编ç æ–‡ä»¶éƒ½åœ¨ \dirname{texmf} +目录树下有其自己的æœç´¢è·¯å¾„了。因为 \samp{.ps} åŽç¼€å¯èƒ½ä¼šæœ‰äºŒä¹‰ï¼Œæˆ‘们必须指明æ„æ€æ˜¯ +\optname{dvips config}。 + +\begin{alltt} +> \Ucom{kpsewhich tex.pro} + /usr/local/texmf/dvips/base/tex.pro +> \Ucom{kpsewhich --format="dvips config" config.ps} + /usr/local/texmf/dvips/config/config.ps +> \Ucom{kpsewhich psfonts.map} + /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map +\end{alltt} + +这样我们å¯ä»¥æ›´ä»”细地分æžä¸€ä¸‹ \acro{URW} Times çš„ \PS{} 支æŒæ–‡ä»¶ã€‚ä¾ç…§æ ‡å‡†çš„字体 +命å方案,这些文件的å‰ç¼€æ˜¯ \samp{utm}。首先查询的是é…置文件,其中包å«çš„是 map +文件的å称: + +\begin{alltt} +> \Ucom{kpsewhich --format="dvips config" config.utm} + /usr/local/texmf-dist/dvips/psnfss/config.utm +\end{alltt} + +这个文件的内容是 + +\begin{alltt} + p +utm.map +\end{alltt} + +å³æŒ‡å‘ \file{utm.map} 文件,也就是我们下一步è¦æ‰¾çš„。 + +\begin{alltt} +> \Ucom{kpsewhich utm.map} + /usr/local/texmf-dist/fonts/map/dvips/times/utm.map +\end{alltt} + +这个 map 文件定义了 URW 集åˆä¸­çš„ Type~1 \PS{} 字体文件å。内容差ä¸å¤šæ˜¯ä¸‹è¾¹è¿™æ · +(我们åªåˆ—出了其中一部分): + +\begin{alltt} +utmb8r NimbusRomNo9L-Medi ... \Ucom{kpsewhich utmr8a.pfb} +\ifSingleColumn /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb +\else /usr/local/texmf-dist/fonts/type1/ +... urw/utm/utmr8a.pfb +\fi\end{alltt} + +现在你å¯ä»¥å‘现,追寻æŸä¸ªæ–‡ä»¶çš„下è½æ˜¯å¦‚此方便。尤其是在你怀疑找到的文件错了的时候,这些 +功能éžå¸¸é‡è¦ï¼Œå› ä¸º \cmdname{kpsewhich} åªèƒ½å‘Šè¯‰ä½ æ‰¾åˆ°çš„第一个文件。 + +\subsubsection{调试æ“作} +\label{sec:debugging} + +有时你å¯èƒ½ä¼šéœ€è¦åˆ†æžç¨‹åºæ˜¯å¦‚何解æžæ–‡ä»¶å¼•ç”¨çš„。\KPS{} æ供了多层调试输出æ¥å®žçŽ°è¿™ä¸ªåŠŸèƒ½ï¼š + +\begin{ttdescription} +\item[\texttt{\ 1}] \texttt{stat} 调用 (ç£ç›˜ä¸Šçš„查询)。在 \file{ls-R} + æ•°æ®åº“åŠæ—¶æ›´æ–°çš„情况下几乎ä¸ä¼šæœ‰ä»€ä¹ˆè¾“出。 +\item[\texttt{\ 2}] 对散列表的引用 (例如 \file{ls-R} æ•°æ®åº“,映射文件,é…置文件)。 +\item[\texttt{\ 4}] 文件的打开与关闭æ“作。 +\item[\texttt{\ 8}] \KPS{} æœç´¢çš„文件类型的通用路径信æ¯ã€‚有助于寻找针对æŸä¸€æ–‡ä»¶çš„ +特定路径。 +\item[\texttt{16}] æ¯ä¸ªè·¯å¾„元素的目录列表 (åªåœ¨æœ¬åœ°ç£ç›˜ä¸Šæœç´¢æ—¶æœ‰ç”¨)。 +\item[\texttt{32}] 文件æœç´¢ã€‚ +\item[\texttt{64}] å˜é‡çš„值。 +\end{ttdescription} +等级 \texttt{-1} å°†å¯ç”¨ä¸Šè¿°æ‰€æœ‰é€‰é¡¹ï¼Œå®žé™…上这是最方便的设置方法了。 + +类似地,在 \cmdname{dvips} 程åºä¸­è®¾ç½®ä¸Šè¿°è°ƒè¯•é€‰é¡¹çš„组åˆï¼Œä½ å°±å¯ä»¥å‡º \cmdname{dvips} +是从哪里找到它所需的文件的。å¦ä¸€æ–¹é¢ï¼Œå¦‚果找ä¸åˆ°æŸä¸ªæ–‡ä»¶ï¼Œè°ƒè¯•è¾“出也会显示程åºä»Žå“ªäº›ç›®å½•è¿›è¡Œ +了查找,你也å¯ä»¥æ®æ­¤åˆ¤æ–­å‡ºé—®é¢˜å‡ºåœ¨å“ªé‡Œã€‚ + +一般而言,因为所有的程åºéƒ½åœ¨å…¶å†…部调用 \KPS{} 库,你å¯ä»¥è®¾ç½® \envname{KPATHSEA\_DEBUG} +环境å˜é‡æ¥é€‰æ‹©è°ƒè¯•å‚数,将这个å˜é‡è®¾ç½®ä¸ºä¸Šè¿°å‚æ•°çš„ç»„åˆ (加法) 以获得对应的功能。 + +(Windows 用户请注æ„:因为在 Windows 下ä¸å®¹æ˜“把所有信æ¯éƒ½é‡å®šå‘到固定的文件中,为了方便诊断, +ä½ å¯ä»¥ä¸´æ—¶è®¾ç½® \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log})。 + +让我们以一个简å•çš„ \LaTeX{} æºæ–‡ä»¶ \file{hello-world.tex} 为例,其内容如下: +\begin{verbatim} + \documentclass{article} + \begin{document} + Hello World! + \end{document} +\end{verbatim} +这个å°æ–‡ä»¶åªä½¿ç”¨äº† \file{cmr10} 字体,我们å¯ä»¥çœ‹çœ‹ \cmdname{dvips} æ˜¯å¦‚ä½•ç”Ÿæˆ \PS{} +文件的 (我们希望使用 Type~1 版本的 Computer Modern 字体,所以使用了 \texttt{-Pcms} +å‚æ•°)。 +\begin{alltt} +> \Ucom{dvips -d4100 hello-world -Pcms -o} +\end{alltt} +此时我们将 \cmdname{dvips} 的调试等级 4 (表示字体路径) å’Œ \KPS\ 的路径元素展开组åˆåˆ° +一起 (å‚è§ \cmdname{dvips} å‚考手册,\OnCD{texmf/doc/html/dvips/dvips_toc.html})。 +(ç¨ä½œæ•´ç†çš„) 输出è§å›¾~\ref{fig:dvipsdbga}。 +\begin{figure*}[tp] +\centering +\input{examples/ex6a.tex} +\caption{寻找é…置文件}\label{fig:dvipsdbga} + +\bigskip + +\input{examples/ex6b.tex} +\caption{寻找 prolog 文件}\label{fig:dvipsdbgb} + +\bigskip + +\input{examples/ex6c.tex} +\caption{寻找字体文件}\label{fig:dvipsdbgc} +\end{figure*} + +\cmdname{dvips} å¯åŠ¨åŽå°±å¼€å§‹æœå¯»å…¶éœ€è¦ä½¿ç”¨çš„文件。首先找到的是 \file{texmf.cnf}, +它给出了用于进一步查询其他文件的路径,然åŽæ‰¾åˆ°çš„是 \file{ls-R} 文件åæ•°æ®åº“ (用于 +优化文件æœç´¢é€Ÿåº¦) å’Œ \file{aliases} 文件 (用于创建åŒä¸€æ–‡ä»¶çš„多个别å,比如为较自然 +的长文件å创建 \acro{DOS} 8.3 风格的短别å)ã€‚ç„¶åŽ \cmdname{dvips} 去寻找它的通用 +é…置文件 \file{config.ps},接下æ¥æŸ¥æ‰¾ä¸ªäººå®šåˆ¶æ–‡ä»¶ \file{.dvipsrc} (ä¸è¿‡ä¸Šè¿°ä¾‹å­ä¸­å¹¶ +未找到,显示 \emph{not found})ã€‚æœ€åŽ \cmdname{dvips} 找到了 Computer Modern +\PS{} 字体的é…置文件 \file{config.cms} (因为执行 \cmdname{dvips} 时使用了 +\texttt{-Pcms} 选项)。这个文件里包å«äº†å­—体的 \TeX{} å称, \PS{} å称和文件å的对 +应关系。 + +\begin{alltt} +> \Ucom{more /usr/local/texmf/dvips/cms/config.cms} + p +ams.map + p +cms.map + p +cmbkm.map + p +amsbkm.map +\end{alltt} +于是 \cmdname{dvips} 接下æ¥å¯»æ‰¾è¿™äº›æ–‡ä»¶ï¼Œå†åŠ ä¸Šå›ºå®šè½½å…¥çš„,通用映射文件 +\file{psfonts.map} (这个文件里包å«å¸¸ç”¨ \PS{} 字体的映射,å‚è§ç¬¬ +\ref{sec:examples-of-use}~节的最åŽä¸€éƒ¨åˆ†ï¼Œè®¨è®ºäº† \PS{} 映射文件的处ç†)。 + +这时候 \cmdname{dvips} å‘用户表示它的存在: +\begin{alltt} +This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com) +\end{alltt} +\ifSingleColumn +然åŽå¼€å§‹å¯»æ‰¾ prolog 文件 \file{texc.pro}: +\begin{alltt}\small +kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro +\end{alltt} +\else +然åŽå¼€å§‹å¯»æ‰¾ prolog 文件 \file{texc.pro} (è§å›¾~\ref{fig:dvipsdbgb})。 +\fi + +找到所需文件åŽï¼Œ\cmdname{dvips} è¾“å‡ºæ—¥æœŸå’Œæ—¶é—´ï¼Œå¹¶å‘ŠçŸ¥æˆ‘ä»¬å®ƒå°†ç”Ÿæˆ +\file{hello-world.ps} 文件,需è¦ç”¨åˆ° \file{cmr10} 字体文件, +这个字体属于``常驻 (resident) çš„'',也就是ä¸éœ€è¦è½½å…¥ä½å›¾æ–‡ä»¶çš„字体: +\begin{alltt}\small +TeX output 1998.02.26:1204' -> hello-world.ps +Defining font () cmr10 at 10.0pt +Font cmr10 is resident. +\end{alltt} +寻找并找到了 \file{cmr10.tfm} 文件。然åŽå†æ¬¡å¼•ç”¨äº†ä¸€äº› prolog 文件 (此处略去), +最终找到了 \file{cmr10.pfb} 这个 Type~1 字体,并将它包å«åœ¨è¾“出文件中 (è§æœ€åŽ +一行)。 +\begin{alltt}\small +kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0, + path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//: + /var/tex/fonts/tfm//). +kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm +kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0, + ... + +kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0, + path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//: + ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//). +kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb +[1] +\end{alltt} + +\subsection{è¿è¡Œæ—¶é€‰é¡¹} + +\Webc{} å¦ä¸€é¡¹æœ‰ç”¨çš„特性是å¯ä»¥é€šè¿‡ \KPS{} 读入的è¿è¡Œæ—¶æ–‡ä»¶ \file{texmf.cnf} +æ¥æŽ§åˆ¶ä¸€ç³»åˆ—的内存å‚æ•° (具体而言是数组的大å°)。内存的设置å¯ä»¥åœ¨è¿™ä¸ªæ–‡ä»¶çš„第三部分找到。 +比较é‡è¦çš„几个设置是: + +\begin{ttdescription} +\item[\texttt{main\_memory}] + 总的å¯ç”¨å†…存数,以 word 为å•ä½ï¼Œ\TeX{}, \MF{} å’Œ \MP\ å—æ­¤é™åˆ¶ã€‚ + æ¯ä¿®æ”¹ä¸€æ¬¡éƒ½å¿…é¡»é‡æ–°ç”Ÿæˆä¸€ä¸ªæ–°çš„æ ¼å¼æ–‡ä»¶ã€‚比如你å¯ä»¥ç”Ÿæˆä¸€ä¸ª``巨型''版本的 + \TeX{},将其存为 \texttt{hugetex.fmt}。 +\item[\texttt{extra\_mem\_bot}] + 为``大型'' \TeX{} æ•°æ®ç»“构预留的é¢å¤–空间:boxes, glue, breakpoint 等。如果你使用 + \PiCTeX{} 时特别有用。 +\item[\texttt{font\_mem\_size}] + \TeX{} 用于存储字体数æ®çš„ word 数。大致等于载入的所有 \acro{TFM} 文件的总和。 +\item[\texttt{hash\_extra}] + 为存储控制åºåˆ—而设置的散列表的é¢å¤–空间。一般散列表足够存储将近 10,000 + 个控制åºåˆ—。如果你排版的是一本有大é‡äº¤å‰å¼•ç”¨çš„书ç±ï¼Œè¿™ä¸ªå€¼å¯èƒ½ä¸å¤Ÿç”¨ã€‚默认的 + \texttt{hash\_extra} 是 \texttt{50000}。 +\end{ttdescription} + +\noindent 当然,这项功能并éžçœŸæ­£çš„动æ€å†…存和数组分é…的替代,但考虑到动æ€åˆ†é…在现在的 \TeX{} +太难实现,æ‰é€šè¿‡è¿™äº›é€‰é¡¹æ供了一些çµæ´»æ€§ã€‚ + +\section{致谢} + +\TL{} 是在几乎所有 \TeX{} 用户组织的å力下完æˆçš„。这个版本由 Karl Berry +监制。下é¢åˆ—出了过去和现在主è¦çš„贡献者: + +\begin{itemize*} + +\item 英国ã€å¾·å›½ã€è·å…°å’Œæ³¢å…°çš„ \TeX{} 用户组织 +(分别为 \acro{TUG}, \acro{DANTE} e.V., \acro{NTG}, å’Œ \acro{GUST}),他们为所在 +地区的 \TeX{} 社群æ供了必备的技术和管ç†åŸºç¡€è®¾æ–½ã€‚请加入本地的 \TeX ç”¨æˆ·ç»„ç»‡ï¼ +(å‚è§ \url{http://tug.org/usergroups.html}。) + +\item \acro{CTAN} 团队,值得一æ的是 Robin Fairbairns, Jim Hef{}feron, +å’Œ Rainer Sch\"opfã€‚ä»–ä»¬è´Ÿè´£åˆ†å‘ \TL{} 光盘镜åƒï¼Œä¸ºè½¯ä»¶åŒ…æ›´æ–°æ供支撑,\TL{} +正是基于这些软件包构建的。 + +\item Nelson Beebe,他为 \TL\ æ供了许多平å°ï¼Œè‡ªå·±ä¹Ÿè¿›è¡Œäº†è¯¦å°½çš„测试。 + +\item John Bowmanï¼Œä»–å¯¹å…ˆè¿›çš„å›¾å½¢ç¨‹åº Asymptote åšäº†è®¸å¤šä¿®æ”¹ï¼Œä½¿ä¹‹èƒ½åœ¨ \TL{} +中工作。 + +\item Peter Breitenlohner å’Œ \eTeX\ å›¢é˜Ÿï¼Œä»–ä»¬åˆ›é€ äº†æœªæ¥ \TeX\ 的稳定基础。 +åŒæ—¶ç‰¹åˆ«æ„Ÿè°¢ Peter,他为整个 \TL 中 \GNU\ autotools 的使用æ供了主è¦çš„帮助。 + +\item Jin-Hwan Cho 和整个 DVIPDFM$x$ 团队,他们创造了这个优秀的 DVI 输出程åºï¼Œ +以åŠå¯¹é…置问题åŠæ—¶çš„回应。 + +\item Thomas Esser,如果没有他优秀的 \teTeX{} 套件,\TL{} 根本ä¸å¯èƒ½å­˜åœ¨ã€‚ + +\item Michel Goossens,他一起编写了原始的文档。 + +\item Eitan Gurari,他ä¸çŸ¥ç–²å€¦åœ°æ”¹è¿›ç€çš„ \TeX4ht 程åºç”¨äºŽåˆ›å»ºè¿™ä»½æ–‡æ¡£çš„ \HTML{} +版本,年å¤ä¸€å¹´ã€‚Eitan 于 2009 å¹´ 6 月过早地离开了我们,我们希望把这份文档 +献给它,以志纪念。 + +\item Hans Hagen,他对 \ConTeXt\ æ ¼å¼ (\url{http://pragma-ade.com}) åšäº† +许多测试和修改,使之能够包å«åœ¨ \TL{} 的框架下。 + +\item \Thanh, Martin Schr\"oder,和 pdf\TeX\ 团队,他们æŒç»­ä¸æ–­åœ°æ”¹è¿› \TeX\ +的功能。 + +\item Hartmut Henkel,他对 pdf\TeX\, Lua\TeX 等程åºçš„å¼€å‘起到了é‡è¦çš„贡献。 + +\item Taco Hoekwater,他对 \MP{} å’Œ (Lua)\TeX\ (\url{http://luatex.org}) +é‡è¦çš„å¼€å‘使之焕å‘新的活力。他还å‚与了将 \ConTeXt\ èžå…¥ \TL{}ã€ç»™ +Kpathsea 添加多线程功能,等等许多工作。 + +\item Pawe{\l} Jackowski,他创建了 Windows ä¸‹çš„å®‰è£…ç¨‹åº \cmdname{tlpm}, +å’Œ Tomasz {\L}uczak,因为他的 \cmdname{tlpmgui} 被用在了以å‰çš„版本。 + +\item Akira Kakuto,以他的 \acro{W32TEX} å‘行版 +(\url{http://w32tex.org/}) 为基础æ供了 Windows 下的二进制文件,以åŠè®¸å¤š +其他的贡献。 + +\item Jonathan Kew,他开å‘了éžå‡¡çš„ Xe\TeX{} 引擎并花了大é‡æ—¶é—´å’Œç²¾åŠ›é›†æˆåˆ° +\TL{} ä¸­ã€‚ä»¥åŠ Mac\TeX 安装程åºçš„早期版本,还有我们推èçš„å‰ç«¯ \TeX{}works。 + +\item Dick Koch 他维护了 Mac\TeX\ (\url{http://tug.org/mactex}) 这个和 +\TL{} è”ç³»éžå¸¸ç´§å¯†çš„å‘行版本。 + +\item Reinhard Kotucha,他对 \TL{} 2008 的基础架构和安装程åºèµ·åˆ°äº†é‡è¦è´¡çŒ®ï¼Œ +ä»¥åŠ Windows 下的研究性工作,\texttt{getnonfreefonts} 脚本,等等。 + +\item Siep Kroonenberg,也因为他对 \TL{} 2008 基础架构和安装程åºçš„é‡è¦è´¡çŒ®ï¼Œ +尤其是在 Windows 上。他还花了大é‡çš„时间更新手册,介ç»äº†è¿™äº›ç‰¹æ€§ã€‚ + +\item Heiko Oberdiek,因为他的 \pkgname{epstopdf} 包和许多其他的工作,压缩 +巨大的 \pkgname{pst-geo} æ•°æ®æ–‡ä»¶ä½¿æˆ‘们得以包å«å®ƒä»¬ï¼Œæœ€é‡è¦çš„还是因为他在 +\pkgname{hyperref} å®åŒ…上优秀的工作。 + +\item Petr Ol\v{s}ak,他éžå¸¸è®¤çœŸåœ°å调和检查所有的æ·å…‹è¯­å’Œæ–¯æ´›ä¼å…‹è¯­èµ„料。 + +\item Toshio Oshima,他æ供了 Windows 下的 \cmdname{dviout} 预览工具。 + +\item Manuel P\'egouri\'e-Gonnard,他对å®åŒ…æ›´æ–°ã€æ–‡æ¡£æ”¹è¿›ä»¥åŠ +\cmdname{texdoc} å¼€å‘上的努力。 + +\item Fabrice Popineau,他创建了 \TL{} 最早的 Windows 支æŒã€‚ + +\item Norbert Preining,他是 \TL{} 2008 基础架构和安装程åºçš„总设计师,还 +è´Ÿè´£å调了 Debian 版本的 \TL{} 工作 (å’Œ Frank K\"uster 一起),并æ供了许 +多建议。 + +\item Sebastian Rahtz,他是 \TL{} 的创始者,并维护了它许多年。 + +\item Phil Taylor,他设置了 BitTorrent 下载。 + +\item Tomasz Trzeciak,他为 Windows å¼€å‘æ供了广泛的帮助。 + +\item Vladimir Volovich,他很大地帮助解决了许多移æ¤å’Œç»´æŠ¤çš„问题,尤其是令我们能够 +å°† \cmdname{xindy} 包å«è¿›æ¥ã€‚ + +\item Staszek Wawrykiewicz,\TL{} 主è¦çš„测试人员,åŒæ—¶è¿˜æ˜¯è®¸å¤šé‡è¦æ³¢å…°è¯­æ”¯æŒçš„åè°ƒ +人员:字体ã€Windows 安装,和其他许多工作。 + +\item Olaf Weber,他对 \Webc{} è€å¿ƒçš„维护。 + +\item Gerben Wierda,他创建和维护了原æ¥çš„ \MacOSX\ 支æŒï¼Œå¹¶å‚与了大é‡é›†æˆå’Œæµ‹è¯•å·¥ä½œã€‚ + +\item Graham Williams,他整ç†äº†è½¯ä»¶åŒ…çš„ä¾èµ–情况的 \TeX\ Catalogue。 + +\end{itemize*} + +二进制版本的编译者: +Ettore Aldrovandi (\pkgname{i386-solaris}, \pkgname{x86\_64-solaris}), +Alan Braslau (\pkgname{amd64-kfreebsd}, \pkgname{i386-kfreebsd}), +Peter Breitenlohner (\pkgname{x86\_64-linux}), +Karl Berry (\pkgname{i386-linux}), +Ken Brown (\pkgname{i386-cygwin}), +Akira Kakuto (\pkgname{win32}), +Dick Koch (\pkgname{universal-darwin}, \pkgname{x86\_64-darwin}), +Nikola Le\v{c}i\'c (\pkgname{amd64-freebsd}, \pkgname{i386-freebsd}), +Mojca Miklavec (\pkgname{mipsel-linux}), +Norbert Preining (\pkgname{alpha-linux}), +Thomas Schmitz (\pkgname{powerpc-linux}), +Boris Veytsman (\pkgname{armel-linux}), +Vladimir Volovich (\pkgname{powerpc-aix}, \pkgname{sparc-solaris}), +Olaf Weber (\pkgname{mips-irix})。 +关于 \TL{} 编译进程的信æ¯ï¼Œè¯·æŸ¥é˜… \url{http://tug.org/texlive/build.html}。 + +这份手册的翻译者: +Boris Veytsman (俄语), +Jjgod Jiang, Jinsong Zhao, Yue Wang, \& Helin Gai (中文), +Uwe Ziegenhagen (German), +Manuel P\'egouri\'e-Gonnard (法语), +Marco Pallante (æ„大利语), +Nikola Le\v{c}i\'c (塞尔维亚语), +Petr Sojka \& Jan Busa (æ·å…‹\slash 斯洛ä¼å…‹è¯­), +Staszek Wawrykiewicz (波兰语)。\TL{} 文档的主页是 +\url{http://tug.org/texlive/doc.html}。 + +当然,最é‡è¦çš„感谢应该致予 Donald Knuth,感谢他å‘明了 \TeX,也感谢他将 +\TeX\ 赠与全世界。 + +\section{å‘行历å²} +\label{sec:history} + +\subsection{过去} + +1993 年末è·å…° \TeX{} 用户组开始为 \acro{MS-DOS} ç”¨æˆ·å¼€å‘ 4All\TeX{} \CD{} 时, +我们就开始了相关的讨论,并希望在此时为所有的æ“作系统æ供一个å•ä¸€çš„ã€åˆç†çš„ \CD{}。当时 +那是一个过于å®ä¼Ÿçš„目标,但的确滋生了éžå¸¸æˆåŠŸçš„ 4All\TeX{} \CD{},åŒæ—¶ \acro{TUG} +技术委员会工作组也开始设计 \emph{\TeX{} 目录结构} (\url{http://tug.org/tds}), +以指明如何创建一套一致而å¯æŽ§çš„集åˆï¼Œå›Šæ‹¬æ‰€æœ‰ \TeX{} 相关的文件。\TDS{} 的完整è‰æ¡ˆåœ¨ 1995 +å¹´ 12 月的 \textsl{TUGboat} 上出版,并åˆæ­¥ç¡®å®šæœŸæœ›çš„产å“将是在 \CD{} 上出现的范例 +结构。你现在使用的这个å‘行版正是工作组审议的直接结果。4All\TeX{} \CD{} çš„æˆåŠŸä¹Ÿè¯´æ˜Ž +如果有一个类似这样的易于使用的系统,对 Unix 用户肯定很有帮助,这是 \TL{} 最主è¦çš„出å‘点。 + +我们在 1995 年秋天开始å°è¯•æž„建一个新的 \CD{} (基于 \TDS{}),并很快å‘现 Thomas Esser +çš„ \teTeX{} å·²ç»æ˜¯æ¯”较ç†æƒ³çš„é…置,并因为在它构建时就已ç»è€ƒè™‘了跨文件系统的兼容性问题, +也已具有多平å°æ”¯æŒã€‚Thomas åŒæ„帮助我们,并在 1996 å¹´åˆå¼€å§‹äº†æ­£å¼çš„工作。第一版是在 +1996 年五月å‘行的。到 1997 å¹´åˆï¼ŒKarl Berry 完æˆäº† \Webc{} 的一个é‡å¤§çš„更新版本, +将几乎所有 Thomas Esser 加入 \teTeX{} 的特性囊括在内,这样我们决定在 \teTeX{} çš„ +\texttt{texconfig} 脚本的辅助下,基于标准的 \Webc{} æ¥åˆ¶ä½œç¬¬äºŒç‰ˆçš„ \CD{}。 +第 3 版的 \CD{} 基于 Olaf Weber 完æˆçš„ \Webc{} 的一个é‡å¤§ä¿®æ­£ç‰ˆæœ¬ï¼Œ7.2。与此åŒæ—¶ï¼Œ +\teTeX{} 的一个新版本出现了,\TL{} 也包å«äº†å…¶ä¸­ç»å¤§å¤šæ•°ç‰¹æ€§ã€‚第 4 版ä¾ç…§ä¸Šé¢çš„模å¼è¿› +行,使用了新版本的 \teTeX{} 和新版本的 \Webc{} (7.3)。系统此时也包括了完整的 Windows +下的é…置。 + +在第 5 版 (2000 å¹´ 3 月) 中检查并修正了 \CD{} 的许多部分,更新了数百个软件包。软件 +包的详细说明现在存放在 XML 文件中。ä¸è¿‡ \TeX\ Live 5 的首è¦å˜åŒ–还是移除了所有的éžè‡ªç”±è½¯ +件。\TL{} çš„æ‰€æœ‰éƒ¨åˆ†çŽ°åœ¨éƒ½åœ¨å‘ Debian Free Software Guidelines 兼容的方å‘改进, +我们尽最大努力检查了所有软件包的授æƒå议,欢迎为我们指出错误。 + +第 6 版 (2001 å¹´ 7 月) 更新了许多内容。最é‡å¤§çš„一项是新的安装形å¼ï¼Œç”¨æˆ·å¯ä»¥æ›´ç²¾ç¡® +地选择所需的软件集åˆã€‚与语言相关的集åˆä¹Ÿé‡æ–°ç»„织过了,这样一æ¥ï¼Œé€‰å®šæŸä¸ªè¯­è¨€é›†åˆæ—¶ä¼šè‡ª +动安装å®åŒ…ã€å­—体等文件,并自动设置好 \texttt{language.dat}。 + +2002 年出现的第 7 版里显著的更新是添加了 \MacOSX{} 的支æŒï¼Œè¿˜æœ‰å¤§é‡å„ç±»å®åŒ…å’Œç¨‹åº +的更新。这个版本的一个é‡è¦çš„目标是将æºä»£ç é‡æ–°ä¸Ž \teTeX{} 集æˆï¼Œå› ä¸ºåœ¨ç¬¬ 5 和第 6 +版中它们å离得太远了。 + +\subsubsection{2003} + +2003 年,在更新和增添æŒç»­ä¸æ–­åˆ°æ¥çš„情况下,我们å‘现 \TL{} å·²ç»è¿‡äºŽåºžå¤§ï¼Œæ— æ³•åœ¨ä¸€å¼  +\CD\ 中容纳,于是将其切分为三套ä¸åŒçš„å‘行版 (å‚è§ç¬¬~\ref{sec:tl-coll-dists} +节,\p.\pageref{sec:tl-coll-dists})。此外: + +\begin{itemize*} +\item 在 \LaTeX{} 团队的è¦æ±‚下,我们将 \cmdname{latex} å’Œ \cmdname{pdflatex} + 命令改为使用 \eTeX{} 引擎 (å‚è§ \p.\pageref{text:etex})。 +\item 包å«äº†æ–°çš„ Latin Modern 字体 (并推è使用)。 +\item 因为ä¸å†æœ‰äººæ‹¥æœ‰ (或主动æä¾›) 用于编译新的二进制程åºçš„硬件,去除了 + Alpha \acro{OSF} çš„æ”¯æŒ (å…ˆå‰å·²ç»åŽ»é™¤äº† \acro{HPUX} 的支æŒ)。 +\item Windows 下的安装有很大改å˜ï¼Œé¦–次æ供了基于 XEmacs 的集æˆçŽ¯å¢ƒã€‚ +\item Windows 下é‡è¦çš„è¾…åŠ©æ€§ç¨‹åº (Perl, Ghost\-script, Image\-Magick, Ispell) + 现在放在 \TL{} 的安装目录。 +\item \cmdname{dvips}, \cmdname{dvipdfm} å’Œ \cmdname{pdftex} + 使用的字体映射文件现在通过 \cmdname{updmap} 这套新程åºç”Ÿæˆï¼Œå¹¶å®‰è£…到 + \dirname{texmf/fonts/map} 目录下。 +\item \TeX{}, \MF{}, å’Œ \MP{} 现在缺çœç›´æŽ¥è¾“出大多数的输入字符 (ä½ç½® 32 åŠå…¶ä»¥ä¸Š) + (比如通过 \verb|\write|),包括输出到文件ã€æ—¥å¿—和终端上。也就是说,\emph{ä¸å†}使用 + \verb|^^| 标记æ¥è½¬æ¢ã€‚在 \TL{}~7 中是å¦è½¬æ¢æ ¹æ®ç³»ç»ŸåŒºåŸŸ (locale) + 设置而定,而这一版里 locale 设置ä¸å†å½±å“ \TeX{} 程åºçš„è¡Œä¸ºï¼Œæ‰€ä»¥å¦‚æžœä½ éœ€è¦ + \verb|^^| å½¢å¼çš„输出,请将 \verb|texmf/web2c/cp8bit.tcx| + 文件改å。(åŽç»­ç‰ˆæœ¬å°†æ供更简æ´çš„æ–¹å¼æ¥æŽ§åˆ¶ã€‚) +\item 对文档作了大é‡æ›´æ–°ã€‚ +\item 最åŽï¼Œå› ä¸ºç‰ˆæœ¬å·å¢žé•¿å¾—实在太快,现在简å•åœ°ä½¿ç”¨å¹´ä»½æ¥æ ‡è¯†ç‰ˆæœ¬ï¼š\TL{} 2003。 +\end{itemize*} + + +\subsubsection{2004} + +2004 年有许多改å˜ï¼š + +\begin{itemize} + +\item 如果你在本地安装的字体时涉åŠäº† \filename{.map} 或 \filename{.enc} +(附带这ç§æ–‡ä»¶çš„å¯èƒ½æ€§å¾ˆå°) 辅助文件,å¯èƒ½éœ€è¦è½¬ç§»è¿™äº›æ–‡ä»¶çš„ä½ç½®ã€‚ + +çŽ°åœ¨æ ¹æ® \envname{TEXFONTMAPS} å˜é‡ä¸­çš„路径设置,åªåœ¨ (所有 \filename{texmf} +目录树下的) \dirname{fonts/map} å­ç›®å½•ä¸‹æœç´¢ \filename{.map} +文件。与之类似,\filename{.enc} 文件现在åªåœ¨ \dirname{fonts/enc} +目录下æœç´¢ï¼Œæ ¹æ® \envname{ENCFONTS} å˜é‡ä¸­çš„路径设置。如果é‡åˆ°æœ‰é—®é¢˜çš„æ–‡ +件,\cmdname{updmap} 会æ出警告。 + +关于这ç§æœç´¢æ–¹å¼çš„其他信æ¯ï¼Œè¯·å‚è§ \url{http://tug.org/texlive/mapenc.html}。 + +\item 因为有人å¯èƒ½æ›´æ„¿æ„使用 \MIKTEX\ è€Œéž \Webc{} 系统,\TK\ +现在包å«äº†ä¸€å¥—基于 \MIKTEX\ çš„å¯å®‰è£… \CD,å‚è§ç¬¬~\ref{sec:overview-tl}~节 +(\p.\pageref{sec:overview-tl})。 + +\item 在原æ¥æ—§ç‰ˆæœ¬ \TL\ 中å•ä¸€çš„ \dirname{texmf} 目录树被分拆为三 +个:\dirname{texmf}, \dirname{texmf-dist}, å’Œ \dirname{texmf-doc}。å‚è§ +第~\ref{sec:tld}~节 (\p.\pageref{sec:tld}) åŠå„目录下的 \filename{README} +文件。 + +\item 所有 \TeX\ 输入文件现在统一收集到了 \dirname{texmf*} 下的 +\dirname{tex} å­ç›®å½•ä¸­ï¼Œä¸å†åˆ†æ•£åœ¨å„个 \dirname{tex}, \dirname{etex}, +\dirname{pdftex}, \dirname{pdfetex} 目录。è§~ +\CDref{texmf-dist/doc/english/tds/tds.html\#Extensions} +{\texttt{texmf-dist/doc/english/tds/tds.html\#Extensions}}。 + +\item 辅助性脚本 (并éžç›´æŽ¥æ供给用户调用的) 现在放在 \dirname{texmf*} 目录树下 +æ–°çš„ \dirname{scripts} å­ç›®å½•ä¸­ï¼Œå¹¶å¯ä»¥é€šè¿‡ \verb|kpsewhich -format=texmfscripts| +æ¥æœç´¢ã€‚如果你的程åºè°ƒç”¨äº†è¿™äº›è„šæœ¬ï¼Œå¿…须修改路径。å‚è§ +\CDref{texmf-dist/doc/english/tds/tds.html\#Scripts} +{\texttt{texmf-dist/doc/english/tds/tds.html\#Scripts}}。 + +\item 几乎所有格å¼ï¼Œéƒ½ç”¨ \filename{cp227.tcx} 这个转æ¢æ–‡ä»¶å°†å¤§å¤šæ•°çš„å¯è§ (printable) +字符ä¿ç•™ä¸‹æ¥ï¼Œè€Œä¸å†ä½¿ç”¨ \verb|^^| 标识æ¥è½¬æ¢è¿™äº›å­—符。具体而言,在ä½ç½® 32--256 çš„ +字符,加上 tab, vertical tab, å’Œ form feed 字符都作为å¯è§å­—符而ä¸å†è½¬æ¢ã€‚例外情况是 +plain \TeX\ (åªå°†ä½ç½® 32--126 的字符视为å¯è§), \ConTeXt\ (0--255 都视为å¯è§) 和与 +\OMEGA\ 相关的格å¼ã€‚缺çœçš„情况几乎与 \TL\,2003 完全一致,但通过更简æ´çš„æ–¹å¼å®žçŽ°ï¼Œå¹¶å…许 +更多定制。å‚è§ \CDref{texmf/doc/web2c/web2c.html\#TCX-files} +{\texttt{texmf/doc/web2c/web2c.html\#TCX-files}}。 +(å¦å¤–,如果é‡åˆ° Unicode 输入,\TeX\ å¯èƒ½ä¼šåœ¨æ˜¾ç¤ºé”™è¯¯ä¸Šä¸‹æ–‡æ—¶è¾“出åŠä¸ªå­—符,因为它是基于 +字节æµæ¥å¤„ç†è¾“入的。) + +\item \textsf{pdfetex} 现在是除 (plain) \textsf{tex} 外所有格å¼çš„默认引擎 (当然 +以 \textsf{latex} è¿™ç§æ–¹å¼è¿è¡Œæ—¶å®ƒè¿˜æ˜¯ç”Ÿæˆ \acro{DVI})。这样一æ¥ï¼Œè‡³å°‘ \textsf{pdftex} +的微调排版 (microtypographic) 技术å¯ä»¥åœ¨ \LaTeX, \ConTeXt 等格å¼ä¸­ä½¿ç”¨ï¼Œå¦å¤– \eTeX\ +的特性也包å«åœ¨å…¶ä¸­ (\OnCD{texmf-dist/doc/etex/base/})。 + +这还说明\emph{比以å‰ä»»ä½•æ—¶å€™éƒ½æ›´æœ‰å¿…è¦}使用 (对 plain å’Œ \LaTeX\ 都适用的) +\pkgname{ifpdf} å®åŒ…或其类似代ç ï¼Œå› ä¸ºåªæ£€æŸ¥ \cs{pdfoutput} 或其他原语是å¦å·²ç»å®šä¹‰ +ä¸å†æ˜¯åˆ¤æ–­æ˜¯å¦å¤„于 \acro{PDF} 输出状æ€çš„å¯é æ–¹æ³•ã€‚我们在这一年尽å¯èƒ½åœ°ä¿æŒå‘ä¸‹å…¼å®¹ï¼Œä½†ä»¥åŽ +å³ä½¿åœ¨è¾“出 \acro{DVI} æ—¶ \cs{pdfoutput} 也å¯èƒ½å·²ç»å®šä¹‰ã€‚ + +\item pdf\TeX\ (\url{http://pdftex.org}) 新增了许多特性: + + \begin{itemize*} + + \item å¯ä»¥ä½¿ç”¨ \cs{pdfmapfile} å’Œ \cs{pdfmapline} æ¥åœ¨å•ç‹¬æ–‡æ¡£å†…指定字体映射文件。 + + \item å¯ä»¥æ›´æ–¹ä¾¿åœ°ä½¿ç”¨æŽ’版微调 (Microtypographic) 和字体延展 (font expansion) + 技术了。\\ + \url{http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html} + + \item 原æ¥ä½¿ç”¨ä¸“有格å¼çš„é…置文件 \filename{pdftex.cfg} 里的选项现在都必须改用 + \TeX{} 原语æ¥è®¾ç½®ï¼Œé€šå¸¸æ”¾åœ¨ \filename{pdftexconfig.tex} 里é¢ï¼Œä¸å†æ”¯æŒ + \filename{pdftex.cfg} çš„é…置方å¼ã€‚æ¯æ¬¡ä¿®æ”¹ \filename{pdftexconfig.tex} + 之åŽéƒ½å¿…é¡»é‡æ–°ç”Ÿæˆ \filename{.fmt} 文件。 + + \item å‚è§ pdf\TeX\ 手册以了解更多信æ¯ï¼š\OnCD{texmf/doc/pdftex/manual}。 + + \end{itemize*} + +\item \cmdname{tex} (ä»¥åŠ \cmdname{mf} å’Œ \cmdname{mpost}) 中的 \cs{input} +原语现在支æŒé€šè¿‡åŒå¼•å·æ¥å¼•ç”¨åŒ…å«ç©ºæ ¼å’Œç‰¹æ®Šå­—符的文件。一个典型的例å­å¦‚下: +\begin{verbatim} +\input "filename with spaces" % plain +\input{"filename with spaces"} % latex +\end{verbatim} +å‚阅 \Webc{} 文档以了解更多信æ¯ï¼š\OnCD{texmf/doc/web2c}。 + +\item enc\TeX\ 的支æŒçŽ°åœ¨å·²è¢«åŒ…å«åœ¨ \Webc{} 中,因而所有 \TeX\ 程åºéƒ½å¯ä»¥é€šè¿‡ +\optname{-enc} å‚æ•°å¯ç”¨è¿™ä¸€æ”¯æŒ \Dash \emph{å‰æ是构建好了格å¼æ–‡ä»¶}。enc\TeX\ +æ供了对输入输出通用的é‡æ–°ç¼–ç åŠŸèƒ½ï¼Œå®žçŽ°å¯¹ Unicode (以 \acro{UTF}-8 ç¼–ç çš„å½¢å¼) +的完整支æŒã€‚å‚è§ \OnCD{texmf-dist/doc/generic/enctex/} å’Œ +\url{http://www.olsak.net/enctex.html}。 + +\item æ供了 Aleph 这套新的 \TeX{} 引擎,它将 \eTeX\ å’Œ \OMEGA\ åˆå¹¶åˆ°äº†ä¸€èµ·ã€‚ +关于 Aleph 的部分信æ¯å¯ä»¥åœ¨ \OnCD{texmf-dist/doc/aleph/base} +å’Œ \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph} 找到。Aleph +çš„ \LaTeX æ ¼å¼æ–‡ä»¶ç§°åš \textsf{lamed}。 + +\item 最新å‘布的 \LaTeX\ 包å«äº†æ˜¯æ–°ç‰ˆçš„ \acro{LPPL} 授æƒåè®®\Dash 这一å议已被 +Debian 首肯。\LaTeX\ å…¶ä»–çš„æ›´æ–°è¯·è§ \OnCD{texmf-dist/doc/latex/base} 下的 +\filename{ltnews} 文件。 + +\item 包å«äº†ä¸€ä¸ªå«åš \cmdname{dvipng} 的新程åºï¼Œç”¨äºŽå°† \acro{DVI} 转æ¢ä¸º +\acro{PNG} 图åƒæ–‡ä»¶ã€‚å‚è§ \OnCD{texmf/doc/man/man1/dvipng.1}。 + +\item 我们在作者 (Claudio Beccari) çš„åŒæ„下,将 \pkgname{cbgreek} 包å«çš„ +字体数é‡å‡å°‘到中等。去除了ä¸å¯è§ã€è½®å»“å’Œé€æ˜Žç‰ˆæœ¬çš„字体,这些字体几乎很少用到。而我们 +的光盘镜åƒéœ€è¦ç©ºé—´ã€‚完整版本当然还是在 \acro{CTAN} æä¾› +(\url{http://mirror.ctan.org/tex-archive/fonts/greek/cb})。 + +\item 去掉了 \cmdname{oxdvi},改为åªä½¿ç”¨ \cmdname{xdvi}。 + +\item ä¸å†ä¸º \cmdname{tex}, \cmdname{mf}, å’Œ \cmdname{mpost} 程åºåˆ›å»º +\cmdname{ini} å’Œ \cmdname{vir} 开头的命令链接,比如 +\cmdname{initex}。\cmdname{ini} 的功能早在几年å‰å°±é€šè¿‡ \optname{-ini} +命令行å‚æ•°æ供了。 + +\item 去掉了 \textsf{i386-openbsd} å¹³å°çš„支æŒã€‚因为在 \acro{BSD} Ports +系统中已ç»åŒ…å«äº† \pkgname{tetex} 软件包,而 \acro{GNU/}Linux å’Œ +Free\acro{BSD} 下的二进制版本都已存在,所以志愿者的时间å¯ä»¥èŠ±åœ¨å…¶ä»–的地方了。 + +\item 至少在 \textsf{sparc-solaris} å¹³å°ä¸‹ï¼Œä½ å¿…须设置好 +\envname{LD\_LIBRARY\_PATH} 环境å˜é‡æ‰èƒ½æ‰§è¡Œ \pkgname{t1utils} 包å«çš„程åºã€‚ +因为这些程åºæ˜¯ä½¿ç”¨ C++ 编写的,其è¿è¡Œæ—¶åº“没有固定的ä½ç½®ã€‚(这一情况并éžåœ¨ 2004 版 +中首次出现,但现在æ‰å†™å…¥æ–‡æ¡£) 与之类似,\textsf{mips-irix} å¹³å°ä¸‹éœ€è¦ç”¨åˆ° +\acro{MIPS}pro 7.4 è¿è¡Œæ—¶åº“。 + +\end{itemize} + +\subsubsection{2005} + +2005 年一如往常,å®åŒ…和程åºéƒ½æœ‰å¤§é‡çš„更新。底层结构和 2004 年相比ä¿æŒäº†ç¨³å®šï¼Œ +ä¸è¿‡ä»ç„¶å­˜åœ¨ä¸€äº›å˜åŒ–。 + +\begin{itemize} + +\item 引入了新的 \cmdname{texconfig-sys}, \cmdname{updmap-sys}, å’Œ + \cmdname{fmtutil-sys} 安装脚本,用于修改系统目录树下的é…置。而原有的 + \cmdname{texconfig}, \cmdname{updmap}, å’Œ \cmdname{fmtutil} + 则用于修改针对å•ä¸ªç”¨æˆ·çš„文件 (放在 \dirname{$HOME/.texlive2005} + 目录下的)。 + +\item 增加了对应的 \envname{TEXMFCONFIG} å’Œ \envname{TEXMFSYSCONFIG} + å˜é‡ï¼Œåˆ†åˆ«ç”¨äºŽè®¾ç½®é’ˆå¯¹ç”¨æˆ·å’Œç³»ç»Ÿçš„,专门存放é…置文件的目录树。所以你需è¦å°†ä¸ªäººä½¿ç”¨çš„ + \filename{fmtutil.cnf} å’Œ \filename{updmap.cfg} + 放到åˆé€‚ä½ç½®ã€‚ä¸è¿‡è¿˜æœ‰ä¸€ç§æ–¹æ³•æ˜¯åœ¨ \filename{texmf.cnf} 里边é‡æ–°å®šä¹‰ + \envname{TEXMFCONFIG} 或 \envname{TEXMFSYSCONFIG} + å˜é‡ã€‚无论如何,这两个值对应的实际目录都必须正确存在。å‚è§ + 第~\pageref{sec:texmftrees}~页的第~\ref{sec:texmftrees}~节。 + +\item 虽然我们在上一年就已ç»ä½¿ç”¨äº† \cmdname{pdfetex} 作为输出程åºï¼Œä½†åœ¨å®ƒè¾“出 \dvi\ + æ ¼å¼æ—¶ä¼šç¦ç”¨ \verb|\pdfoutput| 等原语 + (primitive)。这一年,我们按照预期计划å–消了这一兼容性é™åˆ¶ã€‚所以,如果你的文档里使用了 + \verb|\ifx\pdfoutput\undefined| 这样的语å¥æ¥åˆ¤æ–­æ˜¯å¦æ­£åœ¨ PDF + 输出模å¼ä¸‹ï¼ŒçŽ°åœ¨å°±å¿…须修改了。你å¯ä»¥ä½¿ç”¨ \pkgname{ifpdf.sty} å®åŒ… (对 plain \TeX\ + å’Œ \LaTeX{} 都适用) æ¥åˆ¤æ–­ï¼Œæˆ–者仿照这个文件里的判断原ç†è‡ªå·±å†™ä¸€ä¸ªã€‚ + +\item 上一年,我们将格å¼æ–‡ä»¶çš„输出改æˆäº†å’Œè¿™äº›æ–‡ä»¶æœ¬èº«ä¸€æ ·çš„ 8 + ä½å­—符。在你需è¦çš„情况下,å¯ä»¥ä½¿ç”¨æ–°çš„ TCX 文件 \filename{empty.tcx} æ¥èŽ·å¾—原有的 + \verb|^^| 表示方å¼ã€‚例如: + +\begin{verbatim} +latex --translate-file=empty.tcx yourfile.tex +\end{verbatim} + +\item æ–°å¢žäº†ç”¨äºŽè½¬æ¢ DVI 为 PDF çš„ \cmdname{dvipdfmx} 程åºï¼Œè¿™æ˜¯ + \cmdname{dvipdfm} 的一个比较活跃更新的版本 (我们ä»ç„¶æä¾› + \cmdname{dvipdfm},但ä¸å»ºè®®ä½ ç»§ç»­ä½¿ç”¨)。 + +\item æ–°å¢žäº†å« \cmdname{pdfopen} å’Œ \cmdname{pdfclose} 的两个程åºï¼Œç”¨äºŽæŽ§åˆ¶ + Adobe Acrobat\slash Reader 在ä¸é‡å¯ç¨‹åºçš„情况下é‡æ–°è½½å…¥ pdf 文件。(其他的 + pdf 阅读器,如 \cmdname{xpdf}, \cmdname{gv}, å’Œ + \cmdname{gsview},都ä¸ä¼šé‡åˆ°è¿™ä¸ªé—®é¢˜ã€‚) + +\item 为了ä¿æŒä¸€è‡´æ€§ï¼Œå°† \envname{HOMETEXMF} å’Œ \envname{VARTEXMF} + 环境å˜é‡åˆ†åˆ«æ›´å为 \envname{TEXMFHOME} å’Œ + \envname{TEXMFSYSVAR}。还有一个针对å•ç‹¬ç”¨æˆ·çš„ \envname{TEXMFVAR} + 环境å˜é‡å¯ç”¨ã€‚å‚è§ä¸Šé¢çš„第一点。 + +\end{itemize} + + +\subsubsection{2006--2007} + +2006--2007 年,\TL{} 的一个é‡å¤§å˜åŒ–是增加了 \XeTeX{},以 \texttt{xetex} å’Œ +\texttt{xelatex} 程åºçš„å½¢å¼æ供。请å‚è§ \url{http://scripts.sil.org/xetex}。 + +\MP{} 也有å¯è§‚的更新,并计划在未æ¥å®žçŽ°æ›´å¤šçš„改进 +(\url{http://tug.org/metapost/articles}),pdf\TeX{} åŒæ ·å¦‚æ­¤ +(\url{http://tug.org/applications/pdftex})。 + +\TeX\ \filename{.fmt} (缓存格å¼) 文件和用于 MetaPost å’Œ \MF\ 的类似文件 +现在存储在 \dirname{texmf/web2c} çš„å­ç›®å½•ä¸­è€Œä¸ç›´æŽ¥æ”¾åœ¨ \dirname{texmf/web2c} +目录下 (ä¸è¿‡è€ƒè™‘到现有的 \filename{.fmt} 文件,直接放置在这个目录下的文件ä»ç„¶ +能被æœç´¢åˆ°)。å­ç›®å½•çš„å称是根æ®å½“å‰ä½¿ç”¨çš„``引擎''决定的,比如 \filename{tex} +或 \filename{pdftex} 或 \filename{xetex}。这个å˜åŒ–ä¸ä¼šå¯¹æ—¥å¸¸ä½¿ç”¨å¸¦æ¥ä»»ä½• +å½±å“。 + +(plain) \texttt{tex} 程åºä¸å†é€šè¿‡è¯»å– \texttt{\%\&} 开头的第一行æ¥å†³å®š +执行何ç§æ ¼å¼ï¼Œè€Œéµå¾ªçº¯ç²¹çš„ Knuth 风格 \TeX\ 的传统。(\LaTeX\ å’Œå…¶ä»–æ‰€æœ‰çš„ç¨‹åº +ä»ç„¶è¯»å– \texttt{\%\&} 开头的行。) + +当然,和往常一样,这一年里你能看到æˆç™¾ä¸Šåƒçš„å®åŒ…与程åºå¾—到更新。也和往常一样, +进一步的更新请使用 \acro{CTAN} (\url{http://mirror.ctan.org})。 + +从内部角度上看,æºä»£ç æ ‘现在改为使用 Subversion 管ç†ï¼Œå¹¶åœ¨æˆ‘们的主页上æ供了 +到 Web ç•Œé¢çš„链接,用于æµè§ˆä»£ç æ ‘。我们希望它能æˆä¸ºæœªæ¥å‡ å¹´ä¸­ç¨³å®šçš„å¼€å‘ +å¹³å°ã€‚ + +末了,2006 年五月 Thomas Esser 宣布他将åœæ­¢ te\TeX{} +(\url{http://tug.org/tetex}) 的更新。这样一æ¥ï¼Œå¤§å®¶å¯¹ \TL{} 的兴趣大增,尤其是在 +\GNU/Linux å‘行版中。(\TL{} æ供了一套新的 \texttt{tetex} 安装方案, +几乎和原有的 te\TeX{} 毫无二致。) 我们希望这些å˜åŒ–将最终转æ¢ä¸ºå¯¹æ•´ä¸ª \TeX\ +环境的改进,从而æ¯ä¸ªäººéƒ½ä¼šå—益。 + +\subsubsection{2008} + +在 2008 年,整个 \TL{} 的基础架构都é‡æ–°è®¾è®¡è¿‡å¹¶é‡æ–°å®žçŽ°äº†ã€‚安装的完整 +ä¿¡æ¯è¢«å­˜æ”¾åœ¨ \filename{tlpkg/texlive.tlpdb} 这个纯文本文件中。 + +除了许多其他的功能外,我们终于å¯ä»¥é€šè¿‡ Internet 在安装åŽæ›´æ–° \TL{} +了,这是 MiK\TeX\ æ—©å·²æ供了许多年的特性。我们希望能定期更新 \CTAN\ 上 +æ–°å‘布的软件包。 + +包å«äº†ä¸€ä¸ªé‡è¦çš„新引擎 Lua\TeX\ (\url{http://luatex.org}),除了 +在排版上çµæ´»æ€§æ›´ä¸Šä¸€å±‚楼以外,它还æ供了一个优秀的脚本语言供 \TeX\ +文档内外使用。 + +对 Windows 和基于 Unix 系统的支æŒçŽ°åœ¨è¦ä¸€è‡´å¾—多了。尤其是大部分 Perl å’Œ +Lua 脚本都能在 Windows 下使用,通过 \TL 内部包å«çš„ Perl。 + +æ–°çš„ \cmdname{tlmgr} 脚本 (第~\ref{sec:tlmgr}~节) 是在åˆå§‹å®‰è£…åŽç®¡ç† +\TL{} 的通用界é¢ã€‚它处ç†äº†è½¯ä»¶åŒ…æ›´æ–°å’ŒåŽç»­çš„æ ¼å¼æ–‡ä»¶ã€map 文件和语言文件 +çš„é‡æ–°ç”Ÿæˆï¼Œå¹¶å¯é€‰åœ°åŒ…å«äº†æœ¬åœ°æ·»åŠ çš„内容。 + +éšç€ \cmdname{tlmgr} 到æ¥ï¼Œç¦ç”¨äº† \cmdname{texconfig} 中编辑格å¼å’Œ +æ–­å­—é…置文件的功能。 + +今年还æ供了大多数平å°çš„ \cmdname{xindy} 索引生æˆç¨‹åº +(\url{http://xindy.sourceforge.net})。 + +\cmdname{kpsewhich} 现在å¯ä»¥æŠ¥å‘Šç»™å®šæ–‡ä»¶çš„æ‰€æœ‰åŒ¹é… (\optname{--all} +å‚æ•°) 并é™åˆ¶åˆ—å‡ºç‰¹å®šç›®å½•ä¸‹çš„åŒ¹é… (\optname{--subdir} å‚æ•°)。 + +\cmdname{dvipdfmx} 程åºçŽ°åœ¨æ”¯æŒç”¨ \cmdname{extractbb} 命令æ¥è§£æž +bounding box ä¿¡æ¯ï¼Œè¿™æ˜¯ \cmdname{dvipdfm} 包å«ä½†æœªæ›¾å‡ºçŽ°åœ¨ +\cmdname{dvipdfmx} 中的最åŽä¸€ä¸ªåŠŸèƒ½ã€‚ + +去除了 \filename{Times-Roman}, \filename{Helvetica} 等字体别å。ä¸åŒçš„ +å®åŒ…对它们的ç†è§£ä¸åŒ (尤其是编ç çš„处ç†ä¸ä¸€æ ·),所以没有什么好的办法能解 +决。 + +去除了 \pkgname{platex} æ ¼å¼æ–‡ä»¶ï¼Œä»¥é¿å…与日文 \pkgname{platex} 的命å +冲çªï¼Œ\pkgname{polski} å®åŒ…现在被用作主è¦çš„波兰语支æŒã€‚ + +从内部而言 \web\ 字符串 pool 文件被编译进了二进制文件中,这样å¯ä»¥æ–¹ä¾¿ +å‡çº§ã€‚ + +最终 Donald Knuth 在他的 `\TeX\ tuneup of 2008' 中的更新也被包å«åœ¨è¿™æ¬¡ +å‘布中。å‚è§ \url{http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}。 + +\subsubsection{2009} + +在 2009 年,为了充分利用 Lua\TeX\ çš„ OpenType 支æŒç­‰ç‰¹æ€§ï¼ŒLua\AllTeX\ +的默认输出格å¼æ˜¯ PDF。新增å«åš \code{dviluatex} å’Œ \code{dvilualatex} +的这两个命令会以 DVI 输出方å¼è¿è¡Œ Lua\TeX{}。Lua\TeX\ 的主页在 +\url{http://luatex.org}。 + +在与 Omega 的作者讨论åŽï¼ŒåŽŸæ¥çš„ Omega 引擎和 Lambda æ ¼å¼æ–‡ä»¶è¢«åŽ»æŽ‰äº†ã€‚ +æ›´æ–°åŽçš„ Alpeh å’Œ Lamed ä»ç„¶åœ¨ï¼ŒåŒæ—¶ä¿ç•™çš„还有 Omega 实用工具。 + +包å«äº†æ–°ç‰ˆæœ¬çš„ AMS \TypeI\ 字体,包括 Computer Modern:其中部分字形 +éš Knuth 多年以æ¥ä¿®æ”¹çš„ MetaFont æºä»£ç æ›´æ–°ï¼Œhinting ä¿¡æ¯ä¹Ÿæ›´æ–°äº†ã€‚ +Euler 字体也整个由 Hermann Zapf é‡æ–°ç»˜åˆ¶äº†ä¸€é (å‚è§ +\url{http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf})。 +ä¸è¿‡ä¸Šè¿°å˜åŒ–并没有改å˜å­—体的 metrics 文件。AMS 字体的主页在 +\url{http://www.ams.org/tex/amsfonts.html}。 + +现在 Windows å’Œ Mac\TeX\ 都包å«äº†æ–°çš„ GUI å‰ç«¯ \TeX{}works。至于其他 +çš„å¹³å°å’Œæ›´å¤šçš„ä¿¡æ¯ï¼Œè¯·å‚è§ \TeX{}works 的主页,\url{http://tug.org/texworks}。 +设计这个跨平å°å‰ç«¯çš„çµæ„Ÿæ¥è‡ªäºŽ \MacOSX\ 下的 TeXShop 编辑器,目标就是 +易用。 + +在许多平å°ä¸‹åŒ…å«äº† Asymptote 图形程åºï¼Œå®ƒå®žçŽ°äº†ä¸€å¥—与 MetaPost 约略 +相似的文本图形æ述语言,但包å«äº†å…ˆè¿›çš„ 3D 支æŒç­‰å…¶ä»–特性。它的主页在 +\url{http://asymptote.sourceforge.net}。 + +å•ç‹¬çš„ \code{dvipdfm} 程åºå·²è¢« \code{dvipdfmx} 所替代,如果以 \code{dvipdfm} +这个å字调用的时候,åŽè€…会以一ç§ç‰¹æ®Šçš„兼容性模å¼è¿è¡Œã€‚\code{dvipdfmx} +包å«äº† \acro{CJK} 支æŒï¼Œå¹¶åŒ…å«äº†å¤šå¹´ä»¥æ¥åœ¨ \code{dvipdfm} 基础上的许多 +修正。DVIPDFMx 项目的主页在 \url{http://project.ktug.or.kr/dvipdfmx}。 + +现在包括了 \pkgname{cygwin} å’Œ \pkgname{i386-netbsd} å¹³å°ä¸‹çš„å¯æ‰§è¡Œæ–‡ä»¶ï¼Œ +而我们建议 OpenBSD å’Œ FreeBSD 的用户使用他们自己的包管ç†ç³»ç»Ÿæ供的 \TeX{}, +å¦å¤–这也是因为è¦ç¼–译出能在多ç§ç‰ˆæœ¬ä¸‹éƒ½å·¥ä½œçš„二进制程åºæœ‰äº›å›°éš¾ã€‚ + +一些更ä¸èµ·çœ¼çš„更新:我们现在使用 \pkgname{xz} 这套稳定的压缩方å¼æ¥æ›¿ä»£ +原有的 \pkgname{lzma} (\url{http://tukaani.org/xz/});在ä¸å’ŒçŽ°æœ‰å˜é‡å +冲çªçš„情况下å…许文件中使用 |$| 字符;Kpathsea 库现在支æŒå¤šçº¿ç¨‹äº† (其中 +用到了 MetaPost);整个 \TL{} 的编译现在基于 Automake 了。 + +对过去历å²çš„最终一点æ示: 所有版本的 \TL{},包括 \CD\ 标签这些附属æ料, +都在 \url{ftp://tug.org/historic/systems/texlive} æ供。 + +\subsubsection{2010} +\label{sec:2010news} % keep with 2010 + +在 2010 年,缺çœçš„ PDF 输出版本现在是 1.5,以支æŒæ›´å¤šåŽ‹ç¼©ã€‚这对所有输出 +PDF çš„ \TeX\ 引擎生效,也对 \code{dvipdfmx} 有效。载入 \pkgname{pdf14} +\LaTeX\ å®åŒ…将改回 PDF~1.4,或者设置 |\pdfminorversion=4|。 + +在载入了 \LaTeX\ \code{graphics.cfg} é…置文件,而且输出的是 PDF 时, +pdf\AllTeX\ 现在\emph{自动地}将请求的å°è£… PostScript (EPS) 文件转æ¢ä¸º +PDF,通过 \pkgname{epstopdf} å®åŒ…。默认选项是为了é¿å…覆盖任何手工创建 +çš„ PDF 文件,但你也å¯ä»¥å°† |\newcommand{\DoNotLoadEpstopdf}{}| (或 +|\def...|) 放在 \cs{documentclass} 声明å‰ä»¥é¿å…载入 \code{epstopdf}。 +如果使用了 \pkgname{pst-pdf} å®åŒ…,也ä¸ä¼šè½½å…¥å®ƒã€‚è¦äº†è§£æ›´å¤šçš„ç»†èŠ‚ï¼Œå‚ +è§ \pkgname{epstopdf} å®åŒ…的文档 (\url{http://ctan.org/pkg/epstopdf-pkg})。 + +一个相关的å˜åŒ–是通过 \cs{write18} 特性从 \TeX\ 执行少é‡å¤–部命令,现在 +默认å¯ç”¨äº†ã€‚这些命令是 \code{repstopdf}, \code{makeindex}, \code{kpsewhich}, +\code{bibtex}, å’Œ \code{bibtex8};这个列表定义在 \code{texmf.cnf}。必须 +ç¦ç”¨è¿™äº›å¤–部命令的环境å¯ä»¥é€šè¿‡å®‰è£…程åºå–消这个选项 (å‚è§ç¬¬~\ref{sec:options}~节), +或者在安装åŽé€šè¿‡è¿è¡Œ |tlmgr conf texmf shell_escape 0| 覆盖这个值。 + +å¦ä¸€ä¸ªç›¸å…³çš„å˜åŒ–是 \BibTeX\ å’Œ Makeindex 现在默认会拒ç»å¾€ä»»æ„目录写入 +输出文件了 (类似 \TeX\ 本身)。这样使得它们能被å¯ç”¨ç»™å—é™çš„ \cs{write18} +使用。è¦ä¿®æ”¹è¿™ä¸ªè¡Œä¸ºï¼Œå¯ä»¥è®¾ç½® \envname{TEXMFOUTPUT} 环境å˜é‡ï¼Œæˆ–者修改 +|openout_any| 设置。 + +\XeTeX\ 现在支æŒä¸Ž pdf\TeX\ 一样的 margin kerning。(Font expansion 现在 +还ä¸æ”¯æŒã€‚) + +默认情况下,\prog{tlmgr} 现在回给æ¯ä¸ªæ›´æ–°çš„包ä¿å­˜ä¸€ä¸ªå¤‡ä»½ +(\code{tlmgr option autobackup 1}),所以æŸå的包更新å¯ä»¥ç®€å•åœ°é€šè¿‡ +\code{tlmgr restore} æ¢å¤ã€‚如果你在安装åŽè¦æ‰§è¡Œæ›´æ–°ï¼Œä½†æ²¡æœ‰è¶³å¤Ÿçš„ +ç£ç›˜ç©ºé—´æ¥ä¿å­˜å¤‡ä»½ï¼Œå¯ä»¥è¿è¡Œ \code{tlmgr option autobackup 0}。 + +包å«äº†è¿™äº›æ–°çš„程åºï¼šç”¨äºŽæŽ’版日文的 p\TeX\ 引擎和相关实用工具;支æŒäº† +Unicode \BibTeX\ çš„ \BibTeX{}U 程åºï¼›\prog{chktex} 实用工具 +(\url{http://baruch.ev-en.org/proj/chktex}) +用æ¥æ£€æŸ¥ \AllTeX\ 文档;\prog{dvisvgm} +(\url{http://dvisvgm.sourceforge.net}) 是 DVI 到 SVG æ ¼å¼è½¬æ¢å™¨ã€‚ + +现在包å«äº†è¿™äº›æ–°å¹³å°çš„å¯æ‰§è¡Œæ–‡ä»¶ï¼š\code{amd64-freebsd}, +\code{amd64-kfreebsd}, \code{i386-freebsd}, \code{i386-kfreebsd}, +\code{x86\_64-darwin}, \code{x86\_64-solaris}。 + +我们忘记注明的一个 \TL{} 2009 的修改是:许多 \TeX4ht 相关的å¯æ‰§è¡Œæ–‡ä»¶ +(\url{http://tug.org/tex4ht}) 被从二进制目录删除了。通用的 \code{mk4ht} +程åºå¯ä»¥ç”¨æ¥è¿è¡Œè¿™äº› \code{tex4ht} 组åˆçš„ä»»æ„一ç§ã€‚ + +最åŽï¼Œ\TK\ \DVD\ 上的 \TL{} å‘è¡Œä¸èƒ½å†ç›´æŽ¥æ‰§è¡Œäº† (å¬èµ·æ¥å¾ˆå¥‡æ€ª)。 +å•å¼  \DVD\ å·²ç»æ²¡æœ‰è¶³å¤Ÿçš„ç©ºé—´äº†ã€‚ä¸€ä¸ªä¼˜ç‚¹æ˜¯ä»Žç‰©ç† \DVD\ 的安装将会 +快很多。 + +\subsubsection{2011} + +\MacOSX\ äºŒè¿›åˆ¶ç¨‹åº (\code{universal-darwin} å’Œ \code{x86\_64-darwin}) +现在åªèƒ½åœ¨ Leopard åŠä»¥åŽç‰ˆæœ¬ä¸Šå·¥ä½œï¼›Panther å’Œ Tiger 都ä¸å†æ”¯æŒäº†ã€‚ + +用于å‚考文献处ç†çš„ \code{biber} 程åºåœ¨å¸¸è§å¹³å°ä¸‹éƒ½å·²åŒ…å«ã€‚它的分å‘å’Œ +\code{biblatex} å®åŒ…紧密相关的,这个å®åŒ…完全é‡æ–°å®žçŽ°äº† \LaTeX{} æä¾› +çš„å‚考文献机制。 + +MetaPost (\code{mpost}) 程åºä¸å†åˆ›å»ºæˆ–者使用 \code{.mem} 文件了。所 +需的文件,比如 \code{plain.mp},会在æ¯æ¬¡è¿è¡Œæ—¶è¯»å…¥ã€‚这个å˜åŒ–和将 +MetaPost 作为一个库有关,这是å¦ä¸€ä¸ªé‡è¦è€Œç”¨æˆ·ä¸ä¼šæ³¨æ„çš„å˜åŒ–。 + +\code{updmap} çš„ Perl 实现,先å‰åªåœ¨ Windows 下使用,现在被更新并用 +于所有平å°äº†ã€‚è¿™ä¸åº”该造æˆä»»ä½•ç”¨æˆ·å¯è§çš„å˜åŒ–,除了它å˜å¾—快得多。 + +\htmlanchor{news} +\subsection{Present} +\label{sec:tlcurrent} + +\code{tlmgr} 支æŒäº†ä»Žå¤šä¸ªç½‘络仓库更新。\code{tlmgr help} 输出中的多仓库 +一节有更多信æ¯ã€‚ + +对于 \code{xetex} å’Œ \code{xelatex},\cs{XeTeXdashbreakstate} å‚数被缺 +çœè®¾ç½®ä¸º~1。这å…许了 em-dash å’Œ en-dash åŽçš„æ¢è¡Œï¼Œè¿™å’Œ plain \TeX, +\LaTeX, Lua\TeX\ 现在的行为一致。现有的 \XeTeX\ 文档如果需è¦ä¿æŒå®Œç¾Žçš„ +æ¢è¡Œå…¼å®¹æ€§åˆ™éœ€è¦æ˜¾å¼è®¾ç½® \cs{XeTeXdashbreakstate} 为~0。 + +\code{pdftex} å’Œ \code{dvips} 等生æˆçš„输出文件现在å¯ä»¥è¶…过 2 GB 了。 + +35 标准 PostScripts 字体现在在 \code{dvips} 输出中缺çœä¿å‡½äº†ï¼Œå› ä¸ºçŽ°åœ¨ +有太多这些字体的ä¸åŒç‰ˆæœ¬äº†ã€‚ + +默认设置的 \cs{write18} å—é™æ‰§è¡Œæ¨¡å¼ä¸­ï¼Œ\code{mpost} æˆä¸ºäº†ä¸€ä¸ªå…许的 +程åºã€‚ + +\filename{../texmf-local} 下现在也会出现一个 \code{texmf.cnf} 文件, +比如 \filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf}。 + +\code{updmap} 脚本现在读å–的是针对å„个目录树的 \code{updmap.cfg}ï¼Œè€Œä¸ +å†æ˜¯å…¨å±€çš„é…置文件。这个修改应该ä¸å®¹æ˜“å‘现,除éžä½ ç›´æŽ¥ç¼–辑过 \code{updmap.cfg} +文件。\code{updmap --help} 输出中有更多信æ¯ã€‚ + +å¹³å°ï¼šå¢žåŠ äº† \pkgname{armel-linux} å’Œ \pkgname{mipsel-linux} å¹³å°ï¼› +\pkgname{sparc-linux} å’Œ \pkgname{i386-netbsd} ä¸å†å‡ºçŽ°åœ¨ä¸»å‘行中, +但å¯ä»¥ä½œä¸ºå¯é€‰å®‰è£…,和一系列其他平å°ä¸€èµ·ï¼š +\url{http://tug.org/texlive/custom-bin.html}。 + +\subsection{未æ¥} + +\emph{\TL{} 并ä¸å®Œç¾Žï¼} (也永远ä¸ä¼šè¾¾åˆ°å®Œç¾Žã€‚) 我们希望继续å‘行新的 +版本,也希望æ供更多的帮助文档ã€æ›´å¤šçš„实用程åºã€æ›´å¤šçš„安装程åºï¼Œå½“然还 +有更多更新的å®åŒ…与字体。这个工作是由志愿者在其空闲时间完æˆçš„,所以总有 +更多值得åšçš„地方。请å‚è§ \url{http://tug.org/texlive/contribute.html}。 + +请把更正ã€å»ºè®®æˆ–者æ供帮助的æ„æ„¿å‘é€åˆ°ï¼š +\begin{quote} +\email{tex-live@tug.org} \\ +\url{http://tug.org/texlive} +\end{quote} + +\medskip +\noindent \textsl{ç¥ä½ ä½¿ç”¨ \textrm{\TeX} 愉快ï¼} + +\section{翻译说明} + +这里对简体中文版本《\TL{} 指å—》,å³æœ¬æ–‡æ¡£ä¸­éµå¾ªçš„翻译惯例作一简è¦è¯´æ˜Žï¼š + +\begin{itemize} + +\item package, 视上下文,有时翻译为软件包,有时翻译为å®åŒ…。 +\item format file, å³ \TeX{} 程åºä¸€èˆ¬éƒ½ä¼šé¢„载入的 \texttt{.fmt} +文件。本文档中翻译为格å¼æ–‡ä»¶ã€‚ +\item scheme, 本文档中译为 (安装) 方案。 +\item collection, 本文档中译为 (软件) 集åˆã€‚ +\item 本文档中有时对原文没有采用é€å­—é€å¥çš„对比翻译,而是总括其æ„æ€ï¼Œè½¬æ¢ä¸º +更易为中文 \TeX{} 用户习惯的表达方å¼ã€‚ +\item architecture/platform, 是æ„æ€æ¯”较相近的è¯ï¼ŒåŸºæœ¬ä¸Šæ˜¯åªæŸç§ CPU +和对应这个 CPU çš„æ“作系统。比如 i386-linux。本文里翻译为架构ã€å¹³å°ã€ä½“ç³» +结构等等。 +\item binary, 二进制文件,其实就是说å¯æ‰§è¡Œç¨‹åºæ–‡ä»¶å’Œåº“文件了。 + +\end{itemize} + +2007 年的简体中文版本由 Jiang Jiang, Jinsong Zhao, Yue Wang, +Helin Gai 翻译。其中 Jinsong Zhao è´Ÿè´£ Windows 部分的翻译,Yue Wang +å’Œ Helin Gai 进行了校对,Jiang Jiang 则负责其余的翻译和统稿。 + +2008 年的简体中文版本由 Jiang Jiang, Yue Wang å’Œ Jinsong Zhao 翻译。 + +2009 年的简体中文版本由 Jiang Jiang å’Œ Jinsong Zhao 翻译。 + +2010 年的简体中文版本由 Jiang Jiang 翻译。 + +2011 年的简体中文版本由 Jiang Jiang 翻译。 + +2012 年的简体中文版本由 Jiang Jiang 翻译。 + +\end{document} -- cgit v1.2.3