2019-04-19 15:41:55 +10:00
|
|
|
;;; editor/objed/config.el -*- lexical-binding: t; -*-
|
|
|
|
|
2019-07-23 12:44:03 +02:00
|
|
|
(use-package! objed
|
2019-04-19 15:41:55 +10:00
|
|
|
:after-call pre-command-hook
|
|
|
|
:config
|
|
|
|
;; Prevent undo actions from exiting edit state
|
2020-04-07 20:15:32 -04:00
|
|
|
(pushnew! objed-keeper-commands 'undo-fu-only-undo 'undo-fu-only-redo)
|
2019-04-19 15:41:55 +10:00
|
|
|
|
|
|
|
(defvar +objed--extra-face-remaps nil)
|
|
|
|
|
2019-07-23 17:24:56 +02:00
|
|
|
(defadvice! +objed--add-face-remaps-a (&rest _)
|
2019-04-19 15:41:55 +10:00
|
|
|
"Add extra face remaps when objed activates."
|
2019-07-23 12:30:47 +02:00
|
|
|
:after 'objed--init
|
2019-04-19 15:41:55 +10:00
|
|
|
(when (memq 'objed-hl (assq 'hl-line face-remapping-alist))
|
|
|
|
(push (face-remap-add-relative 'solaire-hl-line-face 'objed-hl)
|
|
|
|
+objed--extra-face-remaps)))
|
|
|
|
|
2019-07-23 17:24:56 +02:00
|
|
|
(defadvice! +objed--remove-face-remaps-a (&rest _)
|
2019-04-19 15:41:55 +10:00
|
|
|
"Remove extra face remaps when objed de-activates."
|
2019-07-23 12:30:47 +02:00
|
|
|
:after 'objed--reset
|
2019-04-19 15:41:55 +10:00
|
|
|
(unless (memq 'objed-hl (assq 'hl-line face-remapping-alist))
|
|
|
|
(dolist (remap +objed--extra-face-remaps)
|
|
|
|
(face-remap-remove-relative remap))
|
|
|
|
(setq +objed--extra-face-remaps nil)))
|
|
|
|
|
2022-08-12 20:29:19 +02:00
|
|
|
(unless (modulep! +manual)
|
2019-06-01 13:30:18 +02:00
|
|
|
(objed-mode +1)))
|