emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [Orgmode] [PATCH 2/3] Provide customization variable `org-clone-dele


From: Carsten Dominik
Subject: Re: [Orgmode] [PATCH 2/3] Provide customization variable `org-clone-delete-id'.
Date: Wed, 19 May 2010 23:35:20 +0200

Hi David, do you have these patches on a branch?

Thanks!

- Carsten

On May 19, 2010, at 8:53 PM, David Maus wrote:

When non-nil, clones of a subtree don't inherit the ID property.
Otherwise they do and it will be set to a new unique identifier.
---
lisp/ChangeLog |    3 +++
lisp/org.el    |   16 ++++++++++++++--
2 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index ec2fa36..ba65761 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -4,6 +4,9 @@
        when cache was cleared.
        (org-clone-subtree-with-time-shift): Maybe create ID property
        in cloned subtrees.
+       (org-clone-delete-id): New customization variable.
+       (org-clone-subtree-with-time-shift): Use customization
+       variable `org-clone-delete-id'.

2010-05-17  Carsten Dominik  <address@hidden>

diff --git a/lisp/org.el b/lisp/org.el
index 64da60a..88d636d 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -105,6 +105,13 @@
(require 'org-footnote)

;;;; Customization variables
+(defcustom org-clone-delete-id nil
+  "Remove ID property of clones of a subtree.
+When non-nil, clones of a subtree don't inherit the ID property.
+Otherwise they inherit the ID property with a new unique
+identifier."
+  :type 'boolean
+  :group 'org-id)

;;; Version

@@ -7204,13 +7211,18 @@ and still retain the repeater to cover future instances of the task."
                           (with-temp-buffer
                             (insert template)
                             (org-mode)
-                            (org-id-get-create t)
+                            (goto-char (point-min))
+                            (if org-clone-delete-id
+                                (org-entry-delete nil "ID")
+                              (org-id-get-create t))
                             (buffer-string))))
            (with-temp-buffer
              (insert template)
              (org-mode)
              (goto-char (point-min))
-             (if idprop (org-id-get-create t))
+             (and idprop (if org-clone-delete-id
+                             (org-entry-delete nil "ID")
+                           (org-id-get-create t)))
              (while (re-search-forward org-ts-regexp-both nil t)
                (org-timestamp-change (* n shift-n) shift-what))
              (unless (= n n-no-remove)
--
1.7.1


_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

- Carsten






reply via email to

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