HowToUseThisWiki

☞ redirected from TextFormattingRules

A field guide to this wiki's notations — what the old wiki called TextFormattingRules. Written by Fable, 2026-07-12, expanded 2026-07-14. Everything below is live: correct it, prune it, add to it.

Contents

  1. Writing
  2. Headings & the table of contents
  3. Links
  4. Footnotes
  5. Images
  6. Sound, film, sculpture
  7. Tags
  8. Categories & the nav bar
  9. Time
  10. Dressing a page
  11. Rows — things side by side
  12. Old notations that still work
  13. Keeping it yours — password, tokens, going online
  14. The doors

Writing

Pages are markdown — paragraphs, **bold**, *italic*, # headings, lists, quotes, code fences. Double-click any quiet spot on a page to edit it in place; ⌘S saves, esc leaves, the title is editable too. Every save is kept forever — history at the foot of any page shows past versions and can restore them.

Starting a new page: type its name into search (top right) and press enter. Already exists? It's the very first result. Doesn't exist yet? A dashed + name box offers to start writing it right there — the same one-click habit the old wiki's little GoTo field gave. A dashed WikiLink or CamelCase word does the same thing — see Links below.

At the foot of every page: edit · history · backlinks · raw. Backlinks answers "what points here?" — it is also what makes rename safe: rename a page and every link to it is rewritten.

To delete a page, the old gesture: edit it, replace its entire text with the single word DeletedPage, save. The page vanishes — but git forgets nothing, so its history remains and any version can be restored. Deletion here is a door closed, not a room burned. (Deleting an image is different and final — see Images below.)

Headings & the table of contents

Ordinary markdown headings — # one hash down to ###### six hashes — make section titles, biggest to smallest:

# Big heading
## Medium heading
### Smaller still

The moment a page has three or more headings, a Contents box appears automatically, right before the first heading — a jump-link list nested to match the headings' depth, no notation needed. Fewer than three and nothing appears; a short page doesn't need a map.

Every heading also gets its own address (a slug of its own words) so anything can link straight to it with an ordinary #anchor — a heading titled Old notations that still work becomes #old-notations-that-still-work, and that's exactly where the Contents box's link for it points.

Footnotes

Images

Upload at /upload, drop a picture straight into the editor, or paste a screenshot — any of the three lands the file and leaves [[thumb:Name]] behind. Give it a one-sentence description (its alt text — what the gallery, search, the viewer, and screen readers say when they mean it); a jpg or png over 2400px on the long edge is quietly resized before it ever touches disk, gifs and svgs are left alone.

Recognized image types: .jpg/.jpeg, .png, .gif, .svg, .webp, .avif. Any of these on a line by itself, as a bare https://… link, turns straight into the picture — no notation needed, the oldest Oddmuse reflex of all.

Forgotten what a picture is called? Open it — click it anywhere it appears — and the viewer's caption always says its wiki name, right below the description: name: Aloysius, and that name is now a link straight to the picture's own page in the wiki.

Naming it something other than the file: on /upload, a linked as field sits above the description — leave it blank and the file's own name (minus extension) is used, same as always; fill it in and the wiki answers to that instead. Upload IMG_4021.jpg as Aloysius and it saves as Aloysius.jpg, findable forever after as [[image:Aloysius]].

AI description (optional): if this wiki has been given its own Anthropic key (npm run claude-key in the wiki folder, once — writes a small gitignored file; the key never reaches the browser), an AI description button appears on /upload next to the ordinary upload button. Click it and Claude looks at the picture and writes the alt text. Always editable afterward, never required — no key set, no button shown, nothing else about uploading changes.

A name with nothing behind it yet — [[image:Aloysius]] or [[thumb:Aloysius]] for a picture not uploaded yet — shows red and dashed like a missing page. Click it and it opens /upload with that name already filled in, waiting for a file.

Clicking any image opens the viewer: large, with its description as caption, and arrows (or arrow keys, or a swipe) to walk through every image on the page. Esc closes. When logged in, the viewer also offers edit caption — a small page of its own for rewriting the description or its tags, and, at the bottom behind a confirm, delete this picture.

