diff options
author | Eric Wong <e@80x24.org> | 2019-10-31 09:19:38 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2019-10-31 09:20:04 +0000 |
commit | ecf084d1f59f34f24eefbf0c64159ca96b489f73 (patch) | |
tree | b66fa96ee44331801f94dea959f61ed283335005 | |
parent | cb80e56b43750083bfaefc8c1fa8598e473113de (diff) | |
download | public-inbox-ecf084d1f59f34f24eefbf0c64159ca96b489f73.tar.gz |
hval: replace "'" with "'" for compatibility
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.
-rw-r--r-- | lib/PublicInbox/Hval.pm | 3 | ||||
-rw-r--r-- | t/hl_mod.t | 3 |
2 files changed, 3 insertions, 3 deletions
diff --git a/lib/PublicInbox/Hval.pm b/lib/PublicInbox/Hval.pm index c134e297..4a79439f 100644 --- a/lib/PublicInbox/Hval.pm +++ b/lib/PublicInbox/Hval.pm @@ -58,8 +58,11 @@ my %xhtml_map = ( $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); } @@ -31,9 +31,6 @@ my $orig = $str; 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 |