[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v
From: |
Martin Rudalics |
Subject: |
[Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v |
Date: |
Wed, 22 Oct 2008 13:04:00 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Changes by: Martin Rudalics <m061211> 08/10/22 13:03:59
Index: windows.texi
===================================================================
RCS file: /sources/emacs/emacs/doc/lispref/windows.texi,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- windows.texi 21 Oct 2008 09:19:20 -0000 1.14
+++ windows.texi 22 Oct 2008 13:03:59 -0000 1.15
@@ -852,12 +852,13 @@
@end deffn
@defun pop-to-buffer buffer-or-name &optional other-window norecord
-This function makes @var{buffer-or-name} the current buffer and
-switches to it in some window, preferably not the window previously
-selected. The ``popped-to'' window becomes the selected window within
-its frame. The return value is the buffer that was switched to.
-If @var{buffer-or-name} is @code{nil}, that means to choose some
-other buffer, but you don't specify which.
+This function makes @var{buffer-or-name} the current buffer and switches
+to it in some window, preferably not the window previously selected.
+The ``popped-to'' window becomes the selected window. Its frame is
+given the X server's focus if possible, see @ref{Input Focus}. The
+return value is the buffer that was switched to. If
address@hidden is @code{nil}, that means to choose some other
+buffer, but you don't specify which.
If the variable @code{pop-up-frames} is address@hidden,
@code{pop-to-buffer} looks for a window in any visible frame already
@@ -919,9 +920,9 @@
@code{display-buffer} and how to customize it.
@deffn Command display-buffer buffer-or-name &optional not-this-window frame
-This command makes @var{buffer-or-name} appear in some window, like
address@hidden, but it does not select that window and does not
-make the buffer current. The identity of the selected window is
+This command makes @var{buffer-or-name} appear in some window, but it
+does not select that window and does not make the buffer specified by
address@hidden current. The identity of the selected window is
unaltered by this function. @var{buffer-or-name} must be a buffer, or
the name of an existing buffer.
@@ -959,6 +960,27 @@
the variables described below.
@end deffn
address@hidden display-buffer-reuse-frames
+If this variable is address@hidden, @code{display-buffer} searches
+existing frames for a window displaying @var{buffer-or-name}. If the
+buffer is already displayed in a window in some frame,
address@hidden makes the frame visible and raises it, to use that
+window. If the buffer is not already displayed, or
address@hidden is @code{nil}, the behavior of
address@hidden is determined by the variables described next.
address@hidden defopt
+
address@hidden pop-up-windows
+This variable specifies whether @code{display-buffer} is allowed to
+split (@pxref{Splitting Windows}) an existing window . If it is
address@hidden, @code{display-buffer} tries to the split the largest or
+least recently used window on the selected frame. (If the selected
+frame is a minibuffer-only frame, it tries to split a window on another
+frame instead.) If @code{pop-up-windows} is nil or the variable
address@hidden (see below) is address@hidden,
address@hidden does not split any window.
address@hidden defopt
+
@defvar split-window-preferred-function
This variable specifies how to split a window. Its value, if
address@hidden, should be a function of one argument, which is a
@@ -966,72 +988,68 @@
will call it with one or more candidate windows when it looks for a
window to split. If the argument window fits, the function is
expected to split it and return a new window. If the function returns
address@hidden, then this window will not be split.
address@hidden, the argument window will not be split.
If the value of this variable is @code{nil}, @code{display-buffer}
-uses the other variables described below to decide whether and which
+uses the two variables described next to decide whether and which
window to split.
@end defvar
address@hidden display-buffer-reuse-frames
-If this variable is address@hidden, @code{display-buffer} searches
-existing frames for a window displaying the buffer. If the buffer is
-already displayed in a window in some frame, @code{display-buffer} makes
-the frame visible and raises it, to use that window. If the buffer is
-not already displayed, or if @code{display-buffer-reuse-frames} is
address@hidden, @code{display-buffer}'s behavior is determined by other
-variables, described below.
address@hidden defopt
-
address@hidden pop-up-windows
-This variable specifies whether @code{display-buffer} makes new windows.
-If it is address@hidden and there is only one window, then that window
-is split vertically. If it is @code{nil}, then @code{display-buffer}
-does not split the single window, but uses it whole.
address@hidden defopt
-
@defopt split-height-threshold
-This variable specifies when @code{display-buffer} may split a window
-vertically, if there are multiple windows. If the value is a number,
address@hidden splits the largest window if it has at least
-this many lines. If the largest window is not this tall, or if the
-value of this variable is @code{nil}, @code{display-buffer} tries to
-split some window horizontally, subject to restrictions of
address@hidden (see below). If splitting horizontally
-is impossible, @code{display-buffer} splits a window vertically
-only if it's the only window on its frame and not the minibuffer
-window, and only if @code{pop-up-windows} is address@hidden
-Otherwise, @code{display-buffer} uses one of the existing windows.
+This variable specifies whether @code{display-buffer} may split a window
+vertically, provided there are multiple windows. If the value is a
+number, @code{display-buffer} splits a window only if it has at least
+this many lines. If no window is tall enough, or if the value of this
+variable is @code{nil}, @code{display-buffer} tries to split some window
+horizontally, subject to restrictions of @code{split-width-threshold}
+(see below). If splitting horizontally is impossible too,
address@hidden splits a window vertically only if it's the only
+window on its frame and not the minibuffer window, and only if
address@hidden is address@hidden
+
+A window whose height is fixed (@pxref{Resizing Windows}) cannot be
+split vertically by @code{display-buffer}. Also, @code{display-buffer}
+splits a window vertically only if it can accommodate two windows that
+are both at least `window-min-height' lines tall. Moreover, if the
+window that shall be split has a mode-line, the window must be at least
+four lines tall in order to make sure that the new window can have a
+mode-line as well. If the original window doesn't have a mode-line, a
+height of two lines suffices.
@end defopt
@defopt split-width-threshold
-This variable specifies when @code{display-buffer} may split a window
-horizontally. If the value is a number, @code{display-buffer} may
-split a window if it has at least this many columns. If the value of
-this variable is @code{nil}, @code{display-buffer} will not split any
-windows horizontally. (It still might split some window vertically,
-though, see above.)
+This variable specifies whether @code{display-buffer} may split a window
+horizontally. If the value is a number, @code{display-buffer} may split
+a window if it has at least this many columns. If the value of this
+variable is @code{nil}, @code{display-buffer} will not split any windows
+horizontally. (It still might split some window vertically, though, see
+above.)
+
+A window whose width is fixed (@pxref{Resizing Windows}) cannot be split
+horizontally by @code{display-buffer}. Also, @code{display-buffer}
+splits a window horizontally only if it can accommodate two windows that
+are both at least `window-min-width' columns wide.
@end defopt
@defopt even-window-heights
This variable specifies whether @code{display-buffer} should even out
-window heights if the buffer gets displayed in an existing window,
-above or beneath another existing window. If
address@hidden is @code{t}, the default, window heights
-will be evened out. If @code{even-window-heights} is @code{nil}, the
-original window heights will be left alone.
+window heights if the buffer gets displayed in an existing window, above
+or beneath another window. If @code{even-window-heights} is
address@hidden, the default, window heights will be evened out. If
+either of the involved window has fixed height (@pxref{Resizing
+Windows}) or @code{even-window-heights} is @code{nil}, the original
+window heights will be left alone.
@end defopt
@c Emacs 19 feature
@defopt pop-up-frames
This variable specifies whether @code{display-buffer} makes new frames.
If it is address@hidden, @code{display-buffer} looks for an existing
-window already displaying the desired buffer, on any visible frame.
-If it finds one, it returns that window. Otherwise it makes a new
-frame, unless the variable's value is @code{graphic-only} and the
-selected frame is not on a graphic display. The variables
address@hidden, @code{split-height-threshold}, and
address@hidden do not matter if @code{pop-up-frames} is
+window already displaying the desired buffer, on any visible frame. If
+it finds one, it returns that window. Otherwise it makes a new frame,
+unless the variable's value is @code{graphic-only} and the selected
+frame is not on a graphic display. Note that the value of
address@hidden does not matter if @code{pop-up-frames} is
address@hidden
If @code{pop-up-frames} is @code{nil}, then @code{display-buffer} either
@@ -1060,15 +1078,15 @@
@defopt special-display-buffer-names
A list of buffer names for buffers that should be displayed specially.
-If the buffer's name is in this list, @code{display-buffer} handles the
-buffer specially.
+If the name of @var{buffer-or-name} is in this list,
address@hidden handles the buffer specially.
By default, special display means to give the buffer a dedicated frame.
-If an element is a list, instead of a string, then the @sc{car} of the
-list is the buffer name, and the rest of the list says how to create
-the frame. There are two possibilities for the rest of the list (its
address@hidden). It can be an alist, specifying frame parameters, or it can
+If an element is a list, instead of a string, then the @sc{car} of that
+list is the buffer name, and the rest of that list says how to create
+the frame. There are two possibilities for the rest of that list (its
address@hidden): It can be an alist, specifying frame parameters, or it can
contain a function and arguments to give to it. (The function's first
argument is always the buffer to be displayed; the arguments from the
list come after that.)
@@ -1178,16 +1196,19 @@
received. It should choose or create a window, display the specified
buffer in it, and then return the window.
-This hook takes precedence over all the other options and hooks
-described above.
+This variable takes precedence over all the other options described
+above.
@end defvar
@c Emacs 19 feature
@cindex dedicated window
-A window can be marked as @dfn{dedicated} to its buffer. Then
address@hidden will not try to use that window to display any
-other buffer. @code{set-window-buffer} will signal an error when asked
-to display another buffer in it. Both @code{get-lru-window} and
+If all options described above fail to produce a suitable window,
address@hidden will try to use an existing window. You can avoid
+that @code{display-buffer} uses a specific window by marking that window
+as @dfn{dedicated} to its buffer. Then @code{display-buffer} will not
+try to use that window to display any other buffer. Moreover,
address@hidden will signal an error when asked to display
+another buffer in it. Both @code{get-lru-window} and
@code{get-largest-window} do not consider dedicated windows as
candidates when their @var{dedicated} argument is address@hidden
@@ -1196,18 +1217,27 @@
there are other frames left. @code{replace-buffer-in-windows} deletes
any dedicated window showing its buffer argument. When such a window is
the only window on its frame, that frame is deleted if there are other
-frames left.
+frames left. If there are no more frames left, some other buffer is
+displayed in the window and the window is marked as non-dedicated.
@defun window-dedicated-p &optional window
-This function returns address@hidden if @var{window} is marked as
-dedicated; otherwise @code{nil}.
+This function returns address@hidden if @var{window} is dedicated to its
+buffer and @code{nil} otherwise. More precisely, the return value is
+the value assigned by the last call of @code{set-window-dedicated-p} for
address@hidden or @code{nil} if that function was never called with
address@hidden as its argument.
@end defun
@defun set-window-dedicated-p window flag
-This function marks @var{window} as dedicated if @var{flag} is
address@hidden, and nondedicated otherwise.
+This function marks @var{window} as dedicated to its buffer if
address@hidden is address@hidden, and non-dedicated otherwise.
@end defun
+As a last resort, @code{display-buffer} tries to display
address@hidden on a new frame. In this case, the value of
address@hidden is disregarded.
+
+
@node Window Point
@section Windows and Point
@cindex window position
@@ -2161,6 +2191,7 @@
and @code{nil} otherwise.
@end deffn
address@hidden fixed-size window
@defvar window-size-fixed
If this variable is address@hidden, in any given buffer,
then the size of any window displaying the buffer remains fixed
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v, Martin Rudalics, 2008/10/17
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v, Eli Zaretskii, 2008/10/18
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v, Eli Zaretskii, 2008/10/18
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v, Martin Rudalics, 2008/10/18
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v, Eli Zaretskii, 2008/10/18
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v, Martin Rudalics, 2008/10/19
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v, Eli Zaretskii, 2008/10/20
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v, Eli Zaretskii, 2008/10/20
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v, Martin Rudalics, 2008/10/21
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v,
Martin Rudalics <=
- [Emacs-diffs] Changes to emacs/doc/lispref/windows.texi,v, Martin Rudalics, 2008/10/25