summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2022-08-28 08:40:25 +0300
committerEli Zaretskii <eliz@gnu.org>2022-08-28 08:40:25 +0300
commit195fcc932eea396c94483e0265b43a3c01147776 (patch)
tree5b0f480e587736c3015b9655bcaba4100a49445c
parent72ae02377ebdc3105156be0e3dc0a9c53156599e (diff)
downloademacs-195fcc932eea396c94483e0265b43a3c01147776.tar.gz
Improve the documentation of glyphless-character display
* lisp/international/characters.el (glyphless-char-display-control): * src/xdisp.c (syms_of_xdisp) <glyphless-char-display>: Mention the 'glyphless-char' face in the doc string. * doc/lispref/display.texi (Glyphless Chars): Index 'glyphless-char' face.
-rw-r--r--doc/lispref/display.texi4
-rw-r--r--lisp/international/characters.el8
-rw-r--r--src/xdisp.c3
3 files changed, 12 insertions, 3 deletions
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. */);