]> git.jsancho.org Git - blog.git/commitdiff
Better post summaries
authorJavier Sancho <jsf@jsancho.org>
Sat, 28 Jan 2017 18:44:00 +0000 (19:44 +0100)
committerJavier Sancho <jsf@jsancho.org>
Sat, 28 Jan 2017 18:44:00 +0000 (19:44 +0100)
haunt.scm

index 3346228c0c3a74e402ffcfccb6557b6df0b810ef..07b2a794a73f0c11131ac4c4ac3dbe04e0c68c00 100644 (file)
--- a/haunt.scm
+++ b/haunt.scm
            (define (post-uri post)
              (string-append "/" (or prefix "")
                             (site-post-slug site post) ".html"))
            (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)
            (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
            `(
             ,@(map (lambda (post)
                      `(article