]> code.delx.au - gnu-emacs/blobdiff - lispref/frames.texi
(make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
[gnu-emacs] / lispref / frames.texi
index 7d690139081677b234e17e35b4ea10e527aa14ff..2bd97ffbf8e007c495dbda17bc7a99f7924cf163 100644 (file)
@@ -1,6 +1,6 @@
 @c -*-texinfo-*-
 @c This is part of the GNU Emacs Lisp Reference Manual.
-@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999
+@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2002
 @c   Free Software Foundation, Inc. 
 @c See the file elisp.texi for copying conditions.
 @setfilename ../info/frames
@@ -250,7 +250,7 @@ If these settings affect the frame geometry and appearance, you'll see
 the frame appear with the wrong ones and then change to the specified
 ones.  If that bothers you, you can specify the same geometry and
 appearance with X resources; those do take effect before the frame is
-created.  @xref{Resources X,, X Resources, emacs, The GNU Emacs Manual}.
+created.  @xref{X Resources,, X Resources, emacs, The GNU Emacs Manual}.
 
 X resource settings typically apply to all frames.  If you want to
 specify some X resources solely for the sake of the initial frame, and
@@ -293,7 +293,8 @@ Just what parameters a frame has depends on what display mechanism it
 uses.  Here is a table of the parameters that have special meanings in a
 window frame; of these, @code{name}, @code{title}, @code{height},
 @code{width}, @code{buffer-list} and @code{buffer-predicate} provide
-meaningful information in terminal frames.
+meaningful information in terminal frames, and @code{tty-color-mode}
+is meaningful @emph{only} in terminal frames.
 
 @table @code
 @item display
@@ -390,6 +391,13 @@ pixels, call @code{frame-pixel-height}; see @ref{Size and Position}.)
 The width of the frame contents, in characters.  (To get the height in
 pixels, call @code{frame-pixel-width}; see @ref{Size and Position}.)
 
+@item fullscreen
+Specify that width, height or both shall be set to the size of the screen.
+The value @code{fullwidth} specifies that width shall be the size of the
+screen.  The value @code{fullheight} specifies that height shall be the
+size of the screen.  The value @code{fullboth} specifies that both the
+width and the height shall be set to the size of the screen.
+
 @item window-id
 The number of the window-system window used by the frame
 to contain the actual Emacs windows.
@@ -471,13 +479,27 @@ The color for the mouse pointer.  Changing this parameter is equivalent
 to changing the background color of face @code{mouse}.
 
 @item cursor-color
-The color for the cursor that shows point. Changing this parameter is
+The color for the cursor that shows point.  Changing this parameter is
 equivalent to changing the background color of face @code{cursor}.
 
 @item border-color
-The color for the border of the frame. Changing this parameter is
+The color for the border of the frame.  Changing this parameter is
 equivalent to changing the background color of face @code{border}.
 
+@item tty-color-mode
+@cindex standard colors for character terminals
+This parameter overrides the terminal's color support as given by the
+system's terminal capabilities database in that this parameter's value
+specifies the color mode to use in terminal frames.  The value can be
+either a symbol or a number.  A number specifies the number of colors
+to use (and, indirectly, what commands to issue to produce each
+color).  For example, @code{(tty-color-mode . 8)} forces Emacs to use
+the ANSI escape sequences for 8 standard text colors; and a value of
+-1 means Emacs should turn off color support.  If the parameter's
+value is a symbol, that symbol is looked up in the alist
+@code{tty-color-mode-alist}, and if found, the associated number is
+used as the color support mode.
+
 @item scroll-bar-foreground
 If non-@code{nil}, the color for the foreground of scroll bars.
 Changing this parameter is equivalent to setting the foreground color of
@@ -485,7 +507,7 @@ face @code{scroll-bar}.
 
 @item scroll-bar-background
 If non-@code{nil}, the color for the background of scroll bars.
-Changing this parameter is equivalent to setting the foreground color of
+Changing this parameter is equivalent to setting the background color of
 face @code{scroll-bar}.
 
 @item display-type
@@ -498,8 +520,10 @@ The way to display the cursor.  The legitimate values are @code{bar},
 @code{box}, and @code{(bar . @var{width})}.  The symbol @code{box}
 specifies an ordinary black box overlaying the character after point;
 that is the default.  The symbol @code{bar} specifies a vertical bar
-between characters as the cursor.  @code{(bar . @var{width})} specifies
-a bar @var{width} pixels wide.
+between characters as the cursor.  @code{(bar . @var{width})}
+specifies a bar @var{width} pixels wide.  The symbol @code{hbar}
+specifies a horizontal bar, an underscore-like cursor.  @code{(hbar .
+@var{width})} specifiles a horizontal bar @var{width} pixels high.
 
 @vindex cursor-type
 The buffer-local variable @code{cursor-type} overrides the value of
