mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-02-27 03:05:39 +01:00
Updated cabal completion to leverage standard bash approach. Updated sandbox info.
This commit is contained in:
parent
1b7a3ea99a
commit
50c84aab4d
1 changed files with 25 additions and 34 deletions
|
|
@ -2,46 +2,37 @@ function cabal_sandbox_info() {
|
||||||
cabal_files=(*.cabal(N))
|
cabal_files=(*.cabal(N))
|
||||||
if [ $#cabal_files -gt 0 ]; then
|
if [ $#cabal_files -gt 0 ]; then
|
||||||
if [ -f cabal.sandbox.config ]; then
|
if [ -f cabal.sandbox.config ]; then
|
||||||
echo "%{$fg[green]%}sandboxed%{$reset_color%}"
|
echo "%{$fg[green]%}[sandboxed] %{$reset_color%}"
|
||||||
else
|
else
|
||||||
echo "%{$fg[red]%}not sandboxed%{$reset_color%}"
|
echo "%{$fg[red]%}[not sandboxed] %{$reset_color%}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
function _cabal_commands() {
|
autoload bashcompinit
|
||||||
local ret=1 state
|
bashcompinit
|
||||||
_arguments ':subcommand:->subcommand' && ret=0
|
|
||||||
|
|
||||||
case $state in
|
# cabal command line completion
|
||||||
subcommand)
|
# Copyright 2007-2008 "Lennart Kolmodin" <kolmodin@gentoo.org>
|
||||||
subcommands=(
|
# "Duncan Coutts" <dcoutts@gentoo.org>
|
||||||
"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"
|
|
||||||
"copy:Copy teh files into the install locations"
|
|
||||||
"configure:Prepare to build the package"
|
|
||||||
"fetch:Downloads packages for later installation"
|
|
||||||
"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"
|
|
||||||
"report:Upload build reports to a remote server"
|
|
||||||
"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
|
_cabal()
|
||||||
|
{
|
||||||
|
# get the word currently being completed
|
||||||
|
local cur
|
||||||
|
cur=${COMP_WORDS[$COMP_CWORD]}
|
||||||
|
|
||||||
|
# create a command line to run
|
||||||
|
local cmd
|
||||||
|
# copy all words the user has entered
|
||||||
|
cmd=( ${COMP_WORDS[@]} )
|
||||||
|
|
||||||
|
# replace the current word with --list-options
|
||||||
|
cmd[${COMP_CWORD}]="--list-options"
|
||||||
|
|
||||||
|
# the resulting completions should be put into this array
|
||||||
|
COMPREPLY=( $( compgen -W "$( ${cmd[@]} )" -- $cur ) )
|
||||||
}
|
}
|
||||||
|
|
||||||
compdef _cabal_commands cabal
|
complete -F _cabal -o default cabal
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue