From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Thomas Dickey Newsgroups: gmane.emacs.bugs Subject: bug#17497: 24.4.50; TTY menu glitches Date: Tue, 03 Jun 2014 14:47:49 -0400 Message-ID: <20140603184749.GA3646@aerie.jexium-island.net> References: <83vbslbuqr.fsf@gnu.org> <20140531200947.GA779@aerie.jexium-island.net> <83lhtgbrd6.fsf@gnu.org> <20140601152657.GA15078@aerie.jexium-island.net> <838upgbnra.fsf@gnu.org> <20140601171244.GA9362@aerie.jexium-island.net> <20140601171817.GB9362@aerie.jexium-island.net> Reply-To: dickey@his.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary=YZ5djTAD1cGYuMQK X-Trace: ger.gmane.org 1401821369 23498 80.91.229.3 (3 Jun 2014 18:49:29 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 3 Jun 2014 18:49:29 +0000 (UTC) Cc: 17497@debbugs.gnu.org, Thomas Dickey To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Jun 03 20:49:23 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Wrtlx-0003h9-Sf for geb-bug-gnu-emacs@m.gmane.org; Tue, 03 Jun 2014 20:49:22 +0200 Original-Received: from localhost ([::1]:55206 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wrtlx-0004yv-Cr for geb-bug-gnu-emacs@m.gmane.org; Tue, 03 Jun 2014 14:49:21 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48905) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wrtlo-0004yj-7t for bug-gnu-emacs@gnu.org; Tue, 03 Jun 2014 14:49:18 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Wrtle-0005hV-Po for bug-gnu-emacs@gnu.org; Tue, 03 Jun 2014 14:49:12 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:43639) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Wrtle-0005hN-N1 for bug-gnu-emacs@gnu.org; Tue, 03 Jun 2014 14:49:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Wrtld-0006wF-WB for bug-gnu-emacs@gnu.org; Tue, 03 Jun 2014 14:49:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Thomas Dickey Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 03 Jun 2014 18:49:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 17497 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 17497-submit@debbugs.gnu.org id=B17497.140182131926631 (code B ref 17497); Tue, 03 Jun 2014 18:49:01 +0000 Original-Received: (at 17497) by debbugs.gnu.org; 3 Jun 2014 18:48:39 +0000 Original-Received: from localhost ([127.0.0.1]:42516 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WrtlC-0006vN-Kn for submit@debbugs.gnu.org; Tue, 03 Jun 2014 14:48:38 -0400 Original-Received: from vms173013pub.verizon.net ([206.46.173.13]:40637) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Wrtl5-0006up-2A for 17497@debbugs.gnu.org; Tue, 03 Jun 2014 14:48:31 -0400 Original-Received: from localhost.localdomain ([unknown] [96.241.179.238]) by vms173013.mailsrvcs.net (Sun Java(tm) System Messaging Server 7u2-7.02 32bit (built Apr 16 2009)) with ESMTPA id <0N6L002KVW7QW920@vms173013.mailsrvcs.net> for 17497@debbugs.gnu.org; Tue, 03 Jun 2014 13:47:55 -0500 (CDT) Original-Received: from localhost.localdomain (aerie [127.0.0.1]) by localhost.localdomain (8.14.3/8.14.3/Debian-9.4) with ESMTP id s53Ilo4J003706 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 03 Jun 2014 14:47:50 -0400 Original-Received: (from tom@localhost) by localhost.localdomain (8.14.3/8.14.3/Submit) id s53IlnKQ003704; Tue, 03 Jun 2014 14:47:49 -0400 Content-disposition: inline In-reply-to: User-Agent: Mutt/1.5.20 (2009-06-14) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:89948 Archived-At: --YZ5djTAD1cGYuMQK Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Jun 03, 2014 at 09:43:04AM -0400, Stefan Monnier wrote: > Hi Thomas, >=20 > >> Most of the file, however, consists of repainting the menu. > > By the way, since the menu covers only half the screen, there aren't > > any general-purpose scrolling optimizations that would help. (xterm > > does support left/right margins, which would be interesting to explore > > in this area). What ncurses does when it's getting behind is to drop > > updates - the typeahead feature: >=20 > Currently, we're not concerned about optimization, just about tracking > down a display glitch. The tricky part of this glitch is that if we > record&replay Emacs's output, the "replay" does not suffer from the > same glitch. sure - but I gave my best answer at the outset. The behavior which you are describing won't show up by doing replay's, because it would occur when you have input (from the keyboard) interfering with the output. =20 > So apparently the terminal emulator behaves differently in the "live" > case than in the "replay" case for some reason. We tried to replay at > different speeds to see if it was related to timing, but to no avail. >=20 > To me, the next logical explanation is that the terminal emulator's > behavior is influenced y the relative timing of *input* and output. :-) =20 > For that reasons, your ncurses explanation is very interesting, yet > I can't imagine how it can be directly related since our "record&replay" > is done "after" ncurses, directly in the stream between Emacs's process > and the terminal emulator. >=20 > Do you have some other insight that could explain why the terminal > emulator would react differently in the "live" case than in the > "replay" case? repeating: if the cursor-key sequence of characters is misinterpreted (for example due to timeouts), then fragments of the sequences will echo as unexpected characters. Incidentally, if an *output* splits up an escape sequence across buffers in fflush's, then that can also open up holes in timing. But I think that's less of concern... --=20 Thomas E. Dickey http://invisible-island.net ftp://invisible-island.net --YZ5djTAD1cGYuMQK Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iEYEARECAAYFAlOOGFUACgkQcCNT4PfkjtsWZwCgugBfyokyFmzEqYFeptJOJzi+ XysAoMaGTcSGWQk04gKV1uc2XWK8oKL5 =jh34 -----END PGP SIGNATURE----- --YZ5djTAD1cGYuMQK--