* ox-taskjuggler.el (org-taskjuggler-trim-ids-from-titles): new custom
(org-taskjuggler--build-task): trim task ids from titles, when the new
custom variable asks for this (enabled by default).
---
contrib/lisp/ox-taskjuggler.el | 18 +++++++++++++++---
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a/contrib/lisp/ox-taskjuggler.el b/contrib/lisp/ox-taskjuggler.el
index d49db62..bca3dc1 100644
--- a/contrib/lisp/ox-taskjuggler.el
+++ b/contrib/lisp/ox-taskjuggler.el
@@ -374,6 +374,11 @@ task buckets, while still sharing the same resources pool."
:group 'org-export-taskjuggler
:type 'boolean)
+(defcustom org-taskjuggler-trim-ids-from-titles t
+ "Non-NIL trims the part detected as prefix from resulting task titles."
+ :group 'org-export-taskjuggler
+ :type 'boolean)
+
;;; Hooks
@@ -887,9 +892,16 @@ a unique id will be associated to it."
(- org-lowest-priority
org-highest-priority)))))))))
(concat
;; Opening task.
- (format "task %s \"%s\" {\n"
- (org-taskjuggler-get-id task info)
- (org-taskjuggler-get-name task))
+ (let* ((id (org-taskjuggler-get-id task info))
+ (raw-name (org-taskjuggler-get-name task))
+ (id-len (length id))
+ (raw-name-len (length raw-name))
+ (name (if org-taskjuggler-trim-ids-from-titles
+ (if (= raw-name-len id-len)
+ raw-name
+ (subseq raw-name (1+ id-len)))
+ raw-name)))
+ (format "task %s \"%s\" {\n" id name))
;; Add default attributes.
(and depends
(format " depends %s\n"
--
2.5.0