Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

PATCH: completion listing and singlelinezle



Sven Wischnowsky <wischnow@xxxxxxxxx> typed:
: Peter Stephenson wrote:
:> A colleague pointed out to me that somebody on comp.unix.shell found out
:> that singlelinezle completely screws up completion listings.  They were

:> I tried back in 3.0.6 (pre-installed on this Solaris 5.8 system) and it
:> sort-of worked, without alwayslastprompt behaviour, but there is an odd bug
:> that the display doesn't get refreshed properly until you type another
:> character.  I hope that's an old bug we don't need to worry about any
:> more.

Seems to be gone.  Could repro in 3.0.8 but not in 4.*
 
: As far as I can see in zrefresh(), with singlelinezle it gives up
: (zle_refresh.c:394ff) before coming to the code that decides whether
: the list has to be displayed (line 650).

Found out that zle_refresh.c didn't have any goto statements in it yet
so I thought I better do one :-)

Index: Src/Zle/zle_refresh.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Zle/zle_refresh.c,v
retrieving revision 1.4
diff -u -r1.4 zle_refresh.c
--- Src/Zle/zle_refresh.c	24 Oct 2001 07:00:49 -0000	1.4
+++ Src/Zle/zle_refresh.c	14 Feb 2002 05:20:41 -0000
@@ -393,7 +393,7 @@
 
     if (termflags & TERM_SHORT) {
 	singlerefresh();
-	return;
+	goto singlelineout;
     }
 
     if (cs < 0) {
@@ -643,6 +643,7 @@
     onumscrolls = numscrolls;
     if (nlnct > vmaxln)
 	vmaxln = nlnct;
+singlelineout:
     fflush(shout);		/* make sure everything is written out */
 
     /* if we have a new list showing, note it; if part of the list has been
@@ -1183,7 +1184,6 @@
     qbuf = nbuf;
     nbuf = obuf;
     obuf = qbuf;
-    fflush(shout);		/* make sure everything is written out */
 }
 
 /**/

Regards,
-- 
Geoff Wing : <gcw@xxxxxxxxx>
Rxvt Stuff : <gcw@xxxxxxxx>
Zsh Stuff  : <gcw@xxxxxxx>



Messages sorted by: Reverse Date, Date, Thread, Author