zsh-workers
 help / color / mirror / code / Atom feed
* pws-19 + patches: parameter completion before pipeline
@ 1999-05-31 13:39 Andrej Borsenkow
  0 siblings, 0 replies; 2+ messages in thread
From: Andrej Borsenkow @ 1999-05-31 13:39 UTC (permalink / raw)
  To: ZSH workers mailing list

I just noted it. Is it intentional?

bor@itsrm2:/tools/src/zsh-3.1.5-pws-19%> zsh -f
itsrm2% fpath=($PWD/Completion/*)
itsrm2% source ./Completion/Core/compinit 
itsrm2% zmodload parameter 
itsrm2% print -l ${(k)opt<TAB> | grep glob
                         ^ move cursor here
B-e-e-p, but
itsrm2% print -l ${(k)opt<TAB>
itsrm2% print -l ${(k)opt            
opt       options 

The patch list I have:
6318
6322
6326
6330
6331
6332
6335
6340
6343
6345
6346
6352
6354
6355
6368
6369
6374

/andrej              


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: pws-19 + patches: parameter completion before pipeline
@ 1999-05-31 14:35 Sven Wischnowsky
  0 siblings, 0 replies; 2+ messages in thread
From: Sven Wischnowsky @ 1999-05-31 14:35 UTC (permalink / raw)
  To: zsh-workers


Andrej Borsenkow wrote:

> I just noted it. Is it intentional?
> 
> bor@itsrm2:/tools/src/zsh-3.1.5-pws-19%> zsh -f
> itsrm2% fpath=($PWD/Completion/*)
> itsrm2% source ./Completion/Core/compinit 
> itsrm2% zmodload parameter 
> itsrm2% print -l ${(k)opt<TAB> | grep glob
>                          ^ move cursor here
> B-e-e-p

The problem is that the lexer just gives us `${(k)opt<TAB> | grep glob'
as the string to complete. Then the completion code parses this and
takes `opt | grep glob' as the parameter name.
A simple fix would simply remove that part of such a string that can't 
be used as a parameter name. However, this would also mean that the
rest is completely ignored and does not even show up in $words.
The patch below does this, because trying to solve it in a way that
preserves the information about following words would be pretty
complicated (either temporarily inserting a closing brace when calling 
the lexer, but first finding out when this has to be done, or fiddling 
with the lexer, which is completely unacceptable).

Ok?

Bye
 Sven

diff -u os/Zle/zle_tricky.c Src/Zle/zle_tricky.c
--- os/Zle/zle_tricky.c	Wed May 26 08:42:58 1999
+++ Src/Zle/zle_tricky.c	Mon May 31 16:30:05 1999
@@ -751,6 +751,7 @@
 	    wb = cs - offs;
 	    we = wb + e - b;
 	    ispar = (br >= 2 ? 2 : 1);
+	    b[we-wb] = '\0';
 	    return b;
 	}
     }

--
Sven Wischnowsky                         wischnow@informatik.hu-berlin.de


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~1999-05-31 14:35 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-05-31 13:39 pws-19 + patches: parameter completion before pipeline Andrej Borsenkow
1999-05-31 14:35 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).