changeset 71581:e0b0c80d7e1c

(Auto Scrolling): New node, broken out of Scrolling. (Scrolling): Substantial local rewrites. (Display): Update menu and intro.
author Richard M. Stallman <rms@gnu.org>
date Mon, 03 Jul 2006 15:46:16 +0000
parents 2e6a94a2b36e
children 349f782668a9
files man/display.texi
diffstat 1 files changed, 52 insertions(+), 32 deletions(-) [+]
line wrap: on
line diff
--- a/man/display.texi	Mon Jul 03 15:44:44 2006 +0000
+++ b/man/display.texi	Mon Jul 03 15:46:16 2006 +0000
@@ -6,12 +6,16 @@
 @chapter Controlling the Display
 
   Since only part of a large buffer fits in the window, Emacs tries to
-show a part that is likely to be interesting.  Display-control commands
-allow you to specify which part of the text you want to see, and how to
-display it.
+show a part that is likely to be interesting.  Display-control
+commands allow you to specify which part of the text you want to see,
+and how to display it.  Many variables also affect the details of
+redisplay.  Unless otherwise stated, the variables described in this
+chapter have their effect by customizing redisplay itself; therefore,
+their values only make a difference at the time of redisplay.
 
 @menu
-* Scrolling::	           Moving text up and down in a window.
+* Scrolling::	           Commands to move text up and down in a window.
+* Auto Scrolling::         Redisplay scrolls text automatically when needed.
 * Horizontal Scrolling::   Moving text left and right in a window.
 * Follow Mode::            Follow mode lets two windows scroll as one.
 * Faces::	           How to change the display style using faces.
@@ -82,7 +86,6 @@
 @kindex PAGEUP
 @findex scroll-up
 @findex scroll-down
-@vindex next-screen-context-lines
   To read the buffer a windowful at a time, use @kbd{C-v}
 (@code{scroll-up}) with no argument.  This scrolls forward by nearly
 the whole window height.  The effect is to take the two lines at the
@@ -91,12 +94,13 @@
 was in the text that scrolled off the top, it ends up at the new top
 of the window.
 
+@vindex next-screen-context-lines
   @kbd{M-v} (@code{scroll-down}) with no argument scrolls backward in
-a similar way, also with overlap.  The number of lines of overlap
-across a @kbd{C-v} or @kbd{M-v} is controlled by the variable
-@code{next-screen-context-lines}; by default, it is 2.  The function
-keys @key{NEXT} and @key{PRIOR}, or @key{PAGEDOWN} and @key{PAGEUP},
-are equivalent to @kbd{C-v} and @kbd{M-v}.
+a similar way, also with overlap.  The number of lines of overlap that
+the @kbd{C-v} or @kbd{M-v} commands leave is controlled by the
+variable @code{next-screen-context-lines}; by default, it is 2.  The
+function keys @key{NEXT} and @key{PRIOR}, or @key{PAGEDOWN} and
+@key{PAGEUP}, are equivalent to @kbd{C-v} and @kbd{M-v}.
 
   The commands @kbd{C-v} and @kbd{M-v} with a numeric argument scroll
 the text in the selected window up or down a few lines.  @kbd{C-v}
@@ -119,13 +123,14 @@
   Some users like the full-screen scroll commands to keep point at the
 same screen line.  To enable this behavior, set the variable
 @code{scroll-preserve-screen-position} to a non-@code{nil} value.  In
-this mode, when scrolling shifts point off the screen, or into the
-scrolling margins, Emacs moves point to keep the same vertical
-position within the window.  This mode is convenient for browsing
-through a file by scrolling by screenfuls; if you come back to the
-screen where you started, point goes back to the line where it
-started.  However, this mode is inconvenient when you move to the next
-screen in order to move point to the text there.
+this mode, when these commands would scroll the text around point off
+the screen, or within @code{scroll-margin} lines of the edge, they
+moves point to keep the same vertical position within the window.
+This mode is convenient for browsing through a file by scrolling by
+screenfuls; if you come back to the screen where you started, point
+goes back to the line where it started.  However, this mode is
+inconvenient when you move to the next screen in order to move point
+to the text there.
 
   Another way to do scrolling is with @kbd{C-l} with a numeric argument.
 @kbd{C-l} does not clear the screen when given an argument; it only scrolls
