From 611a6589ea56d66c12464a009c1116ed1b3a4837 Mon Sep 17 00:00:00 2001 From: Fabian Homborg Date: Sun, 5 Jan 2020 18:35:59 +0100 Subject: [PATCH] Disable command descriptions on macOS 10.15.X We just do a cheesy version check and hope it works out. If this is fixed in 10.15.4, we have to reenable it. If it still isn't fixed in 10.16, we need to adjust it. Fixes #6270 --- share/functions/__fish_describe_command.fish | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/share/functions/__fish_describe_command.fish b/share/functions/__fish_describe_command.fish index 7fb334d78..68b2f2802 100644 --- a/share/functions/__fish_describe_command.fish +++ b/share/functions/__fish_describe_command.fish @@ -2,6 +2,22 @@ # This function is used internally by the fish command completion code # +# macOS 10.15 "Catalina" has some major issues. +# The whatis database is non-existent, so apropos tries (and fails) to create it every time, +# which takes about half a second. +# +# So we disable this entirely in that case. +if test (uname) = Darwin + set -l darwin_version (uname -r | string split .) + # macOS 15 is Darwin 19, this is an issue at least up to 10.15.3. + # If this is fixed in later versions uncomment the second check. + if test "$darwin_version[1]" = 19 # -a "$darwin_version[2]" -le 3 + function __fish_describe_command; end + # (remember: exit when `source`ing only exits the file, not the shell) + exit + end +end + function __fish_describe_command -d "Command used to find descriptions for commands" # We're going to try to build a regex out of $argv inside awk. # Make sure $argv has no special characters.