Zettelkasten メソッドのための機能を備えた Markdown エディタに Zettlr がある。ローカルディレクトリ上に通常の Markdown ファイルとしてデータを保存するタイプで、ロックインの心配が無く他のツールと併用できる好みのアプリだ。インストールして1日使ってみた。
Homebrew では以下で。
$ brew install --cask Zettlr
今日時点でインストールされるのが 1.8.3 でちょっと古かったので
からバイナリビルドされた 1.8.6 をダウンロードしてインストールした。
ヘッダを大きめに表示したりリンクの URL を隠したりと一部プリレンダリングされるタイプ。日本語も問題無さそう。
ファイル末のあたりで文字入力するとエディタがガクガク揺れるは今後改善されると嬉しい。
見出し単位で折り畳む機能やサイドバーで目次を表示する機能があり、長めの文章を書くための支援が揃っている。
ファイルツリー上にディレクトリとファイルの両方を表示する Combined モード以外に、ファイルツリー(ディレクトリツリー)とファイルリストの両方を表示する Expanded モード、ファイルツリーとファイルリストのどちらかを表示する Thin モードがある。
Expanded モードを選ぶと iA Writer や Ulysses などでもお馴染みのスタイルになりノートアプリとして使いやすくなる。
ファイルシステム上のディレクトリをルートディレクトリとしたワークスペースを複数同時に開いておける。用途別にディレクトリを分けている場合に便利だ。
全文検索はワークスペース単位。内部リンクもワークスペース単位で機能する。 自分は複数のワークスペースを横断的に全文検索したいので、本格的に使うなら1つのディレクトリの下にまとめる必要があるな。
ファイルの拡張子は md ではなく txt でも OK なので、ファイルを同期した Google ドライブ上で全文検索させられるのが嬉しい(Markdown ファイルの拡張子を md にすると Google ドライブで不便)。 md 固定の Obsidian より柔軟だ。
Makrdown ファイルから Markdown ファイルへファイルベース名を指定して 「[[ファイルベース名]]」の形で内部リンクできる(パス名は不要)。
また Markdown ファイル内にユニークな ID を書いておき、その ID を指定して「[[ID]]」としてリンクもできる。後者を使えばファイル名変更が気軽にできる。 ID の形式やリンクの開始文字列 [[ ・終了文字列 ]] もカスタマイズできて柔軟なのも良い。
iA Writer では
ia-writer://open?path=/Locations/path/to/file.txt
のような URL を発行して擬似的にリンクするさせるしかないので比べると圧倒的に便利。
今メインで使っている Mac アプリケーションの iA Writer に比べると Electron ベースの Zettlr は美しさで負けるのは仕方ないところかな。
Zettlr をテキストファイルノートアプリとして内部リンクを活用しながらパーソナルナレッジベースを作っていくのありだな。
[ ノート・日記はテキストファイルに ] [ Mac アプリケーション ]
拡張子 md の Markdown ファイルを「バックアップと同期」アプリで新規に同期したり、 Web 版の Google ドライブでアップロードしたりすると MIME タイプが text/markdown となり全文検索対象にならない。不便。
StackEdit は Google ドライブに送る時の MIME タイプを設定で text/plain を選べるようにすることで問題を回避しているようだ。
クラウドストレージ上のファイルを管理するためのコマンドラインプログラム rclone でアップロードするとどうだろうと思ってやってみたところ、ちょっと設定をいじれば拡張子 md の Markdown ファイルを text/plain で Google ドライブにアップロードできることがわかった。
rclone では Google Drive API で新しいファイルを作成する際に、rclone 側で MIME タイプを判定している。内部的には Go の mime パッケージを使っている。
このパッケージは UNIX 系の環境では mime.type ファイルがあれば参照するようになっていたので macOS Catalina にあった /etc/apache2/mime.type ファイルの text/plain 行に md を追加して試したところ、めでたく text/plain として Google ドライブにアップロードできた。全文検索対象になることも確認。
ちなみに「バックアップと同期」アプリは /etc/apache2/mime.type 変更の影響を受けなかった。
rclone での方法が分かったわけだけれど、実際のところ Markdown ファイルの Google ドライブとの同期や読み書きを rclone だけに限定するわけにもいかないな。引き続き拡張子 txt で管理するのが現実的のようだ。
去年の夏・12月と試したあと距離を置いていたナレッジベースアプリケーション Obsidian が気になってまた使ってみることにした。
Roam Research も気になるけれどやはりデータがテキストファイルじゃないというのがね。
Obsidian を躊躇していた点については以下のように考え運用してみることにする。
過去の全部のノートテキストファイルを対象とするのではなく、特定ドメインの知識整理用としてゆるく切り離して使う。
Obsidian の拡張子が md 固定でそのまま Google ドライブに同期しても全文検索できない問題については、Google ドライブで全文検索したい拡張子 txt の日記/日誌系 Markdown ファイルを Obsidian vault には入れず、今まで通り別で管理することで回避することにした。
[[ファイルベース名]] や [[ファイルベース名|表示テキスト]] という内部リンク方言についても、 Obsidian の vault 内でノートでは許容しよう(許容しないと Obsidian を使う意味が無いので)。エクスポートする時は[[・]]を消すプリプロセッサを用意して Marked 2 で使うようにする。
[ ノート・日記はテキストファイルに ] [ Mac アプリケーション ]
昨日考えた方針通り Google ドライブで全文検索する必要のない Markdown ファイルの拡張子を txt から md に変更し、Obsidian vault を作成した。そこそこファイル数があるが Zettlr に比べて検索が圧倒的に速くてサクサクだ。いけそう。
1つのファイルに複数の情報が書かれているデイリーノートファイルがあると、同日に扱ったという点以外で関連のないものが関連があるかのようなグラフになってイケてない。
フィルタでデイリーノートファイルを -file:... を使って除外したらいい感じになった。なるほど。
試してみたいけれど $96/年に見合うほど使わなさそう。HTTPS なカスタムドメインを設定するのが現時点でハードルが高いということもあり様子見。様子見していて 50% early bird 価格が終わっちゃったら、さらに遠のいちゃうかもしれない。
[ ノート・日記はテキストファイルに ] [ Mac アプリケーション ]
Obsidian Publish で「公開で作業」しているように、組織内でもノートを適切な範囲に公開しながら作業したい。
Google ドライブにテキストファイルを置くだけではイケてなくて(断片的なノートテキストファイルの一部を Google ドライブで共有するのをやめた)、Google ドキュメントに貼り付けて共有してみたりもしたけれどそれはそれで手間でイケてなかった(断片的なノートの Google ドキュメント化共有をやめる)。
静的サイト生成して共有できればベストだけれど、保守コストが高いし共有範囲の管理が現実的ではない。うーん、まあやっぱりせめてそのままでもいいから Google ドライブで Markdown ファイルを共有しておくか。内部リンクなど Obsidian 方言であることも許容で。
permalink 維持を前提としたくないので、全文検索できるようにしておくのは必須。 Google ドライブで 拡張子 md の Markdown ファイルを全文検索できるようにするために rclone で同期することにした(Google ドライブで 拡張子 md の Markdown ファイルを全文検索できるように rclone でコピーする)。
[ ノート・日記はテキストファイルに ] [ Markdown で書いているノートを Google ドライブで共有する ] [ 公開で作業する ]
ダイソー、そこに求めるものがあった。
— Naney (@Naney) July 28, 2021
なんでもキャッチャー。 pic.twitter.com/inL3GxRrpE
公開していない個人的な日記テキストファイルは iA Writer で編集・管理し、外出先からスマートフォンで全文検索できるように Google ドライブに同期していた。
しかし Google ドライブでのテキストファイルの全文検索では
という点が不満であった。
Obsidian mobile の登場によりスマートフォン上で容易にテキストファイルの全文検索ができるようになったので、今日そちらに移行することにした。
拡張子 txt の日記テキストファイル(3,300ファイル)を拡張子 md に変更し、新しく作成した Obsidian vault + Obsidian Sync へ移動。これぐらいのファイル数ならスマートフォンでもパフォーマンスは全く問題無かった。良い。 Obsidian mobile は vault の切り替えのステップが多いのがネックではあるが、この vault をスマートフォンで参照するのはたまにだけなので許容範囲かな。
Markdown 形式ではないこの Web 日記のテキストファイル(14,850ファイル)と今回移した日記テキストファイルを横断全文検索するのに便利だし、まずもって書き心地が良いので Mac 上では iA Writer も引き続き併用する。
[ ノート・日記はテキストファイルに ] [ ファイル名の先頭を日付にする ]
少し前から Google ドライブで
ショートカットでマイドライブをシンプルに 数週間以内に、複数のフォルダに保存されているアイテムはショートカットに置き換わります。ファイルとフォルダへのアクセス権は変更されません。
と表示されるようになった。
「バックアップと同期」で同期している Mac 側でショートカットがどうなるか2年前に調べた時は、フォルダのショートカットが拡張子 gshortcut のファイルになっていてうーんとなったんだった。
「パソコン版 Google ドライブ」になった現在はどうだろうと思って確認してみたら、Google ドライブ上でのフォルダのショートカットは Mac 上では localhost のポートに smbfs マウントしたボリュームの中にあるディレクトリへのシンボリックリンクという凝った作りになってた。
以前の仕様と違って、ショートカット先のフォルダ内のファイルをローカルアプリケーションから直接読み書きできる。
smbfs の先にあるので Time Machine バックアップ対象にならないことに留意が必要だけれど、それ以外は問題なさそうだな。
Shibuya#photography
— Naney (@Naney) May 9, 2022
RICOH GR IIIx #GR #GRIIIx #GR3x pic.twitter.com/cR80DV1Q2Q
Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。
※本サイトの内容は個人的見解であり所属組織とは関係ありません。