Wit

Creative writing without indentation

Write fiction where the source reads like the finished page — flat paragraphs, no indentation, scenes and emphasis in the lightest possible markup. The file below is complete and builds green.

The whole story

source
@h2 One · The Harbour h2@

The rain had not stopped for three days.

Mara pressed her palm to the cold glass and counted the boats that were
no longer there. _One. Two._ The third had been her father's.

#scenebreak: ✦ ✦ ✦ !!

@scenebreak

"You can't stay," the harbourmaster said.

She said nothing. There was *nothing*, she had learned, that saying could fix.

@hr hr@

And then the tide turned.
result

One · The Harbour

The rain had not stopped for three days.

Mara pressed her palm to the cold glass and counted the boats that were no longer there. One. Two. The third had been her father's.

✦ ✦ ✦

"You can't stay," the harbourmaster said.

She said nothing. There was nothing, she had learned, that saying could fix.


And then the tide turned.

What each piece does

  • Paragraphs. Just type them, a blank line between. No leading spaces, no wrapping node — each block becomes its own paragraph.
  • Emphasis. One. Two. becomes italics; nothing becomes bold. The marks wrap a run of text and nothing else.
  • A scene heading. h2 opens the chapter.
  • A scene break. Define an ornament once — #scenebreak: ✦ ✦ ✦ !! — and drop it in as a bare @scenebreak. For a plain rule, @hr hr@ is core vocabulary.

Build

wit build story.wit --fragment

Or -o story.pdf for print. Verified: each block is its own paragraph; One. Two. renders as italics and nothingas bold; @scenebreak prints the ornament; @hr hr@ renders a horizontal rule. The apostrophe in father's passes through correctly.

Pitfalls

  • There is no break node. Use @hr hr@ or a definition of your own for a divider — break is not core vocabulary.
  • Nest emphasis outer-italic. _*x*_ leaves the inner * literal; write *_x_* to get bold italics.

Variations

Name an epigraph as a reusable value definition and recall it with a bare reference; give a scene heading a subtitle with an interpuncted h2title, as above.

See also

Emphasis

covers the token-wrap rule in full; An interactive script adds data and logic to a scene.