Réseaux à fragmentation

Pas encore de digital garden sur ce site, d’une part parce que pour être honnête, mon hébergeur rencontre depuis quelques semaines des soucis (ça ne vient pas de vous), et d’autre part, avant de me lancer dans ce bricolage d’envergure, je continue à m’interroger (I am a thoughtful guy, I think about a lot of things), comme tous les mardis à peu près, sur la place des plateformes en tant que relais vis-à-vis de nos îles sur Internet – nos sites, nos blogs à grand-papa. La tension est toujours : maîtriser son contenu chez soi (encore qu’à l’ère des LLM, on se demande ce qui nous appartient encore vraiment) Vs. aller échanger avec les gens là où ils se trouvent (dire coucou sur les plate-formes dont ils ont l’usage et l’habitude).

La solution, c’est le POSSE : Publish Once on your Site, Syndicate Everywhere – publier une fois sur son site, partager partout. Un article, une page, deviennent des liens qui sont partagés sur les plate-formes ; une mise à jour brève – un statut, une photo rigolote – s’insère dans le flux du blog et devient une brève sur les réseaux. Si les audiences et donc les conversations sont fragmentées, le site devient une archive vivante et, à terme – parce que c’est quand même ce qu’on préfère –, c’est là que les conversations peuvent venir se fédérer. Un truc, en gros, qui ressemblerait à ça, et oui, je sais, je dessine comme Wambus :

C’est-à-dire : un flux d’activité unifié, un peu comme les réseaux le proposent, mais chez soi, et permettant surtout d’entremêler élégamment le léger et le consistant. Eh bien, figurez-vous que c’est étonnamment difficile à faire – et pas tellement de la faute des plate-formes : automatiser et poster dessus est un problème globalement réglé (même s’il existe des tas d’idiosyncrasies, comme X qui rend ça payant une fortune – stupidité – ou Instagram qui exige une image, ce qui n’est pas aberrant). Les solutions de gestion de contenu comme WordPress ne prévoient pas tellement cette présentation unifiée – Micro.blog est à peu près ce qui s’en approche le plus. Les solutions d’hébergement sont curieusement mal fichues pour apprivoiser cette différence dans la pertinence variable d’un élément, selon qu’on parle d’un article argumenté sur un problème de fond, ou bien un simple partage de joie éphémère. C’est ce qui pousse à créer des digital gardens plus pérennes et séparés de la mise à jour limitée dans le temps annonçant « je signerai ce weekend à la Fête de la Crêpe ma nouvelle tragédie gastronomique, La Pâtissière du Fiel« . WordPress explore les Social Notes, mais la fonctionnalité est à moitié finie et ça n’a pas l’air d’être une priorité.

Pourtant, réfléchir à ces différentes « vies » inscrites dans le temps (tweet < statut < article < fiche evergreen, contenu de digital garden) et les unifier dans le même flux est peut-être la vraie solution. Cela me fait penser à l’approche adoptée par le lecteur de flux Current Reader, avec différentes « vitesses » et durées de vie pour différentes sources d’information – une actualité brève n’a peut-être besoin de vivre que quelques jours dans le flux avant de devenir obsolète, quand certains articles sourcés sont valides plusieurs mois. Je réfléchis à cette approche, parce que ce site est chouette, il y a plein de choses intéressantes dessus construites au fil des ans, mais il a besoin d’une réflexion de fond pour l’amener dans les années 2030.

2026-09-23T11:15:59+02:00jeudi 24 septembre 2026|Geekeries|1 Commentaire

Changer sa police de caractères pour changer de contexte mental

Nous restons fondamentalement des animaux – cela changera peut-être avec la poursuite de notre évolution, si nous réchappons du Grand Plan d’Optimisation par le Vide décrété par ChatGPT 12 en 2032, conduisant à la réduction de notre population mondiale à un cinquième via l’application méthodique d’un virus mental envoyé par TikTok VR. Mais, pour l’heure, nos organismes sont encore adaptés à l’analogique – manipulation spatiale de choses : réflexion à l’écrit, tableaux de liège, représentation physique de nos idées pour les organiser avec nos mains. Ce qui n’est pas toujours possible, ni même toujours pertinent quand le virtuel offre des avantages décisifs sur le réel (comme Obsidian et la méthode Zettelkasten). Ça vaut alors la peine de trouver des manières de personnaliser l’environnement de travail en fonction du contexte : par exemple, iOS et macOS le proposent avec les modes de concentration, qui offrent des fonds d’écran et des dispositions d’application différentes de manière à réduire les distractions et guider l’esprit vers l’activité choisie.

Une autre façon toute simple de parvenir à ce résultat consiste à personnaliser ses polices de caractères en fonction du mode de travail où l’on se trouve. Oui, tout à fait, c’est aussi une manière de laisser parler son nerd intérieur et de procrastiner de manière créative. Néanmoins, un environnement de travail lisible et méticuleusement choisi peut soutenir la création, puisqu’on a plaisir à en faire usage. De la même façon qu’on aime les jolis carnets et les jolis stylos. Oh et puis ça va, hein, laissez-moi mes prétextes.

