diff options
| author | Jack Jamison <jackqjamison@gmail.com> | 2026-07-05 01:19:30 -0400 |
|---|---|---|
| committer | Jack Jamison <jackqjamison@gmail.com> | 2026-07-05 01:19:30 -0400 |
| commit | bdf9a71ab7baa2b1de9abcfd5df1a9107a55d141 (patch) | |
| tree | c4524e6c41aa5107211103401dabfaefc81aa882 /.config/emacs/evil.el | |
| parent | fe3984f541bd32bdfa418afb305b614176b55ca0 (diff) | |
add a bunch of emacs packages HELP
Diffstat (limited to '.config/emacs/evil.el')
| -rw-r--r-- | .config/emacs/evil.el | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/.config/emacs/evil.el b/.config/emacs/evil.el new file mode 100644 index 0000000..3841565 --- /dev/null +++ b/.config/emacs/evil.el @@ -0,0 +1,42 @@ +(use-package evil + :demand t + :ensure nil + :init + (setq evil-want-keybinding nil) + :config + (evil-mode) + :custom + (evil-want-C-u-scroll t) + (evil-undo-system 'undo-redo) + (evil-move-beyond-eol nil) + :bind + ( :map evil-insert-state-map + ("C-d" . evil-delete-char)) + ( :map evil-motion-state-map + ("C-e" . nil))) + +(use-package evil-collection + :after evil + :ensure nil + :diminish evil-collection-unimpaired-mode + :config + (evil-collection-init)) + +(use-package evil-paste-indent + :after evil + :ensure nil + :diminish + :config (global-evil-paste-indent-mode t)) + +;; improved C-g dwim +(defun my-keyboard-quit () + "Smart C-g: exits evil mode, closes minibuffer, or behaves normally." + (interactive) + (if (and (bound-and-true-p evil-local-mode) (not (evil-normal-state-p))) + (evil-force-normal-state) + (if (active-minibuffer-window) + (if (minibufferp) + (minibuffer-keyboard-quit) + (abort-recursive-edit)) + (keyboard-quit)))) +(global-set-key (kbd "C-g") #'my-keyboard-quit) |
