summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stankevich <daniel.stankevich@rea-group.com>2015-09-16 17:18:27 +1000
committerDaniel Stankevich <daniel.stankevich@rea-group.com>2015-09-16 17:18:27 +1000
commita8a8bc3967fc7b6906bd03c8f893a206ebc055f5 (patch)
treee861519ad253d2e68f0f1777c066a75c7a0de954
parent9c08641d7c2aae0c82fa5ad91f94c67b70115ba5 (diff)
downloadzsh-a8a8bc3967fc7b6906bd03c8f893a206ebc055f5.tar.gz
zsh-a8a8bc3967fc7b6906bd03c8f893a206ebc055f5.tar.bz2
zsh-a8a8bc3967fc7b6906bd03c8f893a206ebc055f5.zip
Add simple Stack commands list
-rw-r--r--plugins/stack/stack.plugin.zsh49
1 files changed, 49 insertions, 0 deletions
diff --git a/plugins/stack/stack.plugin.zsh b/plugins/stack/stack.plugin.zsh
new file mode 100644
index 000000000..7cc256394
--- /dev/null
+++ b/plugins/stack/stack.plugin.zsh
@@ -0,0 +1,49 @@
+function stack_sandbox_info() {
+ stack_files=(*.stack(N))
+ if [ $#stack_files -gt 0 ]; then
+ if [ -f stack.sandbox.config ]; then
+ echo "%{$fg[green]%}sandboxed%{$reset_color%}"
+ else
+ echo "%{$fg[red]%}not sandboxed%{$reset_color%}"
+ fi
+ fi
+}
+
+function _stack_commands() {
+ local ret=1 state
+ _arguments ':subcommand:->subcommand' && ret=0
+
+ case $state in
+ subcommand)
+ subcommands=(
+ "build:Build the project(s) in this directory/configuration"
+ "install:Build executables and install to a user path"
+ "test:Build and test the project(s) in this directory/configuration"
+ "bench:Build and benchmark the project(s) in this directory/configuration"
+ "haddock:Generate haddocks for the project(s) in this directory/configuration"
+ "new:Create a brand new project"
+ "init:Initialize a stack project based on one or more stack packages"
+ "solver:Use a dependency solver to try and determine missing extra-deps"
+ "setup:Get the appropriate ghc for your project"
+ "path:Print out handy path information"
+ "unpack:Unpack one or more packages locally"
+ "update:Update the package index"
+ "upgrade:Upgrade to the latest stack (experimental)"
+ "upload:Upload a package to Hackage"
+ "dot:Visualize your project's dependency graph using Graphviz dot"
+ "exec:Execute a command"
+ "ghc:Run ghc"
+ "ghci:Run ghci in the context of project(s)"
+ "ide:Run ide-backend-client with the correct arguments"
+ "runghc:Run runghc"
+ "clean:Clean the local packages"
+ "docker:Subcommands specific to Docker use"
+ )
+ _describe -t subcommands 'stack subcommands' subcommands && ret=0
+ esac
+
+ return ret
+}
+
+compdef _stack_commands stack
+