【Obsidian】Mac、Windows、iPhone でノートを同期する。
自宅の Mac、出先の iPhone、職場の Windows PC でメモを共有したいなぁ、と思いつつ、なかなかいいソフトウェアに巡り会えないでいた。
筆者は markdown でメモを取るので、出来れば markdown が反映されるメモアプリが欲しいなぁ……。
アホ面でそんなこと考えていたら、あった。そんなノートアプリがあったのである。
Obsidian
💎 Obsidian
Obsidian というのがそれだ。アブシディアン、あるいはオブシディアンみたいな読み方だろう、たぶん。黒曜石という意味だそうだ。
macOS、Windows、Linux、iOS、Android、それぞれにクライアントがある。「Obsidian Sync」という機能を使うのでなければ、いまのところ、無料で利用できる(有料で使用するコースもある Pricing – Obsidian)。
使用中のスクリーンショットはこんな感じ。
左にノートのリストがあり、右側でノートを編集する。きわめてシンプルな形式だ。
使いはじめる
Obsidian をダウンロードして起動すると、下のウィンドウがあらわれる。
Obsidian で作成したノートは、md ファイルとして保存される。その保管庫をここで決めるわけだ。DropBox だの Google Drive だののフォルダに保管庫を作成すれば、クラウドでファイルを同期できるようになる。
また、下のほうにある Language で日本語を選択できるので、やっておくのが良いと思う。
iCloud Drive での同期に難ありか
最初にいっておくと、2022 年 12 月現在、iPhone での同期に難がある。iPhone の Obsidian は iCloud Drive とローカルにしかノートの保管庫を作成できない。その場合、iPhone と Mac での同期に問題はない。
Windows PC から iCloud Drive のファイルを編集した時に問題が出てくる。
たぶん自動保存のタイミングで、「タイトル」「タイトル(1)」「タイトル(2)」のように、カッコのついたファイルが増産されてしまうのだ。
Windows で次回 Obsidian を起動しようとすると、このカッコつきのファイルが邪魔をして、ファイルのロードが出来なくなってしまう。起動しなくなるのだ。
しかたないので、筆者は保管庫を OneDrive に作成して、Mac と Windows でノートを同期している。iPhone にも OneDrive をインストールしておけば、ノートを閲覧できるようになる。
この不具合(?)はしかし、いつか修正されるのではないかと思っている。
それまでの急場しのぎは、最後に書く。
メモを作成する
Obsidian はいろんなことが出来るようなのだが、基本はこれだけだ。
- command + O でクイックスイッチャーという、スポットライトみたいなやつを出す。
- ノートのタイトルを入力する。
- そのタイトルのファイルが生成されるので、内容を書く。
上述したように、markdown で、文書を構造化しながらノートを書ける。
🖋️ ノートをフォーマットする – Obsidian 日本語ヘルプ – Obsidian Publish
しかも、書いたそばからライブで markdown で指示したように表示される。ここがイカツい。
例えば、左ペインにソースを書いて、右ペインに整形された文書が表示される、とかいうのではない──ないが、そういうのが好みであれば、そういうやり方も出来る。
右上の開いた本みたいなアイコンを、command + クリック すれば以下のようになる。
同じように見えるが、左ペインで文書を編集すると、右ペインに整形された文書が表示される。
なお、クイックスイッチャーは、保存したノートのタイトルを検索して開く時にも使う。というかそっちがメインで、検索したタイトルがない場合は、ファイルを新規作成する。このへん、ちょっと Emacs を思い出させる。
ファイルは、先ほど作成した保管庫フォルダの直下に保存される。編集されるごとに自動で保存してくれて便利だ。
また、左のファイルエクスプローラーで新規フォルダを作成できる。ファイルをフォルダ分けして整理できてしまうのだ。
リンクの作成
Obsidian の大きな特徴として、ノート同士のリンクを簡単に作成できる、というのがある。文書同士をリンクして、関連したノートをすぐに確認できるようになる。
このへん、セカンドブレインを標榜する Obsidian の真骨頂だろう。それぞれのノートの関係性こそ大事、みたいな哲学なわけだ。
リンクの貼付は以下のように書く。
[[リンク先のタイトル]]
[[
と入力すれば、ただちに受けの ]]
が生成され、ノートのリストがフローティングウィンドウにあらわれる。そこからリンクを張りたいタイトルを選択するだけだ。目当てのタイトルを 2、3 文字打ちこめば、リストが絞りこまれる。
また、単に左のリストから編集画面にノートをドラッグ&ドロップするだけでもいい。
このリンクの記法はウィキリンクと呼ばれるもののようで、これを普通の markdown のリンクにしたい場合は、「設定>ファイルとリンク>ウィキリンクを使用」のスイッチを切る。
また、command + G で文書の繋がりを図にしたグラフビューというのも見られる。
画像の貼付
ネット上の画像などを右クリックでコピーして、Obsidian にペーストすると、画像を貼付できる。
画像の URL にリンクして、ネットから画像を呼び出している。これを、画像をダウンロードしてリンクする方法もある。
command + , で設定を呼び出し、
「設定>ファイルとリンク>新規貼付ファイルの作成場所」を「以下で指定したフォルダ」にし、その下の「貼付ファイルフォルダのパス」に、保存したいフォルダの名前を入力する。
保管庫のなかにその名前でフォルダを新規作成すれば、右クリック画像コピー、ペーストするだけで、ここに画像が保存されるようになる(画像のリンクがかかっているとうまくいかないことが多い)。
タグ付け
おなじみ、#タグ
で文書にタグをつけられる。
タグをつけた文書は、command + shift + F で検索欄を出し、「tag:検索したいタグ」とやれば呼び出せる。
デイリーノート
左肩のカレンダーのアイコンをクリックすると、きょうの日付けでノートが作成される。すでにある場合は、そのノートに移動する。
これがわりと便利で、業務記録とか日記とか、todo 管理なんかに力を発揮する。
todo はちなみに以下のように書く。
- [ ] 酒と煙草を買う。
- [x] 漫画を買う。
こんなふうに表示され、チェックは、マウスクリックで入れられるようになる。
これだけでも使い道がたくさん出てきそうだ。
canvas
2022 年 12 月 20 日リリースの v1.1 から、canvas という機能も使えるようになった。
他にもいろいろある
- プラグインがある。
- CSS で外観をカスタマイズできたりする。
- command + P で呼び出せるコマンドパレットで、キーボードから手を離さずにさまざまな操作を行える。
- デイリーノートで、その日のノートを作成、移動できる。
- テンプレートで今日の日付けを挿入したりができる。
みたいな感じ。
詳しくは、ここからはじめる – Obsidian 日本語ヘルプ – Obsidian Publishなどを参考にするのがいいと思う。
正直、難しいことはわからない。ノート間のリンクとか、グラフビューとかの価値ももうひとつわかってない。使い続けてればわかってくるんだろうか。
筆者にとって重要なのは、Mac と Windows、少々難ありだが iPhone、試してないけど Android、Linux でもノートを共有できる、という点だ。もし仮に将来、Obsidian が使えなくなったとしても、markdown ファイルは残る。ファイルはしかも、ローカルとともにクラウド上にもバックアップされる。
markdown はテキストファイルなので、普通のテキストエディタであつかえる。その安心感があってこそ、この先、労力をかけてノートを書き溜めることが出来るというものである。保管庫のなかにすべてのノートを放りこむ、というファイル構成の単純さも好ましい。保管庫の引っ越しも、フォルダを移動するだけですむ。
Obsidian というのは、黒曜石の矢尻みたいな、原始的だけど強力な道具という意味をこめたのかもしれない。この単純さこそ武器なのだ。ずっとこんな感じで進化して欲しいものである。
ただ、ノートが何千、とかいう規模になってくるとちょっとわかんねぇか。動作が鈍くなったりするのかも。ま、いまのところ、すごく気に入ってしまった。ノート書きまくてやろうと思っている。
iCloud と OneDrive の同期
上述したように、iCloud Drive に保管庫を作ると、Windows 上の Obsidian での同期に難が生じる。
しょうがないので、Mac で Obsidian を開いた時に、rsync コマンドで iCloud と OneDrive の保管庫を同期することにした。使用したのは Mac のユーティリティアプリ、Hammerspoon と、シェルスクリプトである。
📝 mdsync.sh
#!/bin/sh
rsync -aru /Users/USERNAME/Library/CloudStorage/OneDrive-個人用/ドキュメント/md保管庫 /Users/USERNAME/Library/Mobile\ Documents/iCloud~md~obsidian/Documents
rsync -aru /Users/USERNAME/Library/Mobile\ Documents/iCloud~md~obsidian/Documents/md保管庫 /Users/USERNAME/Library/CloudStorage/OneDrive-個人用/ドキュメント
rsync は、 rsync コピー元 コピー先
のように使用する。コピー先には親フォルダを指定する。 -u
というオプションは新規ファイルや、更新したファイルだけを同期するものである。
Hammerspoon の init.lua には以下のように書いた。
📝 init.lua
-- obsidian sync
function syncEvent(name, event, app)
if event == hs.application.watcher.activated then
--hs.alert.show(name)
if name == 'Obsidian' then
hs.execute("sh /Users/USERNAME/MyProgram/mdsync.sh")
--hs.alert.show('sync')
end
else
if name == 'Obsidian' then
hs.execute("sh /Users/USERNAME/MyProgram/mdsync.sh")
--hs.alert.show('sync')
end
end
end
mdWatch = hs.application.watcher.new(syncEvent)
mdWatch:start()
hs.execute
で、先ほどのシェルスクリプトを実行している。
タイミングは、Obsidian をアクティブにした時と、別のアプリに移ってディアクティブになった時とした。
いうまでもなく、これだけでは Windows と iPhone の同期は取れない。Mac が間に入ることで Windows も同期される。
筆者は Mac がメインなのでこれで問題なしだが、Windows がメインのひとには、別の方法が必要になるだろう。たぶん、フォルダを同期するフリーウェアみたいなのがあると思う。