Templates give new pages a head start. They're just pages — no special editor, no separate format.
Create a page named Template: New Page. From then on, every new page begins
as a copy of it — a link back to your index, a heading you always start with, a date.
(Documents migrated from VoodooPad keep honoring an existing VPNewPageTemplate
page too — but if both exist, Template: New Page wins. If you wrote a template in
VoodooPad years ago, it is already working here.)
Settings ▸ Links & Pages ▸ New pages says the same thing and has a Show me button that opens your template — or starts one if you have not got one. It is a page rather than a box in a settings window, which is what lets a new page begin as anything at all; but a setting is where people look for it, so that is where it says so.
A template starts a page. If instead you want to make the same change to a batch of pages you already have — and keep that change to press again next month — see Bulk Edits and Stamps.
Any page named Template: Something is a reusable template — make a
Template: Meeting, a Template: Project, a Template: Person. Once you
have one, ⌘N offers a small picker — Blank, your default
New Page, and each template by name — so you choose what a new page starts as. (No
custom templates? ⌘N stays a single step, exactly as before.)
A template carries more than text: the new page inherits the template's tags, its
page type, and the values of its properties — so a Project
template can pre-set status: Active and the Project type in one go. The new page
also takes the template's format — a rich-text template makes a rich-text page — and how
it is shown: its reading width, what it exports as, and which properties show at the
top of the page. Skip on export stays with the template, so you can keep your templates out
of an export without leaving out the pages made from them. So does Outline Editing: turning
it on for a template does not turn it on for the pages made from it.
The fastest way to make one: right-click any page in the sidebar ▸ Save as Template….
It copies that page — content, tags, type, and properties — into a new Template:
page, ready to reuse.
Not every page is born through ⌘N. Highlight text and choose Link and the
new page appears without ever asking about templates; imported pages arrive the same way. You
don't have to delete and recreate anything: stand on the page, type /template (or use
the format bar's + menu), and pick one. It expands at your caret — variables
filled in with this page's name and date, placeholders ready to type over — so a page
a link created a moment ago, or one you made years back, takes a structure whenever you
decide it needs one.
Write a name in double braces and the template fills it in. These expand the moment the page is created, using your Dates & Time settings:
| Write | Get |
|---|---|
{{date}} | Jun 11, 2026 |
{{time}} | 9:41 AM |
{{timeDate}} | Jun 11, 2026, 9:41 AM |
{{pageName}} | the new page's name |
Names and answers go in as words. A page's name can be a paper's title, and a property's answer can come from a PDF or a catalog, so whatever looks like formatting in them — a tag, a link, a picture — arrives as the characters it is, never as formatting in your page. On a Markdown template their brackets and symbols show as themselves too. The one exception is a formatted property (Note (formatted)): its formatting is what it is for, and it comes in with it.
Scriptlets run at creation too, with destination template — so a
template can compute anything a script can. See Scripting: Scriptlets.
The Monday report. You keep a kind called Headlines, and it carries a property that asks a model for the five stories your field is running this week. Pressing ✦ fills it in. What you actually want on Monday is not that field — it is a piece of writing: your standing heading, the material underneath it, and a section left empty for what you think about it.
Write the property's name in braces and a template becomes exactly that:
# Report for {{pageName}}
_Compiled {{date}}_
## What the wires are running
{{Headlines This Week}}
## What I make of it
Stand on a page of that kind, insert the template, and every brace becomes that page's own answer. The kind holds the questions, ✦ goes and gets the answers, and the template turns them into a draft.
Or skip the template entirely: type {{ on the page. A list of that
page's properties appears — the same gesture as [[ for pages — and picking one
drops its answer straight into your writing, formatting and all. That is the quickest
route from "✦ went and got it" to "it is in my article": stand where you want the material,
type two braces, choose. What lands is ordinary content you can edit, cut and rewrite.
The same {{ on a page named Template: Something does the other
half of the job: there it writes {{Name}} as a placeholder, because on a
template you are describing what to fetch rather than fetching it. The list tells you which
of the two it is about to do.
You get a fresh copy, and that is the point. What lands is ordinary writing — edit it, cut it, add to it, and nothing tries to keep it in step with the property afterwards. Next week, insert it again for a new draft. Nothing you wrote can be overwritten by a later fill.
Make the template a formatted page if the material has a design. A property a model filled may hold a laid-out answer — a wall of cards, headings, links. A formatted template keeps that design intact. A Markdown template flattens it to plain headings and paragraphs, because a Markdown page cannot carry the layout. Both work; one of them looks like the thing you saw in the field.
A name that is not one of your properties is left exactly as written, so a brace you have not defined yet stays visible instead of quietly becoming nothing.
Write the braces, not dollars. An older spelling, $Name$, also
expands — templates in the wild are written that way and nothing needs changing. But
$…$ is how you write a formula (see Math), and on a formatted page
MojoPad turns one into a formula as you type. So a variable written with dollars on a
formatted page becomes italic mathematics and never expands. Braces cannot be mistaken for
anything: {{Name}} is the spelling to use, and if you have a template where a
variable turned into a formula, delete it and retype it in braces.
Write <#like this#> anywhere in a template. When a page is created
from it, the first placeholder is already selected — just type. Then press
⌃/ (Edit ▸ Select Next Placeholder) to jump to the next one, type, jump,
type. A project template might read:
Project: <#name#>
Status: <#status#>
Next step: <#next step#>
Template: Daily seeds Daily Notes instead of regular pages — same variables, same placeholders, and the same tags, page type, property values and look carried onto each day. And Template: Site reskins Static Publishing. One naming convention, three template kinds.