Imymirror / mrds-mode

simple multiple roam directories support(MRDS).

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

这个 package 能干什么?

主要提供一个函数 mrds/roam-switch-directory ,用以 roam 多目录功能的支持。 根目录底下可以有多个子目录,子目录下可以有子目录。每个目录对应一个 roam db。

使用 mrds/roam-switch-directory 切换到任意子目录下,控制 roam 笔记的 可见范围 。如果切换到根目录下,意味着所有笔记都可见;如果切换到某个子目录下,意味着子目录下的笔记可见,其他目录下的笔记不可见。

为什么需要 roam 多目录功能?

  1. 当 roam 的笔记越来越多(比如超过 1000 个),调用 org-roam-node-find 会越来越卡。
  2. 虽然说使用 roam 的理由之一是知识的网状连接,但大部分的笔记是没有联系的,分开放置文件,更聚焦,而且搜索效率更高。
  3. org-roam-ui 里显示的节点更少,更清晰。

Install

(use-package mrds-mode 
  :straight (:host github :repo "Imymirror/mrds-mode")
  :bind (("C-c n s" . mrds/roam-switch-directory))
  :config
  (or mrds--roam-root-directory (setq mrds--roam-root-directory (file-truename "/path/to/roam-root-directory/")))
  (setq mrds--db-cache-path (file-truename "/path/to/cache-db-directory"))
  (org-roam-db-autosync-mode 1) ;; need to sync org roam db first
  )
  • mrds/roam-switch-directory : 在目录之间切换的函数
  • mrds--roam-root-directory : roam 根目录,一般设置成跟 org-roam-directory 一样的路径。
  • mrds--db-cache-path : 每个目录对应一个 db 文件,需要一个目录来存储 缓存db文件

About

simple multiple roam directories support(MRDS).


Languages

Language:Emacs Lisp 100.0%