Compare commits

..

3 Commits

Author SHA1 Message Date
KJ
6972b11f0a User evil-normal-state as ininitial only with some modes. 2024-09-10 12:51:50 -04:00
KJ
8e8544960e Ignore evil-tutor files. 2024-09-10 12:44:00 -04:00
KJ
1752b38dc1 Fix problem with corfu-quit and evil. 2024-09-10 12:43:53 -04:00
3 changed files with 31 additions and 10 deletions

1
.gitignore vendored
View File

@ -32,3 +32,4 @@ workspace/
/.mc-lists.el /.mc-lists.el
/eshell/ /eshell/
/.emacs.desktop /.emacs.desktop
/.tutor/

View File

@ -22,9 +22,9 @@
:hook ((elpaca-after-init . global-corfu-mode) :hook ((elpaca-after-init . global-corfu-mode)
(corfu-mode . corfu-popupinfo-mode)) (corfu-mode . corfu-popupinfo-mode))
:bind (:map corfu-map :bind (:map corfu-map
(("<tab>" . corfu-quit) ("<tab>" . corfu-quit)
("<escape>" . corfu-quit) ("<escape>" . corfu-quit)
("<SPC>" . coruf-insert-separator))) ("<SPC>" . corfu-insert-separator))
:custom :custom
(corfu-auto t) (corfu-auto t)
:config :config
@ -58,6 +58,7 @@
("C-c l" . cape-line) ("C-c l" . cape-line)
("C-c _" . cape-tex)) ("C-c _" . cape-tex))
:init :init
(setq text-mode-ispell-word-completion nil)
;; (add-to-list 'completion-at-point-functions #'cape-line) ;; Completar línea actual en función de lo que dice otras líneas de buffer. ;; (add-to-list 'completion-at-point-functions #'cape-line) ;; Completar línea actual en función de lo que dice otras líneas de buffer.
;; (add-to-list 'completion-at-point-functions #'cape-tex) ;; Completar Latex (caracteres unicode). ;; (add-to-list 'completion-at-point-functions #'cape-tex) ;; Completar Latex (caracteres unicode).
(add-to-list 'completion-at-point-functions #'cape-dict) ;; Completar desde un diccionario (por defecto toma el de linux que está en /usr/share/dict/words). (add-to-list 'completion-at-point-functions #'cape-dict) ;; Completar desde un diccionario (por defecto toma el de linux que está en /usr/share/dict/words).

View File

@ -15,17 +15,25 @@
(use-package evil (use-package evil
:defer t :defer t
:hook (elpaca-after-init . evil-mode) :hook (elpaca-after-init . evil-mode)
:init
(setq evil-want-keybinding nil)
;; Habilitar atajos de de tecla de emacs en insert state
(setq evil-disable-insert-state-bindings t)
: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 'insert) ;; 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
(evil-set-undo-system 'undo-redo) (evil-set-undo-system 'undo-redo)
;; Habilitar atajos de de tecla de emacs en insert state ;; Arreglar el problemita con corfu-quit y el cambio de modos
(setq evil-insert-state-map (make-sparse-keymap)) (evil-define-key 'insert 'global (kbd "<escape>") '(lambda ()
"Call `corfu-quit' and then return to Normal State."
(interactive)
(call-interactively 'corfu-quit)
(evil-normal-state)))
;; (evil-define-key 'normal 'global (kbd "<escape>") 'corfu-quit) ;; (evil-define-key 'normal 'global (kbd "<escape>") 'corfu-quit)
;; Cambiar a mode emacs con escape ;; Cambiar a mode emacs con escape
@ -101,12 +109,18 @@
(evil-define-key 'motion 'global (kbd "<leader>rg") 'consult-ripgrep) ;; Búsqueda rápida con ripgrep (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 (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 solo en modos específicos
;; (evil-set-initial-state 'prog-mode 'normal) (setq evil-default-state 'emacs) ;; Modo por defecto en emacs
;; (evil-set-initial-state 'org-mode 'normal) (evil-set-initial-state 'prog-mode 'normal)
(evil-set-initial-state 'org-mode 'normal)
(evil-set-initial-state 'text-mode 'normal)
(evil-set-initial-state 'csv-mode 'normal)
(evil-set-initial-state 'fundamental-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) ;; (evil-set-initial-state 'vterm-mode 'emacs)
;; (evil-set-initial-state 'magit-mode 'emacs)
;; (evil-set-initial-state 'git-commit-mode 'emacs)
) )
;; Funciones y atajos de teclas especiales para evil cuando estamo en org-mode. ;; Funciones y atajos de teclas especiales para evil cuando estamo en org-mode.
@ -118,5 +132,10 @@
:after org :after org
:hook (org-mode . evil-org-mode)) :hook (org-mode . evil-org-mode))
;; Similar a Vimtutor, pero para evil.
(use-package evil-tutor
:defer t
:ensure t)
(provide 'init-evil) (provide 'init-evil)
;;; init-evil.el ends here ;;; init-evil.el ends here