aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Harder <radhermit@gentoo.org>2014-12-17 18:09:03 -0500
committerTim Harder <radhermit@gentoo.org>2014-12-17 18:09:03 -0500
commitb59abbeb9423d75dc258d900bd3ea7dded586b98 (patch)
tree9c05c03d2109da55fcae5633e434eef4748255d8 /src/_portage
parentMerge pull request #2 from dset0x/equery-completions (diff)
downloadzsh-completion-b59abbeb9423d75dc258d900bd3ea7dded586b98.tar.gz
zsh-completion-b59abbeb9423d75dc258d900bd3ea7dded586b98.tar.bz2
zsh-completion-b59abbeb9423d75dc258d900bd3ea7dded586b98.zip
use consistent indentation (2 spaces) and add vim modelines
Diffstat (limited to 'src/_portage')
-rw-r--r--src/_portage466
1 files changed, 228 insertions, 238 deletions
diff --git a/src/_portage b/src/_portage
index aef3487..e9639d8 100644
--- a/src/_portage
+++ b/src/_portage
@@ -12,49 +12,46 @@
# Still TODO:
# xpak
-
# Stuff for ebuild
_ebuild () {
- if (( CURRENT == 2 ));then
- _files -g \*.ebuild
- elif (( CURRENT > 2 ));then
- _values "ebuild command" \
- 'clean[Cleans the temporary build directory]' \
- 'help[Show help]' \
- 'setup[Run all package specific setup actions and exotic system checks.]' \
- 'fetch[Fetch all necessary files]' \
- 'digest[Creates a digest file for the package]' \
- 'unpack[Extracts the sources to a subdirectory in the build directory]' \
- 'compile[Compiles the extracted sources by running the src_compile()]' \
- 'preinst[Run specific actions that need to be done before installation]' \
- 'install[Installs the package to the temporary install directory]' \
- 'postinst[Run specific actions that need to be done after installation]' \
- 'qmerge[Installs the package de the filesystem]' \
- 'merge[perform the following actions: fetch, unpack, compile, install and qmerge.]' \
- 'unmerge[Remove the installed files of the packages]' \
- 'prerm[Run specific actions that need to be executed before unmerge]' \
- 'postrm[Run specific actions that need to be executed after unmerge]' \
- 'config[Run specific actions needed to be executed after the emerge process has completed.]' \
- 'package[This command is a lot like the merge command, but create a .tbz2 package]' \
- 'manifest[Updates the manifest file for the package.]' \
- 'rpm[Builds a RedHat RPM package]'
- fi
+ if (( CURRENT == 2 )); then
+ _files -g \*.ebuild
+ elif (( CURRENT > 2 )); then
+ _values "ebuild command" \
+ 'clean[Cleans the temporary build directory]' \
+ 'help[Show help]' \
+ 'setup[Run all package specific setup actions and exotic system checks.]' \
+ 'fetch[Fetch all necessary files]' \
+ 'digest[Creates a digest file for the package]' \
+ 'unpack[Extracts the sources to a subdirectory in the build directory]' \
+ 'compile[Compiles the extracted sources by running the src_compile()]' \
+ 'preinst[Run specific actions that need to be done before installation]' \
+ 'install[Installs the package to the temporary install directory]' \
+ 'postinst[Run specific actions that need to be done after installation]' \
+ 'qmerge[Installs the package de the filesystem]' \
+ 'merge[perform the following actions: fetch, unpack, compile, install and qmerge.]' \
+ 'unmerge[Remove the installed files of the packages]' \
+ 'prerm[Run specific actions that need to be executed before unmerge]' \
+ 'postrm[Run specific actions that need to be executed after unmerge]' \
+ 'config[Run specific actions needed to be executed after the emerge process has completed.]' \
+ 'package[This command is a lot like the merge command, but create a .tbz2 package]' \
+ 'manifest[Updates the manifest file for the package.]' \
+ 'rpm[Builds a RedHat RPM package]'
+ fi
}
-
# Stuff for quickpkg
_quickpkg () {
- if compset -P '(\\|)(>=|<=|<|>|=)'; then
- _arguments -s \
- '*:installed package:_gentoo_packages installed_versions'
- elif compset -P '(\\|)[/]'; then
- _path_files -W / -/
- else
- _arguments \
- '*:installed package:_gentoo_packages installed'
- fi
+ if compset -P '(\\|)(>=|<=|<|>|=)'; then
+ _arguments -s \
+ '*:installed package:_gentoo_packages installed_versions'
+ elif compset -P '(\\|)[/]'; then
+ _path_files -W / -/
+ else
+ _arguments '*:installed package:_gentoo_packages installed'
+ fi
}
# Stuff for emerge
@@ -63,18 +60,18 @@ _emerge () {
local nopkg_opts all noask_opts bopts install_args common_args profiles
noask_opts=(-p -a --pretend --ask --regen --info --search -s --searchdesc \
- -S --version -V --help -h --metadata --check-news)
+ -S --version -V --help -h --metadata --check-news)
nopkg_opts=(--resume --skipfirst -c --clean -h --help --depclean --info \
- --metadata -P --prune --regen -s --search -S --searchdesc --sync -C \
- --unmerge -V --version -i --inject --list-sets --deselect --check-news)
+ --metadata -P --prune --regen -s --search -S --searchdesc --sync -C \
+ --unmerge -V --version -i --inject --list-sets --deselect --check-news)
bopts=($nopkg_opts -b --buildpkg -B --buildpkgonly -G --getbinpkgonly -g \
- --getbinpkg -k --usepkg -K --usepkgonly --fetch-all-uri -f -F --fetchonly)
+ --getbinpkg -k --usepkg -K --usepkgonly --fetch-all-uri -f -F --fetchonly)
all=($bopts -l --changelog --columns --deep -D --emptytree -e --newuse \
- --noconfmem --nodeps -O --noreplace -n --oneshot -1 -o --onlydeps --tree -t \
- -u --update -U --upgradeonly --config)
+ --noconfmem --nodeps -O --noreplace -n --oneshot -1 -o --onlydeps --tree -t \
+ -u --update -U --upgradeonly --config)
common_args=(
"($noask_opts --sync)"{-p,--pretend}"[Simply display what would be done]"
@@ -86,64 +83,64 @@ _emerge () {
'(: -)'{-h,--help}'[Displays help]'
"(: -)--config[Run package specific actions needed to be executed after the emerge process has completed]:installed atom:_gentoo_packages installed"
"(: -)--list-sets[Displays a list of available package sets]"
- "--color=[Color output]:yes/no:((y\:'yes' n\:'no'))"
- "--accept-properties=[Temporarily override the ACCEPT_PROPERTIES variable]"
- "--accept-restrict=[Temporarily override the ACCEPT_RESTRICT variable]"
- "($noask_opts)"{-A,--alert}"[Add a terminal bell to all interactive prompts]"
- "--ignore-default-opts[Ignore EMERGE_DEFAULT_OPTS]"
- "--moo[Have you mooed today?]"
- "(--jobs)--jobs[Number of packages to build simultaneously]:jobs:({1.."${#${$(</proc/cpuinfo)/^processor}}"})"
+ "--color=[Color output]:yes/no:((y\:'yes' n\:'no'))"
+ "--accept-properties=[Temporarily override the ACCEPT_PROPERTIES variable]"
+ "--accept-restrict=[Temporarily override the ACCEPT_RESTRICT variable]"
+ "($noask_opts)"{-A,--alert}"[Add a terminal bell to all interactive prompts]"
+ "--ignore-default-opts[Ignore EMERGE_DEFAULT_OPTS]"
+ "--moo[Have you mooed today?]"
+ "(--jobs)--jobs[Number of packages to build simultaneously]:jobs:({1.."${#${$(</proc/cpuinfo)/^processor}}"})"
)
install_args=(
- "--deselect[Remove atom from world file]"
- "--alphabetical[Sort use/other flags output alphabetically despite of status]"
- "--ask-enter-invalid[When with --ask, interpret a single 'Enter' key press as invalid input]"
- "--autounmask[Automatically unmask packages and generate package.use]"
- "--autounmask-unrestricted-atoms[Use >= for autounmask if possible]"
- "--autounmask-keep-masks[Don't unmask hardmasks and unkeyworded (live)]"
- "--autounmask-write[Automatically write autounmask changes (respect CONFIG_PROTECT)]"
- "--backtrack=[Number of times to backtrack if dependency calculation fails]:number:(0 10 30)"
- "--binpkg-respect-use[Ignore binary packages if their uses don't match current config]"
- "--complete-graph[Consider the deep dependencies of all packages from the world set]"
- "--complete-graph-if-new-use[--complete-graph if USE or IUSE will change for an installed package]"
- "--complete-graph-if-new-ver[--complete-graph if an installed package version will change]"
- "--config-root=[Set PORTAGE_CONFIGROOT variable]:root path:_files -/"
- "--depclean-lib-check[Check library link-level dependencies]"
- "--digest[Prevent corruption from being noticed]"
- "--dynamic-deps[Substitute the dependencies of installed packages with the dependencies of corresponding unbuilt ebuilds]"
- "--fail-clean[Clean up temporary files after a build failure]"
- "--ignore-built-slot-operator-deps[Ignore the slot/sub-slot dependencies for built pkg]"
- "--keep-going[Continue as much as possible after an error]"
- "--load-average[No new builds should be started if there are other builds running and the load average is at least VALUE]"
- "--misspell-suggestions[Enable or disable misspell suggestions]"
- "--newrepo[Recompile a package if it is now being pulled from a different repository]"
- "--usepkg-exclude[Ignore matching binary packages]:installed atom:_gentoo_packages installed"
- "--rebuild-exclude[Do not rebuild matching packages on --rebuild]:installed atom:_gentoo_packages installed"
- "--rebuild-ignore[Do not rebuild packages that depend on matching packages on --rebuild]:installed atom:_gentoo_packages installed"
- "--package-moves[Perform package moves when necessary]"
- "--pkg-format[Binary package format]:archive type:(tar rpm)"
- "--prefix=[Set EPREFIX env variable]:prefix path:_files -/"
- "--quiet-build[Redirect all build output to logs]"
- "--quiet-fail[Suppresses display of the build log on stdout]"
- "--quiet-repo-display[Suppress ::repository in output (and use numbers)]"
- "--quiet-unmerge-warn[Disable the warning message on --unmerge and friends]"
- "--rebuild-if-new-slot[Automatically rebuild or reinstall packages when dependencies can be satisfied by a newer slot]"
- "--rebuild-if-new-rev[Rebuild packages when build-time dependencies are built from source, if the dependency is not already installed with the same version and revision]"
- "--rebuild-if-new-ver[Rebuild packages when build-time dependencies are built from source, if the dependency is not already installed with the same version]"
- "--rebuild-if-unbuilt[Rebuild packages when build-time dependencies are built from source]"
- "--rebuilt-binaries[Replace installed packages with binary packages that have been rebuilt]"
- "--rebuilt-binaries-timestamp[Only binaries older than TIMESTAMP will be considered by the rebuilt-binaries logic]:TIMESTAMP"
- "--reinstall[Alias for --changed-use (currently)]:reinstall opts:(changes-use)"
- "--reinstall-atoms[Treat matching packages as if they are not installed]:installed atoms:_gentoo_packages installed"
- "--root=[Set ROOT env variable]:prefix path:_files -/"
- "(: $nopkg_opts)"{-w,--select}"[Add specified packages to the world set (inverse of --oneshot)]"
- "--selective=[Use --selective=n if you want to forcefully disable --selective, regardless of options like --changed-use, --newuse, --noreplace, or --update]:yes/no:((y\:'yes' n\:'no'))"
- "--unordered-display[Produce more readable package tree with --tree]"
- "--use-ebuild-visibility[Use unbuilt ebuild metadata for visibility checks on built packages]"
- "--useoldpkg-atoms[Prefer matching binary packages over newer unbuilt packages]:available atom:_gentoo_packages available"
+ "--deselect[Remove atom from world file]"
+ "--alphabetical[Sort use/other flags output alphabetically despite of status]"
+ "--ask-enter-invalid[When with --ask, interpret a single 'Enter' key press as invalid input]"
+ "--autounmask[Automatically unmask packages and generate package.use]"
+ "--autounmask-unrestricted-atoms[Use >= for autounmask if possible]"
+ "--autounmask-keep-masks[Don't unmask hardmasks and unkeyworded (live)]"
+ "--autounmask-write[Automatically write autounmask changes (respect CONFIG_PROTECT)]"
+ "--backtrack=[Number of times to backtrack if dependency calculation fails]:number:(0 10 30)"
+ "--binpkg-respect-use[Ignore binary packages if their uses don't match current config]"
+ "--complete-graph[Consider the deep dependencies of all packages from the world set]"
+ "--complete-graph-if-new-use[--complete-graph if USE or IUSE will change for an installed package]"
+ "--complete-graph-if-new-ver[--complete-graph if an installed package version will change]"
+ "--config-root=[Set PORTAGE_CONFIGROOT variable]:root path:_files -/"
+ "--depclean-lib-check[Check library link-level dependencies]"
+ "--digest[Prevent corruption from being noticed]"
+ "--dynamic-deps[Substitute the dependencies of installed packages with the dependencies of corresponding unbuilt ebuilds]"
+ "--fail-clean[Clean up temporary files after a build failure]"
+ "--ignore-built-slot-operator-deps[Ignore the slot/sub-slot dependencies for built pkg]"
+ "--keep-going[Continue as much as possible after an error]"
+ "--load-average[No new builds should be started if there are other builds running and the load average is at least VALUE]"
+ "--misspell-suggestions[Enable or disable misspell suggestions]"
+ "--newrepo[Recompile a package if it is now being pulled from a different repository]"
+ "--usepkg-exclude[Ignore matching binary packages]:installed atom:_gentoo_packages installed"
+ "--rebuild-exclude[Do not rebuild matching packages on --rebuild]:installed atom:_gentoo_packages installed"
+ "--rebuild-ignore[Do not rebuild packages that depend on matching packages on --rebuild]:installed atom:_gentoo_packages installed"
+ "--package-moves[Perform package moves when necessary]"
+ "--pkg-format[Binary package format]:archive type:(tar rpm)"
+ "--prefix=[Set EPREFIX env variable]:prefix path:_files -/"
+ "--quiet-build[Redirect all build output to logs]"
+ "--quiet-fail[Suppresses display of the build log on stdout]"
+ "--quiet-repo-display[Suppress ::repository in output (and use numbers)]"
+ "--quiet-unmerge-warn[Disable the warning message on --unmerge and friends]"
+ "--rebuild-if-new-slot[Automatically rebuild or reinstall packages when dependencies can be satisfied by a newer slot]"
+ "--rebuild-if-new-rev[Rebuild packages when build-time dependencies are built from source, if the dependency is not already installed with the same version and revision]"
+ "--rebuild-if-new-ver[Rebuild packages when build-time dependencies are built from source, if the dependency is not already installed with the same version]"
+ "--rebuild-if-unbuilt[Rebuild packages when build-time dependencies are built from source]"
+ "--rebuilt-binaries[Replace installed packages with binary packages that have been rebuilt]"
+ "--rebuilt-binaries-timestamp[Only binaries older than TIMESTAMP will be considered by the rebuilt-binaries logic]:TIMESTAMP"
+ "--reinstall[Alias for --changed-use (currently)]:reinstall opts:(changes-use)"
+ "--reinstall-atoms[Treat matching packages as if they are not installed]:installed atoms:_gentoo_packages installed"
+ "--root=[Set ROOT env variable]:prefix path:_files -/"
+ "(: $nopkg_opts)"{-w,--select}"[Add specified packages to the world set (inverse of --oneshot)]"
+ "--selective=[Use --selective=n if you want to forcefully disable --selective, regardless of options like --changed-use, --newuse, --noreplace, or --update]:yes/no:((y\:'yes' n\:'no'))"
+ "--unordered-display[Produce more readable package tree with --tree]"
+ "--use-ebuild-visibility[Use unbuilt ebuild metadata for visibility checks on built packages]"
+ "--useoldpkg-atoms[Prefer matching binary packages over newer unbuilt packages]:available atom:_gentoo_packages available"
"($bopts)"{-b,--buildpkg}"[Tells emerge to build binary packages]"
"($bopts)--buildpkg-exclude[Space separated list of package atoms for which no binary packages should be built]"
- "($bopts)--exclude[Space separated list of package names or slot atoms which should not be installed]"
+ "($bopts)--exclude[Space separated list of package names or slot atoms which should not be installed]"
"($bopts)"{-B,--buildpkgonly}"[Tells emerge to only build binary packages]"
"($nopkg_opts --emptytree -e -l --changelog --usepkgonly -K)"{-l,--changelog}"[This will show the ChangeLog]"
"($nopkg_opts -t --tree)--columns[Displays versions in aligned format]"
@@ -188,178 +185,171 @@ _emerge () {
'system[All packages in the system profile]'
)
-
# Dispatch
- if (( $words[(I)(--(unmerge|(dep|)clean|prune|deselect)|-[[:alpha:]]#(C|c|P)[[:alpha:]]#)] )) ; then
- if compset -P '(\\|)(>=|<=|<|>|=)'; then
- _arguments -s \
- '*:installed package:_gentoo_packages installed_versions' && return 0
- else
- _arguments -s \
- "$common_args[@]" "$install_args[@]" \
- "*:installed package:_gentoo_packages installed" \
- "::installed sets:_gentoo_packages installed_sets" \
- && return 0
- fi
+ if (( $words[(I)(--(unmerge|(dep|)clean|prune|deselect)|-[[:alpha:]]#(C|c|P)[[:alpha:]]#)] )); then
+ if compset -P '(\\|)(>=|<=|<|>|=)'; then
+ _arguments -s \
+ '*:installed package:_gentoo_packages installed_versions' && return 0
+ else
+ _arguments -s \
+ "$common_args[@]" "$install_args[@]" \
+ "*:installed package:_gentoo_packages installed" \
+ "::installed sets:_gentoo_packages installed_sets" \
+ && return 0
+ fi
- elif (( $words[(I)(world|system)] )) ; then
+ elif (( $words[(I)(world|system)] )); then
_arguments -s \
- "$common_args[@]" "$install_args[@]" \
- "($nopkg_opts[1,-2] --inject -i --oneshot -1):" && return 0
+ "$common_args[@]" "$install_args[@]" \
+ "($nopkg_opts[1,-2] --inject -i --oneshot -1):" && return 0
- elif (( $words[(I)(--usepkgonly|-[[:alnum:]]#K[[:alnum:]]#)] )) ; then
+ elif (( $words[(I)(--usepkgonly|-[[:alnum:]]#K[[:alnum:]]#)] )); then
_arguments -s \
- "$common_args[@]" "$install_args[@]" \
- '*:binary package:_gentoo_packages binary' && return 0
+ "$common_args[@]" "$install_args[@]" \
+ '*:binary package:_gentoo_packages binary' && return 0
else
- if compset -P '(\\|)(>=|<=|<|>|=)'; then
- _arguments \
- "*:portage:_gentoo_packages available_versions" && return 0
- elif (( $words[(I)(--inject|-i)] )) ; then
- _arguments -s \
- "$common_args[@]" "$install_args[@]" \
- "*:portage:_gentoo_packages available_versions" && return 0
- else
- _arguments -s \
- "$common_args[@]" "$install_args[@]" \
- "($nopkg_opts)::portage: _values 'profile' \$profiles[@] " \
- "($nopkg_opts)*:portage:_gentoo_packages available" \
- "($nopkg_opts)::available sets:_gentoo_packages available_sets" \
- && return 0
- fi
+ if compset -P '(\\|)(>=|<=|<|>|=)'; then
+ _arguments "*:portage:_gentoo_packages available_versions" && return 0
+ elif (( $words[(I)(--inject|-i)] )); then
+ _arguments -s \
+ "$common_args[@]" "$install_args[@]" \
+ "*:portage:_gentoo_packages available_versions" && return 0
+ else
+ _arguments -s \
+ "$common_args[@]" "$install_args[@]" \
+ "($nopkg_opts)::portage: _values 'profile' \$profiles[@] " \
+ "($nopkg_opts)*:portage:_gentoo_packages available" \
+ "($nopkg_opts)::available sets:_gentoo_packages available_sets" \
+ && return 0
+ fi
fi
}
-
_emaint () {
- _arguments -s \
- "(: -)"{-h,--help}'[show help message and exit]' \
- "(: -)"--version"[show program's version number and exit]" \
- '(-c --check -f --fix)'{-c,--check}"[Check for any problems that may exist]:emaint:((all\:'check all' world\:'check only world file'))" \
- '(-c --check -f --fix)'{-f,--fix}"[Fix any problems that may exist]:emaint:((all\:'check all' world\:'check only world file'))"
+ _arguments -s \
+ "(: -)"{-h,--help}'[show help message and exit]' \
+ "(: -)"--version"[show program's version number and exit]" \
+ '(-c --check -f --fix)'{-c,--check}"[Check for any problems that may exist]:emaint:((all\:'check all' world\:'check only world file'))" \
+ '(-c --check -f --fix)'{-f,--fix}"[Fix any problems that may exist]:emaint:((all\:'check all' world\:'check only world file'))"
}
-
_env-update () {
- _arguments -s '(: -)--no-ldconfig[Do not run ldconfig]'
+ _arguments -s '(: -)--no-ldconfig[Do not run ldconfig]'
}
-
_portageq () {
- local action
-
- action="$words[2]"
-
- if (( CURRENT == 2 )); then
- _values 'command' \
- '--help[Show help]' \
- 'config_protect_mask[Returns the CONFIG_PROTECT_MASK paths]' \
- 'config_protect[Returns the CONFIG_PROTECT paths]' \
- 'portdir[Returns PORTDIR paths]' \
- 'contents[List the files that are installed for a given package]' \
- 'vdb_path[Returns the path used for the var(installed) package database]' \
- 'gentoo_mirrors[Returns the mirrors set to use in the portage configuration]' \
- 'exithandler[MISSING DOCUMENTATION!]' \
- 'all_best_visible[Returns all best_visible packages (without .ebuild)]' \
- 'match[Returns a \n separated list of category/package-version]' \
- 'metadata[Returns metadata values for the specified package]' \
- 'best_visible[Returns category/package-version (without .ebuild)]' \
- 'mass_best_visible[Returns category/package-version (without .ebuild)]' \
- "has_version[Return code 0 if it's available, 1 otherwise]" \
- 'envvar[Returns a specific environment variable as exists prior to ebuild.sh]' \
- 'pkgdir[Returns the PKGDIR path]' \
- 'best_version[Returns category/package-version (without .ebuild)]' \
- 'mass_best_version[Returns category/package-version (without .ebuild)]' \
- 'portdir_overlay[Returns the PORTDIR_OVERLAY path]' \
- 'distdir[Returns the DISTDIR path]' \
- 'owners[print the packages that own the files and which files belong to each package]'
- elif (( CURRENT == 3 )); then
- if [[ "$action" =~ (contents|(all_|mass_|)best_visible|match|metadata|(has|best)_version|owners|mass_best_version) ]]; then
- _arguments -s '*:root:_files -g /'
- fi
- elif (( CURRENT > 3 )); then
- if [[ "$action" =~ ((mass_|)best_(visible|version)|has_version) ]]; then
- _arguments -s '*:package:_gentoo_packages available'
- elif [[ "$action" == owners ]]; then
- _arguments -s '*:root:_files'
- fi
+ local action
+
+ action="$words[2]"
+
+ if (( CURRENT == 2 )); then
+ _values 'command' \
+ '--help[Show help]' \
+ 'config_protect_mask[Returns the CONFIG_PROTECT_MASK paths]' \
+ 'config_protect[Returns the CONFIG_PROTECT paths]' \
+ 'portdir[Returns PORTDIR paths]' \
+ 'contents[List the files that are installed for a given package]' \
+ 'vdb_path[Returns the path used for the var(installed) package database]' \
+ 'gentoo_mirrors[Returns the mirrors set to use in the portage configuration]' \
+ 'exithandler[MISSING DOCUMENTATION!]' \
+ 'all_best_visible[Returns all best_visible packages (without .ebuild)]' \
+ 'match[Returns a \n separated list of category/package-version]' \
+ 'metadata[Returns metadata values for the specified package]' \
+ 'best_visible[Returns category/package-version (without .ebuild)]' \
+ 'mass_best_visible[Returns category/package-version (without .ebuild)]' \
+ "has_version[Return code 0 if it's available, 1 otherwise]" \
+ 'envvar[Returns a specific environment variable as exists prior to ebuild.sh]' \
+ 'pkgdir[Returns the PKGDIR path]' \
+ 'best_version[Returns category/package-version (without .ebuild)]' \
+ 'mass_best_version[Returns category/package-version (without .ebuild)]' \
+ 'portdir_overlay[Returns the PORTDIR_OVERLAY path]' \
+ 'distdir[Returns the DISTDIR path]' \
+ 'owners[print the packages that own the files and which files belong to each package]'
+ elif (( CURRENT == 3 )); then
+ if [[ "$action" =~ (contents|(all_|mass_|)best_visible|match|metadata|(has|best)_version|owners|mass_best_version) ]]; then
+ _arguments -s '*:root:_files -g /'
+ fi
+ elif (( CURRENT > 3 )); then
+ if [[ "$action" =~ ((mass_|)best_(visible|version)|has_version) ]]; then
+ _arguments -s '*:package:_gentoo_packages available'
+ elif [[ "$action" == owners ]]; then
+ _arguments -s '*:root:_files'
fi
+ fi
}
-
_repoman () {
- local previous
-
- previous="$words[CURRENT-1]"
-
- _arguments -s \
- '(--force)'--force'[Force commit to proceed, regardless of QA issues]' \
- '(-q --quiet -v --verbose)'{-q,--quiet}'[Be less verbose about extraneous info]' \
- '(-p --pretend -m --commitmsg -M --commitmsgfile)'{-p,--pretend}'[Don’t commit or fix anything; just show what would be done]' \
- '(-i --include-masked)'{-i,--include-masked}'[Include masked packages in scans at category or tree level]' \
- '(-x --xmlparse)'{-x,--xmlparse}'[Forces the metadata.xml parse check to be carried out]' \
- '(-q --quiet -v --verbose)'{-v,--verbose}'[Displays every package name while checking]' \
- '(-I --ignore-arches)'{-I,--ignore-arches}'[Ignore arch-specific failures (where arch != host)]' \
- '(-m --commitmsg -M --commitmsgfile)'{-m,--commitmsg}'[Adds a commit message via the command line]:message:' \
- '(-m --commitmsg -M --commitmsgfile)'{-M,--commitmsgfile}'[Adds a commit message from the specified file]:commit_file:_files' \
- '(: -)'{-V,--version}'[Show version info]' \
- '(: -)'{-h,--help}'[Show this screen]'
-
- # if we don't have an option that cancel action, or if we don't already have an action.
- if ! [[ "$previous" =~ (-h|-V|-m|-M|--version|--help|--commitmsg|--commitmsgfile) ]] &&
- ! (( $words[(I)(full|last|help|scan|fix|lfull|manifest|commit)] )); then
- _values 'action' \
- 'full[Scan directory tree for QA issues (full listing)]' \
- 'last[Remember report from last run]' \
- 'help[Show this screen]' \
- 'scan[Scan directory tree for QA issues (short listing)]' \
- 'fix[Fix simple QA issues (stray digests, missing digests)]' \
- 'lfull[Remember report from last run (full listing)]' \
- 'manifest[Generate a Manifest (fetches files if necessary)]' \
- 'commit[Scan directory tree for QA issues; if OK, commit via cvs]'
- fi
+ local previous
+
+ previous="$words[CURRENT-1]"
+
+ _arguments -s \
+ '(--force)'--force'[Force commit to proceed, regardless of QA issues]' \
+ '(-q --quiet -v --verbose)'{-q,--quiet}'[Be less verbose about extraneous info]' \
+ '(-p --pretend -m --commitmsg -M --commitmsgfile)'{-p,--pretend}'[Don’t commit or fix anything; just show what would be done]' \
+ '(-i --include-masked)'{-i,--include-masked}'[Include masked packages in scans at category or tree level]' \
+ '(-x --xmlparse)'{-x,--xmlparse}'[Forces the metadata.xml parse check to be carried out]' \
+ '(-q --quiet -v --verbose)'{-v,--verbose}'[Displays every package name while checking]' \
+ '(-I --ignore-arches)'{-I,--ignore-arches}'[Ignore arch-specific failures (where arch != host)]' \
+ '(-m --commitmsg -M --commitmsgfile)'{-m,--commitmsg}'[Adds a commit message via the command line]:message:' \
+ '(-m --commitmsg -M --commitmsgfile)'{-M,--commitmsgfile}'[Adds a commit message from the specified file]:commit_file:_files' \
+ '(: -)'{-V,--version}'[Show version info]' \
+ '(: -)'{-h,--help}'[Show this screen]'
+
+ # if we don't have an option that cancel action, or if we don't already have an action.
+ if ! [[ "$previous" =~ (-h|-V|-m|-M|--version|--help|--commitmsg|--commitmsgfile) ]] &&
+ ! (( $words[(I)(full|last|help|scan|fix|lfull|manifest|commit)] )); then
+ _values 'action' \
+ 'full[Scan directory tree for QA issues (full listing)]' \
+ 'last[Remember report from last run]' \
+ 'help[Show this screen]' \
+ 'scan[Scan directory tree for QA issues (short listing)]' \
+ 'fix[Fix simple QA issues (stray digests, missing digests)]' \
+ 'lfull[Remember report from last run (full listing)]' \
+ 'manifest[Generate a Manifest (fetches files if necessary)]' \
+ 'commit[Scan directory tree for QA issues; if OK, commit via cvs]'
+ fi
}
-
_tbz2tool () {
- if (( CURRENT == 2 )); then
- _values 'action' 'join' 'split'
- elif (( CURRENT > 2 )) && (( CURRENT < 6 )); then
- _arguments -s '*:file:_files'
- fi
+ if (( CURRENT == 2 )); then
+ _values 'action' 'join' 'split'
+ elif (( CURRENT > 2 )) && (( CURRENT < 6 )); then
+ _arguments -s '*:file:_files'
+ fi
}
-
zparseopts -D -E -A Args -- -emerge
-if (( ${+Args[--emerge]} ));then
- _emerge "$@" && return 0
+if (( ${+Args[--emerge]} )); then
+ _emerge "$@" && return 0
fi
case "$service" in
- emerge)
- _emerge "$@" && return 0
- ;;
- ebuild)
- _ebuild "$@" && return 0
- ;;
- quickpkg)
- _quickpkg "$@" && return 0
- ;;
- emaint)
- _emaint "$@" && return 0
- ;;
- env-update)
- _env-update "$@" && return 0
- ;;
- portageq)
- _portageq "$@" && return 0
- ;;
- repoman)
- _repoman "$@" && return 0
- ;;
- tbz2tool)
- _tbz2tool "$@" && return 0
- ;;
+ emerge)
+ _emerge "$@" && return 0
+ ;;
+ ebuild)
+ _ebuild "$@" && return 0
+ ;;
+ quickpkg)
+ _quickpkg "$@" && return 0
+ ;;
+ emaint)
+ _emaint "$@" && return 0
+ ;;
+ env-update)
+ _env-update "$@" && return 0
+ ;;
+ portageq)
+ _portageq "$@" && return 0
+ ;;
+ repoman)
+ _repoman "$@" && return 0
+ ;;
+ tbz2tool)
+ _tbz2tool "$@" && return 0
+ ;;
esac
+# vim: set et sw=2 sts=2 ts=2 ft=zsh: