zk

Creating a new note

You can add a new note to a notebook using zk new --title "An interesting concept" [<directory>].

zk automatically generates a filename and initial content according to rules set in your configuration file. These settings can be customized per group of notes in your notebook, as illustrated in Maintaining a daily journal.

By default, zk new will start your editor after creating the note. You can choose instead to print the absolute path to the note with --print-path, which is more useful for automation.

Search or create with a single command

If you are not sure whether a note already exists for a particular subject, the “search or create” mode might be more appropriate than zk new. It is inspired by Notational Velocity and enables searching for an existing note or creating a new one in a single action.

This option is available when running zk edit --interactive, which spawns fzf to filter selected notes. From fzf, press Ctrl-E to create a new note using the current search query as title.

Create a note with initial content

Initial content can be fed to the template through standard input using zk new --interactive, which will be expandable with the `<h1 id="neuron">Neuron</h1>

Neuron is a command-line app for managing a plain-text Zettelkasten.

While there is some overlap with zk’s features, both tools are actually useful when paired together:

Close integration with Neuron was thought through from the start when designing zk. For example, Neuron’s Folgezettel syntax is supported: [[[link]]], #[[link]] and [[link]]#.

But you can make your notebook even more tightly integrated with Neuron by:

Emanote

Emanote is neuron’s successor. For Emanote-specific configuration, see https://emanote.srid.ca/start/resources/zk.

` template variable.

For example, to use the content of the macOS clipboard as the initial content you can run:

$ pbpaste | zk new --interactive

Alternatively, you can use the content of a file:

$ zk new --interactive < file.txt