[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Global Font Lock by default
From: |
Luc Teirlinck |
Subject: |
Re: Global Font Lock by default |
Date: |
Thu, 3 Nov 2005 20:03:20 -0600 (CST) |
Below is a slightly revised version of my patch to easy-mmode. The
only differences with my prior patch are that the new treatment of
keywords is now reflected in the docstring and that a :global keyword
is now ignored, since the very use of `define-global-minor-mode'
implies that it must be t. If my patches seem OK, I would also update
the Elisp doc for `define-global-minor-mode'.
===File ~/easy-mmode-diff===================================
*** easy-mmode.el 24 Aug 2005 08:06:37 -0500 1.71
--- easy-mmode.el 03 Nov 2005 19:04:26 -0600
***************
*** 272,279 ****
"Make GLOBAL-MODE out of the buffer-local minor MODE.
TURN-ON is a function that will be called with no args in every buffer
and that should try to turn MODE on if applicable for that buffer.
! KEYS is a list of CL-style keyword arguments:
! :group to specify the custom group.
If MODE's set-up depends on the major mode in effect when it was
enabled, then disabling and reenabling MODE should make MODE work
--- 272,285 ----
"Make GLOBAL-MODE out of the buffer-local minor MODE.
TURN-ON is a function that will be called with no args in every buffer
and that should try to turn MODE on if applicable for that buffer.
! KEYS is a list of CL-style keyword arguments. As the minor mode
! defined by this function is always global, any :global keyword is
! ignored. Other keywords have the same meaning as in `define-minor-mode',
! which see. In particular, :group specifies the custom group.
! The most useful keywords are those that are passed on to the
! `defcustom'. It normally makes no sense to pass the :lighter
! or :keymap keywords to `define-global-minor-mode', since these
! are usually passed to the buffer-local version of the minor mode.
If MODE's set-up depends on the major mode in effect when it was
enabled, then disabling and reenabling MODE should make MODE work
***************
*** 285,305 ****
(pretty-name (easy-mmode-pretty-mode-name mode))
(pretty-global-name (easy-mmode-pretty-mode-name global-mode))
(group nil)
! (extra-args nil)
(MODE-buffers (intern (concat global-mode-name "-buffers")))
(MODE-enable-in-buffers
(intern (concat global-mode-name "-enable-in-buffers")))
(MODE-check-buffers
(intern (concat global-mode-name "-check-buffers")))
(MODE-cmhh (intern (concat global-mode-name "-cmhh")))
! (MODE-major-mode (intern (concat (symbol-name mode) "-major-mode"))))
;; Check keys.
! (while (keywordp (car keys))
! (case (pop keys)
! (:extra-args (setq extra-args (pop keys)))
(:group (setq group (nconc group (list :group (pop keys)))))
! (t (setq keys (cdr keys)))))
(unless group
;; We might as well provide a best-guess default group.
--- 291,313 ----
(pretty-name (easy-mmode-pretty-mode-name mode))
(pretty-global-name (easy-mmode-pretty-mode-name global-mode))
(group nil)
! (extra-keywords nil)
(MODE-buffers (intern (concat global-mode-name "-buffers")))
(MODE-enable-in-buffers
(intern (concat global-mode-name "-enable-in-buffers")))
(MODE-check-buffers
(intern (concat global-mode-name "-check-buffers")))
(MODE-cmhh (intern (concat global-mode-name "-cmhh")))
! (MODE-major-mode (intern (concat (symbol-name mode) "-major-mode")))
! keyw)
;; Check keys.
! (while (keywordp (setq keyw (car keys)))
! (setq keys (cdr keys))
! (case keyw
(:group (setq group (nconc group (list :group (pop keys)))))
! (:global (setq keys (cdr keys)))
! (t (push keyw extra-keywords) (push (pop keys) extra-keywords))))
(unless group
;; We might as well provide a best-guess default group.
***************
*** 317,323 ****
%s is actually not turned on in every buffer but only in those
in which `%s' turns it on."
pretty-name pretty-global-name pretty-name turn-on)
! :global t :extra-args ,extra-args ,@group
;; Setup hook to handle future mode changes and new buffers.
(if ,global-mode
--- 325,331 ----
%s is actually not turned on in every buffer but only in those
in which `%s' turns it on."
pretty-name pretty-global-name pretty-name turn-on)
! :global t ,@group ,@(nreverse extra-keywords)
;; Setup hook to handle future mode changes and new buffers.
(if ,global-mode
============================================================
- Re: Global Font Lock by default, (continued)
- Re: Global Font Lock by default, Richard M. Stallman, 2005/11/02
- Re: Global Font Lock by default, David Kastrup, 2005/11/02
- Re: Global Font Lock by default, Luc Teirlinck, 2005/11/02
- Re: Global Font Lock by default, Richard M. Stallman, 2005/11/03
- Re: Global Font Lock by default, Stefan Monnier, 2005/11/03
- Re: Global Font Lock by default, David Kastrup, 2005/11/03
- Re: Global Font Lock by default,
Luc Teirlinck <=
Re: Global Font Lock by default, Romain Francoise, 2005/11/01
Re: Global Font Lock by default, Dan Nicolaescu, 2005/11/01
Re: Global Font Lock by default, Richard M. Stallman, 2005/11/01