From 39b85802aee50831bb4ea8840780b2b9261aec67 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 24 Apr 2016 23:37:54 +0000 Subject: view: more consistent prefixing for thread skeletons This will allow potential tinkerers to switch away from the '` ' prefix more easily. --- lib/PublicInbox/View.pm | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) (limited to 'lib') diff --git a/lib/PublicInbox/View.pm b/lib/PublicInbox/View.pm index 36df7ead..3b2df463 100644 --- a/lib/PublicInbox/View.pm +++ b/lib/PublicInbox/View.pm @@ -17,6 +17,8 @@ use PublicInbox::MID qw/mid_clean id_compress mid2path mid_mime/; require POSIX; use constant INDENT => ' '; +use constant TCHILD => '` '; +sub th_pfx ($) { $_[0] == 0 ? '' : TCHILD }; my $enc_utf8 = find_encoding('UTF-8'); @@ -701,13 +703,12 @@ sub fmt_ts { POSIX::strftime('%Y-%m-%d %k:%M', gmtime($_[0])) } sub _skel_header { my ($dst, $state, $upfx, $hdr, $level) = @_; - my $dot = $level == 0 ? '' : '` '; my $cur = $state->{cur}; my $mid = mid_clean($hdr->header_raw('Message-ID')); my $f = ascii_html($hdr->header('X-PI-From')); my $d = _msg_date($hdr); - my $pfx = $d . ' ' . indent_for($level); + my $pfx = "$d " . indent_for($level) . th_pfx($level); my $attr = $f; $state->{first_level} ||= $level; @@ -721,7 +722,7 @@ sub _skel_header { if ($cur) { if ($cur eq $mid) { delete $state->{cur}; - $$dst .= "$pfx$dot". + $$dst .= "$pfx". "$attr [this message]\n"; return; @@ -744,7 +745,7 @@ sub _skel_header { } my $m = PublicInbox::Hval->new_msgid($mid); $m = $upfx . '../' . $m->as_href . '/'; - $$dst .= "$pfx$dot"; + $$dst .= "$pfx"; $$dst .= defined($s) ? "$s $f\n" : "$f\n"; } @@ -761,8 +762,7 @@ sub skel_dump { $$dst .= "\t[no common parent]\n"; } else { $$dst .= ' [not found] '; - my $dot = $level == 0 ? '' : '` '; - $$dst .= indent_for($level) . $dot; + $$dst .= indent_for($level) . th_pfx($level); $mid = PublicInbox::Hval->new_msgid($mid); my $href = "$upfx../" . $mid->as_href . '/'; my $html = $mid->as_html; @@ -839,11 +839,10 @@ sub emit_topics { $cur = undef; } $cur ||= [ $ts, '' ]; - my $dot = $level == 0 ? '' : '` '; $cur->[0] = $ts if $ts > $cur->[0]; - $cur->[1] .= "$nl$pfx$dot"; - $cur->[1] .= $subj; - $cur->[1] .= "\n"; + $cur->[1] .= $nl . $pfx . th_pfx($level) . + "" . + $subj . "\n"; $ts = fmt_ts($ts); my $attr = " $ts UTC"; -- cgit v1.2.3-24-ge0c7