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

From: Vincent Lefevre <[email-masked]>
Date: Mon, 29 Jun 2015 04:35:19 +0200

On 2015-06-28 21:01:02 -0400, Stefan Monnier wrote:
> >> > 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:
> 
> That's not my experience: I added
> 
>   (message "xterm-extra-capabilities = %S" xterm-extra-capabilities)
> 
> right before the `if' and it does give me the value I set in my ~/.emacs.

Sorry, I agree. I had removed too much code in my test: the whole
"if", including the ELSE part.

In fact, reportBackground also yields the garbage problem.
So, there's a bug here:

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

If I understand correctly, there's a timeout here, but since the
feature is claimed to be supported, the timeout should be removed.

> > 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.
> 
>    echo "$XTERM_VERSION"
> 
> returns the empty string for me (running in an xterm, under Debian testing).

Debian 6.0.10:

$ echo $XTERM_VERSION
XTerm(261)

Debian 7.8:

$ echo $XTERM_VERSION
XTerm(278)

Debian 8.1:

$ echo $XTERM_VERSION
XTerm(312)

Debian unstable:

$ echo $XTERM_VERSION
XTerm(318)

However it is not passed by default via SSH, though this could be
fixed in later versions.

Now, the end user can set the value of xterm-extra-capabilities
depending on $XTERM_VERSION. The only remaining problem is the
one I've mentioned above.

-- 
Vincent Lefèvre <[email-masked]> - 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)