@cogenta/starters 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (371) hide show
  1. package/dist/blueprints/assets/photos/association/coat-bank.jpg +0 -0
  2. package/dist/blueprints/assets/photos/association/food-bank.jpg +0 -0
  3. package/dist/blueprints/assets/photos/association/garden-corner.jpg +0 -0
  4. package/dist/blueprints/assets/photos/association/garden-planting.jpg +0 -0
  5. package/dist/blueprints/assets/photos/association/hall.jpg +0 -0
  6. package/dist/blueprints/assets/photos/association/hero.jpg +0 -0
  7. package/dist/blueprints/assets/photos/association/homework-club.jpg +0 -0
  8. package/dist/blueprints/assets/photos/association/orientation.jpg +0 -0
  9. package/dist/blueprints/assets/photos/association/partner-fr-college.png +0 -0
  10. package/dist/blueprints/assets/photos/association/partner-fr-delcourt.png +0 -0
  11. package/dist/blueprints/assets/photos/association/partner-fr-fondation.png +0 -0
  12. package/dist/blueprints/assets/photos/association/partner-fr-habitat.png +0 -0
  13. package/dist/blueprints/assets/photos/association/partner-fr-mairie.png +0 -0
  14. package/dist/blueprints/assets/photos/association/partner-fr-pharmacie.png +0 -0
  15. package/dist/blueprints/assets/photos/association/supper.jpg +0 -0
  16. package/dist/blueprints/assets/photos/blog/desk-setup.jpg +0 -0
  17. package/dist/blueprints/assets/photos/blog/library.jpg +0 -0
  18. package/dist/blueprints/assets/photos/blog/notebook-and-coffee.jpg +0 -0
  19. package/dist/blueprints/assets/photos/blog/notebooks.jpg +0 -0
  20. package/dist/blueprints/assets/photos/blog/platform.jpg +0 -0
  21. package/dist/blueprints/assets/photos/blog/pour-over.jpg +0 -0
  22. package/dist/blueprints/assets/photos/blog/typing.jpg +0 -0
  23. package/dist/blueprints/assets/photos/documentation/delivery-flow-en.png +0 -0
  24. package/dist/blueprints/assets/photos/documentation/delivery-flow-fr.png +0 -0
  25. package/dist/blueprints/assets/photos/magazine/allotments.jpg +0 -0
  26. package/dist/blueprints/assets/photos/magazine/archive-stacks.jpg +0 -0
  27. package/dist/blueprints/assets/photos/magazine/baguettes.jpg +0 -0
  28. package/dist/blueprints/assets/photos/magazine/dining-room.jpg +0 -0
  29. package/dist/blueprints/assets/photos/magazine/empty-tram-stop.jpg +0 -0
  30. package/dist/blueprints/assets/photos/magazine/gallery.jpg +0 -0
  31. package/dist/blueprints/assets/photos/magazine/office-block-dusk.jpg +0 -0
  32. package/dist/blueprints/assets/photos/magazine/reading-room.jpg +0 -0
  33. package/dist/blueprints/assets/photos/magazine/reception-hall.jpg +0 -0
  34. package/dist/blueprints/assets/photos/magazine/theatre.jpg +0 -0
  35. package/dist/blueprints/assets/photos/magazine/town-hall.jpg +0 -0
  36. package/dist/blueprints/assets/photos/magazine/tram-stop.jpg +0 -0
  37. package/dist/blueprints/assets/photos/portfolio/coast-boats.jpg +0 -0
  38. package/dist/blueprints/assets/photos/portfolio/coast-cover.jpg +0 -0
  39. package/dist/blueprints/assets/photos/portfolio/coast-ridge.jpg +0 -0
  40. package/dist/blueprints/assets/photos/portfolio/coast-water.jpg +0 -0
  41. package/dist/blueprints/assets/photos/portfolio/forest-beech.jpg +0 -0
  42. package/dist/blueprints/assets/photos/portfolio/forest-birch.jpg +0 -0
  43. package/dist/blueprints/assets/photos/portfolio/forest-branches.jpg +0 -0
  44. package/dist/blueprints/assets/photos/portfolio/forest-cover.jpg +0 -0
  45. package/dist/blueprints/assets/photos/portfolio/glacier-cave.jpg +0 -0
  46. package/dist/blueprints/assets/photos/portfolio/glacier-cover.jpg +0 -0
  47. package/dist/blueprints/assets/photos/portfolio/glacier-melt.jpg +0 -0
  48. package/dist/blueprints/assets/photos/portfolio/glacier-tongue.jpg +0 -0
  49. package/dist/blueprints/assets/photos/portfolio/lagoon-cover.jpg +0 -0
  50. package/dist/blueprints/assets/photos/portfolio/lagoon-egret.jpg +0 -0
  51. package/dist/blueprints/assets/photos/portfolio/lagoon-shore.jpg +0 -0
  52. package/dist/blueprints/assets/photos/portfolio/lagoon-storm.jpg +0 -0
  53. package/dist/blueprints/assets/photos/portfolio/port-cover.jpg +0 -0
  54. package/dist/blueprints/assets/photos/portfolio/port-dusk.jpg +0 -0
  55. package/dist/blueprints/assets/photos/portfolio/port-marina.jpg +0 -0
  56. package/dist/blueprints/assets/photos/portfolio/port-quay.jpg +0 -0
  57. package/dist/blueprints/assets/photos/portfolio/towers-cover.jpg +0 -0
  58. package/dist/blueprints/assets/photos/portfolio/towers-green.jpg +0 -0
  59. package/dist/blueprints/assets/photos/portfolio/towers-single.jpg +0 -0
  60. package/dist/blueprints/assets/photos/portfolio/towers-valley.jpg +0 -0
  61. package/dist/blueprints/assets/photos/portfolio/vines-cover.jpg +0 -0
  62. package/dist/blueprints/assets/photos/portfolio/vines-grapes.jpg +0 -0
  63. package/dist/blueprints/assets/photos/portfolio/vines-shed.jpg +0 -0
  64. package/dist/blueprints/assets/photos/portfolio/vines-tree.jpg +0 -0
  65. package/dist/blueprints/assets/photos/restaurant/beetroot-carpaccio.jpg +0 -0
  66. package/dist/blueprints/assets/photos/restaurant/chocolate-tart.jpg +0 -0
  67. package/dist/blueprints/assets/photos/restaurant/cod-vin-jaune.jpg +0 -0
  68. package/dist/blueprints/assets/photos/restaurant/duck-confit.jpg +0 -0
  69. package/dist/blueprints/assets/photos/restaurant/grilled-octopus.jpg +0 -0
  70. package/dist/blueprints/assets/photos/restaurant/hero.jpg +0 -0
  71. package/dist/blueprints/assets/photos/restaurant/market-stall.jpg +0 -0
  72. package/dist/blueprints/assets/photos/restaurant/mushroom-risotto.jpg +0 -0
  73. package/dist/blueprints/assets/photos/restaurant/pike-quenelle.jpg +0 -0
  74. package/dist/blueprints/assets/photos/restaurant/poached-pear.jpg +0 -0
  75. package/dist/blueprints/assets/photos/restaurant/praline-cake.jpg +0 -0
  76. package/dist/blueprints/assets/photos/restaurant/pumpkin-soup.jpg +0 -0
  77. package/dist/blueprints/assets/photos/restaurant/street-burdeau.jpg +0 -0
  78. package/dist/blueprints/assets/photos/saas/api-webhooks-en.png +0 -0
  79. package/dist/blueprints/assets/photos/saas/api-webhooks-fr.png +0 -0
  80. package/dist/blueprints/assets/photos/saas/approvals-queue-en.png +0 -0
  81. package/dist/blueprints/assets/photos/saas/approvals-queue-fr.png +0 -0
  82. package/dist/blueprints/assets/photos/saas/audit-log-en.png +0 -0
  83. package/dist/blueprints/assets/photos/saas/audit-log-fr.png +0 -0
  84. package/dist/blueprints/assets/photos/saas/erp-sync-en.png +0 -0
  85. package/dist/blueprints/assets/photos/saas/erp-sync-fr.png +0 -0
  86. package/dist/blueprints/assets/photos/saas/logo-castellan-alimentaire.png +0 -0
  87. package/dist/blueprints/assets/photos/saas/logo-cliniques-du-vivier.png +0 -0
  88. package/dist/blueprints/assets/photos/saas/logo-marenne-logistique.png +0 -0
  89. package/dist/blueprints/assets/photos/saas/logo-nordgate-habitat.png +0 -0
  90. package/dist/blueprints/assets/photos/saas/logo-tessaly-energies.png +0 -0
  91. package/dist/blueprints/assets/photos/saas/office-london.jpg +0 -0
  92. package/dist/blueprints/assets/photos/saas/office-montreal.jpg +0 -0
  93. package/dist/blueprints/assets/photos/saas/office-paris.jpg +0 -0
  94. package/dist/blueprints/assets/photos/saas/office-toronto.jpg +0 -0
  95. package/dist/blueprints/assets/photos/saas/policy-editor-en.png +0 -0
  96. package/dist/blueprints/assets/photos/saas/policy-editor-fr.png +0 -0
  97. package/dist/blueprints/assets/photos/saas/security-racks.jpg +0 -0
  98. package/dist/blueprints/assets/photos/saas/spend-reporting-en.png +0 -0
  99. package/dist/blueprints/assets/photos/saas/spend-reporting-fr.png +0 -0
  100. package/dist/blueprints/assets/photos/saas/sso-scim-en.png +0 -0
  101. package/dist/blueprints/assets/photos/saas/sso-scim-fr.png +0 -0
  102. package/dist/blueprints/assets/photos/store/aleppo-soap.jpg +0 -0
  103. package/dist/blueprints/assets/photos/store/copper-pan.jpg +0 -0
  104. package/dist/blueprints/assets/photos/store/crochet-throw.jpg +0 -0
  105. package/dist/blueprints/assets/photos/store/enamel-mug.jpg +0 -0
  106. package/dist/blueprints/assets/photos/store/hero.jpg +0 -0
  107. package/dist/blueprints/assets/photos/store/knit-sweater.jpg +0 -0
  108. package/dist/blueprints/assets/photos/store/leather-boots.jpg +0 -0
  109. package/dist/blueprints/assets/photos/store/leather-duffel.jpg +0 -0
  110. package/dist/blueprints/assets/photos/store/leather-wallet.jpg +0 -0
  111. package/dist/blueprints/assets/photos/store/moka-pot.jpg +0 -0
  112. package/dist/blueprints/assets/photos/store/skillet.jpg +0 -0
  113. package/dist/blueprints/assets/photos/store/stoneware-bottles.jpg +0 -0
  114. package/dist/blueprints/assets/photos/store/story.jpg +0 -0
  115. package/dist/blueprints/assets/photos/store/turned-bowl.jpg +0 -0
  116. package/dist/blueprints/association-copy-en.d.ts +3 -0
  117. package/dist/blueprints/association-copy-en.d.ts.map +1 -0
  118. package/dist/blueprints/association-copy-en.js +834 -0
  119. package/dist/blueprints/association-copy-en.js.map +1 -0
  120. package/dist/blueprints/association-copy-fr.d.ts +3 -0
  121. package/dist/blueprints/association-copy-fr.d.ts.map +1 -0
  122. package/dist/blueprints/association-copy-fr.js +841 -0
  123. package/dist/blueprints/association-copy-fr.js.map +1 -0
  124. package/dist/blueprints/association-copy.d.ts +301 -0
  125. package/dist/blueprints/association-copy.d.ts.map +1 -0
  126. package/dist/blueprints/association-copy.js +17 -0
  127. package/dist/blueprints/association-copy.js.map +1 -0
  128. package/dist/blueprints/association-credits.d.ts +16 -0
  129. package/dist/blueprints/association-credits.d.ts.map +1 -0
  130. package/dist/blueprints/association-credits.js +80 -0
  131. package/dist/blueprints/association-credits.js.map +1 -0
  132. package/dist/blueprints/association-typography.d.ts +23 -0
  133. package/dist/blueprints/association-typography.d.ts.map +1 -0
  134. package/dist/blueprints/association-typography.js +55 -0
  135. package/dist/blueprints/association-typography.js.map +1 -0
  136. package/dist/blueprints/association.d.ts +86 -287
  137. package/dist/blueprints/association.d.ts.map +1 -1
  138. package/dist/blueprints/association.js +503 -1078
  139. package/dist/blueprints/association.js.map +1 -1
  140. package/dist/blueprints/blog-copy-en.d.ts +4 -0
  141. package/dist/blueprints/blog-copy-en.d.ts.map +1 -0
  142. package/dist/blueprints/blog-copy-en.js +701 -0
  143. package/dist/blueprints/blog-copy-en.js.map +1 -0
  144. package/dist/blueprints/blog-copy-fr.d.ts +12 -0
  145. package/dist/blueprints/blog-copy-fr.d.ts.map +1 -0
  146. package/dist/blueprints/blog-copy-fr.js +722 -0
  147. package/dist/blueprints/blog-copy-fr.js.map +1 -0
  148. package/dist/blueprints/blog-copy.d.ts +157 -0
  149. package/dist/blueprints/blog-copy.d.ts.map +1 -0
  150. package/dist/blueprints/blog-copy.js +2 -0
  151. package/dist/blueprints/blog-copy.js.map +1 -0
  152. package/dist/blueprints/blog-credits.d.ts +28 -0
  153. package/dist/blueprints/blog-credits.d.ts.map +1 -0
  154. package/dist/blueprints/blog-credits.js +73 -0
  155. package/dist/blueprints/blog-credits.js.map +1 -0
  156. package/dist/blueprints/blog-rich.d.ts +19 -0
  157. package/dist/blueprints/blog-rich.d.ts.map +1 -0
  158. package/dist/blueprints/blog-rich.js +51 -0
  159. package/dist/blueprints/blog-rich.js.map +1 -0
  160. package/dist/blueprints/blog.d.ts +51 -176
  161. package/dist/blueprints/blog.d.ts.map +1 -1
  162. package/dist/blueprints/blog.js +358 -947
  163. package/dist/blueprints/blog.js.map +1 -1
  164. package/dist/blueprints/content-pack.d.ts.map +1 -1
  165. package/dist/blueprints/content-pack.js +11 -16
  166. package/dist/blueprints/content-pack.js.map +1 -1
  167. package/dist/blueprints/content-packs.d.ts +2 -4
  168. package/dist/blueprints/content-packs.d.ts.map +1 -1
  169. package/dist/blueprints/content-packs.js +27 -15
  170. package/dist/blueprints/content-packs.js.map +1 -1
  171. package/dist/blueprints/documentation-copy-en.d.ts +3 -0
  172. package/dist/blueprints/documentation-copy-en.d.ts.map +1 -0
  173. package/dist/blueprints/documentation-copy-en.js +883 -0
  174. package/dist/blueprints/documentation-copy-en.js.map +1 -0
  175. package/dist/blueprints/documentation-copy-fr.d.ts +3 -0
  176. package/dist/blueprints/documentation-copy-fr.d.ts.map +1 -0
  177. package/dist/blueprints/documentation-copy-fr.js +939 -0
  178. package/dist/blueprints/documentation-copy-fr.js.map +1 -0
  179. package/dist/blueprints/documentation-copy.d.ts +52 -0
  180. package/dist/blueprints/documentation-copy.d.ts.map +1 -0
  181. package/dist/blueprints/documentation-copy.js +2 -0
  182. package/dist/blueprints/documentation-copy.js.map +1 -0
  183. package/dist/blueprints/documentation-writer.d.ts +67 -0
  184. package/dist/blueprints/documentation-writer.d.ts.map +1 -0
  185. package/dist/blueprints/documentation-writer.js +190 -0
  186. package/dist/blueprints/documentation-writer.js.map +1 -0
  187. package/dist/blueprints/documentation.d.ts +26 -29
  188. package/dist/blueprints/documentation.d.ts.map +1 -1
  189. package/dist/blueprints/documentation.js +106 -1064
  190. package/dist/blueprints/documentation.js.map +1 -1
  191. package/dist/blueprints/magazine-copy-en.d.ts +13 -0
  192. package/dist/blueprints/magazine-copy-en.d.ts.map +1 -0
  193. package/dist/blueprints/magazine-copy-en.js +553 -0
  194. package/dist/blueprints/magazine-copy-en.js.map +1 -0
  195. package/dist/blueprints/magazine-copy-fr.d.ts +14 -0
  196. package/dist/blueprints/magazine-copy-fr.d.ts.map +1 -0
  197. package/dist/blueprints/magazine-copy-fr.js +568 -0
  198. package/dist/blueprints/magazine-copy-fr.js.map +1 -0
  199. package/dist/blueprints/magazine-copy.d.ts +166 -0
  200. package/dist/blueprints/magazine-copy.d.ts.map +1 -0
  201. package/dist/blueprints/magazine-copy.js +58 -0
  202. package/dist/blueprints/magazine-copy.js.map +1 -0
  203. package/dist/blueprints/magazine-credits.d.ts +19 -0
  204. package/dist/blueprints/magazine-credits.d.ts.map +1 -0
  205. package/dist/blueprints/magazine-credits.js +109 -0
  206. package/dist/blueprints/magazine-credits.js.map +1 -0
  207. package/dist/blueprints/magazine.d.ts +30 -78
  208. package/dist/blueprints/magazine.d.ts.map +1 -1
  209. package/dist/blueprints/magazine.js +269 -690
  210. package/dist/blueprints/magazine.js.map +1 -1
  211. package/dist/blueprints/portfolio-copy-en.d.ts +4 -0
  212. package/dist/blueprints/portfolio-copy-en.d.ts.map +1 -0
  213. package/dist/blueprints/portfolio-copy-en.js +745 -0
  214. package/dist/blueprints/portfolio-copy-en.js.map +1 -0
  215. package/dist/blueprints/portfolio-copy-fr.d.ts +9 -0
  216. package/dist/blueprints/portfolio-copy-fr.d.ts.map +1 -0
  217. package/dist/blueprints/portfolio-copy-fr.js +737 -0
  218. package/dist/blueprints/portfolio-copy-fr.js.map +1 -0
  219. package/dist/blueprints/portfolio-copy.d.ts +204 -0
  220. package/dist/blueprints/portfolio-copy.d.ts.map +1 -0
  221. package/dist/blueprints/portfolio-copy.js +15 -0
  222. package/dist/blueprints/portfolio-copy.js.map +1 -0
  223. package/dist/blueprints/portfolio-credits.d.ts +18 -0
  224. package/dist/blueprints/portfolio-credits.d.ts.map +1 -0
  225. package/dist/blueprints/portfolio-credits.js +239 -0
  226. package/dist/blueprints/portfolio-credits.js.map +1 -0
  227. package/dist/blueprints/portfolio-typography.d.ts +19 -0
  228. package/dist/blueprints/portfolio-typography.d.ts.map +1 -0
  229. package/dist/blueprints/portfolio-typography.js +41 -0
  230. package/dist/blueprints/portfolio-typography.js.map +1 -0
  231. package/dist/blueprints/portfolio.d.ts +68 -157
  232. package/dist/blueprints/portfolio.d.ts.map +1 -1
  233. package/dist/blueprints/portfolio.js +475 -727
  234. package/dist/blueprints/portfolio.js.map +1 -1
  235. package/dist/blueprints/restaurant-copy-en.d.ts +3 -0
  236. package/dist/blueprints/restaurant-copy-en.d.ts.map +1 -0
  237. package/dist/blueprints/restaurant-copy-en.js +641 -0
  238. package/dist/blueprints/restaurant-copy-en.js.map +1 -0
  239. package/dist/blueprints/restaurant-copy-fr.d.ts +3 -0
  240. package/dist/blueprints/restaurant-copy-fr.d.ts.map +1 -0
  241. package/dist/blueprints/restaurant-copy-fr.js +665 -0
  242. package/dist/blueprints/restaurant-copy-fr.js.map +1 -0
  243. package/dist/blueprints/restaurant-copy.d.ts +234 -0
  244. package/dist/blueprints/restaurant-copy.d.ts.map +1 -0
  245. package/dist/blueprints/restaurant-copy.js +15 -0
  246. package/dist/blueprints/restaurant-copy.js.map +1 -0
  247. package/dist/blueprints/restaurant-credits.d.ts +18 -0
  248. package/dist/blueprints/restaurant-credits.d.ts.map +1 -0
  249. package/dist/blueprints/restaurant-credits.js +121 -0
  250. package/dist/blueprints/restaurant-credits.js.map +1 -0
  251. package/dist/blueprints/restaurant.d.ts +55 -128
  252. package/dist/blueprints/restaurant.d.ts.map +1 -1
  253. package/dist/blueprints/restaurant.js +425 -770
  254. package/dist/blueprints/restaurant.js.map +1 -1
  255. package/dist/blueprints/saas-copy-en.d.ts +3 -0
  256. package/dist/blueprints/saas-copy-en.d.ts.map +1 -0
  257. package/dist/blueprints/saas-copy-en.js +901 -0
  258. package/dist/blueprints/saas-copy-en.js.map +1 -0
  259. package/dist/blueprints/saas-copy-fr.d.ts +3 -0
  260. package/dist/blueprints/saas-copy-fr.d.ts.map +1 -0
  261. package/dist/blueprints/saas-copy-fr.js +912 -0
  262. package/dist/blueprints/saas-copy-fr.js.map +1 -0
  263. package/dist/blueprints/saas-copy.d.ts +266 -0
  264. package/dist/blueprints/saas-copy.d.ts.map +1 -0
  265. package/dist/blueprints/saas-copy.js +18 -0
  266. package/dist/blueprints/saas-copy.js.map +1 -0
  267. package/dist/blueprints/saas-credits.d.ts +22 -0
  268. package/dist/blueprints/saas-credits.d.ts.map +1 -0
  269. package/dist/blueprints/saas-credits.js +44 -0
  270. package/dist/blueprints/saas-credits.js.map +1 -0
  271. package/dist/blueprints/saas.d.ts +59 -203
  272. package/dist/blueprints/saas.d.ts.map +1 -1
  273. package/dist/blueprints/saas.js +505 -1108
  274. package/dist/blueprints/saas.js.map +1 -1
  275. package/dist/blueprints/store-copy-en.d.ts +4 -0
  276. package/dist/blueprints/store-copy-en.d.ts.map +1 -0
  277. package/dist/blueprints/store-copy-en.js +521 -0
  278. package/dist/blueprints/store-copy-en.js.map +1 -0
  279. package/dist/blueprints/store-copy-fr.d.ts +4 -0
  280. package/dist/blueprints/store-copy-fr.d.ts.map +1 -0
  281. package/dist/blueprints/store-copy-fr.js +521 -0
  282. package/dist/blueprints/store-copy-fr.js.map +1 -0
  283. package/dist/blueprints/store-copy.d.ts +219 -0
  284. package/dist/blueprints/store-copy.d.ts.map +1 -0
  285. package/dist/blueprints/store-copy.js +16 -0
  286. package/dist/blueprints/store-copy.js.map +1 -0
  287. package/dist/blueprints/store-credits.d.ts +3 -0
  288. package/dist/blueprints/store-credits.d.ts.map +1 -0
  289. package/dist/blueprints/store-credits.js +117 -0
  290. package/dist/blueprints/store-credits.js.map +1 -0
  291. package/dist/blueprints/store.d.ts +43 -231
  292. package/dist/blueprints/store.d.ts.map +1 -1
  293. package/dist/blueprints/store.js +466 -789
  294. package/dist/blueprints/store.js.map +1 -1
  295. package/dist/blueprints/vitrine-copy-en.d.ts.map +1 -1
  296. package/dist/blueprints/vitrine-copy-en.js +1 -0
  297. package/dist/blueprints/vitrine-copy-en.js.map +1 -1
  298. package/dist/blueprints/vitrine-copy-fr.d.ts.map +1 -1
  299. package/dist/blueprints/vitrine-copy-fr.js +1 -0
  300. package/dist/blueprints/vitrine-copy-fr.js.map +1 -1
  301. package/dist/blueprints/vitrine-copy.d.ts +1 -0
  302. package/dist/blueprints/vitrine-copy.d.ts.map +1 -1
  303. package/dist/blueprints/vitrine.d.ts +1 -0
  304. package/dist/blueprints/vitrine.d.ts.map +1 -1
  305. package/dist/blueprints/vitrine.js +24 -3
  306. package/dist/blueprints/vitrine.js.map +1 -1
  307. package/package.json +10 -10
  308. package/dist/blueprints/assets/photos/association/fundraising-dinner.jpg +0 -0
  309. package/dist/blueprints/assets/photos/association/volunteer-orientation.jpg +0 -0
  310. package/dist/blueprints/assets/photos/association/volunteer-portrait.jpg +0 -0
  311. package/dist/blueprints/assets/photos/association/winter-coat-collection.jpg +0 -0
  312. package/dist/blueprints/assets/photos/documentation/delivery-flow.png +0 -0
  313. package/dist/blueprints/assets/photos/magazine/archive-room.jpg +0 -0
  314. package/dist/blueprints/assets/photos/magazine/banquet-hall.jpg +0 -0
  315. package/dist/blueprints/assets/photos/magazine/city-hall.jpg +0 -0
  316. package/dist/blueprints/assets/photos/magazine/downtown-towers.jpg +0 -0
  317. package/dist/blueprints/assets/photos/magazine/gallery-opening.jpg +0 -0
  318. package/dist/blueprints/assets/photos/magazine/garden-volunteers.jpg +0 -0
  319. package/dist/blueprints/assets/photos/magazine/station-platform.jpg +0 -0
  320. package/dist/blueprints/assets/photos/magazine/theater-stage.jpg +0 -0
  321. package/dist/blueprints/assets/photos/portfolio/fenmore-branch.jpg +0 -0
  322. package/dist/blueprints/assets/photos/portfolio/fenmore-cover.jpg +0 -0
  323. package/dist/blueprints/assets/photos/portfolio/fenmore-stationery.jpg +0 -0
  324. package/dist/blueprints/assets/photos/portfolio/gannet-cover.jpg +0 -0
  325. package/dist/blueprints/assets/photos/portfolio/gannet-sardines.jpg +0 -0
  326. package/dist/blueprints/assets/photos/portfolio/gannet-shelf.jpg +0 -0
  327. package/dist/blueprints/assets/photos/portfolio/hollis-crane-cover.jpg +0 -0
  328. package/dist/blueprints/assets/photos/portfolio/hollis-crane-grid.jpg +0 -0
  329. package/dist/blueprints/assets/photos/portfolio/hollis-crane-salt-year.jpg +0 -0
  330. package/dist/blueprints/assets/photos/portfolio/hollis-crane-spines.jpg +0 -0
  331. package/dist/blueprints/assets/photos/portfolio/rookery-hall-brochure.jpg +0 -0
  332. package/dist/blueprints/assets/photos/portfolio/rookery-hall-cover.jpg +0 -0
  333. package/dist/blueprints/assets/photos/portfolio/rookery-hall-poster-carnival.jpg +0 -0
  334. package/dist/blueprints/assets/photos/portfolio/rookery-hall-poster-sibelius.jpg +0 -0
  335. package/dist/blueprints/assets/photos/portfolio/rookery-hall-series.jpg +0 -0
  336. package/dist/blueprints/assets/photos/portfolio/saltmarsh-quay-cover.jpg +0 -0
  337. package/dist/blueprints/assets/photos/portfolio/saltmarsh-quay-gate.jpg +0 -0
  338. package/dist/blueprints/assets/photos/portfolio/saltmarsh-quay-pictograms.jpg +0 -0
  339. package/dist/blueprints/assets/photos/portfolio/saltmarsh-quay-totem.jpg +0 -0
  340. package/dist/blueprints/assets/photos/portfolio/tidewater-cover.jpg +0 -0
  341. package/dist/blueprints/assets/photos/portfolio/tidewater-data.jpg +0 -0
  342. package/dist/blueprints/assets/photos/portfolio/tidewater-report-cover.jpg +0 -0
  343. package/dist/blueprints/assets/photos/portfolio/warp-and-weft-cover.jpg +0 -0
  344. package/dist/blueprints/assets/photos/portfolio/warp-and-weft-room.jpg +0 -0
  345. package/dist/blueprints/assets/photos/portfolio/westmoor-rail-components.jpg +0 -0
  346. package/dist/blueprints/assets/photos/portfolio/westmoor-rail-cover.jpg +0 -0
  347. package/dist/blueprints/assets/photos/portfolio/westmoor-rail-departures.jpg +0 -0
  348. package/dist/blueprints/assets/photos/restaurant/beetroot-goats-curd.jpg +0 -0
  349. package/dist/blueprints/assets/photos/restaurant/ceps-risotto.jpg +0 -0
  350. package/dist/blueprints/assets/photos/restaurant/duck-leg-red-cabbage.jpg +0 -0
  351. package/dist/blueprints/assets/photos/restaurant/hake-green-peppercorns.jpg +0 -0
  352. package/dist/blueprints/assets/photos/restaurant/vegetable-broth.jpg +0 -0
  353. package/dist/blueprints/assets/photos/saas/adrian-tan.jpg +0 -0
  354. package/dist/blueprints/assets/photos/saas/api-webhooks.png +0 -0
  355. package/dist/blueprints/assets/photos/saas/approvals-queue.png +0 -0
  356. package/dist/blueprints/assets/photos/saas/audit-log.png +0 -0
  357. package/dist/blueprints/assets/photos/saas/erp-sync.png +0 -0
  358. package/dist/blueprints/assets/photos/saas/policy-editor.png +0 -0
  359. package/dist/blueprints/assets/photos/saas/spend-reporting.png +0 -0
  360. package/dist/blueprints/assets/photos/saas/sso-scim.png +0 -0
  361. package/dist/blueprints/assets/photos/store/brushed-cotton-overshirt.jpg +0 -0
  362. package/dist/blueprints/assets/photos/store/cable-knit-beanie.jpg +0 -0
  363. package/dist/blueprints/assets/photos/store/canvas-shoulder-bag.jpg +0 -0
  364. package/dist/blueprints/assets/photos/store/canvas-tote.jpg +0 -0
  365. package/dist/blueprints/assets/photos/store/cast-iron-skillet.jpg +0 -0
  366. package/dist/blueprints/assets/photos/store/field-jacket.jpg +0 -0
  367. package/dist/blueprints/assets/photos/store/heavyweight-t-shirt.jpg +0 -0
  368. package/dist/blueprints/assets/photos/store/leather-card-holder.jpg +0 -0
  369. package/dist/blueprints/assets/photos/store/linen-table-runner.jpg +0 -0
  370. package/dist/blueprints/assets/photos/store/porcelain-pour-over-set.jpg +0 -0
  371. package/dist/blueprints/assets/photos/store/striped-wool-blanket.jpg +0 -0
