diff options
| -rw-r--r-- | haunt.scm | 18 |
1 files changed, 17 insertions, 1 deletions
@@ -24,10 +24,12 @@ (haunt reader) (haunt site) (haunt utils) + (sxml simple) (sxml match) (sxml transform) (srfi srfi-1) (srfi srfi-19) + (srfi srfi-26) (ice-9 rdelim) (ice-9 regex) (ice-9 match) @@ -172,6 +174,20 @@ free culture works available under the " ,%cc-by-sa-link " license.") "projects.html" `((h1 "Projects")))) +(define (read-html-post-prime port) + (values (read-metadata-headers port) + (let loop ((ret '())) + (catch 'parser-error + (lambda () + (match (xml->sxml port) + (('*TOP* sxml) (loop (cons sxml ret))))) + (lambda (key . parameters) + (reverse ret)))))) + +(define html-reader-prime + (make-reader (make-file-extension-matcher "html") + (cut call-with-input-file <> read-html-post-prime))) + (define %collections `(("Recent Posts" "index.html" ,posts/reverse-chronological))) @@ -183,7 +199,7 @@ free culture works available under the " ,%cc-by-sa-link " license.") #:default-metadata '((author . "Jakob L. Kreuze") (email . "zerodaysfordays@sdf.lonestar.org")) - #:readers (list html-reader) + #:readers (list html-reader-prime) #:builders (list (blog #:theme jakob-theme #:collections %collections) (atom-feed) (atom-feeds-by-tag) |