Arch manual pages

TROFF(1) General Commands Manual TROFF(1)

troff - groff 文档排版系统的 troff 处理器


troff-abcivzCERU ] [ -dcs ] [ -ffam ] [ -Fdir ] [ -mname ] [ -Mdir ] [ -nnum ] [ -olist ] [ -rcn ] [ -Tname ] [ -wname ] [ -Wname ] [ files... ]

在一个命令行选项与其参数之间可以有空格。

这份手册页描述了 GNU 版本的 troff. 它是 groff 文档排版系统的一部分。 它与 UNIX troff 的功能兼容,但是有很多的扩展,参见 groff_diff(7). 通常它应当用 groff(1) 命令调用,groff 会以合适的顺序和合适的选项,运行预处理器和后处理器。

-a
产生一个排版输出的 ASCII 近似结果 (approximation)
-b
在每条错误或警告消息中打印回溯信息 此信息可以帮助跟踪错误的原因 信息中的行号可能有误,因为 troff 中行号的意义与请求类型是 as 还是 am 有关
-c
禁止颜色输出 (兼容模式下总是禁止)
-C
使用兼容模式
-dcs
-dname=s
定义 cname 是一个字符串 s; c 必须是单字符的一个名称
-E
阻止 troff 的错误输出. 注意这不影响发出 tmtm1 请求的宏包发出的错误消息向标准错误输出
-ffam
使用 fam 作为默认字体族
-Fdir
在目录中 (或目录路径中) 搜索 dir 子目录 devname (name 是设备的名称) 查找其中的 DESC 文件和字体文件 dir 在所有其他字体目录之前查找
-i
处理完所有输入文件后继续从标准输入读入
-mname
读入文件 name.tmac. 如果没有找到,则去读 tmac.name 它将先在 -M 命令行参数给定的目录中搜索,然后是 GROFF_TMAC_PATH 环境变量中的目录,然后是当前目录 (安全模式不会做这一步), 然后是个人目录,/usr/lib/groff/site-tmac, /usr/share/groff/site-tmac 还有 /usr/share/groff/1.18.1/tmac.
-Mdir
搜索目录 (或目录路径) dir 查找宏文件 检索在所有其他宏目录之前进行
-nnum
为第一页编号 num.
-olist
仅输出 list 中指定的页,参数是一个以逗号分隔的页号范围的列表; n 意思是打印页面 n, m-n 意思是打印 mn 之间的所有页面, -n 意思是打印直到 n 的所有页面, n- 意思是打印从 n 开始的所有页面,直到结束. troff 打印完列表中的最后一页后将退出
-rcn
-rname=n
设置数字寄存器 cnamen; c 必须是单字符的一个名称, n 可以是任何 troff 数字表达式
-R
不读取 troffrctroffrc-end.
-Tname
为设备 name 而不是默认的 ps 准备输出
-U
不全模式 这将允许下列请求 open, opena, pso, sy, 和 pi. 出于安全原因,这些潜在的危险的请求在其他情况下被禁止。 同时它将当前目录加入宏搜索路径
-v
打印版本号
-wname
允许发出 name 警告。可能的警告名称在下面的 警告 WARNINGS 章节中详述 例如,要允许所有警告,使用 -w all. 允许使用多个 -w 选项
-Wname
禁止发出 name 警告。允许使用多个 -W 选项
-z
阻止格式化的输出

troff 可以发出的警告分为下列类别 每种警告关联的名称在 -w-W 选项中使用;关联的数字被 warn 请求和 .warn 寄存器使用, 它总是 2 的幂,以允许位运算

Bit Code Warning Bit Code Warning
0 1 char 10 1024 reg
1 2 number 11 2048 tab
2 4 break 12 4096 right-brace
3 8 delim 13 8192 missing
4 16 el 14 16384 input
5 32 scale 15 32768 escape
6 64 range 16 65536 space
7 128 syntax 17 131072 font
8 256 di 18 262144 ig
9 512 mac 19 524288 color

