Publicación de un centón con Org
Publicación digital de un centón
Si desea publicar un centón de notas de tipo Org, LaTeX, R, o de Emacs-lisp, considere el ecosistema de org-publish de Emacs. Aquí se presenta un magnífico tutorial, y sobre todo, proporciona un sistema que funciona correctamente y altamente configurable.
Duplicación del sistema
How to blog with Emacs Org mode dispone de un sistema de archivos y directorios sencillos y legibles. En primer lugar, copiamos su estructura y ficheros a nuestro disco duro.
git clone https://gitlab.com/psachin/psachin.gitlab.io -b blog_template --single-branch myblog
Una vez clonado, basta con compilar el Makefile
que aparece en el directorio principal.
make -k clean # Clean all the published posts make -k # Publish
Los documentos de la carpeta /posts/
aparecen publicados en el directorio /public/
.
Modificaciones de publish.el
Las principales adaptaciones o modificaciones se realizan en el fichero publish.el
.
Por ejemplo, yo he eliminado los package-install
, modificado el psachin-date-format
, limpiado el psachin-website-html-preamble
, adaptado el psachin-website-html-postamble
, etc.
La publicación de las entradas gira en torno a org-publish-project-alist
. En mi caso, he añadido un subdirectorio dentro de /posts/
para almacenar los gráficos y material diverso, y he creado un directorio draftposts
. Cuando se compila, publica todo en draftpublic
. Así puedo visualizar el resultado final antes de moverlo a posts
.
├── css ├── draftposts │ └── graphics -> /home/emilio/Documentos/emacs/org/centon/posts/graphics ├── draftpublic │ ├── css -> /home/emilio/Documentos/emacs/org/centon/css │ └── graphics -> /home/emilio/Documentos/emacs/org/centon/posts/graphics ├── images │ ├── about │ └── posts │ └── template ├── org-templates ├── posts │ └── graphics └── public ├── css └── graphics
("draftposts" :base-directory "./draftposts" :base-extension "org" :exclude ,(regexp-opt '("README.org")) :index-filename "index.org" :recursive t :publishing-function org-html-publish-to-html :publishing-directory "./draftpublic" :auto-sitemap t :sitemap-filename "index.org" :sitemap-title "DRAFT El centón de un enano" :sitemap-format-entry psachin/org-sitemap-format-entry :sitemap-style list :sitemap-sort-files anti-chronologically :html-link-home "index.html" :html-link-up "index.html" :html-head-include-scripts t :html-head-include-default-style nil :html-head ,psachin-website-html-head :html-preamble psachin-website-html-preamble ;; :html-postamble ,psachin-website-html-postamble) :html-postamble etm-org-blog-postamble) ("graphics" :base-directory "./posts/graphics" :base-extension ,site-attachments :publishing-directory "./public/graphics" :publishing-function org-publish-attachment :recursive t)
Puede disponer aquí de una versión de publish.el
y el del Makefile.