Improve a few more the evil config.

This commit is contained in:
kj 2023-01-21 22:11:44 -04:00
parent 0a23b5b19d
commit c01fb4f69c

View File

@ -18,15 +18,20 @@
;; 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))
(evil-define-key 'insert 'global (kbd "<escape>") 'evil-normal-state)
;; Variales locales ;; Ingresar en normal state con ESC desde insert state o desde Emacs state
(evil-define-key 'insert 'global (kbd "<escape>") 'evil-normal-state)
;; (evil-define-key 'emacs 'global (kbd "<escape>") 'evil-normal-state)
;; Cambiar Insert state por emacs state.
;; (defalias 'evil-insert-state 'evil-emacs-state)
;; Variales locales (todos los estados o solo los estados de VIM)
(setq all-states '(normal insert visual replace operator motion emacs)) (setq all-states '(normal insert visual replace operator motion emacs))
(setq vim-states '(normal insert visual replace operator motion)) (setq vim-states '(normal insert visual replace operator motion))
(evil-define-key all-states 'global (kbd "C-z") 'evil-undo) ;; Cambiar entre modo emacs y evil (Mi pripio evil toggle)
(evil-define-key vim-states 'global (kbd "C-'") 'evil-emacs-state) (evil-define-key vim-states 'global (kbd "C-'") 'evil-emacs-state)
(evil-define-key '(emacs) 'global (kbd "C-'") 'evil-normal-state) (evil-define-key 'emacs 'global (kbd "C-'") 'evil-normal-state)
;; Navegación entre frames ;; Navegación entre frames
(evil-define-key 'motion 'global (kbd "<leader>wh") 'windmove-left) (evil-define-key 'motion 'global (kbd "<leader>wh") 'windmove-left)
@ -51,13 +56,14 @@
(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>b") 'ivy-switch-buffer) (evil-define-key 'motion 'global (kbd "<leader>b") 'ivy-switch-buffer) ;; Cambiar de buffer
(evil-define-key 'motion 'global (kbd "<leader>p") 'counsel-projectile) (evil-define-key 'motion 'global (kbd "<leader>p") 'counsel-projectile) ;; Archivos del proyecto (o abrir proyecto si no hay alguno)
(evil-define-key 'motion 'global (kbd "<leader>cp") 'projectile-switch-project) (evil-define-key 'motion 'global (kbd "<leader>cp") 'projectile-switch-project) ;; Cambiar proyecto
(evil-define-key 'motion 'global (kbd "<leader>ff") 'counsel-find-file) (evil-define-key 'motion 'global (kbd "<leader>ff") 'counsel-find-file) ;; Abrir archivo
;; Iniciar en normal state si es un lenguaje de programación ;; Iniciar en normal state si es un lenguaje de programación
(evil-set-initial-state 'prog-mode 'normal) (evil-set-initial-state 'prog-mode 'normal)
(evil-set-initial-state 'dashboard-mode 'normal)
) )
(provide 'init-evil) (provide 'init-evil)