summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSomelauw <Somelauw>2017-05-05 14:30:27 +0200
committerSomelauw <Somelauw>2017-05-05 14:30:27 +0200
commitc20637296efa77bbe72387b94a930b00e6d64405 (patch)
tree72de5aa23d54269d22034c10337177008cc1bc53
parent2adc6b3fa0422bd4d6afcfc383abe31f0fa6de38 (diff)
Make argument to evil-org-set-key-theme optional
If called with no arguments, evil-org-key-theme is used
-rw-r--r--README.org7
-rw-r--r--evil-org.el40
2 files changed, 28 insertions, 19 deletions
diff --git a/README.org b/README.org
index 8758e18..349d9b1 100644
--- a/README.org
+++ b/README.org
@@ -52,7 +52,12 @@ This is an extended and actively maintained version of https://github.com/edwtjo
(add-to-list 'load-path "~/.emacs.d/plugins/evil-org")
(require 'evil-org)
(add-hook 'org-mode-hook 'evil-org-mode)
- (setq evil-org-key-theme '(navigation insert textobjects additional))
+ (evil-org-set-key-theme '(navigation insert textobjects additional))
+ #+END_SRC
+
+ Or you can customize =evil-org-key-theme= and replace the last line by:
+ #+BEGIN_SRC emacs-lisp
+ (evil-org-set-key-theme)
#+END_SRC
For a more elaborate setup, take a look at [[file:doc/example_config.el][this example]].
diff --git a/evil-org.el b/evil-org.el
index 0496ecc..a22920b 100644
--- a/evil-org.el
+++ b/evil-org.el
@@ -7,7 +7,7 @@
;; Git-Repository: git://github.com/Somelauw/evil-org.git
;; Created: 2012-06-14
;; Forked-since: 2017-02-12
-;; Version: 0.6.1
+;; Version: 0.6.2
;; Package-Requires: ((emacs "24.4") (evil "0") (org "8.0.0"))
;; Keywords: evil vim-emulation org-mode key-bindings presets
@@ -68,7 +68,9 @@
(evil-disable-insert-state-bindings))
'(textobjects navigation additional)
'(textobjects navigation insert additional))
- "Which key themes to enable."
+ "Which key themes to enable.
+If you use this variable, you should call `evil-org-set-key-theme' with zero
+arguments."
:group 'evil-org
:type '(set (const navigation)
(const textobjects)
@@ -565,22 +567,24 @@ If a prefix argument is given, links are opened in incognito mode."
"o" 'evil-org-recompute-clocks))
;;;###autoload
-(defun evil-org-set-key-theme (theme)
- "Select what key THEMEs to enable."
- (setq evil-org-mode-map (make-sparse-keymap))
- (evil-org--populate-base-bindings)
- (when (memq 'navigation theme) (evil-org--populate-navigation-bindings))
- (when (memq 'insert theme) (evil-org--populate-insert-bindings))
- (when (memq 'textobjects theme) (evil-org--populate-textobjects-bindings))
- (when (memq 'rsi theme) (evil-org--populate-rsi-bindings))
- (when (memq 'additional theme) (evil-org--populate-additional-bindings))
- (when (memq 'shift theme) (evil-org--populate-shift-bindings))
- (when (memq 'todo theme) (evil-org--populate-todo-bindings))
- (when (memq 'heading theme) (evil-org--populate-heading-bindings))
- (when (memq 'leader theme) (evil-org--populate-leader-bindings))
- (setcdr
- (assq 'evil-org-mode minor-mode-map-alist)
- evil-org-mode-map))
+(defun evil-org-set-key-theme (&optional theme)
+ "Select what keythemes to enable.
+Optional argument THEME list of themes. See evil-org-keytheme for a list of values."
+ (let ((theme (or theme evil-org-key-theme)))
+ (setq evil-org-mode-map (make-sparse-keymap))
+ (evil-org--populate-base-bindings)
+ (when (memq 'navigation theme) (evil-org--populate-navigation-bindings))
+ (when (memq 'insert theme) (evil-org--populate-insert-bindings))
+ (when (memq 'textobjects theme) (evil-org--populate-textobjects-bindings))
+ (when (memq 'rsi theme) (evil-org--populate-rsi-bindings))
+ (when (memq 'additional theme) (evil-org--populate-additional-bindings))
+ (when (memq 'shift theme) (evil-org--populate-shift-bindings))
+ (when (memq 'todo theme) (evil-org--populate-todo-bindings))
+ (when (memq 'heading theme) (evil-org--populate-heading-bindings))
+ (when (memq 'leader theme) (evil-org--populate-leader-bindings))
+ (setcdr
+ (assq 'evil-org-mode minor-mode-map-alist)
+ evil-org-mode-map)))
;;; vim-like confirm/abort for capture and src
;;; Taken from mwillsey (Max Willsey) on https://github.com/syl20bnr/spacemacs/pull/7400