refer [ -b ] [ -e ] [ -P ] [ -S ] [ -a [ Number ] ] [ -B Label.Macro ] [ -c Keys ] [ -f Number | -k Label | -l Letter, Digit ] [ -n ] [ -p Reference ] [ -s Keys ] [ File ... ]
refer 命令是 nroff 或troff 命令的预处理器。 refer 命令为脚标和尾注查找并格式化引用。它也是为索引、搜索、排序和打印独立文献目录或以相应格式输入的其它数据而设计的一系列程序的基础。
用十分准确的关键字给定不完全的引用,refer 命令会在文献目录数据库的标题、作者、日志等任何地方查找包含这些关键字的引用。除了哪些用 .[(句号、左括弧)和 .] (句号、右括弧)定界符包围的行外,输入文件(或其它的标准输入)被复制到标准输出。用定界符包围的行被假定包含关键字,并用来自文献目录数据库的信息替换。用户可以搜索不同的数据库,覆盖特定的字段或添加新字段。无论是来自怎样的源,引用数据被分配给一组 troff 命令字符串。宏软件包,例如 ms 宏软件包,打印来自这些字符串的完成的引用文本。缺省情况下,引用用脚标数字标记。
为使用自己的引用,把它们放入在 Example 部分描述的格式中。可以通过对那些引用文件使用 -p 标志或设置 REFER 环境变量来访问引用。 在使用 refer 命令之前,可以通过对引用执行 indxbib 命令来更快地搜索该引用。如果不建立索引,就进行线性查找。当 refer 命令与预处理器命令(eqn, neqn, 或 tbl 命令)一起使用时,应首先发出 refer 命令,以将通过管道的数据量最小化。
注: 任何时候当编辑引用时,必须在该文件上重新发出 indxbib 命令。如果不使用 indxbib 命令,除去所有与该引用文件相关的任何 .ia、.ib、 .ic 和 .ig;否则,会得到来自 refer 命令的过多命中 错误消息。
refer 命令和相关的程序希望输入来自由空格行分隔的记录组成的引用文件。一条记录是一组字段(行),每个字段(行)包含一种信息。字段在以 % (百分符号)开头的行处开始,后面接有键字母、空格字符,最后是字段的内容,这样继续直到以 % (百分符号)开头的下一行。字段的输出次序和格式编排由 nroff 和 troff 命令(对脚标和尾注)或 roffbib 命令(对独立书目)指定的宏控制。 对于大多数普通键字母和它们的相应字段的列表,请参阅 addbib 命令。
-b | 空方式:不在文本中放置任何标志(数字或标号)。 |
-e | 积累遇到的引用而不是放弃它们,直到达到下列格式序列。
.[ $LIST$ .] 写出到目前所收集到的全部引用。 |
-P | 在引用信号后而不是在其前放置标点标记。该标点是特定于语言环境的(locale-specific )并在 refer 消息编目定义。 |
-S | 以自然或社会科学格式产生引用。 |
-a Number | 颠倒作者名字的首个指定数字(Jones, J. A. 代替 J. A. Jones)。如果省略了 Number 变量,则颠倒全部作者名称。 |
-B Label.Macro | 指定文献目录方式。获得一个由空行分隔的记录组成的文件,并把该文件转成 troff 命令输入。指定的标号转成指定的宏,Label 变量值缺省为 %X 并且 .Macro 变量值缺省为 .AP (注释段落)。 |
-c Keys | 以 SMALL CAPS,把那些键字母为在Keys 变量中的字段大写字母化。例如,Jack 变为 JACK 。 |
-f Number | 设置脚标数字为指定数字替代缺省值 1。用标号而不是数字,这个标志没有影响。请参阅 -k 标志和 -l 标志。 |
-k Label | 使用在以 %Label 开头的引用数据行中指定的标号,而不是数字引用。 缺省情况下,Label 变量值是 L。 |
-l Letter,Digit | 使用来自高级作者的姓生成的用户标号和发布年,而不是数字引用。只使用姓的第一个指定字母和日期的最后一个指定数字。如果省略了 Letter 变量或 Digit 变量中的其中一个,分别使用全名称或日期。 |
-n | 不搜索缺省的 /usr/share/dict/papers/Ind 文件。如果设置了 REFER 环境变量,那么搜索其指定的文件而不是缺省文件。在这种情况下,-n 标志没有作用。 |
-p Reference | 把 Reference 变量作为要被搜索的引用文件。缺省文件被最后搜索。 |
-s Keys | 通过以 Keys 变量字符串指定其键字母的字段排序引用。以文本相应地重命名引用数字。包含-e 标志。由Keys 变量指定的键字母后面可以跟一个数字以表示使用了多少这样的字段,用 q + (加号)表示一个很大的数字。缺省值是 AD,它首先按高级作者排序之后按日期排序。例如,以全部作者排序之后按标题排序,请输入 -sA+T。
注意文献目录字段中的行末尾的空格会引起错误地排序和颠倒字段,这是很重要的。 排序大量的引用可导致核心转储。 |
以下是一个 refer 命令项示例:
/usr/share/dict/papers/Ind | 包含缺省引用文件。 |
/usr/lbin/refer | 包含 companion 程序。 |
eqn 命令、addbib 命令、indxbib 命令、lookbib 命令、neqn 命令、nroff 命令、roffbib 命令、sortbib 命令、tbl 命令、troff 命令。