From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15424 invoked from network); 27 Jul 1999 14:00:06 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 27 Jul 1999 14:00:06 -0000 Received: (qmail 21291 invoked by alias); 27 Jul 1999 13:59:57 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 7295 Received: (qmail 21283 invoked from network); 27 Jul 1999 13:59:55 -0000 To: zsh-workers@sunsite.auc.dk Subject: Re: PATCH: Re: CVS completer (Re: PATCH: Re: Completion/User functions again) References: <199907211127.NAA02895@beta.informatik.hu-berlin.de> <990721155446.ZM6856@candle.brasslantern.com> <990727074804.ZM25420@candle.brasslantern.com> <990727134938.ZM26449@candle.brasslantern.com> MIME-Version: 1.0 (generated by AKEMI 1.13.2 - =?ISO-2022-JP?B?Ig==?= =?ISO-2022-JP?B?GyRCQTA0Y0s8GyhCIg==?=) Content-Type: text/plain; charset=US-ASCII From: Tanaka Akira Date: 27 Jul 1999 22:58:12 +0900 In-Reply-To: "Bart Schaefer"'s message of "Tue, 27 Jul 1999 13:49:38 +0000" Message-ID: User-Agent: Chao-gnus/6.12.5 AKEMI/1.13.2 (=?ISO-2022-JP?B?GyRCQTAbKEI=?= =?ISO-2022-JP?B?GyRCNGNLPBsoQg==?=) FLAM-DOODLE/1.12.6 (=?ISO-2022-JP?B?GyRCM3cbKEI=?= 10R4.0/5.0) Emacs/20.4 (sparc-sun-solaris2.6) MULE/4.0 (HANANOEN) In article <990727134938.ZM26449@candle.brasslantern.com>, "Bart Schaefer" writes: > Neither 7292 nor 7293 applied cleanly to the _cvs file from 7290. I don't > have time this morning to attempt to figure it out. Sorry, It's mistake. My latest version of _cvs is follows: ------------------------------------------------------------ #compdef cvs _cvs () { setopt localoptions extendedglob typeset -A commands commands=(add "ad new" admin "adm rcs" annotate ann checkout "co get" commit "ci com" diff "di dif" edit "" editors "" export "exp ex" history "hi his" import "im imp" init "" log "lo rlog" login "logon lgn" logout "" rdiff patch release "re rel" remove "rm delete" status "st stat" rtag "rt rfreeze" tag "ta freeze" unedit "" update "up upd" watch "" watchers "") local com="${words[(i)(${(j:|:)${(kv)=commands}})]}" local showlist='compstate[list]=list; compstate[force_list]=yes' local showhint="$showlist ; compstate[insert]=''" local complete_D="compadd today yesterday week\\ ago month\\ ago" local complete_k="compadd kv kvl k o b v" local complete_r="_cvsrevisions" local complete_m="compadd -UX 'Enter log message' -n ''; $showhint" if (( com < CURRENT )); then case "$words[$com]" in add|ad|new) # "+k:m:" _complete_opts k: "$complete_k" m: "$complete_m" || _cvsaddp ;; admin|adm|rcs) # "+ib::c:a:A:e:l::u::LUn:N:m:o:s:t::IqxV:k:" _complete_opts i '' b:: '' c: '' a: '' A: '' e: '' l:: '' u:: '' L '' \ U '' n: '' N: '' m: "$complete_m" o: '' s: '' t:: '' I '' q '' x '' \ V: '' k: "$complete_k" || _cvstargets ;; annotate|ann) # "+lr:D:fR" _complete_opts l '' r: '' D: '' f '' R '' || _cvstargets ;; checkout|co|get) # "+ANnk:d:flRpQqcsr:D:j:P" _complete_opts A '' N '' n '' k: "$complete_k" d: '' f '' l '' R ''\ p '' Q '' q '' c '' s '' r: "$complete_r" D: "$complete_D" j: '' \ P '' || _cvsrepositories ;; commit|ci|com) # "+nlRm:fF:r:" _complete_opts n '' l '' R '' m: "$complete_m" f '' F: '' \ r: "$complete_r" || _cvstargets_modified ;; diff|di|dif) # "+abcdefhilnpstuw0123456789BHNRC:D:F:I:L:U:V:W:k:r:" _complete_opts a '' b '' c '' d '' e '' f '' h '' i '' l '' n '' p '' \ s '' t '' u '' w '' 0 '' 1 '' 2 '' 3 '' 4 '' 5 '' 6 '' 7 '' 8 '' \ 9 '' B '' H '' N '' R '' C: '' D: "$complete_D" F: '' I: '' L: '' \ U: '' V: '' W: '' k: "$complete_k" r: "$complete_r" || _cvstargets_modified || _cvstargets ;; edit) # "+lRa:" _complete_opts l '' R '' a: '' || _cvstargets ;; editors) # "+lR" _complete_opts l '' R '' || _cvstargets ;; export|exp|ex) # "+ANnk:d:flRpQqcsr:D:j:P" _complete_opts A '' N '' n '' k: "$complete_k" d: '' f '' l '' R '' \ p '' Q '' q '' c '' s '' r: "$complete_r" D: "$complete_D" j: '' \ P '' || _cvsrepositories ;; history|hi|his) # "+Tacelow?D:b:f:m:n:p:r:t:u:x:X:z:" _complete_opts T '' a '' c '' e '' l '' o '' w '' \? '' \ D: "$complete_D" b: '' f: '' m: "$complete_m" n: '' p: '' r: '' \ t: '' u: '' x: '' X: '' z: '' || _cvstargets ;; import|im|imp) # "+Qqdb:m:I:k:W:" _complete_opts Q '' q '' d '' b: '' m: "$complete_m" I: '' \ k: "$complete_k" W: '' || case $[CURRENT-com] in 1) _cvsrepositories;; 2) compadd -UX "Enter vendor tag name" -n '' && eval "$showhint";; 3) compadd -UX "Enter release tag name" -n '' && eval "$showhint";; *) compadd -UX "No futher arguments used" -n '' && eval "$showhint";; esac ;; init) break ;; login|logon|lgn|logout) _complete_opts || _files ;; rdiff|patch|pa) # "+V:k:cuftsQqlRD:r:" _complete_opts V: '' k: "$complete_k" c '' u '' f '' t '' s '' Q '' \ q '' l '' R '' D: "$complete_D" r: "$complete_r" || _cvstargets ;; release|re|rel) # "+Qdq" _complete_opts Q '' d '' q '' || _files -/ ;; remove|rm|delete) # "+flR" _complete_opts f '' l '' R '' || _cvsremovep ;; status|st|stat) # "+vlR" _complete_opts v '' l '' R '' || _cvstargets ;; tag|ta|freeze) # "+FQqlRcdr:D:bf" _complete_opts F '' Q '' q '' l '' R '' c '' d '' r: "$complete_r" \ D: "$complete_D" b '' f '' || _cvstargets ;; unedit) # "+lR" _complete_opts l '' R '' || _cvstargets ;; update|up|upd) # "+ApPflRQqduk:r:D:j:I:W:" _complete_opts A '' p '' P '' f '' l '' R '' Q '' q '' d '' u '' \ k: "$complete_k" r: "$complete_r" D: "$complete_D" j: '' I: '' \ W: '' || _cvstargets ;; watch) if (( CURRENT == com + 1 )); then compadd on off add remove else case "$words[com+1]" in on|off) # "+lR" _complete_opts l '' R '' || _cvstargets ;; add|remove) # "+lRa:" _complete_opts l '' R '' a: '' || _cvstargets ;; esac fi ;; watchers) # "+lR" _complete_opts l '' R '' || _cvstargets ;; *) _files;; esac return fi case ${+cvs_roots} in 0) cvs_roots=() if [[ -f ~/.cvspass ]]; then cvs_roots=( $(cut -d ' ' -f 1 ~/.cvspass) ) fi ;; esac _complete_opts \ H '' Q '' q '' r '' w '' l '' n '' t '' v '' f '' a '' \ b: "compadd /usr/local/bin" \ T: "compadd $TMPPREFIX:h $TMPDIR /tmp" \ e: "compadd vi" \ d: "compadd $cvs_roots || _files -/" \ z: "compadd 9'" \ s: "_cvs_user_variable" \ || compadd ${(k)commands} || compadd ${(kv)=commands} } _cvsrevisions () { compadd - ${${${(M)${(f)"$(cvs -q status -vl .)"}:# *}##[ ]##}%%[ ]*} } _cvsrepositories () { local root=$CVSROOT [[ -f CVS/Root ]] && root=$(