(define-module (skribe-utils) #:use-module (ice-9 match) #:use-module (syntax-highlight) #:use-module (syntax-highlight scheme) #:use-module (syntax-highlight xml) #:use-module (syntax-highlight c) #:export (image/caption scheme-source xml-source c-source)) (define (image/caption uri caption) `((img (@ (class "centered rounded") (src ,uri) (alt ,caption))) (div (@ (class "caption")) ,caption))) (define (scheme-source source) (highlights->sxml (highlight lex-scheme (match source ((source ...) (string-concatenate source)) (_ source))))) (define (xml-source source) (highlights->sxml (highlight lex-xml (match source ((source ...) (string-concatenate source)) (_ source))))) (define (c-source source) (highlights->sxml (highlight lex-c (match source ((source ...) (string-concatenate source)) (_ source)))))