Variable: window-combination-limit

window-combination-limit is a customizable variable defined in window.c.

Value

window-size

Documentation

If non-nil, splitting a window makes a new parent window.

The following values are recognized:

nil means splitting a window will create a new parent window only if the
    window has no parent window or the window shall become part of a
    combination orthogonal to the one it is part of.

window-size means that splitting a window for displaying a buffer
    makes a new parent window provided display-buffer is supposed to
    explicitly set the window's size due to the presence of a
    window-height or window-width entry in the alist used by
    display-buffer. Otherwise, this value is handled like nil.

temp-buffer-resize means that splitting a window for displaying a
    temporary buffer via with-temp-buffer-window makes a new parent
    window only if temp-buffer-resize-mode(var)/temp-buffer-resize-mode(fun) is enabled. Otherwise,
    this value is handled like nil.

temp-buffer means that splitting a window for displaying a temporary
    buffer via with-temp-buffer-window always makes a new parent
    window. Otherwise, this value is handled like nil.

display-buffer means that splitting a window for displaying a buffer
    always makes a new parent window. Since temporary buffers are
    displayed by the function display-buffer, this value is stronger
    than temp-buffer. Splitting a window for other purpose makes a
    new parent window only if needed.

t means that splitting a window always creates a new parent window. If
    all splits behave this way, each frame's window tree is a binary
    tree and every window but the frame's root window has exactly one
    sibling.

The default value is window-size. Other values are reserved for future use.

This variable was added, or its default value changed, in Emacs 26.1.

View in manual

Probably introduced at or before Emacs version 24.1.

Source Code

// Defined in /usr/src/emacs/src/window.c
  DEFVAR_LISP ("window-combination-limit", Vwindow_combination_limit,
	       doc: /* If non-nil, splitting a window makes a new parent window.
The following values are recognized:

nil means splitting a window will create a new parent window only if the
    window has no parent window or the window shall become part of a
    combination orthogonal to the one it is part of.

`window-size' means that splitting a window for displaying a buffer
    makes a new parent window provided `display-buffer' is supposed to
    explicitly set the window's size due to the presence of a
    `window-height' or `window-width' entry in the alist used by
    `display-buffer'.  Otherwise, this value is handled like nil.

`temp-buffer-resize' means that splitting a window for displaying a
    temporary buffer via `with-temp-buffer-window' makes a new parent
    window only if `temp-buffer-resize-mode' is enabled.  Otherwise,
    this value is handled like nil.

`temp-buffer' means that splitting a window for displaying a temporary
    buffer via `with-temp-buffer-window' always makes a new parent
    window.  Otherwise, this value is handled like nil.

`display-buffer' means that splitting a window for displaying a buffer
    always makes a new parent window.  Since temporary buffers are
    displayed by the function `display-buffer', this value is stronger
    than `temp-buffer'.  Splitting a window for other purpose makes a
    new parent window only if needed.

t means that splitting a window always creates a new parent window.  If
    all splits behave this way, each frame's window tree is a binary
    tree and every window but the frame's root window has exactly one
    sibling.

The default value is `window-size'.  Other values are reserved for
future use.  */);