Show
Ignore:
Timestamp:
09/18/06 20:48:14 (2 years ago)
Author:
miyoshi
Message:

Sync up with Emacs CVS HEAD.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/lispref/display.texi

    r4161 r4166  
    120120If the optional argument @var{force} is non-@code{nil}, it forces an 
    121121immediate and complete redisplay even if input is available. 
     122 
     123Returns @code{t} if redisplay was performed, or @code{nil} otherwise. 
    122124@end defun 
    123125 
     
    28172819there is text below the screen. 
    28182820 
    2819 There are four kinds of basic values: 
     2821There are three kinds of basic values: 
    28202822 
    28212823@table @asis 
    28222824@item @code{nil} 
    2823 Don't display the icons. 
     2825Don't display any of these fringe icons. 
    28242826@item @code{left} 
    2825 Display them in the left fringe. 
     2827Display the angle icons and arrows in the left fringe. 
    28262828@item @code{right} 
    2827 Display them in the right fringe. 
    2828 @item @var{anything-else} 
    2829 Display the icon at the top of the window top in the left fringe, and other 
    2830 in the right fringe
     2829Display the angle icons and arrows in the right fringe. 
     2830@item any non-alist 
     2831Display the angle icons in the left fringe 
     2832and don't display the arrows
    28312833@end table 
    28322834 
    2833 If value is a cons @code{(@var{angles} . @var{arrows})}, @var{angles} 
    2834 controls the angle icons, and @var{arrows} controls the arrows.  Both 
    2835 @var{angles} and @var{arrows} work according to the table above. 
    2836 Thus, @code{(t .  right)} places the top angle icon in the left 
    2837 fringe, the bottom angle icon in the right fringe, and both arrows in 
    2838 the right fringe. 
     2835Otherwise the value should be an alist that specifies which fringe 
     2836indicators to display and where.  Each element of the alist should 
     2837have the form @code{(@var{indicator} . @var{position})}.  Here, 
     2838@var{indicator} is one of @code{top}, @code{bottom}, @code{up}, 
     2839@code{down}, and @code{t} (which covers all the icons not yet 
     2840specified), while @var{position} is one of @code{left}, @code{right} 
     2841and @code{nil}. 
     2842 
     2843For example, @code{((top . left) (t . right))} places the top angle 
     2844bitmap in left fringe, and the bottom angle bitmap as well as both 
     2845arrow bitmaps in right fringe.  To show the angle bitmaps in the left 
     2846fringe, and no arrow bitmaps, use @code{((top .  left) (bottom . left))}. 
    28392847@end defvar 
    28402848 
     
    51115119  The ordinary elements of the display table are indexed by character 
    51125120codes; the element at index @var{c} says how to display the character 
    5113 code @var{c}.  The value should be @code{nil} or a vector of glyph 
    5114 values (@pxref{Glyphs}).  If an element is @code{nil}, it says to 
    5115 display that character according to the usual display conventions 
     5121code @var{c}.  The value should be @code{nil} or a vector of the 
     5122glyphs to be output (@pxref{Glyphs}).  @code{nil} says to display the 
     5123character @var{c} according to the usual display conventions 
    51165124(@pxref{Usual Display}). 
    51175125 
    5118   If you use the display table to change the display of newline 
    5119 characters, the whole buffer will be displayed as one long ``line.'' 
     5126  @strong{Warning:} if you use the display table to change the display 
     5127of newline characters, the whole buffer will be displayed as one long 
     5128``line.'' 
    51205129 
    51215130  The display table also has six ``extra slots'' which serve special 
     
    52445253image that takes up a single character position on the screen.  Glyphs 
    52455254are represented in Lisp as integers, just as characters are.  Normally 
    5246 Emacs finds glyphs in the display table (@pxref{Display Tables}). 
    5247  
    5248   A glyph can be @dfn{simple} or it can be defined by the @dfn{glyph 
    5249 table}.  A simple glyph is just a way of specifying a character and
    5250 face to output it in.  The glyph code for a simple glyph, mod 524288
    5251 is the character to output, and the glyph code divided by 524288 
    5252 specifies the face number (@pxref{Face Functions}) to use whil
    5253 outputting it.  (524288 is 
     5255glyph come from vectors in the display table (@pxref{Display Tables}). 
     5256 
     5257  A glyph code can be @dfn{simple} or it can be defined by the 
     5258@dfn{glyph table}.  A simple glyph code is just a way of specifying
     5259character and a face to output it in.  When a glyph code is simple
     5260the code, mod 524288, is the character to output, and the code divided 
     5261by 524288 specifies the face number (@pxref{Face Functions}) to us
     5262while outputting it.  (524288 is 
    52545263@ifnottex 
    525552642**19.) 
     
    52615270 
    52625271  On character terminals, you can set up a @dfn{glyph table} to define 
    5263 the meaning of glyph codes.  The glyph codes is the value of the 
    5264 variable @code{glyph-table}. 
     5272the meaning of glyph codes. 
    52655273 
    52665274@defvar glyph-table 
    5267 The value of this variable is the current glyph table.  It should be a 
    5268 vector; the @var{g}th element defines glyph code @var{g}. 
     5275The value of this variable is the current glyph table.  It should be 
     5276@code{nil} or a vector whose @var{g}th element defines glyph code 
     5277@var{g}. 
    52695278 
    52705279If a glyph code is greater than or equal to the length of the glyph 
    5271 table, that code is automatically simple.  If the value of 
    5272 @code{glyph-table} is @code{nil} instead of a vector, then all glyphs 
    5273 are simple.  The glyph table is not used on graphical displays, only 
    5274 on character terminals.  On graphical displays, all glyphs are simple. 
    5275 @end defvar 
    5276  
    5277   Here are the possible types of elements in the glyph table: 
     5280table, that code is automatically simple.  If @code{glyph-table} is 
     5281@code{nil} then all glyph codes are simple. 
     5282 
     5283The glyph table is used only on character terminals.  On graphical 
     5284displays, all glyph codes are simple. 
     5285@end defvar 
     5286 
     5287  Here are the meaningful types of elements in the glyph table: 
    52785288 
    52795289@table @asis 
    52805290@item @var{string} 
    52815291Send the characters in @var{string} to the terminal to output 
    5282 this glyph.  This alternative is available on character terminals, 
    5283 but not on graphical displays. 
     5292this glyph code. 
    52845293 
    52855294@item @var{integer} 
    52865295Define this glyph code as an alias for glyph code @var{integer}.  You 
    5287 can use an alias to specify a face code for the glyph and use a small 
    5288 number as its code. 
     5296can use such an alias to define a small-numbered glyph code which 
     5297specifies a face. 
    52895298 
    52905299@item @code{nil} 
    5291 This glyph is simple. 
     5300This glyph code is simple. 
    52925301@end table 
    52935302