diff --git a/README.md b/README.md index 746d8f4..e73f8f7 100644 --- a/README.md +++ b/README.md @@ -6,204 +6,154 @@ Compile Markdown into a [WML](https://en.wikipedia.org/wiki/Wireless_Markup_Lang wapdown trail.md -o trail.wml ``` -Write a document the ordinary way; get back valid WML 1.3 that a 2001 handset can actually navigate. - -## Why this is not just another text exporter - -Most Markdown converters transform a document: same content, different markup, one file in and one file out. A WML deck is not that shape. A WAP screen is a few lines tall, scrolling is painful, and the input device is a numeric keypad — so a deck is a set of short **cards** joined by softkeys and menus, not one long page. - -So wapdown **restructures**. It decides where cards begin, builds a menu that exists nowhere in your source, wires up Back and More controls, and paginates anything still too big for the device's cache. That is why it has more knobs than a plain text exporter needs: the knobs *are* the tool. +A WAP screen is a few lines tall and driven by a numeric keypad, so a deck is a set of short **cards** joined by softkeys — not one long page. wapdown restructures a document into that shape: it decides where cards begin, builds a menu, wires up Back and More, and paginates whatever is still too big. ## Install -Install the CLI with [uv](https://github.com/astral-sh/uv): - ```bash uv tool install --from git+https://codeberg.org/randogoth/wapdown/ wapdown ``` Zero runtime dependencies, Python 3.13+. +## Markdown → WML + +Every mapping, with the markup wapdown actually emits: + +| Markdown | WML | Notes | +| --- | --- | --- | +| `# Heading` (first on a card) | `
…
` | | +| `## Heading` (and any later heading) | `…
` | WML has no heading element | +| `Text` over `===` / `---` | same as `#` / `##` | setext headings | +| Paragraph | `…
` | the only block container WML has | +| `- item` | `- item
` | no list element; the bullet is literal text | +| `1. item` | `1. item
` | numbering is counted and written out | +| `> quote` | `…
` | | +| `---` / `***` / `___` | *(nothing)* | **starts a new card**; WML has no rule element | +| `{.card Title}` | *(nothing)* | starts a new card, with a title | +| ` ```fenced``` ` / 4-space indent | `a
b