mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-23 20:54:04 +08:00
test: Add a new --quiet flag to suppress output
The --quiet flag is useful when only the exit status matters. Fix the documentation for the -t flag to no longer claim that `type` can print "keyword", as it never does that. Stop printing a blank line for functions/builtins when the -p flag has been passed. It's just not useful.
This commit is contained in:
parent
6b062b07b4
commit
6f7a7459c1
|
@ -12,9 +12,10 @@ The following options are available:
|
|||
- \c -h or \c --help prints help and then exits.
|
||||
- \c -a or \c --all prints all of possible definitions of the specified names.
|
||||
- \c -f or \c --no-functions suppresses function and builtin lookup.
|
||||
- \c -t or \c --type prints <tt>keyword</tt>, <tt>function</tt>, <tt>builtin</tt>, or <tt>file</tt> if \c NAME is a shell reserved word, function, builtin, or disk file, respectively.
|
||||
- \c -t or \c --type prints <tt>function</tt>, <tt>builtin</tt>, or <tt>file</tt> if \c NAME is a shell function, builtin, or disk file, respectively.
|
||||
- \c -p or \c --path returns the name of the disk file that would be executed, or nothing if 'type -t name' would not return 'file'.
|
||||
- \c -P or \c --force-path returns the name of the disk file that would be executed, or nothing if no file with the specified name could be found in the <tt>$PATH</tt>.
|
||||
- \c -q or \c --quiet suppresses all output; this is useful when testing the exit status.
|
||||
|
||||
\c type sets the exit status to 0 if the specified command was found,
|
||||
and 1 if it could not be found.
|
||||
|
|
|
@ -13,13 +13,19 @@ function type --description "Print the type of a command"
|
|||
for i in (seq (count $argv))
|
||||
switch $argv[$i]
|
||||
case -t --type
|
||||
if test $mode != quiet
|
||||
set mode type
|
||||
end
|
||||
|
||||
case -p --path
|
||||
if test $mode != quiet
|
||||
set mode path
|
||||
end
|
||||
|
||||
case -P --force-path
|
||||
if test $mode != quiet
|
||||
set mode path
|
||||
end
|
||||
set selection files
|
||||
|
||||
case -a --all
|
||||
|
@ -28,6 +34,9 @@ function type --description "Print the type of a command"
|
|||
case -f --no-functions
|
||||
set selection files
|
||||
|
||||
case -q --quiet
|
||||
set mode quiet
|
||||
|
||||
case -h --help
|
||||
__fish_print_help type
|
||||
return 0
|
||||
|
@ -61,10 +70,6 @@ function type --description "Print the type of a command"
|
|||
|
||||
case type
|
||||
echo (_ 'function')
|
||||
|
||||
case path
|
||||
echo
|
||||
|
||||
end
|
||||
if test $multi != yes
|
||||
continue
|
||||
|
@ -81,9 +86,6 @@ function type --description "Print the type of a command"
|
|||
|
||||
case type
|
||||
echo (_ 'builtin')
|
||||
|
||||
case path
|
||||
echo
|
||||
end
|
||||
if test $multi != yes
|
||||
continue
|
||||
|
@ -116,7 +118,7 @@ function type --description "Print the type of a command"
|
|||
end
|
||||
end
|
||||
|
||||
if test $found = 0
|
||||
if begin; test $found = 0; and test $mode != quiet; end
|
||||
printf (_ "%s: Could not find '%s'\n") type $i >&2
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user