While testing 216light.css changes, I managed to hit some cases
where dillo failed to render ' correctly, but I also can't
reproduce it reliably. Anyways, it's definitely a problem with
some old browsers and newer versions of highlight already work
around it, but Debian 10.x has 3.41, so use "'" to maximize
compatibility.
$xhtml_map{chr($_)} = sprintf('\\x%02x', $_) for (0..31);
%xhtml_map = (%xhtml_map, %escape_sequence);
+# for post-processing the output of highlight.pm and perhaps other
+# highlighers in the future
sub src_escape ($) {
$_[0] =~ s/\r\n/\n/sg;
+ $_[0] =~ s/'/'/sg; # workaround https://bugs.debian.org/927409
$_[0] =~ s/([\x7f\x00-\x1f])/$xhtml_map{$1}/sge;
$_[0] = $enc_ascii->encode($_[0], Encode::HTMLCREF);
}
my $cmd = [ qw(w3m -T text/html -dump -config /dev/null) ];
my ($out, $err) = ('', '');
- # workaround https://bugs.debian.org/927409
- $$ref =~ s/'/'/sg;
-
IPC::Run::run($cmd, \('<pre>'.$$ref.'</pre>'), \$out, \$err);
# expand tabs and normalize whitespace,
# w3m doesn't preserve tabs