2012-07-13 49 views
9

根据info groff(5.11节中的字符转换), \.应该只打印点。但是,这不是看起来发生的事情。 如果我使这个手册页groff中的转义点

.TH x x x x 
\.SH foo 

我得到呈现为节标题foo,而不是打印.SH

那么,为什么会发生这种情况,以及如何避免在groff中起始行的 点(和撇号)?

回答

10

要在行写入使用\[char46]年初逃脱点:

\[char46]SH foo 

打印

.SH foo 

这是预期的行为,但应固定在手册页。 Here是一个错误报告。

您可以在下面阅读\\(缩写) 和\.(来自信息页)的说明。

-- Escape: \\ 
[...] 

`\\' is a `delayed' backslash; more precisely, it is the default 
escape character followed by a backslash, which no longer has 
special meaning due to the leading escape character. It is _not_ 
an escape sequence in the usual sense! In any unknown escape 
sequence `\X' the escape character is ignored and X is printed. 
But if X is equal to the current escape character, no warning is 
emitted. 

As a consequence, only at top-level or in a diversion a backslash 
glyph is printed; in copy-in mode, it expands to a single 
backslash which then combines with the following character to an 
escape sequence. 

[...] 

-- Escape: \. 
Similar to `\\', the sequence `\.' isn't a real escape sequence. 
As before, a warning message is suppressed if the escape character 
is followed by a dot, and the dot itself is printed. 
2

只需预先设置点与零宽度字:

\&. -- this a a dot. 

或暂时切换到另一个控制字符:

.cC# 
. -- this is a dot. 
#cc