projects
/
dotfiles.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
baf3e67
)
evil-mode improvement. separate some special mode
author
Peng Li
<seudut@gmail.com>
Mon, 11 Sep 2017 09:50:38 +0000
(17:50 +0800)
committer
Peng Li
<seudut@gmail.com>
Mon, 11 Sep 2017 09:50:38 +0000
(17:50 +0800)
emacs.d/emacs-evil.org
patch
|
blob
|
history
diff --git
a/emacs.d/emacs-evil.org
b/emacs.d/emacs-evil.org
index
b29c1bc
..
d323f89
100644
(file)
--- a/
emacs.d/emacs-evil.org
+++ b/
emacs.d/emacs-evil.org
@@
-8,22
+8,18
@@
in a separate file.
* Evil mode
https://www.emacswiki.org/emacs/Evil
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
* Evil mode
https://www.emacswiki.org/emacs/Evil
#+BEGIN_SRC emacs-lisp :tangle yes :results silent
- (defun my-evil-insert-state-to-emacs-state (&optional arg)
- "This advising function is called after `evil-insert-state', to switch to
- emacs state for some modes."
- (when (memq major-mode '(emacs-lisp-mode org-mode))
- (evil-emacs-state)))
+ (defvar my-mode-list-to-use-emacs-as-insert '(emacs-lisp-mode org-mode eshell-mode lisp-interaction-mode))
+ (defvar my-modes-use-emacs-init '(emacs-lisp-mode org-mode lisp-interaction-mode eshell-mode))
(defun my-evil-config ()
"This should be called after evil-mode is loaded."
(defun my-evil-config ()
"This should be called after evil-mode is loaded."
- ;; default state
(setq evil-default-state 'normal)
(setq evil-default-state 'normal)
- (dolist (mode
- '(org-mode emacs-lisp-mode eshell-mode))
- (evil-set-initial-state mode 'emacs))
+ (dolist (mode my-modes-use-emacs-init) (evil-set-initial-state mode 'emacs))
- (advice-add 'evil-insert-state :after #'my-evil-insert-state-to-emacs-state)
+ (advice-add 'evil-insert-state :after (lambda (&optional arg)
+ (when (memq major-mode my-mode-list-to-use-emacs-as-insert)
+ (evil-emacs-state))))
(define-key evil-normal-state-map "\C-W s" 'evil-window-split)
(define-key evil-normal-state-map "\C-W v" 'evil-window-vsplit)
(define-key evil-normal-state-map "\C-W s" 'evil-window-split)
(define-key evil-normal-state-map "\C-W v" 'evil-window-vsplit)
@@
-70,7
+66,7
@@
https://www.emacswiki.org/emacs/Evil
:init
(setq-default evil-escape-delay 0.2)
(setq-default evil-escape-key-sequence "jj")
:init
(setq-default evil-escape-delay 0.2)
(setq-default evil-escape-key-sequence "jj")
- (setq-default evil-escape-excluded-states '(normal visual motion))
+ (setq-default evil-escape-excluded-states '(normal visual motion
emacs
))
(setq-default evil-escape-excluded-major-modes '(emacs-lisp-mode org-mode))
:config
(evil-escape-mode))
(setq-default evil-escape-excluded-major-modes '(emacs-lisp-mode org-mode))
:config
(evil-escape-mode))