> (add-hook 'kill-buffer-hook 'org-remove-file)
> 
> But the last hook does not work as espected.  Instead it says
> "Current buffer does not visit a file".  But according to the
> documentation kill-buffer-hook is run before the buffer is
> actually killed and the buffer is current when calling the hook.
> Any ideas what I'm doing wrong?

I have no idea what `org-remove-file' does, but if it expects
the current buffer to be visiting a file then that explains
your problem.  `kill-buffer-hook' is run whenever ANY buffer is
killed, not just a buffer visiting a file.  And Emacs uses lots
of buffers that are not visiting files.

What you can do is use a different function, `foo', that first
tests whether the current buffer is the kind of buffer you want
to apply `org-remove-file' to, and if so invoke that, and if not
do nothing.

Reply via email to