[ < ] | [ > ] | [ << ] | [Plus haut] | [ >> ] | [Top] | [Table des matières] | [Index] | [ ? ] |
In this section we describe convenient functions that choose a window
automatically and use it to display a specified buffer. These functions can
also split an existing window in certain circumstances. We also describe
variables that parameterize the heuristics used for choosing a window.
Voir la section Buffers and Windows, for
low-level functions that give you more precise control. All of these
functions work by calling set-window-buffer
.
Do not use the functions in this section in order to make a buffer current
so that a Lisp program can access or modify it; they are too drastic for
that purpose, since they change the display of buffers in windows, which
would be gratuitous and surprise the user. Instead, use set-buffer
and save-current-buffer
(voir la section The Current Buffer), which designate
buffers as current for programmed access without affecting the display of
buffers in windows.
This function makes buffer-or-name the current buffer, and also
displays the buffer in the selected window. This means that a human can see
the buffer and subsequent keyboard commands will apply to it. Contrast this
with set-buffer
, which makes buffer-or-name the current buffer
but does not display it in the selected window. Voir la section The Current Buffer.
If buffer-or-name does not identify an existing buffer, then a new
buffer by that name is created. The major mode for the new buffer is set
according to the variable default-major-mode
. Voir la section How Emacs Chooses a Major Mode. If buffer-or-name is nil
, switch-to-buffer
chooses a buffer using other-buffer
.
Normally the specified buffer is put at the front of the buffer list (both
the selected frame's buffer list and the frame-independent buffer list).
This affects the operation of other-buffer
. However, if
norecord is non-nil
, this is not done. Voir la section The Buffer List.
The switch-to-buffer
function is often used interactively, as the
binding of C-x b. It is also used frequently in programs. It returns
the buffer that it switched to.
The next two functions are similar to switch-to-buffer
, except for
the described features.
This function makes buffer-or-name the current buffer and displays it
in a window not currently selected. It then selects that window. The
handling of the buffer is the same as in switch-to-buffer
.
The currently selected window is absolutely never used to do the job. If it is the only window, then it is split to make a distinct window for this purpose. If the selected window is already displaying the buffer, then it continues to do so, but another window is nonetheless found to display it in as well.
This function updates the buffer list just like switch-to-buffer
unless norecord is non-nil
.
This function makes 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 buffer-or-name is
nil
, that means to choose some other buffer, but you don't specify
which.
If the variable pop-up-frames
is non-nil
, pop-to-buffer
looks for a window in any visible frame already displaying the buffer; if
there is one, it returns that window and makes it be selected within its
frame. If there is none, it creates a new frame and displays the buffer in
it.
If pop-up-frames
is nil
, then pop-to-buffer
operates
entirely within the selected frame. (If the selected frame has just a
minibuffer, pop-to-buffer
operates within the most recently selected
frame that was not just a minibuffer.)
If the variable pop-up-windows
is non-nil
, windows may be
split to create a new window that is different from the original window.
For details, see Choosing a Window for Display.
If other-window is non-nil
, pop-to-buffer
finds or
creates another window even if buffer-or-name is already visible in
the selected window. Thus buffer-or-name could end up displayed in
two windows. On the other hand, if buffer-or-name is already
displayed in the selected window and other-window is nil
, then
the selected window is considered sufficient display for
buffer-or-name, so that nothing needs to be done.
All the variables that affect display-buffer
affect
pop-to-buffer
as well. Voir la section Choosing a Window for Display.
If buffer-or-name is a string that does not name an existing buffer, a
buffer by that name is created. The major mode for the new buffer is set
according to the variable default-major-mode
. Voir la section How Emacs Chooses a Major Mode.
This function updates the buffer list just like switch-to-buffer
unless norecord is non-nil
.
This function replaces buffer-or-name with some other buffer in all
windows displaying it. It chooses the other buffer with
other-buffer
. In the usual applications of this function, you don't
care which other buffer is used; you just want to make sure that
buffer-or-name is no longer displayed.
This function returns nil
.
[ < ] | [ > ] | [ << ] | [Plus haut] | [ >> ] | [Top] | [Table des matières] | [Index] | [ ? ] |
Ce document a été généré par Eric Reinbold le 13 Octobre 2007 en utilisant texi2html 1.78.