(define (post-uri post)
(string-append "/" (or prefix "")
(site-post-slug site post) ".html"))
+
+ (define (get-paragraphs sxml count)
+ (let ((pars (filter
+ (lambda (e) (and (pair? e) (eq? (car e) 'p)))
+ sxml)))
+ (list-head pars (min count (length pars)))))
+
(define (post-summary post)
(or (post-ref post 'summary)
- (let get-first-par ((sxml (cdr (post-sxml post))))
- (cond ((null? sxml) "")
- ((and (pair? (car sxml))
- (eq? (caar sxml) 'p)) (car sxml))
- (else (get-first-par (cdr sxml)))))))
+ (get-paragraphs (cdr (post-sxml post)) 3)))
+
`(
,@(map (lambda (post)
`(article