Avec amusement, et faisant une recherche dans les archives du présent lieu de perdition, je découvre que j’ai déjà touché le sujet en 2023, avec une sélection toutefois légèrement différente. La preuve que je radote, ou bien qu’il me faut définitivement passer sur un Digital Garden, le jury doit encore se prononcer.

L’environnement de capture

Mon Drafts emploie iA Writer Duospace (mentionnée ici). Ses serifs guident subtilement l’œil sans le parasiter, et son aspect « code » ou machine à écrire transmet clairement à mes yeux que je travaille sur du provisoire, ce qui me libère quand il s’agit de noter, pour ainsi dire, une idée sur un coin de table.

L’environnement de notes

Mon Obsidian (car je suis de retour sur Obsidian pour toujours1) emploie la police Bear Sans, soit l’excellente police propriétaire de l’application Bear, de manière à mimer au maximum l’élégance dépouillée de celle-ci. Techniquement, mon Obsidian emploie le thème Minimal (puissant mais toujours à jour, car réalisé par le CEO d’Obsidian) et j’y ai patiemment répliqué la palette du thème Duotone Snow de Bear (car bleu, c’est mieux), avec quelques touches personnelles comme les filets de titres. Cela m’a demandé un certain boulot (et de la pêche aux extraits CSS personnalisés) mais cela en valait la peine : je n’ai plus aucun désir de toucher quoi que ce soit2. Mon DEVONthink emploie aussi Bear Sans pour l’affichage de ses fichiers Markdown. Le message est clair : je réfléchis, prends des notes, affine une réflexion.

L’environnement d’écriture

Enfin, j’écris dans Scrivener et parfois Ulysses avec Valkyrie, une police réalisée par l’excellent Matthew Butterick et dans laquelle vous lisez le présent blog.

Est-ce que ça compte ? Ça me fait plaisir, et l’ordinateur est l’outil qu’on utilise à longueur de journée – le personnaliser à son goût ne me semble pas perdu. On choisit bien la couleur de sa voiture.

  1. Enfin. Si DEVONthink continue à améliorer l’édition de ses fichiers Markdown, faudra peut-être réfléchir…
  2. Sauf quand je lorgne sur Primary – qui n’est toutefois pas assez neutre pour pouvoir garantir une réflexion non biaisée, et c’est pourquoi je m’en écarte toujours. Car : peut-on planifier de la dark fantasy dans un thème Obsidian cozy qui fleure bon le thé et le chocolat ? Nos outils façonnent notre pensée.
2026-09-09T08:39:18+02:00jeudi 17 septembre 2026|Best Of, Geekeries|0 commentaire

Un petit plugin pour conserver les liens aux en-têtes dans Obsidian

