Ingo Schwarze writes: > Hi Carsten, > > Carsten Kunze wrote on Fri, Mar 20, 2015 at 01:07:55PM +0100: > > > in groff_char.7 it is specified that U+0303 is output for \(a~ but > > actually U+007E is output. Why does the output (of nroff -Tutf8) > > differ from the specification? > > It seems to me that you misread the documentation. It reads: > > Accents > ------- > > The composite request is used to map most of the accents to non-spacing > glyph names; the values given in parentheses are the original (spacing) > ones. > > Output Input PostScript Unicode Notes > -------------------------------------------------------------------------- > ~ \[a~] tilde u0303 (u007E) tilde accent > > That means you get U+007E when using the character directly - > which certainly makes sense. > > The combining (non-spacing) variant shown before the parenthesis > only applies in the context of the .composite request.
When looking at this, I learned something new: U+007E is *not* the spacing equivalent to U+0303; U+02DC is. This effect is visible in groff's PDF output. In fact, an ASCII tilde gets replaced with a U+0303 in PDF output, and must be escaped as \(ti to output a straight ASCII tilde. However, UTF-8 nroff(1) output seems to output U+007E for both \(a~ and ~ inputs. -- Anthony J. Bentley