20.6.2 Displaying non-editable buffers.
Some buffers are shown in windows for perusal rather than for editing.
Help commands (see Help) typically use a buffer called *Help*
for that purpose, minibuffer completion (see Completion) uses a
buffer called *Completions*
, etc. Such buffers are usually
displayed only for a short period of time.
Normally, Emacs chooses the window for such temporary displays via
display-buffer
, as described in the previous subsection. The
*Completions*
buffer, on the other hand, is normally displayed
in a window at the bottom of the selected frame, regardless of the
number of windows already shown on that frame.
If you prefer Emacs to display a temporary buffer in a different
fashion, customize the variable display-buffer-alist
(see Choosing a Window for Displaying a Buffer in The Emacs Lisp Reference Manual) appropriately. For example,
to display *Completions*
always below the selected window, use
the following form in your initialization file (see The Emacs Initialization File):
(customize-set-variable
'display-buffer-alist
'(("\\*Completions\\*" display-buffer-below-selected)))
The *Completions*
buffer is also special in the sense that
Emacs usually tries to make its window just as large as necessary to
display all of its contents. To resize windows showing other
temporary displays, like, for example, the *Help*
buffer, turn
on the minor mode (see Minor Modes) temp-buffer-resize-mode
(see Temporary Displays in The Emacs Lisp
Reference Manual).
The maximum size of windows resized by temp-buffer-resize-mode
can be controlled by customizing the options
temp-buffer-max-height
and temp-buffer-max-width
(see Temporary Displays in The Emacs Lisp
Reference Manual), and cannot exceed the size of the containing frame.