External editors

Configure your preferred external editor by updating the editor option in your configuration file

Note

To save and log any entry edits, save and close the file.

If your editor is not in your operating system's PATH environment variable, then you will have to enter in the full path of your editor.

Sublime Text

To use Sublime Text, install the command line tools for Sublime Text and configure your jrnl.yaml like this:

editor: "subl -w"

Note the -w flag to make sure jrnl waits for Sublime Text to close the file before writing into the journal.

Visual Studio Code

Visual Studio Code also requires a flag that tells the process to wait until the file is closed before exiting:

editor: "code --wait"

On Windows, code is not added to the path by default, so you'll need to enter the full path to your code.exe file, or add it to the PATH variable.

MacVim

Also similar to Sublime Text, MacVim must be started with a flag that tells the the process to wait until the file is closed before passing control back to journal. In the case of MacVim, this is -f:

editor: "mvim -f"

iA Writer

On OS X, you can use the fabulous iA Writer to write entries. Configure your jrnl.yaml like this:

editor: "open -b pro.writer.mac -Wn"

What does this do? open -b ... opens a file using the application identified by the bundle identifier (a unique string for every app out there). -Wn tells the application to wait until it's closed before passing back control, and to use a new instance of the application.

If the pro.writer.mac bundle identifier is not found on your system, you can find the right string to use by inspecting iA Writer's Info.plist file in your shell:

grep -A 1 CFBundleIdentifier /Applications/iA\ Writer.app/Contents/Info.plist

Notepad++ on Windows

To set Notepad++ as your editor, edit the jrnl config file (jrnl.yaml) like this:

editor: "C:\\Program Files (x86)\\Notepad++\\notepad++.exe -multiInst -nosession"

The double backslashes are needed so jrnl can read the file path correctly. The -multiInst -nosession options will cause jrnl to open its own Notepad++ window.

emacs

To use emacs as your editor, edit the jrnl config file (jrnl.yaml) like this:

editor: emacsclient -a "" -c

When you're done editing the message, save and C-x # to close the buffer and stop the emacsclient process.

Other editors

If you're using another editor and would like to share, feel free to contribute documentation on it.