fish-shell/share/functions/__fish_gnu_complete.fish
Kurtis Rader 11a60c8374 reformat all fish scripts
I hate doing this but I am tired of touching a fish script as part of
some change and having `make style` radically change it. Which makes
editing fish scripts more painful than it needs to be. It is time to do
a wholesale reformatting of these scripts to conform to the documented
style as implemented by the `fish_indent` program.
2016-11-27 21:27:22 -08:00

53 lines
988 B
Fish

function __fish_gnu_complete -d "Wrapper for the complete built-in. Skips the long completions on non-GNU systems"
set is_gnu 0
set -l argv_out
# Check if we are using a gnu system
for i in $argv
switch $i
case -g --is-gnu
set is_gnu 1
case '*'
set argv_out $argv_out $i
end
end
set argv $argv_out
set argv_out
set -l skip_next 0
# Remove long option if not on a gnu system
switch $is_gnu
case 0
for i in $argv
switch $skip_next
case 1
set skip_next 0
continue
end
switch $i
case -l --long
set skip_next 1
continue
end
set argv_out $argv_out $i
end
set argv $argv_out
end
complete $argv
end