Extract data parsing into separate function
This commit is contained in:
parent
8bd0ba25e4
commit
cf761c40a5
1 changed files with 12 additions and 9 deletions
21
tekuti.el
21
tekuti.el
|
@ -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"
|
||||
|
|
Loading…
Reference in a new issue