troff - groff
文档排版系统的 troff
处理器
总览 SYNOPSIS
troff [ -abcivzCERU ]
[ -dcs ] [ -ffam ]
[ -Fdir ] [ -mname ]
[ -Mdir ] [ -nnum ]
[ -olist ] [ -rcn ]
[ -Tname ]
[ -wname ]
[ -Wname ] [ files... ]
在一个命令行选项与其参数之间可以有空格。
描述 DESCRIPTION
这份手册页描述了
GNU 版本的 troff. 它是 groff
文档排版系统的一部分。
它与 UNIX troff
的功能兼容,但是有很多的扩展,参见
groff_diff(7). 通常它应当用
groff(1) 命令调用,groff
会以合适的顺序和合适的选项,运行预处理器和后处理器。
选项 OPTIONS
- -a
- 产生一个排版输出的
ASCII 近似结果 (approximation)
- -b
- 在每条错误或警告消息中打印回溯信息
此信息可以帮助跟踪错误的原因
信息中的行号可能有误,因为
troff
中行号的意义与请求类型是
as 还是 am 有关
- -c
- 禁止颜色输出
(兼容模式下总是禁止)
- -C
- 使用兼容模式
- -dcs
- -dname=s
- 定义 c 或 name
是一个字符串 s; c
必须是单字符的一个名称
- -E
- 阻止 troff 的错误输出.
注意这不影响发出 tm
或 tm1
请求的宏包发出的错误消息向标准错误输出
- -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
意思是打印 m 到 n
之间的所有页面, -n
意思是打印直到 n
的所有页面, n-
意思是打印从 n
开始的所有页面,直到结束.
troff
打印完列表中的最后一页后将退出
- -rcn
- -rname=n
- 设置数字寄存器 c 或
name 为 n; c
必须是单字符的一个名称,
n 可以是任何 troff
数字表达式
- -R
- 不读取 troffrc 和 troffrc-end.
- -Tname
- 为设备 name
而不是默认的 ps
准备输出
- -U
- 不全模式
这将允许下列请求
open, opena, pso, sy, 和 pi.
出于安全原因,这些潜在的危险的请求在其他情况下被禁止。
同时它将当前目录加入宏搜索路径
- -v
- 打印版本号
- -wname
- 允许发出 name
警告。可能的警告名称在下面的
警告 WARNINGS 章节中详述
例如,要允许所有警告,使用
-w all. 允许使用多个
-w 选项
- -Wname
- 禁止发出 name
警告。允许使用多个
-W 选项
- -z
- 阻止格式化的输出
警告 WARNINGS
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)
而使用了不带参数的
di 或 da
- 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
- 所有警告
环境 ENVIRONMENT
- 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) 最后搜索它
文件 FILES
- /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
的字体文件
注意默认情况下既不在当前目录也不在个人目录搜索
troffrc 和 troffrc-end
,因为安全的原因
(即使给出了 -U
选项)。
如果有必要,使用 -M
命令行选项或者
GROFF_TMAC_PATH
环境变量来将这些路径添加到搜索路径中
作者 AUTHOR
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
套件的一部分
参见 SEE ALSO
- groff(1)
- groff 系统的主程序,
troff 的包装.
- groff(7)
- groff
语言的描述,包括一个虽然短但是完整的手册,内容是所有预定义的
请求 (request),寄存器 (register)
和 groff 正文的转义 (escapes of
plain groff).
可以在命令行查看,使用命令
- groff_diff(7)
- groff 语言和传统的 classical
troff 语言不同之处。
当前,这是 groff
系统最为现实 (actual)
的一篇文档
- roff(7)
- 对 groff 和其他 roff
系统的概述,包括更多相关文档的链接
groff info file, 参见 (cf.)
info(1), 将所有 groff
文档整合到了单独的一篇文档中
《中国linux论坛man手册翻译计划》:
http://cmpp.linuxforum.net
跋
本页面中文版由中文
man 手册页计划提供。
中文 man
手册页计划:https://github.com/man-pages-zh/manpages-zh