El flujo de trabajo en mi sitio web en Hugo
Acerca del proceso de creación de un post y cómo encaja Kate en este lío
Introducción
Este es el primero de una serie de artículos destinados presentar la manera en que utilizo el editor Kate.
- 🧉 Kate como aplicación de escritura: Introducción
- 📑 Mi flujo de trabajo en Hugo
- ⚙️ Configuración general de Kate para escritura creativa y notas
- 📓 El texto plano y Kate
- 📝 Kate: Snippets
- 🔩 Kate: Scripts
- 🏷️ Kate: Proyectos y sesiones
- ✍🏼 Zettelkasten con Kate
- ✔️ Todo.txt en Kate
- ☁️ Sincronización de artículos de Hugo y notas entre diferentes equipos
Hugo es mejor me gusta más que Wordpress
Hace unos años, cuando comencé a escribir algunos artículos para Colaboratorio.net me encontré con la necesidad de aprender algo que hasta aquel momento era desconocido para mi: Wordpress. Para la persona que comienza a escribir un blog desde 0 nada parece muy fácil ni intuitivo, pero es cierto que Wordpress es bastante más comprensible a primera vista y puede resultar ‘mejor’ para comenzar.
Cuando decidí crear un sitio un poco mas a mi medida, me di cuenta de que tenía que escoger entre si continuaba con Wordpress o por el contrario, emprendía la aventura hacia el “texto plano” con un generador de sitios estáticos.
- Funciona en cualquier servidor, su portabilidad es sencilla y no es necesario requerimientos técnicos avanzados.
- El tiempo de carga es mínimo ya que evita lenguajes de programación del lado del servidor y de bases de datos
- Mayor seguridad y rendimiento, ya que el sitio web cuenta solo con archivos HTML, CSS y JavaScript.
- Facilita el posicionamiento SEO al tener un mayor rendimiento.
- Coste de desarrollo, alojamiento y mantenimiento más económico.
Creo que la decisión de orientarme hacia el texto plano y un sitio estático fue la correcta. Sin embargo, el proceso para crear una nueva publicación puede ser un poco engorroso si no has descubierto cómo simplificarlo.
Desde hace un par de años vengo trabajando en algunos ‘atajos’ y trucos para crear publicaciones y que iré compartiendo en este y próximos artículos.
No pierdas tiempo
Lo siguiente es, a grosso modo, la ruta que solía seguir durante los primeros días de vida de este sitio web para crear una nueva publicación en Hugo:
- Abría Dolphin y navegaba hasta la carpeta
/content/
que contiene los artículos que voy escribiendo. - Copiaba y pegaba una publicación ya existente del sitio en una nueva carpeta.
- Cambiaba el nombre del archivo y lo abría con un editor de texto.
- Una vez abierto, eliminaba casi todo el contenido, dejando solo los nombres de los campos iniciales del ‘frontmatter’ o encabezado YAML.
- Completaba los metadatos de los campos YAML y cuando llegaba al campo de la fecha, como no la sabía, tenía que consultar cual era.
- Finalmente, podía empezar a escribir alguna cosa.
- Comprobaba,
- Generaba el sitio
- Subía los archivos resultantes al servidor.
Mucho tiempo he tenido que pasar leyendo artículos de Lorenzo de atareao.es para darme cuenta que debía trabajar mejor y no mas duro (Work better, not harder).
Los editores de texto y sus herramientas
Que tonto me sentí cuando descubrí que desde hace décadas existen editores de texto con miles de funciones, atajos y trucos que permiten evitar el ’trabajo repetitivo’ todo el tiempo.
Estos editores, como ser VisualStudio Code, Vim, Emacs y un largo etcétera, tal vez mas orientados a la programación pero que cumplen de manera sobresaliente cuando de trabajar con texto se habla.
Después de utilizar varios de estos programas, finalmente terminé utilizando un poco más Kate que el resto. Las razones para esto son variadas: es liviano, configurable, potente y tiene todo lo que necesito para ‘bloguear’ y tomar notas. Tal vez estas mismas razones se pueden aplicar a cualquier otro editor, pero agregro que: 1. me encanta KDE y 2. Kate es parte de KDE, viene por defecto en muchas distribuciones y cubre las necesidades que necesito para escribir.
Si bien sus opciones por defecto lo hacen un editor bastante generalista, su poder de configuración permite ampliar tremendamente su funcionalidad (ya hablaré de esto en futuros artículos).
Pero sigamos con lo del blog… Y es que en Hugo reina el texto plano, así que si en vez de Kate te parece mejor Neovim, Emacs o cualquier otro: ¡Se pueden utilizar de igual manera o cambiar de editor cuando quieras!
Proyectos y sesiones en el editor de texto
Un editor de texto que permita manejar sesiones y proyectos es especialmente útil para casos en los que gestionamos más de un sitio web o, además del sitio, gestionamos un sistema de notas personales, por ejemplo.
Particularmente útil puede resultar si decidimos alojar el sitio en Github o Gitlab, donde la capacidad de gestión de proyectos Git es casi obligatoria y Kate tiene plugins específicos para esto.
Snippets y Scripts
Los snippets son bloques de texto que se reutilizan una y otra vez. Si prestas atención, al final de cada artículo en este sitio existen bloques de texto que no cambian o lo hacen mínimamente. Mediante un ‘atajo’ se puede insertar estos bloques de texto y acelerar mucho el proceso de creación de un artículo.
Además de los snippets, muchos editores permiten ejecutar scripts que facilitan, por ejemplo, la creación de artículos y ejecución de un servidor local para chequear los cambios en un navegador. De esta misma manera es como con un script, genero casi todos los metadatos del ‘frontmatter’ de los artículos publicados.
En un futuro hablaré más en detalle de los snippets y scripts que utilizo en Kate. Los scripts comentados aquí y muchos otros serán publicados en próximos artículos destinado especialmente a esto, de lo contrario el artículo se tornaría interminable.
Expansores de texto
Los expansores permiten agregar fragmentos de texto mientras se escribe. Al ingresar una determinada abreviatura el expansor de texto completa el fragmento. Suelen pueden expandir cadenas de texto, direcciones de correo electrónico, firmas, códigos, imágenes, cartas modelo, estilos, enlaces, etc.
Uno de los más conocidos es Espanso, que es software libre, multiplataforma y altamente configurable.
Son una ventaja cuando los utilizamos en diferentes aplicaciones (navegador, cliente de correo, editor de texto, etc).
Al utilizar una aplicación externa al editor de texto pueden utilizarse en múltiples aplicaciones y acelerar mucho el proceso de escritura.
En mi caso particular no utilizo un expansor de texto, sino un atajo de teclado para los Snippets que ya tengo preconfigurados en Kate. Por contra, los snippets son solo utilizables en Kate (o el editor que sea) y no pueden ser invocados desde otra aplicación. En fin, son elecciones según las necesidades personales y tampoco resultan excluyentes entre ellas.
Actualizar el blog
Los sitios web estáticos necesitan ser generados localmente y subidos luego a un servidor remoto. Para esto se pueden utilizar aplicaciones como Filezilla. Sin embargo, yo prefiero ejecutar un pequeño script en bash que utiliza Rsync para subir los archivos al servidor. Este script se ejecuta fácilmente desde Kate como una ‘herramienta externa’, por lo que el proceso de actualización del sitio web es muy simple.
Palabras finales
Este fue un breve repaso de como es gestiono un sitio web en Hugo. Si tengo que resumirlo en una frase esta sería: “Intentar automatizar tanto como sea posible”.
Espero que te anime a dar pasos en este increíble mundo y a tener tu propio sitio web.
¡Saludos!
Referencias
MoonBooth - How to speed up your Hugo blog post creation workflow
Dominik Rys - Tips for Developing a Static Site Using Hugo
Imagen de Miguel Á. Padriñán de Pixabay.