(use-modules (haunt asset) (haunt builder blog) (haunt builder atom) (haunt builder assets) (haunt reader) (haunt reader texinfo) (haunt site) (haunt post) (srfi srfi-1)) (define (stylesheet name) `(link (@ (rel "stylesheet") (href ,(string-append "/css/" name ".css"))))) (define flex-theme (theme #:name "Flex" #:layout (lambda (site title body) `((doctype "html") (head (meta (@ (charset "utf-8"))) (title ,(string-append title " - " (site-title site))) (link (@ (rel "stylesheet") (href "//fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,700,400italic"))) ,(stylesheet "style.min") ,(stylesheet "monokai.min") ,(stylesheet "font-awesome.min") ,(stylesheet "custom")) (body ,(let ((metadata (site-default-metadata site))) `(aside (div (a (@ (href "/")) (img (@ (src ,(assoc-ref metadata 'picture))))) (h1 (a (@ (href "/")) ,(assoc-ref metadata 'author))) (p ,(assoc-ref metadata 'description)) (nav (ul (@ (class "list")) ,@(map (lambda (page) `(li (a (@ (href ,(cdr page))) ,(car page)))) (assoc-ref metadata 'pages)))) (ul (@ (class "social")) (li (a (@ (class "sc-linkedin") (target "_blank") (href "")) (i (@ (class "fa fa-linkedin"))))) " " (li (a (@ (class "sc-github") (target "_blank") (href "")) (i (@ (class "fa fa-github"))))) " " (li (a (@ (class "sc-twitter") (target "_blank") (href "")) (i (@ (class "fa fa-twitter"))))) " " (li (a (@ (class "sc-rss") (target "_blank") (href "/feed.xml")) (i (@ (class "fa fa-rss"))))))))) (main ,body)))) #:post-template (lambda (post) `((article (@ (class "single")) (header (h1 ,(post-ref post 'title)) (p ,(date->string* (post-date post)))) ,(post-sxml post) (div (@ (class "tag-cloud")) (p (a (@ (href "")) "prueba")))))) #:collection-template (lambda (site title posts prefix) (define (post-uri post) (string-append "/" (or prefix "") (site-post-slug site post) ".html")) (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))))))) `( ,@(map (lambda (post) `(article (header (h2 (a (@ (href ,(post-uri post))) ,(post-ref post 'title))) (p ,(date->string* (post-date post)))) (div ,(post-summary post) (br) (a (@ (class "btn") (href ,(post-uri post))) " Seguir leyendo ")) (hr))) (posts/reverse-chronological posts)))))) (define %collections `(("Home" "index.html" ,posts/reverse-chronological))) (site #:title "Javier Sancho" #:domain "jsancho.org" #:default-metadata '((author . "Javier Sancho") (description . "Free Software Evangelist - Programmer") (email . "jsf@jsancho.org") (picture . "/images/jsancho2.jpg") (pages . (("sobre mi" . "about.html") ("proyectos" . "http://git.jsancho.org/")))) #:readers (list sxml-reader html-reader) #:builders (list (blog #:theme flex-theme #:collections %collections) (atom-feed) (atom-feeds-by-tag) (static-directory "images") (static-directory "fonts") (static-directory "css")))