This page looks best with JavaScript enabled

Obsidian の3つのコアプラグインをカスタマイズした

 ·   ·  ☕ 6 min read

ざっくり

Obsidian にはデフォルトで使用できるコアプラグインがいくつかあります.
これらのコアプラグインはなかなか便利で, それがきっかけで Obsidian を使い始めたところもあります.
ところが, Obsidian を使い始めてそれなりに経ち, 自分なりの使い方が定着してきた頃, コアプラグインへの不満も感じるようになってきました.
そこで, 最近, Obsidian プラグイン作りにはまっていたのもあり (Obsidian Binary File Manager プラグインを作った), これらの不満を解消するためのプラグインを作ってみました.

私が不満を感じていたコアプラグインは ↓ の3つです.

  • Core Search (Global Search),
  • Command Palette,
  • Quick Switcher

どれも, 私が毎日使っている, Obsidian を使う上ではなくてはならないプラグインです.
これから, これらのプラグインのどんなところが私のユースケースと相性が悪かったのか, そしてそれをどのように改善したのか説明したいと思います.

不満点

全文検索, パス名検索, タグ検索など, 様々な検索機能を提供するプラグインです.
フォルダ構造にこだわらなくても, あらゆるファイルに簡単にアクセスできるため普段から重宝しています.

Core Search プラグインへの不満は2つあります.
まず, UI がマウス頼りなことです.

  • 検索結果を眺めるには, マウスでスクロール,
  • 検索結果を選択するには, クリック,
  • 検索オプション (ソート順など) を設定するためにはクリック.

検索ワードを入力してから, いちいちマウスに持ち替えて, こうした操作を行うのは私には面倒です.
できれば, キーボードだけで, ↑ の操作を完結させたくなります.

もう一つは, プレビューが小さくて見にくいことです.
デフォルトでは検索結果の上にカーソルを乗せると, ファイルのプレビューが表示されます.
マッチした部分だけでなく, ファイルの全体を見られるので便利な機能ですが, そのプレビューが私には小さすぎます.
もうちょっと大きく表示してくれないものかなぁと思っていました.

改善策: Core Search Assistant

ということで, Core Search を強化して ↑ の不満点を解消するためのプラグイン Core Search Assistant を作成しました.

主な機能は ↓ の3点です.

  • すべての機能をキーボード操作で完結できる,
  • 検索結果をカード表示する,
  • とても大きなプレビュー画面を表示する.

キーボード操作

ほとんどすべての操作をキーボードで完結できます.
例えば, ↑ で触れた操作については, ↓ のように hotkey を設定しています.

  • 検索結果を眺める: ↓↑ あるいは Ctrl + N/P,
  • 検索結果を選択する: Ctrl + Enter ,
  • 検索オプション (ソート順など) を設定する: Shift + Space.

また, 人によって自然な hotkey は違うと思うので, 設定画面で hotkey を自由に変更できるようにしています.

カード表示

こんな感じ ↓ です.

Image from Gyazo

大きなプレビュー

Ctrl + Space を押すことで, 選択しているファイルのプレビューを大きく前面に表示します.
さらに, Tab キーを押すことで, マッチしている部分に自動でフォーカスしていきます.
フォーカスした状態で, Ctrl + EnterCtrl + Shift + Enter を押すと, その部分にカーソルを当てた状態でファイルを開いてくれたりもします.

Command Palette

不満点

コアプラグインやコミュニティプラグインが用意するコマンドをコマンド名で検索し, 実行できる機能です.
Command Palette のおかげで, ショートカットキーを山ほど覚えなくても色々なコマンドを実行することができます.
また, 特殊な設定をしない限り, ほとんどのコマンドは Command Palette を通してしか実行できません.
そういう意味で, Command Palette は言葉通り「欠かせない」プラグインだと思います.

