MojoPad

Page Links Everywhere

Pages don't have to be reachable only from inside MojoPad.

Edit a link in place

Right-click any link — a page link or a web link — and choose Edit Link… to change its text and destination without unlinking and starting over. (Clicking a link always navigates; the right-click menu is the editing door.) The same menu offers Open in New Tab / Open in Split View for page links, Copy URL and Import This Page for web links, and Remove Link, which keeps the text.

Import This Page is for reading something and wanting what it cites. It captures what the link points at and files it in your wiki as a page — trimmed to the article, searched and linked like anything else — and it does not take you there. You are in the middle of something, and a page you are reading often cites more than one source worth keeping, so it stays out of your way and puts an Open it button at the foot of the window for when you are ready. It asks once how to keep the clip, cleaned up or as the page looked; answer that in Settings ▸ Web Clipper and it never asks again.

Editing an automatically-created link makes it yours — MojoPad's auto-linking won't rewrite it afterwards. Web destinations may be web, mail, or MojoPad addresses; anything else is refused, so a link can never smuggle in something that runs.

Copy Link to Page

Edit ▸ Copy Link to Page (⌃⇧⌘C) puts a mojopad:// link to the current page on the clipboard. Paste it into Mail, Things, Calendar, a Terminal script, anywhere — clicking it opens MojoPad, opens the right document, and lands on the page. Paste one into another MojoPad document and it auto-links there too: cross-document links.

The Web Clipper

Clip the page you're reading straight into MojoPad. Two ways:

  • Clip to MojoPad (Chrome extension) — the easy one. Install it from the Chrome Web Store and click its toolbar button on any page. Because it captures the fully-rendered page from your own tab, it works where a plain fetch can't — JavaScript-built articles and pages behind a login or cookie wall come through as the real content. Images are embedded, and the clip travels to MojoPad over a private local channel (nothing goes to a server). MojoPad just needs to be running. You'll be asked, as always, whether to keep the page clean & editable or as an original snapshot.
  • The bookmarklet — no install, and it works in Safari too. In Settings ▸ Web Clipper you'll find a snippet of JavaScript; make a new bookmark and paste it as the bookmark's address. Clicking it sends the current page to MojoPad — the selection if you've made one, clipped straight from what you are looking at and with a link back to the source. With nothing selected it sends only the address, and MojoPad fetches the page itself — which many news sites refuse and nothing behind a subscription will answer, because the fetch has none of your browser's sign-ins. For whole pages from sites like those, use the extension.

Save PDF to MojoPad

Every print dialog on your Mac gains a Save PDF to MojoPad entry (in the PDF pop-up menu, bottom-left). Receipts, confirmations, articles — straight into the frontmost document as a viewable PDF page.

Automation links: capture from anywhere

Two more mojopad:// links turn any launcher — Raycast, Alfred, Shortcuts, even the terminal — into a capture tool:

  • mojopad://today?text=Call%20the%20plumber — appends the text as a new line at the bottom of today’s daily note (creating it if needed).
  • mojopad://new-page?name=Meeting%20notes&text=First%20line — creates a page (with optional starting text) and opens it.

Try it in Terminal: open "mojopad://today?text=hello". Text arrives as plain text, exactly as written — remember to URL-encode spaces and punctuation. Both act on the document window you used last, and need a document open.

Every mojopad:// link there is

The whole scheme, for anyone writing these rather than copying them. Every menu item above puts one of these on your clipboard, so you rarely have to compose one by hand — but a script, a launcher, or a program that files things into your wiki may want to, and here is all of it. Everything in a link is URL-encoded.

LinkWhat it does
mojopad://open?…Opens a document and lands somewhere in it. The parameters are below.
mojopad://today?text=…Adds the text as a new line at the bottom of today's daily note.
mojopad://new-page?name=…&text=…Makes a page and opens it.
mojopad://clip?url=…&title=…&text=…What the bookmarklet sends. The Web Clipper section above is the door most people want.
mojopad://manualOpens this manual.

The parameters of open. doc says which document, and the rest say where to land in it. Give as many as you like: naming a page and a folder opens the page and reveals its folder in the sidebar, which is the pair most worth knowing about.

ParameterWhat it namesWhere to get one
docThe full path to the .mojopad document. If the document is no longer there, MojoPad looks for it rather than giving up — see below.Every link MojoPad copies carries it.
pageA page, by its id — never by its name, so a page you rename keeps every link anyone has made to it.Edit ▸ Copy Link to Page.
folderA folder in the sidebar, by its id. Its ancestors open and it is scrolled into view.Copy Link to This Folder, right-clicking the folder.
fragA place within the page. Four forms, and you never have to write one: a heading by its words; ^ and a block's id; = and a marked passage's name, which is what Copy Link to Selected Words writes on a page; and hl: and a highlight's id, which is what it writes in a PDF. The first two are the forms a [[Page#…]] link uses inside the wiki.Copy Link to Selected Words for the last two; type the first two by hand if you are composing a link in a script.
cardA card on a board, by its id. The board opens with the camera on it.Copy link to card, right-clicking the card.

A link whose document has moved still works. A link carries the document's location, so moving or renaming a wiki used to break every link anyone had made to it, silently — clicking one simply did nothing. It now looks for the document instead: a link names a page, a page's id is its filename inside the document, so MojoPad asks the wikis it knows about which one holds that page. That works on links written years ago, and on a wiki that was moved and renamed, where nothing about the old address is true any more. When it opens a document the link did not name, it says so in the status bar.

It will not guess between two. If you keep a copy of a wiki — a duplicate, a restored backup, the same wiki on two disks — more than one can hold the page, and MojoPad asks you which rather than picking the most recent. If it finds nothing, it offers to let you find the document once; and if the document is simply on a disk that is not connected, it says that instead, because that is not a wiki that has gone anywhere. A wiki MojoPad has never opened at its new location is one it cannot look inside, so the first time you move a wiki, opening it once is what teaches MojoPad where it went.

A link that names something no longer here says so rather than doing nothing: a page or a folder that has been removed, or a marked passage that was edited away, all leave a note in the status bar with the document open in front of you.

One more scheme leaves the app: a citation you copy out of a reader — a page, a page of a PDF, a marked passage — is written into Markdown exports as a mojoref: link. It is made by MojoPad and read by MojoPad, so that an exported document can still point back at what it came from; there is nothing in it to compose by hand.