2014-02-19 05:37:59 +08:00
|
|
|
function cabal_sandbox_info() {
|
|
|
|
cabal_files=(*.cabal(N))
|
|
|
|
if [ $#cabal_files -gt 0 ]; then
|
|
|
|
if [ -f cabal.sandbox.config ]; then
|
|
|
|
echo "%{$fg[green]%}sandboxed%{$reset_color%}"
|
|
|
|
else
|
|
|
|
echo "%{$fg[red]%}not sandboxed%{$reset_color%}"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
2013-06-06 01:22:33 +08:00
|
|
|
function _cabal_commands() {
|
|
|
|
local ret=1 state
|
|
|
|
_arguments ':subcommand:->subcommand' && ret=0
|
|
|
|
|
|
|
|
case $state in
|
|
|
|
subcommand)
|
|
|
|
subcommands=(
|
|
|
|
"bench:Run the benchmark, if any (configure with UserHooks)"
|
|
|
|
"build:Make this package ready for installation"
|
|
|
|
"check:Check the package for common mistakes"
|
|
|
|
"clean:Clean up after a build"
|
2014-06-08 18:04:52 +08:00
|
|
|
"copy:Copy the files into the install locations"
|
2013-06-06 01:22:33 +08:00
|
|
|
"configure:Prepare to build the package"
|
|
|
|
"fetch:Downloads packages for later installation"
|
2013-12-15 01:57:46 +08:00
|
|
|
"get:Gets a package's source code"
|
2013-06-06 01:22:33 +08:00
|
|
|
"haddock:Generate HAddock HTML documentation"
|
|
|
|
"help:Help about commands"
|
|
|
|
"hscolour:Generate HsColour colourised code, in HTML format"
|
|
|
|
"info:Display detailed information about a particular package"
|
|
|
|
"init:Interactively create a .cabal file"
|
|
|
|
"install:Installs a list of packages"
|
|
|
|
"list:List packages matching a search string"
|
|
|
|
"register:Register this package with the compiler"
|
2013-12-15 01:57:46 +08:00
|
|
|
"repl:Open an interpreter session for the given target"
|
2013-06-06 01:22:33 +08:00
|
|
|
"report:Upload build reports to a remote server"
|
2013-12-15 01:57:46 +08:00
|
|
|
"run:Runs the compiled executable"
|
|
|
|
"sandbox:Create/modify/delete a sandbox"
|
2013-06-06 01:22:33 +08:00
|
|
|
"sdist:Generate a source distribution file (.tar.gz)"
|
|
|
|
"test:Run the test suite, if any (configure with UserHooks)"
|
|
|
|
"unpack:Unpacks packages for user inspection"
|
|
|
|
"update:Updates list of known packages"
|
|
|
|
"upload:Uploads source packages to Hackage"
|
|
|
|
)
|
|
|
|
_describe -t subcommands 'cabal subcommands' subcommands && ret=0
|
|
|
|
esac
|
|
|
|
|
|
|
|
return ret
|
|
|
|
}
|
|
|
|
|
|
|
|
compdef _cabal_commands cabal
|