From: Sven Wischnowsky <wischnow@informatik.hu-berlin.de>
To: zsh-workers@sunsite.auc.dk
Subject: Re: Problem with completion matching control
Date: Tue, 16 Feb 1999 09:30:54 +0100 (MET) [thread overview]
Message-ID: <199902160830.JAA00713@beta.informatik.hu-berlin.de> (raw)
In-Reply-To: opk@thoth.u-net.com's message of Tue, 16 Feb 1999 01:14:37 +0000
Oliver Kiddle wrote:
> Now this behaves in a way that I like:
> less t<tab><tab><tab>
>
> But this behaves quite differently
> less te<tab><tab><tab>
>
> ...
>
> In the second case, the first tab completes to 'temp' and moves the
> cursor over the e as before but it doesn't list anything below. Any
> subsequent tabs do nothing.
>
> In practical use, I tended to get the second scenario because I normally
> press tab after typing more than one character. Anyway, it is certainly
> the second case which I find annoying.
I can't reproduce it, can you give me information about the completion
options you have set or unset and any compctl's used here (global
matchers, default completion, special completion for the command,...).
> > Playing with this I also noticed that there is some weird interaction
> > going on between inserting such a string and the setting of recexact
> > (the exact inserted match isn't immediatly accepted, which is wrong if
> > auto_menu is unset). I'll have a lokk at this.
>
> I'm not sure if its the same as what you've noticed there. I get some
> similar but different problems to what I described above when in the zsh
> source directory after:
> ./co<tab><tab>
> Here I again get no list and the menu completing stops at Config/ but
> this is only with my options - its fine with zsh -f.
No, the thing I found is this:
% zsh -f
% ls
Temp foo foobar temp
% setopt recexact; compctl -M 'm:{a-z}={A-Z}'
% ls f<TAB><TAB>
This completes and accepts `foo'.
% ls t<TAB><TAB>
Temp temp
This completes to `temp' but does not accept it. In the meanwhile I
remembered that I knew about this when implementing the matching
stuff. The reason is that after the first TAB we can't easily find out
that the string inserted is a possible match and once we have the list
from the first TAB, the match-generation code isn't called again and
so the exact match isn't detected on the second TAB. And there is
more:
% unsetopt listambiguous # who made this be set by default?
% ls f<TAB>
foo foobar
This shows the list and inserts `foo'. Further TABs will *not* accept
the match but start menucompletion. If automenu is unset, further TABs
will do nothing.
I'm tempted to remove the test that avoids calling the match-
generation again, at least if the command line was changed. But then
I'll have to make sure the interaction between listambiguous,
automenu, autolist, bashautolist, and recexact still gives reasonable
results, so this may take a while.
Bye
Sven
--
Sven Wischnowsky wischnow@informatik.hu-berlin.de
next reply other threads:[~1999-02-16 8:32 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
1999-02-16 8:30 Sven Wischnowsky [this message]
-- strict thread matches above, loose matches on Subject: below --
1999-02-24 8:39 Sven Wischnowsky
1999-02-23 10:04 Sven Wischnowsky
1999-02-24 5:11 ` Bart Schaefer
1999-02-22 23:35 Oliver Kiddle
1999-02-18 9:05 Sven Wischnowsky
1999-02-18 1:00 Oliver Kiddle
1999-02-17 8:00 Sven Wischnowsky
1999-02-16 13:58 Sven Wischnowsky
1999-02-16 17:04 ` Peter Stephenson
1999-02-16 1:14 Oliver Kiddle
1999-02-15 9:42 Sven Wischnowsky
1999-02-14 19:35 Oliver Kiddle
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=199902160830.JAA00713@beta.informatik.hu-berlin.de \
--to=wischnow@informatik.hu-berlin.de \
--cc=zsh-workers@sunsite.auc.dk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/zsh/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).