X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=lib%2FPublicInbox%2FWwwText.pm;h=975ebddb2e67207970731a71045cca8431f5eaae;hb=9bd675d33ad1e49bd2ebe12a1d216216e61380de;hp=d3413ad72862d557511952a7867484cc3cfb5a79;hpb=65323f060a3db731bb9fafa004336eeb4bbb8f00;p=public-inbox.git diff --git a/lib/PublicInbox/WwwText.pm b/lib/PublicInbox/WwwText.pm index d3413ad7..975ebddb 100644 --- a/lib/PublicInbox/WwwText.pm +++ b/lib/PublicInbox/WwwText.pm @@ -1,15 +1,20 @@ -# Copyright (C) 2016-2018 all contributors +# Copyright (C) 2016-2019 all contributors # License: AGPL-3.0+ # used for displaying help texts and other non-mail content package PublicInbox::WwwText; use strict; use warnings; +use bytes (); # only for bytes::length use PublicInbox::Linkify; use PublicInbox::WwwStream; use PublicInbox::Hval qw(ascii_html); our $QP_URL = 'https://xapian.org/docs/queryparser.html'; our $WIKI_URL = 'https://en.wikipedia.org/wiki'; +my $hl = eval { + require PublicInbox::HlMod; + PublicInbox::HlMod->new +}; # /$INBOX/_/text/$KEY/ # KEY may contain slashes # For now, "help" is the only supported $KEY @@ -61,7 +66,13 @@ sub get_text { sub _do_linkify { my $l = PublicInbox::Linkify->new; - $_[0] = $l->linkify_2(ascii_html($l->linkify_1($_[0]))); + $l->linkify_1($_[0]); + if ($hl) { + $hl->do_hl_text(\($_[0])); + } else { + $_[0] = ascii_html($_[0]); + } + $_[0] = $l->linkify_2($_[0]); } sub _srch_prefix ($$) { @@ -91,7 +102,8 @@ sub _srch_prefix ($$) { sub _colors_help ($$) { my ($ctx, $txt) = @_; my $ibx = $ctx->{-inbox}; - my $base_url = $ibx->base_url($ctx->{env}); + my $env = $ctx->{env}; + my $base_url = $ibx->base_url($env); $$txt .= "color customization for $base_url\n"; $$txt .= <