Obsidian est fantastique parce qu’on peut relier à peu près tout à n’importe quoi :

  • Bien entendu, relier ses notes entre elles avec des [[liens wiki]],
  • Cibler un lien vers un paragraphe spécifique grâce à un lien vers un [[^bloc]],
  • Et aussi cibler un titre ou en-tête de niveau inférieur dans une note [[#comme suit]].

Voir la doc officielle (très bien fichue) pour en savoir plus.

Or, une base de connaissances est appelée à évoluer constamment. Les notions se raffinent, les documents vivent, des sections deviennent des notes à part entière – pour vous faciliter la vie, prenez soin d’avoir activé le compositeur de note (plugin principal fourni avec l’application). Mais que deviennent alors ces liens, notamment si l’on renomme ses fichiers, modifie son texte, ses titres ?

  • Si l’on change le nom d’un fichier dans Obsidian, les liens entre notes y sont renommés à la volée tant qu’on a pris soin d’activer l’option correspondante dans les préférences (section Fichiers & Liens). Pas de risque de perdre de l’information.
  • Puisque les liens aux paragraphes ciblent un code alphanumérique type ^e5gh8ç, on peut altérer le texte autour tant qu’on veut, rien ne cassera non plus tant que le code reste intact. Et si, mesure drastique, on souhaite supprimer le paragraphe, la présence même de ce petit code montre que l’on risque de casser des liens : à nous de visiter les références pour décider si cette information vaut la peine d’être conservée.

Les liens aux en-têtes, en revanche, cassent toujours. Supposons que j’ai une fiche Observations culinaires diverses avec un en-tête ### Le saucisson n'existe pas en Australie, vers lequel j’aurais créé un lien depuis une autre fiche intitulée Parcours personnel de deuil (Chut. Chacun ses priorités).

À présent, imaginons (tout ceci est bien entendu absolument fictif) que j’aie eu vent d’un moyen de me procurer la Nourriture des dieux dans le pays de Bluey. Très logiquement, mon en-tête dans Observations culinaires diverses se trouve renommé ### Comment me procurer du saucisson en Australie. Que devient le lien vers celui-ci dans Parcours personnel de deuil ? Il casse, car un lien vers un en-tête utilise le texte de cet en-tête. Si ce texte change, le lien perd son point d’atterrissage dans le fichier. En effet, l’application ne surveille pas ces opérations de renommage : elles nuiraient fortement à sa performance. Si l’on souhaite renommer un en-tête, il faut passer explicitement par le menu contextuel de celui-ci (clic-droit > Renommer cet en-tête), ce qu’on ne manquera pas… d’oublier de faire.

Du coup, comment éviter de voir ses liens casser ? Doit-on s’astreindre à renommer manuellement ses en-têtes avec l’option de menu, ce qui est drôlement fastidieux ? Ou bien s’abstenir à jamais de les utiliser comme cible de ses liens ?

Un petit plugin tout simple et parfaitement méconnu résout ce problème : Header backlinks. Si un lien pointe vers un en-tête, celui-ci présente alors une ancre bien visible dans la marge :

Offrant un rappel tangible de sélectionner manuellement l’option de menu Renommer cet en-tête avant de, eh bien, renommer cet en tête. Ailleurs, pas de risque.

2026-08-26T10:21:13+02:00lundi 31 août 2026|Geekeries|0 commentaire

Ma collection de snippets CSS Obsidian, pour une apparence et une typographie de bon goût

Oui. Bon. Je suis en train de retourner sous Obsidian. Un certain nombre de mes points de friction autour de l’app se dissipent, des fonctionnalités que je désire se trouvent intégrées, signifiant que je gagne à présent à tout y centraliser plutôt qu’à conserver des silos séparés. Suite à une question des formidables stagiaires de la retraite sur l’émergence créative au printemps (merci pour l’inspiration), je vais faire mon petit influenceur et proposer les extraits CSS que j’utilise dans l’application : j’ai appris un ou deux trucs, notamment que mes besoins parfaitement raisonnables et empreints de mon habituel goût très sûr (utilisez les guillemets à chevrons dans vos dialogues, dammit) ne sont pas tant partagés que ça, ce qui est bien la preuve que tout fout le camp.

Si vous vous demandez ce qu’est un extrait CSS dans Obsidian, c’est un petit bout de code qu’on peut injecter dans l’application pour y personnaliser à peu près n’importe quoi. Rendez-vous ici pour apprendre à les utiliser.

Voici de quoi rendre l’application OCD-compliant.

Alinéa de paragraphe

Sérieusement ? Personne n’a besoin de ça ? J’ai passé un temps déraisonnable à éplucher le forum officiel pour trouver comment mettre en retrait la première ligne de chaque paragraphe, et au final, il m’a fallu l’aide du Discord. Bref, voici comment présenter un joli texte avec un alinéa, mais seulement pour le contenu du fichier en cours, parce que sinon, c’est le bazar.

body .workspace-leaf-content[data-type="markdown"] .markdown-source-view.mod-cm6 div.cm-line:not(:is(.HyperMD-header,.HyperMD-quote,.HyperMD-list-line,.hyperMD-codeblock,.hr), .cm-table-widget *),
.markdown-source-view.mod-cm6.indent div.cm-line:not(:is(.HyperMD-header,.HyperMD-quote,.HyperMD-list-line,.hyperMD-codeblock,.hr), .cm-table-widget *) {
  text-indent: 2em;
}

body  .workspace-leaf-content[data-type="markdown"]  .markdown-source-view.mod-cm6 div.cm-line:not(:is(.HyperMD-header,.HyperMD-quote,.HyperMD-list-line,.hyperMD-codeblock,.hr), .cm-table-widget *) .cm-hmd-frontmatter:first-of-type,
.markdown-source-view.mod-cm6.indent div.cm-line:not(:is(.HyperMD-header,.HyperMD-quote,.HyperMD-list-line,.hyperMD-codeblock,.hr), .cm-table-widget *) .cm-hmd-frontmatter:first-of-type {
  margin-left: -2em;
}

body .markdown-source-view.mod-cm6 div.has-banner.cm-line:not(.HyperMD-header) .cm-def.cm-hmd-frontmatter,
body .markdown-source-view.mod-cm6 div.has-banner.cm-line:not(.HyperMD-header) .collapse-indicator,
.markdown-source-view.mod-cm6.indent div.has-banner.cm-line:not(.HyperMD-header) .cm-def.cm-hmd-frontmatter,
.markdown-source-view.mod-cm6.indent div.has-banner.cm-line:not(.HyperMD-header) .collapse-indicator {
  margin-left: 0;
  left: -3em;
}

body [data-type="markdown"] div[class="el-p"]:not(blockquote) > p,
[data-type="markdown"] :is(.markdown-preview-view,.markdown-rendered).indent div[class="el-p"]:not(blockquote) > p {
  text-indent: 2em;
}


body [data-type="markdown"] div[class="el-p"]:not(blockquote) > p>br,
[data-type="markdown"] :is(.markdown-preview-view,.markdown-rendered).indent div[class="el-p"]:not(blockquote) >  p>br {
  content: ' ';
  white-space: pre;
  line-height: calc((var(--paragraph-spacing) + 0.3) * 1em);
  display:unset;
}
body [data-type="markdown"] div[class="el-p"]:not(blockquote) > p>br::after,
[data-type="markdown"] :is(.markdown-preview-view,.markdown-rendered).indent div[class="el-p"]:not(blockquote) >p>br::after {
  content: '\A\9\9';
}

Placer le bouton de fermeture des onglets à gauche

Peu utile si vous empilez les onglets, comme il se doit bien sûr, mais si vous utilisez un Mac, vous savez que le bouton de clôture d’une fenêtre ou d’un onglet se trouve à fucking gauche, pas à droite comme chez ces barbares de Windows.

.workspace-tab-header-inner-close-button {
  order: -1;
}

Espacer les titres

Ça n’a pas l’air de grand-chose – placer du blanc avant et après les titres, de manière à les faire ressortir et à aérer un document – mais l’éditeur d’Obsidian n’utilise pas margin comme on s’y attendrait, mais padding, ce qui fiche un peu le dawa notamment quand on désire intégrer un joli trait de séparation / soulignement comme je le fais ici. Employer padding implique du coup un peu de calculs à la volée, bref, c’est inutilement compliqué, c’est pourquoi je vous le mets : ajustez les valeurs selon votre goût et votre thème. (Là encore, merci au Discord.)

body :is(.markdown-preview-view,.markdown-rendered) h1,
body .markdown-source-view.is-live-preview .HyperMD-header.HyperMD-header-1.cm-line {
  padding-top: 35px !important;
  padding-bottom: 35px !important; 
}

body .markdown-source-view.is-live-preview .HyperMD-header.HyperMD-header-1.cm-line {
  --h1-bot-padding: 35px;
  padding-bottom: var(--h1-bot-padding);
  position: relative;
  
  &::after {
    --underline-offset: 5px;
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: calc(var(--h1-bot-padding) - var(--underline-offset));
    background-color: lightgrey;
  }
}

body :is(.markdown-preview-view,.markdown-rendered) h2,
body .markdown-source-view.is-live-preview .HyperMD-header.HyperMD-header-2.cm-line {
  padding-top: 35px !important;
  padding-bottom: 30px !important; 
}

body .markdown-source-view.is-live-preview .HyperMD-header.HyperMD-header-2.cm-line {
  --h2-bot-padding: 30px;
  padding-bottom: var(--h2-bot-padding);
  position: relative;
  
  &::after {
    --underline-offset: 5px;
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: calc(var(--h2-bot-padding) - var(--underline-offset));
    background-color: lightgrey;
  }
}

body :is(.markdown-preview-view,.markdown-rendered) h3,
body .markdown-source-view.is-live-preview .HyperMD-header.HyperMD-header-3.cm-line {
  padding-top: 30px !important;
  padding-bottom: 20px !important;
}

body :is(.markdown-preview-view,.markdown-rendered) h4,
body .markdown-source-view.is-live-preview .HyperMD-header.HyperMD-header-4.cm-line {
/*  border-bottom: 0.5px solid black;*/
  padding-top: 25px !important;
  padding-bottom: 10px !important;
}

body :is(.markdown-preview-view,.markdown-rendered) h5,
body .markdown-source-view.is-live-preview .HyperMD-header.HyperMD-header-5.cm-line {
/*  border-bottom: 0.5px solid black;*/
  padding-top: 25px !important;
  padding-bottom: 5px !important; 
}

body :is(.markdown-preview-view,.markdown-rendered) h6,
body .markdown-source-view.is-live-preview .HyperMD-header.HyperMD-header-6.cm-line {
/*  border-bottom: 0.5px solid black;*/
  padding-top: 20px !important;
  padding-bottom: 10px !important;
}

body {
  --p-spacing: 1rem;
  --heading-spacing: 1em;
}

Espacer les paragraphes

Et tant qu’on y est, on peut séparer subtilement les paragraphes, ce qui ne mange pas de pain quand on travaille avec des murs de texte.

.CodeMirror pre.CodeMirror-line {
  padding-bottom: 10px !important;
}

.cm-s-obsidian .CodeMirror-line,
.cm-s-obsidian .cm-line {
    padding-bottom: 6px !important;
}

.markdown-preview-view br {
    content: '';
    display: block;
    margin-top: 10px;
}

.cm-content .cm-line:not(:is(.HyperMD-header), .cm-table-widget *) {
  line-height: 1.55em;
}

/* Live Preview */

body {
  --paragraph-spacing: 1.55;
}

:is(.markdown-preview-view,.markdown-rendered) p {
  margin-block-start: calc(var(--paragraph-spacing) * 1em);
  margin-block-end: calc(var(--paragraph-spacing) * 1em);
}

body :is(.markdown-preview-view,.markdown-rendered) p>br {
  content:" ";
  margin-top: calc((var(--paragraph-spacing) - 1) * 1em);
  display: block;
}
  

De jolies listes à puces hiérarchiques

Je suis d’avis que les indicateurs visuels soutiennent la pensée : changer le style des puces à mesure que l’on descend dans la hiérarchie n’est pas bien difficile, et c’est joli.

/* LEVEL 1 */
.markdown-reading-view ul > li > .list-bullet:after,
.markdown-source-view.mod-cm6 .HyperMD-list-line-1 .list-bullet:after {
/* Bullet */
    height: 7px;
    width: 7px;
    border-radius: 50%;
    background-color: var(--bullet-new-color);
} 

/* LEVEL 2 */
.markdown-reading-view ul > li > ul > li > .list-bullet:after,
.markdown-source-view.mod-cm6 .HyperMD-list-line-2 .list-bullet:after {
/* Hollow Bullet */
    height: 6px;
    width: 6px;
    background-color: Transparent;
    border-color: var(--bullet-new-color);
    border-style: solid;
    border-radius: 50%;
    border-width: 1px;
} 

/* LEVEL 3 */
.markdown-reading-view ul > li > ul > li > ul > li > .list-bullet:after,
.markdown-source-view.mod-cm6 .HyperMD-list-line-3 .list-bullet:after {
/* Solid Square */
    height: 7px;
    width: 7px;
    border-radius: 0%;
    background-color: var(--bullet-new-color);
} 

/* LEVEL 4 */
.markdown-reading-view ul > li > ul > li > ul > li > ul > li > .list-bullet:after,
.markdown-source-view.mod-cm6 .HyperMD-list-line-4 .list-bullet:after {
/* Hollow Square */
    height: 6px;
    width: 6px;
    background-color: Transparent;
    border-color: var(--bullet-new-color);
    border-style: solid;
    border-radius: 0%;
    border-width: 1px;
} 

/* LEVEL 5 */
.markdown-reading-view ul > li > ul > li > ul > li > ul > li > ul > li > .list-bullet:after,
.markdown-source-view.mod-cm6 .HyperMD-list-line-5 .list-bullet:after {
/* Small Bullet */
    height: 3px;
    width: 3px;
    border-radius: 50%;
    background-color: var(--bullet-new-color);
} 

/* LEVEL 6 */
.markdown-reading-view ul > li > ul > li > ul > li > ul > li > ul > li > ul > li > .list-bullet:after,
.markdown-source-view.mod-cm6 .HyperMD-list-line-6 .list-bullet:after {
/* Dash */
    height: 1px;
    width: 5px;
    border-radius: 0%;
    background-color: var(--bullet-new-color);
} 

/* LEVEL 7 */
.markdown-reading-view ul > li > ul > li > ul > li > ul > li > ul > li > ul > li > ul > li > .list-bullet:after,
.markdown-source-view.mod-cm6 .HyperMD-list-line-7 .list-bullet:after {
/* Bullet */
    height: 5px;
    width: 5px;
    border-radius: 50%;
    background-color: var(--bullet-new-color);
} 

.cm-s-obsidian .cm-formatting-list {
    color: var(--bullet-new-color) !important;
}


/* bullet color */
:root { 
    --bullet-new-color: #2d62d8;
} 

Changer le style du soulignement de texte

Obsidian ne propose pas d’option de soulignement pour le texte, parce que le Markdown ne l’inclut bizarrement pas ; il est cependant possible de l’intégrer manuellement avec la balise HTML <u>, ou, plus élégamment, avec le plugin Extended Markdown Syntax qui ajoute la balise ++ à cet effet. Pour adapter le soulignement à sa couleur préférée (comme Bear), employer et personnaliser ce qui suit – fonctionne avec les deux contournements sus-cités.

u {
    text-decoration: underline 7% solid #2d62d8 ;
    text-underline-offset: 10% ;
}

.cm-ins {
    text-decoration: underline 7% solid #2d62d8 ;
    text-underline-offset: 10% ;
}
2026-07-17T02:33:03+02:00mercredi 15 juillet 2026|Geekeries|3 Commentaires

L’obligation fantôme (et Current Reader)

Getting Things Done a révolutionné la productivité personnelle mais, comme à peu près tout en notre ère de standardisation, le concept de boîte de réception / triage / tâche à accomplir a débordé du domaine professionnel pour envahir tous les domaines de l’existence, des emails (inbox zero!) au doomscrolling des réseaux, en passant par la liste de lecture Netflix.

You know who you are.

Partout, les informations arrivent, s’entassent, et parce qu’on dispose de la possibilité et de la méthode pour les traiter, on imagine que le temps est extensible et qu’on peut tout gérer. Ce qui est évidemment illusoire, et génère une « obligation fantôme » (phantom obligation) dans les excellents mots de Terry Godier, à travers un article qui a circulé assez largement.

Partout, les notifications et les badges rouges accaparent (et monétisent) l’attention, générant une culpabilité radioactive de fond qui n’a pas lieu d’être : oui, vérifier vos mails professionnels et les suivre est important, mais pas autant que vos flux sociaux ni que les articles mis de côté pour le plaisir. Qui se dit : « il faut que j’arrive à bibliothèque zéro » ?

Il convient, avance Godier, de questionner les paradigmes des interfaces de nos applications ; un lecteur de flux doit-il vraiment ressembler à une application d’emails? Non. Et puisque les flux RSS, c’est le bien, il est l’auteur d’une application de lecture résolument différente, Current Reader, qui traite les articles non pas comme une liste de choses à faire, mais comme une rivière de contenu où les actualités, les essais et les opinions passent et se dépassent, et où il s’agit de lire pour le plaisir de lire et non pour l’obligation fantôme de réduire la pile à zéro, tout ça pour la voir remonter dans l’heure qui suit, supplice de Sisyphe moderne. Current ne présente, et c’est un choix, aucun compteur.

Hades to Sisyphus landing in Tartarus: FEAR AND LEARN THY PUNISHMENT, MORTAL! Here thou go. That's an iPhone. Sisyphus: Oh… Okay. That's… cool, I guess? Hadès: Thou shalt reach inbox zeroSisyphus: NOOOOOO

𝙻𝚒𝚘𝚗𝚎𝚕 𝙳𝚊𝚟𝚘𝚞𝚜𝚝 / Wildphinn (@lioneldavoust.com) 2026-04-07T05:12:21.211Z

De manière annexe, une lecture vivement recommandée : The Last Days of Social Media, qui expose en détail comment les réseaux que nous avons connu dans les années 2010 sont morts (ou agonisent) et que nous sommes déjà passé·es à autre chose, et que nous avons besoin d’autre chose.

2026-04-07T07:21:35+02:00mardi 7 avril 2026|Geekeries, Humeurs aqueuses|Commentaires fermés sur L’obligation fantôme (et Current Reader)

Typinator passe en v10, avec une app iOS et un abonnement encore évitable

Vite fait : Typinator est mon app de choix pour l’expansion de texte, et à présent, l’app offre un compagnon iOS qui donne accès à ses abréviations sur iPhone et iPad. Ça n’est hélas pas aussi élégant que le vieux kit propriétaire de TextExpander qui permettait d’associer dans les apps qui le supportaient la correction automatique du clavier système à l’expansion de texte (mais aucune solution, y compris celles de TextExpander elles-mêmes, n’arrivent encore à rivaliser avec cette implémentation hélas abandonnée depuis).

L’app de Typinator permet cependant d’accéder à ses macros sur son iPhone, ce qui peut être très pratique pour les messages-type, les macros basées sur des dates (genre Zettelkasten UID), les titres décidément trop longs (n’est-ce pas, « Faisabilité et intérêt zootechniques de la métamorphose de masse »). À l’occasion, Typinator propose une formule à l’abonnement et y pousse gentiment ses clients (l’app iOS n’est ainsi pas disponible à l’achat unique). Cependant, l’achat unique reste disponible sur Mac, là où c’est quand même le principal.

Et s’il vous prend l’envie d’essayer la concurrence, j’ai vite fait testé Rocket Typist disponible via Setapp, mais immédiatement, des bugs ou des imperfections dans l’expansion de texte me sont apparues. Typinator reste la solution la plus fiable et rapide sous Mac que j’ai testée, et j’ai donc accepté le coût de la mise à jour à la v10, pour un outil qui est absolument vital à mon usage d’un ordinateur aujourd’hui, sans même parler de l’écriture.

De manière générale, si l’envie d’acheter cet outil (ou l’un des autres présentés sur ce site) vous vient, n’oubliez pas de passer par les liens proposés ici – vous contribuez à financer le temps passé à rédiger ces articles gratuitement. Merci ! (Comme toujours, liens affiliés.)

2026-03-12T05:13:46+01:00jeudi 12 mars 2026|Geekeries|2 Commentaires

Trop de newsletters ? Déportez-les dans votre lecteur de flux RSS

À un moment, il faut constater qu’on a un problème.

Heureusement, mon client de mail actuel (Spark) me permet de trier et isoler automatiquement ces deux catégories de messages, laissant ma boîte de réception relativement lisible (même si mon retard de correspondance remonte à peu près au Carbonifère, toujours avec mes plates excuses). Mais bon, clairement, il y a quelque chose de pourri au royaume de Melbourne. Les newsletters sont un moyen fantastique de rester en lien avec les initiatives qu’on veut suivre (j’en ai une super d’ailleurs, abonnez-vous !), mais beaucoup tiennent un peu, au final, du flux RSS, de la mise à jour qu’on pourrait déporter dans son lecteur de flux (reprenez le contrôle de votre information avec un lecteur de flux si ça n’est pas déjà fait).

Faisons-le donc, faites-le donc (sauf ma newsletter bien entendu, qui ne vous noiera pas : une lettre par mois). Il y a plusieurs façons de faire :

Déjà, la plupart des plate-formes type Substack possèdent des adresses RSS. Pas besoin de noyer votre email sous les lettres d’infos que vous aimez : tout lecteur de flux digne de ce nom détectera le flux correspondant à ces services, qui ressemblera par exemple à quelque chose du genre siegheil.substack.com/rss , parce que vous saviez que Substack a un énorme problème de nazis et que le principe d’une newsletter c’est quand même de rester indépendant·e, donc POURQUOI mettre sa newsletter sur Substack au lieu de parler directement aux gens ? Ahem, pardon, ça n’est peut-être pas ce que vous m’avez demandé. Mais quand même. Substack. Nazis. Plateforme de merde.

Ensuite, pour toutes les newsletters du type « entre ton email pour recevoir 10% sur ta commande et suivre cette chouette boutique », on a globalement deux solutions.

Un service d’agrégation payant. Pour mémoire, la lecture de flux RSS s’articule souvent autour de deux volets : le service d’agrégation (qui va collationner vos abonnements) et l’application de lecture (les services d’agrégation en proposent tous une, or elle est en général pas terrible, donc un·e esthète préférera une application native compatible avec son agrégateur, comme Reeder, ReadKit, Fiery Feeds etc.). Or, en 2025, tous les services d’agrégation dignes de ce nom (a fortiori dans leurs formules payantes) vous fournissent une ou plusieurs adresses mail personnelles (pour correspondre à des thèmes distincts) dans le but de vous abonner à des newsletters. J’ai rapidement regardé, Feedly, Inoreader, Bazqux, Feedbin proposent cette fonctionnalité : abonnez-vous avec l’adresse fournie, et la lettre d’info apparaîtra comme n’importe quel autre flux dans votre lecteur, vous permettant de la classer par exemple dans « Shopping », « Veille technologique » ou « Meilleures manières de cogner des nazis ».

Kill the Newsletter (gratuit). KtN est un service vaillamment maintenu depuis des années par Leandro Fachinetti et qui permet de convertir gratuitement une newsletter en flux RSS. Entrez le nom du flux souhaité, KtN vous fournit une adresse mail à utiliser pour votre abonnement et un adresse de flux RSS correspondant. Un peu plus lourd à employer, mais fonctionne très bien et surtout ne coûte rien (même si Leandro accepte les dons et qu’ils sont vivement recommandés pour maintenir le service).

Un mot sur la rétention. Le but d’un service RSS n’est pas de réaliser une archive éternelle de tout le contenu diffusé sur Internet, donc ils comportent tous un délai de rétention : ils ne conservent que les quelques dernières semaines, ou mois, d’articles publiés. Si vous ne lisez pas vos newsletters mais que vous souhaitez pouvoir les rattraper dans un hypothétique jour futur situé quelques décennies plus tard, cette façon de procéder ne fonctionnera pas, les agrégateurs payants comme KtN ont une politique de rétention de quelques semaines au maximum. Mais est-ce un problème pour du contenu transitoire ? Si vous êtes un·e grand·e malade comme moi et que oui, vous vous jurez de lire un jour ce flux RSS âgé de neuf ans qui n’a plus rien publié depuis, il faut vous abonner effectivement avec votre adresse email, ou bien utiliser un lecteur RSS qui emploie votre espace de stockage et pas celui de l’agrégateur (typiquement iCloud). Pour ma part, en ce moment, c’est News Explorer (mais ça pourrait être Reeder avec iCloud ou NetNewsWire).

2025-12-08T00:22:58+01:00mercredi 10 décembre 2025|Geekeries|Commentaires fermés sur Trop de newsletters ? Déportez-les dans votre lecteur de flux RSS

Enfin quitter Lightroom (et c’est pas facile)

Bleeeeeh.

J’en ai marre d’Adobe et de ses pratiques prédatrices avec l’IA, de son abonnement mensuel qui ne cesse d’augmenter, de ses frais de résiliation cachés, de son interface non standard et de plus en plus bordélique. Cela fait des années que j’ai envie de me barrer, mais la dernière augmentation de tarif a fini de m’aiguillonner. Mon usage a aussi évolué : quand j’ai commencé à utiliser Lightroom il y a près de 15 ans, j’avais un « vrai » appareil photo et un smartphone pour le quotidien, rendant la différence entre la « vraie » photo et l’image souvenir très claire, mais cette frontière s’est complètement estompée au fil des ans. Or, je paie déjà pour un abonnement iCloud qui pourrait absorber les quelques 33000 images prises dans Lightroom au fil des ans.

Enfin, la photo est pour moi un loisir qui déborde parfois vers le semi-pro (parce qu’il est arrivé que mes images servent dans des contextes scientifiques), mais avec des exigences bien précises. Je ne fais pas de studio, je fais quasiment exclusivement du paysage et de l’animalier, et de l’animalier bien spécifique, en plus : des bestioles marines. Ce qui entraîne une contrainte de terrain rare (et que j’ai découvert à mes dépens) : on ne veut pas le meilleur objectif qui soit en mer, parce que le meilleur objectif qui soit est lourd comme un rocher, ce qui ne le rend absolument pas maniable dans les fjords islandais. Ça ne sert à rien de pouvoir monter à 400mm quand tu risquer de basculer par-dessus bord en étant déjà à 200 parce que la houle terrasse la classe de nature qui croyait partir pour une excursion sympa (true story). Autant avoir un objectif beaucoup moins bon sur le papier, mais qui fait le tiers du poids, et que tu peux donc manier sans risquer l’hydrocution.

Bref, tout en ayant conscience que j’allais perdre des fonctionnalités et l’écosystème de presets bien pratique que j’ai bâti au fil des ans, il était temps de fédérer tout ça dans Apple Photos, d’explorer les apps de développement d’images compatibles (ON1, Darkroom, Nitro…), de faire la paix avec les manques et de vouer Adobe aux gémonies.

Eh ben, c’est plus facile à dire qu’à faire.

Il existe une solution de transfert de bibliothèques de photos, appelée Avalanche et considérée plutôt standard dans l’industrie, qui permet de migrer en théorie réglages et tout un tas de données crées par Lightroom pour les récupérer dans la solution d’arrivée (Capture One, Luminar, dans mon cas, donc, Apple Photos). Dans les faits, je ne suis pas convaincu du résultat, mais je ne blâme pas Avalanche, je blâme Adobe et sa synchronisation cloud pourrie : même après m’avoir juré ses grands dieux que Lightroom Classic avait tout téléchargé, me balader dans la photothèque conduisait l’app à « découvrir » encore des fichiers à récupérer. En conséquence, toute tentative de conversion avec Avalanche s’est soldée par des fichiers manquants au nombre variable. Lightroom Classic et Lightroom CC ne présentent même pas un nombre d’images identiques, certaines photos sont mystérieusement absentes dans l’un ou l’autre, bref, c’est un foutoir sans nom.

Heureusement, je me suis toujours méfié d’Adobe et je n’ai jamais beaucoup investi dans les métadonnées et le catalogage offert par l’app, donc je n’avais au final pas grand-chose à perdre à tenter un export complet de ma bibliothèque sous forme de fichiers (et tant pis pour la subtilité). Cependant, une fois encore, il a fallu passer par Lightroom Classic et non CC, le premier exportant bien un catalogue contenant les 33386 images promises (mais en plantant en essayant de réaliser des aperçus, on s’en passera), le second en crachant un nombre inférieur de quelques centaines, pour quelle raison ? Who the fuck knows.

Bref : calculette en main et examen des dossiers plus tard, le compte est bon. Sauvegarde finale du catalogue exporté sur le serveur (on ne sait jamais). Résiliation de Lightroom en crachant au passage cinquante balles de frais de résiliation, parce que quand on est une entreprise avec une éthique de merde, on ne va surtout pas s’abstenir de ce genre de pratiques qui n’ont aucun fondement dans la réalité (j’imagine qu’il faut dépêcher un technicien pour débrancher le disque dur qui m’était personnellement attribué au fin fond d’un data center du Minnesota ?).

C’est maintenant à Apple Photos d’ingurgiter 700 Go d’images et de les synchroniser avec iCloud, une mission dont il sait normalement s’acquitter en 2025. Au final : si vous devez suivre le même chemin, et que vous n’avez pas trop à perdre en métadonnées, je crois que le plus sûr c’est

  • D’installer Lightroom Classic
  • D’attendre qu’il sync
  • D’exporter un catalogue contenant toute la bibliothèque.

Et de prendre ce point de départ pour import dans la solution d’arrivée.

2025-10-08T00:24:11+02:00lundi 13 octobre 2025|Geekeries|Commentaires fermés sur Enfin quitter Lightroom (et c’est pas facile)

Sublime, une app de capture plutôt que de notes

Toujours à la recherche de l’app qui fait tout bien (ça n’existe pas, on s’en reparle), j’ai testé il y a quelque temps Sublime, un outil qui a un peu attiré l’attention.

Ceci ne sera pas un test détaillé, car je ne suis pas convaincu. En son cœur, Sublime est un outil de capture pour canaliser tout ce qui inspire : image, bout de texte, site web. Ensuite, des algorithmes vous mettent ça en réseau d’eux-même pour nourrir l’inspiration et vous présenter votre contenu en réseau. L’idée de Sublime est de réaliser une app simple, agréable d’emploi, aux antipodes d’Obsidian et de sa ribambelle de plugins : 1. capturer 2. there’s no step 2.

Je peine un peu à voir la finalité – il me semble qu’on peut recréer un outil de capture aussi puissant assez simplement avec Evernote, Bear ou même Readwise ; et philosophiquement, je crois qu’il existe bel et bien un piège de la collection (Collector’s Fallacy) . Ma propre expérience est que j’ai toujours beaucoup mieux appris et retenu ce dans quoi je m’impliquais activement, qu’il s’agisse d’un texte ou d’une expérience de vie. Je préfère établir mes liens moi-même plutôt que d’avoir une app qui les fait à ma place ; il me semble que c’est la moitié du sens qu’on attribue aux choses.

Je ne suis donc pas le public pour Sublime, et je crois que l’écriture se nourrit davantage d’implication active et profonde dans ses sujets, ses personnages et ses thèmes. Mais si ce que j’en dis vous fait précisément bondir sur votre chaise en vous écriant : « MEWI, c’est exactement ce qu’il me faut », alors faites-vous plaisir :

➡️ Sublime.app

2025-10-06T06:19:29+02:00lundi 6 octobre 2025|Geekeries|Commentaires fermés sur Sublime, une app de capture plutôt que de notes

Désactiver l’IA dans votre site WordPress

L’IA c’est tabou, on en viendra tous à bout. J’ai fini par me retrousser les manches pour virer cette saloperie qui est arrivée il y a (trop) longtemps dans l’administration de mon site, c’est assez simple :

  • Télécharger le plugin Code Snippets, qui permet d’injecter de petits extraits de code dans son installation pour la modifier ponctuellement
  • Créer un extrait comportant simplement cette ligne :

add_filter( 'jetpack_ai_enabled', '__return_false' );

Adios!

2025-09-10T00:57:21+02:00jeudi 11 septembre 2025|Geekeries|Commentaires fermés sur Désactiver l’IA dans votre site WordPress
Aller en haut