emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Menus with more items than the TTY can display


From: Eli Zaretskii
Subject: Re: Menus with more items than the TTY can display
Date: Fri, 18 Oct 2013 22:17:50 +0300

> Date: Fri, 18 Oct 2013 18:30:48 +0300
> From: Eli Zaretskii <address@hidden>
> Cc: address@hidden
> 
> > Date: Fri, 18 Oct 2013 16:35:37 +0200
> > From: martin rudalics <address@hidden>
> > CC: address@hidden
> > 
> >  > What, you mean neither of the display corruptions happen with the
> >  > above breakpoint active?  Then it sounds like we have some timing or
> >  > race condition problems, and debugging this will be very hard indeed.
> > 
> > Debugging this way extremely slows down movement in the menu.
> 
> Yes, but it's unclear to me why should this change the phenomenon.
> 
> >  > Let's try to see the problem from the other end.  Please do:
> >  >
> >  >   M-x open-termscript RET SOME-FILE RET
> >  >
> >  > then hit F10, type C-n and/or C-p several times, make sure the problem
> >  > happens, then exit Emacs and then post SOME-FILE.
> > 
> > Attached as ts.txt.
> 
> It looks like we are completely delusional in what we write.

Actually, I take this back.  If I "re-play" the termscript file you
sent incrementally to the screen, line after line, I see the correct
display, and no artifacts.  At least as long as I re-play the script
on PuTTY.

So I'm going to claim that Emacs does TRT here, and it's some problem
with this specific terminal emulator.  Unless there's someone who can
explain what are we doing wrong.

Here's a script I used to "re-play" the termscript (Unix aficionados
will forgive me my rudimentary skills of shell scripting):

  #! /bin/sh
  # Invoke as "script FILE"
  l=`wc -l $1 | awk '{ print $1 }'`
  i=1
  while (expr $i "<=" $l > /dev/null); do
    sed -n -e `echo $i`p $1 && sleep 2 && i=`expr $i "+" 1`;
  done

If you use this script on your terminal, do you see any incorrect
display, similar to what happens when Emacs runs?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]