From: Eli Zaretskii Date: Sun, 28 Aug 2022 05:40:25 +0000 (+0300) Subject: Improve the documentation of glyphless-character display X-Git-Tag: emacs-28.2~24 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=195fcc932eea396c94483e0265b43a3c01147776;p=emacs.git Improve the documentation of glyphless-character display * lisp/international/characters.el (glyphless-char-display-control): * src/xdisp.c (syms_of_xdisp) : Mention the 'glyphless-char' face in the doc string. * doc/lispref/display.texi (Glyphless Chars): Index 'glyphless-char' face. --- diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi index 9aed5b2d7ae..b068c7d08c6 100644 --- a/doc/lispref/display.texi +++ b/doc/lispref/display.texi @@ -7994,6 +7994,7 @@ Display with @var{graphical} on graphical displays, and with must be one of the display methods described above. @end table +@vindex glyphless-char@r{ face} @noindent The @code{thin-space}, @code{empty-box}, @code{hex-code}, and @acronym{ASCII} string display methods are drawn with the @@ -8048,7 +8049,8 @@ emojis). @item no-font Characters for which there is no suitable font, or which cannot be -encoded by the terminal's coding system. +encoded by the terminal's coding system, or those for which the +text-mode terminal has no glyphs. @end table @c FIXME: this can also be 'acronym', but that's not currently diff --git a/lisp/international/characters.el b/lisp/international/characters.el index 7d625d1382a..d845baa2ebf 100644 --- a/lisp/international/characters.el +++ b/lisp/international/characters.el @@ -1599,7 +1599,8 @@ GROUP must be one of these symbols: presentation). `no-font': characters for which no suitable font is found. For character terminals, characters that cannot - be encoded by `terminal-coding-system'. + be encoded by `terminal-coding-system' or those + for which the terminal has no glyphs. METHOD must be one of these symbols: `zero-width': don't display. @@ -1613,7 +1614,10 @@ METHOD must be one of these symbols: Do not set its value directly from Lisp; the value takes effect only via a custom `:set' function (`update-glyphless-char-display'), which updates -`glyphless-char-display'." +`glyphless-char-display'. + +See also the `glyphless-char' face, which is used to display the +visual representation of these characters." :version "28.1" :type '(alist :key-type (symbol :tag "Character Group") :value-type (symbol :tag "Display Method")) diff --git a/src/xdisp.c b/src/xdisp.c index a4881c48350..6d42105474f 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -35831,6 +35831,9 @@ which no font is found on graphical terminals, and characters that cannot be displayed by text-mode terminals. Its value should be an ASCII acronym string, `hex-code', `empty-box', or `thin-space'. The default is `hex-code'. +With the obvious exception of `zero-width', all the other representations +are displayed using the face `glyphless-char'. + If a character has a non-nil entry in an active display table, the display table takes effect; in this case, Emacs does not consult `glyphless-char-display' at all. */);