(Display): Reorder menu.
(Faces): Cleanup. (Font Lock): Cleanup. Mention Options menu. Delete obsolete text. (Scrolling): For C-l, don't presume text terminal. (Horizontal Scrolling): Simplify intro. (Follow Mode): Clarify. (Cursor Display): Moved before Display Custom. (Display Custom): Explain no-redraw-on-reenter is for text terminals. Doc default-tab-width. Doc line truncation more thoroughly.
This commit is contained in:
parent
065e46d08d
commit
0015d6775b
1 changed files with 111 additions and 97 deletions
208
man/display.texi
208
man/display.texi
|
@ -23,20 +23,20 @@ display it.
|
|||
* Selective Display:: Hiding lines with lots of indentation.
|
||||
* Optional Mode Line:: Optional mode line display features.
|
||||
* Text Display:: How text characters are normally displayed.
|
||||
* Display Custom:: Information on variables for customizing display.
|
||||
* Cursor Display:: Features for displaying the cursor.
|
||||
* Display Custom:: Information on variables for customizing display.
|
||||
@end menu
|
||||
|
||||
@node Faces
|
||||
@section Using Multiple Typefaces
|
||||
@cindex faces
|
||||
|
||||
Emacs supports using multiple styles of displaying characters. Each
|
||||
style is called a @dfn{face}. Each face can specify various @dfn{face
|
||||
attributes}, such as the font family, the height, weight and slant of
|
||||
the characters, the foreground and background color, and underlining
|
||||
or overlining. A face does not have to specify all of these
|
||||
attributes; often it inherits many of them from another face.
|
||||
You can specify various styles for displaying text using
|
||||
@dfn{faces}. Each face can specify various @dfn{face attributes},
|
||||
such as the font family, the height, weight and slant of the
|
||||
characters, the foreground and background color, and underlining or
|
||||
overlining. A face does not have to specify all of these attributes;
|
||||
often it inherits most of them from another face.
|
||||
|
||||
On a window system, all the Emacs face attributes are meaningful.
|
||||
On a character terminal, only some of them work. Some character
|
||||
|
@ -196,7 +196,7 @@ on your screen using the command @code{ps-print-buffer-with-faces}.
|
|||
@cindex syntax highlighting and coloring
|
||||
|
||||
Font Lock mode is a minor mode, always local to a particular buffer,
|
||||
which highlights (or ``fontifies'') using various faces according to
|
||||
which highlights (or ``fontifies'') the buffer contents according to
|
||||
the syntax of the text you are editing. It can recognize comments and
|
||||
strings in most languages; in several languages, it can also recognize
|
||||
and properly highlight various other important constructs---for
|
||||
|
@ -227,6 +227,10 @@ this:
|
|||
(global-font-lock-mode 1)
|
||||
@end example
|
||||
|
||||
@noindent
|
||||
You can also specify this using the menu bar Options menu, specifying
|
||||
first Syntax Highlighting and then Save Options.
|
||||
|
||||
Font Lock mode uses several specifically named faces to do its job,
|
||||
including @code{font-lock-string-face}, @code{font-lock-comment-face},
|
||||
and others. The easiest way to find them all is to use completion
|
||||
|
@ -248,10 +252,6 @@ Customize the faces interactively with @kbd{M-x customize-face}, as
|
|||
described in @ref{Face Customization}.
|
||||
@end itemize
|
||||
|
||||
To get the full benefit of Font Lock mode, you need to choose a
|
||||
default font which has bold, italic, and bold-italic variants; or else
|
||||
you need to have a color or gray-scale screen.
|
||||
|
||||
@vindex font-lock-maximum-decoration
|
||||
The variable @code{font-lock-maximum-decoration} specifies the
|
||||
preferred level of fontification, for modes that provide multiple
|
||||
|
@ -447,9 +447,10 @@ Scroll heuristically to bring useful information onto the screen
|
|||
@kindex C-l
|
||||
@findex recenter
|
||||
The most basic scrolling command is @kbd{C-l} (@code{recenter}) with
|
||||
no argument. It clears the entire screen and redisplays all windows.
|
||||
In addition, it scrolls the selected window so that point is halfway
|
||||
down from the top of the window.
|
||||
no argument. It scrolls the selected window so that point is halfway
|
||||
down from the top of the window. On a text terminal, it also clears
|
||||
the screen and redisplays all windows. That is useful in case the
|
||||
screen is garbled (@pxref{Screen Garbled}).
|
||||
|
||||
@kindex C-v
|
||||
@kindex M-v
|
||||
|
@ -566,17 +567,12 @@ window, Emacs recenters the window. By default, @code{scroll-margin} is
|
|||
|
||||
@dfn{Horizontal scrolling} means shifting all the lines sideways
|
||||
within a window---so that some of the text near the left margin is not
|
||||
displayed at all. Emacs does this automatically in any window that
|
||||
uses line truncation rather than continuation: whenever point moves
|
||||
off the left or right edge of the screen, Emacs scrolls the buffer
|
||||
horizontally to make point visible.
|
||||
|
||||
When a window has been scrolled horizontally, text lines are truncated
|
||||
rather than continued (@pxref{Continuation Lines}), with a @samp{$}
|
||||
appearing in the first column when there is text truncated to the left,
|
||||
and in the last column when there is text truncated to the right.
|
||||
|
||||
You can use these commands to do explicit horizontal scrolling.
|
||||
displayed at all. When the text in a window is scrolled horizontally,
|
||||
text lines are truncated rather than continued (@pxref{Display
|
||||
Custom}). Whenever a window shows truncated lines, Emacs
|
||||
automatically updates its horizontal scrolling whenever point moves
|
||||
off the left or right edge of the screen. You can also use these
|
||||
commands to do explicit horizontal scrolling.
|
||||
|
||||
@table @kbd
|
||||
@item C-x <
|
||||
|
@ -602,10 +598,10 @@ attempting to do so has no effect. This means that you don't have to
|
|||
calculate the argument precisely for @w{@kbd{C-x >}}; any sufficiently large
|
||||
argument will restore the normal display.
|
||||
|
||||
If you scroll a window horizontally by hand, that sets a lower bound
|
||||
for automatic horizontal scrolling. Automatic scrolling will continue
|
||||
to scroll the window, but never farther to the right than the amount
|
||||
you previously set by @code{scroll-left}.
|
||||
If you use those commands to scroll a window horizontally, that sets
|
||||
a lower bound for automatic horizontal scrolling. Automatic scrolling
|
||||
will continue to scroll the window, but never farther to the right
|
||||
than the amount you previously set by @code{scroll-left}.
|
||||
|
||||
@vindex hscroll-margin
|
||||
The value of the variable @code{hscroll-margin} controls how close
|
||||
|
@ -708,12 +704,12 @@ currently doesn't work on character terminals.)
|
|||
@cindex windows, synchronizing
|
||||
@cindex synchronizing windows
|
||||
|
||||
@dfn{Follow mode} is a minor mode that makes two windows showing the
|
||||
same buffer scroll as one tall ``virtual window.'' To use Follow mode,
|
||||
go to a frame with just one window, split it into two side-by-side
|
||||
windows using @kbd{C-x 3}, and then type @kbd{M-x follow-mode}. From
|
||||
then on, you can edit the buffer in either of the two windows, or scroll
|
||||
either one; the other window follows it.
|
||||
@dfn{Follow mode} is a minor mode that makes two windows, both
|
||||
showing the same buffer, scroll as a single tall ``virtual window.''
|
||||
To use Follow mode, go to a frame with just one window, split it into
|
||||
two side-by-side windows using @kbd{C-x 3}, and then type @kbd{M-x
|
||||
follow-mode}. From then on, you can edit the buffer in either of the
|
||||
two windows, or scroll either one; the other window follows it.
|
||||
|
||||
In Follow mode, if you move point outside the portion visible in one
|
||||
window and into the portion visible in the other window, that selects
|
||||
|
@ -756,6 +752,9 @@ the three dots.
|
|||
precedes hidden lines. Then there is no visible indication of the
|
||||
hidden lines. This variable becomes local automatically when set.
|
||||
|
||||
See also @ref{Outline Mode} for another way to hide part of
|
||||
the text in a buffer.
|
||||
|
||||
@node Optional Mode Line
|
||||
@section Optional Mode Line Features
|
||||
|
||||
|
@ -914,6 +913,46 @@ they are displayed using their graphics (assuming your terminal supports
|
|||
them), otherwise as escape sequences. @xref{Single-Byte Character
|
||||
Support}.
|
||||
|
||||
@node Cursor Display
|
||||
@section Displaying the Cursor
|
||||
|
||||
@findex blink-cursor-mode
|
||||
@vindex blink-cursor-alist
|
||||
@cindex cursor, locating visually
|
||||
@cindex cursor, blinking
|
||||
You can customize the cursor's color, and whether it blinks, using
|
||||
the @code{cursor} Custom group (@pxref{Easy Customization}). On
|
||||
graphical terminals, the command @kbd{M-x blink-cursor-mode} enables
|
||||
or disables the blinking of the cursor. (On text terminals, the
|
||||
terminal itself blinks the cursor, and Emacs has no control over it.)
|
||||
You can control how the cursor appears when it blinks off by setting
|
||||
the variable @code{blink-cursor-alist}.
|
||||
|
||||
@cindex cursor in non-selected windows
|
||||
@vindex cursor-in-non-selected-windows
|
||||
Normally, the cursor appears in non-selected windows in the ``off''
|
||||
state, with the same appearance as when the blinking cursor blinks
|
||||
``off''. For a box cursor, this is a hollow box; for a bar cursor,
|
||||
this is a thinner bar. To turn off cursors in non-selected windows,
|
||||
customize the variable @code{cursor-in-non-selected-windows} and assign
|
||||
it a @code{nil} value.
|
||||
|
||||
@vindex x-stretch-cursor
|
||||
@cindex wide block cursor
|
||||
On graphical terminals, Emacs can optionally draw the block cursor
|
||||
as wide as the character under the cursor---for example, if the cursor
|
||||
is on a tab character, it would cover the full width occupied by that
|
||||
tab character. To enable this feature, set the variable
|
||||
@code{x-stretch-cursor} to a non-@code{nil} value.
|
||||
|
||||
@findex hl-line-mode
|
||||
@findex global-hl-line-mode
|
||||
@cindex highlight current line
|
||||
If you find it hard to see the cursor, you might like HL Line mode,
|
||||
a minor mode that highlights the line containing point. Use @kbd{M-x
|
||||
hl-line-mode} to enable or disable it in the current buffer. @kbd{M-x
|
||||
global-hl-line-mode} enables or disables the same mode globally.
|
||||
|
||||
@node Display Custom
|
||||
@section Customization of Display
|
||||
|
||||
|
@ -937,18 +976,19 @@ to invert all the lines of the display from what they normally are.
|
|||
If the variable @code{visible-bell} is non-@code{nil}, Emacs attempts
|
||||
to make the whole screen blink when it would normally make an audible bell
|
||||
sound. This variable has no effect if your terminal does not have a way
|
||||
to make the screen blink.@refill
|
||||
to make the screen blink.
|
||||
|
||||
@vindex no-redraw-on-reenter
|
||||
When you reenter Emacs after suspending, Emacs normally clears the
|
||||
screen and redraws the entire display. On some terminals with more than
|
||||
one page of memory, it is possible to arrange the termcap entry so that
|
||||
the @samp{ti} and @samp{te} strings (output to the terminal when Emacs
|
||||
is entered and exited, respectively) switch between pages of memory so
|
||||
as to use one page for Emacs and another page for other output. Then
|
||||
you might want to set the variable @code{no-redraw-on-reenter}
|
||||
non-@code{nil}; this tells Emacs to assume, when resumed, that the
|
||||
screen page it is using still contains what Emacs last wrote there.
|
||||
On a text terminal, when you reenter Emacs after suspending, Emacs
|
||||
normally clears the screen and redraws the entire display. On some
|
||||
terminals with more than one page of memory, it is possible to arrange
|
||||
the termcap entry so that the @samp{ti} and @samp{te} strings (output
|
||||
to the terminal when Emacs is entered and exited, respectively) switch
|
||||
between pages of memory so as to use one page for Emacs and another
|
||||
page for other output. Then you might want to set the variable
|
||||
@code{no-redraw-on-reenter} non-@code{nil}; this tells Emacs to
|
||||
assume, when resumed, that the screen page it is using still contains
|
||||
what Emacs last wrote there.
|
||||
|
||||
@vindex echo-keystrokes
|
||||
The variable @code{echo-keystrokes} controls the echoing of multi-character
|
||||
|
@ -964,6 +1004,7 @@ default is initially @code{t}. @xref{Display Tables,, Display Tables,
|
|||
elisp, The Emacs Lisp Reference Manual}.
|
||||
|
||||
@vindex tab-width
|
||||
@vindex default-tab-width
|
||||
Normally, a tab character in the buffer is displayed as whitespace which
|
||||
extends to the next display tab stop position, and display tab stops come
|
||||
at intervals equal to eight spaces. The number of spaces per tab is
|
||||
|
@ -971,18 +1012,31 @@ controlled by the variable @code{tab-width}, which is made local by
|
|||
changing it, just like @code{ctl-arrow}. Note that how the tab character
|
||||
in the buffer is displayed has nothing to do with the definition of
|
||||
@key{TAB} as a command. The variable @code{tab-width} must have an
|
||||
integer value between 1 and 1000, inclusive.
|
||||
integer value between 1 and 1000, inclusive. The variable
|
||||
@code{default-tab-width} controls the default value of this variable
|
||||
for buffers where you have not set it locally.
|
||||
|
||||
@c @vindex truncate-lines @c No index entry here, because we have one
|
||||
@c in the continuation section.
|
||||
If the variable @code{truncate-lines} is non-@code{nil}, then each
|
||||
line of text gets just one screen line for display; if the text line is
|
||||
too long, display shows only the part that fits. If
|
||||
@code{truncate-lines} is @code{nil}, then long text lines display as
|
||||
more than one screen line, enough to show the whole text of the line.
|
||||
@xref{Continuation Lines}. Altering the value of @code{truncate-lines}
|
||||
makes it local to the current buffer; until that time, the default value
|
||||
is in effect. The default is initially @code{nil}.
|
||||
@cindex truncation
|
||||
@cindex line truncation, and fringes
|
||||
As an alternative to continuation, Emacs can display long lines by
|
||||
@dfn{truncation}. This means that all the characters that do not fit
|
||||
in the width of the screen or window do not appear at all. On
|
||||
graphical terminals, a small straight arrow in the fringe indicates
|
||||
truncation at either end of the line. On text terminals, @samp{$}
|
||||
appears in the first column when there is text truncated to the left,
|
||||
and in the last column when there is text truncated to the right.
|
||||
|
||||
@vindex truncate-lines
|
||||
@findex toggle-truncate-lines
|
||||
Horizontal scrolling automatically causes line truncation
|
||||
(@pxref{Horizontal Scrolling}). You can explicitly enable line
|
||||
truncation for a particular buffer with the command @kbd{M-x
|
||||
toggle-truncate-lines}. This works by locally changing the variable
|
||||
@code{truncate-lines}. If that variable is non-@code{nil}, long lines
|
||||
are truncated; if it is @code{nil}, they are continued onto multiple
|
||||
screen lines. Setting the variable @code{truncate-lines} in any way
|
||||
makes it local to the current buffer; until that time, the default
|
||||
value is in effect. The default value is normally @code{nil}.
|
||||
|
||||
@c @vindex truncate-partial-width-windows @c Idx entry is in Split Windows.
|
||||
If the variable @code{truncate-partial-width-windows} is
|
||||
|
@ -1066,46 +1120,6 @@ result in text that is hard to read. Call the function
|
|||
@code{tty-suppress-bold-inverse-default-colors} with a non-@code{nil}
|
||||
argument to suppress the effect of bold-face in this case.
|
||||
|
||||
@node Cursor Display
|
||||
@section Displaying the Cursor
|
||||
|
||||
@findex blink-cursor-mode
|
||||
@vindex blink-cursor-alist
|
||||
@cindex cursor, locating visually
|
||||
@cindex cursor, blinking
|
||||
You can customize the cursor's color, and whether it blinks, using
|
||||
the @code{cursor} Custom group (@pxref{Easy Customization}). On
|
||||
graphical terminals, the command @kbd{M-x blink-cursor-mode} enables
|
||||
or disables the blinking of the cursor. (On text terminals, the
|
||||
terminal itself blinks the cursor, and Emacs has no control over it.)
|
||||
You can control how the cursor appears when it blinks off by setting
|
||||
the variable @code{blink-cursor-alist}.
|
||||
|
||||
@cindex cursor in non-selected windows
|
||||
@vindex cursor-in-non-selected-windows
|
||||
Normally, the cursor appears in non-selected windows in the ``off''
|
||||
state, with the same appearance as when the blinking cursor blinks
|
||||
``off''. For a box cursor, this is a hollow box; for a bar cursor,
|
||||
this is a thinner bar. To turn off cursors in non-selected windows,
|
||||
customize the variable @code{cursor-in-non-selected-windows} and assign
|
||||
it a @code{nil} value.
|
||||
|
||||
@vindex x-stretch-cursor
|
||||
@cindex wide block cursor
|
||||
On graphical terminals, Emacs can optionally draw the block cursor
|
||||
as wide as the character under the cursor---for example, if the cursor
|
||||
is on a tab character, it would cover the full width occupied by that
|
||||
tab character. To enable this feature, set the variable
|
||||
@code{x-stretch-cursor} to a non-@code{nil} value.
|
||||
|
||||
@findex hl-line-mode
|
||||
@findex global-hl-line-mode
|
||||
@cindex highlight current line
|
||||
If you find it hard to see the cursor, you might like HL Line mode,
|
||||
a minor mode that highlights the line containing point. Use @kbd{M-x
|
||||
hl-line-mode} to enable or disable it in the current buffer. @kbd{M-x
|
||||
global-hl-line-mode} enables or disables the same mode globally.
|
||||
|
||||
@ignore
|
||||
arch-tag: 2219f910-2ff0-4521-b059-1bd231a536c4
|
||||
@end ignore
|
||||
|
|
Loading…
Add table
Reference in a new issue