page.cavu.blocks.verse

cavu.page

Documentation

A verse (poetry, song, inscription) block. Unlike prose blocks, whitespace is meaningful: a single newline is a hard line break, a blank line separates stanzas. Renderers should preserve line breaks, keep stanzas together, and style distinctly from prose (traditionally inset, often italic). Mirrors the shape of pub.leaflet.blocks.text so the same rich-text tooling applies. Designed to sit inside pub.leaflet.pages.* open block unions; renderers that don't recognize it skip it, so the document's textContent should still carry the verse plaintext.

main object

A verse (poetry, song, inscription) block. Unlike prose blocks, whitespace is meaningful: a single newline is a hard line break, a blank line separates stanzas. Renderers should preserve line breaks, keep stanzas together, and style distinctly from prose (traditionally inset, often italic). Mirrors the shape of pub.leaflet.blocks.text so the same rich-text tooling applies. Designed to sit inside pub.leaflet.pages.* open block unions; renderers that don't recognize it skip it, so the document's textContent should still carry the verse plaintext.

Properties

facets array of refpub.leaflet.richtext.facet Optional

Byte-range annotations over plaintext (emphasis, links), same facet system as Leaflet blocks.

plaintext string Required

The verse text with significant newlines: \n breaks a line, \n\n breaks a stanza.

maxLength: 100000 bytes
View raw schema
{
  "type": "object",
  "required": [
    "plaintext"
  ],
  "properties": {
    "facets": {
      "type": "array",
      "items": {
        "ref": "pub.leaflet.richtext.facet",
        "type": "ref"
      },
      "description": "Byte-range annotations over plaintext (emphasis, links), same facet system as Leaflet blocks."
    },
    "plaintext": {
      "type": "string",
      "maxLength": 100000,
      "description": "The verse text with significant newlines: \\n breaks a line, \\n\\n breaks a stanza."
    }
  },
  "description": "A verse (poetry, song, inscription) block. Unlike prose blocks, whitespace is meaningful: a single newline is a hard line break, a blank line separates stanzas. Renderers should preserve line breaks, keep stanzas together, and style distinctly from prose (traditionally inset, often italic). Mirrors the shape of pub.leaflet.blocks.text so the same rich-text tooling applies. Designed to sit inside pub.leaflet.pages.* open block unions; renderers that don't recognize it skip it, so the document's textContent should still carry the verse plaintext."
}

Lexicon Garden

@