From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Lennart Borgman Newsgroups: gmane.emacs.bugs Subject: bug#6305: 24.0.50; Regression: most, but not all, keyboard shortcuts are missing Date: Mon, 31 May 2010 18:33:45 +0200 Message-ID: References: <55D498A2115046ED9C7333EB540DC922@us.oracle.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1275325080 27761 80.91.229.12 (31 May 2010 16:58:00 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 31 May 2010 16:58:00 +0000 (UTC) Cc: 6305@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon May 31 18:57:59 2010 connect(): No such file or directory Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OJ8JK-0001YI-DD for geb-bug-gnu-emacs@m.gmane.org; Mon, 31 May 2010 18:57:58 +0200 Original-Received: from localhost ([127.0.0.1]:42732 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OJ8JJ-0006YI-L7 for geb-bug-gnu-emacs@m.gmane.org; Mon, 31 May 2010 12:57:57 -0400 Original-Received: from [140.186.70.92] (port=45791 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OJ8JB-0006Ke-1A for bug-gnu-emacs@gnu.org; Mon, 31 May 2010 12:57:50 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OJ8J1-0006Wr-K0 for bug-gnu-emacs@gnu.org; Mon, 31 May 2010 12:57:41 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:33512) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OJ8J1-0006Wf-Ie for bug-gnu-emacs@gnu.org; Mon, 31 May 2010 12:57:39 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1OJ7x7-0005eD-QH; Mon, 31 May 2010 12:35:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Lennart Borgman Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 31 May 2010 16:35:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 6305 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 6305-submit@debbugs.gnu.org id=B6305.127532365421697 (code B ref 6305); Mon, 31 May 2010 16:35:01 +0000 Original-Received: (at 6305) by debbugs.gnu.org; 31 May 2010 16:34:14 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OJ7wL-0005du-Qe for submit@debbugs.gnu.org; Mon, 31 May 2010 12:34:14 -0400 Original-Received: from mail-yw0-f196.google.com ([209.85.211.196]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OJ7wJ-0005dm-T0 for 6305@debbugs.gnu.org; Mon, 31 May 2010 12:34:12 -0400 Original-Received: by ywh34 with SMTP id 34so2890744ywh.30 for <6305@debbugs.gnu.org>; Mon, 31 May 2010 09:34:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:cc:content-type :content-transfer-encoding; bh=rdMBdyE6iK5bshk6qOAmiBoKNZnoe4iVhbvQ3gF4Lr0=; b=sB8Q3ip6ZkWOnKGbf1wSj5O3u1by17TyljFxhja2kSl9T/xYNH6Ges06fl66pegs4I tCosiA51fNTdB5BkH3+oHa8GnL6ZGO7u9PaEFbQ658kmeuG9CVtW0LCr/YPnUUz34sX7 XaDMFTvnouJjjNKhaXIYTLsLBHiqU6D+pXgq4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:content-transfer-encoding; b=pqLYzLMuiptGJUHEU+1dqgM6iEhJJtFsY/Dz+tFwpgB6FEMt4X9k7wjBJoyWxUAFUU 90tzU5vOEPFIbhsOMsad4w0EkxT9yjIxx1k0dcZ9yVEek0PKq5/1AnYWcxSCnDUfnI9t WezX8/1cqRv0YPUde8tXTDHYjzvNO2p79z1Bs= Original-Received: by 10.101.3.38 with SMTP id f38mr5169712ani.90.1275323645480; Mon, 31 May 2010 09:34:05 -0700 (PDT) Original-Received: by 10.100.44.20 with HTTP; Mon, 31 May 2010 09:33:45 -0700 (PDT) In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list Resent-Date: Mon, 31 May 2010 12:35:01 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) 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: , Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:37447 Archived-At: On Mon, May 31, 2010 at 5:31 PM, Stefan Monnier wrote: > >> I have also noticed that key bindings are not always shown in the >> menus, but I wondered if that was because I was using >> overriding-terminal-local-map there. I havn't had time to check, >> however key bindings in global map and normal minor mode maps seems to >> show up fine in the menus. > > I don't know where to start looking without a reproducible recipe. > The fix for 6171 only touched tmm.el so it can't affect GUI menus. I think the problem is this: - Fwhere_is_internal calls Fcurrent_active_maps, but the latter does not include overriding-terminal-local-map if the first arg is Qnil. It is Qnil in this case so overriding-terminal-local-map is not considered. However using Qt for the first arg is no good either since then only the overriding map(s) are considered. Obviously Fcurrent_active_maps behaves this way for the key lookup in the command loop. Perhaps there should be something like Freally_active_maps ()? >> In the C code it looks up key bindings like this: >> =C2=A0 (where-is-internal 'ido-kill-buffer nil t nil nil) >> However it seems like key remapping is forgotten there. > > In which sense? What was I thinking, I really should learn to be more explicit ... ;-) Yes, of course it looks at remapping, but for menus it would be good if this situation was handled too: - Let us say `kill-buffer' is in the menus. - It got remapped to `ido-kill-buffer'. The code in parse_menu_item around line 8008 calls keys =3D Fwhere_is_internal (def, Qnil, Qt, Qnil, Qnil); Since the last arg is nil it does not find any binding for `kill-buffer' AFAICS. Or do I miss something?