[size=small] TeX 提供了一套功能强大并且十分灵活的[b]排版语言[/b],它多达 900 多条指令,并且 TeX 有[b]宏功能[/b],用户可以不断地定义自己适用的新命令来扩展 TeX 系统的功能。许多人利用 TeX 提供的宏定义功能对 TeX 进行了[b]二次开发[/b],其中比较著名的有美国数学学会推荐的非常适合于数学家使用的 AMS-TeX 以及适合于一般文章、报告、书籍的 [b]LaTeX[/b] 系统。
TeX 系统是公认的数学公式排得最好的系统。美国数学学会(AMS) 鼓励数学家们使用 TeX 系统向它的期刊投稿。世界上许多一流的出版社如 Kluwer、Addison-Wesley、牛津大学出版社等也利用 TeX 系统出版书籍和期刊。
大部分的 TeX 系统都是免费的。Knuth 教授还公开了他的全部源程序。TeX 系统目前已经在数百种计算机系统上得到实现。TeX 系统的排版结果 [b]DVI[/b](DeVice Independent)文件与输出设备无关。DVI 文件可以显示、打印、照排,几乎可以在所有的输出设备上输出。TeX 排版源文件及结果在各种计算机系统上互相兼容。[/size]
[size=large][b]TeX 的历史[/b][/size]
[size=small] 七十年代末,Donald E. Knuth(高德纳) 在看到其多卷巨著“The Art of Computer Programming”第二卷的校样时,对由计算机排版的校样的低质量感到无法忍受。因此决定自己来开发一个高质量的计算机排版系统,这样就有了 TeX 。
TeX 的第一版于 1978 年面世。在经过了不断的改进后,1982 年版的 TeX 是一个十分稳定的版本。从此以后,TeX 没有较大的变动,只有很少部分的改进和错误修正。现在几乎所有的操作系统平台下,都有相应的 TeX 软件,而且用它们排版同一个文件得到的输出结果是相同的。TeX 目前的版本是 3.141592,很接近圆周率π。每有一新的版本,就会加上一个π的小数点后的数。所以我们已经知道下一版本的 TeX 是 3.1415926,最终将收敛到π。这也代表了 TeX 不断追求完美的理想。
TeX 的源程序是用 Pascal 写成的,原因是 Knuth 希望 TeX 尽可能方便地移植到其它的操作系统中去。当时 Pascal 是最适合于这一要求的编程语言。这也使得 TeX 现在已经在几乎所有的计算机系统中得到实现。
TeX 的另一个重要的特征就是它的输出是与设备无关的。TeX 的输出文件称为 DVI 文件,即是“Device Independent”。一旦 TeX 处理了你的文件,你所得到的 DVI 文件就可以被送到任何输出设备如打印机,屏幕等并且总会得到相同的结果,而这与这些输出设备的限制没有任何关系。这说明 DVI 文件中所有的元素,从页面设置到文本中字符的位置都被固定,不能更改。
TeX 现在已经被它的开发者 Knuth 所“冰封”(frozen),新版本的 TeX 只有少许改进和错误修正。这些变动必须保证不会使得即使是写于 1982 年的 TeX 文档无法编译,TeX 自带了测试文件来确保这一点。如果测试文件文件的输出结果不同于预定的结果,那么这个排版系统就不能够被称为“TeX”。所以像一些对 TeX 有很大改进的软件,如“Omega”等将不能被称为“TeX”,尽管它也是基于“TeX”的。
在设计 TeX 的同时,Knuth 还设计了一个字体生成程序 MetaFont。MetaFont 是独立于 TeX 之外的,但又与 TeX 有着非常密切的联系。MetaFont 生成的只是位图字体,当对字体进行缩放时的效果不佳。对于如何得到像 Type1 字体一样的轮廓字体,现在还在研究之中。与 TeX 一样,Knuth 也“冰封”了 MetaFont 。所以 MetaFont 的进一步的改进和发展将会由其他人来完成,而且名字也将不再是 MetaFont 。[/size]
[size=large][b]TeX 格式[/b][/size]
[size=small] 最基本的 TeX 程序只是由一些很原始的命令组成,它们可以完成简单的排版操作和程序设计功能。然而,TeX 也允许用这些原始命令定义一些更复杂的高级命令。这样就可以利用低级的块结构,形成一个用户界面相当友好的环境。
在处理器运行期间,该程序首先读取所谓的格式文件,其中包含各种以原始语言写成的高级命令,也包含分割单词的连字号安排模式。接着处理程序就处理源文件,其中包含要处理的真正文本,以及在格式文件中已定义了的格式命令。
创建新格式是一件需要由具有丰富知识程序员来做的事情。把定义写到一个源文件中,这个文件接着被一个名叫 initex 的特殊版本的 TeX 程序处理。它采用一种紧凑的方式存贮这些新格式,这样就可以被通常 TeX 程序很快地读取。[/size]
[size=large][b]Plain TeX[/b][/size]
[size=small] Knuth 设计了一个名叫 Plain TeX 的基本格式,以与低层次的原始 TeX 呼应。这种格式是用 TeX 处理文本时相当基本的部分,以致于我们有时都分不清到底哪条指令是真正的处理程序 TeX 的原始命令,哪条是 Plain TeX 格式的。大多数声称只使用 TeX 的人,实际上指的是只用 Plain TeX 。
Plain TeX 也是其它格式的基础,这进一步加深了很多人认为 TeX 和 Plain TeX 是同一事物的印象。[/size]
[size=large][b]LaTeX[/b][/size]
[size=small] Plain TeX 的重点还只是在于如何排版的层次上,而不是从一位作者的观点出发。对它的深层功能的进一步发掘,需要相当丰富的编程技巧。因此它的应用就局限于高级排版和程序设计人员。
Leslie Lamport 开发的 LaTeX 是当今世界上最流行和使用最为广泛的 TeX 格式。它构筑在 Plain TeX 的基础之上,并加进了很多的功能以使得使用者可以更为方便的利用 TeX 的强大功能。使用 LaTeX 基本上不需要使用者自己设计命令和宏等,因为 LaTeX 已经替你做好了。因此,即使使用者并不是很了解 TeX ,也可以在短短的时间内生成高质量的文档。对于生成复杂的数学公式,LaTeX 表现的更为出色。[/size]
[size=large][b]LaTeX2e[/b][/size]
[size=small] LaTeX 自从二十世纪八十年代初问世以来,也在不断的发展。最初的正式版本为 2.09,在经过几年的发展之后,许多新的功能,机制被引入到 LaTeX 中。在享受这些新功能带来的便利的同时,它所伴随的副作用也开始显现,这就是不兼容性。标准的 LaTeX 2.09,引入了“新字体选择框架”(NFSS)的 LaTeX,SLiTeX,AMSLaTeX 等等,相互之间并不兼容。这给使用者和维护者都带来很大的麻烦。
为结束这中糟糕的状况,Frank Mittelbach 等人成立了 LaTeX3 项目小组,目标是建立一个最优的,有效的,统一的,标准的命令集合。即得到 LaTeX 的一个新版本 3。这是一个长期目标,向这个目标迈出第一步就是在 1994 年发布的 LaTeX2e 。LaTeX2e 采用了 NFSS 作为标准,加入了很多新的功能,同时还兼容旧的 LaTeX 2.09。LaTeX2e 每 6 个月更新一次,修正发现的错误并加入一些新的功能。在 LaTeX3 最终完成之前,LaTeX2e 将是标准的 LaTeX 版本。[/size]
TeX 系统是公认的数学公式排得最好的系统。美国数学学会(AMS) 鼓励数学家们使用 TeX 系统向它的期刊投稿。世界上许多一流的出版社如 Kluwer、Addison-Wesley、牛津大学出版社等也利用 TeX 系统出版书籍和期刊。
大部分的 TeX 系统都是免费的。Knuth 教授还公开了他的全部源程序。TeX 系统目前已经在数百种计算机系统上得到实现。TeX 系统的排版结果 [b]DVI[/b](DeVice Independent)文件与输出设备无关。DVI 文件可以显示、打印、照排,几乎可以在所有的输出设备上输出。TeX 排版源文件及结果在各种计算机系统上互相兼容。[/size]
[size=large][b]TeX 的历史[/b][/size]
[size=small] 七十年代末,Donald E. Knuth(高德纳) 在看到其多卷巨著“The Art of Computer Programming”第二卷的校样时,对由计算机排版的校样的低质量感到无法忍受。因此决定自己来开发一个高质量的计算机排版系统,这样就有了 TeX 。
TeX 的第一版于 1978 年面世。在经过了不断的改进后,1982 年版的 TeX 是一个十分稳定的版本。从此以后,TeX 没有较大的变动,只有很少部分的改进和错误修正。现在几乎所有的操作系统平台下,都有相应的 TeX 软件,而且用它们排版同一个文件得到的输出结果是相同的。TeX 目前的版本是 3.141592,很接近圆周率π。每有一新的版本,就会加上一个π的小数点后的数。所以我们已经知道下一版本的 TeX 是 3.1415926,最终将收敛到π。这也代表了 TeX 不断追求完美的理想。
TeX 的源程序是用 Pascal 写成的,原因是 Knuth 希望 TeX 尽可能方便地移植到其它的操作系统中去。当时 Pascal 是最适合于这一要求的编程语言。这也使得 TeX 现在已经在几乎所有的计算机系统中得到实现。
TeX 的另一个重要的特征就是它的输出是与设备无关的。TeX 的输出文件称为 DVI 文件,即是“Device Independent”。一旦 TeX 处理了你的文件,你所得到的 DVI 文件就可以被送到任何输出设备如打印机,屏幕等并且总会得到相同的结果,而这与这些输出设备的限制没有任何关系。这说明 DVI 文件中所有的元素,从页面设置到文本中字符的位置都被固定,不能更改。
TeX 现在已经被它的开发者 Knuth 所“冰封”(frozen),新版本的 TeX 只有少许改进和错误修正。这些变动必须保证不会使得即使是写于 1982 年的 TeX 文档无法编译,TeX 自带了测试文件来确保这一点。如果测试文件文件的输出结果不同于预定的结果,那么这个排版系统就不能够被称为“TeX”。所以像一些对 TeX 有很大改进的软件,如“Omega”等将不能被称为“TeX”,尽管它也是基于“TeX”的。
在设计 TeX 的同时,Knuth 还设计了一个字体生成程序 MetaFont。MetaFont 是独立于 TeX 之外的,但又与 TeX 有着非常密切的联系。MetaFont 生成的只是位图字体,当对字体进行缩放时的效果不佳。对于如何得到像 Type1 字体一样的轮廓字体,现在还在研究之中。与 TeX 一样,Knuth 也“冰封”了 MetaFont 。所以 MetaFont 的进一步的改进和发展将会由其他人来完成,而且名字也将不再是 MetaFont 。[/size]
[size=large][b]TeX 格式[/b][/size]
[size=small] 最基本的 TeX 程序只是由一些很原始的命令组成,它们可以完成简单的排版操作和程序设计功能。然而,TeX 也允许用这些原始命令定义一些更复杂的高级命令。这样就可以利用低级的块结构,形成一个用户界面相当友好的环境。
在处理器运行期间,该程序首先读取所谓的格式文件,其中包含各种以原始语言写成的高级命令,也包含分割单词的连字号安排模式。接着处理程序就处理源文件,其中包含要处理的真正文本,以及在格式文件中已定义了的格式命令。
创建新格式是一件需要由具有丰富知识程序员来做的事情。把定义写到一个源文件中,这个文件接着被一个名叫 initex 的特殊版本的 TeX 程序处理。它采用一种紧凑的方式存贮这些新格式,这样就可以被通常 TeX 程序很快地读取。[/size]
[size=large][b]Plain TeX[/b][/size]
[size=small] Knuth 设计了一个名叫 Plain TeX 的基本格式,以与低层次的原始 TeX 呼应。这种格式是用 TeX 处理文本时相当基本的部分,以致于我们有时都分不清到底哪条指令是真正的处理程序 TeX 的原始命令,哪条是 Plain TeX 格式的。大多数声称只使用 TeX 的人,实际上指的是只用 Plain TeX 。
Plain TeX 也是其它格式的基础,这进一步加深了很多人认为 TeX 和 Plain TeX 是同一事物的印象。[/size]
[size=large][b]LaTeX[/b][/size]
[size=small] Plain TeX 的重点还只是在于如何排版的层次上,而不是从一位作者的观点出发。对它的深层功能的进一步发掘,需要相当丰富的编程技巧。因此它的应用就局限于高级排版和程序设计人员。
Leslie Lamport 开发的 LaTeX 是当今世界上最流行和使用最为广泛的 TeX 格式。它构筑在 Plain TeX 的基础之上,并加进了很多的功能以使得使用者可以更为方便的利用 TeX 的强大功能。使用 LaTeX 基本上不需要使用者自己设计命令和宏等,因为 LaTeX 已经替你做好了。因此,即使使用者并不是很了解 TeX ,也可以在短短的时间内生成高质量的文档。对于生成复杂的数学公式,LaTeX 表现的更为出色。[/size]
[size=large][b]LaTeX2e[/b][/size]
[size=small] LaTeX 自从二十世纪八十年代初问世以来,也在不断的发展。最初的正式版本为 2.09,在经过几年的发展之后,许多新的功能,机制被引入到 LaTeX 中。在享受这些新功能带来的便利的同时,它所伴随的副作用也开始显现,这就是不兼容性。标准的 LaTeX 2.09,引入了“新字体选择框架”(NFSS)的 LaTeX,SLiTeX,AMSLaTeX 等等,相互之间并不兼容。这给使用者和维护者都带来很大的麻烦。
为结束这中糟糕的状况,Frank Mittelbach 等人成立了 LaTeX3 项目小组,目标是建立一个最优的,有效的,统一的,标准的命令集合。即得到 LaTeX 的一个新版本 3。这是一个长期目标,向这个目标迈出第一步就是在 1994 年发布的 LaTeX2e 。LaTeX2e 采用了 NFSS 作为标准,加入了很多新的功能,同时还兼容旧的 LaTeX 2.09。LaTeX2e 每 6 个月更新一次,修正发现的错误并加入一些新的功能。在 LaTeX3 最终完成之前,LaTeX2e 将是标准的 LaTeX 版本。[/size]

被折叠的 条评论
为什么被折叠?



