/[emacs]/emacs/lisp/emacs-lisp/easy-mmode.el
ViewVC logotype

Diff of /emacs/lisp/emacs-lisp/easy-mmode.el

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.68 by teirllm, Thu Jul 14 00:56:13 2005 UTC revision 1.69 by teirllm, Sat Jul 16 02:25:48 2005 UTC
# Line 142  For example, you could write Line 142  For example, you could write
142    (let* ((mode-name (symbol-name mode))    (let* ((mode-name (symbol-name mode))
143           (pretty-name (easy-mmode-pretty-mode-name mode lighter))           (pretty-name (easy-mmode-pretty-mode-name mode lighter))
144           (globalp nil)           (globalp nil)
145             (set nil)
146           (initialize nil)           (initialize nil)
147           (group nil)           (group nil)
148             (type nil)
149           (extra-args nil)           (extra-args nil)
150           (extra-keywords nil)           (extra-keywords nil)
151           (require t)           (require t)
# Line 160  For example, you could write Line 162  For example, you could write
162          (:lighter (setq lighter (pop body)))          (:lighter (setq lighter (pop body)))
163          (:global (setq globalp (pop body)))          (:global (setq globalp (pop body)))
164          (:extra-args (setq extra-args (pop body)))          (:extra-args (setq extra-args (pop body)))
165            (:set (setq set (list :set (pop body))))
166          (:initialize (setq initialize (list :initialize (pop body))))          (:initialize (setq initialize (list :initialize (pop body))))
167          (:group (setq group (nconc group (list :group (pop body)))))          (:group (setq group (nconc group (list :group (pop body)))))
168            (:type (setq type (list :type (pop body))))
169          (:require (setq require (pop body)))          (:require (setq require (pop body)))
170          (:keymap (setq keymap (pop body)))          (:keymap (setq keymap (pop body)))
171          (t (push keyw extra-keywords) (push (pop body) extra-keywords))))          (t (push keyw extra-keywords) (push (pop body) extra-keywords))))
# Line 169  For example, you could write Line 173  For example, you could write
173      (setq keymap-sym (if (and keymap (symbolp keymap)) keymap      (setq keymap-sym (if (and keymap (symbolp keymap)) keymap
174                         (intern (concat mode-name "-map"))))                         (intern (concat mode-name "-map"))))
175    
176        (unless set (setq set '(:set 'custom-set-minor-mode)))
177    
178      (unless initialize      (unless initialize
179        (setq initialize        (setq initialize '(:initialize 'custom-initialize-default)))
             '(:initialize 'custom-initialize-default)))  
180    
181      (unless group      (unless group
182        ;; We might as well provide a best-guess default group.        ;; We might as well provide a best-guess default group.
# Line 179  For example, you could write Line 184  For example, you could write
184              `(:group ',(intern (replace-regexp-in-string              `(:group ',(intern (replace-regexp-in-string
185                                  "-mode\\'" "" mode-name)))))                                  "-mode\\'" "" mode-name)))))
186    
187        (unless type (setq type '(:type 'boolean)))
188    
189      `(progn      `(progn
190         ;; Define the variable to enable or disable the mode.         ;; Define the variable to enable or disable the mode.
191         ,(if (not globalp)         ,(if (not globalp)
# Line 201  See the command `%s' for a description o Line 208  See the command `%s' for a description o
208    
209              `(defcustom ,mode ,init-value              `(defcustom ,mode ,init-value
210                 ,(format base-doc-string pretty-name mode mode)                 ,(format base-doc-string pretty-name mode mode)
211                 :set 'custom-set-minor-mode                 ,@set
212                 ,@initialize                 ,@initialize
213                 ,@group                 ,@group
214                 :type 'boolean                 ,@type
215                 ,@(cond                 ,@(cond
216                    ((not (and curfile require)) nil)                    ((not (and curfile require)) nil)
217                    ((not (eq require t)) `(:require ,require)))                    ((not (eq require t)) `(:require ,require)))

Legend:
Removed from v.1.68  
changed lines
  Added in v.1.69

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26