$\LaTeX{}$ 之安装TEX发行版(九)
本文主体内容来自一份 (不太) 简短的 LATEX2ε 介绍。
本章会简单介绍如何安装 \(\TeX{}\) 发行版,以及保持发行版的内容紧跟最新。后者非常重要,因为 \(\LaTeX{}\) 宏包是不断更新换代的。
\(\TeX{}\) 发行版简介
一个 \(\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}\)
的安装和使用指南可参考文档,
可用 texdoc texlive-zh-cn
在本地打开。
\(\textrm{TeX Live}\) 的光盘镜像发布于 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
等宏包使用字体:
- 将 \(\texttt{texlive-fontconfig.conf}\) 文件复制到 \(\texttt{/etc/fonts/conf.d/09-texlive.conf}\)。
- 运行 \(\texttt{fc-cache -fsv}\)。
\(\textbf{MiKTeX}\)
从 \(\textrm{MiKTeX}\) 官网 下载名为 \(\texttt{basic-miktex-***.exe}\) 的 Windows 安装包。下载后直接双击打开,按照程序的提示进行安装即可。
安装和更新宏包
\(\textrm{TeX Live}\) 和 \(\textrm{MiKTeX}\) 分别提供了图形界面的宏包管理器 \(\textrm{TEX Live Manager}\) 和 \(\textrm{MiKTeX Package Manager}\),用于安装、管理和更新宏包。一般情况下,直接在图形界面的工具下按提示操作即可(\(\textrm{MiKTeX Package Manager}\) 有普通权限和管理员权限的版本,建议总是使用管理员权限的版本)。
两者也可以通过各自的命令行工具安装和更新宏包:
1 | % TeX Live 命令行工具 tlmgr 的使用示例 |
1 | % MiKTeX 命令行工具 mpm 的使用示例 |
\(\textrm{TeX Live}\) 默认安装所有宏包, \(\textrm{MiKTeX}\) 的安装程序只包含了 \(\LaTeX{}\) 的一些基本宏包。从 \(\textrm{TeX Live}\) 的光盘镜像和 \(\textrm{MiKTeX}\) 的安装包体积可见一斑。 默认情况下,编译过程中如果遇到宏包未安装而报错的情况下,\(\textrm{MiKTeX}\) 会弹出一个对话框,让用户可以选择临时安装宏包,安装成功后继续编译。
手动安装宏包
\(\textcolor{red}{如非万不得已,尽量不要手动安装宏包}\)。绝大多数宏包都已打包到 \(\textrm{TeX Live}\) 和 \(\textrm{MiKTeX}\) 两大发行版的安装源,可用宏包管理器安装。如果用户知道某个宏包的名称,但不确定是否在发行版中已打包,可在 \(\textrm{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}\) | $ $ 使用的字体文件,\(\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}\)。安装完成后,还需刷新 \(\TeX{}\) 发行版的文件名数据库,令新安装的宏包文件能够被系统找到。\(\textrm{TeX Live}\) 用户须在 Windows 命令行或者 Linux 终端执行命令:
1 | mktexlsr |
\(\textrm{MiKTeX}\) 用户的命令为:
1 | initexmf --update-fndb |
参考文献
[1] Partl H, Hyna I, Schlegl E. 一份 (不太) 简短的 LATEX2ε 介绍[J].
2024. https://github.com/CTeX-org/lshort-zh-cn