From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21369 invoked from network); 26 Jul 1999 04:49:18 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 26 Jul 1999 04:49:18 -0000 Received: (qmail 7936 invoked by alias); 26 Jul 1999 04:49:02 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 7279 Received: (qmail 7929 invoked from network); 26 Jul 1999 04:49:00 -0000 To: zsh-workers@sunsite.auc.dk Subject: Re: CVS completer (Re: PATCH: Re: Completion/User functions again) References: <199907211127.NAA02895@beta.informatik.hu-berlin.de> <990721155446.ZM6856@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: 26 Jul 1999 13:48:53 +0900 In-Reply-To: Tanaka Akira's message of "25 Jul 1999 18:23:00 +0900" 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 , Tanaka Akira writes: > Most of codes to handle CVS/* are taken from Misc/compctl-examples. This refines it. --- Completion/User/_cvsaddp- Mon Jul 26 13:43:26 1999 +++ Completion/User/_cvsaddp Mon Jul 26 13:43:42 1999 @@ -5,8 +5,9 @@ _cvsentries setopt localoptions unset local all omit -all=( ${pref}*(D) ) -omit=( $entries ${pref}${^${=cvsignore}} ) -[[ -r ~/.cvsignore ]] && omit=( $omit ${pref}${^$(<~/.cvsignore)} ) -[[ -r ${pref}.cvsignore ]] && omit=( $omit ${pref}${^$(<${pref}.cvsignore)} ) -eval 'compadd - ${all:#('${(j:|:)omit}')}' +all=( ${pref}*~${pref}CVS(D:t) ) +omit=( $entries ${=cvsignore} ) +[[ -r ~/.cvsignore ]] && omit=( $omit $(<~/.cvsignore) ) +[[ -r ${pref}.cvsignore ]] && omit=( $omit $(<${pref}.cvsignore) ) +eval 'compadd -fp "$pref" - ${all:#('${(j:|:)omit}')}' || + compadd -fp "$pref" - ${pref}*~${pref}CVS(/:t) --- Completion/User/_cvsentries- Mon Jul 26 13:43:26 1999 +++ Completion/User/_cvsentries Mon Jul 26 13:43:42 1999 @@ -2,6 +2,6 @@ setopt localoptions nullglob unset if [[ -f ${pref}CVS/Entries ]]; then - entries=( "${pref}${(@)^${(@)${(@)${(f@)$(<${pref}CVS/Entries)}:#D*}#/}%%/*}" ) + entries=( "${(@)${(@)${(@)${(f@)$(<${pref}CVS/Entries)}:#D}#(D|)/}%%/*}" ) fi --- Completion/User/_cvsprefix- Mon Jul 26 13:43:27 1999 +++ Completion/User/_cvsprefix Mon Jul 26 13:43:42 1999 @@ -2,10 +2,15 @@ local f pref=$PREFIX -if [[ -d $pref:h && ! -d $pref ]]; then +if [[ $pref != */ ]]; then + if [[ $pref = */* ]]; then pref=$pref:h -elif [[ $pref != */* ]]; then + else pref= + fi +fi +if [[ ! -d "$pref" ]]; then + pref= fi [[ -n "$pref" && "$pref" != */ ]] && pref=$pref/ --- Completion/User/_cvsremovep- Mon Jul 26 13:43:27 1999 +++ Completion/User/_cvsremovep Mon Jul 26 13:43:42 1999 @@ -5,5 +5,7 @@ _cvsentries setopt localoptions unset local omit -omit=( ${pref}*(D) ) -eval 'compadd - ${entries:#('${(j:|:)omit}')}' +omit=( ${pref}*(D:t) ) +eval 'compadd -fp "$pref" - ${entries:#('${(j:|:)omit}')}' || + compadd -fp "$pref" - ${pref}*~${pref}CVS(/:t) + --- Completion/User/_cvstargets- Mon Jul 26 13:43:27 1999 +++ Completion/User/_cvstargets Mon Jul 26 13:43:42 1999 @@ -4,6 +4,4 @@ _cvsprefix _cvsentries -compadd - $entries - -compgen -g "^CVS(/)" +compadd -fp "$pref" - $entries -- Tanaka Akira