Fix problem with corfu-quit and evil.

This commit is contained in:
KJ 2024-09-10 12:36:16 -04:00
parent b6dc907ad8
commit 1752b38dc1
2 changed files with 22 additions and 6 deletions

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
(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
@ -107,6 +115,8 @@
(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 +128,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