Expand All
Welcome to Nova!
Projects
Editor
Terminals
Previews
Git
Tasks
Debugging
Remote Files
Extensions
Appendix: Settings
FAQs
Support

Clips

Easily save and insert reusable text snippets.

Clips are snippets of text you can store in Nova for quick and easy reuse, in both the Editor and in Terminal tabs. They let you easily insert entire blocks of code into documents using shortcuts of your choice, such as key bindings, trigger phrases, or as completions. Clips can be set as global, project-specific, or syntax-specific, so that specific Clips will appear only when they are contextually appropriate.

You can manage your Clips from the Clips Sidebar icon Clips Sidebar.

Creating Clips

To create a new Clip, select the Clips Sidebar from the Sidebar Dock, or from the View menu > Sidebars > Show Clips Sidebar. Along the top, you’ll find three options:

The top of the Clips Sidebar, with buttons labeled Global, Project, and Extensions.
Global
Clips that can be used in any Nova project or window.
Project
Clips that are specific to the current Nova project. Not available for remote projects.
Extensions
Clips provided by installed Extensions. (You can’t manually create Clips here.)

Select either Global or Project based on where you want to use the Clip. Then, click the + icon in the top-right corner, and select Add Clip.

Clips consist of a few essential components:

Title
A memorable name for the Clip, displayed in the Clips Sidebar and completions list.
Syntax
Choose a specific syntax mode for the Clip to be used in. If set, the Clip will only appear as a completion, or be inserted with the chosen trigger phrase or key binding, when in this syntax mode.
You can also choose Anywhere to make the Clip always available in both the Editor and Terminal, or limit the Clip to only Editor or Terminal tabs.

The interface for creating new Clips.
Trigger
A shorthand phrase which you can type into the Editor or Terminal, then press Tab to expand the Clip in its place. Case-sensitive.
Key
Set a key binding you can press to insert the Clip. Must include a modifier key, such as ⌘Command. The binding also cannot conflict with existing key bindings, including those set in Settings > Key Bindings.
Clip Contents
The main component of any Clip is its contents. Using the editor view in the New Clip popover, enter the text you want to use in your Clip.

Once you’ve created your Clip, just click Save, and it will be available for use.

Placeholders

One powerful feature of Clips is the ability to use Placeholders. Placeholders are special markers you can put in your Clip’s contents that will be replaced at the time the clip is inserted.

Named Placeholders

Named placeholders effectively act as blank spots in your Clip, turning it into a template to be filled out. You can give these spots a ’name’ to help identify what you should replace them with after inserting the Clip.

When inserting a Clip with named placeholders, the cursor will automatically be inserted in the position of the first placeholder, allowing you to type over the placeholder. Press Tab to instantly jump to the next named placeholder spot. For instance, take this Markdown clip for easily inserting a header into a new article for a static site generator:

An example clip for inserting a header in a Markdown document with a title, description, and weight.

After typing newarticle and pressing Tab to insert the Clip, the cursor will automatically be placed at the Article Name placeholder, and pressing Tab will jump to the next placeholder. This enables you to quickly replace each placeholder with the necessary content, with each placeholder’s name reminding you what to replace it with.

Jumping between named placeholders by pressing Tab.

Dynamic Placeholders

Aside from named placeholders, Nova also supports several dynamic placeholders. When used in a Clip, they will be automatically replaced upon insertion with contextual information:

Date
Inserts the current date. The format used for the date is based on the Date Format set in macOS’s System Settings > General > Language & Region.
Filename
The name of the file the Clip is inserted into.
Parent Folder
The first ancestor folder of the current file.
Project Name
The name of the current project in Nova, if any.
Author Name
Your author name from your Git configuration.
Source Control Revision
The hash of the most recent Git commit.
Insertion Point
This placeholder positions the cursor in its place upon inserting the Clip. For instance, you can make an HTML Clip like this:
<div class="example">(Insertion Point)</div>
… and your cursor will be placed in the middle of the <div> tag when inserting the Clip, allowing you to get right to typing the contents of that element.
Text Selection
If text is selected when inserting a clip with this placeholder, then the Clip will be inserted relative to the selection. For instance, an HTML Clip like this:
<div class="example">(Text Selection)</div>
… will wrap any selected text in a <div> tag.
Previous Text
This placeholder allows you to insert a Clip relative to the previous word in the editor. For instance, a Markdown Clip like this:
**(Previous Text)**
… will wrap the previous word to the left of the cursor in asterisks to make it bold.
Pasteboard
This placeholder will be automatically replaced with any copied text in your Pasteboard when the Clip is inserted.

Inserting Clips

There are four primary ways to insert a Clip into a document:

From the Clips Sidebar
Simply double-click a Clip in the Clips Sidebar to insert it in the document or Terminal at the current cursor position. You can also drag Clips from the Sidebar into the Editor and place them at any position.
Trigger Phrases
Type the trigger set for the Clip into the Editor, then press Tab. Your Clip will be expanded in place of the trigger. Not available in the Terminal.
Key Bindings
Press the designated key binding for a Clip to insert it into the Editor or Terminal at the current cursor position.
As Completions
If enabled in Settings > Editor > Editing, relevant Clips (based on title, syntax mode, and contents) will be offered in the list of completions that appears while typing in the Editor. Simply select one and press Return or Tab (depending on your settings) to insert it.

Managing Clips

The Clips Sidebar icon Clips Sidebar allows you to manage your Clips, organize them into groups, and export them to files.

As described in the Creating Clips section above, the Clips Sidebar is divided into three categories of Clips, which you can switch between using the buttons at the top of the sidebar. Global Clips are accessible in any Nova window, Project Clips are specific to the current Nova project, and Extensions lists any Clips that are bundled with Extensions you’ve installed.

The Clips Sidebar.

Below these options, you’ll find your actual Clips. Each Clip will display its Title at the top, above a preview of its contents. Along the bottom, you’ll see the trigger phrase, key binding, and syntax mode set for the Clip, if any.

Double-click any Clip to insert it at the current cursor position in the Editor. Right-click a Clip to access the context menu, where you can choose to edit, duplicate, or delete the selected Clip. You can also delete a Clip by simply selecting it and pressing the Delete key.

You can also drag Clips from the sidebar into the Editor, or even to other apps on your Mac. Clips dragged out of Nova can be dropped into any app that accepts text input, including web browsers, word processors, or other editors.

NOTE: Placeholders will not be completed when dragging Clips outside of Nova. They will instead appear as variables, such as $DATE or $SELECTED_TEXT.

Along the bottom of the Clips Sidebar, you’ll find the Filter field. Type the title of a Clip you’re looking for into the Filter field, and the Clips Sidebar will show only Clips whose title matches your query.

Clip Groups

Clips can also be organized into groups, which act as ‘folders’ in the Sidebar. For instance, you may want to organize all your TypeScript Clips together into a group, or all the Clips you use for certain Terminal commands.

To create a Clip group, click the + icon in the top-right corner of the Clips Sidebar and select Add Group. You can give your group a name to distinguish it. Then, simply drag your desired Clips into the group folder to organize them. Groups can be collapsed or expanded as needed.

Creating a Clip group.

Importing and Exporting Clips

You can export your Clips to a .json file from the gear icon in the bottom-right corner of the Clips Sidebar. Simply click that icon, choose Export Clips…, then select where to save the file. You can then use the matching Import Clips… command to import your Clips to another Nova installation.

By default, with no Clips selected in the sidebar, the Export Clips command will export all your Clips. You can also export individual Clips, or groups of Clips, by first selecting them in the Sidebar. Then, right-click to open the context menu, and choose Export Clips from there.