Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: setopt globcomplete and () broken
- X-seq: zsh-workers 26711
- From: Peter Stephenson <pws@xxxxxxx>
- To: zsh-workers <zsh-workers@xxxxxxxxxx>
- Subject: Re: setopt globcomplete and () broken
- Date: Tue, 10 Mar 2009 18:18:18 +0000
- In-reply-to: <237967ef0903101104y135e0ca6sdbd9fbe8272f2d99@xxxxxxxxxxxxxx>
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
- References: <237967ef0903100625s7e8e5908t7852ade0c1d6d8d3@xxxxxxxxxxxxxx> <20090310135146.30c0c794@news01> <20090310173424.1af302c5@news01> <237967ef0903101104y135e0ca6sdbd9fbe8272f2d99@xxxxxxxxxxxxxx>
Mikael Magnusson wrote:
> If I unsetopt globcomplete, I can ls *zshenv(D)<tab> with the
> paragraph deleted though, so it all seems a bit crazy to me.
Are you sure that's not going through _expand? If I remove _expand from
the list of completers, I don't get completions for things like *zshe*(D)
unless glob_complete is set.
> I thought
> globcomplete was about completing things with patterns that weren't
> files in the first place, so why do glob qualifiers come into the
> picture at all?
They're not *necessarily* files, but they could be anything; and
if they are files, then globcomplete means exactly what it says,
complete based on full file glob expressions.
> And when completing actual files, why would globcomplete mean
> _path_files has to do extra work instead of just expanding the
> pattern?
The extra work in this particular case is merging together glob
qualifiers passed down (e.g. "-/" becoming "*(-/)") with any that are
there on the command line. This is a rather specialised thing to do,
but you could e.g. complete "cd *(D)" and get files with dots. (It only
applies with glob_complete because otherwise what's on the command line
is a plain string and you can just use "*(-/)" as the pattern.)
This does appear to work. (In fact it appears to work even after the fix I
was going to propose for your original problem, which is encouraging.)
--
Peter Stephenson <pws@xxxxxxx> Software Engineer
CSR PLC, Churchill House, Cambridge Business Park, Cowley Road
Cambridge, CB4 0WZ, UK Tel: +44 (0)1223 692070
Messages sorted by:
Reverse Date,
Date,
Thread,
Author