GNU bug report logs - #12354
24.2; garbage inserted at the beginning of the buffer even when xterm-extra-capabilities is t

Previous Next

Package: emacs;

Reported by: Vincent Lefevre <vincent <at> vinc17.net>

Date: Wed, 5 Sep 2012 11:18:02 UTC

Severity: normal

Tags: fixed

Found in version 24.2

Done: Noam Postavsky <npostavs <at> users.sourceforge.net>

Bug is archived. No further changes may be made.

Full log


Message #20 received at 12354 <at> debbugs.gnu.org (full text, mbox):

From: Vincent Lefevre <vincent <at> vinc17.net>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 12354 <at> debbugs.gnu.org
Subject: Re: bug#12354: 24.2; garbage inserted at the beginning of the buffer
 even when xterm-extra-capabilities is t
Date: Wed, 27 May 2015 13:27:23 +0200
On 2012-09-05 20:44:24 +0200, Vincent Lefevre wrote:
> On 2012-09-05 12:59:30 -0400, Glenn Morris wrote:
> > Vincent Lefevre wrote:
> > 
> > >   emacs -Q -eval '(setq xterm-extra-capabilities t)' tst.c
> > 
> > By experiment, -eval is processed too late to affect the relevant
> > portion of start-up. Try putting the setting in .emacs
> 
> I had
> 
>   '(xterm-extra-capabilities (quote (modifyOtherKeys reportBackground)))
> 
> in the custom variables, but got the same problem.

The .emacs is executed too late as well: if I introduce an error in the
code below (e.g. zzz before the first when), I can see it reported. In
xterm.el, the problem is:

  (if (eq xterm-extra-capabilities 'check)
      ;; Try to find out the type of terminal by sending a "Secondary
      ;; Device Attributes (DA)" query.
      (xterm--query "\e[>0c"
                    ;; Some terminals (like OS X's Terminal.app) respond to
                    ;; this query as if it were a "Primary Device Attributes"
                    ;; query instead, so we should handle that too.
                    '(("\e[?" . xterm--version-handler)
                      ("\e[>" . xterm--version-handler)))

    (when (memq 'reportBackground xterm-extra-capabilities)
      (xterm--query "\e]11;?\e\\"
                    '(("\e]11;" .  xterm--report-background-handler))))

    (when (memq 'modifyOtherKeys xterm-extra-capabilities)
      (terminal-init-xterm-modify-other-keys)))

If I introduce a network delay with:

  tc qdisc add dev eth0 root netem delay 2000ms

the problem always occurs. But if I also remove the above code, then
it no longer occurs.

So, the above (eq xterm-extra-capabilities 'check) test seems to be
useless, and there should be a way to disable it. IMHO, this query
is ugly and should be removed entirely in favor of checking the
environment, in addition to user side settings. If the issue is that
not all xterm's behave in the same way because of new features, you
can test the XTERM_VERSION environment variable. If the default guess
is not OK, the user should have a way to fix it in his ".emacs".

-- 
Vincent Lefèvre <vincent <at> vinc17.net> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)




This bug report was last modified 7 years and 163 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.