summaryrefslogtreecommitdiff
path: root/Master/texmf-doc/source
diff options
context:
space:
mode:
authorYue Wang <yuleopen@gmail.com>2008-08-01 11:45:33 +0000
committerYue Wang <yuleopen@gmail.com>2008-08-01 11:45:33 +0000
commit10a1e64deaecba0f47b4755efc5f3effd9539890 (patch)
treec331f848a0d97cb6097f5b35b8c36a97a4381614 /Master/texmf-doc/source
parent8e7a8ee05a302196b5258173baebac58f53ee7db (diff)
update sections for web2c, usbinstall, and tlmgr
git-svn-id: svn://tug.org/texlive/trunk@9978 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-doc/source')
-rw-r--r--Master/texmf-doc/source/texlive/texlive-zh-cn/texlive-zh-cn.tex230
1 files changed, 204 insertions, 26 deletions
diff --git a/Master/texmf-doc/source/texlive/texlive-zh-cn/texlive-zh-cn.tex b/Master/texmf-doc/source/texlive/texlive-zh-cn/texlive-zh-cn.tex
index 1a7a5caa179..974d38cd5d0 100644
--- a/Master/texmf-doc/source/texlive/texlive-zh-cn/texlive-zh-cn.tex
+++ b/Master/texmf-doc/source/texlive/texlive-zh-cn/texlive-zh-cn.tex
@@ -3,7 +3,7 @@
% Michel Goossens, now maintained by Karl Berry and others.
% Translated by Jjgod Jiang <gzjjgod@gmail.com>,
% Jinsong Zhao <jinsong.zhao@gmail.com>,
-% Yule Wang <yulewang@gmail.com>
+% Yue Wang <yulewang@gmail.com>
% Helin Gai <helin.gai@gmail.com>
% Public domain.
%
@@ -1685,22 +1685,199 @@ texmf.cnf 中相应的变量。
预测所有可能的原因是相当困难的。不过我们还是会尽力帮助你的。(参见第~\ref{sec:help}
节,\p.\pageref{sec:help}。)
-% don't use \Webc so the \uppercase in the headline works.
+
+\section{网络安装}
+\label{sec:netinstall}
+
+\TL{} 的设计可以使它在不同的用户间共享, 甚至可以在网络上不同的系统间共享.
+由于使用了标准的目录结构, \TL{} 不需要在目录录径配置上大费周折:
+\TL{} 程序所需要的文件的位置和这些相应的程序是相关的.
+你可以在 \filename{$TEXMFMAIN/web2c/texmf.cnf} 中找到相关的配置.
+它包含了类似下面的内容:
+\begin{verbatim}
+TEXMFMAIN = $SELFAUTOPARENT/texmf
+...
+TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local
+\end{verbatim}
+这就意味着, 其它的系统或用户很少需要根据他们的系统在他们的路径中添加 \TL{} 的可执行文件的位置.
+
+你也可以把 \TL{} 安装在你的本地, 然后把整个安装目录移动到网络上.
+
+当然, Windows 用户会有不同的需求.
+\dirname{texmf-doc/source/texlive/texlive-common/w32client}
+包含了一个样板脚本 \filename{install-w32client},
+它可以产生配置文件和菜单快捷方式, 来让你使用一个网络上已有的安装版本.
+它可以通过在相同目录的 \filename{install-w32client.bat} 来调用.
+
+你可以在第~\ref{sec:kpathsea}~节中了解更多有关 \TL{} 配置和路径搜索的内容.
+
+\section{运行在 DVD 或 USB 的完整版 \protect\TL{} }
+\label{sec:portable-unix}
+
+在第 ``\ref{sec:fromdvd}'' 中介绍的 ``从 \DVD{} 运行'' 选项可以使发行版在你的系统上运行得很好,
+但是如果你在别人的机器上用非管理员帐号工作,
+那你就可能希望使用对系统本身的影响最小的运行方式.
+
+在 \TL{} \DVD 的根目录, 或者 \TK{} \DVD 的 \dirname{texlive} 子目录,
+有一个为 Unix 系统提供的脚本 \filename{tl-portable} 和一个为 Windows 系统提供的批处理文件 \filename{tl-portable.bat}.
+它们会新开一个已设好环境变量的终端或命令提示符, 在这里你就能在 \DVD 上运行 \TL{}.
+
+当它第一次执行时, 它会花一些时间在目录 \dirname{~/.tlportable2008} 下产生一些文件.
+但从此以后, 它可以在很短的时间内启动.
+
+而此时系统的其它程序会并不知道 \TL{} 的存在.
+如果你需要让你的文本编辑器使用这个 \TL,
+你需要再打开一个这样的 \filename{tl-portable} 会话来使用该编辑器.
+
+你也可以使用 \filename{tl-portable} 在一个 \arco{USB} 闪存上执行 \TL.
+在这种情况下, 请 (至少) 把所有的顶层目录下的所有文件和 \dirname{bin}, \dir{texmf}, \dirname{texmf-dist} 和 \dirname{tlpkg} 下的所有内容复制到闪存上. 这会花一定的时间.
+如果你把它复制到一个 \acro{FAT}32 分区的 \acro{USB} 分区上,
+请保证把所有的文件连接非关联化 (\code{cp -L}).
+运行时都会查找并使用闪存上的 \dirname{texmf-local} 目录.
+
+然后你可以在闪存的根目录下像上面那样执行 \filename{tl-portable}.
+在这个情况下, 脚本会判断这个闪存是可写的, 并把产生的文件写在这里.
+为了方便起见 (比如你想把它给别人), 你也可以把闪存上的最终内容烧回到 \DVD{} 上.
+
+
+\section{\cmdname{tlmgr}: 维护你的安装}
+\label{sec:tlmgr}
+
+
+\begin{figure}[tb]
+\tlpng{tlmgr-gui}{\linewidth}
+图形模式运行的 \caption{\prog{tlmgr} 程序.
+安装包/集合/方案仅在按下 `Load' 按扭以后显示.}\label{fig:tlmgr-gui}
+\end{figure}
+
+\begin{figure}[tb]
+\tlpng{tlmgr-config}{\linewidth}
+\caption{图形模式的 \texttt{tlmgr}: 配置选项卡}\label{fig:tlmgr-config}
+\end{figure}
+
+安装程序会安装一个用来在安装后进行管理的程序 \prog{tlmgr}.
+一些程序, 比如 \prog{updmap}, \prog{fmtutil} 和 \prog{texconfig} 仍然包含在发行版中, 而且在将来也不会剔除, 但是 \prog{tlmgr} 是一个优选的接口.
+它的功能包括:
+
+\begin{itemize*}
+\item 列出方案, 集合和安装包;
+\item 安装, 升级, 备份, 恢复, 卸载软件包, 并且会自动计算依赖关系;
+\item 查找软件包;
+\item 列出和添加可执行文件的架构;
+\item 改变安装选项, 比如纸张大小和源文件位置 (见第~\ref{sec:location}~节).
+\end{itemize*}
+\textit{警告:} \prog{tlmgr} 并不为, 在 \DVD 中运行设计, 也从末做过相关的测试.
+
+\subsection{图形模式的\cmdname{tlmgr}}
+\prog{tlmgr} 可以用以下命令在图形模式下运行
+\begin{alltt}
+> \Ucom{tlmgr -gui}
+\end{alltt}
+Windows 下可以通过开始菜单: \texttt{开始}, \texttt{所有程序},
+\texttt{TeX Live 2008}, \texttt{TeX Live Manager}.
+在假定安装包源是有效且可及的情况下,
+在点 `Load' 以后, 它会显示一张所有可获取的和已安装(前面用 `(i)' 表示)的安装包列表.
+
+图~\ref{fig:tlmgr-config} 显示了配置选项卡.
+
+\subsection{\cmdname{tlmgr} 命令行使用示例}
+
+下面的例子会从一个非默认的地址安装一些包, 包括一个新的 `引擎'.
+
+\begin{alltt}
+> \Ucom{tlmgr -location http://172.16.18.1/tldev install collection-xetex xkeyval}
+\end{alltt}
+它会产生下面的输出:
+\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}
+正如你看到的那样, \prog{tlmgr} 会安装所依赖的包, 也会处理所有包括刷新文件名数据库和重新生成格式在内的所有必要的安装后工作.
+(在这里, 我们生成了 \XeTeX\ 的新格式).
+
+在下面的这个安装新语言的例子中, 程序同时会触发格式的重新生成.
+\begin{alltt}
+> \Ucom{tlmgr install collection-langdutch}
+\end{alltt}
+如果想得到安装包的说明:
+\begin{alltt}
+> \Ucom{tlmgr show collection-wintools}
+\end{alltt}
+会产生
+\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}
+把你的整个安装更新到最近的版本:
+\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}
+程序的完整文档:
+\begin{alltt}
+> \Ucom{tlmgr -help}
+\end{alltt}
+
\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。
+接手了这个工作,到 1997 年,他把这项工作交给了 Olaf Weber。 Olaf Weber 在 2006 年又把這項工作交還給了 Karl.
\Webc{} 系统可以在 Unix、32 位 Windows 系统、\MacOSX{} 和其他的一些操作系统下运行。
-它使用的是 Knuth 用 \web{} 语言编写的 \TeX{} 和其他基本程序的原始代码,将其转换为 C
-源码。核心的 \TeX{} 程序包括:
+它使用的是 Knuth 用 \web{} 文学编程语言编写的 \TeX{} 和其他基本程序的原始代码,将其转换为 C
+源码。用这种方法处理的核心的 \TeX{} 程序包括:
\begin{cmddescription}
\item[bibtex] 维护参考文献。
@@ -1734,20 +1911,21 @@ texmf.cnf 中相应的变量。
档中也有相关介绍。不过,有些规则对所有这些程序都是通用的,了解这些规则有助于你更好的使用
\Webc{}。
-所有的程序都接受这些 \acro{GNU} 标准的选项:
+所有的程序都接受这些 GNU 标准的选项:
\begin{ttdescription}
\item[-{}-help] 显示基本使用说明。
\item[-{}-verbose] 显示详细的执行过程。
\item[-{}-version] 显示版本信息,然后退出。
\end{ttdescription}
-所有的 \Webc{} 程序均使用 \KPS{} 路径搜索库来查找文件,这套库结合环境变量和配置文件的
+所有的 \Webc{} 程序均使用 \KPS{} (\url{http://tug.org/kpathsea}) 路径搜索库来查找文件,这套库结合环境变量和配置文件的
使用来优化大量 \TeX{} 文件的搜索。\Webc{} 可以在多于一套的目录树下执行查找,这可以方
便维护类似 \TeX{} 标准发行版和本地版本的扩展这样两套目录树。为了优化搜索的速度,每个目
录树的顶层目录下都有一个 \file{ls-R} 文件,这个文件里包含了所有此目录下文件的名称和对
应的相对路径。
\subsection{Kpathsea 路径搜索}
+\label{sec:kpathsea}
我们首先介绍一下 \KPS{} 库的的通用路径搜索方式。
@@ -1761,7 +1939,7 @@ texmf.cnf 中相应的变量。
(\samp{:}) 和斜杠 (\samp{/})。
在检查一个具体的路径元素 \var{p} 时,\KPS{} 首先见扯是否有符合 \var{p} 的文件名
-数据库 (见第 \pageref{Filename-database} 页的``文件名数据库'') 存在,也就是说,
+数据库 (见第 \pageref{sec:filename-database} 页的``文件名数据库'') 存在,也就是说,
是否有数据库正好对应着 \var{p} 的一个前缀。如果存在,就在数据库中寻找符合的路径后缀。
要是没有这种数据库存在、又或者所有的数据库都不能和指定的路径前缀匹配上、再或者找到的数
@@ -1794,7 +1972,7 @@ texmf.cnf 中相应的变量。
\fi
\subsubsection{路径的来源}
-\label{Path-sources}
+\label{ec:path-sources}
搜索路径可能来自许多地方,\KPS{} 是按照下面的顺序查找的:
@@ -1861,7 +2039,7 @@ texmf.cnf 中相应的变量。
\fi
\subsubsection{路径展开}
-\label{Path-expansion}
+\label{sec:path-expansion}
和 Unix shell 类似,\KPS{} 能够识别搜索路径中的特殊字符。比如一个复杂的路径
\verb+~$USER/{foo,bar}//baz+,将展开为这样的子目录:在 \texttt{\$USER}
@@ -1869,10 +2047,10 @@ texmf.cnf 中相应的变量。
文件或目录。这种展开将在下面解释。
%$
\subsubsection{默认展开}
-\label{Default-expansion}
+\label{sec:default-expansion}
\tolerance=2500
-如果最高优先级 (参见第 \pageref{Path-sources} 页的``路径来源'')
+如果最高优先级 (参见第 \pageref{sec:path-sources} 页的``路径来源'')
的搜索路径中包含一个\emph{额外的冒号} (即前置、后置或连续的冒号),\KPS{} 将在
此处插入次高优先级的搜索路径。如果插入的那个路径里也有额外的冒号,同样的步骤将发生
在更次以及优先级的路径上。假设环境变量设置为
@@ -1920,7 +2098,7 @@ texmf.cnf 中相应的变量。
所以你可以确信时常更新的那个版本肯定是先被找到的。
\subsubsection{子目录展开}
-\label{Subdirectory-expansion}
+\label{sec:subdirectory-expansion}
在路径元素里的目录名称 \var{d} 后面接连使用两个或更多连续的斜杠,表示 \var{d} 的
所有子目录:首先是直接处于 \var{d} 下的那些,然后是这些子目录的子目录,依此类推。
@@ -1953,7 +2131,7 @@ texmf.cnf 中相应的变量。
\subsection{文件名数据库}
-\label{Filename-database}
+\label{sec:filename-database}
\KPS{} 使用了一些方法来减少搜索时的磁盘访问次数。尽管如此,如果安装的文件足够多,在各
个可能的目录下搜索某个文件仍然可能花上很长时间 (尤其是在必须遍历数百个字体目录的时候)。
@@ -1964,7 +2142,7 @@ texmf.cnf 中相应的变量。
帮助源文件符合 \acro{DOS} 8.3 命名规范。
\subsubsection{文件名数据库}
-\label{ls-R}
+\label{sec:ls-R}
前边已经解释过,主文件名数据库的名称必须是 \file{ls-R}。你可以在每个需要搜索的
\TeX{} 目录树 (缺省是 \code{\$TEXMF}) 下放置一个这样的文件。\KPS{} 在
@@ -1977,7 +2155,7 @@ texmf.cnf 中相应的变量。
cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R
\end{alltt}
-意味着你的系统的 \code{ls} 命令的输出格式必须正确 (\acro{GNU} \code{ls} 是没
+意味着你的系统的 \code{ls} 命令的输出格式必须正确 (\GNU \code{ls} 是没
问题的)。要保证数据库及时更新,最简单的方法是定期通过 \code{cron} 来重建。
如果文件在数据库中找不到,缺省情况下 \KPS{} 会在磁盘上搜索。如果某个特定的路径元素
@@ -1985,7 +2163,7 @@ cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R
\subsubsection{kpsewhich: 独立的路径搜索}
-\label{Invoking-kpsewhich}
+\label{sec:invoking-kpsewhich}
\texttt{kpsewhich} 程序将路径搜索从其他专用程序中独立出来,它可以作为类似 \code{find}
一样的程序,专门在 \TeX{} 层级结构中定位文件 (这在发行版中的 \samp{mktex}\dots\
@@ -2037,7 +2215,7 @@ cd \var{/your/texmf/root} && \path|\|ls -1LAR ./ >ls-R
\subsubsection{使用举例}
-\label{SExamplesofuse}
+\label{sec:examples-of-use}
现在我们看看实际使用 \KPS{} 的例子。这里是一个简单的搜索:
@@ -2152,7 +2330,7 @@ utmro8r NimbusRomNo9L-Regu ... <utmr8a.pfb
功能非常重要,因为 \cmdname{kpsewhich} 只能告诉你找到的第一个文件。
\subsubsection{调试操作}
-\label{Debugging}
+\label{sec:debugging}
有时你可能会需要分析程序是如何解析文件引用的。\KPS{} 提供了多层调试输出来实现这个功能:
@@ -2165,6 +2343,7 @@ utmro8r NimbusRomNo9L-Regu ... <utmr8a.pfb
特定路径。
\item[\texttt{16}] 每个路径元素的目录列表 (只在本地磁盘上搜索时有用)。
\item[\texttt{32}] 文件搜索。
+\item[\texttt{64}] 變量值.
\end{ttdescription}
等级 \texttt{-1} 将启用上述所有选项,实际上这是最方便的设置方法了。
@@ -2229,7 +2408,7 @@ utmro8r NimbusRomNo9L-Regu ... <utmr8a.pfb
\end{alltt}
于是 \cmdname{dvips} 接下来寻找这些文件,再加上固定载入的,通用映射文件
\file{psfonts.map} (这个文件里包含常用 \PS{} 字体的映射,参见第
-\ref{SExamplesofuse} 节的最后一部分,讨论了 \PS{} 映射文件的处理)。
+\ref{sec-examples-of-use} 节的最后一部分,讨论了 \PS{} 映射文件的处理)。
这时候 \cmdname{dvips} 向用户表示它的存在:
\begin{alltt}
@@ -2288,7 +2467,7 @@ kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
为``大型'' \TeX{} 数据结构预留的额外空间:boxes, glue, breakpoint 等。如果你使用
\PiCTeX{} 时特别有用。
\item[\texttt{font\_mem\_size}]
- \TeX{} 用于存储字体数据的 word 数。大致等于载入的所有 TFM 文件的总和。
+ \TeX{} 用于存储字体数据的 word 数。大致等于载入的所有 \acro{TFM} 文件的总和。
\item[\texttt{hash\_extra}]
为存储控制序列而设置的散列表的额外空间。一般散列表足够存储将近 10,000
个控制序列。如果你排版的是一本有大量交叉引用的书籍,这个值可能不够用。默认的
@@ -2311,8 +2490,8 @@ distribution.
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},
+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.
@@ -2345,7 +2524,7 @@ stands for the directory you chose):
\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/info} & \GNU style Info manuals\\
\dirname{$TEXDIR/bin/$PLATFORM} & binaries\\
\end{tabular}
%$
@@ -2824,8 +3003,7 @@ Lua 脚本都能在 Windows 下使用,通过 \TL 内部包含的 Perl。
随着 \cmdname{tlmgr} 到来,禁用了 \cmdname{texconfig} 中编辑格式和
断字配置文件的功能。
-\cmdname{xindy} 索引生成程序 (\url{http://xindy.sourceforge.net/}) 现在
-被包含在大部分平台了。
+今年还提供了大多数平台的 \cmdname{xindy} 索引程序 (\url{http://xindy.sourceforge.net}) 。
\cmdname{kpsewhich} 现在可以报告给定文件的所有匹配 (\optname{--all}
参数) 并限制列出特定目录下的匹配 (\optname{--subdir} 参数)。