WORK-478
ID:WORK-478Status:ready

Lumina prose interpretation + generalised dropcap

Give Lumina its theme-owned interpretation of [data-reading="prose"] and generalise textblock's dropcap to a prose-register-gated opt-in. Per SPEC-108 §2–§3 + Work breakdown 3.

Priority:mediumComplexity:moderateMilestone:v0.26.0Source:SPEC-108
claude/v0.26.0-milestone-2vuxi9 View source

Criteria completion

Criteria completion: 0 of 3 (0%) checked; tracking started on Jun 25, no incremental history yet0%25%50%75%100%Jun 25Jul 11

Tracking started Jun 25 — check back for trends.

Branches 3
claude/v0.26.0-milestone-2vuxi9 current ready
main donechangeset-release/main doneclaude/spec-108-lumina-prose done
History 1
  1. 17d2678
    Created (ready)by bjornolofandersson

Scope

  • Style [data-reading="prose"] (not rune-name lists) in Lumina: capped measure (--rf-measure, distinct from width), a paragraph style, lede eligibility, and running-text niceties (hanging punctuation, link underline, widow/orphan, hyphenation). fine gets its smaller/tighter treatment; ui is unchanged.
  • Generalise dropcap: plumb it centrally (not re-declared per rune) and gate it on the resolved prose register via READING_CAPABILITIES (WORK-476); a no-op (dev warn) off-register. The non-rune article body reaches it by wrapping the opening passage in textblock. The theme owns the glyph treatment; the author owns where.
  • textblock keeps columns as its own feature; its body becomes reading="prose".

Acceptance Criteria

  • reading="prose" drives a theme-owned editorial treatment in Lumina: capped measure (distinct from width), a paragraph style, lede eligibility, and running-text niceties — selected by [data-reading="prose"], not rune-name lists.
  • dropcap is a per-instance opt-in available on any prose body (generalised from textblock), gated on the resolved prose register (not a rune allowlist) and a no-op elsewhere; the theme owns the glyph treatment.
  • measure and width remain independent — a width: full block can hold reading: prose text at a capped measure (the editorial-header composition renders correctly, light + dark).

Dependencies

  • WORK-476[data-reading] emission + the READING_CAPABILITIES gate.
  • WORK-477 — the per-rune/layout defaults that put bodies into prose to style.

References

  • Spec: SPEC-108 §2 (what prose enables), §3 (dropcap, prose-gated). Composes with SPEC-107.
  • packages/lumina/styles/dimensions/sections.css, packages/runes/src/tags/textblock.ts.