Subject: | default output is broken |
Date: | Wed, 28 Aug 2013 12:29:19 +0100 |
To: | bug-Pod-Perldoc [...] rt.cpan.org |
From: | Zefram <zefram [...] fysh.org> |
With Pod::Perldoc 3.20, the pod rendering is using ANSI escape sequences
to achieve bolding. My pager, less(1), duly shows me "ESC[1m" all
over the place. The "ESC"s are bolded; the text that the pod renderer
wanted bolded is not. This is a relatively bad experience compared to
Pod::Perldoc 3.19, which uses the older overstrike convention, which
less(1) by default renders as bolding.
Hypothetically, Pod::Perldoc could produce better output by recognising
that my pager is less(1) and giving it the -R option. But I think that
route would be a mistake. The -R option does not cause less(1) to render
ANSI escapes: it causes less(1) to *pass them through* to the terminal.
So it's only correct for some terminals. (Admittedly a high proportion
of terminals in practice, but it's a huge new unchecked assumption.)
I think it would be more sensible to retain the 3.19 behaviour of using
overstriking for bolding. Not only because this is actually rendered
by less(1). It also has the advantage that if it is passed directly to
a terminal then it produces sane output regardless of the terminal type.
-zefram