unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Advising quit-window
@ 2011-10-26  1:54 Christoph Scholtes
  2011-10-26  2:23 ` Juanma Barranquero
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Christoph Scholtes @ 2011-10-26  1:54 UTC (permalink / raw)
  To: emacs-devel

Sorry to dwell on `quit-window', but...

I really don't like the default behavior of `quit-window' burying the
buffer instead of killing it. I'd much rather have the default be kill
than bury, especially when it is bound to `q'.

Therefore, I have this in my .emacs:

;; Advise quit-window to kill buffer instead of burying it
(defadvice quit-window (before advise-quit-window activate)
  (ad-set-arg 0 (not (ad-get-arg 0))))

This works fine for cases where `quit-window' is bound to, for example,
`q' in a keymap. However, `quit-window' is also called internally, for
example by `quit-windows-on'. The latter is then called by vc mode to
kill the log buffer after a commit. It took me a while to figure out
that my advice actually caused the log buffer to be buried now, instead
of killed.

Can we please have a user option to select whether the default behavior
is kill or bury? Or can we add a `quit-window-internal' and
`quit-window' then calls `quit-window-internal'? I can then advise
`quit-window' to get the behavior I want without affecting the internal
function.

Other solutions welcome.

Christoph



^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2011-10-29  3:57 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-10-26  1:54 Advising quit-window Christoph Scholtes
2011-10-26  2:23 ` Juanma Barranquero
2011-10-26  2:52   ` Christoph Scholtes
2011-10-26  9:21 ` martin rudalics
2011-10-27  3:53   ` Christoph Scholtes
2011-10-27  9:54     ` martin rudalics
2011-10-26 13:54 ` Stefan Monnier
2011-10-27  3:55   ` Christoph Scholtes
2011-10-27  6:43     ` Juri Linkov
2011-10-27 12:06       ` Christoph Scholtes
2011-10-27 12:23     ` Stefan Monnier
2011-10-29  3:57       ` Christoph Scholtes

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).