Eli Zaretskii <e...@gnu.org> writes: >> Then, Org mode can instead have >> >> (setq-local kill-line-query-function #'org-kill-line-query) >> (defun org-kill-line-query (beg end) >> (org-with-point-at beg >> (when (and (org-at-heading-p) >> (progn >> (end-of-line) >> (and (< (point) end) >> (org-fold-folded-p)))) >> "Kill hidden subtree along with headline? "))) > > I don't know what org-with-point-at and org-fold-folded-p do, but my > point is that you should consider the case when kill-line kills > invisible text that has nothing to do with Org's headings and trees, > so I suggest to either make the detection code smarter (so it could > distinguish between the two), or make the prompt text vaguer (to not > claim that the text must be a subtree). > > And if that is still not clear or you disagree, let's leave it at > that.
I think that I see what you mean. What we can do to achieve this is changing `kill-line-query-function' into abnormal hook `kill-line-query-functions'. Then, `kill-line'/`kill-whole-line' will use (run-hook-with-args-until-success 'kill-line-query-functions) to decide whether to show a query. Does it make sense? -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at <https://orgmode.org/>. Support Org development at <https://liberapay.com/org-mode>, or support my work at <https://liberapay.com/yantar92>