diff options
author | Richard M. Stallman <rms@gnu.org> | 2002-09-14 17:36:44 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 2002-09-14 17:36:44 +0000 |
commit | bbf77fe8902e0ae9467b679071302d82ed28d1bd (patch) | |
tree | fdb20936db0ef51d4490868f74b25376e4842428 /lispref | |
parent | bf2a6c399cf5f48ba47eaa5133c009a271e98401 (diff) | |
download | emacs-bbf77fe8902e0ae9467b679071302d82ed28d1bd.tar.gz |
Correct the explanation of glyphs and glyph table.
Diffstat (limited to 'lispref')
-rw-r--r-- | lispref/display.texi | 50 |
1 files changed, 29 insertions, 21 deletions
diff --git a/lispref/display.texi b/lispref/display.texi index 0d4cfd88f76..acbabfcb2e9 100644 --- a/lispref/display.texi +++ b/lispref/display.texi @@ -3380,17 +3380,36 @@ are defined in the library @file{disp-table}. @cindex glyph A @dfn{glyph} is a generalization of a character; it stands for an image that takes up a single character position on the screen. Glyphs -are represented in Lisp as integers, just as characters are. +are represented in Lisp as integers, just as characters are. Normally +Emacs finds glyphs in the display table (@pxref{Display Tables}). + + A glyph can be @dfn{simple} or it can be defined by the @dfn{glyph +table}. A simple glyph is just a way of specifying a character and a +face to output it in. The glyph code for a simple glyph, mod 524288, +is the character to output, and the glyph code divided by 524288 +specifies the face number (@pxref{Face Functions}) to use while +outputting it. (524288 is +@ifnottex +2**19.) +@end ifnottex +@tex +$2^{19}$.) +@end tex +@xref{Faces}. -@cindex glyph table - The meaning of each integer, as a glyph, is defined by the glyph -table, which is the value of the variable @code{glyph-table}. + On character terminals, you can set up a @dfn{glyph table} to define +the meaning of glyph codes. The glyph codes is the value of the +variable @code{glyph-table}. @defvar glyph-table The value of this variable is the current glyph table. It should be a -vector; the @var{g}th element defines glyph code @var{g}. If the value -is @code{nil} instead of a vector, then all glyphs are simple (see -below). The glyph table is not used on windowed displays. +vector; the @var{g}th element defines glyph code @var{g}. + +If a glyph code is greater than or equal to the length of the glyph +table, that code is automatically simple. If the value of +@code{glyph-table} is @code{nil} instead of a vector, then all glyphs +are simple. The glyph table is not used on graphical displays, only +on character terminals. On graphical displays, all glyphs are simple. @end defvar Here are the possible types of elements in the glyph table: @@ -3403,24 +3422,13 @@ but not under a window system. @item @var{integer} Define this glyph code as an alias for glyph code @var{integer}. You -can use an alias to specify a face code for the glyph; see below. +can use an alias to specify a face code for the glyph and use a small +number as its code. @item @code{nil} -This glyph is simple. The glyph code mod 524288 is the character to -output, and the glyph code divided by 524288 specifies the face number -(@pxref{Face Functions}) to use while outputting it. (524288 is -@ifnottex -2**19.) -@end ifnottex -@tex -$2^{19}$.) -@end tex -@xref{Faces}. +This glyph is simple. @end table - If a glyph code is greater than or equal to the length of the glyph -table, that code is automatically simple. - @defun create-glyph string @tindex create-glyph This function returns a newly-allocated glyph code which is set up to |