Emacs27.1 org-roam org-roam-serverは使える
Emacs org-roam で文書のファイル・リンクを
動的に見ることが出来た。
Zettelkasten Methodの習得を目指して色々試行錯誤している。
以前「zetteldeftがオススメ」の様な記事を書いたが、
最終的に文書をエキスポートすることを考えた時、
『org-roam』のパッケージの方に利がありそうである。
今回の試みは『書類の間での関連性が可視化できるか?』
zetteldeftでもファイル間の繋がりが判る、同様の画面が作れる。
どちらも『graphviz』を仲介とした画像である。
唯、動的に閲覧できたのは『org-roam』の方である。
org-roam
https://github.com/org-roam/org-roam
此処のOrg-roam User Manual
https://www.orgroam.com/manual.htmlを
読んでいくと、各ファイルがどの様に連結しているのかを
動的に眺められる。機能が備わっているらしい。
How To Take Smart Notes With Org-mode · Jethro Kuan
Introducing Org Roam · Jethro Kuan
しかし上記の記事から、何処に其の『呼び出す』機能を設定すれば良いのか?中々見つからない。
『「exwm」を使えれば素敵だが、特に必要ではない。』
此のanimated.gifではファイルをクリックすると該当の場所へ
ジャンプしている。
取り敢えず「exwm」をelpaからダウンロード。
しかし依存ファイル
「Requires: org-roam-1.2.1, org-9.3, emacs-26.1, dash-2.17.0, simple-httpd-1.5.1, s-1.12.0, f-0.20.0」是等が必要で欠如しているパッケージを
急遽インストール。
(add-to-list 'load-path "/path/to/xelb/")
(add-to-list 'load-path "/path/to/exwm/")もinit.elへ追記。
これらを準備したのは良いが『使い方』が解らない。
あれこれ考えた末、
「https://blog.jethro.dev/posts/introducing_org_roam/」の記事
[ Shut Up and Show Me the Goods ]からヒントを得て
org-roam-serverというパッケージが該当するのでは?
https://github.com/org-roam/org-roam-server
此処から同じ動作をしている映像を確認。
後は、此のページに書かれている事柄を其の儘、移植すれば
同一画面が手元のEmacsを使用して見ることが出来る。
(但しTo enable Org-roam’s protocol extensions, you have to add the following to you init file:の箇所はまだ理解ができていません)
https://www.orgroam.com/manual.html#Installation-_00281_0029
「org-roam-server-served-file-extensions '("pdf" "mp4" "ogv")」と
書き込むのでorg-roamでのファイル構造は閲覧出来るはず。
問題は『http://127.0.0.1:8080』と
ウェブブラウザーを使っての表示を意味するので、対応として
『xwidget-webkit-browse-url』の機能を流用して
『http://127.0.0.1:8080』を呼び出した。
現在使用中のEmacs27.1.50はbrew installの際に『xwidget』を
機能させる為の追記をしてダウンロードしたので、目的は達せられる。
一応「M-X org-roam」を指定し「C-c n g」でグラフ表示。
次に『xwidget-webkit-browse-url』から『URL:』へ
『http://127.0.0.1:8080』を書き込むと、
見事画面表示された!
今回のグラフ作成では画面の中のファイル名をクリックしても
当該のファイルへはジャンプ出来ていない。
但し画面では「DarkMode」への切り替えも可能。
「Database Betwork」「Buffer Network」「File Viewer」で
必要な画面への切り替えもできる。
左端の「Enable Preview」をクリックしておけば、該当の
ファイルの内容が閲覧できる窓が『開く』。
参考まで:此の様な画面です。
Preview画面の中でのリンクをクリックすると
相手先の『文書内容』が表示されます。