Créée le lundi 29 janvier 2024
index
Le besoin
Cela fait un moment que l'envie d'avoir mon propre blog me démange. J'écris régulièrement des textes sur toutes sortes de sujets et sans aucune prétention démesurée, je me dis que cela pourrait être intéressant ou utile à d'autres de me lire. J'aime moi-même lire les articles de blogs des autres dont probablement je citerai les articles par ici de temps à autre.
Par contre, se pose le choix de la solution à utiliser. Mon cahier des charges est le suivant :
- travail en local par défaut, ce qui élimine toutes les solutions "en ligne", type wordpress and co
- minimalisme d'aspect : des liens, du texte, des images. Rien de très compliqué.
- aucune publicité, aucun tracking, ce genre de chose.
- minimalisme technique : de simples fichiers textes, faciles à éditer et facile à mettre en ligne.
- utilisable sous Linux
- simplicité de mise en oeuvre, notamment pouvoir facilement créer des titres, copier/coller une image et faire une mise en forme usuelle (gras, italique, surlignage) facilement. En fait, une solution "wysiwyg" ("what you see is what you get" = "ce que vous voyez est ce que vous obtenez) pour avoir une spontanéité d'édition et de correction.
- relative facilité d'organisation des contenus en catégories, etc.
- mise en oeuvre vraiment rapide et simple, c'est à dire en quelques minutes et quelques actions simples faciles à se rappeler.
Les options
Plusieurs options sont possibles, notamment :
- gemini : solution de sites minimalistes mais je trouve les principes utilisés trop restrictifs. Une image n'est pas pour moi quelque chose d'inutile . Au contraire, je considère que c'est très pertinent dans bien des cas. Bref, j'ai regardé de quoi il en retourne, mais je n'accroche pas à l'idée.
- générateur de sites statiques, en markdown : c'est une option intéressante. Du type mkdocs par exemple en Python, Hugo en Go, ce genre de choses. Mais c'est presque déjà compliqué quand on part de zéro. J'ai l'habitude du markdown, et j'ai pas mal pratiqué, mais chaque solution a ses "codes" internes qui sont différents d'une solution à l'autre pour certaines mises en forme. Et surtout, il y a une perte de spontanéité car il y a une étape entre la lecture d'une faute, l'insertion d'une image, la mise en forme d'un titre et ce que l'on voit. Le pire concerne les images que l'on ne peut pas facilement copier/coller. Il faut en général enregistrer le fichier, insérer l'image, etc. Autre inconvénient, technique celui-là, les générateurs statiques nécessitent quand même pas mal de fichiers, des librairies javascript and co et ce n'est si léger que çà parfois.
- une solution d'éditeur simple qui peut exporter facilement le contenu en site simple : c'est la solution que je retiens et qui reprend pour l'essentiel tous les points précédents.
La solution : l'éditeur Zim, le wiki de bureau
Au fil du temps, et après plusieurs tentatives de différents outils, je suis tombé sur l'éditeur Zim. C'est à la base un logiciel d'édition de wiki pour le bureau, un éditeur qui permet l'édition de fichiers textes, la création de liens, de pages organisées en catégories, etc. Il offre aussi quelques outils intéressants tels que les rétroliens, les blocs de code, etc.
Mais dans mon cas, ce qui m'intéresse beaucoup, c'est l'immédiateté d'usage en édition, permettant même l'édition en plein écran en mode sans distractions si on le souhaite. L'éditeur simple propose les mises en formes de base en "wysiwyg" : gras, italique, surlignage couleur, barré. Et puis surtout, permet le copier/coller d'image facilement depuis le presse-papier, la reconnaissance automatique de liens par simple copier collé, etc. Zim ne prend pas le markdown dans l'éditeur (encore que, il reconnaît automatiquement certains codes propres au markdown) mais il permet d'exporter en markdown au besoin, ce qui ne ferme pas la porte à l'usage d'autres outils le cas échéant avec les fichiers écrits sous Zim. Une série de plugins et des possibilités de mise en forme par css rendent les choses très souples.
Zim permet, et c'est çà qui est très intéressant, d'exporter les pages d'un "Notebook" (nom donné à un ensemble de pages) en fichiers HTML simples (mais aussi en markdown ce qui peut le rendre utilisable avec certains générateurs statiques). Souplesse au rendez-vous puisqu'on peut exporter ainsi une seule page ou une sous partie ou un Notebook entier.
Mise en oeuvre
Et bien comme annoncé, c'est très simple sous Debian :
sudo apt-get install zim
Si vous êtes sous Windows ou Mac, le logiciel est aussi disponible. Pour plus de détails voir : https://zim-wiki.org/
Une fois fait, lancer Zim et commencer à créer des pages. Voici une petite vidéo de présentation de l'éditeur :
Vous voyez au passage comment il est facile ici d'insérer un lien sur image vers une vidéo dans l'éditeur Zim.
Au fil des usages, on découvre les nombreuses possibilités de l'outil qui offre toute une série de plugins, notamment une carte des liens, des volets de rétroliens, etc. C'est vraiment une bonne surprise en fait ce petit logiciel "tout bête". On peut également personnaliser le template par défaut utilisé, etc. Mais garder la configuration par défaut est ce qui est le plus pertinent pour rapidement être opérationnel.
L'export du "site"
Lorsque l'on est satisfait de son contenu, aller dans le menu exporter, choisir HTML ou Markdown, sélectionner la destination, et zou, c'est fait.
Il faut vraiment un gros site pour que çà prenne du temps.
Au final, on peut dire que Zim est un éditeur / générateur de site statique.
La mise en ligne
Dans la mesure où l'on obtient de simples fichiers HTML et les images dans un répertoire associé pour chaque page, il est possible au choix :
- de placer le site sur un hébergement mutualisé, par FTP, les noms de domaines étant associés à quelques Mo de pages en général
- ou bien sur un VPS, ce qui peut d'ailleurs être intéressant si on a plusieurs blogs différents que l'on pourra mettre sur le même VPS avec une page d'accueil entre les différents espaces.
- ou bien même dans un "repo" sur une forge git, avec génération automatique des pages, ici il s'agira simplement d'une exposition simple HTML des fichiers. Cette solution ne permet pas par contre de disposer d'un nom de domaine dédié. Ce qui est intéressant par contre, c'est pas possibilité de "pusher" le site avec git.
- on peut aussi envisager une exposition temporaire ou depuis un serveur local.
- ou encore l'hébergement sur un bucket Garage par exemple (très simple à mettre en oeuvre !) Voir mes pages dédiées.
- etc.
Conclusion provisoire
Souvent, lorsque l'on veut écrire, on a une idée qui vient, on a quelques formulations sous les doigts que l'on veut rapidement saisir, et ne pas être interrompu par des manipulations intermédiaires. C'est ce que Zim permet et je l'utiliserai pour mettre en ligne mes premiers articles et j'espère que çà tiendra la route dans la "longueur". Car ce qui est intéressant avec un blog, c'est sa longévité.