We already use "` " (backtick + space) to denote one indentation
level, so do not excessively indent and always pad with one
level less of spaces.
The 'x' operator in Perl handles negative values, so subtracting
one from level=0 will result in an empty string without spaces.
+sub indent_for {
+ my ($level) = @_;
+ INDENT x ($level - 1);
+}
+
sub __ghost_prepare {
my ($state, $node, $level) = @_;
my $ghost = $state->{ghost} ||= [];
sub __ghost_prepare {
my ($state, $node, $level) = @_;
my $ghost = $state->{ghost} ||= [];
my $d = _msg_date($mime);
$f = PublicInbox::Hval->new($f)->as_html;
$d = PublicInbox::Hval->new($d)->as_html;
my $d = _msg_date($mime);
$f = PublicInbox::Hval->new($f)->as_html;
$d = PublicInbox::Hval->new($d)->as_html;
- my $pfx = ' ' . $d . ' ' . (INDENT x $level);
+ my $pfx = ' ' . $d . ' ' . indent_for($level);
my $attr = $f;
$state->{first_level} ||= $level;
my $attr = $f;
$state->{first_level} ||= $level;
} else {
my $dot = $level == 0 ? '' : '` ';
my $pfx = (' ' x length(' 1970-01-01 13:37 ')).
} else {
my $dot = $level == 0 ? '' : '` ';
my $pfx = (' ' x length(' 1970-01-01 13:37 ')).
- (INDENT x $level) . $dot;
+ indent_for($level) . $dot;
$$dst .= $pfx;
$$dst .= ghost_parent("$upfx../", $node->messageid) . "\n";
}
$$dst .= $pfx;
$$dst .= ghost_parent("$upfx../", $node->messageid) . "\n";
}
my ($mid, $ts) = @{delete $latest->{$topic}};
$mid = PublicInbox::Hval->new($mid)->as_href;
$subj = PublicInbox::Hval->new($subj)->as_html;
my ($mid, $ts) = @{delete $latest->{$topic}};
$mid = PublicInbox::Hval->new($mid)->as_href;
$subj = PublicInbox::Hval->new($subj)->as_html;
- $pfx = INDENT x ($level - 1);
+ $pfx = indent_for($level);
my $nl = $level == $prev ? "\n" : '';
my $dot = $level == 0 ? '' : '` ';
$dst .= "$nl$pfx$dot<a\nhref=\"$mid/t/#u\"><b>$subj</b></a>\n";
my $nl = $level == $prev ? "\n" : '';
my $dot = $level == 0 ? '' : '` ';
$dst .= "$nl$pfx$dot<a\nhref=\"$mid/t/#u\"><b>$subj</b></a>\n";