Journal Types
jrnl
can store your journal in a few different ways:
- a single text file (encrypted or otherwise)
- a folder structure organized by date containing unencrypted text files
- the DayOne Classic format
There is no need to specify what type of journal you'd like to use. Instead,
jrnl
will automatically detect the journal type based on whether you're
referencing a file or a folder in your config file,
and if it's a folder, whether or not DayOne Classic content exists in it.
Single File
The single file format is the most flexible, as it can be encrypted.
To use it, enter any path that is a file or does not already exist. You can
use any extension. jrnl
will automatically create the file when you save
your first entry.
Folder
The folder journal format organizes your entries into subfolders for the year
and month and .txt
files for each day. If there are multiple entries in a day,
they all appear in the same .txt
file.
The directory tree structure is in this format: YYYY/MM/DD.txt
. For instance, if
you have an entry on May 5th, 2021 in a folder journal at ~/folderjournal
, it will
be located in: ~/folderjournal/2021/05/05.txt
Note
Creating a new folder journal can be done in two ways:
- Create a folder with the name of the journal before running
jrnl
. Otherwise, when you runjrnl
for the first time, it will assume that you are creating a single file journal instead, and it will create a file at that path. - Create a new journal in your config_file and end the path with a
/
(on a POSIX system like Linux or MacOSX) or a\
(on a Windows system). The folder will be created automatically if it doesn't exist.
Note
Folder journals can't be encrypted.
Day One Classic
jrnl
supports the original data format used by DayOne. It's similar to the folder
journal format, except it's identified by either of these characteristics:
- the folder has a
.dayone
extension - the folder has a subfolder named
entries
This is not to be confused with the DayOne 2.0 format, which is very different.
Note
DayOne Classic journals can't be encrypted.
Changing your journal type
You can't simply modify a journal's configuration to change its type. Instead,
define a new journal as the type you'd like, and use
piping
to export your old journal as txt
to an import command on your new journal.
For instance, if you have a projects
journal you would like to import into
a new
journal, you would run the following after setting up the configuration
for your new
journal:
jrnl projects --format txt | jrnl new --import