2017-09-27 22 views
0

在编写UNIX手册页时,我意识到某些短语会多次出现。我想定义一次并重用它(而不是使用编辑器复制)。我发现我可以将变量(.ds)用于多行文本,但当包含点命令(如.B foo)时,它会失败。有没有解决方案(除了包含文件和C预处理器)?如何使用nroff中的命令重复使用文本部分?

回答

0

您可以将多行文本变为宏。缺点是插入它必须调用宏而不是插入字符串。

.de Us 
The usage example is 
.B very 
important 
.. 

Text text text 
.Us 
more text more text 

如果你只需要你的字符串里面加粗,您可以包括字体的变化:

.ds Us You can use \fB bold \fR text in your strings \ 
and it will work fine 

text text \*(Us 
+0

的解决方案看起来很简单,但似乎并没有工作:我没有得到'very'输出。 –

+0

第二个工程,但仍然不是我的问题的解决方案。 –

+0

我测试了这个,它在linux盒子上使用'man'或'gnroff -man'工作。你的环境是什么?有可能你所拥有的版本不支持定义像这样的宏,这似乎不太可能。你有没有更好的例子说明什么不适合你? –

相关问题