org-roam-db-syncを非同期にする Emacs OrgMode OrgRoam
Org-roamを便利につかっているが、如何せんDBの同期に時間がかかるので、 少なくとも非同期に実行できるようにしてみる。
調べてみると async.el
1が使えそうだ。
実装はこの記事を参考にした。
(defun my/org-roam-async-db-sync () (async-start `(lambda () (let ((now (current-time))) (require 'package) (package-initialize) (require 'org-roam) (setq org-roam-directory ,org-roam-directory) (org-roam-db-sync) now)) '(lambda (start-time) (let ((now (current-time))) (message "roam db sync done in %0.1fsec." (time-to-seconds (time-subtract now start-time))))) )) (my/org-roam-async-db-sync)