From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6052 invoked from network); 8 Jul 2001 17:34:22 -0000 Received: from sunsite.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 8 Jul 2001 17:34:22 -0000 Received: (qmail 23535 invoked by alias); 8 Jul 2001 17:33:16 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 15312 Received: (qmail 23524 invoked from network); 8 Jul 2001 17:33:15 -0000 Message-Id: <5.1.0.14.2.20010708192157.03ca2628@imap.local.mscha.com> X-Sender: ml@imap.local.mscha.com (Unverified) X-Mailer: QUALCOMM Windows Eudora Version 5.1 Date: Sun, 08 Jul 2001 19:30:42 +0200 To: Andrej Borsenkow From: Michael Schaap Subject: RE: Zsh observations Cc: , ZSH Workers Mailing List In-Reply-To: References: <5.1.0.14.2.20010708145207.0271f560@imap.local.mscha.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed X-Virus-Scanned: at mscha.com by AMaViSd snapshot-20010407 (http://amavis.org/) At 19:07 8-7-2001, Andrej Borsenkow wrote: >On Sun, 8 Jul 2001, Michael Schaap wrote: > > > If I'm trying to complete an executable in the current directory, e.g. > > % setu > > it will give me neither "setup", nor "setup.exe". This is logical, because > > the special .exe handling is only for the PATH hash. > > > > Would you know a workaround for that? > > > >Ehh ... path=($path .) > >It completes only commands in path; that is correct and expected. > >Do you mean, that under Cygwin local directory is always implicitly in >path (it is in DOS)? Sorry, I made a mistake in my exaple. I meant: % ./setu Another, less useful, example world be: % /usr/local/bin/zs > > > > (Wouldn't it be nice if Cygwin did this foo.exe -> foo handling > > automagically for us?) > > > >What do you mean exactly? Zsh hashes path by calling readdir(). I do *not* >want readdir return foo if real file name is foo.exe. There is nothing >Cygwin can do (at least, I cannot think of anything). Cygwin already has some handling for exe files. Try % ls -l /bin/ls % ls -l /bin/ls* It would be nice if this were more complete, i.e. if all file handling functions would pretend there is a file "/bin/ls". Then it would be less effort to port individual applications, right? >May be in case of foo.exe we should not hash foo.exe but just foo. That >seems logical. Perhaps, but that's not what I meant. And your tip, zstyle ':completion::complete:-command-:*' ignored-patterns '*.(#i)(exe|dll)' takes care of that anyway. - Michael