そんな Command Palette への不満は, プラグインが増えるにつれて, コマンドの数も増えてしまい, Command Palette が肥大化する ことです.
上でも説明した通り, Command Palette はコマンド名で検索を行うのですが, コマンドの数が増えてくると, 目的のコマンドにたどり着くためにタイピングする文字数が増えてしまいます.

加えて, コミュニティプラグインの中には, 「それコマンドじゃなくていいよね?」と思えるようなコマンドを追加するものが少なくありません.
例えば, BRAT プラグインはとても便利でよく使わせてもらっていますが, ちょっとコマンドの数が多すぎる気がしています.

Image from Gyazo

また, すでに hotkey を設定しているコマンドはコマンドパレットで表示する必要はない気がします.
Hotkeys++Cycle through Panes の類ですね.

改善策: Command Palette --

ということで, 自分にとって必要のないコマンドを表示しないような Command Palette, Command Palete -- を作りました.

使うためには, Command palette: Open command palette の代わりに Command Palette --: Open command palette を実行すれば大丈夫です.
表示させたくないコマンドは, 設定画面で指定できます.

Image from Gyazo

↑ で触れた BRAT プラグインのコマンドをいくつか登録してみます.
すると, Command Palette -- での表示はこんな感じ ↓ になります.
UI はデフォルトの Command Palette とほとんど同じですが, コマンド数が減って, だいぶすっきりした気がします.

Image from Gyazo

ちなみに, これはおまけ機能なのですが, Command Palette -- を開いた時点では, 直近で使用したコマンドを上部に表示するように設定しています.
デフォルトよりもちょっと便利になっていると思います.

Quick Switcher

不満点

直近で開いたファイルにアクセスしたり, パス名でファイルを検索したりできるプラグインです.
検索自体は Core Search でできるので, 私の主な用途は, 直近で開いたファイルにささっと切り替える, というものです.

Quick Switcher への不満は, 表示される内容がパス名だけであることです.

Image from Gyazo

私はほとんどのノートのファイル名を YYMMDD-HHmmss の形式にしていて, ノートのタイトルは見出し H1 に記載しています.
なので, Quick Switcher を開くと ↑ のように, 日時の羅列が表示されるだけになってしまいます.
そのため, 最近までは Quick Switcher を開くたびに, 目的のファイルの作成日時を推測してファイルを開く, といったかなり面倒で疲れる方法でファイルにアクセスしていました.

改善策: Card View Switcher

ということで, 結果をカード表示するプラグイン, Card View Switcher を作りました.

Image from Gyazo

使うためには, Quick Switcher: Open quick switcher の代わりに Card View Switcher: Open switcher を実行すればいいです.
直近で開いた10コのファイルをカード表示してくれます.

この Card View Switcher は少し Quick Switcher とは異なる作りにしているのでそれについて説明したいと思います.

まず, Card View Swithcher で検索ワードを入力すると, パス名での検索ではなく, 直近で開いた10コのファイル内で全文検索を行います.
もともと10コしか結果が無いので, 検索というよりもフィルターと言った方が適切かもしれません.

では, パス名検索できないのかというと, そうではありません.
検索ワードの先頭に Space' をつけると, 通常のパス名検索ができるようになります.
これは, Mac のランチャーアプリの Alfred がファイル検索する挙動を参考にしました.

Image from Gyazo

ちなみに, デフォルトの Quick Switcher では, ファイルを作成する機能もありますが, 私のユースケースには必要ないので省略しています.

追記 (22/03/24)

パス名検索した結果からランダムに10コ選んで表示する機能 ランダム検索 を追加しました.
ランダム検索を行うには, 検索ワードの先頭に ; をつけます.
例えば, ;ABC/ と検索すれば, ABC フォルダに含まれるファイルのうちランダムに10コを表示できます.
ランダムにノートを表示するには, Smart Random Note プラグインも使えますが, 複数のファイルをざっと眺めるにはこの機能が便利かなと思います.

終わりに

↓ が作成したプラグインです.
使ってもらえるとうれしいです🙂

Share on

qawatake
WRITTEN BY
qawatake