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

RE: Menu-selection screen refresh slowness



Borsenkow Andrej wrote:

> > 
> > Here is the (almost) promised patch for this. It makes the menu
> > selection code try to only re-display the previously and the newly
> > highlighted matches. Andrej, are you still using a dtterm? If yes, is
> > it bettern now?
> > 
> 
> Looks like menu selection stopped to work properly now:
> 
> ls TAB
> bor@itsrm2% ls xaa
> Completing files
> xaa  xab  xac  xad  xae  xaf  xag
> ^^^ selection here
> 
> a-a-m-c
> 
> bor@itsrm2% ls xaa xab
> Completing files
> xaa  xab  xac  xad  xae  xaf  xag
> ^^^ selection still here

I just noted this myself, sorry. The code for some of the keys doesn't
set up the variables we need for the optimisation. We have to disable
the faster display code for them (for now, I'll have a look at what we
can do to improve the code). Unfortunately, we have to disable it even
for TAB.


Bye
  Sven

Index: Src/Zle/complist.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/Zle/complist.c,v
retrieving revision 1.47
diff -u -r1.47 complist.c
--- Src/Zle/complist.c	24 May 2002 08:50:12 -0000	1.47
+++ Src/Zle/complist.c	24 May 2002 14:57:28 -0000
@@ -1919,6 +1919,7 @@
 	    mselect = (*(minfo.cur))->gnum;
 	    setwish = wasnext = 1;
 	    mline = 0;
+            molbeg = -42;
 	    continue;
 	} else if (cmd == Th(z_acceptandhold) ||
 		   cmd == Th(z_acceptandmenucomplete)) {
@@ -1970,6 +1971,7 @@
 		break;
 	    }
 	    setwish = 1;
+            molbeg = -42;
 	    continue;
 	} else if (cmd == Th(z_undo)) {
 	    int l;
@@ -2012,11 +2014,14 @@
 	    clearlist = 1;
 	    setwish = 1;
 	    listdat.valid = 0;
+            molbeg = -42;
 	} else if (cmd == Th(z_redisplay)) {
 	    redisplay(zlenoargs);
+            molbeg = -42;
 	    continue;
 	} else if (cmd == Th(z_clearscreen)) {
 	    clearscreen(zlenoargs);
+            molbeg = -42;
 	    continue;
 	} else if (cmd == Th(z_downhistory) ||
 		   cmd == Th(z_downlineorhistory) ||
@@ -2322,6 +2327,7 @@
 	    mselect = (*(minfo.cur))->gnum;
 	    setwish = 1;
 	    mline = -1;
+            molbeg = -42;
 	    continue;
 	} else if (cmd == Th(z_reversemenucomplete) ||
 		   !strcmp(cmd->nam, "reverse-menu-complete")) {
@@ -2330,6 +2336,7 @@
 	    mselect = (*(minfo.cur))->gnum;
 	    setwish = 1;
 	    mline = -1;
+            molbeg = -42;
 	    continue;
 	} else if (cmd == Th(z_undefinedkey)) {
 	    continue;

-- 
Sven Wischnowsky                          wischnow@xxxxxxxxx



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