Crea tu Blog con Emacs y ox-hugo

2019-09-23

Índice

  1. Instalación ox-hugo
  2. Configuración Global
  3. Configuración del artículo
  4. Exportar artículos
  5. Recursos

Si tienes un blog con Hugo puedes usar Emacs y org-mode junto a ox-hugo para crear contenido de una forma sencilla. El paquete ox-hugo se encargará de exportar a ficheros markdown compatibles con Hugo nuestros ficheros org

Puedes organizar el blog guardando todos los artículos en un único fichero .org, como mi blog.

img

O puedes ir creando un fichero org por cada articulo

img

Instalación ox-hugo

ox-hugo requiere de una versión de Emacs igual o superior a la 24.4+ y Org 9.0 o superior

  • Instalación desde el gestor de paquetes:

    M-x package-install RET ox-hugo RET

  • Desde el fichero .emacs:

    (with-eval-after-load ‘ox__ (require ‘ox-hugo))

  • Si utilizas use-package

    (use-package ox-hugo :ensure t ;Auto-instala el paquete desde Melpa (opcional) :after ox)

Configuración Global

Antes de poder exportar nuestros ficheros debemos de realizar una pequeña configuración en nuestro fichero org, en mi caso, he realizado la siguiente configuración que afecta a todos los artículos que se escriban en el fichero

#+hugo_section: post

Directorio raíz del blog.

#+hugo_base_dir: /home/carlos/Documentos/proyectos/elblogdelazaro.gitlab.io

Añado el valor lastmod en el fichero que se exporta a markdown con la fecha de la última modificación

#+hugo_auto_set_lastmod: t

Dado que el tema que utilizo para Hugo permite configurar el autor/autores de las publicaciones, no lo exporto

#+options: author:nil

Secuencia de los estados por lo que pueden pasar los artículos

#+seq_todo: TODO BORRADOR TERMINADA PUBLICADA

Con estos sencillos pasos ya tengo configurado mi fichero org para trabajar con Hugo

Configuración del artículo

Por cada artículos que escribo le indico el nombre y la fecha de publicación, si es una fecha en el futuro, ox-hugo seteara la variable draft a valor true en el fichero exportado, lo que hace que Hugo no lo muestre.

Creo que las opciones se explican por si solas.

:PROPERTIES:
:EXPORT_FILE_NAME: 2019-10-14-rea-tu-blog-con-hugo-y-gitlab-pages
:EXPORT_DATE: 2019-10-14
:END:

Exportar artículos

El proceso es muy sencillo, con la combinacion Cc-Ce accedemos al menú de exportación de org-mode

img

Con HH, exportamos la rama en la estamos situados y si pulsamos HA exportará todo el árbol.

Recursos

Si quieres aprender o profundizar mas sobre ox-hugo u org-mode te dejo estos enlaces por si te sirven de ayuda

Espero que te haya gustado, pasa un buen día. 🐧


Ingrese la dirección de su instancia