Cómo se genera este sitio: Org mode y Emacs Lisp
Link al script: Script (Licencia en la raíz del repositorio).
En mi computadora (Guix btw) tengo un directorio llamado "website" que contiene todos los archivos de este sitio web. Este tiene la siguiente estructura:
website/ ├── emacs │ ├── index.org │ ├── links.org │ └── posts/ ├── index.html ├── LICENSE ├── links.html ├── posts/ └── styles/ ├── archive.css ├── index.css ├── paleta.css └── posts.css
emacs/ y styles/ contienen todos los archivos que edito activamente. La estructura de emacs/ es un espejo de website/: contiene index, links y posts/, pero
son archivos .org en vez de .html. styles/ simplemente contiene unos archivos .css de los que hablaré más adelante. A través de mi script
exporto emacs/index.org → /index.html, emacs/links.org → /links.html, emacs/posts/x.org → /posts/x.html y genero /posts/archive.html, que
contiene links a todos los posts. Cada uno de estos HTML usa el CSS con su nombre que está bajo /styles/.
¿Por qué?
Todo esto puede parecer sobrediseño. ¿Por qué no solo escribir HTML?
- HTML es como una piedra en el zapato para quien lo escribe. El markup de Org es miles de veces más fácil y cómodo de usar.
- Integración con Emacs: tener mis posts como documentos de Org hace más fácil escribirlos desde Emacs, y la capacidad de usar Lisp y no Bash o Python para automatizar el proceso de publicación es un bonus que se aprecia.
- Un stack libre: todo el software involucrado está licenciado bajo alguna forma de la GNU GPL o de alguna otra forma libre (incluyendo algún script de JavaScript que pueda agregar), un sitio web que respeta mi libertad y la tuya es algo cada vez más raro y más necesario en el Internet moderno.
- Es simplemente divertido. Siempre he escuchado de otra gente lo poderoso que es
org-publishy esta era la excusa perfecta para probarlo.