summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMamoru Komachi <usata@gentoo.org>2003-12-28 19:52:00 +0000
committerMamoru Komachi <usata@gentoo.org>2003-12-28 19:52:00 +0000
commit27c7c3126efad8fca1084b9318b9ba52e9e99c44 (patch)
treeeaa0e8876c17381b31b0de11196762e39bc80d71 /app-shells/zsh/files
parentVersion bumped. Added doc IUSE flag and completion function for emerge. Speci... (diff)
downloadgentoo-2-27c7c3126efad8fca1084b9318b9ba52e9e99c44.tar.gz
gentoo-2-27c7c3126efad8fca1084b9318b9ba52e9e99c44.tar.bz2
gentoo-2-27c7c3126efad8fca1084b9318b9ba52e9e99c44.zip
Version bumped. Added doc IUSE flag and completion function for emerge. Special thanks to baptux <bapt@ifrance.com>, see bug #33130
Diffstat (limited to 'app-shells/zsh/files')
-rw-r--r--app-shells/zsh/files/_portage158
-rw-r--r--app-shells/zsh/files/digest-zsh-4.0.92
-rw-r--r--app-shells/zsh/files/digest-zsh-4.1.1-r33
3 files changed, 163 insertions, 0 deletions
diff --git a/app-shells/zsh/files/_portage b/app-shells/zsh/files/_portage
new file mode 100644
index 000000000000..688abda0ca12
--- /dev/null
+++ b/app-shells/zsh/files/_portage
@@ -0,0 +1,158 @@
+#compdef emerge
+
+# $Id: _portage,v 1.1 2003/12/28 19:51:46 usata Exp $
+
+# ZSH completion function for emerge
+# Author: baptux <bapt@ifrance.com>
+# Author: Mamoru KOMACHI <usata@gentoo.org>
+
+_emerge () {
+ local state
+ if (( CURRENT == 2 ));then
+ _arguments -s \
+ '*:*:->actions' \
+ "$common_args[@]" "$install_args[@]" && return 0
+ elif (( CURRENT > 2 ));then
+ case "$words[2]" in
+ unmerge|-C)
+ _arguments -s \
+ '*:installed pkg:_portage_unmerge' "$common_args[@]" && return 0
+ ;;
+ --usepkgonly|-K)
+ _arguments -s \
+ '*:use package only:_portage_tbz2list' "$common_args[@]" && return 0
+ ;;
+ clean|depclean|-c|help|-h|info|regen|sync|rsync|--searchdesc|-S|search|-s|inject|-j|prune|-P)
+ ;;
+ *)
+ _arguments -s \
+ '*:*:->install_portage' \
+ "$common_args[@]" \
+ "$install_args[@]" && return 0
+ ;;
+ esac
+ fi
+ while [[ -n "$state" ]]; do
+ lstate=$state
+ state=''
+ case "$lstate" in
+ actions)
+ _alternative \
+ ':emerge actions:_actions' \
+ '*:portage:_portage_pkglist'
+ ;;
+ install_portage)
+ _alternative \
+ '*:portage:_portage_pkglist'
+ ;;
+ esac
+ done
+}
+
+#Function to show only installed packages "cat/name"
+_portage_unmerge(){
+ installed_portage=(/var/db/pkg/*-*/*)
+ installed_dir=/var/db/pkg/
+ installed_pkg=${installed_portage//$installed_dir/}
+ _tags -s installed_pkg && { compadd "$@" -k installed_pkg || compadd "$@" ${(kv)=installed_pkg} }
+}
+
+#Function to show tbz2 files available
+_portage_tbz2list() {
+ # this doesn't take care of ${PORTAGE_BINHOST}. If Gentoo official
+ # binary mirror will be available we should rewrite it accordingly.
+ _path_files -g \*.tbz2 -W "${pkgdir}/All"
+}
+
+#Function to show all available portage names
+_portage_pkglist(){
+ portage_classlist="world system"
+ portage_pkglist="$portage_pkglist ${portage_classlist}"
+ _tags -s portage_pkglist && { compadd "$@" -k portage_pkglist || compadd "$@" ${(kv)=portage_pkglist} }
+ _path_files -/ -W "${portdir}"
+ # XXX: If I add ${portdir_overlay} category completion won't work properly
+ #[[ -n "${portdir_overlay}" ]] && _path_files -/ -W "${portdir_overlay}"
+ _path_files -g \*.ebuild
+}
+
+common_args=(
+ {'(-p)--pretend','(--pretend)-p'}'[simply display what would be done]'
+ {'(-d)--debug','(--debug)-d'}'[Tells emerge to run the emerge command in debug mode]'
+)
+install_args=(
+ {'(--upgradeonly -U --update -u --quiet -q --onlydeps -o --oneshot --nospinner --noreplace -n --nodeps -O --noconfmem -D --deep --changelog --buildpkg -B -b --buildpkgonly --emptytree -e -f --fetchonly)-l','(--upgradeonly -U --update -u --quiet -q --onlydeps -o --nospinner --noreplace -n --nodeps -O --noconfmem -D --deep --emptytree -e -f --fetchonly -l --buildpkg -b -B --buildpkgonly )--changelog'}'[This will show the ChangeLog]'
+ {'(-b --buildpkgonly -B --changelog -l)--buildpkg','(--changelog -l --buildpkg --buildpkgonly -B)-b'}'[Tells emerge to build binary packages]'
+ {'(-B -b --buildpkg --changelog -l)--buildpkgonly','(--changelog -l --buildpkgonly --buildpkg -b)-B'}'[Tells emerge to only build binary packages]'
+ {'(-D --changelog -l)--deep','(-l --changelog --deep)-D'}'[Consider the entire dependency tree of packages]'
+ {'(-e -l --changelog)--emptytree','(--emptytree -l --changelog)-e'}'[Only consider glibc as installed packages]'
+ {'(-f -l --changelog)--fetchonly','(-l --changelog --fetchonly)-f'}'[Just perform fetches for all packages]'
+ '(-l --changelog)--noconfmem[Causes portage to disregard merge records]'
+ {'(--changelog -l -O)--nodeps','(--nodeps --changelog -l)-O'}'[Merges specified packages without merging dependencies]'
+ {'(-l --changelog -n)--noreplace','(-l --changelog --noreplace)-n'}'[Skip packages already installed]'
+ '(-l --changelog)--nospiner[Disables the spinner for the session]'
+ '(-l --changelog)--oneshot[Do not add package to the world profile]'
+ {'(--onlydeps --changelog -l)-o','(--changelog -o -l)--onlydeps'}'[Only merge (or pretend to merge) the dependencies]'
+ {'(--quiet --changelog -l)-q','(-q --changelog -l)--quiet'}'[General outcome is a reduced or condensed output]'
+ {'(--update --changelog -l)-u','(-u --changelog -l)--update'}'[Updates packages to the most recent version available]'
+ {'(--upgradeonly --changelog -l)-U','(-U --changelog -l)--upgradeonly'}'[Do not update packages to a lower version]'
+ {'(--usepkg --changelog -l)-k','(-k --changelog -l)--usepkg'}'[Tells emerge to use binary packages if available]'
+ {'(--usepkgonly --changelog -l)-K','(-K --changelog -l)--usepkgonly'}'[Tells emerge to use binary packages only]'
+ {'(--verbose)-v','(-v)--verbose'}'[Tell emerge to run in verbose mode]'
+ '(-p --pretend)--columns[Displays versions in aligned format]'
+ '--resume[Resumes the last merge operation]'
+ '--skipfirst[Removes the first package in the resume list]'
+)
+
+_options() {
+ _arguments -s \
+ "$unmerge_args[@]" "$common_args[@]" "$install_args[@]"
+}
+
+_actions() {
+ _values "emerge actions" \
+ 'sync[Initiates a portage tree update]' \
+ 'rsync[Initiates a portage tree update]' \
+ 'unmerge[Removes all matching packages]' \
+ 'search[Searches for matches]' \
+ 'regen[Causes portage to check and update the dependency cache]' \
+ 'prune[Removes all but the latest versions of matching packages]' \
+ 'inject[Portage thinks that this package is installed]' \
+ 'info[This is a list of information to include in bug reports]' \
+ 'help[Displays help]' \
+ 'depclean[Clean all packages that have no reason for being installed]'\
+ 'clean[Cleans the system by removing packages]' \
+ '-c[Cleans the system by removing packages]' \
+ '-h[Displays help]' \
+ '-i[Portage thinks that this package is installed]' \
+ '-P[Removes all but the latest versions of matching packages]' \
+ '-s[Searches for matches]' \
+ '-S[Matches the search string against the description field]' \
+ '--searchdesc[Matches the search string against the description field]' \
+ '-C[Removes all matching packages]' \
+ 'world[Represent all packages in the world profiles]' \
+ 'system[Represent all the system packages]'
+}
+
+#Reading informations from make.conf
+[[ -n "${PORTDIR}" ]] && portdir="${PORTDIR}"
+[[ -n "${PKGDIR}" ]] && pkgdir="${PKGDIR}"
+if [[ -n "${PORTDIR_OVERLAY}" ]] ; then
+ for overlay in ${=PORTDIR_OVERLAY} ; do
+ portdir_overlay=(${overlay} ${portdir_overlay})
+ done
+fi
+[[ -r /etc/make.globals ]] && source /etc/make.globals
+[[ -r /etc/make.conf ]] && source /etc/make.conf
+
+[[ -z "${portdir}" ]] && portdir="${PORTDIR}"
+[[ -z "${pkgdir}" ]] && pkgdir="${PKGDIR}"
+if [[ -z "${portdir_overlay}" ]] ; then
+ for overlay in ${=PORTDIR_OVERLAY} ; do
+ portdir_overlay=(${overlay} ${portdir_overlay})
+ done
+fi
+
+portage_pkglist=(${portdir}/*-*/* ${portdir_overlay}/*-*/*)
+portage_pkglist=(${portage_pkglist##*/})
+
+_emerge "$@"
diff --git a/app-shells/zsh/files/digest-zsh-4.0.9 b/app-shells/zsh/files/digest-zsh-4.0.9
new file mode 100644
index 000000000000..3f2f647305f6
--- /dev/null
+++ b/app-shells/zsh/files/digest-zsh-4.0.9
@@ -0,0 +1,2 @@
+MD5 26cc0f9051ba41063e950723246dfaa8 zsh-4.0.9.tar.bz2 1749802
+MD5 f7032dd0a992cba7bb903ab90a9ca667 zsh-4.0.9-doc.tar.bz2 1411985
diff --git a/app-shells/zsh/files/digest-zsh-4.1.1-r3 b/app-shells/zsh/files/digest-zsh-4.1.1-r3
new file mode 100644
index 000000000000..f9bbd87c4098
--- /dev/null
+++ b/app-shells/zsh/files/digest-zsh-4.1.1-r3
@@ -0,0 +1,3 @@
+MD5 48958b1a3fc86261a26eea40a4f7d4af zsh-4.1.1.tar.bz2 1924514
+MD5 a4fb455591ee95e5264bf985af3473ea zsh-4.1.1-euc-0.2.patch.gz 2788
+MD5 3ec54fa702b9a5c5209b56c2c8ed6a88 zsh-4.1.1-doc.tar.bz2 1572953