From 4e638796f39918ade4c8717569315d8b4ca61818 Mon Sep 17 00:00:00 2001 From: "U-IHM-NOTEBOOK\\Olli" Date: Mon, 1 May 2017 16:59:10 +0200 Subject: [PATCH 1/1] Export checkboxes; fix timestamps in headlines --- contrib/lisp/ox-confluence.el | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/contrib/lisp/ox-confluence.el b/contrib/lisp/ox-confluence.el index c70fe853b..8ee22f5b7 100644 --- a/contrib/lisp/ox-confluence.el +++ b/contrib/lisp/ox-confluence.el @@ -83,16 +83,19 @@ (format "_%s_" contents)) (defun org-confluence-item (item contents info) - (let* ((plain-list (org-export-get-parent item)) - (type (org-element-property :type plain-list)) - (bullet (if (eq type 'ordered) ?\# ?\-))) - (concat (make-string (1+ (org-confluence--li-depth item)) bullet) - " " - (if (eq type 'descriptive) - (concat "*" - (org-export-data (org-element-property :tag item) info) - "* - ")) - (org-trim contents)))) + (let ((list-type (org-element-property :type (org-export-get-parent item)))) + + (concat + (make-string (1+ (org-confluence--li-depth item)) + (if (eq list-type 'ordered) ?\# ?\-)) + " " + (cl-case (org-element-property :checkbox item) + ('on "*{{(X)}}* ") + ('off "*{{( )}}* ") + ('trans "*{{(\\-)}}* ")) + (when (eq list-type 'descriptive) + (concat "*" (org-export-data (org-element-property :tag item) info) "* - ")) + (org-trim contents)))) (defun org-confluence-fixed-width (fixed-width contents info) (org-confluence--block @@ -117,7 +120,7 @@ (string= todo "")) "" (format "*{{%s}}* " todo)))) - ;; Else: Standard headline. + (format "h%s. %s%s\n%s" level todo-text text (if (org-string-nw-p contents) contents "")))) @@ -181,7 +184,7 @@ a communication channel." (defun org-confluence-timestamp (timestamp _contents _info) "Transcode a TIMESTAMP object from Org to Confluence. CONTENTS and INFO are ignored." - (let ((translated (org-timestamp-translate timestamp))) + (let ((translated (org-trim (org-timestamp-translate timestamp)))) (if (string-prefix-p "[" translated) (concat "(" (substring translated 1 -1) ")") translated))) @@ -208,7 +211,7 @@ CONTENTS and INFO are ignored." (or (eq tag 'item) ; list items interleave with plain-list (eq tag 'plain-list))) (when (eq tag 'item) - (incf depth)) + (cl-incf depth)) (setq item (org-export-get-parent item))) depth)) -- 2.12.2