diff options
author | Norbert Preining <preining@logic.at> | 2024-05-24 07:30:36 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2024-05-24 07:30:36 +0000 |
commit | ccf09fdbcfda81265b9eaf600f08e2469b58d191 (patch) | |
tree | 2cba6bb6c35b52fd52f923dde80614ebf6fe06e2 | |
parent | b3b9bca79107c8280ed7ed46b5070388f4425f76 (diff) |
tlmgr: fix searching when info is passed unmatched string
git-svn-id: svn://tug.org/texlive/trunk@71331 c570f23f-e606-0410-a88d-b1316a301751
-rwxr-xr-x | Master/texmf-dist/scripts/texlive/tlmgr.pl | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/Master/texmf-dist/scripts/texlive/tlmgr.pl b/Master/texmf-dist/scripts/texlive/tlmgr.pl index 43aa76a4dc2..644c0f6f46f 100755 --- a/Master/texmf-dist/scripts/texlive/tlmgr.pl +++ b/Master/texmf-dist/scripts/texlive/tlmgr.pl @@ -1821,6 +1821,22 @@ sub action_info { # SEARCH # +sub format_search_tlpdb_result { + my $ret = shift; + my $retfile = ''; + my $retdesc = ''; + for my $pkg (sort keys %{$ret->{"packages"}}) { + $retdesc .= "$pkg - " . $ret->{"packages"}{$pkg} . "\n"; + } + for my $pkg (sort keys %{$ret->{"files"}}) { + $retfile .= "$pkg:\n"; + for my $f (@{$ret->{"files"}{$pkg}}) { + $retfile .= "\t$f\n"; + } + } + return ($retfile, $retdesc); +} + sub action_search { my ($r) = @ARGV; my $tlpdb; @@ -1855,17 +1871,7 @@ sub action_search { my $json = TeXLive::TLUtils::encode_json($ret); print($json); } else { - my $retfile = ''; - my $retdesc = ''; - for my $pkg (sort keys %{$ret->{"packages"}}) { - $retdesc .= "$pkg - " . $ret->{"packages"}{$pkg} . "\n"; - } - for my $pkg (sort keys %{$ret->{"files"}}) { - $retfile .= "$pkg:\n"; - for my $f (@{$ret->{"files"}{$pkg}}) { - $retfile .= "\t$f\n"; - } - } + my ($retfile, $retdesc) = format_search_tlpdb_result($ret); print ($retdesc); print ($retfile); } @@ -4328,7 +4334,8 @@ sub show_one_package_detail { } # we didn't find a package like this, so use search info("$prg: cannot find package $pkg, searching for other matches:\n"); - my ($foundfile, $founddesc) = search_tlpdb($remotetlpdb,$pkg,1,1,0); + my $ret = search_tlpdb($remotetlpdb,$pkg,1,1,0); + my ($foundfile, $founddesc) = format_search_tlpdb_result($ret); print "\nPackages containing \`$pkg\' in their title/description:\n"; print $founddesc; print "\nPackages containing files matching \`$pkg\':\n"; |