From 516b2fbb8763788585ac6a9f60ad7d51c4b0aab3 Mon Sep 17 00:00:00 2001 From: Bastien Guerry Date: Sat, 9 Jul 2011 15:04:39 +0200 Subject: [PATCH] org.el: remove CLOCK: and empty drawers from clones. --- lisp/org.el | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lisp/org.el b/lisp/org.el index 0b1434ad4..515a647e8 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -7718,6 +7718,19 @@ and still retain the repeater to cover future instances of the task." (or (bolp) (insert "\n")) (setq end (point)) (setq template (buffer-substring beg end)) + ;; Remove clocks and empty drawers + (with-temp-buffer + (insert template) + (goto-char (point-min)) + (while (re-search-forward + "^[ \t]*CLOCK:.*$" (save-excursion (org-end-of-subtree t t)) t) + (replace-match "") + (kill-whole-line)) + (goto-char (point-min)) + (while (re-search-forward + (concat "^[ \t]*:" (regexp-opt org-drawers) ":[ \t]*$") nil t) + (mapc (lambda(d) (org-remove-empty-drawer-at d (point))) org-drawers)) + (setq template (buffer-substring (point-min) (point-max)))) (when (and doshift (string-match "<[^<>\n]+ \\+[0-9]+[dwmy][^<>\n]*>" template)) (delete-region beg end)