From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: where-is only mentions first key in interval Date: Mon, 13 Feb 2012 11:00:45 -0500 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1329148867 14493 80.91.229.3 (13 Feb 2012 16:01:07 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 13 Feb 2012 16:01:07 +0000 (UTC) Cc: emacs-devel@gnu.org To: Per =?iso-8859-1?Q?Starb=E4ck?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Feb 13 17:01:02 2012 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1RwyKq-0003EA-TR for ged-emacs-devel@m.gmane.org; Mon, 13 Feb 2012 17:01:01 +0100 Original-Received: from localhost ([::1]:56753 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RwyKq-0001DR-BZ for ged-emacs-devel@m.gmane.org; Mon, 13 Feb 2012 11:01:00 -0500 Original-Received: from eggs.gnu.org ([140.186.70.92]:49477) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RwyKi-0001DB-Nq for emacs-devel@gnu.org; Mon, 13 Feb 2012 11:00:58 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RwyKe-0006OM-HB for emacs-devel@gnu.org; Mon, 13 Feb 2012 11:00:52 -0500 Original-Received: from chene.dit.umontreal.ca ([132.204.246.20]:41232) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RwyKe-0006OE-E0 for emacs-devel@gnu.org; Mon, 13 Feb 2012 11:00:48 -0500 Original-Received: from pastel.home (lechon.iro.umontreal.ca [132.204.27.242]) by chene.dit.umontreal.ca (8.14.1/8.14.1) with ESMTP id q1DG0k5Y017050; Mon, 13 Feb 2012 11:00:46 -0500 Original-Received: by pastel.home (Postfix, from userid 20848) id 4996F59537; Mon, 13 Feb 2012 11:00:46 -0500 (EST) In-Reply-To: ("Per =?iso-8859-1?Q?Starb=E4ck=22's?= message of "Mon, 13 Feb 2012 16:19:24 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.93 (gnu/linux) X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 1 Rules triggered RV4131=0 X-NAI-Spam-Version: 2.2.0.9309 : core <4131> : streams <728249> : uri <1064664> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 132.204.246.20 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:148555 Archived-At: > (key-description [(101 . 102)]) returns just "e". I've installed the patch below, so it will display as "dired-find-file is on RET, e..f, " It would be better to handle such "trivial" intervals as separate keys, but that's a larger change (because "C-x e..f" needs to be turned into "C-x e, C-x f"). Stefan === modified file 'src/keymap.c' --- src/keymap.c 2012-01-19 07:21:25 +0000 +++ src/keymap.c 2012-02-13 15:52:25 +0000 @@ -2270,9 +2270,15 @@ if (CONSP (key) && lucid_event_type_list_p (key)) key = Fevent_convert_list (key); + if (CONSP (key) && INTEGERP (XCAR (key)) && INTEGERP (XCDR (key))) + /* An interval from a map-char-table. */ + return concat3 (Fsingle_key_description (XCAR (key), no_angles), + build_string (".."), + Fsingle_key_description (XCDR (key), no_angles)); + key = EVENT_HEAD (key); - if (INTEGERP (key)) /* Normal character */ + if (INTEGERP (key)) /* Normal character. */ { char tem[KEY_DESCRIPTION_SIZE], *p; @@ -2280,7 +2286,7 @@ *p = 0; return make_specified_string (tem, -1, p - tem, 1); } - else if (SYMBOLP (key)) /* Function key or event-symbol */ + else if (SYMBOLP (key)) /* Function key or event-symbol. */ { if (NILP (no_angles)) {