Killing Buffers
===============
If you continue an Emacs session for a while, you may accumulate a
large number of buffers. You may then find it convenient to "kill" the
buffers you no longer need. On most operating systems, killing a
buffer releases its space back to the operating system so that other
programs can use it. Here are some commands for killing buffers:
`C-x k BUFNAME <RET>'
Kill buffer BUFNAME (`kill-buffer').
`M-x kill-some-buffers'
Offer to kill each buffer, one by one.
`C-x k' (`kill-buffer') kills one buffer, whose name you specify in
the minibuffer. The default, used if you type just <RET> in the
minibuffer, is to kill the current buffer. If you kill the current
buffer, another buffer becomes current: one that was current in the
recent past but is not displayed in any window now. If you ask to kill
a file-visiting buffer that is modified (has unsaved editing), then you
must confirm with `yes' before the buffer is killed.
The command `M-x kill-some-buffers' asks about each buffer, one by
one. An answer of `y' means to kill the buffer. Killing the current
buffer or a buffer containing unsaved changes selects a new buffer or
asks for confirmation just like `kill-buffer'.
The buffer menu feature (Note:Several Buffers) is also convenient
for killing various buffers.
If you want to do something special every time a buffer is killed,
you can add hook functions to the hook `kill-buffer-hook' (Note:Hooks).
If you run one Emacs session for a period of days, as many people do,
it can fill up with buffers that you used several days ago. The command
`M-x clean-buffer-list' is a convenient way to purge them; it kills all
the unmodified buffers that you have not used for a long time. An
ordinary buffer is killed if it has not been displayed for three days;
however, you can specify certain buffers that should never be killed
automatically, and others that should be killed if they have been unused
for a mere hour.
You can also have this buffer purging done for you, every day at
midnight, by enabling Midnight mode. Midnight mode operates each day at
midnight; at that time, it runs `clean-buffer-list', or whichever
functions you have placed in the normal hook `midnight-hook' (Note:Hooks).
To enable Midnight mode, use the Customization buffer to set the
variable `midnight-mode' to `t'. Note:Easy Customization.