BREAKING CHANGE: This replaces volatile-highlights.el with goggles.el, since the former is no longer maintained and the latter is a much simpler implementation for the same functionality. No adjustments are needed for end-users to adopt this change, unless they have volatile-highlights-specific configuration. Ref: https://github.com/orgs/doomemacs/projects/5/views/9?pane=issue&itemId=326184 Close: #7810 Co-authored-by: Dev380 <Dev380@users.noreply.github.com>
73 lines
3.2 KiB
EmacsLisp
73 lines
3.2 KiB
EmacsLisp
;;; ui/ophints/config.el -*- lexical-binding: t; -*-
|
|
|
|
(use-package! evil-goggles
|
|
:when (modulep! :editor evil)
|
|
:hook (doom-first-input . evil-goggles-mode)
|
|
:init
|
|
(setq evil-goggles-duration 0.1
|
|
evil-goggles-pulse nil ; too slow
|
|
;; evil-goggles provides a good indicator of what has been affected.
|
|
;; delete/change is obvious, so I'd rather disable it for these.
|
|
evil-goggles-enable-delete nil
|
|
evil-goggles-enable-change nil)
|
|
:config
|
|
(pushnew! evil-goggles--commands
|
|
'(evil-magit-yank-whole-line
|
|
:face evil-goggles-yank-face
|
|
:switch evil-goggles-enable-yank
|
|
:advice evil-goggles--generic-async-advice)
|
|
'(+evil:yank-unindented
|
|
:face evil-goggles-yank-face
|
|
:switch evil-goggles-enable-yank
|
|
:advice evil-goggles--generic-async-advice)
|
|
'(+eval:region
|
|
:face evil-goggles-yank-face
|
|
:switch evil-goggles-enable-yank
|
|
:advice evil-goggles--generic-async-advice))
|
|
(when (modulep! :editor lispy)
|
|
(pushnew! evil-goggles--commands
|
|
'(lispyville-delete
|
|
:face evil-goggles-delete-face
|
|
:switch evil-goggles-enable-delete
|
|
:advice evil-goggles--generic-blocking-advice)
|
|
'(lispyville-delete-line
|
|
:face evil-goggles-delete-face
|
|
:switch evil-goggles-enable-delete
|
|
:advice evil-goggles--delete-line-advice)
|
|
'(lispyville-yank
|
|
:face evil-goggles-yank-face
|
|
:switch evil-goggles-enable-yank
|
|
:advice evil-goggles--generic-async-advice)
|
|
'(lispyville-yank-line
|
|
:face evil-goggles-yank-face
|
|
:switch evil-goggles-enable-yank
|
|
:advice evil-goggles--generic-async-advice)
|
|
'(lispyville-change
|
|
:face evil-goggles-change-face
|
|
:switch evil-goggles-enable-change
|
|
:advice evil-goggles--generic-blocking-advice)
|
|
'(lispyville-change-line
|
|
:face evil-goggles-change-face
|
|
:switch evil-goggles-enable-change
|
|
:advice evil-goggles--generic-blocking-advice)
|
|
'(lispyville-change-whole-line
|
|
:face evil-goggles-change-face
|
|
:switch evil-goggles-enable-change
|
|
:advice evil-goggles--generic-blocking-advice)
|
|
'(lispyville-indent
|
|
:face evil-goggles-indent-face
|
|
:switch evil-goggles-enable-indent
|
|
:advice evil-goggles--generic-async-advice)
|
|
'(lispyville-join
|
|
:face evil-goggles-join-face
|
|
:switch evil-goggles-enable-join
|
|
:advice evil-goggles--join-advice))))
|
|
|
|
(use-package! goggles
|
|
:unless (modulep! :editor evil)
|
|
:hook ((prog-mode text-mode) . goggles-mode)
|
|
:config
|
|
(goggles-define +goggles-general-undo undo) ; goggles only supports `primitive-undo' by default
|
|
(goggles-define +goggles-register-paste insert-register)
|
|
(goggles-define +goggles-kill-word backward-kill-word kill-word)
|
|
(goggles-define +goggles-undo-fu undo-fu-only-undo undo-fu-only-redo))
|