09_安装TEX发行版
本文主体内容来自一份 (不太) 简短的 LATEX2ε 介绍。
高德纳的 \(\TeX{}\) 程序开发于 20 世纪 80 年代,那时候电子计算机的运算能力有限,\(\TeX{}\) 还是大型服务器上的玩物。而如今个人计算机完全能够胜任排版的工作,并催生了用于个人计算机的工具集合—— \(\TeX{}\) 发行版的发展。
本章会简单介绍如何安装 \(\TeX{}\) 发行版,以及保持发行版的内容紧跟最新。后者非常重要,因为 \(\LaTeX{}\) 宏包是不断更新换代的。
\(\TeX{}\) 发行版简介
一个 \(\textbf{\)\TeX{}$ 发行版}$ 是 \(\TeX{}\) 排版引擎、支持排版的文件(基本格式、\(\LaTeX{}\) 宏包、字体等)以及一些辅助工具的集合。各式各样的 \(\TeX{}\) 发行版经过十多年的发展,大浪淘沙,现今的两个主流发行版为:
-
\(\textbf{TeX Live}\)
\(\textrm{TeX Live}\) 由类 UNIX 系统上的 \(\textrm{teTEX}\) 发展并取而代之,最终成为跨平台的 \(\TeX{}\) 发行版。\(\textrm{TeX Live}\) 自 2011 年起以年份作为发行版的版本号,保持了一年一更的频率。\(\textrm{MacTeX}\) 是 macOS(OS X)系统下的一个定制化的 \(\textrm{TeX Live}\) 版本,与 \(\textrm{TeX Live}\) 同步更新。
-
\(\textbf{MiKTeX}\)
\(\textrm{MiKTeX}\) 是主要用于 Windows 平台的一个稳定发展的 \(\TeX{}\) 发行版。在中国大陆曾经发行过“\(\textrm{CTeX}\) 套装”,它是一个经过本地化配置的 \(\textrm{MiKTeX}\),不过其配置较为过时,也不再有更新支持,使用起来可能有诸多问题,现已不推荐使用。
\(\textrm{TeX Live}\) 和 \(\textrm{MiKTeX}\) 都集成了一个简单的 \(\LaTeX{}\) 源代码编辑器 TeXworks(\(\textrm{MacTeX}\) 则集成了类似的 TeXShop)。用户在安装完毕后,可直接使用 TeXworks 编写和编译 \(\LaTeX{}\) 源代码。
安装发行版
\(\textbf{TeX Live}\)
\(\textrm{TeX Live}\) 的光盘镜像发布于 https://www.tug.org/texlive/,下载镜像到本地,挂载到虚拟光驱,或者用压缩工具解压后,在其根目录有几个用于安装的脚本:
-
用于 Windows 的批处理文件:
-
\(\texttt{install-tl-windows.bat}\) 双击启动图形界面安装程序,可以在图形安装界面的 Advanced 选项中定制安装;
-
在命令提示符中输入 \(\texttt{install-tl-windows.bat -no-gui}\) 启动文本界面安装程序。
-
-
用于 Linux 的 Perl 脚本 \(\texttt{install-tl}\) :
-
\(\texttt{install-tl}\) 启动文本界面安装程序;
-
\(\texttt{install-tl -gui}\) 启动图形界面安装程序。
-
另外也可以下载在线安装程序 \(\texttt{install-tl.zip}\),包含以上所有安装脚本。安装过程中会从 CTAN 软件源下载所有组件。
Linux 下 \(\textrm{TeX Live}\) 安装完毕后,一般还需要在 root 权限下进行以下操作,使得 \(\textrm{XeLaTeX}\) 能正确通过 fontspec
等宏包使用字体(https://www.tug.org/texlive/doc/texlive-zh-cn/texlive-zh-cn.pdf,可用 \(\texttt{texdoc texlive-zh-cn}\) 在本地打开。):
- 将 \(\texttt{texlive-fontconfig.conf}\) 文件复制到 \(\texttt{/etc/fonts/conf.d/09-texlive.conf}\)。
- 运行 \(\texttt{fc-cache -fsv}\)。
\(\textbf{MiKTeX}\)
从 \(\textrm{MiKTeX}\) 官网 https://www.miktex.org/ 下载名为 \(\texttt{basic-miktex-***.exe}\) 的 Windows 安装包。下载后直接双击打开,按照程序的提示进行安装即可。
安装和更新宏包
\(\textrm{TeX Live}\) 和 \(\textrm{MiKTeX}\) 分别提供了图形界面的宏包管理器 \(\textrm{TEX Live Manager}\) 和 \(\textrm{MiKTeX Package Manager}\),用于安装、管理和更新宏包。一般情况下,直接在图形界面的工具下按提示操作即可(\(\textrm{MiKTeX Package Manager}\) 有普通权限和管理员权限的版本,建议总是使用管理员权限的版本)。
两者也可以通过各自的命令行工具安装和更新宏包:
% TeX Live 命令行工具 tlmgr 的使用示例
% 安装/卸载宏包
tlmgr install <package-name>
tlmgr remove <package-name>
% 更新所有宏包(包括 tlmgr 本身)
tlmgr update --all --self
% 列出所有可更新的宏包
tlmgr update --list
% 指定更新源地址
% <CTAN mirrors> 形如 https://mirrors.tuna.tsinghua.edu.cn/CTAN
tlmgr repository set <CTAN mirrors>/systems/texlive/tlnet
% 查看宏包信息,加 --list 参数可列出宏包的所有文件
tlmgr info <package-name>
% MiKTeX 命令行工具 mpm 的使用示例
% 建议始终加 --admin 参数使用
% 安装/卸载宏包
mpm --admin --install <package-name>
mpm --admin --uninstall <package-name>
% 更新所有宏包
mpm --admin --update
% 列出所有可更新的宏包
mpm --admin --find-updates
% 指定更新源地址
mpm --admin --set-repository=<CTAN mirrors>/systems/win32/miktex/tm/packages
% 查看宏包信息
mpm --admin --print-package-info <package-name>
\(\textrm{TeX Live}\) 默认安装所有宏包, \(\textrm{MiKTeX}\) 的安装程序只包含了 \(\LaTeX{}\) 的一些基本宏包。从 \(\textrm{TeX Live}\) 的光盘镜像和 \(\textrm{MiKTeX}\) 的安装包体积可见一斑。
默认情况下,编译过程中如果遇到宏包未安装而报错的情况下,\(\textrm{MiKTeX}\) 会弹出一个对话框,让用户可以选择临时安装宏包,安装成功后继续编译。
手动安装宏包
\(\textbf{\textcolor{red}{如非万不得已,尽量不要手动安装宏包}}\)。绝大多数宏包都已打包到 \(\textrm{TeX Live}\) 和 \(\textrm{MiKTeX}\) 两大发行版的安装源,可用宏包管理器安装。如果用户知道某个宏包的名称,但不确定是否在发行版中已打包,可在 CTAN 中搜索。
如果确实有手动安装宏包的需要,本小节的内容将有所帮助。在手动安装之前,有必要了解一下 \(\TeX{}\) 目录结构(\(\TeX{}\) Directory Structure, TDS)。它是 \(\TeX{}\) 发行版中宏包、字体、帮助文档等文件的组织结构。TDS 有时也称为 \(\textrm{TEXMF}\) 树,取 \(\TeX+\textrm{METAFONT}\) 之意。
以 \(\textrm{TeX Live}\) 为例,假设系统的 \(\textrm{TEXMF}\) 树根目录为 \(\textrm{C:\\texlive\\2020\\texmf-dist}\),其下有很多子目录,仅举几例:
- \(\texttt{tex/latex}\) \(\LaTeX{}\) 宏包。
- \(\texttt{doc/latex}\) \(\LaTeX{}\) 宏包的帮助文档。
- \(\texttt{source/latex}\) \(\LaTeX{}\) 宏包的源代码。
- \(\texttt{bibtex}\) \(\textrm{BibTeX}\) 工具相关文件,许多宏包配套的 \(\textrm{BibTeX}\) 格式文件位于子目录 \(\texttt{bst}\) 中。
- \(\texttt{fonts/tfm}\) $ \TeX{}$ 使用的字体文件,\(\textrm{TFM}\) 格式。
- \(\texttt{fonts/type1}\) \(\textrm{PostScript}\) 字体文件(\(\textrm{Type1}\)),\(\textrm{PFB}\) 格式。
- \(\texttt{fonts/opentype}\) \(\textrm{OpenType}\) 格式的字体文件。
需要手动安装的宏包,一般已经按照上述目录结构打包完成。手动安装时,尽量不要拷贝到系统的 \(\textrm{TEXMF}\) 树,而是拷贝到发行版提供的用户 \(\textrm{TEXMF}\) 树,如 \(\textrm{TeX Live}\) 的 \(\textrm{C:\\texlive\\texmf-local}\)。安装完成后,还需$\textbf{刷新 \(\TeX{}\) 发行版的文件名数据库}\(,令新安装的宏包文件能够被系统找到。\)\textrm{TeX Live}$ 用户须在 Windows 命令行或者 Linux 终端执行命令:
mktexlsr
\(\textrm{MiKTeX}\) 用户的命令为:
initexmf --update-fndb