emacs-orgmode
[Top][All Lists]
Advanced

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

[O] [PATCH v2 03/11] org-taskjuggler: make use of org properties


From: Yann Hodique
Subject: [O] [PATCH v2 03/11] org-taskjuggler: make use of org properties
Date: Wed, 15 Aug 2012 21:11:48 +0200

* org-taskjuggler.el (org-taskjuggler-date): new function, produce a
taskjuggler-compatible date
(org-taskjuggler-components): make use of SCHEDULED/DEADLINE properties

infer start and end date from SCHEDULED/DEADLINE information
---
 lisp/org-taskjuggler.el | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/lisp/org-taskjuggler.el b/lisp/org-taskjuggler.el
index 529cda0..93f0cc7 100644
--- a/lisp/org-taskjuggler.el
+++ b/lisp/org-taskjuggler.el
@@ -138,8 +138,6 @@
 ;;   :END:
 ;;
 ;;;; * TODO
-;;   - Use SCHEDULED and DEADLINE information (not just start and end
-;;     properties).
 ;;   - Look at org-file-properties, org-global-properties and
 ;;     org-global-properties-fixed
 ;;   - What about property inheritance and org-property-inherit-p?
@@ -385,6 +383,10 @@ with the TaskJuggler GUI."
   (save-excursion
     (and (org-up-heading-safe) (org-entry-get (point) "ORDERED"))))
 
+(defun org-taskjuggler-date (date)
+  (let ((time (parse-time-string date)))
+    (format "%d-%02d-%02d" (nth 5 time) (nth 4 time) (nth 3 time))))
+
 (defun org-taskjuggler-components ()
   "Return an alist containing all the pertinent information for
 the current node such as the headline, the level, todo state
@@ -396,6 +398,12 @@ information, all the properties, etc."
          (replace-regexp-in-string
           "\"" "\\\"" (nth 4 components) t t)) ; quote double quotes in 
headlines
         (parent-ordered (org-taskjuggler-parent-is-ordered-p)))
+    (let ((scheduled (assoc "SCHEDULED" props))
+         (deadline (assoc "DEADLINE" props)))
+      (when scheduled
+       (push (cons "start" (org-taskjuggler-date (cdr scheduled))) props))
+      (when deadline
+       (push (cons "end" (org-taskjuggler-date (cdr deadline))) props)))
     (push (cons "level" level) props)
     (push (cons "headline" headline) props)
     (push (cons "parent-ordered" parent-ordered) props)))
-- 
1.7.11.4




reply via email to

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