Skip navigation

おこじょめもらんど

Obsidianでノート管理とブログコンテンツ管理をgitとiCloudとGoogleDriveを連携させて実現する

Obsidianでノート管理とブログコンテンツ管理をgitとiCloudとGoogleDriveを連携させて実現する

Created At
tool
zettelkasten vscode obsidian

Obsidianでノート管理とブログコンテンツ管理をgitとiCloudとGoogleDriveを連携させて実現する

以前、ObsidianとVS Code両方でZettelkastenするという記事を書いて、もっと Obsidian を使ってみたいと感じました。

この記事タイトルにもある通り、Obsidian を Sync とか使わずにクラウドストレージサービスを使ってスムーズなクロスデバイスのノート連携と、ブログ執筆体制を整えるという感じのお話です。

やりたいこととか要件

その他前提

構成

今回は下記のような構成でやりたいことを実現します。

構成図

それぞれのデバイスでの設定

それぞれのデバイスにおいて、上記を実現するための設定です。

設定が面倒な順番で記載していますが、サービスによって「勝手に同期」されるやつは説明を省略します。

パスは適当に自分のやつで読み替えてもらえばと。

Mac

iCloudとGoogleDriveの双方方向同期

fswatchunison を使って双方方向同期を実現します。

iCloud と GoogleDrive にそれぞれ Obsidian の vault が設定されるようにしますが、毎回パスの設定が面倒なのでシンボリックリンクを作っておきます。

ln -s YOURUSER/Library/Mobile Documents/iCloud~md~obsidian/Documents/myvault ~/icloudvault

ln -s YOURGOOGLEDRIVE/obsidian/myvalut ~/googlevault

細かい設定は必要ないと思うので、ワンライナーで unison をささっと書いてしまいます。

fswatch -o $HOME/googlevault /$HOME/icloudvault | xargs -I{} unison -batch -times -prefer newer -auto -fastcheck true -path ./ -ignore "Name .DS_Store" $HOME/googlevault $HOME/icloudvault

iCloudにあるObsidian Vaultとgit管理のブログの特定フォルダの双方方向同期

fswatchunison を使って双方方向同期を実現します。

ほぼ上と同様に。ただ同期先フォルダが違うだけです。

fswatch -o YOURBLOGCONTENTS_PATH /$HOME/icloudvault/103_BlogNotes | xargs -I{} unison -batch -times -prefer newer -auto -fastcheck true -path ./ -ignore "Name .DS_Store" YOURBLOGCONTENTS_PATH $HOME/icloudvault/103_BlogNotes

Android

Obsidian VaultのDriveSyncによるGoogleDriveとの双方方向同期

Android のアプリで Obsidian を使用すると、どのフォルダを vault として使用するかとか選択できます。

目的は、Android の Obsidian vault を GoogleDrive の特定のフォルダと同期させることなので、GoogleDrive のアプリではなく DriveSync というアプリを使って実現します。

  1. Android のストレージの適当な場所に Obsidian vault を作成する

    • 例えば自分の例だと /storage/emulated/0/Documents/obsidian/myvalut を Obsidian のアプリ上で作る
  2. DriveSyncをダウンロードして設定する

    • 無料版だと広告が入ったり、GoogleDrive の特定のフォルダしか連携できませんが、目的には必要十分
    • 自分は下記のような設定
      • sync method を two-way にしていて危険な香りがしますが、もしファイルの Conflict が起きても conflict ファイルとして別で残るので、都度発生したら修正で対応

たったこれだけで、Mac,Windows,Android のデバイスでの Obsidian 双方向の同期環境が整えられました。

ブログ執筆フロー

ということで、Android と PC デバイス間での同期のラグは少しあるものの、この同期環境を利用したこのブログの執筆フローは下記の感じです。

その他思ったこと

今回の環境は Mac をつけっぱなしの同期 Hub 扱いしていますが、例えば Windows でできないのかな?とか作りながら思ったことを記載しています。

最後に

自分はこの環境に満足していますが、これよりもこちらのほうが便利だよとかあったら教えてもらえると助かります。。。