Deleting an image is not like deleting a page. A deleted page leaves a ghost and history can always bring it back; a deleted image is simply gone from the wiki's own view of itself the moment you confirm — there is no undo screen. (The bytes still sit in old git commits if it ever truly mattered, but nothing in the wiki itself offers them back.) A page that used to show the picture just shows a gap where it was.

Sound, film, sculpture

Tags

[[tag:Name]] anywhere on a page tags it. The notation renders as a link to everything else carrying that tag. All tags gather at /tags. Uploaded images carry tags too, in the file manifest — set them from the same edit caption screen described above.

[[list:Name]] — every page that declares [[Name]] as its hall (a link in its first line), listed alphabetically. This is the old cluster listing; the old spellings <list "Name"> and <search "word"> still work.

Categories & the nav bar

The old wiki's category habit still works, only lighter: a page's very first line, if it's a lone [[PageName]] with nothing else on the line, becomes that page's hall — a quiet label above the title instead of the first line of the prose. FiftyBooks and ElegantMedia are halls this way, among many others; no special setup, no field to fill in — just make the first line a link and save. Atlas is the hand-written map of every hall in the wiki, the place to look when a category's main page has slipped your mind.

The top bar itself is a page, the old wiki's way: edit NavBar — search for it, or go straight there — one link per line, [[Page]], [[Page|label]], or [label](/url) for the engine's own doors (index, recent, gallery…). Add a line for any hall you want one click away from everywhere; delete the whole page and the built-in bar returns.

A pulldown: a bare line ending in a colon, like categories:, opens a group — indent the link lines under it and they become that pulldown's menu instead of separate items in the bar:

categories:
  [[FiftyBooks|books]]
  [[ElegantMedia|media]]

Click the label to open it, click a link to go, click anywhere else to close it again — the browser does the work, no script required.

Time

Dressing a page

Rows — things side by side

The successor to the old long tables (all the Book pages already speak it):

:::row booknav
:: l
[[Book18|18.]]
:: r
[[Book16|16.]]
:::

One block is one row. Each :: begins a cell — everything until the next :: belongs to it: markdown, images, notations, all of it. The word after :::row or :: is a CSS class (l, r, c align left, right, center). Short rows fit on one line, cells split on  :: :

:::row
[[thumb:one|200]] :: [[thumb:two|200]]
:::

For actual data, ordinary markdown pipe tables work too:

| year | book |
|------|------|
| 1993 | 17   |

Old notations that still work

Keeping it yours — password, tokens, going online

None of this is required to write in the wiki; it only matters once the wiki is reachable by anyone other than you.

The password: from the wiki folder, npm run password sets one — it writes .auth.json (gitignored, no secret ever enters history). From then on reading stays public but editing, saving, uploading, and restoring want a login at /login (a 90-day cookie). Without .auth.json the wiki is wide open — fine on your own Mac, not once it's on the internet. To hide even the reading, set "private": true in config.json. Changing the password logs out every browser.

Publishing from another app: npm run api-token mints a token in .api-token.json (gitignored) that lets an app — Tincture, for instance — call the wiki's upload and save doors directly, with a bearer token instead of a login cookie. It never unlocks editing by hand, renaming, or a private wiki's reading. Run the command again any time to rotate it; the old token stops working the moment the new one is written.

Going online: the engine can live on a small server so the wiki is editable from anywhere and so Tincture (or anything else with the token above) can reach it. Double-click Go Online.command in the wiki's folder; Bring Home.command pulls it back to this Mac. deploy/README.md tells the whole story if the short version isn't enough.

Backups: every save is already a git commit, so the entire wiki's past is inside it — nothing extra to remember day to day. If this Mac itself were ever lost, whatever the wiki was last brought home to (or its copy on the small server, if it's currently online) is the backup.

Baking a static copy: npm run export (from the wiki folder, in Terminal) writes the whole wiki out as plain HTML files into _site/ — reading, search, the gallery, tags, and /random all still work with no server at all, for handing the wiki to any ordinary web host. It's a snapshot, not a mirror — it doesn't update itself, and nothing typed into it saves back here.

The doors

about · atlas · index · recent · gallery · tags · random in the nav, plus:

The engine's own settings — title, home page, port, the site stylesheet, private, maxImageDimension, disabledModules — live in config.json next to the content — the one thing here that is not a page. EngineModules is the map of every module file behind the notations above.

  1. like this