mirror of
git://git.code.sf.net/p/zsh/code
synced 2024-11-19 13:33:52 +01:00
039b15b516
completion function from Steven Kowalik.
50 lines
1.7 KiB
Plaintext
50 lines
1.7 KiB
Plaintext
#compdef apt-move
|
|
|
|
local state line
|
|
|
|
_arguments \
|
|
'-c[Specify an alternative configuration file]' \
|
|
'-d[Override the DIST setting]' \
|
|
'-f[Override the MAXDELETE setting]' \
|
|
'-q[Be quiet; suppress normal output]' \
|
|
'-t[Show what apt-move would do, but do not actually do anything]' \
|
|
'1: :->cmds' \
|
|
'*: :->args' && return 0
|
|
|
|
case $state in
|
|
cmds)
|
|
cmds=('get:update your master files from local apt' \
|
|
'getlocal:alias of get' \
|
|
'fsck:fix broken repositories' \
|
|
'move:move cache files into mirror tree' \
|
|
'movefile:move files into the repository' \
|
|
'delete:delete obsolete packages' \
|
|
'packages:create new local Packages files' \
|
|
'update:alias for: get move delete packages' \
|
|
'local:alias for: move delete packages' \
|
|
'localupdate:alias for: getlocal move delete packages' \
|
|
'mirror:update your local mirror from remote rsync site' \
|
|
'sync:same as mirror, but only gets packages that you currently have installed on your system' \
|
|
'exclude:prints a list of all packages EXCLUDED from the mirror by the .exclude file' \
|
|
'listbin:prints lists of packages which can serve as the input to mirrorbin(mirror,sync,repo)' \
|
|
'listsrc:same as listbin, but lists source packages' \
|
|
'mirrorbin:same as mirror, but gets the packages specified on stdin' \
|
|
'mirrorsrc:same as mirrorbin, but gets source packages')
|
|
_describe -t commands 'apt-move command' cmds && return 0
|
|
;;
|
|
args)
|
|
case $line[1] in
|
|
get|getlocal)
|
|
# A directory or nothing
|
|
_files -/
|
|
;;
|
|
movefile)
|
|
# A .dsc or a .deb
|
|
_files -g "*.d(sc|eb)"
|
|
;;
|
|
esac
|
|
;;
|
|
esac
|
|
|
|
return 1
|