emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gamegrid.el and some games


From: Richard Stallman
Subject: Re: gamegrid.el and some games
Date: Sat, 14 Sep 2002 13:35:15 -0400

    |      The value of this variable is the current glyph table.  It should
    |      be a vector; the Gth element defines glyph code G.  If the value
    |      is `nil' instead of a vector, then all glyphs are simple (see
    |      below).  The glyph table is not used on windowed displays.

    What is a `windowed display'?  I know about `character terminal' and
    `window system', and in fact this wording is used below, but I do not
    know what a windowed display is.  

Looking at the code, I think it means anything but a character-only
terminal.  The glyph table is used only on character-only terminals.

    | INTEGER
    |      Define this glyph code as an alias for glyph code INTEGER.  You
    |      can use an alias to specify a face code for the glyph; see below.
    | 

This works on all terminals, since you can put this kind of glyph code
into the display table.

I rewrote the node as follows.  Is this clearer?


@node Glyphs
@subsection Glyphs

@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.  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 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:

@table @asis
@item @var{string}
Send the characters in @var{string} to the terminal to output
this glyph.  This alternative is available on character terminals,
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 and use a small
number as its code.

@item @code{nil}
This glyph is simple.
@end table

@defun create-glyph string
@tindex create-glyph
This function returns a newly-allocated glyph code which is set up to
display by sending @var{string} to the terminal.
@end defun




reply via email to

[Prev in Thread] Current Thread [Next in Thread]