* PATCH: make _urls magicequalsubst aware @ 2000-06-17 18:34 Tanaka Akira 2000-06-17 19:31 ` Bart Schaefer 0 siblings, 1 reply; 3+ messages in thread From: Tanaka Akira @ 2000-06-17 18:34 UTC (permalink / raw) To: zsh-workers Z(2):akr@flux% Src/zsh -f flux% bindkey -e; autoload -U compinit; compinit -D flux% setopt magicequalsubst flux% curl <TAB> _urls:56: glob not found Hm. `g:=glob' should be quoted. Index: Completion/User/_urls =================================================================== RCS file: /cvsroot/zsh/zsh/Completion/User/_urls,v retrieving revision 1.13 diff -u -r1.13 _urls --- Completion/User/_urls 2000/06/08 14:36:25 1.13 +++ Completion/User/_urls 2000/06/17 18:32:05 @@ -53,7 +53,7 @@ fi glob=(-g '*(^/)') -zparseopts -D -K -E g:=glob +zparseopts -D -K -E 'g:=glob' ipre="$IPREFIX" -- Tanaka Akira ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: PATCH: make _urls magicequalsubst aware 2000-06-17 18:34 PATCH: make _urls magicequalsubst aware Tanaka Akira @ 2000-06-17 19:31 ` Bart Schaefer 2000-06-17 19:46 ` PATCH: magicequalsubst (Re: PATCH: make _urls magicequalsubst aware) Bart Schaefer 0 siblings, 1 reply; 3+ messages in thread From: Bart Schaefer @ 2000-06-17 19:31 UTC (permalink / raw) To: Tanaka Akira, zsh-workers On Jun 18, 3:34am, Tanaka Akira wrote: } Subject: PATCH: make _urls magicequalsubst aware } } Hm. `g:=glob' should be quoted. That's indirectly my fault. I wondered aloud why it was quoted, and so the next patch unquoted it. However, that's surely a bug in magicequalsubst handling: MAGIC_EQUAL_SUBST All unquoted arguments of the form `ANYTHING=EXPRESSION' appearing after the command name have filename expansion (that is, where EXPRESSION has a leading `~' or `=') performed on EXPRESSION as if it were a parameter assignment. The argument is not otherwise treated specially; it is passed to the command as a single argument, and not used as an actual parameter assignment. For example, in echo foo=~/bar:~/rod, both occurrences of ~ would be replaced. Note that this happens anyway with typeset and similar statements. g:=glob should have ANYTHING of `g:' and EXPRESSION of `glob'. There's no expansion to be peformed on `glob'. How is the `=' getting taken to be part of the EXPRESSION? -- Bart Schaefer Brass Lantern Enterprises http://www.well.com/user/barts http://www.brasslantern.com Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net ^ permalink raw reply [flat|nested] 3+ messages in thread
* PATCH: magicequalsubst (Re: PATCH: make _urls magicequalsubst aware) 2000-06-17 19:31 ` Bart Schaefer @ 2000-06-17 19:46 ` Bart Schaefer 0 siblings, 0 replies; 3+ messages in thread From: Bart Schaefer @ 2000-06-17 19:46 UTC (permalink / raw) To: zsh-workers On Jun 17, 7:31pm, Bart Schaefer wrote: } Subject: Re: PATCH: make _urls magicequalsubst aware } } On Jun 18, 3:34am, Tanaka Akira wrote: } } Subject: PATCH: make _urls magicequalsubst aware } } } } Hm. `g:=glob' should be quoted. } } g:=glob should have ANYTHING of `g:' and EXPRESSION of `glob'. There's } no expansion to be peformed on `glob'. How is the `=' getting taken to } be part of the EXPRESSION? This fixes that, so 11959 is now unecessary but harmless. Index: Src/subst.c =================================================================== @@ -307,7 +307,7 @@ mod_export void filesub(char **namptr, int assign) { - char *sub = NULL, *str, *ptr; + char *eql = NULL, *sub = NULL, *str, *ptr; int len; filesubstr(namptr, assign); @@ -316,7 +316,7 @@ return; if (assign & PF_TYPESET) { - if ((*namptr)[1] && (sub = strchr(*namptr + 1, Equals))) { + if ((*namptr)[1] && (eql = sub = strchr(*namptr + 1, Equals))) { str = sub + 1; if ((sub[1] == Tilde || sub[1] == Equals) && filesubstr(&str, assign)) { sub[1] = '\0'; @@ -330,7 +330,9 @@ while ((sub = strchr(ptr, ':'))) { str = sub + 1; len = sub - *namptr; - if ((sub[1] == Tilde || sub[1] == Equals) && filesubstr(&str, assign)) { + if (sub > eql && + (sub[1] == Tilde || sub[1] == Equals) && + filesubstr(&str, assign)) { sub[1] = '\0'; *namptr = dyncat(*namptr, str); } -- Bart Schaefer Brass Lantern Enterprises http://www.well.com/user/barts http://www.brasslantern.com Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2000-06-17 19:46 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2000-06-17 18:34 PATCH: make _urls magicequalsubst aware Tanaka Akira 2000-06-17 19:31 ` Bart Schaefer 2000-06-17 19:46 ` PATCH: magicequalsubst (Re: PATCH: make _urls magicequalsubst aware) Bart Schaefer
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).