features · v1.0.21
Everything Mudlark does.
Mudlark is twenty prefixes, an escape character, two inline notations for note links and embeds, and a stack of small quality-of-life features.
The eight basics.
- #HeadingsectionCreates a section heading. Everything below it groups under that heading on the right.# Project Notes→Project Notes
- +Tasktodo itemAdds an unchecked task. Tasks float to the top of their section on the right.+ Buy groceries→☐ Buy groceries
- −DoneactionChecks off a task by fuzzy-matching its name. Content after the space is the task name to match. Use _ to remove items of any other type.- buy gr→☑ Buy groceries
- !HighlightemphasisMarks a line as important. Rendered bold and prominent on the right.! Demo is at 3pm→Demo is at 3pm
- "QuoteblockWraps a line in a styled blockquote with a left border." Simple things should be simple→“Simple things should be simple”
- *Bulletlist itemCreates a bullet point. Multiple bullets form a list under the nearest heading.* Bring the good coffee→• Bring the good coffee
- %Numberedordered listCreates a numbered list item. Auto-numbered on the right side.% First step→1. First step
- @MediamediaEmbeds an image or video from a file path, URL, or dropped file.@ photo.jpg→[image: photo.jpg]
Thirteen more.
- `Codesyntax-highlightedA line of code. Add a language hint right after the prefix for syntax highlighting.`js console.log("hello")→console.log("hello")
- =Mathinline evalEvaluates a math expression inline. Unit-aware arithmetic across lengths, weights, times, and temperatures. Variables and constants (pi, e) included.= 100 km to mi→62.14 mi
- :TimercountdownStarts a countdown timer. Phases separate with commas, as in 5m work, 5m rest. A mode word glued to the prefix changes the clock: :repeat starts over each time it finishes, :repeat4 stops after four cycles, :alarm 15:30 waits for a time or a date, and :since 2026-06-01 counts up from one. Mudlark can notify you when a timer ends, if you turn that on in Settings.: 25m→25:00 ▶
- &TablerowCreates a table row. Use | to separate columns. First row becomes the header.& Name | Role | Status→Name | Role | Status
- >MoverelocateRe-parents an item to the current section by type and fuzzy match. Requires a type prefix. Add @ to send to a specific section (e.g. > + fix or > + fix @ Home). Double the type prefix (> ++ name) to move a whole named block instead of one item.> + fix bug→[moved: fix bug]
- .Write-towrite-toCreates a new item under an @ destination heading (e.g. . + milk @ Shopping). An optional type prefix sets the item type; without one, the line is written as plain text.. + eggs @ Shopping→[added to Shopping]
- _RemoveRemoves an item or section by type and fuzzy match (e.g. _ ! ship or _ # old). The inner type prefix needs its own trailing space. Double the inner prefix (_ ++ name) to remove a whole named block. That is the only way to target composite blocks like code, tables, or math._ ! ship→[highlight removed]
- /CommentprivateA private note that only appears on the left side. Never rendered on the right./ todo: revisit this later→(hidden)
- ~RuleseparatorDraws a horizontal rule. Completions and moves cannot cross it. Add a label to center text on the rule.~ Chapter 2→——— Chapter 2 ———
- ,FindsearchSearches content above. Add | replacement to replace all matches. Add @ heading to scope to a section., search | replace→[3 replaced]
- ^FootnotefootnoteDefines a footnote. Drop a bare ^ at the end of a word (no space) to attach a sentinel. On its own line, ^ text defines the footnote. Sentinels and definitions pair by source order.^ The cat was orange.→¹ The cat was orange.
- \EscapeliteralMakes the rest of the line plain text. Bypasses all prefix parsing.\ + Not a task→+ Not a task
- $Metadatametadata chipPer-note metadata surfaced as a chip in the rendered pane. Use key=value rows like $ tags=trip, $ source=https://… or free-form notes like $ remember the shipping address.$ tags=lisbon, trip→[tags: lisbon, trip]
capabilities
Twenty more capabilities.
- Quick capture
⌥Space opens a capture bar over any app. ⌥⇧Space pre-fills it from the clipboard.
- Note links
Link notes to each other. Renames keep every link in sync.
- Today's note
Opens a note titled with today's date and creates it if none exists.
- Inline embeds
Drop images, video, math, code, and live timers into any sentence.
- Table formulas
Tables can do arithmetic. Total a column or a row. The text keeps the formula.
- Media galleries
Lay photos and video out in justified rows, no cropping.
- Live timers
Countdowns can repeat and tick inside any sentence.
- 20 themes
Ten light, ten dark. Or build your own with the theme builder.
- Export
Send notes and tasks to 12+ destinations.
- Automation
Control Mudlark from Apple Shortcuts and mudlark:// URLs.
- Custom shortcuts
Rebind every keystroke and change the prefix characters.
- Reader mode
Show only the rendered view of a note.
- Window pinning
Pin above other windows to keep Mudlark visible.
- Inline formatting
Italic, bold, and code styling inside any line.
- Smart typography
Arrows, fractions, symbols, and smart quotes convert as you type.
- Spell check
Underlines mistakes as you type and skips code.
- Custom callouts
Make your own line type with a prefix, icon, and color.
- Category order
Reorder or hide item categories in the rendered pane.
- Note pinning
Pin notes to protect them from auto-cleanup.
- Cheat sheet
Full reference for every prefix and shortcut (⌃⌘/).