@@ -145,14 +150,21 @@
 the screen.  For example, in a Lisp file, this command tries to get the
 entire current defun onto the screen if possible.
 
+@node Auto Scrolling
+@section Automatic Scrolling
+
 @vindex scroll-conservatively
-  Scrolling happens automatically when point moves out of the visible
-portion of the text.  Normally, automatic scrolling centers point
-vertically within the window.  However, if you set
-@code{scroll-conservatively} to a small number @var{n}, then if you
-move point just a little off the screen---less than @var{n}
-lines---then Emacs scrolls the text just far enough to bring point
-back on screen.  By default, @code{scroll-conservatively} is 0.
+  Redisplay scrolls the buffer automatically when point moves out of
+the visible portion of the text.  The purpose of automatic scrolling
+is to make point visible, but you can customize many aspects of how
+this is done.
+
+  Normally, automatic scrolling centers point vertically within the
+window.  However, if you set @code{scroll-conservatively} to a small
+number @var{n}, then if you move point just a little off the
+screen---less than @var{n} lines---then Emacs scrolls the text just
+far enough to bring point back on screen.  By default,
+@code{scroll-conservatively} is 0.
 
 @cindex aggressive scrolling
 @vindex scroll-up-aggressively
@@ -444,7 +456,8 @@
 This face is used for the prompt strings displayed in the minibuffer.
 By default, Emacs automatically adds this face to the value of
 @code{minibuffer-prompt-properties}, which is a list of text
-properties used to display the prompt text.
+properties used to display the prompt text.  (This variable takes
+effect when you enter the minibuffer.)
 @item fringe
 @cindex @code{fringe} face
 The face for the fringes to the left and right of windows on graphic
@@ -509,6 +522,11 @@
 (global-font-lock-mode 0)
 @end example
 
+@noindent
+This variable, like all the variables that control Font Lock mode,
+take effect whenever fontification is done; that is, potentially at
+any time.
+
 @findex turn-on-font-lock
   If you have disabled Global Font Lock mode, you can still enable Font
 Lock for specific major modes by adding the function
@@ -701,8 +719,8 @@
 (@code{hi-lock-write-interactive-patterns}) to have Hi Lock highlight
 them.
 
-This command does nothing if the major mode is a member of the list
-@code{hi-lock-exclude-modes}.
+This command does nothing if the current major mode's symbol is a member
+of the list @code{hi-lock-exclude-modes}.
 @end table
 
 @node Fringes
@@ -1035,9 +1053,10 @@
 @vindex visible-cursor
   Some text terminals offer two different cursors: the normal cursor
 and the very visible cursor, where the latter may be e.g. bigger or
-blinking.  By default Emacs uses the very visible cursor.  Setting the
-variable @code{visible-cursor} to @code{nil} makes it use the
-normal cursor.
+blinking.  By default Emacs uses the very visible cursor, and switches
+to it when you start or resume Emacs.  If the variable
+@code{visible-cursor} is @code{nil} when Emacs starts or resumes, it
+doesn't switch, so it uses the normal cursor.
 
 @cindex cursor in non-selected windows
 @vindex cursor-in-non-selected-windows
@@ -1086,7 +1105,8 @@
 @vindex echo-keystrokes
   The variable @code{echo-keystrokes} controls the echoing of multi-character
 keys; its value is the number of seconds of pause required to cause echoing
-to start, or zero, meaning don't echo at all.  @xref{Echo Area}.
+to start, or zero, meaning don't echo at all.  The value takes effect when
+there is someting to echo.  @xref{Echo Area}.
 
 @cindex truncation
 @cindex line truncation, and fringes
@@ -1190,7 +1210,7 @@
 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
+page for other output.  On such terminals, 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.