break 4
在填充 (fill) 模式下,不可分行的行的长度 比行的长度要小。 In fill mode, lines which could not be broken so that their length was less than the line length. 此警告是默认允许的
char 1
不存在的字符。 此警告是默认允许的
color 524288
颜色相关的警告
delim 8
关闭定界符丢失或不匹配
di 256
没有当前转移 (current diversion) 而使用了不带参数的 dida
el 16
使用 el 请求但是没有相应的 ie 请求
escape 32768
不可识别的转义序列。 当遇到一个不可识别的转义序列时,转义字符被忽略
font 131072
不存在的字体。 此警告是默认允许的
ig 262144
ig 请求忽略的文本中的非法转义。 如果不是在被忽略的文本中,它们将是错误
input 16384
非法输入字符
mac 512
使用未定义的字符串,宏和标号 (diversions) (?). 当使用一个未定义的字符串,宏或标号 (diversions) 时,字符串被自动定义为空。 因此,在大多数情况下,每个名字最多会给出一个警告
missing 8192
请求缺少必要的参数
number 2
非法数值表达式。 此警告是默认允许的
range 64
超出范围的参数
reg 1024
使用未定义的数字寄存器。 当使用一个未定义的数字寄存器时,寄存器被自动定义为值  0。 因此,大多数情况下,使用一个特定的名字最多会得到一个警告
right-brace 4096
在应当使用数字的地方使用了 \}
scale 32
无意义的比例指示 (scaling indicators).
space 65536
在一个请求或宏与其参数之间缺少空格。 当遇到一个两个字符以上的未定义名字,并且名字的前两个字符是一个已定义的名称时将给出这个警告, 请求或宏不会执行。 当给出这个警告时,不会自动定义宏。 此警告是默认允许的。 在兼容模式下不会发生这种警告
syntax 128
数值表达式中语法有歧义
tab 2048
不合适地使用了 tab 字符。 在应当使用数字的地方使用了tab字符,或者在一个未用双引号引用的宏参数中使用tab 时会发生

也有可以引用一组警告的名称

all
所有的警告,除了 di, mac, 和 reg. 它的目的是指代所有在传统的宏包中有用的警告
w
所有警告

GROFF_TMAC_PATH
一个以冒号分隔的目录的列表,从中搜索宏文件 troff 将先搜索 -M 选项给出的目录,以及标准的路径 ( 当前目录 (如果是不安全模式),个人目录 /usr/lib/groff/site-tmac, /usr/share/groff/site-tmac, /usr/share/groff/1.18.1/tmac) 最后搜索它
GROFF_TYPESETTER
默认设备
GROFF_FONT_PATH
一个以冒号分隔的目录的列表,从中搜索 devname 目录。 troff 将先搜索 -F 选项给出的目录,以及标准的路径 (/usr/share/groff/site-font, /usr/share/groff/1.18.1/font, /usr/lib/font) 最后搜索它

/usr/share/groff/1.18.1/tmac/troffrc
初始化文件 (在任何其他宏包之前调用).
/usr/share/groff/1.18.1/tmac/troffrc-end
初始化文件 (在任何其他宏包之后调用).
/usr/share/groff/1.18.1/tmac/name.tmac
/usr/share/groff/1.18.1/tmac/tmac.name
宏文件
/usr/share/groff/1.18.1/font/devname/DESC
设备 name 的设备描述文件.
/usr/share/groff/1.18.1/font/devname/F
设备 name 的字体 F 的字体文件

注意默认情况下既不在当前目录也不在个人目录搜索 troffrctroffrc-end ,因为安全的原因 (即使给出了 -U 选项)。 如果有必要,使用 -M 命令行选项或者 GROFF_TMAC_PATH 环境变量来将这些路径添加到搜索路径中

Copyright (C) 1989, 2001, 2002 Free Software Foundation, Inc.

此文档按照 FDL (GNU Free Documentation License) 1.1 或更新版本的要求发布。 You should have received a copy of the FDL on your system, it is also available on-line at the This document was written by James Clark, with modifications from 和

此文档是 groff GNU roff 套件的一部分

groff(1)
groff 系统的主程序, troff 的包装.
groff(7)
groff 语言的描述,包括一个虽然短但是完整的手册,内容是所有预定义的 请求 (request),寄存器 (register) 和 groff 正文的转义 (escapes of plain groff). 可以在命令行查看,使用命令
man 7 groff
groff_diff(7)
groff 语言和传统的 classical troff 语言不同之处。 当前,这是 groff 系统最为现实 (actual) 的一篇文档
roff(7)
groff 和其他 roff 系统的概述,包括更多相关文档的链接

groff info file, 参见 (cf.) info(1), 将所有 groff 文档整合到了单独的一篇文档中

bbbush <bbbush@163.com>

2003.11.25

http://cmpp.linuxforum.net

本页面中文版由中文 man 手册页计划提供。
中文 man 手册页计划:https://github.com/man-pages-zh/manpages-zh
16 September 2002 Groff Version 1.18.1