* Why does ^X? behave differently than TAB?
@ 2000-05-17 9:46 Bart Schaefer
0 siblings, 0 replies; 2+ messages in thread
From: Bart Schaefer @ 2000-05-17 9:46 UTC (permalink / raw)
To: zsh-workers
This situation is a little baroque; I'm not sure I can give a simple case
that reproduces it.
I have a script that uses a `select' loop, and I want completion at the
prompt. So I did this inside the script:
local curcontext=scriptname:::
zstyle ':completion:scriptname:*' insert-tab no
zstyle ':completion:scriptname:*' completer _script_completer
_script_completer() { compcall -T -D }
The reason for the compcall is that this is an old script that uses a trick
with compctl -T to force 3.0.x to complete something other than commands at
the select prompt:
l=(list of things to complete)
compctl -Tx 'p[1,-1]' -f - 'W[0,*]' -k l ${${ZSH_VERSION##3.0*}:+-tn}
I.e., complete from $l in the first word, otherwise complete file names.
This all works fine as long as I never press anything but TAB for completion;
it even starts up menu-selection properly based on my other styles, etc.
However, if at any point after the first TAB, I press ^X? (_complete_debug)
instead, I get command completion (which usually means a menu-select with
2198 choices, but sometimes it just asks if I really want to see all 2198
possibilities).
I would just write this off as a new/old completion incompatibility if not
for the fact that it differs depending on the widget used to activate the
completion. And if I replace the `compcall' with `compadd $l' then it works
(except for not completing files) with any combination of TAB and ^X?.
--
Bart Schaefer Brass Lantern Enterprises
http://www.well.com/user/barts http://www.brasslantern.com
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Why does ^X? behave differently than TAB?
@ 2000-05-17 13:11 Sven Wischnowsky
0 siblings, 0 replies; 2+ messages in thread
From: Sven Wischnowsky @ 2000-05-17 13:11 UTC (permalink / raw)
To: zsh-workers
Bart Schaefer wrote:
> This situation is a little baroque; I'm not sure I can give a simple case
> that reproduces it.
>
> I have a script that uses a `select' loop, and I want completion at the
> prompt. So I did this inside the script:
>
> local curcontext=scriptname:::
> zstyle ':completion:scriptname:*' insert-tab no
> zstyle ':completion:scriptname:*' completer _script_completer
> _script_completer() { compcall -T -D }
>
> The reason for the compcall is that this is an old script that uses a trick
> with compctl -T to force 3.0.x to complete something other than commands at
> the select prompt:
>
> l=(list of things to complete)
> compctl -Tx 'p[1,-1]' -f - 'W[0,*]' -k l ${${ZSH_VERSION##3.0*}:+-tn}
>
> I.e., complete from $l in the first word, otherwise complete file names.
>
> This all works fine as long as I never press anything but TAB for completion;
> it even starts up menu-selection properly based on my other styles, etc.
>
> However, if at any point after the first TAB, I press ^X? (_complete_debug)
> instead, I get command completion (which usually means a menu-select with
> 2198 choices, but sometimes it just asks if I really want to see all 2198
> possibilities).
I can't reproduce this. Does _complete_debug write its output file?
Can I see it?
Oh god, I hate compcall.
Bye
Sven
--
Sven Wischnowsky wischnow@informatik.hu-berlin.de
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2000-05-17 13:11 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-05-17 9:46 Why does ^X? behave differently than TAB? Bart Schaefer
2000-05-17 13:11 Sven Wischnowsky
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).