Daniel Brockman wrote: > I've always found it annoying that Emacs seems to have a habit of > leaving junk windows around whenever you invoke something that needs > to display information in a temporary buffer. I think it just gives a > really sloppy impression, especially when you aren't used to it. > Two of the most common examples might be `M-x compile' and `C-h f'. > It also happens with things like `M-x grep' and `M-x locate'. > > I realize that you can't expect Emacs to know when you are done with a > window unless you actually tell when. The obvious way to tell when is > to type `C-x 1' or `C-x 0', but this leaves the temporary buffer > lingering, which makes me nervous. > > When I was new to Emacs, I would always kill a garbage buffer before > deleting its temporary window. Eventually, I discovered `C-x 4 0' and > started using that. As time went by (and I got lazier), I gradually > began to accept the fact that you really can't avoid having a bunch of > old garbage buffers unless you spend a lot of time chasing them down, > so I started just doing `C-x 1', though it always made me feel dirty. > > Now to the point of this message. Some time ago I started using > Dictionary Mode[1], which has caused me to once again pick up the > habit of killing temporary buffers. As you might know, killing a > dictionary buffer automatically kills the window as well, unless the > window was already there when the dictionary buffer was created. > This makes a lot of sense to me --- so much sense that the normal > Emacs behavior has once again started to annoy me. > > I believe the Right Thing to do when the user kills a temporary buffer > whose window was created as a side-effect of displaying the buffer in > question is to restore the old window configuration. At least when > the automatically created window hasn't been used for anything else, > Emacs should take the hint and get the window out of the user's face.
Have you tried displaying those temporary buffers each in its own frame, via special-display-buffer-names (or special-display-regexps)? That frame's sole window is dedicated to the buffer, and so killing the buffer deletes the frame.
-- Kevin Rodgers
_______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel