mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-06 14:30:50 -08:00
Add support for face customization
Allows customization of faces using customize-set-faces. This makes it easier to manage customization in version control. Instead of having all the faces written in a custom.el, the faces can be customized where the rest of the package is configured.
This commit is contained in:
parent
fcf219701b
commit
d8bbc3a95d
1 changed files with 29 additions and 0 deletions
|
|
@ -159,6 +159,7 @@ the user specified."
|
|||
:functions
|
||||
:defer
|
||||
:custom
|
||||
:custom-face
|
||||
:init
|
||||
:after
|
||||
:demand
|
||||
|
|
@ -1441,7 +1442,34 @@ deferred until the prefix key sequence is pressed."
|
|||
args)
|
||||
body)))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;
|
||||
;;; :custom-face
|
||||
;;
|
||||
|
||||
(defun use-package-normalize/:custom-face (name-symbol keyword arg)
|
||||
"Normalize use-package custom-face keyword."
|
||||
(let ((error-msg (format "%s wants a (<symbol> <face-spec>) or list of these" name-symbol)))
|
||||
(unless (listp arg)
|
||||
(use-package-error error-msg))
|
||||
(dolist (def arg arg)
|
||||
(unless (listp def)
|
||||
(use-package-error error-msg))
|
||||
(let ((face (nth 0 def))
|
||||
(spec (nth 1 def)))
|
||||
(when (or (not face)
|
||||
(not spec)
|
||||
(> (length arg) 2))
|
||||
(use-package-error error-msg))))))
|
||||
|
||||
(defun use-package-handler/:custom-face (name keyword args rest state)
|
||||
"Generate use-package custom-face keyword code."
|
||||
(let ((body (use-package-process-keywords name rest state)))
|
||||
(use-package-concat
|
||||
(mapcar (lambda (def)
|
||||
`(custom-set-faces (quote ,def)))
|
||||
args)
|
||||
body)))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;
|
||||
|
|
@ -1590,6 +1618,7 @@ this file. Usage:
|
|||
:diminish Support for diminish.el (if installed).
|
||||
:delight Support for delight.el (if installed).
|
||||
:custom Call `customize-set-variable' with each variable definition.
|
||||
:custom-face Call `customize-set-faces' with each face definition.
|
||||
:ensure Loads the package using package.el if necessary.
|
||||
:pin Pin the package to an archive."
|
||||
(declare (indent 1))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue