前言: 文章内容包含:
- TeX 发展介绍,包括引擎、格式、发行版本等。
- 诸多中间文件的介绍。
文章目录
- 0. 写在前面
- 1. 一些基本知识
- 1.1 发展历程
- 1.1.1 引擎
- 1.1.2 格式
- 1.1.3 打包版本
- 1.1.3 发行版本
- 1.2 编译过程
0. 写在前面
用 LaTeX 编写文档,在公司电脑配置好 LaTeX 环境后,直接套用已有模板,老出现莫名其妙、难以理解的问题,一天时间都没解决。
气不过,遂,自给自足。
空闲时间学习,持续补充相关内容。
1. 一些基本知识
1.1 发展历程
1.1.1 引擎
类似于编译 C++ 的 gcc 一样,与 TeX 对应的是 TeX 引擎。
TeX 引擎有如下几种:
-
Knuth TeX
最早的,高德纳(Donald E. Knuth)为排版文字和数字公式开发的软件。用在 ASCII 字符环境。起始开创之作。
因为比较纯粹,所以使用起来没那么方便,门槛高,因此有了后续改进。目前几乎已经见不到了。
-
e-TeX
标准的基础 TeX 引擎,后面诸多编译器都是在此基础上开发的。不过直接使用此编译器的也较少。
-
pdfTeX
西文世界被广泛应用的 TeX 编译器。
-
LuaTeX
给 TeX 加入了 Lua 脚本支持,同时支持 Unicode 编码,也可以通过 Lua 加入中日韩字符 (CJK) 字符支持,但编译起来比较慢。
-
XeTeX
e-TeX 的另一分支扩展。支持 Unicode 编码,中文支持可以通过加入 xeCJK宏包 方式实现。因为对中文的支持比较成熟,因此被广泛使用。
-
pTeX
后续诸多 TeX 引擎统称。支持中日韩字符 (CJK),来源日本,对日语支持最好。
1.1.2 格式
宏是把一些命令组织一起,实现某一特定任务。TeX 中格式就是一些基础宏的集合。
为了排版,不可能所有代码都亲力亲为。为了方便,通过组合一些指令实现一些常用功能,再次使用时直接调用即可。这也就是宏的作用。
而集合做出的一些基础的宏,就可以发布为一个格式 (format)。目前常用格式有
-
plain TeX
由 Donald E. Knuth 开发的,最为基础。
-
LaTex
由 Leslie Lamport 博士开发,基本理念是分离内容和格式,让作者更能够专注于内容创作而非格式。应用最为广泛。
当前版本为 LaTeX2e,其含义为第二版plus版本,但为达到第三版程度。
-
ConTeXt
1.1.3 打包版本
引擎与格式其实是分开的
在每次进行排版工作时,你需要指定所用引擎和所用格式。
目前人们倾向于把两者直接打包到一起,况且现在最流行的格式是 LaTex(这也是为什么现在流行说 用 LaTex 排版,而非 TeX)。
以 LaTex 格式为例,
所用引擎 | 所用格式 | 打包版本 | 说明 |
---|---|---|---|
e-TeX | LaTeX | LaTeX | 较原始 |
pdfTeX | LaTeX | pdfLaTeX | 西文 |
LuaTeX | LaTeX | LuaLaTeX | 凑合 |
XeTeX | LaTeX | XeLaTeX | 中、西文 |
pTeX | LaTeX | pLaTeX | 新颖 |
现在常提到的引擎,大多指引擎和格式的打包。下文中也是如此。
在实际编译中,可以在命令行中使用诸如以下命令(注意:要配置好系统环境变量)
>> pdflatex FileName
或
>> xelatex Filename
当然也可以不用自己在命令行输入代码进行编译,可以使用一些发行版本自带编辑器中的编译选项。如以简洁著称的 TeX works editor,进行编译选择
1.1.3 发行版本
在【格式】中为了方便,我们是把一些宏集合到一起。但这些宏都是很基础和通用的(如辩证法中的一般性所述)。
有些宏或功能可能针对某一特定人群比较常用,同时也为了避免重复造轮子,就需要另外一些宏包的加入。于是就有了 TeX发行版或TeX套装。
这些发行版或套装其实也并非仅仅在引擎、格式基础上只增加了额外宏包,而是还加入了诸如驱动、字体、文本编辑器、pdf查看等一系列辅助工具。
目前国内流行的发行版本有
-
TeX Live
适用于 Windows 和 Linux,macOS系统可以使用基于此开发的 macTeX。
-
CTeX
适用于 Windows系统。其是在 MiTex 发行版基础上的扩展,最大特色是解决了中文支持和版式设定问题。
感觉相当臃肿。不推荐。中文问题可以引入相应包来解决。
1.2 编译过程
这部分主要包含 TeX 如何编译的。更确切说是一些中间文件,诸如 *.aux, *.toc, *idx 为啥生成、生成次序以及这些都是干啥的。
待遇到和解决编译问题时补充。
更多推荐
【从零设计 LaTex 模板】1. 一些基础知识
发布评论