Skip to content

docs: fix mod--newline typo, restructure Theming, document articles-list / articles-filter / image modifiers#4

Merged
Arty2 merged 1 commit intomasterfrom
claude/modifier-docs
Apr 29, 2026
Merged

docs: fix mod--newline typo, restructure Theming, document articles-list / articles-filter / image modifiers#4
Arty2 merged 1 commit intomasterfrom
claude/modifier-docs

Conversation

@Arty2
Copy link
Copy Markdown
Owner

@Arty2 Arty2 commented Apr 28, 2026

Why

The README's Theming docs had two problems and three vocabularies of modifier were absent from user-facing docs entirely.

  1. Typo. README and config.default.toml both spelled mod-newline with one dash. The actual selector is .mod--newline (two dashes), so the documented form silently no-op'd for anyone who copy-pasted it. All other mod--* modifiers in the codebase use two dashes — mod-newline was the lone exception, and it was wrong.

  2. Misleading table. The 4-column "Theming" table (themes / colour schemes / layout mods / font mods) put independent toggles on the same row, implying e.g. that theme--default requires mod--newline + mod--font-serif. Per the directive: don't display as a table unless rows and columns make sense to combine.

  3. Undocumented vocabularies. Three groups of modifier existed in code but not in the README:

    • The 8 display classes on {{< articles-list class="…" >}} (preformatted, cluster, no-{taxa,types,tags,time,summary,text,gap}).
    • The {{< articles-filter >}} shortcode itself, its class / tagfilter parameters, the sticky helper, and how it pairs with the articles-filterable activation class.
    • The image URL-fragment syntax (#blend, #screen, #multiply, #shadow) processed by layouts/partials/render-image.html and the markdown image render hook.

What

README.md + config.default.toml: mod-newlinemod--newline.

README.md "Theming" section: the 4-column table is replaced by one bulleted list per category (Themes, Colour scheme, Layout modifiers, Font modifiers). Each list reads top-to-bottom; combinations are obvious without misleading row alignment.

README.md "Article-listing modifiers" (new): table with one row per display class — rows are independent here, so a table is the right shape.

README.md "Article filter" (new): documents {{< articles-filter >}}, the class and tagfilter parameters, the sticky modifier (a generic .sticky helper at assets/styles/screen.css:2160 applied via class="sticky"), the typical pairing with articles-list class="articles-filterable", and the noscript fallback showing per-taxon post counts via data-count.

README.md "Image modifiers" (new): documents #blend / #screen / #multiply / #shadow fragment syntax, where the parsing happens (layouts/partials/render-image.html lines 5–7, 51, 62), and the caveat that {{< include >}} does NOT process fragments — use plain markdown image syntax or {{< figure >}}.

Test plan

  • grep -rn "mod-newline" (one-dash) returns zero matches in the repo
  • Each documented modifier name resolves to a real selector / parameter / fragment keyword in code:
    • Theming mod--*assets/styles/screen.css:166, 884, 895, 899, 903, 997
    • articles-list display classes → assets/styles/screen.css:2900–2950
    • articles-filter class + tagfilterlayouts/shortcodes/articles-filter.html:3, 5
    • stickyassets/styles/screen.css:2160
    • image fragments → assets/styles/screen.css:1324–1342 + layouts/partials/render-image.html
  • cd exampleSite && hugo --gc --minify clean
  • npx html-validate@^9 … exit 0
  • Visual sanity: render the README and confirm the Theming section reads as four flat lists and each new section appears with its own table.

Docs-only — no code changes.


Generated by Claude Code

…ed modifiers

The README's "Theming" table conflated a typo with a misleading layout,
and three whole modifier vocabularies were absent from user-facing docs.

* Typo. README and config.default.toml both wrote `mod-newline` (one
  dash). The actual selector is `.mod--newline` (two dashes), so the
  documented form silently no-op'd. Fixed in both files.

* Theming layout. The 4-column table (themes / colour schemes / layout
  mods / font mods) put independent toggles on the same row, suggesting
  e.g. `theme--default` requires `mod--newline` + `mod--font-serif`.
  Replaced with one bulleted list per category — combinations are
  obvious without misleading row alignment.

* New section: "Article-listing modifiers". Documents the 8 display
  classes accepted by `{{< articles-list >}}` (`preformatted`,
  `cluster`, `no-{taxa,types,tags,time,summary,text,gap}`) plus the
  activation classes `articles-filterable` and `stack`. These were
  defined in CSS only, not docs.

* New section: "Article filter". Documents `{{< articles-filter >}}`,
  its `class` and `tagfilter` parameters, the `sticky` modifier
  (generic helper at `.sticky`, applied via `class="sticky"`), how it
  pairs with `articles-list class="articles-filterable"`, and the
  noscript fallback that shows post counts via `data-count`.

* New section: "Image modifiers". Documents the URL-fragment syntax
  (`#blend`, `#screen`, `#multiply`, `#shadow`) recognised by
  `layouts/partials/render-image.html` and applied via the markdown
  image render hook + `{{< figure >}}`. Notes that `{{< include >}}`
  does not process fragments.

The new article-listing / image / filter sections use tables (each row
is a single class with a single description, no cross-cutting); the
Theming section deliberately doesn't (rows would imply non-existent
correlations between independent toggles).

Docs-only: no code changes. Cross-checked every documented name
against a real selector / parameter / fragment keyword.
@Arty2 Arty2 merged commit 22ddc1a into master Apr 29, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants