Luciano Passuello <lucia...@litemind.com> writes: > When I set org-attach-archive-delete to query, Org is supposed to ask > me for confirmation when archiving entries with attachments. However, > I am always asked for confirmation, regardless if the item has > attachments in the first place. This is to me clearly undesirable > behavior.
I agree, that doesn't sound desirable (though I've never used this feature, so perhaps I'm missing something). > Looking at the source code for org-attach, at line 573, that's indeed > what code tells us. > https://code.orgmode.org/bzg/org-mode/src/master/lisp/org-attach.el > > My uninformed suggestion is to call org-attach-delete-all without the > force parameter, using the confirmation code already in > org-attach-delete-all. That would cover the org-attach-archive-delete=query case, but it'd also ask for confirmation in the org-attach-archive-delete=t case. How about this? -- >8 -- Subject: [PATCH] org-attach: Don't query unnecessarily about archiving * lisp/org-attach.el (org-attach-archive-delete-maybe): Don't query about deleting attachments if the entry doesn't have any attachments. --- lisp/org-attach.el | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lisp/org-attach.el b/lisp/org-attach.el index 192815f4f..53389f782 100644 --- a/lisp/org-attach.el +++ b/lisp/org-attach.el @@ -574,10 +574,8 @@ (defun org-attach-archive-delete-maybe () "Maybe delete subtree attachments when archiving. This function is called by `org-archive-hook'. The option `org-attach-archive-delete' controls its behavior." - (when (if (eq org-attach-archive-delete 'query) - (yes-or-no-p "Delete all attachments? ") - org-attach-archive-delete) - (org-attach-delete-all t))) + (when org-attach-archive-delete + (org-attach-delete-all (not (eq org-attach-archive-delete 'query))))) ;; Attach from dired. -- 2.18.0