> I should like to typeset em dashes surrounded by thin, > say 1/4th en, spaces. To prevent a dash from starting a > new line, the first space must be unbreakable. The second > one must be discardable. Both spaces must be unstretchable. > How to do it?
.ds EM \R'SS \\n[.s]/2'\s'\\n[SS]'\ \s0\[em]\s'\\n[SS]'\: \s0 This is\*[EM]in all respects\*[EM]quite tricky. In the original troff (according to the Troff User's Manual) a space was nominally 1/3 em and a thinspace was 1/6 em, thus half a normal space. In groff's TR font, a space is nominally 1/4 em, but a thinspace is still only 1/6 em. Isn't that strange? Anyhow, 1/4 en thus corresponds to half a normal space in groff's TR font. Don't ask me why the "\:" converts the following space into a nonstretchable (but discardable) space. I'm not really happy with this solution. I'd prefer space that stretches proportionally to the font size, but this doesn't seem to work in groff: groff appears to compute the total stretch divided by the number of spaces, and then *adds* this to *all* spaces, independent of their nominal size. I think this is wrong and should be changed. What do you all think?