From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1109 invoked from network); 5 Nov 1998 16:21:39 -0000 Received: from math.gatech.edu (list@130.207.146.50) by ns1.primenet.com.au with SMTP; 5 Nov 1998 16:21:39 -0000 Received: (from list@localhost) by math.gatech.edu (8.9.1/8.9.1) id LAA29055; Thu, 5 Nov 1998 11:17:30 -0500 (EST) Resent-Date: Thu, 5 Nov 1998 11:17:30 -0500 (EST) Message-ID: <13889.52842.202224.110281@catbus.alphatech.com> Date: Thu, 5 Nov 1998 11:12:26 -0500 (EST) From: greg@alphatech.com (Greg Klanderman) To: Sven Wischnowsky Cc: zsh-workers@math.gatech.edu, greg@alphatech.com Subject: Re: bug in 3.1.4 completion In-Reply-To: <199811040904.KAA29172@beta.informatik.hu-berlin.de> References: <199811040904.KAA29172@beta.informatik.hu-berlin.de> Reply-To: greg@alphatech.com X-Mailer: VM 6.62 under 21.0 "Pyrenean-pre4" XEmacs Lucid Mime-Version: 1.0 (generated by tm-edit 7.108) Content-Type: text/plain; charset=US-ASCII Resent-Message-ID: <"BTPQy.0.w57.P-SGs"@math> Resent-From: zsh-workers@math.gatech.edu X-Mailing-List: archive/latest/4560 X-Loop: zsh-workers@math.gatech.edu Precedence: list Resent-Sender: zsh-workers-request@math.gatech.edu Sven, I grabbed 3.1.5 and have a few comments... (remember to copy me on replies. thanks) >>>>> "Sven" == Sven Wischnowsky writes: Sven> Sven> greg@alphatech.com wrote: Sven> >> Hi, >> >> I have found a minor bug in zsh 3.1.4 completion related to the >> automagic removal of completed slashes. If I invoke zsh -f, >> >> % mkdir test >> % cd test >> % mkdir foo >> % mkdir foo/bar foo/barbaz >> >> % ls f ; now type TAB >> -> foo/ ; now type TAB >> -> foo/bar ; now type SPACE >> -> foo/ba ; notice the "r" got removed. >> >> This only seems to happen if you complete "foo" then >> immediately hit TAB again. If you type part of "bar" and >> then TAB it functions correctly. Sven> There was a missing fixsuffix() when inserting the unambiguous string Sven> for normal completion. It's fixed by the second hunk in the patch Sven> below (this is for 3.1.5, but you can easily insert the call to Sven> fixsuffix() in 3.1.4 in do_ambiguous() in the else-branch of the `if(p)'). As Bart noted, this is fixed in 3.1.5 as found on the ftp site. Your second hunk is not even close to applying. >> While I'm at it I have a few other nits about the completion system >> (which on the whole I think is excellent). >> >> First, another somewhat inconvenient behavior related to slash removal >> (again zsh -f, and with the same directories created above): >> >> % ls fo bar ; position the cursor on the space after the "o", hit TAB >> -> foo/ bar ; now, the cursor is still on the space after the "/". >> ; hit Control-d to delete the space >> -> foo/bar ; with cursor on "b". now Control-e (end-of-line) and >> -> foobar ; the "/" gets removed. ugh. Sven> Here is another missing call to fixsuffix() (fixed by the first Sven> hunk). This one goes into deletecharorlist() which has to do the Sven> itself since the calling code doesn't call fixsuffix() since it may Sven> use the completion code. Fixed with the first hunk. Thanks. >> Another behavior that's not quite right IMHO is completeinword: >> >> % setopt noalwaystoend completeinword >> % ls fo/bar ; position cursor on "/", hit TAB >> -> foo/bar/ ; hit TAB again >> -> foo/bar// ; hit TAB again >> -> foo/bar/// ; etc, never listing possible completions >> >> Even if I move past the "/", or even "b" it never jumps to the end of >> "bar". Sven> This is fixed in 3.1.5 with my last patches. Do you mean a patch on top of 3.1.5, or one included in 3.1.5? This does not appear to be fixed in 3.1.5 proper. Greg