mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-09-28 06:30:57 +02:00
Merge up to 1.9 from trunk onto 4.2 branch.
This commit is contained in:
parent
5b62e60451
commit
56e7d07643
1 changed files with 200 additions and 0 deletions
200
Completion/Debian/Command/_bts
Normal file
200
Completion/Debian/Command/_bts
Normal file
|
@ -0,0 +1,200 @@
|
|||
#compdef bts
|
||||
|
||||
local expl first=1
|
||||
|
||||
_arguments -A "-*" \
|
||||
'(-o --offline)'{-o,--offline}'[use cached bugs]' \
|
||||
'(--online --no-offline)'{--online,--no-offline}'[do not use cached bugs]' \
|
||||
'(--cache --no-cache)--cache[cache new versions of pages]' \
|
||||
'(--cache --no-cache)--no-cache[do not cache new versions of pages]' \
|
||||
'--cache-mode=:cache mode:(min mbox full)' \
|
||||
'--cache-delay=:seconds:' \
|
||||
'--mbox[open a mail reader to read the corresponding mbox]' \
|
||||
'--mailreader=:reader:' \
|
||||
'(-f --force-refresh)'{-f,--force-refresh}'[download bug report even if unchanged]' \
|
||||
'-no-force-refresh[do not force refresh]' \
|
||||
'(-q --quiet)*'{-q,--quiet}'[only display info about newly cached pages]' \
|
||||
'(--no-conf --noconf)*'{--no-conf,--noconf}'[do not read any config files]' \
|
||||
'*:subcommand and args:->subcmds' && return 0
|
||||
|
||||
compset -N '-[^0-9]#' && first=0
|
||||
compset -N '[,.]' && first=0
|
||||
[[ $first -eq 0 ]] || compset -n 2
|
||||
|
||||
if [[ CURRENT -eq 1 ]]; then
|
||||
_wanted cmd expl 'bts command' compadd show bugs close reopen retitle \
|
||||
reassign merge unmerge tag tags severity forwarded notforwarded help \
|
||||
clone submitter found notfound block unblock user usertag usertags \
|
||||
package owner noowner reportspam cache cleancache
|
||||
return
|
||||
fi
|
||||
|
||||
case "$words[1]" in
|
||||
(close|unmerge|notforwarded|noowner|reportspam)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
else
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
(show|bugs)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_wanted package expl 'package' _deb_packages avail
|
||||
_wanted maintainer expl 'package maintainer' compadd $DEBEMAIL
|
||||
fi
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
;;
|
||||
reopen)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
elif [[ CURRENT -eq 3 ]]; then
|
||||
_wanted submitter expl 'new submitter' compadd $DEBEMAIL
|
||||
else
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
retitle)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
elif [[ CURRENT -eq 3 ]]; then
|
||||
_message -e submitter 'new title'
|
||||
else
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
reassign)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
elif [[ CURRENT -eq 3 ]]; then
|
||||
_wanted submitter expl 'new package' _deb_packages avail
|
||||
else
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
merge)
|
||||
_message -e bugnum 'bug number'
|
||||
if [[ CURRENT -gt 2 ]]; then
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
tags#)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
elif [[ CURRENT -eq 3 ]]; then
|
||||
_wanted operator expl 'operator' compadd - '+' '-' '='
|
||||
elif [[ CURRENT -eq 4 ]]; then
|
||||
_wanted tag expl 'tag' \
|
||||
compadd patch wontfix moreinfo unreproducible fixed security \
|
||||
potato woody sid help pending upstream lfs sarge experimental \
|
||||
sarge-ignore d-i confirmed ipv6 fixed-in-experimental \
|
||||
fixed-upstream
|
||||
else
|
||||
_wanted tag expl 'tag' \
|
||||
compadd patch wontfix moreinfo unreproducible fixed security \
|
||||
potato woody sid help pending upstream lfs sarge experimental \
|
||||
sarge-ignore d-i confirmed ipv6 fixed-in-experimental \
|
||||
fixed-upstream
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
severity)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
elif [[ CURRENT -eq 3 ]]; then
|
||||
_wanted severity expl 'severity' \
|
||||
compadd wishlist minor normal serious important critical grave
|
||||
else
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
forwarded)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
elif [[ CURRENT -eq 3 ]]; then
|
||||
_wanted upstream expl 'upstream email' _email_addresses -c
|
||||
else
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
(clone)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
elif [[ CURRENT -eq 3 || -prefix [-] ]]; then
|
||||
_wanted newid expl 'new ID' compadd -- -{1..9}
|
||||
else
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
(submitter|owner)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
else
|
||||
_alternative \
|
||||
'bugnum:bug number:' \
|
||||
'email:email address:_email_addresses -c' \
|
||||
'bang:bang:compadd \!'
|
||||
fi
|
||||
;;
|
||||
(found|notfound)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
elif [[ CURRENT -eq 3 ]]; then
|
||||
_message -e version 'version'
|
||||
else
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
(block|unblock)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
elif [[ CURRENT -eq 3 ]]; then
|
||||
_wanted prep expl 'preposition' compadd by with
|
||||
else
|
||||
_alternative \
|
||||
'bugnum:bug number:' \
|
||||
'separator:separator:compadd -S " " , .'
|
||||
fi
|
||||
;;
|
||||
(user)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_wanted upstream expl 'user email for usertags' _email_addresses -c
|
||||
else
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
(usertags#)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_message -e bugnum 'bug number'
|
||||
elif [[ CURRENT -eq 3 ]]; then
|
||||
_wanted operator expl 'operator' compadd - '+' '-' '='
|
||||
elif [[ CURRENT -eq 4 ]]; then
|
||||
_message -e usertag 'user tag'
|
||||
else
|
||||
_message -e usertag 'user tag'
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
(package)
|
||||
if [[ CURRENT -eq 2 ]]; then
|
||||
_wanted package expl 'package' _deb_packages avail
|
||||
else
|
||||
_wanted sep expl 'separator' compadd -S ' ' , .
|
||||
fi
|
||||
;;
|
||||
(cache)
|
||||
_alternative \
|
||||
'package:package:_deb_packages avail' \
|
||||
'email:email address:_email_addresses -c' \
|
||||
'rc:rc:compadd release-critical'
|
||||
;;
|
||||
(cleancache)
|
||||
_alternative \
|
||||
'package:package:_deb_packages avail' \
|
||||
'email:email address:_email_addresses -c' \
|
||||
'all:all:compadd ALL'
|
||||
;;
|
||||
help)
|
||||
;&
|
||||
*) _wanted sep expl 'separator' compadd -S ' ' , .
|
||||
;;
|
||||
esac
|
Loading…
Reference in a new issue