diff options
author | Eric Wong <e@yhbt.net> | 2020-01-25 04:44:54 +0000 |
---|---|---|
committer | Eric Wong <e@yhbt.net> | 2020-01-27 02:59:09 +0000 |
commit | 23626f154849c991710a372c29da5d07bca36005 (patch) | |
tree | 2651dd46b15ab214dc454730c8c82ce82d96bcd1 | |
parent | 0d41983a642b4dccb90d04c4e2c5e2602885444c (diff) | |
download | public-inbox-23626f154849c991710a372c29da5d07bca36005.tar.gz |
It hasn't changed in a few years. Now we can rely on constant folding to avoid extraneous ops to the $skel buffer.
-rw-r--r-- | lib/PublicInbox/View.pm | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/lib/PublicInbox/View.pm b/lib/PublicInbox/View.pm index 0eb20ae0..b86c7bda 100644 --- a/lib/PublicInbox/View.pm +++ b/lib/PublicInbox/View.pm @@ -719,32 +719,34 @@ sub _msg_html_prepare { $rv .= "\n"; } -sub thread_skel { - my ($skel, $ctx, $hdr, $tpfx) = @_; +sub SKEL_EXPAND () { + qq(expand[<a\nhref="T/#u">flat</a>) . + qq(|<a\nhref="t/#u">nested</a>] ) . + qq(<a\nhref="t.mbox.gz">mbox.gz</a> ) . + qq(<a\nhref="t.atom">Atom feed</a>); +} + +sub thread_skel ($$$) { + my ($skel, $ctx, $hdr) = @_; my $mid = mids($hdr)->[0]; my $ibx = $ctx->{-inbox}; my ($nr, $msgs) = $ibx->over->get_thread($mid); - my $expand = qq(expand[<a\nhref="${tpfx}T/#u">flat</a>) . - qq(|<a\nhref="${tpfx}t/#u">nested</a>] ) . - qq(<a\nhref="${tpfx}t.mbox.gz">mbox.gz</a> ) . - qq(<a\nhref="${tpfx}t.atom">Atom feed</a>); - my $parent = in_reply_to($hdr); $$skel .= "\n<b>Thread overview: </b>"; if ($nr <= 1) { if (defined $parent) { - $$skel .= "$expand\n "; - $$skel .= ghost_parent("$tpfx../", $parent) . "\n"; + $$skel .= SKEL_EXPAND."\n "; + $$skel .= ghost_parent('../', $parent) . "\n"; } else { - $$skel .= "[no followups] $expand\n"; + $$skel .= '[no followups] '.SKEL_EXPAND."\n"; } $ctx->{next_msg} = undef; $ctx->{parent_msg} = $parent; return; } - $$skel .= "$nr+ messages / $expand"; - $$skel .= qq! <a\nhref="#b">top</a>\n!; + $$skel .= $nr; + $$skel .= '+ messages / '.SKEL_EXPAND.qq! <a\nhref="#b">top</a>\n!; # nb: mutt only shows the first Subject in the index pane # when multiple Subject: headers are present, so we follow suit: @@ -806,7 +808,7 @@ sub html_footer { my $rv = '<pre>'; if ($ibx->over) { $skel .= "\n"; - thread_skel(\$skel, $ctx, $hdr, ''); + thread_skel(\$skel, $ctx, $hdr); my ($next, $prev); my $parent = ' '; $next = $prev = ' '; |