diff --git a/share/functions/__fish_can_complete_switches.fish b/share/functions/__fish_can_complete_switches.fish deleted file mode 100644 index 9354f0892..000000000 --- a/share/functions/__fish_can_complete_switches.fish +++ /dev/null @@ -1,14 +0,0 @@ -# Returns whether it is at all possible (even if not recommended) -# to complete a -s or --long argument. -function __fish_can_complete_switches - # Search backwards - for arg in (commandline -ct)[-1..1] - if test "$arg" = "" - continue - else if not string match -qr -- "^-\S*\$" "$arg" - return 1 - end - end - - return 0 -end diff --git a/share/functions/__fish_should_complete_switches.fish b/share/functions/__fish_should_complete_switches.fish index 876a6a673..2563190fb 100644 --- a/share/functions/__fish_should_complete_switches.fish +++ b/share/functions/__fish_should_complete_switches.fish @@ -1,8 +1,10 @@ # Returns whether we *should* complete a -s or --long argument. # The preference is NOT to do so, i.e. prefer subcommands over switches. function __fish_should_complete_switches - if not __fish_can_complete_switches - return 1 + for arg in (commandline -ct)[-1..1] + if not string match -qr -- "^-\S*\$" "$arg" + return 1 + end end if string match -qr -- "^-" (commandline -ct)[-1] return 0