]> code.delx.au - gnu-emacs/blobdiff - man/windows.texi
(align-regexp, align-highlight-rule): Use region-beginning and region-end
[gnu-emacs] / man / windows.texi
index cafbf2a5312a06e5af9b022c03a04cec303994ad..ecd13de7286e69072b1d34377f2be07e3c102594 100644 (file)
@@ -1,5 +1,6 @@
 @c This is part of the Emacs manual.
-@c Copyright (C) 1985, 86, 87, 93, 94, 95, 97, 2000 Free Software Foundation, Inc.
+@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
+@c   2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 @c See file emacs.texi for copying conditions.
 @node Windows, Frames, Buffers, Top
 @chapter Multiple Windows
@@ -36,16 +37,16 @@ each window has its own value of point.
   At any time, one of the windows is the @dfn{selected window}; the
 buffer this window is displaying is the current buffer.  The terminal's
 cursor shows the location of point in this window.  Each other window
-has a location of point as well, but since the terminal has only one
-cursor there is no way to show where those locations are.  When multiple
-frames are visible in X, each frame has a cursor which appears in the
-frame's selected window.  The cursor in the selected frame is solid; the
-cursor in other frames is a hollow box.
+has a location of point as well.  On text-only terminals, there is no
+way to show where those locations are, since the terminal has only one
+cursor.  If you are using a window system, the location of point in a
+non-selected window is indicated by a hollow box.  The cursor in the
+selected window is blinking or solid.
 
   Commands to move point affect the value of point for the selected Emacs
 window only.  They do not change the value of point in any other Emacs
 window, even one showing the same buffer.  The same is true for commands
-such as @kbd{C-x b} to change the selected buffer in the selected window;
+such as @kbd{C-x b} to change the current buffer in the selected window;
 they do not affect other windows at all.  However, there are other commands
 such as @kbd{C-x 4 b} that select a different window and switch buffers in
 it.  Also, all commands that display information in a window, including
@@ -60,8 +61,8 @@ only one mark position.
 
   Each window has its own mode line, which displays the buffer name,
 modification status and major and minor modes of the buffer that is
-displayed in the window.  @xref{Mode Line}, for full details on the mode
-line.
+displayed in the window.  The selected window's mode line appears in a
+different color.  @xref{Mode Line}, for full details on the mode line.
 
 @iftex
 @break
@@ -93,31 +94,32 @@ numeric argument specifies how many lines to give to the top window.
 @findex split-window-horizontally
   @kbd{C-x 3} (@code{split-window-horizontally}) breaks the selected
 window into two side-by-side windows.  A numeric argument specifies how
-many columns to give the one on the left.  A line of vertical bars
-separates the two windows.  Windows that are not the full width of the
-screen have mode lines, but they are truncated.  On terminals where
-Emacs does not support highlighting, truncated mode lines sometimes do
-not appear in inverse video.
+many columns to give the one on the left.  If you are not using
+scrollbars, a vertical line separates the two windows.
+You can customize its color with the face @code{vertical-border}.
+Windows that are not the full width of the screen have mode lines, but
+they are truncated.  On terminals where Emacs does not support
+highlighting, truncated mode lines sometimes do not appear in inverse
+video.
 
 @kindex C-Mouse-2 @r{(scroll bar)}
   You can split a window horizontally or vertically by clicking
-@kbd{C-Mouse-2} in the mode line or the scroll bar.  (This does not
-work in scroll bars implemented by X toolkits.)  The line of splitting
-goes through the place where you click: if you click on the mode line,
-the new scroll bar goes above the spot; if you click in the scroll
-bar, the mode line of the split window is side by side with your
-click.
+@kbd{C-Mouse-2} in the mode line or the scroll bar.  The line of
+splitting goes through the place where you click: if you click on the
+mode line, the new scroll bar goes above the spot; if you click in the
+scroll bar, the mode line of the split window is side by side with
+your click.
 
 @vindex truncate-partial-width-windows
-  When a window is less than the full width, text lines too long to fit are
-frequent.  Continuing all those lines might be confusing.  The variable
-@code{truncate-partial-width-windows} can be set non-@code{nil} to force
-truncation in all windows less than the full width of the screen,
-independent of the buffer being displayed and its value for
-@code{truncate-lines}.  @xref{Continuation Lines}.@refill
+  When a window is less than the full width, text lines too long to
+fit are frequent.  Continuing all those lines might be confusing, so
+if the variable @code{truncate-partial-width-windows} is
+non-@code{nil}, that forces truncation in all windows less than the
+full width of the screen, independent of the buffer being displayed
+and its value for @code{truncate-lines}.  @xref{Display Custom}.
 
   Horizontal scrolling is often used in side-by-side windows.
