Add a link to inherited faces in Customize
* lisp/cus-edit.el (cus--face-link): New function (bug#44154). (face): Use the function to format the link.
This commit is contained in:
parent
8d3ed5f815
commit
7d429d7ef0
1 changed files with 11 additions and 1 deletions
|
@ -3739,6 +3739,15 @@ the present value is saved to its :shown-value property instead."
|
|||
(widget-put widget :children children)
|
||||
(custom-face-state-set widget))))))
|
||||
|
||||
(defun cus--face-link (widget _format)
|
||||
(let ((face (intern (widget-get widget :value))))
|
||||
(widget-create-child-and-convert
|
||||
widget 'face-link
|
||||
:button-face 'link
|
||||
:tag "link"
|
||||
:action (lambda (&rest _x)
|
||||
(customize-face face)))))
|
||||
|
||||
(defvar custom-face-menu nil
|
||||
"If non-nil, an alist of actions for the `custom-face' widget.
|
||||
|
||||
|
@ -4008,7 +4017,7 @@ restoring it to the state of a face that has never been customized."
|
|||
|
||||
(define-widget 'face 'symbol
|
||||
"A Lisp face name (with sample)."
|
||||
:format "%{%t%}: (%{sample%}) %v"
|
||||
:format "%f %{%t%}: (%{sample%}) %v"
|
||||
:tag "Face"
|
||||
:value 'default
|
||||
:sample-face-get 'widget-face-sample-face-get
|
||||
|
@ -4018,6 +4027,7 @@ restoring it to the state of a face that has never been customized."
|
|||
obarray #'facep 'strict)
|
||||
:prompt-match 'facep
|
||||
:prompt-history 'widget-face-prompt-value-history
|
||||
:format-handler 'cus--face-link
|
||||
:validate (lambda (widget)
|
||||
(unless (facep (widget-value widget))
|
||||
(widget-put widget
|
||||
|
|
Loading…
Add table
Reference in a new issue