SCRIBE Redux: a format parser for Scribe

Jeremy Douglass, 2026-01
Type SCRIBE in Input, see rendering in output. Select samples to try it out. Inspect the PEGGY.js AST. See details below.

Input

Output (AST)


          

Output (Rendered)

Prototype Status

  • Parsing: plain text; paragraphs split on blank lines; optional line numbers auto-detected/stripped.
  • Inline formatting: @i, @b, @p, @t, @c, @u/@ux/@un, @+/@-, @r with six delimiter pairs ((), [], {}, <>, '', ""); nesting allowed; @@ escape for literal "@".
  • Blocks: QUOTATION inserts (short @Quotation(...) and long @Begin/@End) render as block quotes/indents; text resumes after.
  • Devices/rendering (@device):
    • Classic device simulation:
      • LPT: wraps at 132 cols; italic/underline mapped to bold; monospace preview.
      • XGP: PDF preview (helvetica/courier) with @i/@b/@u variants, typewriter font, small-caps simulation.
    • New devices:
      • Plain: normalized text output.
      • HTML: paragraph + inline formatting as HTML.
      • Markdown: paragraph breaks; @i→_italic_, @b→**bold**, underline variants rendered via HTML tags; block @t as fenced code.
  • Playground: sample loader, debounced live preview, manual refresh, status indicator.
  • Not yet supported: other block structures/inserts, lists, footnotes, macros, styles, references, tabs, verbatim, device-specific constraints.