Obsidian タブ切り替えが簡単にできるようになるプラグインをリリース
はじめに
Tab Selector
というタブ切り替え操作が簡単にできるようになるObsidianプラグインをリリースしました。
開いているタブすべての中から開きたいタブへサクッと切り替えることができます。
version0.4.0
: 開いているタブの中から任意のタブを閉じる機能を追加しました。
version0.5.0
: 最後に開いた順にリストを表示して簡易にタブを切り替えられる機能を追加しました。
version0.6.0
: モーダルを開かずに簡易にタブを切り替えられる機能を追加しました。
本記事ではTab Selector
の機能紹介、その他雑記(開発の背景、コンセプトなど)を書きます。
Tab Selectorのリンク
オススメしたい人
-
Obsidian
アプリをPCまたはタブレットで使っている人 - 決まったタブを開きっぱなしにすることが多い人
- タブをたくさん開いたままにしがちな人
機能紹介
機能: タブ切り替え
まず、Tab Selector: Open tab selector
コマンドを実行すると、開いているタブをリストアップしたモーダルが表示されます。
(コマンドはホットキーを割り当てておくことを推奨します)
次に表示されているタブの一覧から切り替えたいタブを見つけて、左側にある1文字のキーを入力するとそのタブに切り替えできます。
(矢印キーでフォーカスを移動してEnter
またはSpace
キーでタブを選択する、あるいはマウス操作やタップでタブを選択することでも同様に切り替えできます。)
※それぞれの1文字のキーは設定画面で変更できます。
機能: タブを閉じる(version0.4.0)
まず、Tab Selector: Open tab selector
コマンドを実行して、開いているタブをリストアップしたモーダルが表示します。
次に表示されているタブの一覧から閉じたいタブを見つけて、Ctrl
キーを押しながら左側にある1文字のキーを入力するとそのタブを閉じることができます。
(矢印キーでフォーカスを移動してBackspace
またはDelete
キーを入力、あるいはマウス操作やタップで右側のX
ボタンを選択することでも同様に閉じることができます。)
機能: タブ切り替え - 開いた順に表示(version0.5.0)
Githubでリクエストを受けて、より簡単にタブを切り替える機能を追加しました。
VS CodeやArcブラウザでも採用されている一般的な方法でより直感的にタブ切り替えできると思います。
デフォルト設定では以下のコマンドに「Ctrl
+ Tab
」と「Ctrl
+ Shift
+ Tab
」のホットキーを割り当ててください。
※後述の設定で割り当てるホットキーは変更可能ですが、プラグインで設定するキーとホットキーで設定するキーを一致させる必要があります。
- Tab Selector: Go to previous tab:
^Tab
orCtrl + Tab
- Tab Selector: Go to next tab:
^⇧Tab
orCtrl + Shift + Tab
その後、上記コマンドをホットキーで実行することで下記イメージのようにタブを開いた順でリストアップしたモーダルが表示します。
このモーダルはデフォルト設定ではCtrl
キーを離したタイミングで閉じ、その時にフォーカスされたタブに切り替わります。
Ctrl
キーを押したままTab
キーを押すと1つ前の履歴のタブにフォーカスが移動します。
さらにCtrl
キーとShift
キーを押したままTab
キーを押すと1つ次の履歴のタブにフォーカスが移動します。
なお、OSが予約しているショートカットキーは本プラグインのホットキーとして割り当てないようにしてください。
割り当てるとOSが予約しているショートカットキーが優先されてプラグインが正しく動かない可能性があります。
例えば、MacOSの場合は「Command
+ Tab
」や「Alt
+ Tab
」はOSが予約しているショートカットキーであるため、プラグインが正しく動きません。
そういった場合はプラグインで設定するキーとホットキーで設定するキーを見直してください。
機能: タブ切り替え - モーダルなしで切り替え(version0.6.0)
Githubでリクエストを受けて、モーダルを表示させずにタブを切り替える機能を追加しました。
画面レイアウトの都合でPC/タブレットでのみ利用可能なコマンドです。
※スマホでは利用不可
Tab Selector: Open tab selector
コマンドの簡易版のようなイメージでこちらの方が使い勝手が良いかもしれません。
まず、Tab Selector: Show tab shortcuts
コマンドを実行すると、開いているタブの下に文字が表示されます。
(コマンドはホットキーを割り当てておくことを推奨します)
次に切り替えたいタブ名の下が側にある1文字のキーを入力するとそのタブに切り替えできます。
機能: タブ検索 - タブを検索して開く(version0.7.0)
Githubでリクエストを受けて、タブを検索して開く機能を追加しました。
Tab Selector: Search tabs
コマンドを実行すると、検索入力欄とタブをリストアップしたモーダルが表示されます。
(コマンドはホットキーを割り当てておくことを推奨します)
検索入力欄にキーワードを入力して開きたいタブを絞り込んで選択することでタブを開くことができます。
(矢印キーでフォーカスを移動してEnterキーで項目を選択する、あるいはマウス操作やタップで項目を選択することでも同様に切り替えできます。)
その他雑記
開発背景
開発しようと思ったキッカケは大きく2つあります。
1つは僕はビデオ通話で他の人と画面共有しながらObsidianの画面を見せることが多く、組み込みのコマンドの前のタブに移動
と次のタブに移動
を使ってタブ移動すると見せたくないファイルの中身を表示してしまうことがあるためです。「見せたくないファイルは最初から閉じておくべき」というのはその通りですがズボラなのでビデオ通話前後で開き直すのが手間でつい開きっぱなしにしています。
もう1つは僕はいつも開いたままにする特定のファイルがいくつかあり、基本的に一番左側から配置するようにしています。どのファイルを触っている時でもその特定のファイルにすぐに移動できる方法が欲しいと思っていました。これもズボラな理由かもしれません。
開発コンセプト
少ない動作・操作で好きなファイルを開ける
がコンセプトです。
少ない動作
はキーボードから手を離さずにキーボード操作だけで完結できることを意識しました。
少ない操作
はキーボード操作の入力回数を極力減らすことを意識しました。
10タブ開いている状態なら「Tab Selector
を起動→キーを1つ入力」の2アクションでタブを切り替えられます。
30タブ開いている状態なら「Tab Selector
を起動→左右の矢印キーでページ切り替え→キーを1つ入力」の3アクションでタブを切り替えられます。
流石に20も30も同時にタブを開いているケースは無いとは思いますが。
開発・リリースして気づいたこと
当初はキーボード操作をメインターゲットで考えて開発をしていました。
結果的にですがタブレットのタップ操作でも結構便利に使えることに開発中に気付きました。
iPhoneなどのスマホサイズでObsidianを利用する場合はタブ切り替えのUIが画面下側にデフォルトで用意されているので、スマホでのタブ切り替えはデフォルトで用意されているUIで十分と思っています。
一方、iPadなどのタブレットサイズでObsidianを利用する場合はiPhoneのようなUIがないようで、目当てのタブが探しづらく切り替えるのは少し手間に感じました。
Tab Selector
はリボンからも起動できるため、「リボンからTab Selector
をタップ→一覧の中から目当てのタブをタップ」の2タップでタブを切り替えられます。
特にiPadなどの場合、デフォルトではタブが増えるとタブに表示されるファイル名も短くなってどれがどのタブか見分けづらくなりますが、Tab Selector
は1行1タブで一覧表示するのでタブが探しやすい、というのもタブレットユーザには便利なのではないかと思っています。
さいごに
ほぼ自分向けに作ったプラグインではあったものの、少しずつダウンロード数が増えているのでちょっと需要があるのかもしれません。
次のプラグインの構想を練りながらまったり開発を続けていこうと思います。
追記:
想定よりも需要はあったようでGithubのIssuesでリクエストをいただいては改修を続けています。
Discussion