| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Two of the differences the page-by-page diff against the live site turned up.
The TOC was the larger one: live has one on 171 pages and the org-ssg build had
none. `[html] toc = true` only *exposes* `page.toc` — rendering it is the
layout's job, and base.html never did. It now emits the same
`div#table-of-contents` Emacs does, from a recursive macro over the tree. The
anchors already matched, so every link lands where the live one does. Pages that
say `#+OPTIONS: toc:nil` get an empty tree and render nothing, which is why
/uses/, /now/ and /salary/ have no TOC here either — the same three as live.
/blog/ now breaks its list under year headings, as the live index does, using
`page.year` and minijinja's groupby. `group_by_year` at the top of blog.html
turns it off for one flat list.
After both, /blog/ matches the live page's content exactly, and 171 of 171 TOCs
are accounted for.
|
|
|
The org-ssg build rendered the right content in the wrong chrome. Closing every
difference found by comparing it against theme/templates/ and the live pages:
- base.html: Home link written by the layout rather than the site title, a
<title> of "Page - cleberg.net" (bare "cleberg.net" on the home page, via a
subtitle block), author/description/og meta, the RSS alternate link, four
rel="me" identity links, favicon, skip link, <main id="main-content">,
aria-label on the nav, and the real footer.
- home.html: the h1 is "Christian Cleberg" (the collection's title), and the
email line has its GPG link back.
- blog.html and garden.html: the two listings carry their own prose on the live
site — the search/RSS hint, and the garden's growth stages — so they are no
longer sharing the generic list.html. Tag pages still use it.
- tags.html: "Browse posts by topic."
- Blog posts get the reply-by-email and Bubbles lines. org-ssg has no per-page
template selection, so the layout keys off the page's URL prefix.
- Tags leaves the nav, which the live site does not have.
feed.xml is new: the footer links /feed.xml and nothing was generating it. It
is a collection whose template happens to be XML. Its <description> carries
each post's excerpt rather than the full rendered body, which weblorg's feed
does include — a collection template gets each entry's metadata, not its HTML.
base_url is now set, since canonical links and a feed cannot be relative. Page
links stay relative, so a preview build still works from any directory.
gpg.txt, robots.txt and salary.csv are copied in from theme/static/: weblorg
publishes that directory to the site root, and org-ssg publishes from content/,
so /gpg.txt was a 404. styles.min.css is deliberately not copied — it is
gitignored build output, and the tracked styles.css holds the same rules.
|