Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
PATCH: new completions
- X-seq: zsh-workers 19369
- From: Oliver Kiddle <okiddle@xxxxxxxxxxx>
- To: Zsh workers <zsh-workers@xxxxxxxxxx>
- Subject: PATCH: new completions
- Date: Wed, 14 Jan 2004 17:58:40 +0100
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
Just a couple of new completion functions.
Index: Completion/Unix/Command/_getent
===================================================================
RCS file: Completion/Unix/Command/_getent
diff -N Completion/Unix/Command/_getent
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ Completion/Unix/Command/_getent 14 Jan 2004 16:51:24 -0000
@@ -0,0 +1,50 @@
+#compdef getent
+
+local curcontext="$curcontext" state line expl ret=1
+local services databases keys
+local -a args
+typeset -A opt_args
+
+if _pick_variant -r is_gnu gnu=GNU unix --version; then
+ args+=(
+ '(- 1 *)'{-\?,--help}'[display help information]'
+ '(- 1 *)--usage[display a short usage message]'
+ '(- 1 *)'{-V,--version}'[display version information]'
+ {-s,--service=}'[specify service configuration to use]:service:->services'
+ )
+fi
+
+_arguments -C "$args[@]" \
+ '1:database:->databases' \
+ '*:key:->keys' && ret=0
+
+case $state in
+ services)
+ services=( /lib/libnss*(-.:fr:t:s/libnss_//) )
+ _wanted services expl service compadd ${services%-*} && ret=0
+ ;;
+ databases)
+ if [[ $is_gnu = gnu ]]; then
+ databases=( ${=${${(f)"$(_call_program databases $words[1] --help \
+ 2>/dev/null)"}[(r)Supported*,-1]}[2,-1]} )
+ else
+ databases=( passwd group hosts ipnodes services protocols ethers networks netmasks )
+ fi
+ _wanted databases expl database compadd -a databases && ret=0
+ ;;
+ keys)
+ keys=( ${(f)"$(_call_program keys $words[1] ${(kv)opt_args[(i)-s|--service]} $line[1] 2>/dev/null)"} )
+ case $line[1] in
+ *hosts) _wanted keys expl key compadd ${=keys#* } && ret=0 ;;
+ networks|rpc|protocols|services)
+ _wanted keys expl key compadd ${=keys%% *} && ret=0
+ ;;
+ aliases|passwd|shadow|group)
+ _wanted keys expl key compadd ${keys%%:*} && ret=0
+ ;;
+ *) _message -e keys key;;
+ esac
+ ;;
+esac
+
+return ret
Index: Completion/Debian/Command/_aptitude
===================================================================
RCS file: Completion/Debian/Command/_aptitude
diff -N Completion/Debian/Command/_aptitude
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ Completion/Debian/Command/_aptitude 14 Jan 2004 16:51:24 -0000
@@ -0,0 +1,50 @@
+#compdef aptitude
+
+local curcontext="$curcontext" state line cmds ret=1
+
+_arguments -C \
+ '(- 1 *)'{-h,--help}'[display help information]' \
+ '(- 1 *)--version[display version information]' \
+ '(-s --simulate)'{-s,--simulate}'[print actions without performing them]' \
+ '(-d --download-only)'{-d,--download-only}"[just download packages - don't install]" \
+ '(-P --prompt)'{-P,--prompt}'[always display a prompt]' \
+ '(-y --assume-yes)'{-y,--assume-yes}'[assume yes answer to questions]' \
+ '(-F --display-format)'{-F,--display-format}'[specify output format for search command]:format' \
+ '(-U --sort)'{-U,--sort}'[specify sort order]:sort order:()' \
+ '(-w --width)'{-w,--width}'[specify output width]:width' \
+ '-f[aggressivley try to fix dependencies of broken packages]' \
+ '(--without-recommends)--with-recommends[install recommended packages when installing new packages]' \
+ '(--without-suggests)--with-suggests[install suggested packages when installing new packages]' \
+ '(--with-recommends)--without-recommends[ignore recommended packages when installing new packages]' \
+ '(--with-suggests)--without-suggests[ignore suggested packages when installing new packages]' \
+ '1: :->cmds' \
+ '*: :->args' && ret=0
+
+case $state in
+ cmds)
+ cmds=( ${${(M)${(f)"$(aptitude -h 2>/dev/null)"}:#* - *}/(#b) (*[^ ]) #- (*)/$match[1]:$match[2]:l})
+
+ _describe -t commands 'aptitude command' cmds && ret=0
+ ;;
+ args)
+ case $line[1] in
+ search)
+ _message -e patterns pattern
+ ;;
+ download)
+ _deb_packages avail
+ ;;
+ remove|purge|hold)
+ _deb_packages installed
+ ;;
+ install|markauto|unmarkauto)
+ _deb_packages uninstalled
+ ;;
+ *)
+ (( ret )) && _message 'no more arguments'
+ ;;
+ esac
+ ;;
+esac
+
+return ret
Index: Completion/Zsh/Command/_precommand
===================================================================
RCS file: /cvsroot/zsh/zsh/Completion/Zsh/Command/_precommand,v
retrieving revision 1.3
diff -u -r1.3 _precommand
--- Completion/Zsh/Command/_precommand 14 Nov 2003 11:56:56 -0000 1.3
+++ Completion/Zsh/Command/_precommand 14 Jan 2004 16:51:24 -0000
@@ -1,4 +1,4 @@
-#compdef - nohup env eval time rusage noglob nocorrect exec
+#compdef - nohup env eval time rusage noglob nocorrect exec catchsegv
shift words
(( CURRENT-- ))
Messages sorted by:
Reverse Date,
Date,
Thread,
Author