diff --git a/gem300.rkt b/gem300.rkt index e5a70dd..724c5f0 100644 --- a/gem300.rkt +++ b/gem300.rkt @@ -144,7 +144,21 @@ ;; join each sublist into one string, and display one string per ;; line (for-each displayln - (map string-join (outer-iter (list) (string-split paragraph))))) + (map string-join (outer-iter (list) (string-split paragraph))))) + +(define (render-gemtext document) + (for-each (λ (line) + (cond [(text? line) + (render-paragraph (text-str line))] + + [(preformatted? line) + (for-each (λ (line) + (displayln line)) + (preformatted-str line))] + + [(link? line) + (printf "[#] ~a\n" (link-str line))])) + document)) (define commands (list