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)