💾 Archived View for unbon.cafe › lejun › posts › 20230423_gemfeed.gmi captured on 2023-06-16 at 16:40:54. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-04-26)

➡️ Next capture (2023-09-08)

-=-=-=-=-=-=-

Gemfeed

2023-04-23

Les flux Atom ou RSS sont des outils de syndication permettant, entre autres, l'échange de contenu via XML ainsi que son agrégation dans une idée d'abonnement.

Plus simple, le protocole Gemini permet de créer un flux (pour les navigateurs le prenant en charge) automatiquement à partir de quelques conventions de syntaxe[2]. Ancré dans la philosophie du protocole, cela constitue un moyen complémentaire et allégé aux technologies classiques.

Après une petite mise en conformité de l'index de ma capsule, me voilà donc heureux propriétaire d'un gemfeed aux normes et référencé par l'agrégateur Gemini Francophonie[1].

Structure

La spécification est relativement claire, mais manque d'une version résumée :

Pour le texte d'un lien, je déconseille d'utiliser des caractères comme séparateur. Les différentes méthodes ont été décrites et comparées[3] en soulignant que l'usage d'un séparateur entre la date et le titre ne facilite pas le travail des liseuses (Mail envoyé pour clarifier ce qui pourrait être une littote attenuée).

ISO 8601 basique ou étendu

Il a été porté à mon attention que ma capsule ne suivait pas les normes permettant d'en générer un Gemfeed automatiquement. Qu'à cela ne tienne, la conversion est facilement réalisable à l'aide de sed[4] (`ed` n'étant pas fourni par défaut sous Debian 11).

Les séquences à transformer sont sélectionnables à l'aide du regex étendu (acronyme ERE, différant du BRE notamment par les parenthèses et les crochets) de type `([0-9]{4})([0-9]{2})([0-9]{2}) `, une suite de 8 chiffres – découpés en 3 groupes en vue de leur division – précédés d'un espace – cet espace est important puisque permet d'écarter les dates utilisées pour les noms de fichiers. Un premier modèle était plus élégant en indiquant les chiffres via `\d` mais cela ne semble pas pris en charge dans mon cas.

La séquence de remplacement fait usage des groupes définis entre parenthèses soit `\1-\2-\3 `.

Ainsi, la commande complète de modification est `sed -E 's/([0-9]{4})([0-9]{2})([0-9]{2}) /\1-\2-\3 /g' index.gmi` (le suffixe `g` permettant de modifier toutes les séquences et pas uniquement la première).

Références

[1] Gemini Francophonie - Agrégateur de capsules francophone, Bacardi55 2023

[2] Subscribing to Gemini pages, Solderpunk 2020

[3] Gemlog Index Styles, Nordmeyer 2022

[4] Stream EDitor, LeJun 2023