From 81626c45849ed818db038944a48c5f5bcb6115ac Mon Sep 17 00:00:00 2001 From: KJ Date: Mon, 25 Mar 2024 00:22:56 -0400 Subject: [PATCH] Setting keybindings. --- configs/init-evil.el | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/configs/init-evil.el b/configs/init-evil.el index 0d29033..b4fd1c4 100644 --- a/configs/init-evil.el +++ b/configs/init-evil.el @@ -27,8 +27,14 @@ ;; Habilitar atajos de de tecla de emacs en insert state (setq evil-insert-state-map (make-sparse-keymap)) - ;; Ingresar en normal state con ESC desde insert state o desde Emacs state - (evil-define-key 'insert 'global (kbd "") 'evil-normal-state) + ;; Cerrar corfu y pasar a modo normal al presionar escape + (evil-define-key 'insert 'global (kbd "") (lambda() + (interactive) + (call-interactively 'corfu-quit) + (evil-normal-state))) + + ;; (evil-define-key 'normal 'global (kbd "") 'corfu-quit) + ;; Cambiar a mode emacs con escape ;; (evil-define-key 'emacs 'global (kbd "") 'evil-normal-state) ;; Cambiar Insert state por emacs state. ;; (defalias 'evil-insert-state 'evil-emacs-state) @@ -48,6 +54,7 @@ (evil-define-key vim-states 'global (kbd "C-r") 'consult-ripgrep) (evil-define-key 'normal 'global (kbd "U") 'undo-redo) (evil-define-key 'normal 'global (kbd "C-S-z") 'undo-redo) + (evil-define-key 'normal 'global (kbd "M-.") 'xref-find-definitions) ;; Arreglar yank-pop en normal mode (evil-define-key 'normal 'global (kbd "M-y") 'consult-yank-pop) @@ -58,7 +65,7 @@ (evil-define-key 'normal 'global (kbd "C-e") 'move-end-of-line) ;; Navegación entre frames - (evil-define-key 'motion 'global (kbd "o") 'other-frame) + (evil-define-key 'motion 'global (kbd "o") 'other-window) ;; Atajos con leader key para frames (evil-define-key 'motion 'global (kbd "0") 'delete-window) @@ -77,16 +84,20 @@ (evil-define-key 'normal 'global (kbd "mw") 'web-mode) ;; Otros atajos - (evil-define-key 'motion 'global (kbd "b") 'ivy-switch-buffer) ;; Cambiar de buffer - (evil-define-key 'motion 'global (kbd "p") 'consult-projectile) ;; Archivos del proyecto (o abrir proyecto si no hay alguno) - (evil-define-key 'motion 'global (kbd "cp") 'projectile-switch-project) ;; Cambiar proyecto - (evil-define-key 'motion 'global (kbd "ff") 'find-file) ;; Abrir archivo + (evil-define-key 'motion 'global (kbd "xb") 'consult-buffer) ;; Cambiar de buffer + (evil-define-key 'motion 'global (kbd "xp") 'consult-projectile) ;; Archivos del proyecto (o abrir proyecto si no hay alguno) + (evil-define-key 'motion 'global (kbd "cp") 'projectile-switch-project) ;; Cambiar proyecto + (evil-define-key 'motion 'global (kbd "xf") 'find-file) ;; Abrir archivo + (evil-define-key 'motion 'global (kbd "xr") 'consult-recent-file) ;; Lista de archivos recientes + (evil-define-key 'motion 'global (kbd "rg") 'consult-ripgrep) ;; Búsqueda rápida con ripgrep + (evil-define-key 'motion 'global (kbd "gi") 'imenu) ;; imenu ;; Iniciar en normal state si es un lenguaje de programación u org-mode ;; (evil-set-initial-state 'prog-mode 'normal) ;; (evil-set-initial-state 'org-mode 'normal) ;; (evil-set-initial-state 'dashboard-mode 'normal) (evil-set-initial-state 'dired 'normal) + (evil-set-initial-state 'vterm-mode 'emacs) ) (provide 'init-evil)