about summary refs log tree commit homepage
path: root/lib/PublicInbox/LeiInspect.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2021-07-01 11:31:32 +0000
committerEric Wong <e@80x24.org>2021-07-01 20:28:44 +0000
commit632b094c4bc338feb415dd1ff5b06c6495038cc9 (patch)
tree7a18b3fa52f4b247e78960a98d321e617f9bb768 /lib/PublicInbox/LeiInspect.pm
parentaffa3b21defd541488d43c57281d50500c1755cf (diff)
downloadpublic-inbox-632b094c4bc338feb415dd1ff5b06c6495038cc9.tar.gz
All commands which output non-trivial amounts of data to
the terminal should support this.
Diffstat (limited to 'lib/PublicInbox/LeiInspect.pm')
-rw-r--r--lib/PublicInbox/LeiInspect.pm7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/PublicInbox/LeiInspect.pm b/lib/PublicInbox/LeiInspect.pm
index 30714764..9a7900c7 100644
--- a/lib/PublicInbox/LeiInspect.pm
+++ b/lib/PublicInbox/LeiInspect.pm
@@ -155,9 +155,6 @@ sub inspect1 ($$$) {
 
 sub lei_inspect {
         my ($lei, @argv) = @_;
-        $lei->{1}->autoflush(0);
-        my $multi = scalar(@argv) > 1;
-        $lei->out('[') if $multi;
         $lei->{json} = ref(PublicInbox::Config::json())->new->utf8->canonical;
         $lei->{lse} = ($lei->{opt}->{external} // 1) ? do {
                 my $sto = $lei->_lei_store;
@@ -166,6 +163,10 @@ sub lei_inspect {
         if ($lei->{opt}->{pretty} || -t $lei->{1}) {
                 $lei->{json}->pretty(1)->indent(2);
         }
+        $lei->start_pager if -t $lei->{1};
+        $lei->{1}->autoflush(0);
+        my $multi = scalar(@argv) > 1;
+        $lei->out('[') if $multi;
         while (defined(my $x = shift @argv)) {
                 inspect1($lei, $x, scalar(@argv)) or return;
         }