diff options
author | Tom Willemse | 2023-12-07 22:21:50 -0800 |
---|---|---|
committer | Tom Willemse | 2023-12-07 22:21:50 -0800 |
commit | cf761c40a52d07500ed0b9d0307d5e01e29f553d (patch) | |
tree | 03dc6f6d6501901268810eb89092bcdd4681699b /tekuti.el | |
parent | 8bd0ba25e46f0398c30b2e84c26dc7913c52b35f (diff) | |
download | tekuti-el-cf761c40a52d07500ed0b9d0307d5e01e29f553d.tar.gz tekuti-el-cf761c40a52d07500ed0b9d0307d5e01e29f553d.zip |
Extract data parsing into separate function
Diffstat (limited to 'tekuti.el')
-rw-r--r-- | tekuti.el | 21 |
1 files changed, 12 insertions, 9 deletions
@@ -56,6 +56,17 @@ with a ‘/’.") (date-to-time date)) t)) +(defun tekuti--parse-data-keyword (pair) + "Ensure that both the key and value in PAIR match what tekuti needs." + (pcase pair + (`("DATE" ,date) + (list "DATE" (tekuti--format-date date))) + (`("COMMENTS_DATE" ,date) + (list "COMMENTS-CLOSED-DATE" + (and (not (string-empty-p date)) + (tekuti--format-date date)))) + (_ pair))) + (defun tekuti-build-data-from-org () "Parse the current org buffer to collect the necessary metadata." (let ((defaults `(("TITLE") @@ -67,15 +78,7 @@ with a ‘/’.") ("BODY"))) (data (append (mapcar - (lambda (pair) - (pcase pair - (`("DATE" ,date) - (list "DATE" (tekuti--format-date date))) - (`("COMMENTS_DATE" ,date) - (list "COMMENTS-CLOSED-DATE" - (and (not (string-empty-p date)) - (tekuti--format-date date)))) - (_ pair))) + #'tekuti--parse-data-keyword (org-collect-keywords '("TITLE" "TAGS" "STATUS" "COMMENT_STATUS" "DATE" "COMMENTS_DATE"))) (list (list "BODY" |