diff options
| author | Thomas Ulmer <thomasmulmer02@gmail.com> | 2024-04-27 16:46:22 -0700 |
|---|---|---|
| committer | Thomas Ulmer <thomasmulmer02@gmail.com> | 2024-04-27 16:46:22 -0700 |
| commit | e950b705540c5371ef1d7efd6bce9d8e36d62f3f (patch) | |
| tree | 1bf043689c8b78c188636e9cc75c7ecbd88f1805 /emacs/personal-lisp/evil-conf.el | |
| parent | e421309a69747803731c15e913d1ff8a37a0cc69 (diff) | |
emacs config cleanup
Diffstat (limited to 'emacs/personal-lisp/evil-conf.el')
| -rw-r--r-- | emacs/personal-lisp/evil-conf.el | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/emacs/personal-lisp/evil-conf.el b/emacs/personal-lisp/evil-conf.el new file mode 100644 index 0000000..7c389fe --- /dev/null +++ b/emacs/personal-lisp/evil-conf.el @@ -0,0 +1,69 @@ + +;; evil mode stuff +(setq + evil-want-keybinding nil + evil-want-integration t) +;; evil-want-C-d-scroll nil +;; evil-want-C-w-delete nil +;; evil-disable-insert-state-bindings t +;; evil-respect-visual-line-mode t +(require 'evil) +(when (require 'evil-collection nil t) + (evil-collection-init)) +(evil-mode 1) +(evilem-default-keybindings "SPC") +(define-key evil-motion-state-map (kbd "TAB") 'indent-for-tab-command) +(evil-set-initial-state 'vterm-mode 'emacs) +(use-package evil-surround + :ensure t + :config + (global-evil-surround-mode 1)) +(use-package evil-snipe + :ensure t + :config + (evil-snipe-mode +1) + (evil-snipe-override-mode +1) + (setq evil-snipe-scope 'buffer) + (evil-define-key 'visual evil-snipe-local-mode-map "z" 'evil-snipe-s) + (evil-define-key 'visual evil-snipe-local-mode-map "Z" 'evil-snipe-S)) +(define-key evil-insert-state-map (kbd "C-d") 'delete-char) +(define-key evil-insert-state-map (kbd "C-e") 'move-end-of-line) +(define-key evil-insert-state-map (kbd "C-a") 'move-beginning-of-line) +(define-key evil-normal-state-map (kbd "M-.") 'xref-find-definitions) +(define-key evil-normal-state-map (kbd "C-t") 'transpose-chars) +(define-key evil-normal-state-map (kbd "M-Z") 'suspend-frame) + +;;; sasha bindings +(defun evil-window-split-and-switch () + "Split the window vertically and switch to the new buffer." + (interactive) + (evil-window-split) + (other-window 1)) + +(defun evil-window-vsplit-and-switch () + "Split the window horizontally and switch to the new buffer." + (interactive) + (evil-window-vsplit) + (other-window 1)) + +(evil-define-key 'normal global-map (kbd "SPC i") 'imenu) +(evil-define-key 'normal global-map (kbd "SPC RET") 'vterm) +(evil-define-key 'normal global-map (kbd "SPC v") 'vterm) +(evil-define-key 'normal global-map (kbd "SPC !") 'abort-recursive-edit) +(evil-define-key 'normal global-map (kbd "SPC f f") 'find-file) + +(evil-define-key 'normal global-map (kbd "SPC SPC SPC j") 'evil-window-split-and-switch) +(evil-define-key 'normal global-map (kbd "SPC SPC SPC k") 'evil-window-split-and-switch) +(evil-define-key 'normal global-map (kbd "SPC SPC SPC h") 'evil-window-vsplit-and-switch) +(evil-define-key 'normal global-map (kbd "SPC SPC SPC l") 'evil-window-vsplit-and-switch) +(evil-define-key 'normal global-map (kbd "SPC SPC h") 'evil-window-left) +(evil-define-key 'normal global-map (kbd "SPC SPC j") 'evil-window-down) +(evil-define-key 'normal global-map (kbd "SPC SPC k") 'evil-window-up) +(evil-define-key 'normal global-map (kbd "SPC SPC l") 'evil-window-right) +(evil-define-key 'normal global-map (kbd "SPC SPC w") 'delete-window) +(evil-define-key 'normal global-map (kbd "SPC SPC q") 'delete-window) +(evil-define-key 'normal global-map (kbd "SPC SPC b") 'balance-windows) +(evil-define-key 'normal global-map (kbd "SPC s s") 'save-buffer) +(evil-define-key 'normal global-map (kbd "SPC s f") 'counsel-find-file) +(evil-define-key 'normal global-map (kbd "SPC s r") 'counsel-rg) +(evil-define-key 'normal global-map (kbd "SPC ;") 'frog-jump-buffer) |
