为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文件。

海上一民工