X-Git-Url: https://git.korewanetadesu.com/?p=pelican-mode.git;a=blobdiff_plain;f=pelican-mode.el;h=1b608bea1bd1e13423175d13812f940f3d812122;hp=893fc2901245d7ef45b36e8ab619f917849ea330;hb=9b2a64b9d57ee4eb95e40a309fbab4bcfa5b5fef;hpb=0eeee74fd9a459dd8c04c264c183d80f2d2b98b2 diff --git a/pelican-mode.el b/pelican-mode.el index 893fc29..1b608be 100644 --- a/pelican-mode.el +++ b/pelican-mode.el @@ -3,7 +3,7 @@ ;; Copyright 2013-2017 Joe Wreschnig ;; ;; Author: Joe Wreschnig -;; Package-Version: 20170807 +;; Package-Version: 20170808 ;; Package-Requires: ((emacs "25")) ;; URL: https://git.korewanetadesu.com/pelican-mode.git ;; Keywords: convenience, editing @@ -48,6 +48,13 @@ ;; (require 'pelican-mode) ;; (pelican-global-mode) ;; +;; Or with ``use-package'' and deferred loading: +;; +;; (use-package pelican-mode +;; :after (:any org rst markdown-mode adoc-mode) +;; :config +;; (pelican-global-mode)) +;; ;; Or, register `pelican-mode' or `pelican-mode-enable-if-site' ;; as hook functions for more direct control. @@ -60,7 +67,7 @@ ;; Customizations -(defgroup pelican-mode nil +(defgroup pelican nil "Support for Pelican articles and pages. For more information about Pelican see URL https://blog.getpelican.com/." @@ -68,7 +75,7 @@ For more information about Pelican see URL https://blog.getpelican.com/." (defcustom pelican-mode-keymap-prefix (kbd "C-c P") "Pelican mode keymap prefix." - :group 'pelican-mode + :group 'pelican :type 'string) (defcustom pelican-mode-default-page-fields @@ -77,7 +84,7 @@ For more information about Pelican see URL https://blog.getpelican.com/." See the documentation for `pelican-mode-set-field' for more information about metadata fields and special values." - :group 'pelican-mode + :group 'pelican :type '(plist)) (defcustom pelican-mode-default-article-fields @@ -86,7 +93,7 @@ about metadata fields and special values." See the documentation for `pelican-mode-set-field' for more information about metadata fields and special values." - :group 'pelican-mode + :group 'pelican :type '(plist)) (defcustom pelican-mode-formats @@ -98,7 +105,7 @@ about metadata fields and special values." This association list maps modes to functions that take two arguments, field and value strings." - :group 'pelican-mode + :group 'pelican :type '(alist :key-type function :value-type function)) @@ -142,32 +149,17 @@ When Pelican mode is enabled, additional commands are available for editing articles or pages: \\{pelican-mode-map}" + :group 'pelican :keymap pelican-mode-map :lighter " Pelican") ;;;###autoload -(define-minor-mode pelican-global-mode - "Toggle Pelican global mode. -With a prefix argument ARG, enable Pelican global mode if ARG is -positive, and disable it otherwise. If called from Lisp, enable -the mode if ARG is omitted or nil. - -Pelican is a static site generator which can process a variety of -text file formats. For more information, see URL -https://blog.getpelican.com/. - -When Pelican global mode is enabled, text files which seem to -be part of a Pelican site will have `pelican-mode' automatically -enabled. - -If you disable this, you may still enable `pelican-mode' manually -or add `pelican-mode-enable-if-site' to more specific mode -hooks." - :global t - :group 'pelican-mode - (if pelican-global-mode - (add-hook 'text-mode-hook #'pelican-mode-enable-if-site) - (remove-hook 'text-mode-hook #'pelican-mode-enable-if-site))) +(define-globalized-minor-mode pelican-global-mode pelican-mode + (lambda () + (when (derived-mode-p #'text-mode) + (pelican-mode-enable-if-site))) + :group 'pelican + :require 'pelican-mode) ;;;###autoload (defun pelican-mode-enable-if-site ()