Build a blog from a single orgmode file with emacs and all the bash power
Conservando el archivo blog.org, con la totalidad del contenido del blog en texto plano y org-bash-blog, en cualquier lugar puedes levantar el blog en segundos.
- Genera el RSS del blog y RSS por categorías
- Genera página Home, con los cinco últimos artículos publicados
- Genera página con un índice de la totalidad de los artículos publicados, ordenados por fecha
- Genera página ordenada tags, de un modo inteligente
- En cada artículo, sugerencia a otro post de la misma categoría
- Poder utilizar Google Analytics o similar
- Añadir fecha de modificación de un artículo
- Programación de publicación de Post
- Publicación mediante git
- Utiliza sintaxis orgmode, podiendo añadir imágenes, tablas, cajetillas de código…
- También puedes importar artículos en markdown
Clonaremos el repositorio de Org-Bash-Blog
git clone https://github.com/uGeek/org-bash-blog.git ; cd org-bash-blog
Instalaremos Org-Bash-Blog en nuestro sistema, actualizaremos la ruta de configuración e intalaremos todos los paquetes necesarios.
sudo ./org-bash-blog -i
Para el correcto funcionamiento de Org-Bash-Blog, necesitamos instalar los siguientes paquetes. Si has instalado Org-Bash-Blog en tu sistema, no será necesario.
sudo apt install bash pandoc xml2 wget bc whiptail
Instalar Calcurse si deseas ver los días de publicación de forma gráfica
sudo apt install calcurse
Si vas a hospedar tu blog en GitHub, GitLab,… Necesitarás también git
sudo apt install git
Si utilizas distribuciones no derivadas de Debian, Org-Bash-Blog funcionará perfectamente, pero es necesario instalar los paquetes:
Situados en el directorio donde vamos a construir el blog, donde hemos clonado el repositorio de Org-Bash-Blog y están los archivos config y org-bash-blog, ejecutaremos el siguiente comando:
sudo ./org-bash-blog -i
Esto editará de forma automática la ruta del archivo de configuración y configurará la ruta del blog en el archivo de configuración.
Puedes cambiar la ruta del archivo de configuración donde desees
Abre con tu editor de texto favorito el archivo org-bash-blog y busca en las primeras líneas, donde aparece source.
Escribe la ruta completa donde está el archivo config. Podrías dejarlo dentro de la misma carpeta, pero no es obligatorio.
Edita el archivo config, añadiendo todas aquellas variables que aparecen, como la ruta de la carpeta del blog, editor de texto, navegador, etc …
En el caso que no hubieras clonado el repositorio, este comando creará toda la estructura de directorios
org-bash-blog -b
En el archivo blog.org, estará todo el contenido del blog. Vamos a crearlo. Si h
org-bash-blog -f blog.org
En cabecera del archivo blog.org, añade el Título del blog, url del blog, Descripción, Palabras clave del blog y autor.
#+TITLE: Título
#+LINK: https://miblog.org
#+DESCRIPTION: Este es mi nuevo blog
#+KEYWORDS: personal, notas
#+AUTHOR: angel
Tanto el archivo draft.org como program.org, no necesitan la cabecera en la parte superior como el archivo blog.org.
El único requisito importante, todos los Artículos tanto en el archivo blog.org y program.org, tienen que estar en estado TODO
Vamos a crear los archivos draft.org y program.org. Entraremos en el directorio /program
y crearemos los archivos:
cd program/ ; touch draft.org program.org
Para crear un artículo, es tan sencillo como escribir en tu terminal:
org-bash-blog -n
Org-bash-blog nos hará una serie de preguntas sobre el Artículo a que vamos a crear, como:
**images-blog/**
y la renombrara con el nombre de imagen que le hemos dadoSi hemos seleccionado Emacs como editor de texto, abrirá Emacs con el archivo draft.org.
En la cabecera, aparecerá la fecha y hora actual, como ejemplo.
No es necesario añadir la descripción, ya que org-bash-blog lo creará después de forma automática
Si has utilizado otro editor externo y has creado el artículo en un archivo markdown, puedes importarlo a Org-Bash-Blog. Estén donde estén esos archivos ejecuta:
org-bash-blog -nim archivo.md
Para previsualizar el artículo que hemos creado, tenemos que pasar este del archivo draft.org a program.org. Para ello tenemos que poner el artículo o artículos que queremos pasar a program.org en estado PROGRAM
. Una vez hayamos especificado este estado, teclearemos el comando:
org-bash-blog -d
Esto enviará todos los archivos de draft.org con estado PROGRAM
al archivo program.org
En draft.org, todos los archivos enviados a program.org, no serán borrados, permanecerán en draft.org pero pasarán al estado DONE.
Para generar archivos html y ver una vista previa de los artículos que están en el archivo program.org, utilizaremos la opción -w seguido del archivo program.org
org-bash-blog -w program.org
Utilizando la opción -p, todos los artículos que estén en program.org, serán programados con la fecha y hora que indican.
Es necesario estar dentro del directorio donde está el archivo program.org para programarlo.
org-bash-blog -p
Si la carpeta contenía archivos html de la previsualización anterior, serán eliminados.
Para ver los Artículos que tenemos programados, utilizaremos la opción -h de ayuda. En la parte inferior de la ayuda aparecen todos los archivos programados con su título, fecha y hora.
org-bash-blog -h
Cuando llegue la fecha y hora, el Artículo programado, org-bash-blog pasará el artículo programado del archivo program.org al archivo blog.org.
Cada vez que modifiques el archivo program.org o modifiques una fecha de publicación, tienes que ejecutar org-bash-blog -p
para que org-bash-blog los ordene por fecha para la publicación.
org-bash-blog -p
Si deseas ver la programación de los artículos programados mediante un calendario, ejecuta:
org-bash-blog -cal
Org-Bash-Blog abrirá calcurse y verás los días programados en el calendario con el título seguido de # org-bash-blog
Si queremos modificar o eliminar algún artículo publicado, lo haremos en el archivo blog.org.
Para que el cambio ejecutar este cambio
org-bash-blog blog.org
Org-bash-blog creará todas las páginas .html, index.html, list.html, tag.html y el archivo feed.xml
Si tu blog está en repositorio tipo git, puedes hacer un git push desde cualquier directorio con:
org-bash-blog -g
Abre el archivo draft.org con emacs en modo gráfico.
org-bash-blog draft
Abre el archivo draft.org con emacs en modo terminal
org-bash-blog draftt
Abre el archivo program.org con emacs en modo gráfico.
org-bash-blog program
Abre el archivo program.org con emacs en modo terminal
org-bash-blog programt
Abre el archivo blog.org con emacs en modo gráfico.
org-bash-blog blog
Abre el archivo blog.org con emacs en modo terminal
org-bash-blog blogt
draft -> program -> blog
Crea un nuevo artículo en draft
org-bash-blog -n
Si lo quieres importar desde un archivo markdown
org-bash-blog -nim archivo.md
Para enviar artículos de draft.org a program.org, cambiamos del estado TODO A PROGRAM y ejecutamos el comando:
org-bash-blog -d
Para previsualizarlo y que org-bash-blog añada la descripción del artículo para el feed:
org-bash-blog -w programa.org
Programa la publicación
org-bash-blog -p
NOVEDADES