Sobre cómo utilizo org-page para hacer este blog

Este artículo va de cómo estoy utilizando org-page para hacer éste blog. Lo haré con pelos y señales, porque me lo ha pedido así Ángel, del blog y podcast uGeek que se está planteando emplear el sistema para sus proyectos. Sobre cómo ponerlo en marcha ya hablé en otra ocasión y no voy a reincidir, aunque haré alguna puntualización.

Hay algunos cambios en la configuración desde que lo inicié. Copio aquí la configuración que tengo en el init.el .

;;; Para el blog en org-mode (require 'org-page) (setq op/repository-directory "~/proyectos/blog-org-page/") (setq op/site-domain "https://notxor.nueva-actitud.org") (setq op/site-main-title "Notxor tiene un blog") (setq op/site-sub-title "Defenestrando la vida") (setq op/theme-root-directory "/home/notxor/proyectos/themes-org-page") ;; Temas propios (setq op/theme (quote notxor)) ;; Ajustes personales del tema (setq op/tag-rss t) ;; Hacer que se creen los feed por etiquetas. (setq op/hashover-comments t) (setq op/personal-github-link "") (setq op/site-preview-directory "~/public_html")

Quiero recordar nada más que todo el blog está en un repositorio git. Es un repositorio particular y privado sobre un servidor propio. No utilizo ni gitlab ni tampoco github ni ningún otro repositorio externo.

El repositorio del blog tiene dos ramas: master y source . Los html que se publican se guardan en la rama master y los ficheros org que son los que escribo están en la rama source .

Flujo de trabajo Escribir un artículo y publicarlo tiene un proceso muy sencillo. El sistema lo describo a continuación. Escribir el artículo Antes de comenzar a escribir me aseguro de que el repositorio git está en la rama source que es la destinada a recoger los textos que escribes en formato org . Si no estamos en la rama adecuada, hay que hacer en una consola situada en el repositorio: git chekout source En un primer momento creé también una rama drafts para guardar los borradores de los artículos según se me iban ocurriendo. Esa rama al final la abandoné. Los borradores son los artículos que aún no he guardado en el repositorio git . Pero para iniciar la escritura de un artículo es muy sencillo, utilizo el siguiente comando de emacs M-x op/new-post Ese comando inicia una serie de preguntas, como la categoría del artículo, en mi caso están la mayoría en la categoría blog aunque tengo otros en la categoría esperanto. Pregunta también un nombre de archivo, unas etiquetas y palabras clave, un título y una URL . Estos datos componen la cabecera del fichero org . Relleno todos los campos lo mejor que sé, tampoco me preocupo mucho, pues esos datos se pueden modificar más tarde. Lo que suelo tener en cuenta es que en la URL no haya caracteres especiales con tildes o eñes. Subirlo al repositorio Para manejar el repositorio utilizo magit desde el mismo emacs, pero empecé utilizando directamente git y la línea de comandos. En ambos casos hacía básicamente lo mismo y puedes utilizar para manejar el repositorio la herramienta con la que mejor te entiendas: Comprobar el estado del repositorio con status . Añadir los cambios con add o con stage . Meterlos en el repositorio local con commit . Sincronizar el repositorio remoto con push . Bien, ya tenemos la información subida al repositorio local. Esto es importante porque el sistema sólo genera las páginas de lo que esté subido e ignora los demás ficheros. Publicar en local los cambios realizados Antes de subirlo donde lo pueda ver la gente, primero lo publico en local. Es decir, en mi ordenador monto un equivalente al sitio web para comprobar que está todos bien, que funcionan todo, que las imágenes, o vídeos o sonido, enlazan correctamente. Para hacer la publicación se utiliza el comando M-x op/do-publication Nos preguntará si publica todos los archivos org y si lo hace en un directorio local. Yo lo hago sobre el ~/public_html . Allí, en el directorio que indiquemos, colocará todos los archivos como se verán en la web. Si queremos consultarla como si lo hiciéramos en una remota, hay que montar un servidor. Podemos utilizar el de emacs o cualquier otro. Yo utilizo el que proporciona Python, por tanto utilizo los siguientes comandos desde una consola: cd ~/public_html python3 -m http.server 8080 Para comprobar que todo funciona abro los navegadores; normalmente lo compruebo con tanto con firefox como con iridium. Iridium es un navegador basado en chromium que no se chiva de nuestras cosas a Google. Una vez que creo que todo está correcto, llega el momento de subir las páginas al sitio de Internet y actualizar la rama master del repositorio. Guardar las páginas generadas Si todo está correcto, primero meto los cambios en el repositorio. Pero hay que recordar cambiar la rama sobre la que trabajamos: git checkout master y copio los ficheros desde ~/public_html al directorio de trabajo ~/proyectos/blog-org-page . Se puede utilizar la herramienta rsync pero últimamente me he acostumbrado a utilizar el gestor de archivos mc , porque es la herramienta que utilizo también para subir los ficheros al sitio de Internet. Una vez tengo los ficheros en el directorio del repositorio local, toca actualizar el repositorio git con los mismos pasos que hemos visto al trabajar con la rama source . El único cambio es que lo haremos sobre la rama master . Subir los cambios a Internet Igual que he hecho para guardar el sitio generado por el sistema en mi repositorio, paso los ficheros que lo componen por ftp al sitio en Internet.