diff --git a/share/functions/__fish_describe_command.fish b/share/functions/__fish_describe_command.fish index 72bd3601f..a200b6cd8 100644 --- a/share/functions/__fish_describe_command.fish +++ b/share/functions/__fish_describe_command.fish @@ -19,10 +19,16 @@ if test (uname) = Darwin end end +# Perform this check once at startup rather than on each invocation +if not type -q apropos + function __fish_describe_command + end + exit +end + function __fish_describe_command -d "Command used to find descriptions for commands" # $argv will be inserted directly into the awk regex, so it must be escaped set -l argv_regex (string escape --style=regex "$argv") - type -q apropos; or return apropos $argv 2>/dev/null | awk -v FS=" +- +" '{ split($1, names, ", "); for (name in names)