为org-roam多个文档库
缘起
在使用了org-roam后,发现有些知识管理的领域应该是不会有联系的,如果全部写在一起,那么在 org-roam-node-find
的时候就会有很多的候选。
另一个原因是,我最终决定使用org-roam来管理日程文件之间的关联,以使得我可以通过时间线和任务线两个纬度来回顾我的任务。所以我觉得定日程管理的org-roam db和知识管理的db分开。
操作
在官方手册中,是有相关操作说明的 How do I have more than one Org-roam directory?
这个问题被排在FAQ第一,可见有很多人问到了这个问题。
具体的操作是使用了Emacs自带的 directory-local variables 文件夹局部变量功能,就是在文件夹里局部变量可以覆盖全局变量。
操作方法是在拟要定义为 org-roam
的文件夹中建议一个 .dir-locals.el
文件。并写入以下内容:
((nil . ((org-roam-directory . "/path/to/alt/org-roam-dir")
(org-roam-db-location . "/path/to/alt/org-roam-dir/org-roam.db"))))
可以看到,其实是在文件夹里定义了roam的目录和roam db的位置。
定义完成后,使用 org-roam-db-sync
来生成这个db文件。