Repository with sources and generator of https://larlet.fr/david/ https://larlet.fr/david/
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

index.html 17KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425
  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. Rédaction
  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-09.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="Je suis curieux de savoir comment tu rédiges ces textes ! Tu prends des notes pendant tes excursions sur lesquelles tu te bases ou tu écris tout à chaud une fois chez toi ? Ou tu écris quelques jours après sur des souvenirs qui s’effritent déjà mais ça n’a pas d’importance ? 🙂">
  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. <!-- To get attribution when linking on mastodon. -->
  106. <meta name="fediverse:creator" content="@david@larlet.fr">
  107. <style type="text/css">
  108. .tippy-content {
  109. min-width: 280px;
  110. padding: .5rem;
  111. font-size: calc(var(--fluid-0) * 0.8);
  112. font-family: var(--labor-font);
  113. letter-spacing: initial;
  114. text-align: left;
  115. }
  116. .tippy-content h3 {
  117. margin-top: 0;
  118. }
  119. .tippy-content h3 img {
  120. max-width: 2rem;
  121. max-height: 2rem;
  122. display: inline-block;
  123. }
  124. .tippy-content .tippy-links {
  125. display: flex;
  126. justify-content: space-around;
  127. }
  128. .tippy-content a {
  129. padding: .4rem;
  130. color: #F06048;
  131. }
  132. </style>
  133. <body data-instant-intensity="viewport-all">
  134. <article>
  135. <header>
  136. <hgroup>
  137. <h1>Rédaction</h1>
  138. <p>Le <time datetime="2024-02-27">27 février 2024</time></p>
  139. </hgroup>
  140. </header>
  141. <nav>
  142. <p>
  143. <a rel="prev"
  144. href="/david/2024/02/26/"
  145. title="Publication précédente : Galaxie">← Précédent</a> •
  146. <a href="/david/" title="Aller à l’accueil" rel="up">Accueil</a>
  147. <a href="/david/recherche/"
  148. title="Aller à la page de recherche"
  149. rel="search" data-no-instant>Recherche</a>
  150. • <a rel="next"
  151. href="/david/2024/02/28/"
  152. title="Publication suivante : Dérèglement">Suivant →</a>
  153. </p>
  154. </nav>
  155. <blockquote>
  156. <p>Je suis curieux de savoir comment tu rédiges ces textes&#8239;! Tu prends des notes pendant tes excursions sur lesquelles tu te bases ou tu écris tout à chaud une fois chez toi&#8239;? Ou tu écris quelques jours après sur des souvenirs qui s’effritent déjà mais ça n’a pas&nbsp;d’importance&#8239;?&nbsp;🙂</p>
  157. <p><cite><em>Question de <a data-link-domain="social.bim.land" href="https://social.bim.land/@mlbiche">@mlbiche</a> sur&nbsp;masto</em></cite></p>
  158. </blockquote>
  159. <p>Il m’arrive de prendre des notes lors de sorties plus contemplatives (et moins risquées pour mes doigts&#8239;!) mais c’est assez rare. Je n’arrive pas à écrire une histoire en étant en train de la vivre, c’est comme de faire des vidéos, j’ai l’impression de trop me mettre en scène sinon. Lorsque le récit influe sur le déroulé, ça brise quelque chose au niveau de son authenticité et de mon&nbsp;ressenti.</p>
  160. <p>En général, je rédige cela à la maison, à chaud. Une fois que toutes les affaires ont été mises à sécher. Avec parfois des bribes qui s’agencent lors du long retour en voiture. Si j’attends plus de 24h, ce ne sont pas tant les souvenirs qui s’effritent que la motivation à les partager qui s’envole, ça m’est déjà arrivé plusieurs&nbsp;fois.</p>
  161. <a href="#hr-91" title="Lien vers cette section de la page"><hr id="hr-91" /></a>
  162. <blockquote>
  163. <p>Nos vies sont faites de métal incandescent.<br />
  164. Tant qu’elles rougeoient, nous en restons les forgerons.<br />
  165. Créateurs et inventeurs de&nbsp;nous-mêmes.</p>
  166. <p>Mais comme le métal du forgeron qui refroidit, comme la coulée de lave qui atteint l’extrémité de son expansion, nos vies se figent.<br />
  167. Ce n’est qu’à cet instant précis que l’on peut dire qui on a été. quand la coulée de la vie a pris sa forme&nbsp;définitive.</p>
  168. <p>D’ici je la contemple, cette vie. Ma vie.<br />
  169. Et je sais enfin qui je&nbsp;suis…</p>
  170. <p><cite><em>La saga de Grimr</em>, Jérémie&nbsp;Moreau</cite></p>
  171. </blockquote>
  172. <p>Rétrospective sous forme de <a data-link-domain="ut7.fr" href="https://www.ut7.fr/blog/2015/11/18/animer-vos-retrospectives-avec-le-conseil.html" hreflang="en"
  173. title="Consultation de l’article (anglais)">Conseil</a>
  174. <a href="/david/cache/2024/f3974ec778551dd1c3134c8094c3372b/" hreflang="en"
  175. data-tippy data-description="Un conseil, c’est une réunion en cercle où les personnes se parlent et font l’expérience individuelle de ce que c’est que d’appartenir au groupe."
  176. data-source="https://www.ut7.fr/blog/2015/11/18/animer-vos-retrospectives-avec-le-conseil.html"
  177. data-date="2024-02-27"
  178. data-favicon="https://www.ut7.fr/favicon-192x192.png"
  179. data-domain="ut7.fr"
  180. ><svg xmlns="http://www.w3.org/2000/svg"
  181. width="24" height="24" viewBox="0 0 24 24" fill="none"
  182. stroke="currentColor" stroke-width="2" stroke-linecap="square"
  183. stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle>
  184. <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path>
  185. <line x1="12" y1="17" x2="12.01" y2="17"></line>
  186. </svg>
  187. <span class="sr-only">[archive]</span></a> aujourd’hui. Je suis de plus en plus tenté d’introduire une 6<sup>e</sup> étape qui serait autour du pardon. <q>Je te pardonne pour …, cela m’a permis d’apprendre … </q>. J’ai l’intuition que cela pourrait ajouter quelque chose pour un groupe relativement intime qui s’inscrit dans la&nbsp;durée.</p>
  188. <nav>
  189. <p>
  190. <a href="/david/2024/ecriture/"
  191. title="Liste de tous les articles 2024 associés à cette étiquette"
  192. rel="tag">#écriture</a>
  193. <a href="/david/2024/processus/"
  194. title="Liste de tous les articles 2024 associés à cette étiquette"
  195. rel="tag">#processus</a>
  196. <a href="/david/2024/psychologie/"
  197. title="Liste de tous les articles 2024 associés à cette étiquette"
  198. rel="tag">#psychologie</a>
  199. <a href="/david/2024/#tags" title="Liste de toutes les étiquettes 2024">tous ?</a>
  200. </p>
  201. </nav>
  202. <nav>
  203. <p>
  204. <a rel="prev"
  205. href="/david/2024/02/26/"
  206. title="Publication précédente : Galaxie">← Précédent</a> •
  207. <a href="/david/2024/" title="Liste des publications récentes">↑ En 2024</a>
  208. • <a rel="next"
  209. href="/david/2024/02/28/"
  210. title="Publication suivante : Dérèglement">Suivant →</a>
  211. </p>
  212. </nav>
  213. <form action="/david/recherche/" method="get">
  214. <fieldset>
  215. <legend>Recherche</legend>
  216. <label for="input-search">Termes de votre recherche :</label>
  217. <input id="input-search" type="search" name="s" aria-describedby="indexation-infos" required>
  218. <input type="submit" value="Chercher">
  219. <p id="indexation-infos">
  220. <small>
  221. Seuls les contenus de ces 8 dernières années sont indexés.
  222. </small>
  223. </p>
  224. </fieldset>
  225. </form>
  226. <aside>
  227. <theme-toggle></theme-toggle>
  228. </aside>
  229. </article>
  230. <hr>
  231. <footer>
  232. <p>
  233. <a href="/david/" title="Aller à l’accueil">Accueil</a>
  234. <a href="/david/log/" title="Accès au flux RSS">Suivre</a>
  235. <a href="http://larlet.com"
  236. title="Go to my English profile"
  237. data-instant>Pro</a>
  238. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel">Email</a>
  239. <abbr title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340">Légal</abbr>
  240. </p>
  241. <template id="theme-selector">
  242. <form>
  243. <style type="text/css">
  244. fieldset div {
  245. text-align: center;
  246. }
  247. </style>
  248. <fieldset>
  249. <legend>Thème</legend>
  250. <div>
  251. <label>
  252. <input type="radio" value="auto" name="chosen-color-scheme" checked>
  253. Auto
  254. </label>
  255. <label>
  256. <input type="radio" value="dark" name="chosen-color-scheme">
  257. Foncé
  258. </label>
  259. <label>
  260. <input type="radio" value="light" name="chosen-color-scheme">
  261. Clair
  262. </label>
  263. </div>
  264. </fieldset>
  265. </form>
  266. </template>
  267. </footer>
  268. <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
  269. <script>
  270. class ThemeToggle extends HTMLElement {
  271. constructor() {
  272. super()
  273. const themeSelectorTemplate = document.querySelector('#theme-selector')
  274. const form = themeSelectorTemplate.content.firstElementChild
  275. this.attachShadow({ mode: 'open' })
  276. this.shadowRoot.appendChild(form.cloneNode(true))
  277. }
  278. connectedCallback() {
  279. const form = this.shadowRoot.querySelector('form')
  280. form.addEventListener('change', (e) => {
  281. const chosenColorScheme = e.target.value
  282. localStorage.setItem('theme', chosenColorScheme)
  283. toggleTheme(chosenColorScheme)
  284. })
  285. const selectedTheme = localStorage.getItem('theme')
  286. if (selectedTheme && selectedTheme !== 'undefined') {
  287. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  288. }
  289. }
  290. }
  291. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  292. window.addEventListener('load', () => {
  293. let colorsLayer = undefined
  294. let hasDarkRules = false
  295. for (const styleSheet of Array.from(document.styleSheets)) {
  296. let mediaRules = []
  297. for (const layerRule of styleSheet.cssRules) {
  298. if (!(layerRule instanceof CSSLayerBlockRule)) {
  299. continue
  300. }
  301. if (layerRule.name === 'colors') {
  302. colorsLayer = layerRule
  303. }
  304. for (const cssRule of layerRule.cssRules) {
  305. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  306. continue
  307. }
  308. // WARNING: Safari does not have/supports `conditionText`.
  309. if (cssRule.conditionText) {
  310. if (cssRule.conditionText !== prefersColorSchemeDark) {
  311. continue
  312. }
  313. } else {
  314. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  315. continue
  316. }
  317. }
  318. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  319. }
  320. }
  321. // WARNING: do not try to insert a Rule to a styleSheet you are
  322. // currently iterating on, otherwise the browser will be stuck
  323. // in a infinite loop…
  324. for (const mediaRule of mediaRules) {
  325. // Safari requires the `0` second parameter (even if default).
  326. colorsLayer.insertRule(mediaRule.cssText, 0)
  327. hasDarkRules = true
  328. }
  329. }
  330. if (hasDarkRules) {
  331. if ('customElements' in window && !customElements.get('theme-toggle')) {
  332. customElements.define('theme-toggle', ThemeToggle)
  333. }
  334. }
  335. })
  336. </script>
  337. <script src="/static/david/js/popper-2.11.8.min.js"></script>
  338. <script src="/static/david/js/tippy-bundle-6.3.7.umd.min.js"></script>
  339. <script>
  340. tippy('[data-tippy]', {
  341. content(reference) {
  342. reference.addEventListener('click', (e) => e.preventDefault())
  343. return `
  344. <h3 lang="fr">
  345. <img src="${reference.dataset.favicon}" loading="lazy">
  346. <a href="${reference.dataset.source}"
  347. >Article sur ${reference.dataset.domain}</a></h3>
  348. <p lang="${reference.hreflang}"><em>${reference.dataset.description}</em></p>
  349. <div class="tippy-links" lang="fr">
  350. <a href="${reference.href}">Archive au ${reference.dataset.date}</a>
  351. </div>
  352. `
  353. },
  354. allowHTML: true,
  355. interactive: true,
  356. delay: [150, 700],
  357. hideOnClick: false
  358. })
  359. </script>
  360. <script type="module">
  361. import { annotate } from '/static/david/js/rough-notation-0.5.1.esm.min.js'
  362. const markObserver = new IntersectionObserver((entries, observer) => {
  363. const computedStyle = getComputedStyle(document.documentElement)
  364. const markBackground = computedStyle.getPropertyValue('--mark-background')
  365. for (const entry of entries) {
  366. if (entry.intersectionRatio === 0) continue
  367. const markElement = entry.target
  368. markElement.style.backgroundColor = 'inherit'
  369. const annotation = annotate(
  370. markElement, {
  371. type: 'highlight',
  372. multiline: true,
  373. color: markBackground,
  374. // animate: !window.matchMedia('(prefers-reduced-motion: reduce)').matches
  375. animate: false
  376. }
  377. )
  378. annotation.show()
  379. observer.unobserve(markElement)
  380. }
  381. }, {threshold: 1.0})
  382. for (const markElement of document.querySelectorAll('mark')) {
  383. markObserver.observe(markElement)
  384. }
  385. </script>
  386. </body>
  387. </html>