From: Eric Wong Date: Sun, 30 May 2021 06:33:55 +0000 (+0000) Subject: lei lcat+inspect: start wiring up completion X-Git-Tag: v1.7.0~621 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=6ac85b2245b306590527196fb2cee124a29979b5;p=public-inbox.git lei lcat+inspect: start wiring up completion Colons and other delimiters still cause problems for our bash completion, but some completion is better than no completion. --- diff --git a/lib/PublicInbox/LeiInspect.pm b/lib/PublicInbox/LeiInspect.pm index 7205979e..eb2634b4 100644 --- a/lib/PublicInbox/LeiInspect.pm +++ b/lib/PublicInbox/LeiInspect.pm @@ -99,4 +99,12 @@ sub lei_inspect { $lei->out(']') if $multi; } +sub _complete_inspect { + my ($lei, @argv) = @_; + my $sto = $lei->_lei_store or return; + my $lms = $sto->search->lms or return; + my $match_cb = $lei->complete_url_prepare(\@argv); + map { $match_cb->($_) } $lms->folders; +} + 1; diff --git a/lib/PublicInbox/LeiLcat.pm b/lib/PublicInbox/LeiLcat.pm index effc3682..81ab1e36 100644 --- a/lib/PublicInbox/LeiLcat.pm +++ b/lib/PublicInbox/LeiLcat.pm @@ -132,4 +132,12 @@ no args allowed on command-line with --stdin $lei->_start_query; } +sub _complete_lcat { + my ($lei, @argv) = @_; + my $sto = $lei->_lei_store or return; + my $lms = $sto->search->lms or return; + my $match_cb = $lei->complete_url_prepare(\@argv); + grep(m!\A[a-z]+://!, map { $match_cb->($_) } $lms->folders); +} + 1;