summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2024-05-24 07:30:36 +0000
committerNorbert Preining <preining@logic.at>2024-05-24 07:30:36 +0000
commitccf09fdbcfda81265b9eaf600f08e2469b58d191 (patch)
tree2cba6bb6c35b52fd52f923dde80614ebf6fe06e2
parentb3b9bca79107c8280ed7ed46b5070388f4425f76 (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-xMaster/texmf-dist/scripts/texlive/tlmgr.pl31
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";