aboutsummaryrefslogtreecommitdiffhomepage
path: root/share/completions
diff options
context:
space:
mode:
authorGravatar Fabian Homborg <FHomborg@gmail.com>2015-09-28 16:08:01 +0200
committerGravatar Fabian Homborg <FHomborg@gmail.com>2015-09-28 16:08:01 +0200
commit39923155057e3198e7f488d663cedc173363914b (patch)
tree6ec1538299b5c7d2e7c24aa5cdda6350d1b028d4 /share/completions
parenteb4e4fa7adaffa0bba6f3fdb2290b5f6718af2ac (diff)
Normalize cabal* completion
Diffstat (limited to 'share/completions')
-rw-r--r--share/completions/cabal-dev.fish2
-rw-r--r--share/completions/cabal.fish11
2 files changed, 12 insertions, 1 deletions
diff --git a/share/completions/cabal-dev.fish b/share/completions/cabal-dev.fish
index e397d094..5340941a 100644
--- a/share/completions/cabal-dev.fish
+++ b/share/completions/cabal-dev.fish
@@ -1 +1 @@
-complete -c cabal-dev -a '(__fish_complete_cabal)'
+complete -c cabal-dev -w cabal
diff --git a/share/completions/cabal.fish b/share/completions/cabal.fish
index 5b5cdb2d..02eecd5f 100644
--- a/share/completions/cabal.fish
+++ b/share/completions/cabal.fish
@@ -1 +1,12 @@
+function __fish_complete_cabal
+ if type -q -f cabal
+ set cmd (commandline -poc)
+ if test (count $cmd) -gt 1
+ cabal $cmd[2..-1] --list-options
+ else
+ cabal --list-options
+ end
+ end
+end
+
complete -c cabal -a '(__fish_complete_cabal)'