unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Visuwesh <visuweshm@gmail.com>
Cc: luangruo@yahoo.com, 55623@debbugs.gnu.org
Subject: bug#55623: 29.0.50; Mention that (face-foreground 'default) can return "unspecified-fg"
Date: Wed, 25 May 2022 16:18:51 +0300	[thread overview]
Message-ID: <83pmk14uo4.fsf@gnu.org> (raw)
In-Reply-To: <87czg2aw0q.fsf@gmail.com> (message from Visuwesh on Wed, 25 May 2022 13:23:09 +0530)

> Resent-From: Visuwesh <visuweshm@gmail.com>
> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces@debbugs.gnu.org>
> Resent-CC: bug-gnu-emacs@gnu.org
> Resent-Sender: help-debbugs@gnu.org
> Cc: luangruo@yahoo.com
> From: Visuwesh <visuweshm@gmail.com>
> Date: Wed, 25 May 2022 13:23:09 +0530
> 
> [புதன் மே 25, 2022] Po Lu via "Bug reports for GNU Emacs, the Swiss army knife of text editors" wrote:
> 
> > Visuwesh <visuweshm@gmail.com> writes:
> >
> >> In a tty frame and when using a theme that does not explicitly set the
> >> default face's :foreground/:background [1], (face-attribute 'default :foreground)
> >> returns "unspecified-fg".  This value is surprising when the docstring
> >> of `face-attribute' says,
> >>
> >>     To ensure that the return value is always specified and absolute, use a
> >>     value of ‘default’ for INHERIT; this will resolve any unspecified or
> >>     relative values by merging with the ‘default’ face (which is always
> >>     completely specified).              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> >>     ^^^^^^^^^^^^^^^^^^^^^
> >>
> >> I opened the Elisp manual and tried to isearch for "unspecified-fg", but
> >> it got me no matches.  It would be nice if this return value was
> >> documented somewhere.
> >
> > Isn't that a special color which means to use the terminal's default
> > foreground (and/or background, in the case of unspecified-bg) colors?
> >
> > If so, it should be documented as that instead.
> 
> Indeed, "unspecified-fg/bg" means to use the terminal's default fg/bg.

Right.  Thus, when the documentation talks about "unspecified values
for attributes" and about the default face being "always completely
specified", it excluded the "unspecified-fg" and "unspecified-bg"
values, because those are considered "specified", except in some rare
cases.  It is not an accident that they are strings and not symbols.

> But AFAICT, it is not specified in the manual anywhere.

They aren't documented on purpose: documenting them would be messy and
at best will confuse anyone who isn't familiar with the internals of
color support on TTY frames.  They are in effect internal
implementation details which unfortunately leak outside of the
internals.

What would you like to be documented about these special values, and
why?





  reply	other threads:[~2022-05-25 13:18 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-25  5:39 bug#55623: 29.0.50; Mention that (face-foreground 'default) can return "unspecified-fg" Visuwesh
2022-05-25  7:17 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-05-25  7:53   ` Visuwesh
2022-05-25 13:18     ` Eli Zaretskii [this message]
2022-05-25 14:57       ` Visuwesh
2022-05-25 17:07         ` Eli Zaretskii
2022-05-25 17:22           ` Visuwesh
2022-05-25 17:37             ` Eli Zaretskii
2022-05-27  5:44               ` Adam Porter
2022-05-27  6:34                 ` Eli Zaretskii
2022-05-27  7:27                   ` Adam Porter
2022-06-28 21:37                   ` Stefan Kangas

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

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83pmk14uo4.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=55623@debbugs.gnu.org \
    --cc=luangruo@yahoo.com \
    --cc=visuweshm@gmail.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 public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).