Subject: bug#38818: Dired: mention deleting buffers, not just windows

From: 積丹尼 Dan Jacobson <[email-masked]>
Date: Wed, 01 Jan 2020 10:14:04 +0800

>>>>> "MH" == Michael Heerdegen <[email-masked]> writes:

MH> doesn't `kill-buffer-and-window' (C-x 4 0) already do what you want?

Actually
 C-x k runs the command kill-buffer
is good enough perhaps.

Anyway the user, in dired, uses lots of v's and q's, to browse a tree.
The v's go in, and the q's go out.
After the day is finished, the files are all gone from the buffer list,
but the directories all remain.

So q when in a directory should do the same as q in (file) view mode,
which is View-quit.

So the
  q runs the command quit-window (found in dired-mode-map)
in dired-mode-map is the culprit.

So quit-window doesn't need to be changed at all. Instead q in
dired-mode-map needs a new binding.

OK, in dired, M-x View-quit does nothing. Makes sense, we are not in view-mode.

So dired's q should be mapped to kill-buffer instead... (Except
kill-buffer asks the user which buffer. So a new function is needed,
with no asking.)

Anyway this all could be controlled by a new variable:

dired-keep-directorys-around-upon-quitting-it

t: current behaviour (bury buffer)
nil: kill buffer
ask: ask upon each q what to do.