diff --git a/README.md b/README.md index 032baab..5417f36 100644 --- a/README.md +++ b/README.md @@ -4,17 +4,54 @@ To develop / debug: start neovim with `nvim --cmd "set rtp+=$(pwd)" .` to automatically load the files in project dir as if they were on path -## TODO +## TODO: feature wishlist -* [ ] go to zettel -* [ ] create new zettel - * create link (md / wiki) - * create anchor * +* [ ] note creation (new anchor) + * [x] create anchor + * [ ] *unique* anchor creation + * [ ] create link (md / wiki) +* [ ] link creation (to existing note) + * [ ] list existing + * [ ] create link (md / wiki) +* [ ] link following (to existing anchor) +* [ ] note search (title / full-text) +* [ ] note listing (anchors / titles, no anchor) + * [ ] list anchors + * [ ] list filenames +* [ ] jump to zettel (open existing anchor) + * [ ] select by anchor + * [ ] select by (fuzzy) title match +* [ ] options + * [x] zettel anchor separator + * [ ] zettel extension + * [ ] zettel anchor regex * [ ] backlinks (via rg for filename anchor?) + * [ ] keep tree of notes cached? +* [ ] completion engine (e.g. for `completion-nvim`, look in completion_buffers/completion-tags for reference) +* [ ] zettel caching for big directories +* [ ] zettel maintenance + * [ ] fix malformed anchors + * [ ] add missing anchors + * [ ] 'rename' anchor (goes against stability?) + * [ ] recognize duplicate anchors (in directory, when listing, etc) + * [ ] provide option to rename and automatically change backlinks -* \*anchor creation +* anchor creation * *must* be unique - * 10 digits, usually current date+time (YYMMDDHHmm) + * default: 10 digits, usually current date+time (YYMMDDHHmm) * but, if multiple links created within one minute (or other circumstances), this would duplicate * thus, duplicate-check before creating a new anchor * if duplicated, generate first *non*-duplicated link (recursive?) + * try to move *backwards* through minutes not forward + * i.e. if 2030101200 exists move to 2030101159, 2030101158, ... + * if moving backwards, we do not take away id space from *future* note creation + * if moving forwards, every zettel created within a minute would delay next zettel creation *another* minute + +## Options + +atm: +``` +anchor_separator = vim.g["zettel_anchor_separator"] or vim.b["zettel_anchor_separator"] or "_", +zettel_extension = vim.g["zettel_extension"] or vim.b["zettel_extension"] or ".md", +zettel_root = vim.g["zettel_root"] or vim.b["zettel_root"] or "~/documents/notes", +``` diff --git a/lua/zettelkasten/init.lua b/lua/zettelkasten/init.lua index 44a08ae..2fb9445 100644 --- a/lua/zettelkasten/init.lua +++ b/lua/zettelkasten/init.lua @@ -1,13 +1,3 @@ --- feature wishlist --- * note creation (new anchor) --- * link creation (to existing note) --- * link following (to existing anchor) --- * note search (title / full-text) --- * note listing (anchors / titles, no anchor) --- * options --- * zettel anchor regex --- * zettel anchor separator --- * zettel extension local ZK = {} local ls = require'zettelkasten.list'