[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [groff] man -Tdvi replaces $ by £
From: |
Werner LEMBERG |
Subject: |
Re: [groff] man -Tdvi replaces $ by £ |
Date: |
Tue, 29 May 2018 07:44:00 +0200 (CEST) |
> grodvi invoked by man -Tdvi replaces all occurrences of dollar
> character ($) by pound sterling character (£).
Indeed.
> .TH test 1
> .BI "perl example: " "$str =~ m/^[a-z]$/;"
This example tries to use `$' within bold italic. However, the TeX CM
font `cmbi10' doesn't provide this character. File `dvi.tmac' contains
.fspecial TBI CWI
which means that it tries `CWI' as a font-specific fallback for glyphs
missing in TBI. However, `CWI' was generated with the same mapping
table as `CW', which was wrong.
Now fixed in git. Thanks for the report.
Note that -Tdvi uses the original CM fonts, which have a very limited
glyph set. If you use the updated CWI font you will see that you get
upright dollar glyphs, since CM doesn't contained slanted dollar
signs.
Adding `-mec' on the command line makes groff use the EC fonts, which
actually contain slanted dollar glyphs.
> Is there any particular reason why [...] ascii characters [are
> replaced] by accents?
They are not replaced by accents. They are already using the best
available shape. Note that most non-typewriter fonts have both tilde
and hat glyphs located at the top and not in the middle.
Textual representation forms can be printed by using `\(ti' instead
of `~' and `\(ha' instead of `^'. Some remarks.
. `\(ti' used with the CM fonts indeed provides a different shape,
taken from the CM symbol font. However, I would call this shape a
bug, since it is definitely no longer a tilde. IMHO, `\(ti'
shouldn't get a separate shape for CM.
. If you are using `-mec' to activate the EC font family, `\(ti' is
taken from the `tc*' text companion fonts, where this glyph is
sitting on the baseline; it is not centered vertically on the font's
x axis. This is a bug, too: `\(ti' shouldn't get a separate shape
for EC.
. For EC fonts, `~' and `^' are already the larger shapes. The
smaller accent shapes can be printed with `\(a~' and `\(a^'.
I don't have sufficient time to fix those two buglets, unfortunately.
Werner