Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Completion... but only for the extension part



From: Thomas Lauer <thomas.lauer@xxxxxxxxxx>
> From: Mikael Magnusson <mikachu@xxxxxxxxx>
> > On 7/31/22, Thomas Lauer <thomas.lauer@xxxxxxxxxx> wrote:
> > > Sorry if this is in the Fine Manual but I couldn't find it (and googling
> > > also brought no great enlightenment).
> > >
> > > I have directories with many files in them which all have rather long
> > > extensions (12+ chars). There can be quite a few separate extensions,
> > > say "*.winter-music" or "*.spanish-photos"... you get the idea.
> > >
> > > So, often I want to complete filenames as normal but sometimes I want to
> > > limit completion to files with just one specific extension, say
> > > "*.indonesian-videos". So... I'd like to type "*.indo" and then press
> > > <whatever> to get "*.indonesian-videos" which in its turn will complete
> > > only those files. The problem is the <whatever> bit... or rather a
> > > function that does that and can be bound to <whatever>. Do I have to
> > > write such a function or is there something in the completion system
> > > that will do this OOTB?
> > 
> > There is _extensions, you probably want it on a separate keybind from
> > normal completion, look at the _all_matches entry for an example of
> > how to do that.
> > 
> > https://www.zsh.org/mla/workers/2014/msg00230.html is the thread for
> > the patch that adds _extensions if you're curious.
> 
> Right. That _extensions extension works, thanks for the pointer!
> 
> The only problem now is that my "normal" completions add a space after
> the completion and that happens here as well. As I want to use these
> completions as bases for further completions that means I have to
> backspace and press <tab> again. I have no problem with the <tab> but
> not adding a space would make things a bit faster. Alas I've not found
> the right place to do that.
> 
> I have this
> 
> zstyle ':completion:*' menu select=2 interactive
> 
> if that helps.
> 
> Again thanks, much appreciated!
> 
> T

Hm... simply editing the _extensions file and removing "add-space" in
line 24 seems to do the trick. Works well now.

T




Messages sorted by: Reverse Date, Date, Thread, Author