From: David Ponce <da_vid@orange.fr>
To: Po Lu <luangruo@yahoo.com>
Cc: 57652@debbugs.gnu.org, gregory@heytings.org
Subject: bug#57652: 29.0.50; Warning setting attribute of face ‘term’
Date: Thu, 8 Sep 2022 10:43:03 +0200 [thread overview]
Message-ID: <c6168588-7923-885e-e648-0cc8822ddca4@orange.fr> (raw)
In-Reply-To: <319e3926-7c22-cabd-43dd-a02f3a01c734@orange.fr>
On 08/09/2022 10:22, David Ponce wrote:
> On 08/09/2022 07:02, Po Lu wrote:
>> David Ponce <da_vid@orange.fr> writes:
>>
>>> diff --git a/term.el b/term.el
>>> index 797fb18074..c564a5429a 100644
>>> --- a/term.el
>>> +++ b/term.el
>>> @@ -755,17 +755,19 @@ ansi-term-color-vector
>>> term-color-bright-cyan
>>> term-color-bright-white])
>>>
>>> -(defcustom term-default-fg-color nil
>>> - "If non-nil, default color for foreground in Term mode."
>>> +(defcustom term-default-fg-color 'unspecified
>>> + "Default color for foreground in Term mode."
>>> :group 'term
>>> - :type '(choice (const nil) (string :tag "color")))
>>> + :type '(choice (const unspecified)
>>> + (string :tag "color")))
>>
>> Doesn't that change behavior?
>>
>> i.e. wouldn't it be better to test that term-default-fg-color is not nil
>> wherever the face is actually made that color?
>
> To be honest I don't know. I reread the spec that says:
>
> "Apart from the values given below, each face attribute can have the
> value ‘unspecified’. This special value means that the face doesn’t
> specify that attribute directly. An ‘unspecified’ attribute tells Emacs
> to refer instead to a parent face (see the description ‘:inherit’
> attribute below); or, failing that, to an underlying face (*note
> Displaying Faces::). (However, ‘unspecified’ is not a valid value in
> ‘defface’.)"
>
> So it seems that unspecified is not allowed in defface. So, how to
> specify a missing attribute excepted by using nil in the defface used in
> term.el?
>
> (defface term
> `((t
> :foreground ,term-default-fg-color
> :background ,term-default-bg-color
> :inherit default))
> "Default face to use in Term mode."
> :group 'term)
>
> Thanks!
>
Also it seems that nil attribute is allowed in some cases in defface,
because when I show the definition of the default face as a lisp
expression I get:
((t
(:family "Source Code Pro" :foundry "ADBO" :width normal :height 102
:weight regular :slant normal :underline nil :overline nil :extend nil
:strike-through nil :box nil :inverse-video nil :foreground "black"
:background "white" :stipple nil :inherit nil)))
Thanks!
next prev parent reply other threads:[~2022-09-08 8:43 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-07 18:49 bug#57652: 29.0.50; Warning setting attribute of face ‘term’ David Ponce
2022-09-08 5:02 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-09-08 8:22 ` David Ponce
2022-09-08 8:42 ` Eli Zaretskii
2022-09-08 12:34 ` David Ponce
2022-09-08 8:43 ` David Ponce [this message]
2022-09-08 11:44 ` Akib Azmain Turja via Bug reports for GNU Emacs, the Swiss army knife of text editors
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c6168588-7923-885e-e648-0cc8822ddca4@orange.fr \
--to=da_vid@orange.fr \
--cc=57652@debbugs.gnu.org \
--cc=gregory@heytings.org \
--cc=luangruo@yahoo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.