un souvenir de Nulle-part

Comment je façonne Nulle-part

du texte au texte

Pour les tenants du « trop long pas lu » ou les personnes pressées de découvrir mon processus avant de le parcourir en détail un résumé est disponible en fin d’article

Depuis que je tente de tenir un site, j‘ai plusieurs fois changé de méthode. Du HTML[1] saisi à la main et poussé via FTP[2] sur un espace gratuit chez free je suis passé par maints systèmes de gestion de contenu basés sur le couple scripts PHP et base de données mySQL, hébergés d‘abord chez OVH puis chez monarobase (mon hébergeur actuel). Il y eut également un site chez feu mygale.org à la fin des années 90 et quelque chose de fugace, hébergé sur un espace gratuit lié à un compte de courriel free, au début des années 2000.

À travers ces expérimentations j’ai suivi de plus ou moins près les évolutions technologiques de ce que l‘on appelle par approximation Internet et qui en est la surface émergée. Si le bal des langages et ses guerres de positions ne me toucha pas, ni me me fit me poser de grandes questions, à l’inverse, la conservation de données et leur interopérabilité fut (et est toujours) un sujet important pour moi — d’autant plus après mon expérience hospitalière[3].

Aussi bien conçues que soit une base de données, aussi bien pensé et documenté que soit son modèle, aussi puissants que soient les outils d’analyse et d’extraction, j’ai acquis la conviction que le meilleur format pour conserver des écrits est le fichier texte dans sa plus simple expression avec, au plus, quelques conventions de balisage légères. C’est donc naturellement que j‘ai adopté le Markdown[4] pour la rédaction de mes textes.

Rédiger

N’importe quel logiciel d’édition de texte est apte à créer et manipuler des fichiers Markdown, quelque soit la plateforme informatique utilisée. Mes préférences et habitudes personnelles ont fait du Writer d’information Architect mon éditeur de prédilection.

J’apprécie la culture typographique de ses créateurs, le mode de concentration proposé ainsi que la coloration du texte pour faire ressortir les différents éléments syntaxiques du document (conjonctions, adverbes et cætera). La vérification de style peut être également une aide pour les personnes comme moi qui peinent à relire leurs propres textes sans les survoler.

Publier

Une fois les signes alignés et — dans la mesure de ma concentration — corrigés, il reste à les mettre en forme et les publier (à) nulle-part. Là encore, il existe un nombre important de solutions pour transformer un fichier Mardown en page web, soit par export direct depuis le logiciel de traitement de texte — méthode simple et rapide mais qui ne résout pas ou partiellement la gestion d’une collection de textes et la navigation entre ceux-ci — soit en utilisant une application tierce qui génère un site Internet complet, navigation comprise (et bien plus mais je résume).

Les suspects habituels ont pour nom Jekyll, Hugo, Pelican ou encore Gatsby mais celui que j’utilise, petit dernier de cette famille d’outils s’appelle Eleventy. Ce sont peut-être mes plus de vingt années de côtoiement du Web qui m’ont influencé mais les personnes qui sont derrière cette application, leur approche et la communauté qui se construit autour ont fait plus que me convaincre ou me séduire.

Classer

Les deux actions précédentes suffisent à produire un ensemble de pages liées entre-elles fonctionnel et partageable en ligne par le plus simple des serveurs de n’importe quel hébergeur. Il manquerait cependant pour moi une des spécificités du média numérique qui qui m’intéresse le plus : la possibilité de penser différentes manières d’établir des liens entre des contenus. Il est ainsi nécessaire d’associer des indices de classement (chronologiques, taxinomiques…), aux documents publiés.

En l’absence de base de donnée et de langage de script exécuté côté serveur, Eleventy, comme beaucoup de systèmes de publication se reposant sur des fichiers textes, s’appuie sur le format YAML[5] pour l’ajout de métadonnées. Celui-ci prend la forme de lignes de textes inscrites au début du fichier Markdown. C’est simple, léger, et lisible par des personnes comme par des automatismes.

Cependant, comme expliqué au début de ce billet, je préfère séparer les choses — voir même, j’ai besoin de le faire. Aussi avoir une en-tête YAML dans mon document en cours de rédaction n’est pas une solution satisfaisante. Modifier à la main mes fichiers texte une fois ceux-ci jugés achevés pour ajouter les métadonnées (ce que je faisais au début), même en m’aidant de bouts de codes prêts à être insérés avec des raccourcis dans mon éditeur de code, ne l’est pas non plus.

J’aurais pu utiliser la super solution logicielle Drafts pour gérer cet aspect de mon processus de publication et cela aurait été aussi bien (voir mieux, je vous enjoints à lire les billets de Jean-Christophe courte à ce sujet). Je suis cependant parti sur une option plus roots (pouf pouf) en construisant un script shell pour faire le boulot fastidieux à ma place, à savoir :

Partager

Une fois mon site généré par Eleventy et testé rapidement sur un serveur web local j’utilise un script pour pour le publier via FTP sur mon serveur hébergé par monarobase.net. Pourquoi utilisé-je un script ? Tout simplement parce que la plupart du temps je suis encore dans le terminal à ce moment.

Le processus résumé

  1. Je saisis en Markdown et corrige mes texte sur un terminal numérique mobile ou un ordinateur dans iA Writer.
  2. J’utilise un script shell pour dupliquer le fichier texte, lui ajouter des métadonnées au format YAML et le positionner dans le répertoire de travail d’Eleventy.
  3. J’ouvre le fichier dans un éditeur de code pour parfois compléter son en-tête.
  4. J’exécute le script Eleventy pour générer mon site à plat.
  5. Après une vérification sur un serveur local je publie mon site mis à jour via le protocole de transfert de fichier.