GNU bug report logs -
#13730
24.3.50; Diff from Bzr-Log-View not highlighted
Previous Next
Reported by: <rcopley <at> gmail.com>
Date: Sat, 16 Feb 2013 12:19:02 UTC
Severity: normal
Tags: confirmed, patch
Merged with 13751,
13806,
13812,
13816
Found in version 24.3.50
Done: Katsumi Yamaoka <yamaoka <at> jpl.org>
Bug is archived. No further changes may be made.
Full log
Message #14 received at 13730 <at> debbugs.gnu.org (full text, mbox):
> Unfortunately font-lock gets turned off in a change-major-mode-hook
> function (font-lock-change-mode in "font-core.el"), which doesn't seem
> to have been anticipated.
Sorry, that's a red herring, it has nothing to do with font-lock-change-mode.
Now that turning a minor mode off during a major mode function
disables the corresponding global minor mode, turning the minor mode
back on should re-enable the global minor mode, as in the patch below.
(In Emacs trunk, whitespace mode is turned on in diff mode by a
directory-local variable. Thus the function `whitepace-turn-on' is
called from inside the diff-mode major mode function; but
`whitespace-turn-on' turns font lock off and turns it back on again.)
=== modified file 'lisp/emacs-lisp/easy-mmode.el'
*** lisp/emacs-lisp/easy-mmode.el 2013-02-15 20:01:51 +0000
--- lisp/emacs-lisp/easy-mmode.el 2013-02-17 05:18:06 +0000
***************
*** 461,468 ****
;; kill-all-local-variables.
(defvar-local ,disable-MODE nil)
(defun ,MODE-disable-in-buffer ()
! (unless ,mode
! (setq ,disable-MODE t)))
(put ',MODE-disable-in-buffer 'definition-name ',global-mode))))
;;;
--- 461,467 ----
;; kill-all-local-variables.
(defvar-local ,disable-MODE nil)
(defun ,MODE-disable-in-buffer ()
! (setq ,disable-MODE (not ,mode)))
(put ',MODE-disable-in-buffer 'definition-name ',global-mode))))
;;;
This bug report was last modified 12 years and 90 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.