From stephen.berman@gmx.net Wed Sep 16 17:02:24 2009 Received: (at submit) by emacsbugs.donarmstrong.com; 17 Sep 2009 00:02:24 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-2.0 required=4.0 tests=AWL,FOURLA autolearn=no version=3.2.5-bugs.debian.org_2005_01_02 Received: from fencepost.gnu.org (fencepost.gnu.org [140.186.70.10]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n8H02Mub017275 for ; Wed, 16 Sep 2009 17:02:23 -0700 Received: from mail.gnu.org ([199.232.76.166]:39958 helo=mx10.gnu.org) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1Mo4S6-0004Lz-36 for emacs-pretest-bug@gnu.org; Wed, 16 Sep 2009 20:02:22 -0400 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1Mo4S3-0006qx-P5 for emacs-pretest-bug@gnu.org; Wed, 16 Sep 2009 20:02:21 -0400 Received: from mail.gmx.net ([213.165.64.20]:54306) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1Mo4S3-0006qd-7K for emacs-pretest-bug@gnu.org; Wed, 16 Sep 2009 20:02:19 -0400 Received: (qmail invoked by alias); 17 Sep 2009 00:02:17 -0000 Received: from i59F55FAA.versanet.de (EHLO escher.local.home) [89.245.95.170] by mail.gmx.net (mp005) with SMTP; 17 Sep 2009 02:02:17 +0200 X-Authenticated: #20778731 X-Provags-ID: V01U2FsdGVkX1/aEJFHvNDaHL1//Vz0+cELLa7Kby64za3AoNDChI jyw1+jZRNC1avf Received: by escher.local.home (Postfix, from userid 1000) id 1487A1D1938; Thu, 17 Sep 2009 02:02:16 +0200 (CEST) From: Stephen Berman To: emacs-pretest-bug@gnu.org Subject: 23.1.50; Can't turn off auto-fill-mode via mouse-minor-mode-menu Sender: steve@escher.local.home Date: Thu, 17 Sep 2009 02:02:16 +0200 Message-ID: <87bpla5th3.fsf@escher.local.home> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Y-GMX-Trusted: 0 X-FuHaFi: 0.5 X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 3) 1. emacs -Q 2. Click mouse-3 over the major mode indicator in the mode line and select Auto fill from the pop-up menu. 3. Click mouse-1 over "Fill" in the mode line and select "Turn Off[sic] minor mode" from the pop-up menu. => Auto Fill mode remains enabled. I traced this problem to auto-fill-function from simple.el, which is the value of cmd in the last when-sexp of popup-menu from mouse.el: since auto-fill-function is not interactive, (commandp cmd) is nil and the body of the when-clause, containing a call to cmd, is not evaluated. But simply making auto-fill-function interactive is not enough, since auto-fill-function is a no-op. The following redefinition of auto-fill-function makes step 3 above DTRT, but I suspect it is not the right fix, since I assume auto-fill-function was meant to be a no-op: (defun auto-fill-function () "Automatically break line at a previous space, in insertion of text." (interactive) (auto-fill-mode)) In GNU Emacs 23.1.50.1 (i686-pc-linux-gnu, GTK+ Version 2.14.4) of 2009-09-17 on escher Windowing system distributor `The X.Org Foundation', version 11.0.10502000 Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=local locale-coding-system: utf-8-unix default enable-multibyte-characters: t From monnier@iro.umontreal.ca Wed Sep 16 18:33:22 2009 Received: (at 4455-done) by emacsbugs.donarmstrong.com; 17 Sep 2009 01:33:22 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-2.8 required=4.0 tests=AWL,HAS_BUG_NUMBER, MURPHY_DRUGS_REL8 autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from ironport2-out.pppoe.ca (ironport2-out.teksavvy.com [206.248.154.181]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n8H1XLA0032212 for <4455-done@emacsbugs.donarmstrong.com>; Wed, 16 Sep 2009 18:33:22 -0700 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AqQEAOcusUpFpZBe/2dsb2JhbACBU91GhBgFh30 X-IronPort-AV: E=Sophos;i="4.44,401,1249272000"; d="scan'208";a="45807122" Received: from 69-165-144-94.dsl.teksavvy.com (HELO ceviche.home) ([69.165.144.94]) by ironport2-out.pppoe.ca with ESMTP; 16 Sep 2009 21:33:15 -0400 Received: by ceviche.home (Postfix, from userid 20848) id 74E13B449F; Wed, 16 Sep 2009 21:33:15 -0400 (EDT) From: Stefan Monnier To: Stephen Berman Subject: Re: bug#4455: 23.1.50; Can't turn off auto-fill-mode via mouse-minor-mode-menu Message-ID: References: <87bpla5th3.fsf@escher.local.home> Date: Wed, 16 Sep 2009 21:33:15 -0400 In-Reply-To: <87bpla5th3.fsf@escher.local.home> (Stephen Berman's message of "Thu, 17 Sep 2009 02:02:16 +0200") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii > 2. Click mouse-3 over the major mode indicator in the mode line and > select Auto fill from the pop-up menu. > 3. Click mouse-1 over "Fill" in the mode line and select "Turn Off[sic] > minor mode" from the pop-up menu. > => Auto Fill mode remains enabled. > I traced this problem to auto-fill-function from simple.el, which is the > value of cmd in the last when-sexp of popup-menu from mouse.el: since > auto-fill-function is not interactive, (commandp cmd) is nil and the > body of the when-clause, containing a call to cmd, is not evaluated. Thank you for tracking it down. I've installed the patch below which should fix it. Stefan --- mouse.el.~1.357.~ 2009-07-21 17:38:12.000000000 -0400 +++ mouse.el 2009-09-16 21:30:41.000000000 -0400 @@ -158,7 +158,8 @@ (list (completing-read "Minor mode indicator: " (describe-minor-mode-completion-table-for-indicator)))) - (let ((minor-mode (lookup-minor-mode-from-indicator indicator))) + (let* ((minor-mode (lookup-minor-mode-from-indicator indicator)) + (mm-fun (or (get minor-mode :minor-mode-function) minor-mode))) (unless minor-mode (error "Cannot find minor mode for `%s'" indicator)) (let* ((map (cdr-safe (assq minor-mode minor-mode-map-alist))) (menu (and (keymapp map) (lookup-key map [menu-bar])))) @@ -167,10 +168,10 @@ (mouse-menu-non-singleton menu) `(keymap ,indicator - (turn-off menu-item "Turn Off minor mode" ,minor-mode) + (turn-off menu-item "Turn Off minor mode" ,mm-fun) (help menu-item "Help for minor mode" (lambda () (interactive) - (describe-function ',minor-mode)))))) + (describe-function ',mm-fun)))))) (popup-menu menu)))) (defun mouse-minor-mode-menu (event) From unknown Sat Sep 06 23:15:19 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Thu, 15 Oct 2009 14:24:11 +0000 User-Agent: Fakemail v42.6.9 # A New Hope # A long time ago, in a galaxy far, far away # something happened. # # Magically this resulted in the following # action being taken, but this fake control # message doesn't tell you why it happened # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator