]> git.eshelyaron.com Git - emacs.git/commitdiff
(Displaying Buffers): Minor wording fix.
authorEli Zaretskii <eliz@gnu.org>
Sat, 18 Oct 2008 11:22:08 +0000 (11:22 +0000)
committerEli Zaretskii <eliz@gnu.org>
Sat, 18 Oct 2008 11:22:08 +0000 (11:22 +0000)
(Choosing Window): `split-height-threshold' can now be nil.
Document `split-width-threshold'.  `pop-up-frames' can have the value
`graphic-only'.

doc/lispref/ChangeLog
doc/lispref/windows.texi
etc/NEWS

index 5891f6110503523ec93457296d625a7626cc762c..cc74a97379285f9905b50bf4d3fc8ce6f368a073 100644 (file)
@@ -1,3 +1,10 @@
+2008-10-18  Eli Zaretskii  <eliz@gnu.org>
+
+       * windows.texi (Displaying Buffers): Minor wording fix.
+       (Choosing Window): `split-height-threshold' can now be nil.
+       Document `split-width-threshold'.  `pop-up-frames' can have the
+       value `graphic-only'.
+
 2008-10-17  Eli Zaretskii  <eliz@gnu.org>
 
        * os.texi (Startup Summary): Document `before-init-time' and
index 6cc5d03206fc48e553705a9a13b36da096426c76..09cfff227d400f761674c8b349b118785bad7ea7 100644 (file)
@@ -794,7 +794,7 @@ See the preceding section for
 @ifnottex
 @xref{Buffers and Windows}, for
 @end ifnottex
-low-level functions that give you more precise control.  All of these
+low-level primitives that give you more precise control.  All of these
 functions work by calling @code{set-window-buffer}.
 
   Do not use the functions in this section in order to make a buffer
@@ -951,6 +951,16 @@ Precisely how @code{display-buffer} finds or creates a window depends on
 the variables described below.
 @end deffn
 
+@defun split-window-preferred-function window
+This variable specifies how to split a window.  Its value, if
+non-@code{nil}, should be a function of one argument, which is a
+window.  If this variable specifies a function, @code{display-buffer}
+will call it with one or more candidate windows when it looks for a
+window to split.  If the argument @var{window} fits, the function is
+expected to split it and return a new window.  If the function returns
+@code{nil}, then @var{window} will not be split.
+@end defun
+
 @defopt display-buffer-reuse-frames
 If this variable is non-@code{nil}, @code{display-buffer} searches
 existing frames for a window displaying the buffer.  If the buffer is
@@ -964,16 +974,31 @@ variables, described below.
 @defopt pop-up-windows
 This variable controls whether @code{display-buffer} makes new windows.
 If it is non-@code{nil} and there is only one window, then that window
-is split.  If it is @code{nil}, then @code{display-buffer} does not
-split the single window, but uses it whole.
+is split vertically.  If it is @code{nil}, then @code{display-buffer}
+does not split the single window, but uses it whole.
 @end defopt
 
 @defopt split-height-threshold
-This variable determines when @code{display-buffer} may split a window,
-if there are multiple windows.  @code{display-buffer} always splits the
-largest window if it has at least this many lines.  If the largest
-window is not this tall, it is split only if it is the sole window and
-@code{pop-up-windows} is non-@code{nil}.
+This variable determines when @code{display-buffer} may split a window
+vertically, if there are multiple windows.  If the value is a number,
+@code{display-buffer} 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
+@code{split-width-threshold} (see below).  If splitting horizontally
+is impossible, @code{display-buffer} will split 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 non-@code{nil}.
+Otherwise, @code{display-buffer} uses one of the existing windows.
+@end defopt
+
+@defopt split-width-threshold
+This variable determines 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.)
 @end defopt
 
 @defopt even-window-heights
@@ -989,10 +1014,13 @@ will be left alone.
 @defopt pop-up-frames
 This variable controls whether @code{display-buffer} makes new frames.
 If it is non-@code{nil}, @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.
-The variables @code{pop-up-windows} and @code{split-height-threshold} do
-not matter if @code{pop-up-frames} is non-@code{nil}.
+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
+@code{pop-up-windows}, @code{split-height-threshold}, and
+@code{split-width-threshold} do not matter if @code{pop-up-frames} is
+non-@code{nil}.
 
 If @code{pop-up-frames} is @code{nil}, then @code{display-buffer} either
 splits a window or reuses one.
index 58c4388fba276afe9275d619f1c8ebb25836fb64..b2e73354061b05df8a9f788efe2310350254ada1 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1221,16 +1221,21 @@ Emacs initialization.
 
 ** Changes affecting display-buffer
 
++++
 *** New value nil for split-height-threshold inhibits vertical splitting
 unless there's no other window.
 
++++
 *** New option split-width-threshold controls horizontal splitting.
 
++++
 *** A window can be split horizontally even when it's not full-width.
 
++++
 *** New option split-window-preferred-function can be set to a function
 to override the default splitting mechanism of display-buffer.
 
++++
 *** If pop-up-frames has the value `graphic-only', display-buffer only
 makes a separate frame on graphic displays.