Subject: save-some-buffers, -action-alist

From: [email-masked]
Date: Tue, 06 Dec 2011 16:50:44 +0800

C-x s runs the command save-some-buffers, which is an interactive
   compiled Lisp function in `files.el'.

   It is bound to C-x s.

   (save-some-buffers &optional ARG PRED)

   Save some modified file-visiting buffers.  Asks user about each one.
   You can answer `y' to save, `n' not to save, `C-r' to look at the
   buffer in question with `view-buffer' before deciding or `d' to
   view the differences using `diff-buffer-with-file'.

OK, but you forgot one: plain old visit-the-buffer.

C-r lets you look at it but you are still in the minibuffer.
So you hit C-g and ... you can't see it any more.

   This command first saves any buffers where `buffer-save-without-query' is
   non-nil, without asking.

   Optional argument (the prefix) non-nil means save all with no questions.
   Optional second argument PRED determines which buffers are considered:
   If PRED is nil, all the file-visiting buffers are considered.
   If PRED is t, then certain non-file buffers will also be considered.
   If PRED is a zero-argument function, it indicates for each buffer whether
   to consider it or not when called with that buffer current.

   See `save-some-buffers-action-alist' if you want to
   change the additional actions you can take on files.

Well C-h v save-some-buffers-action-alist shows some horrid byte code.