From d00c4b6d395259ed35900bf52dffc2db3a436c6a Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sat, 12 Jun 2021 00:10:44 +0000 Subject: lei import: use url_folder_cache for completion And fix "lei index" completion while we're at it. --- lib/PublicInbox/LeiImport.pm | 11 ++++++++--- lib/PublicInbox/LeiIndex.pm | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/PublicInbox/LeiImport.pm b/lib/PublicInbox/LeiImport.pm index 08794f71..7580e37e 100644 --- a/lib/PublicInbox/LeiImport.pm +++ b/lib/PublicInbox/LeiImport.pm @@ -118,10 +118,15 @@ sub lei_import { # the main "lei import" method sub _complete_import { 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; + my @m = map { $match_cb->($_) } $lei->url_folder_cache->keys; + my %f = map { $_ => 1 } @m; + my $sto = $lei->_lei_store; + if (my $lms = $sto ? $sto->search->lms : undef) { + @m = map { $match_cb->($_) } $lms->folders; + @f{@m} = @m; + } + keys %f; } no warnings 'once'; diff --git a/lib/PublicInbox/LeiIndex.pm b/lib/PublicInbox/LeiIndex.pm index 4be0c649..5b545998 100644 --- a/lib/PublicInbox/LeiIndex.pm +++ b/lib/PublicInbox/LeiIndex.pm @@ -39,7 +39,7 @@ for my $m (qw(pmdir_cb input_net_cb)) { *$m = PublicInbox::LeiImport->can($m); } -*_complete_import = \&PublicInbox::LeiImport::_complete_import; +*_complete_index = \&PublicInbox::LeiImport::_complete_import; *ipc_atfork_child = \&PublicInbox::LeiInput::input_only_atfork_child; *net_merge_all_done = \&PublicInbox::LeiInput::input_only_net_merge_all_done; -- cgit v1.2.3-24-ge0c7