* Re: bindkey bug with zsh-3.1.6-dev-21?
@ 2000-04-19 9:26 Sven Wischnowsky
2000-04-19 9:39 ` Peter Stephenson
0 siblings, 1 reply; 7+ messages in thread
From: Sven Wischnowsky @ 2000-04-19 9:26 UTC (permalink / raw)
To: zsh-workers
Peter Stephenson wrote:
> > Ick. The problem is that in autoload_zleread() we do:
> >
> > if (load_module("zsh/zle"))
> > load_module("zsh/compctl");
> >
> > i.e., we attempt to load compctl only if loading zle succeeds. For
> > people who have a call to `bindkey' in their .z*, the zle module will
> > already be loaded, re-loading fails and compctl is not loaded. Bummer.
> >
> > Can anyone think of a solution for this? I can't (apart from trying to
> > load compctl unconditionally, which I don't like).
>
> Couldn't we also check whether ((trashzleptr == noop_function))? If it is,
> zle isn't loaded, and if it isn't, zle must be loaded or something very
> weird has happened. zlereadptr is even declared in both branches of the
> #ifdef just above.
Right, but what I would like to avoid is to load compctl whenever zle
is loaded. Otherwise anyone using the new completion system (which
loads zle indirectly) will have ol' compctl hanging around. And
_default will then try compctl's etc.
Hm, maybe a test of the form
if (load(zle) || !loaded(complete)) load(compctl);
There's find_module() for that kind of test.
Does that sound sensible?
Bye
Sven
--
Sven Wischnowsky wischnow@informatik.hu-berlin.de
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: bindkey bug with zsh-3.1.6-dev-21?
2000-04-19 9:26 bindkey bug with zsh-3.1.6-dev-21? Sven Wischnowsky
@ 2000-04-19 9:39 ` Peter Stephenson
0 siblings, 0 replies; 7+ messages in thread
From: Peter Stephenson @ 2000-04-19 9:39 UTC (permalink / raw)
To: Zsh hackers list
> Hm, maybe a test of the form
>
> if (load(zle) || !loaded(complete)) load(compctl);
>
> There's find_module() for that kind of test.
>
> Does that sound sensible?
Looks worth trying --- assuming (which I haven't checked) that something in
compinit loads complete, this is about the best you can do. The only other
possibilitity I can see is to delay loading old completion until zle
actually starts up --- then if there's no new completion, it's safe to
assume old completion is required. That might be quite sensible if it's
easy to implement.
--
Peter Stephenson <pws@cambridgesiliconradio.com>
Cambridge Silicon Radio, Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK Tel: +44 (0)1223 392070
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: bindkey bug with zsh-3.1.6-dev-21?
@ 2000-04-19 9:45 Sven Wischnowsky
0 siblings, 0 replies; 7+ messages in thread
From: Sven Wischnowsky @ 2000-04-19 9:45 UTC (permalink / raw)
To: zsh-workers
Peter Stephenson wrote:
> > Hm, maybe a test of the form
> >
> > if (load(zle) || !loaded(complete)) load(compctl);
> >
> > There's find_module() for that kind of test.
> >
> > Does that sound sensible?
>
> Looks worth trying --- assuming (which I haven't checked) that something in
> compinit loads complete, this is about the best you can do.
`zle -C' load zsh/complete.
> The only other
> possibilitity I can see is to delay loading old completion until zle
> actually starts up --- then if there's no new completion, it's safe to
> assume old completion is required. That might be quite sensible if it's
> easy to implement.
Sounds good too...
I've no time to hack now...
Bye
Sven
--
Sven Wischnowsky wischnow@informatik.hu-berlin.de
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: bindkey bug with zsh-3.1.6-dev-21?
2000-04-19 8:57 Sven Wischnowsky
2000-04-19 9:14 ` Thomas Köhler
@ 2000-04-19 9:19 ` Peter Stephenson
1 sibling, 0 replies; 7+ messages in thread
From: Peter Stephenson @ 2000-04-19 9:19 UTC (permalink / raw)
To: Zsh hackers list
> Ick. The problem is that in autoload_zleread() we do:
>
> if (load_module("zsh/zle"))
> load_module("zsh/compctl");
>
> i.e., we attempt to load compctl only if loading zle succeeds. For
> people who have a call to `bindkey' in their .z*, the zle module will
> already be loaded, re-loading fails and compctl is not loaded. Bummer.
>
> Can anyone think of a solution for this? I can't (apart from trying to
> load compctl unconditionally, which I don't like).
Couldn't we also check whether ((trashzleptr == noop_function))? If it is,
zle isn't loaded, and if it isn't, zle must be loaded or something very
weird has happened. zlereadptr is even declared in both branches of the
#ifdef just above.
--
Peter Stephenson <pws@cambridgesiliconradio.com>
Cambridge Silicon Radio, Unit 300, Science Park, Milton Road,
Cambridge, CB4 0XL, UK Tel: +44 (0)1223 392070
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: bindkey bug with zsh-3.1.6-dev-21?
2000-04-19 8:57 Sven Wischnowsky
@ 2000-04-19 9:14 ` Thomas Köhler
2000-04-19 9:19 ` Peter Stephenson
1 sibling, 0 replies; 7+ messages in thread
From: Thomas Köhler @ 2000-04-19 9:14 UTC (permalink / raw)
To: zsh-workers
[-- Attachment #1: Type: text/plain, Size: 2263 bytes --]
On Wed, Apr 19, 2000 at 10:58:14AM +0200,
Sven Wischnowsky <wischnow@informatik.hu-berlin.de> wrote:
>
> =?iso-8859-1?Q?Thomas_K=F6hler?= wrote:
>
> > Hi,
> > Seems that there's a problem with bindkey and zsh-3.1.6-dev-21 and
> > zsh-3.1.6-dev-22:
> >
> > When I use this .zshrc:
> >
> > bindkey -e
> > export EDITOR=3Dvi
> >
> > I get not tab-completion. If I type "bindkey", I get a long list of
> > bindkeys, amongst others this one:
> > "^I" expand-or-complete
> >
> > So, the binding is there, but it just doesn't work :-(
> >
> > The funny thing is, when I just have the "export EDITOR=3Dvi" line in my
> > =2Ezshrc and type "bindkey -e" on the prompt later, tab-completion works.
> > How to resolve the problem?
>
> Put `zmodload zsh/compctl' in your `.zshrc'. Or better, use the new
> completion system (autoloading and calling `compinit').
Well, *I* do use the new completion system, but the one who found the
problem (tries zsh because I showed him what it can do) doesn't (yet?).
> Ick. The problem is that in autoload_zleread() we do:
>
> if (load_module("zsh/zle"))
> load_module("zsh/compctl");
>
> i.e., we attempt to load compctl only if loading zle succeeds. For
> people who have a call to `bindkey' in their .z*, the zle module will
> already be loaded, re-loading fails and compctl is not loaded. Bummer.
Uhm. Bad.
> Can anyone think of a solution for this? I can't (apart from trying to
> load compctl unconditionally, which I don't like).
Is there a test whether or not a module is loaded?
Something like
if (load_module("zsh/zle") || is_loaded_module("zsh/zle"))
load_module("zsh/compctl");
If there is no such function (I don't have any insight in zsh's source)
perhaps now is the time to implement one :-)
Other possible solution: load zsh/compctl if there's a bindkey in .z* -
but that's of course not very intuitive.
> Bye
> Sven
CU,
Thomas
--
Thomas Köhler Email: jean-luc@picard.franken.de | LCARS - Linux
<>< WWW: http://jeanluc-picard.de | for Computers
IRC: jeanluc | on All Real
PGP public key available from Homepage! | Starships
[-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: bindkey bug with zsh-3.1.6-dev-21?
@ 2000-04-19 8:57 Sven Wischnowsky
2000-04-19 9:14 ` Thomas Köhler
2000-04-19 9:19 ` Peter Stephenson
0 siblings, 2 replies; 7+ messages in thread
From: Sven Wischnowsky @ 2000-04-19 8:57 UTC (permalink / raw)
To: zsh-workers
=?iso-8859-1?Q?Thomas_K=F6hler?= wrote:
> Hi,
> Seems that there's a problem with bindkey and zsh-3.1.6-dev-21 and
> zsh-3.1.6-dev-22:
>
> When I use this .zshrc:
>
> bindkey -e
> export EDITOR=3Dvi
>
> I get not tab-completion. If I type "bindkey", I get a long list of
> bindkeys, amongst others this one:
> "^I" expand-or-complete
>
> So, the binding is there, but it just doesn't work :-(
>
> The funny thing is, when I just have the "export EDITOR=3Dvi" line in my
> =2Ezshrc and type "bindkey -e" on the prompt later, tab-completion works.
> How to resolve the problem?
Put `zmodload zsh/compctl' in your `.zshrc'. Or better, use the new
completion system (autoloading and calling `compinit').
Ick. The problem is that in autoload_zleread() we do:
if (load_module("zsh/zle"))
load_module("zsh/compctl");
i.e., we attempt to load compctl only if loading zle succeeds. For
people who have a call to `bindkey' in their .z*, the zle module will
already be loaded, re-loading fails and compctl is not loaded. Bummer.
Can anyone think of a solution for this? I can't (apart from trying to
load compctl unconditionally, which I don't like).
Bye
Sven
--
Sven Wischnowsky wischnow@informatik.hu-berlin.de
^ permalink raw reply [flat|nested] 7+ messages in thread
* bindkey bug with zsh-3.1.6-dev-21?
@ 2000-04-19 8:35 Thomas Köhler
0 siblings, 0 replies; 7+ messages in thread
From: Thomas Köhler @ 2000-04-19 8:35 UTC (permalink / raw)
To: zsh-workers
[-- Attachment #1: Type: text/plain, Size: 825 bytes --]
Hi,
Seems that there's a problem with bindkey and zsh-3.1.6-dev-21 and
zsh-3.1.6-dev-22:
When I use this .zshrc:
bindkey -e
export EDITOR=vi
I get not tab-completion. If I type "bindkey", I get a long list of
bindkeys, amongst others this one:
"^I" expand-or-complete
So, the binding is there, but it just doesn't work :-(
The funny thing is, when I just have the "export EDITOR=vi" line in my
.zshrc and type "bindkey -e" on the prompt later, tab-completion works.
How to resolve the problem?
CU,
Thomas
--
Thomas Köhler Email: jean-luc@picard.franken.de | LCARS - Linux
<>< WWW: http://jeanluc-picard.de | for Computers
IRC: jeanluc | on All Real
PGP public key available from Homepage! | Starships
[-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2000-04-19 9:45 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-04-19 9:26 bindkey bug with zsh-3.1.6-dev-21? Sven Wischnowsky
2000-04-19 9:39 ` Peter Stephenson
-- strict thread matches above, loose matches on Subject: below --
2000-04-19 9:45 Sven Wischnowsky
2000-04-19 8:57 Sven Wischnowsky
2000-04-19 9:14 ` Thomas Köhler
2000-04-19 9:19 ` Peter Stephenson
2000-04-19 8:35 Thomas Köhler
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).