diff options
author | Karl Berry <karl@freefriends.org> | 2015-05-01 15:56:19 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2015-05-01 15:56:19 +0000 |
commit | ade74033ac5eb78a9d1218cbcad8d8c86c57a8dc (patch) | |
tree | 16d2c1ef913b7d62ebd818ae4a15d58f38411b3a /Master | |
parent | edcd0ffca4d7fb395a3cb3e6639044850cd71c93 (diff) |
(action_search): don't print (unused) return code,
just the matches. Report from Nelson.
(main): Use $prg instead of hardwiring "tlmgr".
git-svn-id: svn://tug.org/texlive/trunk@37141 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rwxr-xr-x | Master/texmf-dist/scripts/texlive/tlmgr.pl | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/Master/texmf-dist/scripts/texlive/tlmgr.pl b/Master/texmf-dist/scripts/texlive/tlmgr.pl index c31818d8a9e..674e30fdf95 100755 --- a/Master/texmf-dist/scripts/texlive/tlmgr.pl +++ b/Master/texmf-dist/scripts/texlive/tlmgr.pl @@ -637,7 +637,7 @@ for the full story.\n"; my $ret = execute_action($action, @ARGV); if ($ret & $F_ERROR) { - tlwarn("tlmgr: an error has occurred. See above messages. Exiting.\n"); + tlwarn("$prg: An error has occurred. See above messages. Exiting.\n"); } # end of main program, returns also error codes @@ -701,12 +701,12 @@ sub execute_action { return($foo); } if ($foo & $F_WARNING) { - tlwarn("tlmgr: action $action returned a warning.\n"); + tlwarn("$prg: action $action returned a warning.\n"); $ret = $foo; } } else { $ret = $F_OK; - tlwarn("tlmgr: didn't get return value from action $action, assuming ok.\n"); + tlwarn("$prg: didn't get return value from action $action, assuming ok.\n"); } my $run_post = 1; if ($ret & $F_NOPOSTACTION) { @@ -1610,7 +1610,6 @@ sub action_info { # sub action_search { my ($r) = @ARGV; - my $ret = $F_OK | $F_NOPOSTACTION; my $tlpdb; # check the arguments my $search_type_nr = 0; @@ -1633,8 +1632,11 @@ sub action_search { } else { $tlpdb = $localtlpdb; } + foreach my $pkg ($tlpdb->list_packages) { my $tlp = $tlpdb->get_package($pkg); + + # --file or --all -> search (full) file names if ($opts{"file"} || $opts{"all"}) { my @files = $tlp->all_files; if ($tlp->relocated) { @@ -1647,7 +1649,10 @@ sub action_search { print "\t$_\n"; } } - } else { + } + # + # no options or --all -> search package names/descriptions + if ($search_type_nr == 0 || $opts{"all"}) { next if ($pkg =~ m/\./); # glom description strings together for one search my $t = "$pkg\n"; @@ -1655,13 +1660,15 @@ sub action_search { $t = $t . $tlp->longdesc . "\n" if (defined($tlp->longdesc)); my $pat = $r; $pat = '\W' . $r . '\W' if ($opts{"word"}); + my $matched = ""; if ($t =~ m/$pat/i) { my $shortdesc = $tlp->shortdesc || ""; - $ret .= " $pkg - $shortdesc\n"; + $matched .= " $pkg - $shortdesc\n"; } + print $matched; } } - print $ret; + return ($F_OK | $F_NOPOSTACTION); } |