aboutsummaryrefslogtreecommitdiff
path: root/module/vcomponent/formats/xcal/parse.scm
diff options
context:
space:
mode:
Diffstat (limited to 'module/vcomponent/formats/xcal/parse.scm')
-rw-r--r--module/vcomponent/formats/xcal/parse.scm27
1 files changed, 15 insertions, 12 deletions
diff --git a/module/vcomponent/formats/xcal/parse.scm b/module/vcomponent/formats/xcal/parse.scm
index d0bc7bf2..c696edc1 100644
--- a/module/vcomponent/formats/xcal/parse.scm
+++ b/module/vcomponent/formats/xcal/parse.scm
@@ -16,6 +16,7 @@
:use-module (srfi srfi-88)
:use-module (calp translation)
:use-module (hnh util table)
+ :use-module (hnh util type)
:export (sxcal->vcomponent)
)
@@ -210,17 +211,17 @@
;; TODO multi valued data
(define raw-value (cdr typetag))
(define vline*
- (vline type: tag*
- value: (handle-tag
- xml-tag
- (let ((v (handle-value type parameters raw-value)))
- ;; TODO possibly more list fields
- ;; (if (eq? tag 'categories)
- ;; (string-split v #\,)
- ;; v)
-
- v))
- parameters: parameters))
+ (vline key: tag*
+ vline-value: (handle-tag
+ xml-tag
+ (let ((v (handle-value type parameters raw-value)))
+ ;; TODO possibly more list fields
+ ;; (if (eq? tag 'categories)
+ ;; (string-split v #\,)
+ ;; v)
+
+ v))
+ vline-parameters: parameters))
(if (memv tag* '(ATTACH ATTENDEE CATEGORIES
COMMENT CONTACT EXDATE
REQUEST-STATUS RELATED-TO
@@ -255,8 +256,10 @@
;; would be expanded into
;; KEY;p=1:a
;; KEY;p=1:b
+ ;; TODO this crashes
(fold swap handle-single-property
- (vcomponent type: type) (cdr it))
+ (vcomponent type: type)
+ (cdr it))
(vcomponent type: type))))
;; children