Beta. The iPhone & iPad app is in beta and not on the App Store yet. Leave your email on the home page to get access.

Extensions

Type a command like sum(2, 3) and press Return to run a JavaScript extension. Browse and pin commands, import your own, and sync them through iCloud.

Updated for iOS 1.65

Extensions

Design Intent: Small commands you type, written in JavaScript, that run inside the note. Yours or the official set.

Running a command

  • Type a command with the command prefix in front — ::sum(2, 3), say — and press Return. The result is inserted according to the command: appended, replacing the line, replacing the note, or opening a URL. A command that inserts or replaces its line leaves the keyboard up with the caret at the end of the result, so you can keep typing; a command that replaces the whole note puts the keyboard away so you can read.
  • Commands complete themselves. Type the prefix and a row of matching commands appears just above the Quickbar — the most recently used or best match first. Tap one to insert it (with its opening bracket when it takes parameters). The row then shows the command's signature with the parameter you're on in bold, what it expects and its default, and a button for the next bracket or comma — or Run once the command is complete. A problem (a word where a number should be, a missing parameter) shows in the row before you run it. Return never splits an unfinished command. The keyboard follows the parameter: a number parameter brings the Math keyboard up by itself and a true/false one shows two keys, true and false; the text keyboard comes back when you move on, close the bracket, or type something the parameter can't take.
  • The prefix is yours to change: Settings › Extensions › Command prefix takes one to three symbols, so !bullet() can stand in for ::bullet() if that is easier on the keyboard. Quick commands and the Recent list follow whichever prefix you pick, on every device.
  • The Extensions Quickbar button opens a sheet with Search commands, Recent and All; each command has Run and Preferences tabs and a Run extension button.
  • Pin a command to the Quickbar as a quick command (New quick command in the Quickbar sheet), choosing Run immediately or Edit parameters first. A quick command goes in on the line you are on — after a space if there is text before the caret — rather than on a new line.
  • Extensions are part of the Lifetime license.

Managing extensions

  • Learn how extensions work, at the top of Settings › Extensions, opens this section.
  • Settings › Extensions lists Official extensions (disable, not delete) and Community extensions (swipe to Disable or Delete). Import extension… takes a .js or .json file; Reinstall official extensions restores the bundled set.
  • iOS never downloads extension code from the network. Extensions you import or make on another device reach this one through iCloud when Sync with iCloud is on (custom extensions included); Sync extension usage history keeps “Recently used” in autocomplete the same everywhere. Both switches are also in Settings › Sync & privacy.
  • Writing your own: see the extensions documentation.
Settings
  • Extensions › Enable extensions On / Off
  • Extensions › Sync with iCloud On / Off
  • Extensions › Sync extension usage history On / Off