2012-07-13 7 views
9

De acuerdo con info groff (sección 5.11 Traducciones de caracteres), \. debe imprimir solo el punto. Sin embargo, esto no es lo que parece suceder. Si me hacen esta página de manualEscape de puntos en groff

.TH x x x x 
\.SH foo 

me sale foo representa como un encabezado de sección, y .SH no se imprime.

Entonces, ¿por qué sucede esto, y cómo escapo el punto (y el apóstrofo) en al inicio de la línea en groff?

Respuesta

10

Para escapar punto al principio de la línea de escritura uso \[char46]:

\[char46]SH foo 

impresiones

.SH foo 

Este es un comportamiento esperado, pero debe fijarse en la página del manual. Here es un informe de error.

A continuación, puede leer la descripción de \\ (abreviado) y \. (de las páginas de información).

-- 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

simplemente se antepone el punto con un carácter de anchura cero:

\&. -- this a a dot. 

o cambiar temporalmente a otro carácter de control:

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