@@ -529,13 +553,22 @@ number you specify is whether it is greater than zero.)
 
 @item screen-gamma
 @cindex gamma correction
-If this is a number, Emacs performs ``gamma correction'' on colors.  The
-value should be the screen gamma of your display, a floating point
-number.  Usual PC monitors have a screen gamma of 2.2, so the default is
-to display for that gamma value.  Specifying a smaller value results in
-darker colors, which is desirable for a monitor that tends to display
-colors too light.  A screen gamma value of 1.5 may give good results for
-LCD color displays.
+If this is a number, Emacs performs ``gamma correction'' which adjusts
+the brightness of all colors.  The value should be the screen gamma of
+your display, a floating point number.
+
+Usual PC monitors have a screen gamma of 2.2, so color values in
+Emacs, and in X windows generally, are calibrated to display properly
+on a monitor with that gamma value.  If you specify 2.2 for
+@code{screen-gamma}, that means no correction is needed.  Other values
+request correction, designed to make the corrected colors appear on
+your screen they way they would have appeared without correction on an
+ordinary monitor with a gamma value of 2.2.
+
+If your monitor displays colors too light, you should specify a
+@code{screen-gamma} value smaller than 2.2.  This requests correction
+that makes colors darker.  A screen gamma value of 1.5 may give good
+results for LCD color displays.
 
 @item tool-bar-lines
 The number of lines to use for the toolbar.  A value of @code{nil} means
@@ -1414,8 +1447,8 @@ the third, and so on through all eight cut buffers.
 @defvar selection-coding-system
 This variable specifies the coding system to use when reading and
 writing selections, the clipboard, or a cut buffer.  @xref{Coding
-Systems}.  The default is @code{compound-text}, which converts to
-the text representation that X11 normally uses.
+Systems}.  The default is @code{compound-text-with-extensions}, which
+converts to the text representation that X11 normally uses.
 @end defvar
 
 @cindex clipboard support (for MS-Windows)
@@ -1529,13 +1562,16 @@ and that name is still supported as an alias.
 @cindex colors on text-only terminals
 
   Emacs can display color on text-only terminals, starting with version
-21.  These terminals support only a small number of colors, and the
-computer uses small integers to select colors on the terminal.  This
+21.  These terminals usually support only a small number of colors, and
+the computer uses small integers to select colors on the terminal.  This
 means that the computer cannot reliably tell what the selected color
 looks like; instead, you have to inform your application which small
 integers correspond to which colors.  However, Emacs does know the
 standard set of colors and will try to use them automatically.
 
+  The functions described in this section control how terminal colors
+are used by Emacs.
+
 @cindex rgb value
   Several of these functions use or return @dfn{rgb values}.  An rgb
 value is a list of three integers, which give the amount of red, the
@@ -1623,7 +1659,7 @@ resources for application names other than ``Emacs'' by binding this
 variable to some other string, around a call to @code{x-get-resource}.
 @end defvar
 
-  @xref{Resources X,, X Resources, emacs, The GNU Emacs Manual}.
+  @xref{X Resources,, X Resources, emacs, The GNU Emacs Manual}.
 
 @node Display Feature Testing
 @section Display Feature Testing
@@ -1681,6 +1717,33 @@ This function returns @code{t} if the screen can display shades of gray.
 (All color displays can do this.)
 @end defun
 
+@anchor{Display Face Attribute Testing}
+@defun display-supports-face-attributes-p attributes &optional display
+@tindex display-supports-face-attributes-p
+This function returns non-@code{nil} if all the face attributes in
+@var{attributes} are supported (@pxref{Face Attributes}).
+
+The definition of `supported' is somewhat heuristic, but basically
+means that a face containing all the attributes in @var{attributes},
+when merged with the default face for display, can be represented in a
+way that's
+
+@enumerate
+@item
+different in appearance than the default face, and
+
+@item
+`close in spirit' to what the attributes specify, if not exact.
+@end enumerate
+
+Point (2) implies that a @code{:weight black} attribute will be
+satisfied by any display that can display bold, as will
+@code{:foreground "yellow"} as long as some yellowish color can be
+displayed, but @code{:slant italic} will @emph{not} be satisfied by
+the tty display code's automatic substitution of a `dim' face for
+italic.
+@end defun
+
 @defun display-selections-p &optional display
 @tindex display-selections-p
 This function returns @code{t} if @var{display} supports selections.