[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[O] [PATCH v3 03/11] org-taskjuggler.el: Make use of org properties
From: |
Yann Hodique |
Subject: |
[O] [PATCH v3 03/11] org-taskjuggler.el: Make use of org properties |
Date: |
Thu, 16 Aug 2012 21:02:01 +0200 |
* org-taskjuggler.el (org-taskjuggler-date): Introduce new function to
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
- Re: [O] [PATCH 00/10] Takjuggler exporter improvements, (continued)
- Re: [O] [PATCH 00/10] Takjuggler exporter improvements, Christian Egli, 2012/08/10
- [O] [PATCH v2 00/11] Takjuggler exporter improvements, Yann Hodique, 2012/08/15
- [O] [PATCH v3 00/11] Taskjuggler exporter improvements, Yann Hodique, 2012/08/16
- [O] [PATCH v3 01/11] org-taskjuggler.el: Make task and resource properties customizable, Yann Hodique, 2012/08/16
- [O] [PATCH v3 03/11] org-taskjuggler.el: Make use of org properties,
Yann Hodique <=
- [O] [PATCH v3 02/11] org-taskjuggler.el: Properly install local variables at export time, Yann Hodique, 2012/08/16
- [O] [PATCH v3 05/11] org-taskjuggler.el: Introduce a global header, for early macros, Yann Hodique, 2012/08/16
- [O] [PATCH v3 06/11] org-taskjuggler.el: Use project end date, if specified, Yann Hodique, 2012/08/16
- [O] [PATCH v3 04/11] org-taskjuggler.el: Fix milestone definition, Yann Hodique, 2012/08/16
- [O] [PATCH v3 07/11] org-taskjuggler.el: Make project umbrella task optional, Yann Hodique, 2012/08/16
- [O] [PATCH v3 08/11] org-taskjuggler.el: Disambiguate "headline", as it's a valid attribute, Yann Hodique, 2012/08/16
- [O] [PATCH v3 09/11] org-taskjuggler.el: Allow reports definition from within the org file, Yann Hodique, 2012/08/16
- [O] [PATCH v3 10/11] org-taskjuggler.el: Update doc to reflect latest changes, Yann Hodique, 2012/08/16
- [O] [PATCH v3 11/11] org-taskjuggler.el: Make taskjuggler compatible with org-publish, Yann Hodique, 2012/08/16
- Re: [O] [PATCH v3 00/11] Taskjuggler exporter improvements, Bastien, 2012/08/26