edkolev / evil-goggles

Display visual hint on evil edit operations
222 stars 13 forks source link

evil-goggles is incompatible with evil-cleverparens and evil-smartparens #25

Open mfiano opened 5 years ago

mfiano commented 5 years ago

evil-goggles works by advising evil's operators. e.g. evil-delete, evil-change, evil-yank, etc.

Both evil-cleverparens and evil-smartparens replace those operators with their own versions, which leaves evil-goggles hanging, because it's not plugged into these new versions.

lsund commented 4 years ago

This answer might be disappointing to you, but if you disable the overloaded cleverparens operations like evil-cp-yank etc and just use the normal ones, evil-goggles will of course work like normal. I never found those overloaded operations useful anyways and disabled them by default. Evil-cleverparens provide some other useful stuff though, like the bindings of the ">" keys for example.

danielhvs commented 1 month ago
(use-package evil-goggles
  :after evil-cleverparens
  :config
  (add-to-list 'evil-goggles--commands '(evil-cp-yank :face evil-goggles-yank-face :switch evil-goggles-enable-yank :advice evil-goggles--generic-async-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-yank-line :face evil-goggles-yank-face :switch evil-goggles-enable-yank :advice evil-goggles--generic-async-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-yank-sexp :face evil-goggles-yank-face :switch evil-goggles-enable-yank :advice evil-goggles--generic-async-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-yank :face evil-goggles-yank-face :switch evil-goggles-enable-yank :advice evil-goggles--generic-async-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-yank :face evil-goggles-yank-face :switch evil-goggles-enable-yank :advice evil-goggles--generic-async-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-delete :face evil-goggles-delete-face :switch evil-goggles-enable-delete :advice evil-goggles--delete-line-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-delete-line :face evil-goggles-delete-face :switch evil-goggles-enable-delete :advice evil-goggles--delete-line-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-change :face evil-goggles-change-face :switch evil-goggles-enable-change :advice evil-goggles--generic-blocking-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-change-line :face evil-goggles-change-face :switch evil-goggles-enable-change :advice evil-goggles--generic-blocking-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-change-sexp :face evil-goggles-change-face :switch evil-goggles-enable-change :advice evil-goggles--generic-blocking-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-change-enclosing :face evil-goggles-change-face :switch evil-goggles-enable-change :advice evil-goggles--generic-blocking-advice))
  (add-to-list 'evil-goggles--commands '(evil-cp-change-whole-line :face evil-goggles-change-face :switch evil-goggles-enable-change :advice evil-goggles--generic-blocking-advice))
  (evil-goggles-mode))