]> git.jsancho.org Git - blog.git/blobdiff - haunt.scm
Merge branch 'master' into spanish
[blog.git] / haunt.scm
index 9890d01d69c0c0b775d45a4194a416f76ba5771c..6cdaae9d7e2223eb440afad2613d3419700f7393 100644 (file)
--- a/haunt.scm
+++ b/haunt.scm
@@ -2,15 +2,24 @@
              (haunt builder blog)
              (haunt builder atom)
              (haunt builder assets)
+            (haunt html)
+            (haunt page)
              (haunt reader)
              (haunt reader texinfo)
              (haunt site)
              (haunt post)
-             (srfi srfi-1))
+             (srfi srfi-1)
+             (srfi srfi-19))
 
 (define (stylesheet name)
   `(link (@ (rel "stylesheet")
-            (href ,(string-append "/css/" name ".css")))))
+            (href ,(string-append "css/" name ".css")))))
+
+(define (static-page title file-name body)
+  (lambda (site posts)
+    (make-page file-name
+              (with-layout flex-theme site title body)
+              sxml->html)))
 
 (define flex-theme
   (theme #:name "Flex"
@@ -31,8 +40,8 @@
                ,(let ((metadata (site-default-metadata site)))
                   `(aside
                     (div
-                     (a (@ (href "/")) (img (@ (src ,(assoc-ref metadata 'picture)))))
-                     (h1 (a (@ (href "/")) ,(assoc-ref metadata 'author)))
+                     (a (@ (href "index.html")) (img (@ (src ,(assoc-ref metadata 'picture)))))
+                     (h1 (a (@ (href "index.html")) ,(assoc-ref metadata 'author)))
                      (p ,(assoc-ref metadata 'description))
                      (nav
                       (ul (@ (class "list"))
                                    `(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-bitbucket") (target "_blank") (href "https://bitbucket.org/jsancho_gpl/")) (i (@ (class "fa fa-bitbucket")))))
                          " "
-                         (li (a (@ (class "sc-github") (target "_blank") (href "")) (i (@ (class "fa fa-github")))))
+                         (li (a (@ (class "sc-github") (target "_blank") (href "https://github.com/jsancho-gpl")) (i (@ (class "fa fa-github")))))
                          " "
-                         (li (a (@ (class "sc-twitter") (target "_blank") (href "")) (i (@ (class "fa fa-twitter")))))
+                         (li (a (@ (class "sc-twitter") (target "_blank") (href "https://twitter.com/jsancho_gpl")) (i (@ (class "fa fa-twitter")))))
                          " "
-                         (li (a (@ (class "sc-rss") (target "_blank") (href "/feed.xml")) (i (@ (class "fa fa-rss")))))))))
+                         (li (a (@ (class "sc-rss") (target "_blank") (href "feed.xml")) (i (@ (class "fa fa-rss")))))))))
                (main ,body)))))
 
         #:post-template
@@ -57,7 +66,7 @@
           `((article (@ (class "single"))
                      (header
                       (h1 ,(post-ref post 'title))
-                      (p ,(date->string* (post-date post))))
+                      (p "Publicado el " ,(date->string (post-date post) "~d/~m/~Y")))
                      ,(post-sxml post)
                      (div (@ (class "tag-cloud"))
                           (p
@@ -68,7 +77,7 @@
          #:collection-template
          (lambda (site title posts prefix)
            (define (post-uri post)
-             (string-append "/" (or prefix "")
+             (string-append (or prefix "")
                             (site-post-slug site post) ".html"))
 
           (define (get-paragraphs sxml count)
                         (h2
                          (a (@ (href ,(post-uri post)))
                             ,(post-ref post 'title)))
-                        (p ,(date->string* (post-date post))))
+                        (p "Publicado el " ,(date->string (post-date post) "~d/~m/~Y")))
                        (div ,(post-summary post)
                             (br)
                             (a (@ (class "btn") (href ,(post-uri post))) " Seguir leyendo "))
                        (hr)))
                    (posts/reverse-chronological posts))))))
 
+(define about-page
+  (static-page
+   "Sobre mi"
+   "about.html"
+   `((div
+      (article
+       (header (h2 "Sobre mi"))
+       (p "Conocí GNU/Linux y el software libre durante mis estudios universitarios en la " (a (@ (href "http://www.uji.es/")) "Universitat Jaume I") " y desde entonces mi compromiso con esas ideas ha ido en aumento.")
+       (p "Fue en 2003 cuando empecé como activista, participando en eventos relacionados con el software libre, manifestaciones en contra de las patentes de software, charlas y jornadas informativas en parties, institutos, etc.")
+       (p "Disfruto programando y lo hago con el lenguaje que más se ajuste a mis necesidades (Python, PHP, Golang, Erlang, ...). Durante muchos años mi lenguaje favorito fue C, aunque con el tiempo ese lugar privilegiado han pasado a ocuparlo Lisp y Scheme a partes iguales. Soy un enamorado del paradigma funcional.")
+       (p "Estoy casado con una mujer maravillosa y tengo un hijo que no deja de sorprenderme cada día. Son mi mayor alegría."))))))
+
 (define %collections
   `(("Home" "index.html" ,posts/reverse-chronological)))
 
 (site #:title "Javier Sancho"
       #:domain "jsancho.org"
+      #:build-directory "site-spanish"
       #:default-metadata
       '((author . "Javier Sancho")
-        (description . "Free Software Evangelist - Programmer")
+        (description . "Evangelizador del software libre - Programador")
         (email . "jsf@jsancho.org")
-        (picture . "/images/jsancho.jpg")
-        (pages . (("about" . "about.html")
-                  ("projects" . "http://git.jsancho.org/"))))
+        (picture . "images/jsancho.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)
+                      about-page
                        (static-directory "images")
                        (static-directory "fonts")
                        (static-directory "css")))