Embedding and automating an upward narrative in notes

I don’t follow any strict Folgezettel principle of branching filenames. But I do often appreciate knowing what the original source / inspiration / creation point of a note was.

This allows some level of “up” directionality, as often a note’s most contextually strong link is the note from which it branched. Another way to think, continuously moving “upwards” has 100% certainty that you will follow an original chain of thought.

I use zk and it’s neovim plugin to write, and so I achieve this with a custom zk command:

-- key.vmap is just a refactored, regular neovim keymapping in visual mode.
key.vmap({
	"zn",
	":ZkNewFromTitleSelection {group = vim.fn.input('Group: '), extra = { source = vim.fn.expand('%:t:r')}}<cr>",
	{ buffer = bufnr },
})

And the template:

---
title: "{{title}}"
date: {{format-date now}} {{format-date now "time"}}
tags: [{{extra.tag}}]
source: {{#if extra.source}}[[{{extra.source}}]]{{/if}}
id: "{{id}}"
---

{{content}}

--- Footnotes ---

This results in a note with frontmatter like so:

---
title: ...
date: ...
tags: [...]
source: [[3-2512ad1633]]
id: ...
---

... note content

I like this because in the case where there is no other note that inspired the creation of a given note, a URL, book title, movie title, etc can also be used to give context as to what inspired the note.

So the source field is multifunctional.