From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1466 invoked from network); 8 Feb 1999 20:58:18 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 8 Feb 1999 20:58:18 -0000 Received: (qmail 10706 invoked by alias); 8 Feb 1999 20:56:51 -0000 Mailing-List: contact zsh-users-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 2124 Received: (qmail 10688 invoked from network); 8 Feb 1999 20:56:30 -0000 From: "Bart Schaefer" Message-Id: <990208125500.ZM14738@candle.brasslantern.com> Date: Mon, 8 Feb 1999 12:55:00 -0800 In-Reply-To: <19990208145928.C4151@astaroth.nit.gwu.edu> Comments: In reply to Sweth Chandramouli "Re: setopt and alias questions" (Feb 8, 2:59pm) References: <19990207193735.A2060@astaroth.nit.gwu.edu> <990207175931.ZM8940@candle.brasslantern.com> <19990207235214.A2653@astaroth.nit.gwu.edu> <990207233343.ZM10079@candle.brasslantern.com> <19990208103038.A3447@astaroth.nit.gwu.edu> <990208104550.ZM14297@candle.brasslantern.com> <19990208141534.A4151@astaroth.nit.gwu.edu> <990208114403.ZM14493@candle.brasslantern.com> <19990208145928.C4151@astaroth.nit.gwu.edu> X-Mailer: Z-Mail (4.0b.820 20aug96) To: Sweth Chandramouli , zsh-users@sunsite.auc.dk Subject: Re: setopt and alias questions MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii On Feb 8, 2:59pm, Sweth Chandramouli wrote: } Subject: Re: setopt and alias questions } } On Mon, Feb 08, 1999 at 11:44:03AM -0800, Bart Schaefer wrote: } > On Feb 8, 2:15pm, Sweth Chandramouli wrote: } > } } > } for DIRNAME in ${fpath} ; do } > } if [[ -x ${DIRNAME}/*(.x:t) ]] ; then } > } autoload ${DIRNAME}/*(.x:t) } > } fi; } > } done; } > } > That loop will never autoload anything -- unless there happens to be a } > file in the current directory with the same name as one in ${DIRNAME}. } > Do you see why? } yes--because i need to start cut&pasting my functions rather } than typing them in. that should be -n, not -x. That won't work either (and my remark about "unless there happens to be a file in the current directory" is wrong as well). Filename generation is not applied to the strings inside the [[ ... ]]. Try running this: function fx() { mkdir /tmp/x echo "echo hello" > /tmp/x/x chmod +x /tmp/x/x echo /tmp/x/*(x) [[ -n /tmp/x/*(x) ]] && echo Got nonzero string [[ -f /tmp/x/*(x) ]] && echo Globbed a file [[ -x /tmp/x/*(x) ]] && echo Globbed executable file [[ -x /tmp/x/x ]] && echo Found executable file rm -r /tmp/x [[ -n /tmp/x/*(x) ]] && echo Still got nonzero string [[ -x /tmp/x/x ]] || echo Found no executable file } -- Bart Schaefer Brass Lantern Enterprises http://www.well.com/user/barts http://www.brasslantern.com