1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-01 11:14:55 +00:00

(Basic Windows): Add cursor-in-non-selected-windows. Clarify.

(Selecting Windows): Clarify save-selected-window.
(Cyclic Window Ordering): Clarify walk-windows.
(Window Point): Clarify.
(Window Start): Add comment to example.
(Resizing Windows): Add `interactive' specs in examples.
Document fit-window-to-buffer.
This commit is contained in:
Richard M. Stallman 2005-02-03 07:19:07 +00:00
parent f6c62d9690
commit ae473bd3ef

View File

@ -53,11 +53,17 @@ multiple nonoverlapping Emacs windows.
In each frame, at any time, one and only one window is designated as
@dfn{selected within the frame}. The frame's cursor appears in that
window. At any time, one frame is the selected frame; and the window
selected within that frame is @dfn{the selected window}. The selected
window's buffer is usually the current buffer (except when
window, but the other windows have ``non-selected'' cursors, normally
less visible. At any time, one frame is the selected frame; and the
window selected within that frame is @dfn{the selected window}. The
selected window's buffer is usually the current buffer (except when
@code{set-buffer} has been used). @xref{Current Buffer}.
@defvar cursor-in-non-selected-windows
If this variable is @code{nil}, Emacs displays only one cursor,
in the selected window. Other windows have no cursor at all.
@end defvar
For practical purposes, a window exists only while it is displayed in
a frame. Once removed from the frame, the window is effectively deleted
and should not be used, @emph{even though there may still be references
@ -455,10 +461,10 @@ The return value is @var{window}.
@end defun
@defmac save-selected-window forms@dots{}
This macro records the selected window, as well as the selected window
This macro records the selected frame, as well as the selected window
of each frame, executes @var{forms} in sequence, then restores the
earlier selected windows. It returns the value of the last form in
@var{forms}.
earlier selected frame and windows It returns the value of the last
form in @var{forms}.
This macro does not save or restore anything about the sizes,
arrangement or contents of windows; therefore, if the @var{forms}
@ -648,8 +654,9 @@ In an interactive call, @var{count} is the numeric prefix argument.
@c Emacs 19 feature
@defun walk-windows proc &optional minibuf all-frames
This function cycles through all windows, calling @code{proc}
once for each window with the window as its sole argument.
This function cycles through all windows. It calls the function
@code{proc} once for each window, with the window as its sole
argument.
The optional arguments @var{minibuf} and @var{all-frames} specify the
set of windows to include in the scan. See @code{next-window}, above,
@ -1175,11 +1182,11 @@ the other windows are stored in those windows.
@item
As long as the selected window displays the current buffer, the window's
point and the buffer's point always move together; they remain equal.
@item
@xref{Positions}, for more details on buffer positions.
@end itemize
@noindent
@xref{Positions}, for more details on buffer positions.
As far as the user is concerned, point is where the cursor is, and
when the user switches to another buffer, the cursor jumps to the
position of point in that buffer.
@ -1356,6 +1363,7 @@ Here is an example:
@example
@group
;; @r{If point is off the screen now, recenter it now.}
(or (pos-visible-in-window-p
(point) (selected-window))
(recenter 0))
@ -1984,6 +1992,7 @@ It could be defined as follows:
@example
@group
(defun enlarge-window-horizontally (columns)
(interactive "p")
(enlarge-window columns t))
@end group
@end example
@ -2006,16 +2015,29 @@ It could be defined as follows:
@example
@group
(defun shrink-window-horizontally (columns)
(interactive "p")
(shrink-window columns t))
@end group
@end example
@end deffn
@defun fit-window-to-buffer &optional window max-height min-height
This function makes @var{window} the right height to display its
contents exactly. If @var{window} is omitted or @code{nil}, it uses
the selected window.
The argument @var{max-height} specifies the maximum height the window
is allowed to be; @code{nil} means use the frame height. The argument
@var{min-height} specifies the minimum height for the window;
@code{nil} means use @code{window-min-height}. All these height
values include the mode-line and/or header-line.
@end defun
@deffn Command shrink-window-if-larger-than-buffer &optional window
This command shrinks @var{window} to be as small as possible while still
showing the full contents of its buffer---but not less than
@code{window-min-height} lines. If @var{window} is not given,
it defaults to the selected window.
This command shrinks @var{window} vertically to be as small as
possible while still showing the full contents of its buffer---but not
less than @code{window-min-height} lines. If @var{window} is not
given, it defaults to the selected window.
However, the command does nothing if the window is already too small to
display the whole text of the buffer, or if part of the contents are