diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2010-05-02 20:41:45 -0400 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2010-05-02 20:41:45 -0400 |
commit | bbf52f1e6fdaca0197ce67b897eb69a006fff8ad (patch) | |
tree | 3c41f146a8835ff85ae32fe666e4348653a292ce /lisp/gnus/gnus-dired.el | |
parent | a101e0fbac19df1d78912ee67d690d65d8f96ab0 (diff) | |
download | emacs-bbf52f1e6fdaca0197ce67b897eb69a006fff8ad.tar.gz |
Use define-minor-mode in Gnus where applicable.
* mml.el (mml-mode): Use define-minor-mode.
* gnus-undo.el (gnus-undo-mode-map): Initialize in declaration.
(gnus-undo-mode): Use define-minor-mode.
* gnus-sum.el (gnus-dead-summary-mode-map): Initialize in declaration.
(gnus-dead-summary-mode): Use define-minor-mode.
* gnus-salt.el (gnus-pick-mode-map, gnus-binary-mode-map):
Initialize in declaration.
(gnus-pick-mode, gnus-binary-mode): Use define-minor-mode.
* gnus-ml.el (gnus-mailing-list-mode-map): Initialize in declaration.
(gnus-mailing-list-mode): Use define-minor-mode.
* gnus-draft.el (gnus-draft-mode-map): Initialize in declaration.
(gnus-draft-mode): Use define-minor-mode.
* gnus-dired.el (gnus-dired-mode-map): Initialize in declaration.
(gnus-dired-mode): Use define-minor-mode.
Diffstat (limited to 'lisp/gnus/gnus-dired.el')
-rw-r--r-- | lisp/gnus/gnus-dired.el | 31 |
1 files changed, 10 insertions, 21 deletions
diff --git a/lisp/gnus/gnus-dired.el b/lisp/gnus/gnus-dired.el index 595a9fe4ffd..67cb7ecfa08 100644 --- a/lisp/gnus/gnus-dired.el +++ b/lisp/gnus/gnus-dired.el @@ -55,17 +55,12 @@ (autoload 'message-buffers "message") (autoload 'gnus-print-buffer "gnus-sum") -(defvar gnus-dired-mode nil - "Minor mode for intersections of MIME mail composition and dired.") - -(defvar gnus-dired-mode-map nil) - -(unless gnus-dired-mode-map - (setq gnus-dired-mode-map (make-sparse-keymap)) - - (define-key gnus-dired-mode-map "\C-c\C-m\C-a" 'gnus-dired-attach) - (define-key gnus-dired-mode-map "\C-c\C-m\C-l" 'gnus-dired-find-file-mailcap) - (define-key gnus-dired-mode-map "\C-c\C-m\C-p" 'gnus-dired-print)) +(defvar gnus-dired-mode-map + (let ((map (make-sparse-keymap))) + (define-key map "\C-c\C-m\C-a" 'gnus-dired-attach) + (define-key map "\C-c\C-m\C-l" 'gnus-dired-find-file-mailcap) + (define-key map "\C-c\C-m\C-p" 'gnus-dired-print) + map)) ;; FIXME: Make it customizable, change the default to `mail-user-agent' when ;; this file is renamed (e.g. to `dired-mime.el'). @@ -89,19 +84,13 @@ See `mail-user-agent' for more information." gnus-user-agent) (function :tag "Other"))) -(defun gnus-dired-mode (&optional arg) +(define-minor-mode gnus-dired-mode "Minor mode for intersections of gnus and dired. \\{gnus-dired-mode-map}" - (interactive "P") - (when (eq major-mode 'dired-mode) - (set (make-local-variable 'gnus-dired-mode) - (if (null arg) (not gnus-dired-mode) - (> (prefix-numeric-value arg) 0))) - (when gnus-dired-mode - (add-minor-mode 'gnus-dired-mode "" gnus-dired-mode-map) - (save-current-buffer - (run-hooks 'gnus-dired-mode-hook))))) + :keymap gnus-dired-mode-map + (unless (derived-mode-p 'dired-mode) + (setq gnus-dired-mode nil))) ;;;###autoload (defun turn-on-gnus-dired-mode () |