Begin editing a buffer listing all Emacs buffers.
Similar, but do it in another window.
The Buffer Menu opened by C-x C-b (see Listing Existing Buffers) does not merely list buffers. It also allows you to perform various operations on buffers, through an interface similar to Dired (see Dired, the Directory Editor). 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 cursor motion commands can be used in this buffer. The following commands apply to the buffer described on the current line:
Flag the buffer for deletion (killing), then move point to the next
Buffer-menu-delete). The deletion flag is indicated by
the character ‘D’ on the line, before the buffer name. The
deletion occurs only when you type the x command (see below).
Like d, but move point up instead of down
Flag the buffer for saving (
Buffer-menu-save). The save flag
is indicated by the character ‘S’ on the line, before the buffer
name. The saving occurs only when you type x. You may request
both saving and deletion for the same buffer.
Perform all flagged deletions and saves (
Remove all flags from the current line, and move down
Buffer-menu-unmark). With a prefix argument, moves up after
removing the flags.
Move to the previous line and remove all flags on that line
Remove a particular flag from all lines
Buffer-menu-unmark-all-buffers). This asks for a single
character, and unmarks buffers marked with that character; typing
RET removes all marks.
Remove all flags from all the lines
The commands for removing flags, d and C-d, accept a numeric argument as a repeat count.
The following commands operate immediately on the buffer listed on the current line. They also accept a numeric argument as a repeat count.
Mark the buffer as unmodified (
See Commands for Saving Files.
Toggle the buffer’s read-only status
Buffer-menu-toggle-read-only). See Miscellaneous Buffer Operations.
Visit the buffer as a tags table
Buffer-menu-visit-tags-table). See Selecting a Tags Table.
The following commands are used to select another buffer or buffers:
Quit the Buffer Menu (
quit-window). The most recent formerly
visible buffer is displayed in its place.
Select this line’s buffer, replacing the *Buffer List* buffer
in its window (
Select this line’s buffer in another window, as if by C-x 4 b,
leaving *Buffer List* visible
Display this line’s buffer in another window, without selecting it
Select this line’s buffer in a full-frame window
Set up two windows on the current frame, with this line’s buffer
selected in one, and a previously current buffer (aside from
*Buffer List*) in the other (
Bury this line’s buffer (
Buffer-menu-bury) (i.e., move it to
the end of the buffer list).
Mark this line’s buffer to be displayed in another window if you exit
with the v command (
Buffer-menu-mark). The display flag
is indicated by the character ‘>’ at the beginning of the line.
(A single buffer may not have both deletion and display flags.)
Select this line’s buffer, and also display in other windows any
buffers flagged with the m command (
If you have not flagged any buffers, this command is equivalent to
The following commands affect the entire buffer list:
Sort the Buffer Menu entries according to their values in the column
at point. With a numeric prefix argument n, sort according to
the n-th column (
Widen the current column width by n (the prefix numeric argument) characters.
Narrow the current column width by n (the prefix numeric argument) characters.
Delete, or reinsert, lines for non-file buffers
Buffer-menu-toggle-files-only). This command toggles the
inclusion of such buffers in the buffer list.
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
revert-buffer). You can make this happen regularly
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-
See global-auto-revert-non-file-buffers, for details.