Repository with sources and generator of https://larlet.fr/david/ https://larlet.fr/david/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

index.html 19KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417
  1. <!DOCTYPE html><!-- This is a valid HTML5 document. -->
  2. <!-- Screen readers, SEO, extensions and so on. -->
  3. <html lang="fr">
  4. <!-- Has to be within the first 1024 bytes, hence before the `title` element
  5. See: https://www.w3.org/TR/2012/CR-html5-20121217/document-metadata.html#charset -->
  6. <meta charset="utf-8">
  7. <!-- Why no `X-UA-Compatible` meta: https://stackoverflow.com/a/6771584 -->
  8. <!-- The viewport meta is quite crowded and we are responsible for that.
  9. See: https://codepen.io/tigt/post/meta-viewport-for-2015 -->
  10. <meta name="viewport" content="width=device-width,initial-scale=1">
  11. <!-- Required to make a valid HTML5 document. -->
  12. <title>
  13. Étiquette #lecture
  14. — David Larlet</title>
  15. <script>
  16. function toggleTheme(themeName) {
  17. document.documentElement.classList.toggle(
  18. 'forced-dark',
  19. themeName === 'dark'
  20. )
  21. document.documentElement.classList.toggle(
  22. 'forced-light',
  23. themeName === 'light'
  24. )
  25. }
  26. const selectedTheme = localStorage.getItem('theme')
  27. if (selectedTheme !== 'undefined') {
  28. toggleTheme(selectedTheme)
  29. }
  30. </script>
  31. <!-- Documented, feel free to shoot an email. -->
  32. <link rel="stylesheet" href="/static/david/css/style_2024-03-07.css">
  33. <!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. -->
  34. <link rel="preload"
  35. href="/static/david/css/fonts/century_supra_ot_a_regular.woff2"
  36. as="font"
  37. type="font/woff2"
  38. media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)"
  39. crossorigin>
  40. <link rel="preload"
  41. href="/static/david/css/fonts/century_supra_ot_a_bold.woff2"
  42. as="font"
  43. type="font/woff2"
  44. media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)"
  45. crossorigin>
  46. <link rel="preload"
  47. href="/static/david/css/fonts/century_supra_ot_a_italic.woff2"
  48. as="font"
  49. type="font/woff2"
  50. media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)"
  51. crossorigin>
  52. <link rel="preload"
  53. href="/static/david/css/fonts/century_supra_ot_b_regular.woff2"
  54. as="font"
  55. type="font/woff2"
  56. media="(prefers-color-scheme: dark)"
  57. crossorigin>
  58. <link rel="preload"
  59. href="/static/david/css/fonts/century_supra_ot_b_bold.woff2"
  60. as="font"
  61. type="font/woff2"
  62. media="(prefers-color-scheme: dark)"
  63. crossorigin>
  64. <link rel="preload"
  65. href="/static/david/css/fonts/century_supra_ot_b_italic.woff2"
  66. as="font"
  67. type="font/woff2"
  68. media="(prefers-color-scheme: dark)"
  69. crossorigin>
  70. <meta name="description" content="Publications relatives au tag #lecture">
  71. <!-- That good ol' feed, subscribe :). -->
  72. <link rel="alternate"
  73. type="application/atom+xml"
  74. title="Feed"
  75. href="/david/log/">
  76. <!-- Generated from https://realfavicongenerator.net/ such a mess. -->
  77. <link rel="apple-touch-icon"
  78. sizes="180x180"
  79. href="/static/david/icons2/apple-touch-icon.png">
  80. <link rel="icon"
  81. type="image/png"
  82. sizes="32x32"
  83. href="/static/david/icons2/favicon-32x32.png">
  84. <link rel="icon"
  85. type="image/png"
  86. sizes="16x16"
  87. href="/static/david/icons2/favicon-16x16.png">
  88. <link rel="manifest" href="/static/david/icons2/site.webmanifest">
  89. <link rel="mask-icon"
  90. href="/static/david/icons2/safari-pinned-tab.svg"
  91. color="#07486c">
  92. <link rel="shortcut icon" href="/static/david/icons2/favicon.ico">
  93. <meta name="msapplication-TileColor" content="#f7f7f7">
  94. <meta name="msapplication-config"
  95. content="/static/david/icons2/browserconfig.xml">
  96. <meta name="theme-color"
  97. content="#f7f7f7"
  98. media="(prefers-color-scheme: light)">
  99. <meta name="theme-color"
  100. content="#272727"
  101. media="(prefers-color-scheme: dark)">
  102. <!-- Is that even respected? Retrospectively? What a shAItshow…
  103. https://neil-clarke.com/block-the-bots-that-feed-ai-models-by-scraping-your-website/ -->
  104. <meta name="robots" content="noai, noimageai">
  105. <style type="text/css">
  106. details[open] summary {
  107. display: none;
  108. }
  109. </style>
  110. <body data-instant-intensity="viewport-all">
  111. <article>
  112. <header>
  113. <hgroup>
  114. <h1>#lecture</h1>
  115. <p>Publications relatives à cette étiquette</p>
  116. </hgroup>
  117. </header>
  118. <nav>
  119. <p>
  120. <a href="/david/" title="Aller à l’accueil">
  121. Accueil</a>
  122. <a rel="tags"
  123. href="/david/2024/#tags"
  124. title="Liste de toutes les étiquettes">
  125. Étiquettes</a>
  126. <a href="/david/recherche/" title="Aller à la page de recherche" rel="search" data-no-instant>Recherche</a>
  127. <a href="/david/log/" title="Accès au flux RSS">Suivre</a>
  128. </p>
  129. </nav>
  130. <h2>
  131. <a href="/david/2024/02/17/" title="Lien permanent vers cet article">Quotidien</a> <time datetime="2024-02-17">17 février 2024</time>
  132. </h2>
  133. <p>S’il y a une chose qui a changé depuis que j’ai repris une écriture quotidienne c’est de ne presque plus regarder de films /&nbsp;séries.</p>
  134. <p>Vu la qualité des vidéos que <q lang="fr_ca">j’écoutais</q>, ça n’est vraiment pas une mauvaise&nbsp;chose.</p>
  135. <a href="#hr-74" title="Lien vers cette section de la page"><hr id="hr-74" /></a>
  136. <p>Outil du jour&nbsp;: <a data-link-domain="whocanuse.com" href="https://www.whocanuse.com">who can use</a>.</p>
  137. <p>Voir en direct la perception des personnes sous forme de boutons pour des couleurs données permet de lâcher prise et de se concentrer sur la lisibilité. Savoir que seules 68% des personnes ont la capacité à voir ce que je vois (peut-être) donne un autre sens à&nbsp;l’accessibilité.</p>
  138. <a href="#hr-75" title="Lien vers cette section de la page"><hr id="hr-75" /></a>
  139. <p>Découverte d’un nouveau <a data-link-domain="montreal.ca" href="https://montreal.ca/lieux/parc-nature-du-cap-saint-jacques">terrain de jeu en hiver</a>.</p>
  140. <p>Le nombre d’hivers où il sera encore possible de skier à Montréal sont comptés. Il fait probablement partie de la dernière génération à pouvoir le faire. Aujourd’hui, une dizaine de kilomètres à skis-de-fond-de-location-qui-ne-glissent-pas&nbsp;(sic).</p>
  141. <a href="#hr-76" title="Lien vers cette section de la page"><hr id="hr-76" /></a>
  142. <blockquote lang="en">
  143. <p>Most “news” is designed to trick us into giving our fucks to things that don’t deserve them or where they have no&nbsp;value.</p>
  144. <p><cite><em><a data-link-domain="patrickrhone.net" href="https://www.patrickrhone.net/the-fucks-and-how-we-give-them-a-manifesto/" hreflang="en"
  145. title="Consultation de l’article (anglais)">The Fucks and How We Give Them (A Manifesto)</a>
  146. <a href="/david/cache/2024/d890da6c22300e52daec05e9c5888784/" hreflang="en"
  147. data-tippy data-description="The older I get, the fewer fucks I’m willing to give."
  148. data-source="https://www.patrickrhone.net/the-fucks-and-how-we-give-them-a-manifesto/"
  149. data-date="2024-02-18"
  150. data-favicon="https://www.patrickrhone.net/favicon.ico"
  151. data-domain="patrickrhone.net"
  152. ><svg xmlns="http://www.w3.org/2000/svg"
  153. width="24" height="24" viewBox="0 0 24 24" fill="none"
  154. stroke="currentColor" stroke-width="2" stroke-linecap="square"
  155. stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle>
  156. <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path>
  157. <line x1="12" y1="17" x2="12.01" y2="17"></line>
  158. </svg>
  159. <span class="sr-only">[archive]</span></a></em></cite></p>
  160. </blockquote>
  161. <nav>
  162. <p>
  163. <a href="/david/2024/ecriture/"
  164. title="Liste de tous les articles 2024 associés à cette étiquette"
  165. rel="tag">#écriture</a>
  166. <a href="/david/2024/lecture/"
  167. title="Liste de tous les articles 2024 associés à cette étiquette"
  168. rel="tag">#lecture</a>
  169. <a href="/david/2024/solastalgia/"
  170. title="Liste de tous les articles 2024 associés à cette étiquette"
  171. rel="tag">#solastalgia</a>
  172. <a href="/david/2024/#tags" title="Liste de toutes les étiquettes 2024">tous ?</a>
  173. </p>
  174. </nav>
  175. <h2>
  176. <a href="/david/2024/02/06/" title="Lien permanent vers cet article">Anneau</a> <time datetime="2024-02-06">6 février 2024</time>
  177. </h2>
  178. <blockquote>
  179. <p>«&nbsp;J’aurais voulu que cela n’ait pas à arriver de mon temps&nbsp;», dit Frodo.<br />
  180. «&nbsp;Moi aussi, dit Gandalf, et il en va de même pour tout ceux qui vivent en de pareils temps. Mais il ne leur appartient pas de décider. Tout ce qu’il nous appartient de décider, c’est <mark>ce que nous comptons faire du temps qui nous est imparti.</mark>&nbsp;»</p>
  181. <p><cite><em>Le seigneur des anneaux</em>, J.R.R. Tolkien</cite></p>
  182. </blockquote>
  183. <p>Me voilà reparti pour un tour au départ <strong>du</strong> Comté, cette fois avec la nouvelle traduction de Daniel Lauzon. Ça pique un peu au niveau des noms, forcément.</p>
  184. <p>Je vais moins publier ces prochains&nbsp;jours&nbsp;😇.</p>
  185. <blockquote>
  186. <p><em>Tout ce qui est or ne brille pas,</em><br />
  187. <em>Ne sont pas perdus tout ceux qui vagabondent&#8239;;</em><br />
  188. <em>Ce qui est vieux mais fort ne se flétrit pas,</em><br />
  189. <em>Le gel n’atteint pas les racines&nbsp;profondes.</em></p>
  190. <p><cite><em>Ibid.</em></cite></p>
  191. </blockquote>
  192. <a href="#hr-68" title="Lien vers cette section de la page"><hr id="hr-68" /></a>
  193. <blockquote lang="en">
  194. <p>The webring is a directory of neighbor websites and&nbsp;portfolios.</p>
  195. <p>This is an attempt to <strong>inspire artists and developers to create and maintain their own personal website,</strong> and share traffic organically among each other. The ring’s aim is to promote the creation of hand crafted diaries, wikis, bookmarks and&nbsp;portfolios.</p>
  196. <p><cite><em><a data-link-domain="wiki.xxiivv.com" href="https://wiki.xxiivv.com/site/webring.html" hreflang="en"
  197. title="Consultation de l’article (anglais)">XXIIVV - webring</a>
  198. <a href="/david/cache/2024/842e88c947068b81c9b9d6218c600dd2/" hreflang="en"
  199. data-tippy data-description="The Webring, like we are in the 2000s."
  200. data-source="https://wiki.xxiivv.com/site/webring.html"
  201. data-date="2024-02-06"
  202. data-favicon="https://wiki.xxiivv.com/media/services/icon.png"
  203. data-domain="wiki.xxiivv.com"
  204. ><svg xmlns="http://www.w3.org/2000/svg"
  205. width="24" height="24" viewBox="0 0 24 24" fill="none"
  206. stroke="currentColor" stroke-width="2" stroke-linecap="square"
  207. stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle>
  208. <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path>
  209. <line x1="12" y1="17" x2="12.01" y2="17"></line>
  210. </svg>
  211. <span class="sr-only">[archive]</span></a></em></cite></p>
  212. </blockquote>
  213. <p>C’est marrant de voir ressurgir d’anciennes pratiques. Il y a un côté vintage, ou reprise d’une ancienne chanson populaire. Avec ce questionnement récurrent&nbsp;: <q>N’a-t-on vraiment rien inventé de mieux depuis&#8239;?</q> (Ah si, maintenant il faut avoir un compte Microsauron Github pour accéder à&nbsp;l’anneau.)</p>
  214. <p><em>Écrit-il en relisant pour la x-ième fois le même&nbsp;livre.</em></p>
  215. <blockquote lang="en">
  216. <p>With roots in the world of fashion, there exists a cyclical principle suggesting that every two decades, previously popular trends “every 20&nbsp;years or so the trends that were once popular will begin to be on the forefront again.” What’s old is new again. However, <mark>these recurring trends aren’t just rip-offs.</mark> They are remixed and reinterpreted through the lens of a new&nbsp;generation.</p>
  217. <p>We are, perhaps, in a 20&nbsp;year resurgence for the indie web and&nbsp;blogging.</p>
  218. <p><cite><em><a data-link-domain="thehistoryoftheweb.com" href="https://thehistoryoftheweb.com/weve-been-waiting-20-years-for-this/" hreflang="en"
  219. title="Consultation de l’article (anglais)">We’ve been waiting 20&nbsp;years for this</a>
  220. <a href="/david/cache/2024/155c5458fcbfb1450f19bc0d268c871e/" hreflang="en"
  221. data-tippy data-description="The indie web may be back. But if is, it is likely in a way we least expect."
  222. data-source="https://thehistoryoftheweb.com/weve-been-waiting-20-years-for-this/"
  223. data-date="2024-02-06"
  224. data-favicon="https://ik.imagekit.io/aoi3fgebjgr/wp-content/uploads/2017/09/cropped-thotw-logo-square-1-32x32.jpg"
  225. data-domain="thehistoryoftheweb.com"
  226. ><svg xmlns="http://www.w3.org/2000/svg"
  227. width="24" height="24" viewBox="0 0 24 24" fill="none"
  228. stroke="currentColor" stroke-width="2" stroke-linecap="square"
  229. stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle>
  230. <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path>
  231. <line x1="12" y1="17" x2="12.01" y2="17"></line>
  232. </svg>
  233. <span class="sr-only">[archive]</span></a></em></cite></p>
  234. </blockquote>
  235. <nav>
  236. <p>
  237. <a href="/david/2024/communaute/"
  238. title="Liste de tous les articles 2024 associés à cette étiquette"
  239. rel="tag">#communauté</a>
  240. <a href="/david/2024/equipe/"
  241. title="Liste de tous les articles 2024 associés à cette étiquette"
  242. rel="tag">#équipe</a>
  243. <a href="/david/2024/lecture/"
  244. title="Liste de tous les articles 2024 associés à cette étiquette"
  245. rel="tag">#lecture</a>
  246. <a href="/david/2024/#tags" title="Liste de toutes les étiquettes 2024">tous ?</a>
  247. </p>
  248. </nav>
  249. <form action="/david/recherche/" method="get">
  250. <fieldset>
  251. <legend>Recherche</legend>
  252. <label for="input-search">Termes de votre recherche :</label>
  253. <input id="input-search" type="search" name="s" aria-describedby="indexation-infos" required>
  254. <input type="submit" value="Chercher">
  255. <p id="indexation-infos">
  256. <small>
  257. Seuls les contenus de ces 8 dernières années sont indexés.
  258. </small>
  259. </p>
  260. </fieldset>
  261. </form>
  262. <aside>
  263. <theme-toggle></theme-toggle>
  264. </aside>
  265. </article>
  266. <hr>
  267. <footer>
  268. <p>
  269. <a href="/david/" title="Aller à l’accueil">Accueil</a>
  270. <a href="/david/log/" title="Accès au flux RSS">Suivre</a>
  271. <a href="http://larlet.com"
  272. title="Go to my English profile"
  273. data-instant>Pro</a>
  274. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel">Email</a>
  275. <abbr title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340">Légal</abbr>
  276. </p>
  277. <template id="theme-selector">
  278. <form>
  279. <style type="text/css">
  280. fieldset div {
  281. text-align: center;
  282. }
  283. </style>
  284. <fieldset>
  285. <legend>Thème</legend>
  286. <div>
  287. <label>
  288. <input type="radio" value="auto" name="chosen-color-scheme" checked>
  289. Auto
  290. </label>
  291. <label>
  292. <input type="radio" value="dark" name="chosen-color-scheme">
  293. Foncé
  294. </label>
  295. <label>
  296. <input type="radio" value="light" name="chosen-color-scheme">
  297. Clair
  298. </label>
  299. </div>
  300. </fieldset>
  301. </form>
  302. </template>
  303. </footer>
  304. <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
  305. <script>
  306. class ThemeToggle extends HTMLElement {
  307. constructor() {
  308. super()
  309. const themeSelectorTemplate = document.querySelector('#theme-selector')
  310. const form = themeSelectorTemplate.content.firstElementChild
  311. this.attachShadow({ mode: 'open' })
  312. this.shadowRoot.appendChild(form.cloneNode(true))
  313. }
  314. connectedCallback() {
  315. const form = this.shadowRoot.querySelector('form')
  316. form.addEventListener('change', (e) => {
  317. const chosenColorScheme = e.target.value
  318. localStorage.setItem('theme', chosenColorScheme)
  319. toggleTheme(chosenColorScheme)
  320. })
  321. const selectedTheme = localStorage.getItem('theme')
  322. if (selectedTheme && selectedTheme !== 'undefined') {
  323. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  324. }
  325. }
  326. }
  327. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  328. window.addEventListener('load', () => {
  329. let colorsLayer = undefined
  330. let hasDarkRules = false
  331. for (const styleSheet of Array.from(document.styleSheets)) {
  332. let mediaRules = []
  333. for (const layerRule of styleSheet.cssRules) {
  334. if (!(layerRule instanceof CSSLayerBlockRule)) {
  335. continue
  336. }
  337. if (layerRule.name === 'colors') {
  338. colorsLayer = layerRule
  339. }
  340. for (const cssRule of layerRule.cssRules) {
  341. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  342. continue
  343. }
  344. // WARNING: Safari does not have/supports `conditionText`.
  345. if (cssRule.conditionText) {
  346. if (cssRule.conditionText !== prefersColorSchemeDark) {
  347. continue
  348. }
  349. } else {
  350. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  351. continue
  352. }
  353. }
  354. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  355. }
  356. }
  357. // WARNING: do not try to insert a Rule to a styleSheet you are
  358. // currently iterating on, otherwise the browser will be stuck
  359. // in a infinite loop…
  360. for (const mediaRule of mediaRules) {
  361. // Safari requires the `0` second parameter (even if default).
  362. colorsLayer.insertRule(mediaRule.cssText, 0)
  363. hasDarkRules = true
  364. }
  365. }
  366. if (hasDarkRules) {
  367. if ('customElements' in window && !customElements.get('theme-toggle')) {
  368. customElements.define('theme-toggle', ThemeToggle)
  369. }
  370. }
  371. })
  372. </script>
  373. </body>
  374. </html>