Compare commits

..

No commits in common. "8c5f9ecd14d60284dfe41f6db8d3b58bdacd7912" and "25c794daf25ca00873a69b238d6f89fec691e564" have entirely different histories.

View File

@ -14,11 +14,11 @@
;;; Code: ;;; Code:
(use-package evil (use-package evil
:defer t :defer t
:hook (elpaca-after-init . evil-mode) ;; :hook (elpaca-after-init . evil-mode)
:config :config
;; Configuraciones básicas ;; Configuraciones básicas
;; (setq evil-default-state 'emacs) ;; Modo por defecto en emacs ;; (setq evil-default-state 'emacs) ;; Modo por defecto en emacs
(setq evil-default-state 'insert) ;; Modo por defecto en emacs (setq evil-default-state 'normal) ;; Modo por defecto en emacs
(setq evil-emacs-state-cursor 'bar) ;; Cursor de emacs state en bar (setq evil-emacs-state-cursor 'bar) ;; Cursor de emacs state en bar
(setq evil-normal-state-cursor 'bar) ;; Cursor de normal state en bar en lugar de box (setq evil-normal-state-cursor 'bar) ;; Cursor de normal state en bar en lugar de box
(evil-set-leader 'motion (kbd "SPC")) ;; Leader key (evil-set-leader 'motion (kbd "SPC")) ;; Leader key
@ -27,14 +27,8 @@
;; Habilitar atajos de de tecla de emacs en insert state ;; Habilitar atajos de de tecla de emacs en insert state
(setq evil-insert-state-map (make-sparse-keymap)) (setq evil-insert-state-map (make-sparse-keymap))
;; Cerrar corfu y pasar a modo normal al presionar escape ;; Ingresar en normal state con ESC desde insert state o desde Emacs state
(evil-define-key 'insert 'global (kbd "<escape>") (lambda() (evil-define-key 'insert 'global (kbd "<escape>") 'evil-normal-state)
(interactive)
(call-interactively 'corfu-quit)
(evil-normal-state)))
;; (evil-define-key 'normal 'global (kbd "<escape>") 'corfu-quit)
;; Cambiar a mode emacs con escape
;; (evil-define-key 'emacs 'global (kbd "<escape>") 'evil-normal-state) ;; (evil-define-key 'emacs 'global (kbd "<escape>") 'evil-normal-state)
;; Cambiar Insert state por emacs state. ;; Cambiar Insert state por emacs state.
;; (defalias 'evil-insert-state 'evil-emacs-state) ;; (defalias 'evil-insert-state 'evil-emacs-state)
@ -54,7 +48,6 @@
(evil-define-key vim-states 'global (kbd "C-r") 'consult-ripgrep) (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 "U") 'undo-redo)
(evil-define-key 'normal 'global (kbd "C-S-z") '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 ;; Arreglar yank-pop en normal mode
(evil-define-key 'normal 'global (kbd "M-y") 'consult-yank-pop) (evil-define-key 'normal 'global (kbd "M-y") 'consult-yank-pop)
@ -65,7 +58,7 @@
(evil-define-key 'normal 'global (kbd "C-e") 'move-end-of-line) (evil-define-key 'normal 'global (kbd "C-e") 'move-end-of-line)
;; Navegación entre frames ;; Navegación entre frames
(evil-define-key 'motion 'global (kbd "<leader>o") 'other-window) (evil-define-key 'motion 'global (kbd "<leader>o") 'other-frame)
;; Atajos con leader key para frames ;; Atajos con leader key para frames
(evil-define-key 'motion 'global (kbd "<leader>0") 'delete-window) (evil-define-key 'motion 'global (kbd "<leader>0") 'delete-window)
@ -84,20 +77,16 @@
(evil-define-key 'normal 'global (kbd "<leader>mw") 'web-mode) (evil-define-key 'normal 'global (kbd "<leader>mw") 'web-mode)
;; Otros atajos ;; Otros atajos
(evil-define-key 'motion 'global (kbd "<leader>xb") 'consult-buffer) ;; Cambiar de buffer (evil-define-key 'motion 'global (kbd "<leader>b") 'ivy-switch-buffer) ;; Cambiar de buffer
(evil-define-key 'motion 'global (kbd "<leader>xp") 'consult-projectile) ;; Archivos del proyecto (o abrir proyecto si no hay alguno) (evil-define-key 'motion 'global (kbd "<leader>p") 'consult-projectile) ;; Archivos del proyecto (o abrir proyecto si no hay alguno)
(evil-define-key 'motion 'global (kbd "<leader>cp") 'projectile-switch-project) ;; Cambiar proyecto (evil-define-key 'motion 'global (kbd "<leader>cp") 'projectile-switch-project) ;; Cambiar proyecto
(evil-define-key 'motion 'global (kbd "<leader>xf") 'find-file) ;; Abrir archivo (evil-define-key 'motion 'global (kbd "<leader>ff") 'find-file) ;; Abrir archivo
(evil-define-key 'motion 'global (kbd "<leader>xr") 'consult-recent-file) ;; Lista de archivos recientes
(evil-define-key 'motion 'global (kbd "<leader>rg") 'consult-ripgrep) ;; Búsqueda rápida con ripgrep
(evil-define-key 'motion 'global (kbd "<leader>gi") 'imenu) ;; imenu
;; Iniciar en normal state si es un lenguaje de programación u org-mode ;; 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 'prog-mode 'normal)
;; (evil-set-initial-state 'org-mode 'normal) ;; (evil-set-initial-state 'org-mode 'normal)
;; (evil-set-initial-state 'dashboard-mode 'normal) ;; (evil-set-initial-state 'dashboard-mode 'normal)
(evil-set-initial-state 'dired 'normal) (evil-set-initial-state 'dired 'normal)
(evil-set-initial-state 'vterm-mode 'emacs)
) )
(provide 'init-evil) (provide 'init-evil)