diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | Completion/Zsh/Command/_zcompile | 31 |
2 files changed, 22 insertions, 14 deletions
diff --git a/ChangeLog b/ChangeLog index f886927fa..b8f91b2fc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2004-04-17 Oliver Kiddle <opk@zsh.org> + + * 19790: Completion/Zsh/Command/_zcompile: complete functions + after -a and allow multiple -z/-k options + 2004-04-17 Doug Kearns <djkea2@mugca.its.monash.edu.au> * 19775: Completion/Unix/Command/_php: new completion for php diff --git a/Completion/Zsh/Command/_zcompile b/Completion/Zsh/Command/_zcompile index 2d8e6d033..727ead3b1 100644 --- a/Completion/Zsh/Command/_zcompile +++ b/Completion/Zsh/Command/_zcompile @@ -3,23 +3,26 @@ local state line expl curcontext="$curcontext" ret=1 typeset -A opt_args -_arguments -C -s -A "-*" -S \ - '(-t -c -m -a)-U[don'\''t expand aliases]' \ - '(-t -M)-R[mark as read]' \ - '(-t -R)-M[mark as mapped]' \ - '(-t -c -z -m -a)-k[ksh-style autoloading]' \ - '(-t -c -k -m -a)-z[zsh-style autoloading]' \ - '(-t -U -z -k)-c[currently defined functions]' \ - '(-t -U -z -k)-m[use names as patterns]' \ - '(-t -U -z -k)-a[write autoload functions]' \ - '(-M -R -U -z -k -a -c -m)-t[show table of contents]' \ - ':zwc file:_files' \ - '*:function:->function' && ret=0 +_arguments -C -s \ + "(-t -c -m -a)-U[don't expand aliases]" \ + '(-t -M)-R[mark as read]' \ + '(-t -R)-M[mark as mapped]' \ + '(-t -c -m -a)*-k[ksh-style autoloading]' \ + '(-t -c -m -a)*-z[zsh-style autoloading]' \ + '(-t -U -z -k)-c[currently defined functions]' \ + '(-t -U -z -k)-m[use names as patterns]' \ + '(-t -U -z -k)-a[write autoload functions]' \ + '(-M -R -U -z -k -a -c -m)-t[show table of contents]' \ + '(-M -R -U -a -c -m -t):file:->file' \ + '*:function:->function' && ret=0 -if (( $+opt_args[-c] )); then +if [[ $state = function && -n $opt_args[(i)-[ac]] ]]; then _wanted functions expl 'function to write' compadd -k functions && ret=0 +elif [[ -n $opt_args[(i)-[tca]] ]]; then + _description files expl 'zwc file' + _files -g '*.zwc(-.)' "$expl[@]" && ret=0 else - _description files expl 'zsh source file' + _description files expl 'file' _files "$expl[@]" && ret=0 fi |