From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1586 invoked from network); 12 Oct 2000 13:01:27 -0000 Received: from sunsite.auc.dk (130.225.51.30) by ns1.primenet.com.au with SMTP; 12 Oct 2000 13:01:27 -0000 Received: (qmail 15410 invoked by alias); 12 Oct 2000 13:00:51 -0000 Mailing-List: contact zsh-workers-help@sunsite.auc.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 12987 Received: (qmail 15402 invoked from network); 12 Oct 2000 13:00:50 -0000 X-Envelope-Sender-Is: Andrej.Borsenkow@mow.siemens.ru (at relayer david.siemens.de) From: "Andrej Borsenkow" To: Subject: RE: File completion under Cygwin again Date: Thu, 12 Oct 2000 17:00:46 +0400 Message-ID: <001201c0344c$6fb5d400$21c9ca95@mow.siemens.ru> MIME-Version: 1.0 Content-Type: text/plain; charset="koi8-r" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2911.0) Importance: Normal In-Reply-To: <200010121201.OAA30397@beta.informatik.hu-berlin.de> X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 > > > > 1. drive:/path completion. > > Use the fake-files style to offer `a:/' etc. Then use an > implementation of _first that makes compset -P '?:/' and calls _files > with -W. Does that work? > Mmm ... yes and no. It is simply too early. It will try to modify any word that looks like x:/foo; and it needs to be done for "real" file names only. I.e. in _path_files. Anyway, adding (conditional) checking for ?:/ prefix is trivial (for anybody who spent two years on _path_files at least :-). The question is - may it be used for something else? Is root-name style good enough? With implied usage zstyle 'completion:*:paths' root-name '/ ?:/' and implementation that basically sets donepath to root-name and strips it off. > > 2. UNC path completion - //server/share/path - here actually subtopics > > a) server name completion > > b) share name completion > > c) path completion > > I'm not exactly sure what this does, but maybe it could be done with > some more fiddling with _first (I mean: completing the server names)? > The same as above. And could be implemented by zstyle 'completion:*:paths' root-name '//server1/(share1|share2)/ //server2/share3/ ...' And server/share names itself could already be completed with fake-files. > > > 4. Windows is using case-insensitive file system, > > Use the matcher style? (Not matcher-list.) > > > 5. (related to 4) things are complicated by the fact, that you can mount > > case-sensitive file system (e.g. off SAMBA server), > > The matcher style with `zstyle -e'? > This is currently the best approximation. The only comment - this has to be set for every tag that represents file names; users (and completion function authors) are free to invent there own tags; and there is no ultimate tag list currently (and cannot be). I.e. again - it is property of file names, not particular completion context, and logically should be implemented in _path_files. paths tag? Like for squeeze-slashes? > > > 7. Backslash handling. So, that I do not forget it myself :-) > > I once said that this may be hard. But maybe it can be made simple: > just convert all backslashes to slashes before completing >:-> > Yes. For this reason I mentioned cygpath (that takes care of mount points as well). -andrej