-@xref{Display}.
+@xref{Horizontal Scrolling}.
 
 @vindex split-window-keep-point
   If @code{split-window-keep-point} is non-@code{nil}, the default,
@@ -126,7 +128,7 @@ point from the window that was split.  This means that scrolling is
 inevitable.  If this variable is @code{nil}, then @kbd{C-x 2} tries to
 avoid scrolling the text currently visible on the screen, by putting
 point in each window at a position already visible in the window.  It
-also selects whichever window contain the screen line that the cursor
+also selects whichever window contains the screen line that the cursor
 was previously on.  Some users prefer the latter mode on slow
 terminals.
 
@@ -176,6 +178,11 @@ next window in the standard cyclic order.)
 buffers visible in two windows, by moving through them to the next
 mismatch.  @xref{Comparing Files}, for details.
 
+@vindex mouse-autoselect-window
+  If you set @code{mouse-autoselect-window} to a non-@code{nil} value,
+moving the mouse into a different window selects that window.  This
+feature is off by default.
+
 @node Pop Up Window
 @section Displaying in Another Window
 
@@ -219,7 +226,7 @@ window.  This runs @code{find-file-read-only-other-window}.
 
   Certain Emacs commands switch to a specific buffer with special
 contents.  For example, @kbd{M-x shell} switches to a buffer named
-@samp{*Shell*}.  By convention, all these commands are written to pop up
+@samp{*shell*}.  By convention, all these commands are written to pop up
 the buffer in a separate window.  But you can specify that certain of
 these buffers should appear in the selected window.
 
@@ -314,12 +321,17 @@ the minibuffer); the selected window expands to use the whole frame
 except for the echo area.
 
   You can also delete a window by clicking on its mode line with
-@kbd{Mouse-2}, and delete all the windows in a frame except one window
-by clicking on that window's mode line with @kbd{Mouse-3}.
-
-  The easiest way to adjust window heights is with a mouse.  If you
-press @kbd{Mouse-1} on a mode line, you can drag that mode line up or
-down, changing the heights of the windows above and below it.
+@kbd{Mouse-3}, and delete all the windows in a frame except one window
+by clicking on that window's mode line with @kbd{Mouse-2}.
+
+  You can also adjust window heights and widths with the mouse.  If
+you press @kbd{Mouse-1} on a mode line, you can drag that mode line up
+or down, changing the heights of the windows above and below it.  If
+you press it on the divider between two consecutive mode lines, you
+can drag that divider right or left, changing the widths of the
+windows to either side.  Note that changing heights and widths with
+the mouse never deletes windows, it just refuses to make any window
+smaller than it can be.
 
 @kindex C-x ^
 @findex enlarge-window
@@ -365,8 +377,8 @@ heights of all the windows in the selected frame.
   @kbd{M-x winner-mode} is a global minor mode that records the
 changes in the window configuration (i.e. how the frames are
 partitioned into windows), so that you can ``undo'' them.  To undo,
-use @kbd{C-x left} (@code{winner-undo}).  If you change your mind
-while undoing, you can redo the changes you had undone using @kbd{C-x
+use @kbd{C-c left} (@code{winner-undo}).  If you change your mind
+while undoing, you can redo the changes you had undone using @kbd{C-c
 right} (@code{M-x winner-redo}).  Another way to enable Winner mode is
 by customizing the variable @code{winner-mode}.
 
@@ -374,7 +386,7 @@ by customizing the variable @code{winner-mode}.
 @cindex directional window selection
 @findex windmove-right
 @findex windmove-default-keybindings
-  The Windmove commands move directionally between neighbouring windows in
+  The Windmove commands move directionally between neighboring windows in
 a frame.  @kbd{M-x windmove-right} selects the window immediately to the
 right of the currently selected one, and similarly for the ``left,'' ``up,''
 and ``down'' counterparts.  @kbd{M-x windmove-default-keybindings} binds
@@ -395,3 +407,7 @@ windows together.  You can also turn it on by customizing the variable
 scroll-all-scroll-down-all}, @kbd{M-x scroll-all-page-down-all} and
 their corresponding ``up'' equivalents.  To make this mode useful,
 you should bind these commands to appropriate keys.
+
+@ignore
+   arch-tag: 8bea7453-d4b1-49b1-9bf4-cfe4383e1113
+@end ignore