The buffer menu opened by C-x C-b (see List Buffers) does not merely list buffers. It also allows you to perform various operations on buffers, through an interface similar to Dired (see Dired). You can save buffers, kill them (here called deleting them, for consistency with Dired), or display them.
To use the buffer menu, type C-x C-b and switch to the window displaying the ‘*Buffer List*’ buffer. You can also type M-x buffer-menu to open the buffer menu in the selected window. Alternatively, the command M-x buffer-menu-other-window opens the buffer menu in another window, and selects that window.
The buffer menu is a read-only buffer, and can be changed only through the special commands described in this section. The usual Emacs cursor motion commands can be used in this buffer. The following commands apply to the buffer described on the current line:
The d, C-d, s and u commands to add or remove flags also move down (or up) one line. They accept a numeric argument as a repeat count.
These commands operate immediately on the buffer listed on the current line:
There are also commands to select another buffer or buffers:
There is also a command that affects the entire buffer list:
What buffer-menu actually does is create and switch to a
suitable buffer, and turn on Buffer Menu mode in it. Everything else
described above is implemented by the special commands provided in
Buffer Menu mode. One consequence of this is that you can switch from
the ‘*Buffer List*’ buffer to another Emacs buffer, and edit
there. You can reselect the ‘*Buffer List*’ buffer later, to
perform the operations already requested, or you can kill it, or pay
no further attention to it.
Normally, the buffer ‘*Buffer List*’ is not updated
automatically when buffers are created and killed; its contents are
just text. If you have created, deleted or renamed buffers, the way
to update ‘*Buffer List*’ to show what you have done is to type
g (revert-buffer). You can make this happen regularly
every auto-revert-interval seconds if you enable Auto Revert
mode in this buffer, as long as it is not marked modified. Global
Auto Revert mode applies to the ‘*Buffer List*’ buffer only if
global-auto-revert-non-file-buffers is non-nil.
See global-auto-revert-non-file-buffers, for details.