Obsidian ブックマークしたファイルを簡単に開くことができるプラグインをリリース
はじめに
Bookmarks Caller
というブックマークしたファイルを簡単に開くことできるようになるObsidianプラグインをリリースしました。
Obsidianのコアプラグインの1つにブックマーク
があります(ブックマーク機能詳細は以下リンク先を参照)。
よく使うファイルなどをブックマークすると、ブックマーク一覧からその項目をすぐに表示することができます。
ただ、デフォルトではそのブックマーク一覧を表示するのが少し手間であり、折角ブックマークしたファイルも開きづらいとジレンマがあると思います。
それをこのプラグインで解消できます。
本記事ではBookmarks Caller
の機能紹介、設定項目、その他雑記(開発の背景、コンセプトなど)を書きます。
Bookmarks Callerのリンク
オススメしたい人
-
Obsidian
アプリを使っている人 - ブックマーク機能を利用している人
- 今はブックマーク機能を利用していないけど、よく開くファイルがある人
機能紹介
機能: ブックマークを開く(1ファイル指定)
まず、Bookmarks Caller: Open bookmarks caller
コマンドを実行すると、ブックマークをリストアップしたモーダルが表示されます。
(コマンドはホットキーを割り当てておくことを推奨します)
次に表示されているブックマークの一覧から開きたいブックマークを見つけて、横にある1文字のキーを入力するとそのブックマークを開くことができます。
(矢印キーでフォーカスを移動してEnterまたはSpaceキーで項目を選択する、あるいはマウス操作やタップで項目を選択することでも同様に切り替えできます。)
※それぞれの1文字のキーは後述の設定: Characters used for button hintsで変更できます。
機能: ブックマークを開く(グループ指定)
コアプラグインのブックマーク機能にはブックマークをグルーピングする機能があります。
グループ(フォルダのようなもの)を作成し、グループの中にブックマークを格納して整理することができます。
このプラグインではグループの中にあるファイルを一括で開くことができます。
まず、機能: ブックマークを開く(1ファイル指定)と同様にBookmarks Caller: Open bookmarks caller
コマンドを実行します。
その後、一括で開きたいグループに移動して/
キーを入力すると、そのグループ配下のファイルを一括で開くことができます。
※デフォルトは/
キーを利用しますが後述の設定: Shortcut key for the “All” buttonで変更できます。
各種設定
設定: Recursively open files under groups
All
ボタンを選択したときに、グループ配下のファイルを再帰的に開くようになります。
例えば以下のグループ構成でLayer1グループ
でAll
ボタンを選択するとします。
- Layer1グループ
- ブックマークファイルA
- Layer2グループ
- ブックマークファイルB
この設定が有効になっていると、Layer1グループ
の直下にあるブックマークファイルA
とLayer2グループ
直下にあるブックマークファイルB
の2ファイルを開きます。
この設定が無効になっていると、Layer1グループ
の直下にあるブックマークファイルA
のみを開き、Layer1グループ
の直下にないブックマークファイルB
は開きません。
設定: Show footer buttons
モーダルの下部に表示されるBack
ボタン、ページ切り替えボタン、All
ボタンを表示するかを指定します。
Offにするのはキーボード操作のときのみを推奨します(マウス、タップ操作の場合はこのボタンを非表示にするとページ切り替えやグループ指定でファイルを開けなくなるため)。
設定: Show legends
モーダルの最下部に表示されるキー入力の凡例を表示するかを指定します。
設定: Color of button frame on focus
フォーカスされたボタンの枠の色を指定します。
設定: Characters used for button hints
モーダルでブックマークの横に表示されるショートカットキー用の文字を指定します。
4〜10文字の好きな半角英数字または記号を指定できます。
ここで指定した文字数に応じて1ページあたりに表示されるブックマークの数が増減します。
(4個指定すれば1ページあたり4項目を表示、10個指定すれば1ページあたり10項目を表示)
初期値のasdfghjkl;
はキーボードのホームポジションから離れずに操作できることを意識しています。
- 初期値:
asdfghjkl;
- 設定例1:
1234567890
- 設定例2:
!@#$%
- 設定例3:
asdf
設定: Shortcut key for the “All” button
All
ボタンのショートカットキーを指定します。
デフォルトでは/
ですが任意の単一キーを指定できます。
他の設定でショートカットキーで指定しているキーは指定できません。
設定: Shortcut key for the “Back” button
Back
ボタンのショートカットキーを指定します。
デフォルトではBackspace
ですが任意の単一キーを指定できます。
他の設定でショートカットキーで指定しているキーは指定できません。
その他雑記
開発背景
僕は普段Obsidianを利用しているとき、利用頻度に応じて以下のようにファイルを開いています。
-
高頻度で使うファイル
: 常時ファイルを開きっぱなしする- 常に1時間に1回は利用するファイル
-
特定の作業時のみ必要になるファイル
: ファイルを利用した後しばらく不要になった時点で閉じる- 1日に1回以上は利用するファイル
- その他のファイル
この特定の作業時のみ必要になるファイル
の中でも1日に1回以上は利用するファイル
が割と開くことが手間に感じていました。
そのときに「そういえばブックマーク機能があったよな」と思い出してブックマークを登録して利用し始めました。
ブックマークを表示
コマンドでブックマーク一覧を表示して任意のファイルを開きやすくなりました。
ただ、はじめにでも記載したように、このブックマーク一覧を表示する
という操作が手間に感じました。
-
ブックマークを表示
コマンドを実行して左サイドバーを開いてブックマーク一覧を表示 - 任意のファイルを探してマウス操作で選択してファイルを開く
- 不要になった左サイドバーをホットキーで閉じる
特に「マウス操作がいること」、「左サイドバーを閉じ直すこと」が手間でした。
そこですでにリリースしていたTab Selector
のUIを継承しつつ、本プラグインを開発しました。
※Tab Selectorについてはこちらの記事を参照。
開発コンセプト
Tab Selector
プラグインと同様に少ない動作・操作で好きなファイルを開ける
がコンセプトです。
少ない動作
はキーボードから手を離さずにキーボード操作だけで完結できることを意識しました。
少ない操作
はキーボード操作の入力回数を極力減らすことを意識しました。
また、例えば作業ごとに必要になるブックマークをグルーピングしておき、一括で開けるようにすることで1ファイルずつ開くという手間も削減できることを目指しました。
開発・リリースして気づいたこと
実はブックマーク機能のすべてに対応はできていない状況です。
Obsidianでブックマークできる項目は6種類あります。
(詳細はこちら)
当初ブックマークできるのはファイルだけと思っていたのですが、リリースしようと思っていた直前に他に5種類あることに気付きました。
僕自身が普段利用する際に必要なブックマークはBookmark a file
だけでしたが、公開するなら可能な限りサポートしたいと思って追加でいくつか開発しました。
現時点のサポート状況は以下の通りです。
- サポート済み
- Bookmark a file
- Bookmark a folder (v0.3.0でサポート追加済み)
- Bookmark a search term (v0.2.0でサポート追加済み)
- Bookmark a heading
- Bookmark a block
- Bookmark a graph (v0.4.0でサポート追加済み)
- 未サポート
- (Obsidian version1.5.12時点で未サポートなし)
未サポートのBookmark a search term
は近日中にサポートする予定です。
Bookmark a folder
とBookmark a graph
のサポートはまだ見通しがありませんが、マイペースにサポートする方法を探していこうと思っています。
未サポートだったBookmark a search term
はv0.2.0、Bookmark a folder
はv0.3.0、Bookmark a graph
はv0.4.0でサポートしました。
さいごに
このプラグインを利用することでブックマークしたファイルを開きやすくなり、そもそもの「ファイルをブックマークする」という機能はやっぱり便利だなと感じています。
どのくらいの数のObsidianユーザがコアプラグインのブックマークを利用されているかは分からないですが、まだ利用されていな方は是非一度使ってみて欲しい機能です。
ブックマーク機能を活用されるときに本プラグインがその手助けになれば嬉しいです。
Discussion