Eli Zaretskii <eliz@gnu.org> writes:
+ (add-hook 'kill-buffer-hook
+ (lambda () (if (> (recursion-depth) 0) (top-level))) nil t)
This will throw to top-level when _any_ buffer is killed, as long as
we are in recursive-edit, no?
No, because `add-hook' is called with non-nil LOCAL arg.
Right, sorry for not paying attention.
Maybe I should have written
(add-hook 'kill-buffer-hook (lambda ...) nil 'local)
to emphasize this? I'm still undecided on the general style question of
whether to use t or '<symbol> in these cases.