From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "W. Trevor King" Newsgroups: gmane.emacs.bugs Subject: bug#16657: [PATCH] Detect XTerm versions for non-VT100 emulation modes Date: Wed, 5 Feb 2014 08:47:39 -0800 Message-ID: <01e801b917954436b4bc557f78356975ae9c38f8.1391591023.git.wking@tremily.us> References: <01e801b917954436b4bc557f78356975ae9c38f8.1391591022.git.wking@tremily.us> NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1391619025 3242 80.91.229.3 (5 Feb 2014 16:50:25 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 5 Feb 2014 16:50:25 +0000 (UTC) Cc: "W. Trevor King" To: 16657@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Feb 05 17:50:32 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 1WB5gE-0004lp-08 for geb-bug-gnu-emacs@m.gmane.org; Wed, 05 Feb 2014 17:50:30 +0100 Original-Received: from localhost ([::1]:60163 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WB5gD-0003l4-Lo for geb-bug-gnu-emacs@m.gmane.org; Wed, 05 Feb 2014 11:50:29 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:54929) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WB5g1-0003e9-W2 for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 11:50:25 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WB5fp-0008KQ-Fw for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 11:50:17 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:37084) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WB5fp-0008Iv-CS for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 11:50:05 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1WB5fo-0001v4-9a for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 11:50:04 -0500 X-Loop: help-debbugs@gnu.org Resent-From: "W. Trevor King" Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 05 Feb 2014 16:50:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 16657 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.13916189947338 (code B ref -1); Wed, 05 Feb 2014 16:50:03 +0000 Original-Received: (at submit) by debbugs.gnu.org; 5 Feb 2014 16:49:54 +0000 Original-Received: from localhost ([127.0.0.1]:51101 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WB5fa-0001uD-ME for submit@debbugs.gnu.org; Wed, 05 Feb 2014 11:49:54 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:53015) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WB5et-0001sj-1G for submit@debbugs.gnu.org; Wed, 05 Feb 2014 11:49:07 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WB5el-0007uK-J8 for submit@debbugs.gnu.org; Wed, 05 Feb 2014 11:49:06 -0500 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:37116) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WB5el-0007uG-FY for submit@debbugs.gnu.org; Wed, 05 Feb 2014 11:48:59 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:54675) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WB5ee-0002mz-SX for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 11:48:59 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WB5eY-0007rA-8d for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 11:48:52 -0500 Original-Received: from qmta04.westchester.pa.mail.comcast.net ([76.96.62.40]:37125) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WB5eY-0007r6-2Q for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 11:48:46 -0500 Original-Received: from omta07.westchester.pa.mail.comcast.net ([76.96.62.59]) by qmta04.westchester.pa.mail.comcast.net with comcast id NcbK1n0071GhbT854golx7; Wed, 05 Feb 2014 16:48:45 +0000 Original-Received: from odin.tremily.us ([24.18.63.50]) by omta07.westchester.pa.mail.comcast.net with comcast id Ngok1n008152l3L3TgokjY; Wed, 05 Feb 2014 16:48:45 +0000 Original-Received: from mjolnir.tremily.us (unknown [192.168.0.140]) by odin.tremily.us (Postfix) with ESMTPS id BDDCBFEA56C; Wed, 5 Feb 2014 08:48:43 -0800 (PST) Original-Received: (nullmailer pid 11218 invoked by uid 1000); Wed, 05 Feb 2014 16:47:44 -0000 X-Mailer: git-send-email 1.8.5.2.8.g0f6c0d1 In-Reply-To: <01e801b917954436b4bc557f78356975ae9c38f8.1391591022.git.wking@tremily.us> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20121106; t=1391618925; bh=uLMXRm7WxAfLx7y9rrOy6CbuJGw9R9MN/jBj5JuAkrI=; h=Received:Received:Received:Received:From:To:Subject:Date: Message-Id; b=tAp9OchHF8l0pBypHl28YdrZAGJPgZoM7Y4vKk0UV+zwf6evz+2vQrNNbEYl/yio4 aKhVqwiuuKkhI38FjPMXp8+unq3/GQ+DA7eTrirom4OYZCNreQG95i5cqMN40Y3KDw WgWAbDjps9XTrHnBlvNch0noydr1HiRigPxdTKsOMR2Tn0tpZMXwiGs+3xgMUrseLX cSI/tIwF93Aibj9AkzK9iSmvT8fxU+07aB36xhAf7ZR7Mp8LJr6Vq71WFCrbUmZBiy Ooi/K4Pgs2Oicm5Ic+PDdEkueamCVS4YT3kE39RdPw8turWJDybWh5yyyctKCb21Ne KENljSCaPeLrQ== X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Mailman-Approved-At: Wed, 05 Feb 2014 11:49:48 -0500 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:84634 Archived-At: * term/xterm.el (xterm--version-handler): Handle cases where the terminal type is not zero. The three numbers in the {CSI}>{Ps}c response are: Pp (terminal type), Pv (firmware version), and Pc (always zero for xterm). Before this commit, Emacs only looked at Pv if Pp was zero (VT100). However, for XTerm v280 and later, the default emulation is for VT420 (Pp = 41). See the XTerm changelog for details: http://invisible-island.net/xterm/xterm.log-contents.html#xterm_280 --- I sent this in a few hours ago, but it doesn't look like it made it to the list. I wasn't subscribed to the list then, so it's possible the original is queued for moderator approval. I didn't get any message to that effect though, so I just signed up and am sending this resubmission ;). Another useful link (the source for my control code information) is http://invisible-island.net/xterm/ctlseqs/ctlseqs.html, but I didn't work that into my commit message. Let me know if that's worth a resubmit. Cheers, Trevor lisp/term/xterm.el | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lisp/term/xterm.el b/lisp/term/xterm.el index 87f8c96..3d1b28b 100644 --- a/lisp/term/xterm.el +++ b/lisp/term/xterm.el @@ -500,8 +500,8 @@ The relevant features are: ;; see if by using a longer timeout we get rid of most issues. (while (and (setq chr (read-event nil nil 2)) (not (equal chr ?c))) (setq str (concat str (string chr)))) - (when (string-match "0;\\([0-9]+\\);0" str) - (let ((version (string-to-number (match-string 1 str)))) + (when (string-match "\\([0-9]+\\);\\([0-9]+\\);0" str) + (let ((version (string-to-number (match-string 2 str)))) ;; If version is 242 or higher, assume the xterm supports ;; reporting the background color (TODO: maybe earlier ;; versions do too...) -- 1.8.5.2.8.g0f6c0d1