Mercurial > emacs
changeset 47482:aabdbec10b60
Correct the explanation of glyphs and glyph table.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 14 Sep 2002 17:36:44 +0000 |
parents | 8d8b9ebf5798 |
children | 20eac43cdf18 |
files | lispref/display.texi |
diffstat | 1 files changed, 30 insertions(+), 22 deletions(-) [+] |
line wrap: on
line diff
--- a/lispref/display.texi Sat Sep 14 17:35:32 2002 +0000 +++ b/lispref/display.texi Sat Sep 14 17:36:44 2002 +0000 @@ -3380,17 +3380,36 @@ @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. - -@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}. +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}. + + 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 @@ @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