Implied 'mkdir -p' on link-first approach to creating notes

Use case or problem

I file most notes in a date hierarchy. For example, I just created [[2020/12/16/Peets]] after my wife asked me to update our coffee subscription. This was the first note of the day, so the directory 16 did not exist, and clicking on the internal link failed to create the note.

Proposed solution

Whenever opening a note link-first, do the equivalent of a shell mkdir -p 2020/12/16 to first create the directory if needed. This is what one would do in a shell script. mkdir -p is idempotent; it is harmless if the directory already exists.

Current workaround (optional)

mkdir -p 2020/12/16 from the command line, then click on the internal link. Or manually create the folder using Obsidian’s folder view sidebar.

What I want is full support for hierarchical namespaces reified as directory paths within each vault. Without a hierarchy, having to come up with unique note names is either opaque (URIs) or doesn’t scale well. (Those of us who bought the first 128K Macintoshes in 1984, with a flat file system, learned this the hard way.)

Another example of missing support for hierachical name spaces: Obsidian helps with the creation of short [[internal]] wikilinks that can in fact point deep into the directory structure. One way or the other, the user has made a selection, accepting a search result, but the data representing this choice isn’t stored explicitly in the markdown file. Rather, the choice is buried in Obsidian’s private data, not even within the vault. If one tries moving the markdown files to a different format (say, by script or a pandoc preprocessor) these choices are lost. If one creates another file with the same name from within Obsidian (not using an external tool) these choices are silently overridden.

This rabbit hole is explored in depth in the thread Support real Markdown links between notes. I don’t object to wikilinks, just their lack of transparency, forcing an “evergreen note” approach on all journaling. In that thread there’s an “If Abe Lincoln were here…” moment involving “Zettelkasten pro users”. I’ve read various “Zettelkasten pro user” blogs around the web. When I’m lost in my own research, I ask myself which community will have the deepest discussion of the issues I want to understand. For namespace considerations, that is the computer language design community.

1 Like