zettel
is a Zettelkasten file processor.
- GHC
- Cabal / Stack
- Neo4J version 3.X (Version 4 is not supported)
zettel
will attempt to read from HOME/.config/zettel/zettel-conf
a file which has the
credentials for the Neo4J DB, in the following format:
<user> <pass>
If none the directory nor the file exists, zettel
will create one with default
credentials neo4j neo4j
.
zettel
requires you to have specified a default text editor. To do so please provide one
by exporting VISUAL or EDITOR environment variables:
export EDITOR=vim
By default it will use vi
.
> zettel -h
Zettelkasten processor
Usage: zettel (new | list | find | delete | edit)
Available options:
-h,--help Show this help text
Available commands:
new
list
find
delete
edit
The new
command will open your default editor so you can write your zettelkasten. On
save the file will be parsed and insert it on the DB.
The list
command requires a --size=
flag and lists all your zettels.
The find
command requires a --tags
flag and finds all zettels that have at least one
of the specified tags in common. NOTE: to search for multiple tags do zettel find --tags tag1 --tags tag2
, for example.
The delete
command requires a --did
flag and deletes the zettel with the specified id.
The edit
command requires a --eid
flag and opens the zettel file of the specified id.
NOTE: If any zettel has a connection to the zettel to be edited than it is not
possible to edit that zettel (Editing a zettel will not change its timestamp).
Your Zettels will be stored in HOME/.config/zettel/
.
Zettel Metadata follows the YAML syntax as you can see in the ExampleZettel.md
.
Supported fields:
title
: specifies the zettel titleauthors
: specifies the zettel authorstags
: specifies the zettel tagsconnections
: specifies the connections to other zettels in the following format example:[ { "id": 2, "reason": "text" } ]
Please note that this is still a beta version. Please report any issue via Github Issue.
PRs are welcome!