気付けば今年ももうそろそろ半分が終わろうとしている、という恐怖の事態。なんか毎年言っている気がしますが。年々早くなっている気がしますな。
今回はライトな話題で、org-roamでjournalを書くようにしてみている話です。
org-roamとは
まずパッケージの紹介ですが、 org-roam というパッケージがあります。これは、Roam Researchというサービスをorgに移植したものです。
Roam Researchというサービスは、 Zettelkasten Method というメモの方法論を基に実装されたようで、色々なメモを有機的に結合することで、知識の整理や発想を促す・・・という感じのもののようです。
org-roamはローカルでだけ動作するので、特にサーバーとか不要で、orgファイルさえ共有できれば、どこでも利用できるというのが強みですね。
ただし、検索速度とかを向上させるために、sqlite3を利用しているのと、グラフを作成するのにgraphizを利用しているので、それらが利用できるプラットフォームである必要があります。
最近のメモとかは基本的にすべてorg-roamに書き溜めるようにしています、が、リンクをするのがめんどくさいなど、いくつか課題がありますが・・・
org-roamのjournaling機能
org-roamは、org-modeよろしく非常に多彩な機能が含まれていますが、その中に dailies
という機能があります。
https://www.orgroam.com/manual.html#Daily%5F002dnotes
org-journalほどは機能があるわけではないけど、必要最低限の機能はあって、かつroamと統合されている・・・というようなのが特徴です。
今の私の設定はこんな感じになってます。
(leaf org-roam
:after org
:straight t
:if (and (file-exists-p my:org-roam-directory))
:custom
((org-roam-db-update-method . 'immediate)
(org-roam-db-location . my:org-roam-db-location)
(org-roam-directory . my:org-roam-directory)
(org-roam-index-file . my:org-roam-index-file)
;; dailiesを保存するdirectory
(org-roam-dailies-directory . my:org-roam-dailies-directory)
(org-roam-capture-templates . '(("d" "default" plain (function org-roam--capture-get-point)
"%?"
:file-name "%(format-time-string \"%Y-%m-%d--%H-%M-%SZ--${slug}\" (current-time) t)"
:head "#+title: ${title}\n- tags :: "
:unnarrowed t)))
;; dailiesのcapture
(org-roam-dailies-capture-templates . '(("d" "default" entry
#'org-roam--capture-get-point
"* %<%H:%M>\n%?"
:file-name "daily/%<%Y-%m-%d>"
:head "#+title: %<%Y-%m-%d>\n"
:olp ("Journal")))))
:bind
((:org-mode-map
:package org
("C-c r" . org-roam-insert)))
:hook
(after-init-hook . org-roam-mode))
この設定だと、captureを起動すると、
* 15:01
<ここにカーソル>
というような表示になります。なので、大体org-journalと同じような使い勝手でサクサク書いていくことができます。
書いてみてどうか
基本的にメモというか、もう書捨てであることが確定しているような思考のメモとか、なんとなく見掛けたものの感想とか、そういう脳内のダンプに向いているのかなー、という風に感じますね。
使い方的には、dailiesに書いたものからpermanent noteという形で括りだしていく、という形になるようですが、使い方は人それぞれでもあるので、いくつか使い方を見ていっている感じです。結構permanent noteという形でくくりだしていくのが難しく、これは慣れが必要だなーと思っているところです。
EmacsでRoam Researchを利用してみたいな、という場合には検討してみちゃーどうでしょうか?