emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] org-agenda.el: Fix org-agenda-write to avoid duplicates


From: Anand Deopurkar
Subject: [PATCH] org-agenda.el: Fix org-agenda-write to avoid duplicates
Date: Sun, 03 Mar 2024 20:12:52 +1100
User-agent: mu4e 1.12.0; emacs 29.1

>From a269ee1d657ea11f998d294169cd9a88618409fb Mon Sep 17 00:00:00 2001
From: Anand Deopurkar <anandrdeopurkar@gmail.com>
Date: Sun, 3 Mar 2024 16:38:43 +1100
Subject: [PATCH] org-agenda.el: Fix org-agenda-write to avoid duplicates

* lisp/org-agenda.el (org-agenda-write): Make sure headlines are not
duplicated when writing to an `org' file, even if they are repeated in
the agenda view.

For example, a headline may appear multiple times in the agenda
view (for example, if it has multiple time stamps).  But
org-agenda-write should write it only once to the output `org' file.

TINYCHANGE
---
 lisp/org-agenda.el | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/lisp/org-agenda.el b/lisp/org-agenda.el
index 8cb3496ca..798ef1a10 100644
--- a/lisp/org-agenda.el
+++ b/lisp/org-agenda.el
@@ -3641,11 +3641,12 @@ the agenda to write."
                  (goto-char p)
                  (setq m (get-text-property (point) 'org-hd-marker))
                  (when m
-                   (push (with-current-buffer (marker-buffer m)
-                           (goto-char m)
-                           (org-copy-subtree 1 nil t t)
-                           org-subtree-clip)
-                         content)))
+                   (cl-pushnew (with-current-buffer (marker-buffer m)
+                                 (goto-char m)
+                                 (org-copy-subtree 1 nil t t)
+                                 org-subtree-clip)
+                               content
+                                :test #'equal)))
                (find-file file)
                (erase-buffer)
                (dolist (s content) (org-paste-subtree 1 s))
-- 
2.43.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]