The content now uses standard Markdown, rendered by render hooks
(layouts/_markup):
- images: , rendered as a figure when the
image is standalone (replaces attachedFigure and screenshotOf)
- links: resolved to a page resource (replaces attachedFileLink in
links), to a page of the current site or of the other site with a
language flag (replaces internalLink and relref), and relative links
are made relative to the site root (they were broken in RSS feeds)
- code blocks: ```yaml {filename="x.yaml" hl_lines="3"} or
{title="..."} (replaces highlightFile, highlightWithTitle, highlight)
The content was converted with scripts/convert-shortcodes.py, which can
also be used on the drafts. The attachedFileLink shortcode is kept for
the URLs in code blocks, as well as embeddedVideo and youtube.
The generated HTML is the same, except:
- figures are no longer nested in paragraphs (invalid HTML)
- the screenshots of tweets get an alt text
- the language flags are removed from the summaries
Closes#13
Refs #11
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YNHsWYTXPThURz6TbVS1j3
- the search index is generated by Hugo as a separate JSON file
(searchindex output format), loaded by the search page and cached by
the browser: the search pages go from 96 KB to 7 KB
- Fuse.js 6.4.3 -> 7.5.0 (basic build). Since Fuse.js 7 no longer
provides an UMD build, search.js is now an ES module importing it.
- search on the input event instead of keyup (paste, autocompletion)
Refs #11
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YNHsWYTXPThURz6TbVS1j3