Buffers and Windows
===================
This section describes low-level functions to examine windows or to
display buffers in windows in a precisely controlled fashion. Note:Displaying Buffers, for related functions that find a window to use
and specify a buffer for it. The functions described there are easier
to use than these, but they employ heuristics in choosing or creating a
window; use these functions when you need complete control.
- Function: set-window-buffer window buffer-or-name
This function makes WINDOW display BUFFER-OR-NAME as its contents.
It returns `nil'. This is the fundamental primitive for changing
which buffer is displayed in a window, and all ways of doing that
call this function.
(set-window-buffer (selected-window) "foo")
=> nil
- Function: window-buffer &optional window
This function returns the buffer that WINDOW is displaying. If
WINDOW is omitted, this function returns the buffer for the
selected window.
(window-buffer)
=> #<buffer windows.texi>
- Function: get-buffer-window buffer-or-name &optional all-frames
This function returns a window currently displaying
BUFFER-OR-NAME, or `nil' if there is none. If there are several
such windows, then the function returns the first one in the
cyclic ordering of windows, starting from the selected window.
Note:Cyclic Window Ordering.
The argument ALL-FRAMES controls which windows to consider.
* If it is `nil', consider windows on the selected frame.
* If it is `t', consider windows on all frames.
* If it is `visible', consider windows on all visible frames.
* If it is 0, consider windows on all visible or iconified
frames.
* If it is a frame, consider windows on that frame.
- Function: get-buffer-window-list buffer-or-name &optional minibuf
all-frames
This function returns a list of all the windows currently
displaying BUFFER-OR-NAME.
The two optional arguments work like the optional arguments of
`next-window' (Note:Cyclic Window Ordering); they are _not_
like the single optional argument of `get-buffer-window'. Perhaps
we should change `get-buffer-window' in the future to make it
compatible with the other functions.
The argument ALL-FRAMES controls which windows to consider.
* If it is `nil', consider windows on the selected frame.
* If it is `t', consider windows on all frames.
* If it is `visible', consider windows on all visible frames.
* If it is 0, consider windows on all visible or iconified
frames.
* If it is a frame, consider windows on that frame.
- Variable: buffer-display-time
This variable records the time at which a buffer was last made
visible in a window. It is always local in each buffer; each time
`set-window-buffer' is called, it sets this variable to
`(current-time)' in the specified buffer (Note:Time of Day).
When a buffer is first created, `buffer-display-time' starts out
with the value `nil'.