troff
编辑troff 是 AT&T 为 Unix 操作系统开发的排版系统。 它允许专业和高质量的排版,包括排版功能,例如不同的字体和样式、间距、段落、页边距、行尾的自动单词断字、脚注和目录,仅举几例。 有显示表格、图表和数学公式的扩展。 troff 是一种标记语言,例如 HTML,因此使用文本编辑器将其编写为纯文本。
几乎所有类 UNIX 系统都使用 troff 来格式化在线文档(手册页)。
troff 和 TeX 相关,因为两者都追求实现高质量排版的目标。 然而,这些方法非常不同,不仅在语法上,而且在程序包和字体的处理上也是如此。
内部结构
编辑Troff可以理解为一个过滤器。 文本文档是使用编辑器创建的,按照文档文本中嵌入的说明,使用 troff 将其翻译成另一种格式。
以前都是用troff输出代码直接曝光照片驱动。 随着其他高分辨率打印方法(如激光打印机)的出现,troff 被重写以生成一种元代码,称为设备独立 troff,或简称 ditroff。 然后进一步的过滤程序从这个中间格式生成最终的、特定于设备的控制代码。
宏
由于 troff 控制命令有时很复杂并且可能在一个文档中出现多次,因此从一开始就提供了创建宏的可能性。 这样,各种 troff 命令,例如缩小字号同时改变左右缩进可以合并为一个宏。 这极大地增加了文档的清晰度,并且类似于 HTML 中的 CSS 或众所周知的图形文字处理器中的样式模板,实现了一次必须更改以进行调整的集中式格式结构,从而避免了文档中的多处更改.
已经为各种文档样式开发了广泛的宏包。 一个典型的 troff 分布包含例如 例如,用于格式化学术论文的 me 宏,用于创建 Unix 手册页的 man 宏,以及用于书籍、技术文档和报告的 ms 宏。
预处理器
当 troff 发展成为 DWB 时,各种预处理器程序的工作开始了,因为并不是所有的东西都可以在 troff 中轻松实现。 这些程序再次作为过滤器将文档的某些部分转换为 troff 输入。 这些过滤器程序有自己的语法,并根据某些关键命令(正好覆盖一行)识别 troff 文档中的代码,并将其间的代码翻译成 troff 控制命令(请求)。
nroff 为行式打印机、菊花轮打印机、计算机终端等基于字符的设备生成输出。不适用的命令(如字体更改)将被忽略。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/371995/