1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-01-11 08:21:13 +01:00

17521: new completion for ant

This commit is contained in:
Oliver Kiddle 2002-08-09 15:28:24 +00:00
parent a68a2a0753
commit 5440b945dd
3 changed files with 44 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2002-08-09 Oliver Kiddle <opk@zsh.org>
* 17521: Completion/Unix/Command/_ant,
Completion/Unix/Command/.distfiles: new completion for ant
2002-08-08 Peter Stephenson <pws@csr.com>
* 17518: Doc/Zsh/metafaq.yo: mention www.zshwiki.org (from Bruno

View file

@ -18,5 +18,5 @@ _last _loadkeys _modutils _ruby _sysctl _links _samba
_user_admin _rsync _arping _spamassassin _mtools _ifconfig
_fsh _chkconfig _cdcd _irssi _mysqldiff _sccs
_netcat _larch _valgrind _texinfo _figlet
_global _global_tags
_global _global_tags _ant
'

View file

@ -0,0 +1,38 @@
#compdef ant -value-,ANT_ARGS,-default-
typeset -A opt_args
local state line curcontext="$curcontext"
local target='*:target:->target'
if [[ $service = *ANT_ARGS* ]]; then
compset -q
words=( fake "$words[@]" )
(( CURRENT++ ))
unset target
fi
_arguments -C \
'-help[display usage information]' \
'-projecthelp[print project hjelp information]' \
'-version[display version information]' \
'-diagnostics[display info useful to problem diagnosis]' \
'(-q -quiet)'{-q,-quiet}'[be extra quiet]' \
'(-v -verbose)'{-v,-verbose}'[be more verbose]' \
'-debug[print debugging information]' \
'-emacs[produce logging information without adornments]' \
'(-l -logfile)'{-l,-logfile}'[use specified file for log]:logfile:_files' \
'-logger[the class which is to perform logging]:classname:_java_class' \
'-listener[add an instance of class as a project listener]:classname:_java_class' \
'(-f -file -buildfile)'{-f,-file,-buildfile}'[use specified build file]:build file:_files' \
'*-D[specify property with value to use]:property' \
'-propertyfile[load properties from specfied file]:property file:_files' \
'-inputhandler[specify class which will handle input requests]:class:_java_class' \
'-find[search for buildfile]:file:_files' \
$target && return
if [[ -n $state ]]; then
targets=( $(sed -n 's/ *<target name="\([^"]*\)".*/\1/p' < build.xml) )
# ant can be used to get a list of targets for us like this but it is slow
# targets=( ${${(M)${(f)"$(_call_program targets $words[1] -projecthelp)"}:# *}# } )
_wanted targets expl target compadd -a targets
fi