diff options
Diffstat (limited to 'lisp/td-evil.el')
-rw-r--r-- | lisp/td-evil.el | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/lisp/td-evil.el b/lisp/td-evil.el new file mode 100644 index 0000000..afa92a7 --- /dev/null +++ b/lisp/td-evil.el @@ -0,0 +1,33 @@ +;;; -*- lexical-binding: t; -*- + +(use-package evil + :init + (setq evil-want-integration t) + (setq evil-want-keybinding nil) + (setq evil-want-C-u-scroll t) + (setq evil-want-C-i-jump nil) + (setq evil-insert-state-cursor t) + :config + (evil-mode 1) + + ;; Fix keybindings. + (define-key evil-insert-state-map (kbd "C-g") 'evil-normal-state) + (define-key evil-insert-state-map (kbd "C-h") 'evil-delete-backward-char-and-join) + + ;; Use visual line motions even outside of visual-line-mode buffers. + (evil-global-set-key 'motion "j" 'evil-next-visual-line) + (evil-global-set-key 'motion "k" 'evil-previous-visual-line) + + ;; Ensure some buffers start in normal mode. + (evil-set-initial-state 'messages-buffer-mode 'normal) + (evil-set-initial-state 'dashboard-mode 'normal)) + +(use-package evil-collection + :after evil + :config + (evil-collection-init)) + +(use-package evil-nerd-commenter + :bind ("M-/" . evilnc-comment-or-uncomment-lines)) + +(provide 'td-evil) |