is there any way to set up org-roam-capture-templates so that these various captures go to different directories?
in org-roam v2, I tried about two months ago to accomplish this with org-roam-extract-new-path to file new capture templates under the ./slips directory, but changing this variable resulted in problems.
Recently, i noticed that subdirectories in the org-roam-directory result in tags being applied automatically to the nodes therein, which is a feature I like a lot. So, when i do org-roam-node-find:
- the nodes in
./projectshave the:projects:tag - the nodes in
./topicshave the:topics:tag - and the nodes in
./slipshave the slips tag.
Here’s what my roam directory looks like dcunited001/zettelkasten. I want most things in the ./slips directory, but there are other types of nodes like “topics”, “projects”, “drills” and “code” which i would like to capture, but place in a different subdirectory. The reason is that these are on a different “graph-plane” (an almost separate “plane” in a graph, like control-plane network interfaces). Organizing like this is intuitive for me, but also allows me to make some assumptions about the count of inbound/outbound edges in my roam graph. It is the :topics: and :projects: tags nodes which I would like to “collect” most refs from :slips: tags. Thus, when working on a topic/project:
- looking at the backlinks buffer for a topic/project should return many nodes
- eventually i would like to add
#+keywordsto topics/projects and then maybe analyze text of:slips:nodes to automatically suggest to add backlinks for some topics. this should result in a richer graph with more connections.
I know this may not jive with the org-roam philosophy of all slips going into a single directory, where org-roams sqllite functions fulfill the organizational responsibilities of the filesystem.
For now, I think I can simply prepend project/ or project- to the file+head of newly added capture types.