emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/xkcd 6338b49627 40/82: Use major mode instead of minor mod


From: ELPA Syncer
Subject: [nongnu] elpa/xkcd 6338b49627 40/82: Use major mode instead of minor mode
Date: Mon, 12 Dec 2022 21:59:52 -0500 (EST)

branch: elpa/xkcd
commit 6338b49627de40ebe926a7561a352362e1f227c1
Author: Raphaël Cauderlier <cauderlier@crans.org>
Commit: Raphaël Cauderlier <cauderlier@crans.org>

    Use major mode instead of minor mode
---
 xkcd.el | 25 ++++++++++++-------------
 1 file changed, 12 insertions(+), 13 deletions(-)

diff --git a/xkcd.el b/xkcd.el
index 94963bf61c..5a51f65c99 100644
--- a/xkcd.el
+++ b/xkcd.el
@@ -37,17 +37,16 @@
 (require 'url)
 
 ;;;###autoload
-(define-minor-mode xkcd-mode
-  "Minor mode for viewing xkcd in Emacs"
-  :lighter " xkcd"
-  :global nil
-  :keymap (let ((map (make-sparse-keymap)))
-           (define-key map (kbd "<right>") 'xkcd-next)
-           (define-key map (kbd "<left>") 'xkcd-prev)
-           (define-key map (kbd "r") 'xkcd-rand)
-           (define-key map (kbd "t") 'xkcd-alt-text)
-           (define-key map (kbd "q") 'xkcd-kill-buffer)
-           map))
+(define-derived-mode xkcd-mode special-mode "xkcd"
+  "Major mode for viewing xkcd (http://xkcd.com/) comics."
+  :group 'xkcd
+  )
+
+(define-key xkcd-mode-map (kbd "<right>") 'xkcd-next)
+(define-key xkcd-mode-map (kbd "<left>") 'xkcd-prev)
+(define-key xkcd-mode-map (kbd "r") 'xkcd-rand)
+(define-key xkcd-mode-map (kbd "t") 'xkcd-alt-text)
+(define-key xkcd-mode-map (kbd "q") 'xkcd-kill-buffer)
 
 (defvar xkcd-alt nil)
 (defvar xkcd-cur nil)
@@ -117,11 +116,11 @@ be located in xkcd-cache-dir"
   (xkcd-update-latest)
   (get-buffer-create "*xkcd*")
   (switch-to-buffer "*xkcd*")
+  (if (and (boundp 'xkcd-mode) (not xkcd-mode))
+      (xkcd-mode))
   (if buffer-read-only
       (toggle-read-only))
   (erase-buffer)
-  (if (and (boundp 'xkcd-mode) (not xkcd-mode))
-      (xkcd-mode))
   (setq xkcd-cur num)
   (let ((out (if (eq num 0)
                 (xkcd-get-json "http://xkcd.com/info.0.json"; 0)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]