Obsidian Advent Calendar 4日目はきみのぶさん。
きみのぶさんは何度かこのブログでも取り上げていますが、
- フォルダは使わず、TagFolderで
- データ同期はSelf-hosted LiveSyncで
と「欲しいものは自分で作る」を地で行く開発者。
ネクストプロジェクトとして、記事投稿日を勘違いしないためのリマインダプラグインの開発をおすすめします。
今回はその応援として、これまで取り上げてこなかった「Screwdriver」を僕なりにちょっと解説してみましょう。
Screwdriverとは何ぞや?
言葉の意味としては、ねじを回すときに使用する「ドライバー」です。
なぜこの名称にしたのかは本人に直接尋ねてみたいところですが、推測としては、
- 素手で (何らかの工夫をしなければ) いじりにくいファイルを閲覧 / 操作するもの
というニュアンスでしょうか。
ユーザー視点で言えば、.obsidian/snippets
に収まるCSSファイルなんかは、その良い例ですね。
パソコンなら比較的簡単にアクセスできるんだけど、モバイル環境ではちょっと面倒。まして修正するとなればなおさらです。
こういったアクセスしにくいファイルの内容を一旦ノートに書き出し、Obsidian上で編集できるようにするのがこのプラグイン。
これができるって、結構スゴくない?
使ってみる
では早速使ってみましょう。今回はiPadのObsidianアプリでsnippetsフォルダにあるCSSファイルの内容を読み込み、iPad上で編集した内容を元のファイルに適用するという流れを実践します。
インストールはBRAT経由で
Screwdriverはベータ版プラグインなので、BRAT経由でインストールしましょう。
ちなみにリポジトリURLはhttps://github.com/vrtmrz/obsidian-screwdriver
です。
※ 現在はちゃんと正式プラグインとして認証済みのようなので、通常のインストール方法でもOKのようです。
きみのぶさん、指摘していただいてありがとうございます!
準備
新規ノートを作成し、コマンド【Create dump template】を実行。何も書き込まれていないノートでなければ失敗するので注意してください。
成功すると、ノートのPropertiesにいくつかの内容が書き込まれます。
次に一番上の「targets」を埋めるコマンド【Add target directory】を実行して、プラグインがやり取りするフォルダを指定します。
ここでは.Obsidian_ipad (Obsidianの設定フォルダ)/Snippetsを指定。
CSSファイルに関しては、標準のテンプレートだと「○○styles.css」という名前のファイルだけが検出されます。
全てのCSSファイルをフェッチしたい方は、この部分を「.css」などに変更しておきましょう。
隠しファイルの情報を読み込む
これで.obsidian_ipad/snippets
フォルダに納まるファイルの中で、
- ○○main.js
- ○○manifest.json
- ○○.css
という条件に当てはまるファイルが読み込めるようになりました。
コマンド【Dump or fetch files】で、実際に読み込みを開始します。
そこに何らかのCSSファイルが存在すれば、こんなふうに読み込まれるはずです。
内容を編集してリストアする
それではiPadでこのCSSファイルを編集してみましょう。
表示をSouce modeに切り替え、適当に書き込み。
変更後にコマンド【Restore files】を実行すると、そのファイルが更新されます。
実際に見出しを表示して試してみましょう。
Obsidianをモバイル環境でも使いやすく
Self-hosted LiveSyncもそうですが、このプラグインにはきみのぶさんの「Obsidianをモバイル環境でも使いやすく」が良く現れているような気がします。
今回はCSSしか試しませんでしたが、プラグイン開発には当然main.jsやmanifest.jsonなども編集する必要があるわけで、これがモバイル環境でもストレスなく編集できるというのはプラグイン開発者にとって大きいでしょう。
一般ユーザーからは「なんかよくわからんプラグイン」という印象を持たれるかもしれませんが、わかってしまえば簡単で非常に便利です。もちろん人は選びますが。
きみのぶさんには、今後もニッチでスマートなプラグインを開発していただきたいと思います。