@@ -0,0 +1,701 @@
1
+ import { bullet, figure, h2, numbered, p, quote, rule } from './blog-rich.js';
2
+ /** The blog blueprint in English. See `blog-copy.ts` for the shape. */
3
+ export const BLOG_COPY_EN = {
4
+ locale: 'en',
5
+ defaultPublicationName: 'Field Notes',
6
+ schema: {
7
+ category: { name: 'category', singular: 'Category', plural: 'Categories' },
8
+ tag: { name: 'tag', singular: 'Tag', plural: 'Tags' },
9
+ post: { singular: 'Post', plural: 'Posts' },
10
+ page: { singular: 'Page', plural: 'Pages' },
11
+ },
12
+ categories: [
13
+ {
14
+ name: 'Reading',
15
+ slug: 'reading',
16
+ description: 'Books reread and books abandoned, and what a train does for attention.',
17
+ },
18
+ {
19
+ name: 'Writing',
20
+ slug: 'writing',
21
+ description: 'Drafts, revision, notebooks, and the unglamorous work of finishing.',
22
+ },
23
+ {
24
+ name: 'Walking',
25
+ slug: 'walking',
26
+ description: 'Routes taken slowly, and the thinking that happens along them.',
27
+ },
28
+ {
29
+ name: 'Letters',
30
+ slug: 'letters',
31
+ description: 'Shorter notes written every other Sunday, closer to correspondence.',
32
+ },
33
+ ],
34
+ tags: [
35
+ { name: 'Drafts', slug: 'drafts' },
36
+ { name: 'Revision', slug: 'revision' },
37
+ { name: 'Notebooks', slug: 'notebooks' },
38
+ { name: 'Habits', slug: 'habits' },
39
+ { name: 'Trains', slug: 'trains' },
40
+ { name: 'Libraries', slug: 'libraries' },
41
+ { name: 'Rereading', slug: 'rereading' },
42
+ { name: 'Attention', slug: 'attention' },
43
+ ],
44
+ featuredSlug: 'what-the-second-draft-is-for',
45
+ latestLetterSlug: 'letter-what-i-read-in-august',
46
+ lettersCategorySlug: 'letters',
47
+ slugs: {
48
+ home: 'home',
49
+ about: 'about',
50
+ archive: 'archive',
51
+ newsletter: 'newsletter',
52
+ credits: 'photo-credits',
53
+ },
54
+ home: {
55
+ title: 'Home',
56
+ seoDescription: (siteName) => `${siteName}: essays and letters on reading, writing and walking.`,
57
+ eyebrow: 'Start here',
58
+ readEssay: 'Read the essay',
59
+ latestTitle: 'Latest',
60
+ epigraph: {
61
+ text: 'The greatest part of a writer’s time is spent in reading, in order to write: a man will turn over half a library to make one book.',
62
+ author: 'Samuel Johnson',
63
+ role: 'In James Boswell’s Life of Johnson, 1775',
64
+ },
65
+ archiveTitle: 'From the archive',
66
+ moreTitle: 'A few more essays',
67
+ subjectsTitle: 'What I write about',
68
+ letterTitle: 'The Sunday letter',
69
+ letterText: 'Every other Sunday, a short letter about what I have been reading and what the notebooks keep circling. Each one is published here and in the feed.',
70
+ letterFollow: 'How to follow it',
71
+ letterLatest: 'Read the latest letter',
72
+ },
73
+ about: {
74
+ title: 'About',
75
+ body: ({ siteName, desk }) => [
76
+ p(`${siteName} is where I publish essays and letters about reading, writing and walking. ` +
77
+ 'It started in 2024 as a way to finish things: I had thirteen years of notebooks and ' +
78
+ 'almost nothing in them that anyone else could read.'),
79
+ p('I live in Leeds and work three days a week as a copy editor at a university press in ' +
80
+ 'York, which is why so much of what appears here was written on a train. On the other ' +
81
+ 'two days I write, mostly in the morning, and mostly by hand first.'),
82
+ ...figure(desk, 'The desk by the window, where the pieces that were not written on a train were written.'),
83
+ h2('What you will find here'),
84
+ p('Essays, roughly one a month, between a thousand and two thousand words, on whatever ' +
85
+ 'the notebooks have been circling. Letters every other Sunday, which are shorter and ' +
86
+ 'closer to what I would write to a friend. Everything is filed under one of four ' +
87
+ 'subjects, and the archive lists all of it by year.'),
88
+ h2('How it is made'),
89
+ p('Every piece starts in a plain text file and goes through at least two full drafts ' +
90
+ 'before it appears here. There is no advertising, no sponsored link and no tracking ' +
91
+ 'beyond a count of visits that stores nothing about you. Corrections are made in place ' +
92
+ 'and noted at the end of the piece.'),
93
+ ],
94
+ faqTitle: 'Questions readers ask',
95
+ faq: (siteName) => [
96
+ {
97
+ key: 'demo-faq-cadence',
98
+ question: 'How often do you publish?',
99
+ answer: 'An essay about once a month and a letter every other Sunday. Nothing goes out to fill a slot: an essay that is not ready waits for the next month.',
100
+ },
101
+ {
102
+ key: 'demo-faq-quoting',
103
+ question: 'Can I quote or republish a piece?',
104
+ answer: 'Quote as much as is useful, with a link back to the original. To republish a whole piece, write to me first. The answer is almost always yes.',
105
+ },
106
+ {
107
+ key: 'demo-faq-guests',
108
+ question: 'Do you publish guest essays?',
109
+ answer: `No. Everything on ${siteName} is written by one person, which is most of the point of it.`,
110
+ },
111
+ {
112
+ key: 'demo-faq-feed',
113
+ question: 'Is there a feed?',
114
+ answer: 'Yes. It carries every essay and letter in full, and its link is at the foot of every page.',
115
+ },
116
+ ],
117
+ },
118
+ archive: {
119
+ title: 'Archive',
120
+ intro: (siteName) => `Every essay and letter published on ${siteName}, newest first, grouped by the year it appeared.`,
121
+ },
122
+ newsletter: {
123
+ title: 'The Sunday letter',
124
+ paragraphs: (siteName) => [
125
+ 'Every other Sunday I write a short letter: what I have been reading, a paragraph or two ' +
126
+ 'about whatever the notebooks are circling, and now and then the first version of an ' +
127
+ 'idea that becomes an essay a few months later.',
128
+ `Each letter is published on ${siteName} on the Sunday morning, filed under Letters, ` +
129
+ 'and the feed carries it in full the same hour. A feed reader is the simplest way to ' +
130
+ 'follow along, and the one I use myself.',
131
+ 'There are no sponsors and no sequence of welcome messages. Replies reach me directly, ' +
132
+ 'and several letters have begun as an answer to one.',
133
+ ],
134
+ ctaTitle: 'Follow the letters',
135
+ ctaText: 'The feed carries every letter and essay in full, the morning each one is published.',
136
+ subscribe: 'Subscribe to the feed',
137
+ past: 'Read past letters',
138
+ },
139
+ credits: {
140
+ title: 'Photo credits',
141
+ intro: 'Every photograph on this site is real, not generated, and is used under the licence its photographer chose. Cropped and resized; nothing else changed.',
142
+ line: (credit) => `${credit.title} · ${credit.author} · ${credit.licence} · ${credit.source}`,
143
+ },
144
+ menus: {
145
+ header: [
146
+ { label: 'Archive', url: '/archive' },
147
+ { label: 'About', url: '/about' },
148
+ ],
149
+ footer: [
150
+ { label: 'Archive', url: '/archive' },
151
+ { label: 'About', url: '/about' },
152
+ { label: 'The Sunday letter', url: '/newsletter' },
153
+ { label: 'Feed', url: '/feed.xml' },
154
+ { label: 'Photo credits', url: '/photo-credits' },
155
+ ],
156
+ headerAction: { label: 'Subscribe', url: '/newsletter' },
157
+ },
158
+ settings: {
159
+ tagline: 'Essays and letters on reading, writing and walking.',
160
+ footerNote: 'Written in Leeds and on the train to York. Quote freely, with a link back to the original.',
161
+ socialLinks: [
162
+ { label: 'Mastodon', url: 'https://mastodon.social/@example' },
163
+ { label: 'Bluesky', url: 'https://bsky.app/profile/example.bsky.social' },
164
+ { label: 'Instagram', url: 'https://instagram.com/example' },
165
+ ],
166
+ },
167
+ widgets: {
168
+ aboutTitle: 'About',
169
+ aboutBody: 'Essays and letters by a copy editor who lives in Leeds and writes most mornings, often on the train to York. One essay a month, a letter every other Sunday.',
170
+ aboutLink: 'More about me',
171
+ searchTitle: 'Search',
172
+ searchPlaceholder: 'Essays and letters',
173
+ recentTitle: 'Recently',
174
+ subjectsTitle: 'Subjects',
175
+ tagsTitle: 'Tags',
176
+ yearTitle: 'By year',
177
+ relatedTitle: 'Further reading',
178
+ },
179
+ mediaAlt: {
180
+ 'notebook-and-coffee': 'A closed notebook and a kraft envelope beside a latte and a pen on a wooden table',
181
+ desk: 'A pale desk by a curtained window with an open laptop and a small plant',
182
+ notebooks: 'A tall stack of worn notebooks bound with elastic bands on a wooden bench',
183
+ platform: 'An empty train platform lit by sunrise, with a train approaching in the distance',
184
+ 'pour-over': 'Water pouring into coffee grounds inside a paper filter cone during a pour-over',
185
+ typing: 'A close view of two hands typing on a laptop keyboard, one wearing a wedding ring',
186
+ library: 'The red-brick facade of a small public library, its door framed by an arch and two lamps',
187
+ },
188
+ posts: [
189
+ {
190
+ title: 'Why I still draft in plain text',
191
+ slug: 'plain-text-editor',
192
+ topic: 'Drafts',
193
+ cover: 'typing',
194
+ excerpt: 'Nine writing apps in eight years, and the one file format that outlasted every one of them.',
195
+ publishedAt: '2024-02-11T08:30:00.000Z',
196
+ categorySlug: 'writing',
197
+ tagSlugs: ['drafts', 'habits'],
198
+ body: () => [
199
+ p('Between 2016 and 2024 I paid for nine writing apps. I kept the receipts because I was ' +
200
+ 'embarrassed by them, which is its own kind of record keeping. Each one promised a calmer ' +
201
+ 'place to think. Each one, within two years, had added a sidebar, a sync indicator, a ' +
202
+ 'streak counter and a banner about the new plan.'),
203
+ p('The drafts from those years are now spread across export formats I can no longer open ' +
204
+ 'without the app that made them. Two of the apps no longer exist. One of them turned my ' +
205
+ 'footnotes into a proprietary block that exports as a row of question marks.'),
206
+ h2('What a text file keeps'),
207
+ p('A plain text file keeps three things the others eventually lost for me. It opens on any ' +
208
+ 'machine I have owned, including a borrowed laptop at my sister’s kitchen table. It will ' +
209
+ 'open in twenty years, because the format is the words and nothing else. And it asks ' +
210
+ 'nothing of me while I write: there is no count to beat and no badge to earn.'),
211
+ bullet('One folder per piece, named with the date I started it.'),
212
+ bullet('One file per draft, numbered, never overwritten.'),
213
+ bullet('A notes file beside them for everything I cut, because I always want it back.'),
214
+ p('The folder for this piece holds four drafts and a notes file longer than any of them. ' +
215
+ 'Nearly everything I still like in the final version came out of that notes file on the ' +
216
+ 'third pass.'),
217
+ p('Formatting waits until the end. Italics are underscores, headings are a line of capitals, ' +
218
+ 'and a link is an address on a line of its own. When a piece is finished I paste it into ' +
219
+ 'the site and spend ten minutes setting it properly, and those ten minutes are pleasant ' +
220
+ 'precisely because the writing is already done.'),
221
+ quote('The tool I trust is the one that has nothing to say about my writing.'),
222
+ p('I have nothing against good software. I use a very good editor every day at work, where I ' +
223
+ 'correct other people’s manuscripts and need its tracked changes. For my own first drafts ' +
224
+ 'I want less than that: a blinking cursor, and the knowledge that the file will still be ' +
225
+ 'there when I come back to it, in whatever year that turns out to be.'),
226
+ ],
227
+ },
228
+ {
229
+ title: 'The long way to the library',
230
+ slug: 'the-long-way-to-the-library',
231
+ topic: 'Libraries',
232
+ cover: 'library',
233
+ excerpt: 'Forty minutes on foot instead of twelve on the bus, twice a week, and what the extra half hour turned out to be for.',
234
+ publishedAt: '2024-05-19T07:15:00.000Z',
235
+ categorySlug: 'walking',
236
+ tagSlugs: ['libraries', 'attention'],
237
+ body: () => [
238
+ p('Twice a week I walk to the central library to write. The bus takes twelve minutes and ' +
239
+ 'stops outside. The walk takes forty, through the park, over the canal bridge and up the ' +
240
+ 'long hill past the old tram depot. For a year I told myself the walk was exercise. It ' +
241
+ 'took most of that year to admit it was the most productive part of the morning.'),
242
+ p('I leave the house with a question about whatever I am writing, usually a small one: why ' +
243
+ 'the second section drags, whether an example belongs, what the last line should do. I ' +
244
+ 'take no notes on the way. By the canal the question has usually changed shape, and by ' +
245
+ 'the top of the hill I tend to know which paragraph to open first.'),
246
+ h2('Why the route matters'),
247
+ p('I have tried other routes. The shortest follows the main road, and it is useless for ' +
248
+ 'thinking, because every crossing asks for attention and every bus stop is a small ' +
249
+ 'decision about whether to give up and get on. The long route has three road crossings in ' +
250
+ 'forty minutes and a stretch of towpath where nobody needs anything from me.'),
251
+ p('The park helps too, though in a plainer way than a wellness article would put it. It is ' +
252
+ 'the one part of the walk where I see the same people on the same days: a man training a ' +
253
+ 'very reluctant spaniel, and two women who run the same loop in opposite directions and ' +
254
+ 'wave each time they pass. Their routine makes mine feel less like a trick I am playing on ' +
255
+ 'myself.'),
256
+ h2('The reading room'),
257
+ p('The reading room opens at nine. There are twenty-four desks, green lamps that nobody ' +
258
+ 'switches on in summer, and a rule of silence the staff enforce with a look rather than a ' +
259
+ 'sign. I take the same desk when I can, fourth from the window, and write by hand for the ' +
260
+ 'first hour before I open the laptop.'),
261
+ p('The walk home is for reading back what I wrote, in my head, and it is where I find most ' +
262
+ 'of the sentences that need to go. I have learned to trust that verdict more than the one ' +
263
+ 'I reach at the desk, perhaps because by then I have forgotten how hard each sentence was ' +
264
+ 'to write.'),
265
+ bullet('Leave the phone in the bag until the library door.'),
266
+ bullet('Carry one question, never a list of them.'),
267
+ bullet('Take the same route, so that the route stops asking for decisions.'),
268
+ p('None of this survives a deadline, and I do not pretend it would. When work is heavy I ' +
269
+ 'take the bus like everyone else. The pieces on this site that I still like were, almost ' +
270
+ 'without exception, started on the towpath.'),
271
+ ],
272
+ },
273
+ {
274
+ title: 'Letter: what a commonplace book is for',
275
+ slug: 'letter-commonplace-book',
276
+ topic: 'Notebooks',
277
+ excerpt: 'A reader asked how I keep the passages I want to remember from the books I read. The answer involves a pencil and a lot of empty pages.',
278
+ publishedAt: '2024-08-04T06:45:00.000Z',
279
+ categorySlug: 'letters',
280
+ tagSlugs: ['notebooks', 'rereading'],
281
+ body: () => [
282
+ p('This letter began as a reply to a reader in Utrecht who asked how I keep track of ' +
283
+ 'quotations, and whether I use an app for it. I keep a commonplace book, which is the old ' +
284
+ 'name for a notebook of passages copied out by hand, and I have kept one since 2015.'),
285
+ p('The rules are few. A passage only goes in if I copy it by hand, with the page number and ' +
286
+ 'the date. If I am not willing to copy it, I did not care about it enough, and that rule ' +
287
+ 'alone removes nine tenths of what I would otherwise have highlighted.'),
288
+ bullet('Copy by hand, never paste.'),
289
+ bullet('Write the date, the book and the page on the same line as the passage.'),
290
+ bullet('Leave the facing page empty for whatever you think of it later.'),
291
+ p('The facing page is the part that matters. Months later, reading back, I write a line or ' +
292
+ 'two opposite the quotation: where it came up again, what it argued with, whether I still ' +
293
+ 'believe it. The best entries have three or four of those notes, in different pens, ' +
294
+ 'across several years.'),
295
+ p('I used to call it a record of reading. It is closer to a record of rereading. A passage ' +
296
+ 'is rarely useful the day I copy it out. It becomes useful the third time I open the book ' +
297
+ 'at random on a train and find that a sentence from 2014 has quietly answered a question ' +
298
+ 'I am stuck on this week.'),
299
+ p('Thank you for writing in. Replies to these letters reach me directly, and they are often ' +
300
+ 'where the next one begins.'),
301
+ ],
302
+ },
303
+ {
304
+ title: 'What the second draft is for',
305
+ slug: 'what-the-second-draft-is-for',
306
+ topic: 'Revision',
307
+ excerpt: 'A first draft tells you what a piece is about. The second is where you find out what it is for, and most of the work is deciding what it can live without.',
308
+ publishedAt: '2024-10-20T08:00:00.000Z',
309
+ cover: 'notebook-and-coffee',
310
+ categorySlug: 'writing',
311
+ tagSlugs: ['revision', 'drafts'],
312
+ body: () => [
313
+ p('I spend three days a week correcting other people’s manuscripts for a university press, ' +
314
+ 'and the most common thing I see is a finished first draft that its author believes is a ' +
315
+ 'second one. The sentences have been improved and the commas are in the right places. The ' +
316
+ 'piece still does what it did the first time: it wanders towards its point and arrives ' +
317
+ 'there on the last page, a little surprised.'),
318
+ p('I recognise it because I do it too. A first draft is how a writer finds out what they ' +
319
+ 'think, and it is almost always organised in the order the thinking happened, which is ' +
320
+ 'rarely the order a reader needs. The second draft exists to fix that, and polishing ' +
321
+ 'sentences is the easiest way to avoid doing it.'),
322
+ h2('Read it as a stranger'),
323
+ p('The first step takes no writing at all. I print the draft and read it somewhere I would ' +
324
+ 'read somebody else’s work: on the train, or in the chair by the window with a cup of ' +
325
+ 'coffee going cold. I correct nothing on this pass. I only put a mark in the margin ' +
326
+ 'wherever my attention drifts.'),
327
+ p('Those marks are the most honest editor I have, and they cluster. There is nearly always a ' +
328
+ 'run of three or four paragraphs in the middle where I, the author, the one reader ' +
329
+ 'guaranteed to be interested, started thinking about lunch. That run is where the draft is ' +
330
+ 'explaining something to itself.'),
331
+ p('When the marks are in, I read the marked stretches aloud. My voice finds what my eye ' +
332
+ 'forgives: a sentence I run out of breath in, a word repeated three lines apart, a joke ' +
333
+ 'that only works in silence. I do it quietly, in an empty room, and I have stopped feeling ' +
334
+ 'foolish about it.'),
335
+ h2('Write the one sentence'),
336
+ p('Before touching the text I write, on a separate page, one sentence that says what the ' +
337
+ 'piece should leave a reader able to see or do that they could not before. It takes ' +
338
+ 'several attempts, and the failed attempts are useful, because each one describes a ' +
339
+ 'different essay I could write instead.'),
340
+ p('For this essay the sentence was: a reader should come away able to tell a revised draft ' +
341
+ 'from a polished one. Everything that does not serve that sentence becomes a candidate for ' +
342
+ 'the notes file.'),
343
+ quote('Most of revision is deciding what the piece can live without.'),
344
+ h2('Take things out in the right order'),
345
+ p('Cutting is where most revisions stall, because it feels like losing work. I cut in a ' +
346
+ 'fixed order that makes it bearable.'),
347
+ numbered('Whole sections that serve a different sentence. They go to the notes file intact, often ' +
348
+ 'with a line about the other essay they belong to.'),
349
+ numbered('Paragraphs that repeat an idea the piece has already made clear. The second statement is ' +
350
+ 'usually the better one, so I move it up and delete the first.'),
351
+ numbered('Examples that illustrate the same point twice. One exact example does more than three ' +
352
+ 'adequate ones.'),
353
+ numbered('Hedges: *probably*, *perhaps*, *in some ways*. I keep one where the doubt is real and remove ' +
354
+ 'the rest.'),
355
+ p('Only after those four passes do I look at sentences. By then there are fewer of them, and ' +
356
+ 'the ones that remain have a job, which makes it much clearer how each should be written.'),
357
+ h2('Move the ending to the beginning'),
358
+ p('The most reliable change I make, in my own drafts and in the manuscripts I edit, is to ' +
359
+ 'find the paragraph where the writer finally states their point and ask whether it could ' +
360
+ 'open the piece. About half the time it can. The draft then has to be rebuilt around a ' +
361
+ 'reader who already knows where they are going, and that rebuilding is most of what a ' +
362
+ 'second draft is.'),
363
+ p('It is uncomfortable, because the old opening is often the part I liked best. It was the ' +
364
+ 'part I wrote while the idea was new. I keep those openings in the notes file too, and ' +
365
+ 'every so often one of them becomes the first line of something else.'),
366
+ h2('An example from this spring'),
367
+ p('This spring I worked on a history of a Pennine canal, written by a retired lock-keeper who ' +
368
+ 'knew more about the subject than anyone alive. His first draft ran to four hundred pages ' +
369
+ 'and followed the canal from its source to its end, one lock at a time, because that was ' +
370
+ 'the order in which he had walked it for forty years.'),
371
+ p('The sentences were fine. The trouble was that the book’s real subject, the families who ' +
372
+ 'had worked the locks across three generations, appeared only in the final chapter, where ' +
373
+ 'he wrote about his own grandfather. We spent two months moving that chapter to the front ' +
374
+ 'and rebuilding everything else as a way of following those families down the water.'),
375
+ p('He cut ninety pages, most of them descriptions of locks built exactly like the ones before. ' +
376
+ 'He kept every page in a folder, and he told me at the end that the folder was the book he ' +
377
+ 'had needed to write in order to find the other one.'),
378
+ h2('Know when to stop'),
379
+ p('A second draft is finished when I can read it as a stranger without making a single mark ' +
380
+ 'in the margin, and when the sentence I wrote at the start is still true of it. It is ' +
381
+ 'rarely finished when it feels finished. That feeling tends to arrive one draft early, at ' +
382
+ 'the point where I have stopped finding problems because I have stopped looking for them.'),
383
+ p('When I am unsure I leave it for a week. The piece that still reads well after seven days ' +
384
+ 'goes out. The one that does not goes back into its folder with the new marks, and the ' +
385
+ 'train does the rest.'),
386
+ rule(),
387
+ h2('Notes'),
388
+ numbered('Paper works best for me, but the setting matters more than the medium. The same draft in ' +
389
+ 'a different typeface on a different screen shows up nearly as many problems.'),
390
+ numbered('The notes file for this essay runs to 2,300 words. Three earlier openings are in it, and ' +
391
+ 'one of them is now the first paragraph of a letter.'),
392
+ ],
393
+ },
394
+ {
395
+ title: 'Books I reread every winter',
396
+ slug: 'books-i-reread-every-winter',
397
+ topic: 'Rereading',
398
+ cover: 'pour-over',
399
+ excerpt: 'Five books that come off the shelf in the first week of January, and why rereading has become more useful to me than reading something new.',
400
+ publishedAt: '2025-01-12T09:10:00.000Z',
401
+ categorySlug: 'reading',
402
+ tagSlugs: ['rereading', 'habits'],
403
+ body: () => [
404
+ p('Every year, in the first week of January, the same five books come off the shelf. I did ' +
405
+ 'not plan the ritual. It collected itself over about a decade, one book at a time, and at ' +
406
+ 'some point I noticed I was reaching for them in the same order.'),
407
+ p('Rereading has a poor reputation among people who keep reading lists, because it looks ' +
408
+ 'like a failure to move on. I have come to think it is the only reading I do where I ' +
409
+ 'notice myself changing: the book stays exactly where it was, and I do not.'),
410
+ bullet('*A Month in the Country*, by J. L. Carr. A short novel about a summer spent uncovering a ' +
411
+ 'medieval wall painting in a Yorkshire church. I read it in one sitting on the first ' +
412
+ 'Sunday of the year, and it resets my sense of how much a small book can hold.'),
413
+ bullet('*The Summer Book*, by Tove Jansson. A grandmother and a granddaughter on an island in the ' +
414
+ 'Gulf of Finland. Every year a different chapter is my favourite, which tells me more about ' +
415
+ 'the year than about the book.'),
416
+ bullet('*The Rings of Saturn*, by W. G. Sebald. A walk along the Suffolk coast that keeps turning ' +
417
+ 'into something else. It taught me that an essay may wander for as long as the reader ' +
418
+ 'trusts the person walking.'),
419
+ bullet('*The Writing Life*, by Annie Dillard. Read over two evenings, mostly for the pages about ' +
420
+ 'the cabin where she worked, and then put back until next year.'),
421
+ bullet('*Middlemarch*, by George Eliot. The one that lasts all of January. I read about sixty pages ' +
422
+ 'a night and still find sentences I have no memory of.'),
423
+ h2('What I look for the second time'),
424
+ p('The first reading of a good book is mostly about what happens. By the third or fourth, ' +
425
+ 'the story is out of the way and I can watch how the book is made: where a chapter chooses ' +
426
+ 'to end, how long a scene runs before the writer cuts away, which details are planted early ' +
427
+ 'to be picked up two hundred pages later.'),
428
+ p('I keep a single page of notes for each of the five in the back of my commonplace book, and ' +
429
+ 'I add a dated line to it every year. The lines for *A Month in the Country* now run from ' +
430
+ '2016 to 2025. Reading them in order is a little like reading a diary kept by a patient, ' +
431
+ 'slightly slower version of myself.'),
432
+ p('By February I am hungry for something new, and the new books benefit from the wait. I ' +
433
+ 'read them with more attention after a month of watching how the old ones work.'),
434
+ ],
435
+ },
436
+ {
437
+ title: 'A desk with almost nothing on it',
438
+ slug: 'a-desk-with-almost-nothing-on-it',
439
+ topic: 'Habits',
440
+ excerpt: 'Every version of my desk that lasted more than a few weeks had fewer things on it than the one before.',
441
+ publishedAt: '2025-04-06T08:20:00.000Z',
442
+ cover: 'desk',
443
+ categorySlug: 'writing',
444
+ tagSlugs: ['habits', 'attention'],
445
+ body: () => [
446
+ p('For years I rebuilt my desk every time I read a good account of how somebody else works. ' +
447
+ 'A monitor arm, a better lamp, a keyboard that clicked in a satisfying way. Each change ' +
448
+ 'brought a week of feeling organised and then a slow return to the same unfinished drafts.'),
449
+ p('The desk I have now has stayed the same for two years, which is a record. It is a plain ' +
450
+ 'white table by the window with a laptop, two notebooks, a pen and a small plant that has ' +
451
+ 'survived by being ignored. Everything else lives in a drawer I have to stand up to open.'),
452
+ h2('The drawer rule'),
453
+ p('The drawer is the whole system. Anything I want on the desk has to earn its place by being ' +
454
+ 'taken out of the drawer at least once a day for a week. Headphones failed. A second ' +
455
+ 'monitor failed within two days. The notebooks have never once been put away.'),
456
+ p('It works because a clear desk asks nothing of me when I sit down. I do not have to decide ' +
457
+ 'what to deal with first. The only object that asks for attention is the notebook on the ' +
458
+ 'left, which holds yesterday’s last line.'),
459
+ h2('What stayed'),
460
+ bullet('A laptop with the brightness turned down and no notifications from nine to twelve.'),
461
+ bullet('A spiral notebook for the day’s work, and a bound one for anything worth keeping.'),
462
+ bullet('One pen, a cheap one I can replace from any corner shop.'),
463
+ bullet('A lamp for winter afternoons, which lives in the drawer from April to October.'),
464
+ p('The window matters more than anything on the desk. It faces a row of back gardens, and in ' +
465
+ 'the mornings I watch the light move across them while I wait for the first sentence. I ' +
466
+ 'used to count that as time lost. I now think it is the part of the morning when the ' +
467
+ 'sentence is being written somewhere I cannot see.'),
468
+ p('I have no advice about equipment. The desk that works is the one you stop noticing, and ' +
469
+ 'for me that happened only when there was almost nothing left on it to notice.'),
470
+ ],
471
+ },
472
+ {
473
+ title: 'Forty notebooks',
474
+ slug: 'forty-notebooks',
475
+ topic: 'Notebooks',
476
+ excerpt: 'Fourteen years of notebooks fill a shelf and a half. This autumn I read all forty in order, and they turned out to contain something other than ideas.',
477
+ publishedAt: '2025-11-09T08:05:00.000Z',
478
+ cover: 'notebooks',
479
+ categorySlug: 'writing',
480
+ tagSlugs: ['notebooks', 'habits'],
481
+ body: () => [
482
+ p('In September I took every notebook I have filled since 2011 down from the shelf and read ' +
483
+ 'them in order. There are forty. It took most of five weeks, an hour or so each evening, ' +
484
+ 'and it was the most useful thing I have done for my writing in years, though very little ' +
485
+ 'of that use was the kind I expected.'),
486
+ p('I had imagined finding ideas I had forgotten, and there were a few. What I mostly found was ' +
487
+ 'a record of how I work, kept without my noticing that I was keeping it.'),
488
+ h2('What is in them'),
489
+ p('The first eleven are the same size, a pocket format with squared paper that I bought in ' +
490
+ 'packs of three. After that the sizes wander. There is a large sketchbook from 2016 that I ' +
491
+ 'used for exactly one month, a run of cheap exercise books from the year I was trying to ' +
492
+ 'spend less, and, since 2020, a steady line of plain A5 notebooks with a stitched binding ' +
493
+ 'that lies flat.'),
494
+ p('Across all forty, the pages fall into four kinds.'),
495
+ bullet('Lists of things to write about, most of which I never wrote.'),
496
+ bullet('Passages copied from books, until 2015, when they moved to a book of their own.'),
497
+ bullet('Drafts of openings, often five or six versions of one first paragraph.'),
498
+ bullet('Records of ordinary days: when I started, where I was, what got in the way.'),
499
+ p('I would have guessed that the lists and the openings were the valuable part. They are the ' +
500
+ 'least interesting. The records of ordinary days are what I could not stop reading.'),
501
+ p('There are gaps, too. Notebook nineteen covers eleven months of 2018, and when I reached it ' +
502
+ 'I remembered why: it was the year my father was ill, and I wrote in it only on the train ' +
503
+ 'to the hospital in Wakefield. Those pages are short and very plain, and some of the best ' +
504
+ 'sentences in all forty are on them.'),
505
+ h2('The days I actually wrote'),
506
+ p('From about 2014 I noted the time and the place at the top of each page. I did it to feel ' +
507
+ 'accountable. Read together, those small headers make a map of when the writing happened.'),
508
+ p('It happened in the morning, before nine, far more often than I believed. It happened on ' +
509
+ 'trains out of all proportion to the time I spent on them. It almost never happened in the ' +
510
+ 'evenings I set aside for it, and it did not happen once in the three months of 2017 when ' +
511
+ 'I rented a room specifically to write in.'),
512
+ quote('The notebooks remember my working life more accurately than I do, because they were written before I had a story about it.'),
513
+ p('I had a story about that room for years. I thought of it as a good period. The notebook ' +
514
+ 'from those months is mostly lists of what I meant to do the next day, in increasingly ' +
515
+ 'neat handwriting.'),
516
+ h2('Handwriting as a gauge'),
517
+ p('The handwriting became the most reliable signal in the whole set. When I was writing well, ' +
518
+ 'the pages are messy: crossed out, arrowed, a sentence squeezed sideways into the margin. ' +
519
+ 'When I was avoiding the work, the pages are tidy and the lists are long. I now look at the ' +
520
+ 'week’s pages on Friday afternoons for exactly this reason. Neat pages mean something is ' +
521
+ 'wrong.'),
522
+ p('It also shows the moment a piece takes hold. There is a page in notebook twenty-six where ' +
523
+ 'the notes for an essay about my grandfather’s allotment stop being notes and become ' +
524
+ 'sentences, halfway down, in the middle of a thought. The pen changes too. I must have gone ' +
525
+ 'to find a better one.'),
526
+ h2('The ideas that did survive'),
527
+ p('A few ideas did come back from the shelf, and the way they came back was instructive. ' +
528
+ 'Notebook seven, from 2013, has a line at the bottom of a page that reads, in full: the ' +
529
+ 'walk is the draft. I wrote it on a bench by the canal and did nothing with it for eleven ' +
530
+ 'years. It became the essay about the long way to the library, and when I wrote that essay ' +
531
+ 'I had no memory of the line at all.'),
532
+ p('The same thing happened three more times. Each idea that turned into a finished piece ' +
533
+ 'appears in the notebooks at least twice, years apart and in different words, as if I had ' +
534
+ 'to arrive at it more than once before it would stay. The ideas I wrote down only once, ' +
535
+ 'however excited the handwriting, came to nothing.'),
536
+ p('It has made me calmer about forgetting. An idea that is going to matter will turn up ' +
537
+ 'again, and the notebook’s job is to catch it when it does.'),
538
+ h2('What I changed'),
539
+ p('Reading them has changed three things about how I work, all of them small.'),
540
+ numbered('I write the time and place at the top of every page again. I drifted out of it around ' +
541
+ '2021, and the notebooks from those years are much harder to read back.'),
542
+ numbered('I protect mornings and trains, and I no longer plan writing evenings. The evidence ' +
543
+ 'against them is fourteen years deep.'),
544
+ numbered('I stopped keeping lists of ideas. Anything that matters comes back on its own, usually ' +
545
+ 'within a month, and the lists mostly recorded what I felt guilty about.'),
546
+ p('I also numbered the spines at last, with a white pencil. Forty is a satisfying number to ' +
547
+ 'reach and a slightly alarming number to see on a shelf. The forty-first is on the desk as ' +
548
+ 'I write this, a third full, with this essay’s first opening on page six.'),
549
+ rule(),
550
+ h2('Notes'),
551
+ numbered('The squared paper was the right choice and I should never have left it. Lines impose a ' +
552
+ 'size on handwriting that squares do not.'),
553
+ numbered('Several readers have asked which notebooks I use. It changes with whatever the stationer ' +
554
+ 'on the corner stocks, which may be why they get filled: none of them feels too good to ' +
555
+ 'write in.'),
556
+ ],
557
+ },
558
+ {
559
+ title: 'Letter: the slow week',
560
+ slug: 'letter-the-slow-week',
561
+ topic: 'Habits',
562
+ excerpt: 'Snow closed the line to York for five days, and the unplanned mornings turned into the most rested writing I have done this year.',
563
+ publishedAt: '2026-02-15T07:30:00.000Z',
564
+ categorySlug: 'letters',
565
+ tagSlugs: ['habits', 'attention'],
566
+ body: ({ media }) => [
567
+ p('Snow closed the line to York for five days last week, and the press told those of us who ' +
568
+ 'commute to stay at home. I had a draft due at the end of the month and a plan to write it ' +
569
+ 'in the evenings. Instead I had five empty mornings and no train.'),
570
+ p('The first day was wasted, cheerfully. I made coffee slowly, read the Saturday paper on a ' +
571
+ 'Monday, and walked to the end of the street to look at the canal, which had frozen at ' +
572
+ 'the edges. On the second day I sat down at nine out of habit and wrote for three hours ' +
573
+ 'without noticing the time.'),
574
+ ...figure(media['pour-over'], 'The coffee that sets the pace of a slow morning. It takes about four minutes, which is roughly how long a first sentence takes.'),
575
+ p('By Friday the draft was finished, a fortnight early, which has never happened before. I ' +
576
+ 'have been trying to work out what was different, and the honest answer is almost nothing ' +
577
+ 'apart from the timetable. Every morning was the same length, and nothing was waiting at ' +
578
+ 'the end of it.'),
579
+ p('I cannot make every week a snow week, but I have kept one thing from it. On the two days ' +
580
+ 'I work from home, the first hour now has no fixed end. When the sentence is ready I start, ' +
581
+ 'and when it is not I make another coffee. So far it has not cost me a single deadline.'),
582
+ p('The line reopened on Monday. The train was full of people describing their own slow weeks, ' +
583
+ 'and I suspect a few of them are also trying to work out how to keep one.'),
584
+ ],
585
+ },
586
+ {
587
+ title: 'Reading on the 7:52',
588
+ slug: 'reading-on-the-752',
589
+ topic: 'Trains',
590
+ excerpt: 'Three mornings a week, twenty-five minutes from Leeds to York. Over six years that train has become the best reading room I know, for reasons that have little to do with the view.',
591
+ publishedAt: '2026-05-31T08:40:00.000Z',
592
+ cover: 'platform',
593
+ categorySlug: 'reading',
594
+ tagSlugs: ['trains', 'attention'],
595
+ body: () => [
596
+ p('Three mornings a week I take the 7:52 from Leeds to York. It is a twenty-five minute ' +
597
+ 'journey, a little longer when the train waits outside Church Fenton for a freight service ' +
598
+ 'to clear, and over six years it has become the place where I do most of my reading. I ' +
599
+ 'worked it out last month: something over three hundred hours, which at my pace is about ' +
600
+ 'forty-five books.'),
601
+ p('The train has no particular virtue as a place. It is a three-carriage unit that is usually ' +
602
+ 'too warm and sometimes too full. What it has is a structure nothing else in my week offers: ' +
603
+ 'a fixed start, a fixed end, and nothing I am allowed to do in between.'),
604
+ h2('A reading room with a timetable'),
605
+ p('Most advice about reading more is advice about finding time, and time was never my ' +
606
+ 'problem. I have plenty of evenings with an hour free. What those evenings lack is a ' +
607
+ 'boundary. At home an hour of reading is an hour I could spend on something else, and the ' +
608
+ 'book has to win that argument every few pages.'),
609
+ p('On the train the argument is over before it starts. There is nowhere to go, the work will ' +
610
+ 'not begin until York, and twenty-five minutes is long enough to read a chapter and short ' +
611
+ 'enough that I never feel I ought to be doing something more serious with it.'),
612
+ quote('On the train the book does not have to win an argument with the rest of my life.'),
613
+ h2('What I read there'),
614
+ p('After the first year I noticed that I choose train books differently. They are rarely the ' +
615
+ 'books I most want to read. They have sections short enough to survive an announcement ' +
616
+ 'about the next station, and they are long enough to last a few weeks, so that the book ' +
617
+ 'becomes part of the journey.'),
618
+ bullet('Collections of essays, which end before York more often than chapters do.'),
619
+ bullet('Long novels in short chapters. Dickens, written for monthly parts, is ideal.'),
620
+ bullet('Books about places, read while passing through a different one.'),
621
+ bullet('Anything I would feel self-conscious reading at home, which mostly means poetry.'),
622
+ p('What I do not read on the train is anything for work. The press sends manuscripts as files, ' +
623
+ 'and in the first month I made a rule that the laptop stays in the bag until the platform ' +
624
+ 'at York. I have broken it perhaps five times, each time because I had to, and each time ' +
625
+ 'the rest of the day felt slightly shorter.'),
626
+ h2('Paper, mostly'),
627
+ p('I read paper on the train. I tried an e-reader for most of 2022, and it was lighter, it ' +
628
+ 'held more, and I read less. A book on a screen is one tap away from the next book, and on ' +
629
+ 'a twenty-five minute journey I spent too many of those minutes choosing.'),
630
+ p('A paperback has the advantage of being only itself. It keeps a record, too: a ticket used ' +
631
+ 'as a bookmark, a coffee ring from a morning the carriage lurched at Micklefield, a corner ' +
632
+ 'turned down at the paragraph I meant to copy out when I reached my desk. Some of the books ' +
633
+ 'are now inseparable from the line.'),
634
+ bullet('*Bleak House*, over eleven weeks in the winter of 2021, a chapter a journey, which is still ' +
635
+ 'far quicker than its first readers had it.'),
636
+ bullet('*The Old Ways*, by Robert Macfarlane, in the spring of 2023, while the fields outside turned ' +
637
+ 'from brown to green.'),
638
+ bullet('Montaigne’s essays, in a thick paperback that has travelled to York about two hundred times ' +
639
+ 'and is still not finished.'),
640
+ h2('The company'),
641
+ p('The 7:52 has regulars. A man in a green coat does the cryptic crossword and finishes it, as ' +
642
+ 'far as I can tell, every day before Garforth. A student reads law textbooks with a ' +
643
+ 'highlighter in each hand. For three years a woman opposite me read the same thick ' +
644
+ 'paperback, and I never found out what it was, because she kept a paper cover on it.'),
645
+ p('Nobody speaks. A carriage of people reading in silence has a particular quality, and I have ' +
646
+ 'come to think it does some of the work. It is easier to keep your attention when everyone ' +
647
+ 'around you is keeping theirs.'),
648
+ h2('Evenings are different'),
649
+ p('The 17:20 home is a different train. It is fuller, people are tired, and the journey that ' +
650
+ 'carries me to York so easily is somehow longer in the other direction. I have stopped ' +
651
+ 'trying to read on it. I look out at the fields past Church Fenton and let the day’s ' +
652
+ 'manuscript settle.'),
653
+ p('For a long time I counted that as time wasted. The notebooks disagree: a surprising number ' +
654
+ 'of first lines are dated in the evening, on the 17:20, somewhere between York and Leeds.'),
655
+ p('If I left the press tomorrow, the train is what I would miss. I have wondered whether I ' +
656
+ 'could recreate it at a kitchen table, with a fixed twenty-five minutes, a book chosen for ' +
657
+ 'the purpose and the laptop in another room. I suspect the timetable is doing more than I ' +
658
+ 'could reproduce. For now I am glad of the 7:52, delays and all.'),
659
+ rule(),
660
+ h2('Notes'),
661
+ numbered('My pace is about forty pages an hour for fiction, and closer to twenty-five for anything ' +
662
+ 'with footnotes.'),
663
+ numbered('The man in the green coat was absent for most of March. He came back in April with a new ' +
664
+ 'coat, also green.'),
665
+ ],
666
+ },
667
+ {
668
+ title: 'Letter: what I read in August',
669
+ slug: 'letter-what-i-read-in-august',
670
+ topic: 'Rereading',
671
+ excerpt: 'A month with fewer trains and more time in the garden: three books finished, one abandoned, and a note on reading slowly in the heat.',
672
+ publishedAt: '2026-08-30T07:00:00.000Z',
673
+ categorySlug: 'letters',
674
+ tagSlugs: ['rereading', 'trains'],
675
+ body: () => [
676
+ p('August is the quietest month at the press, and I took the train only four times. The ' +
677
+ 'reading moved to the garden, where it is slower, because there is always a reason to look ' +
678
+ 'up.'),
679
+ bullet('*The Peregrine*, by J. A. Baker. A single winter of watching falcons in Essex, written so ' +
680
+ 'intensely that I could manage only ten pages at a time. I finished it over three weeks and ' +
681
+ 'would not have wanted it faster.'),
682
+ bullet('*Wanderlust*, by Rebecca Solnit. A history of walking I had meant to read for years. The ' +
683
+ 'chapters on walking in cities gave me the start of an essay about the canal, which may ' +
684
+ 'appear here in the autumn.'),
685
+ bullet('*Stoner*, by John Williams. A reread, the fourth. Every time I notice a different kindness ' +
686
+ 'in it.'),
687
+ bullet('A novel I abandoned at page ninety. I will not name it, because the fault was probably the ' +
688
+ 'weather.'),
689
+ p('Reading in the heat taught me something the notebooks already knew. I read better in ' +
690
+ 'short sittings with a clear end, and in the garden there is no York to arrive at. So I ' +
691
+ 'started setting a timer for thirty minutes, which felt ridiculous for about two days and ' +
692
+ 'then felt like the train.'),
693
+ p('September brings the timetable back, and the 7:52 with it. The first train book of the ' +
694
+ 'autumn is already in my bag: a collection of essays short enough to finish before York.'),
695
+ p('As ever, replies to this letter come straight to me. Two of this month’s books were ' +
696
+ 'suggestions from readers, and I am grateful for both.'),
697
+ ],
698
+ },
699
+ ],
700
+ };
701
+ //# sourceMappingURL=blog-copy-en.js.map