Vimium-C の B キーでブックマーク検索が開くのを止めた

Chrome 拡張機能の Vimium-C を使っていて、文字入力中に B を打つとブックマーク検索のポップアップが出てくる問題がありました。

unmap でキーマップを外して止めた記録です。

はじめに

Vimium-C は、Vim のキー操作でブラウザを動かせる拡張機能です。

ブラウザは 📄Arrow icon of a page link話題のAIブラウザ「Perplexity Comet」に乗り換えた で書いた Comet を使っています。

この記事では、B キーの割り当てを外す手順を書きます。

症状

  • 文字を入力している最中に B(Shift + b)を打つと、ブックマーク検索のポップアップが開く
  • 入力が中断されるので、地味に煩わしい

何度も出てくると、じわじわストレスが溜まります。

原因

Vimium-C は、デフォルトで b を「ブックマーク検索(Vomnibar.activateBookmarks)」に割り当てています。

B(Shift + b)は「新しいタブでブックマーク検索(Vomnibar.activateBookmarksInNewTab)」です。

通常は、入力欄にフォーカスがあればキーはページ側に渡されるはずです。

それでも入力中に反応したので、フォーカスの扱いが合わない場面があるのかもしれません。

どのサイトで起きやすいのかは、正直まだ切り分けられていません。

今回は原因のページを探すより、使っていないキーマップを外して止めることにしました。

flowchart LR
    A["B キーを入力"] --> B{"Vimium-C の<br>キーマップ"}
    B -->|"変更前: map あり"| C["ブックマーク検索が開く"]
    B -->|"変更後: unmap"| D["ページ側にキーが渡る"]

修正内容

1. オプション画面を開く

拡張機能のアイコンから、Options を開きます。

アイコンが見当たらない場合は、アドレスバーに comet://extensions/ と入力します。

Chrome なら chrome://extensions/ です。

拡張機能の一覧で Vimium-C の詳細を開き、拡張機能のオプションに進みます。

2. Custom key mappings に追記する

オプション画面にある Custom key mappings のテキストエリアに追記します。

ブックマーク検索を使う機会が少なければ、キーマップごと外すのが手っ取り早いです。

# b と B のブックマーク検索を解除する
unmap b
unmap B

別のキーに移したい場合は、こちらです。

# b を解除して Ctrl + b に割り当てる
unmap b
map <c-b> Vomnibar.activateBookmarks

# B を解除して Ctrl + Shift + b に割り当てる
unmap B
map <c-B> Vomnibar.activateBookmarksInNewTab

行頭を # で始めるとコメントになります。

3. 保存する

画面下部の Save Options を押して保存します。

反映されていないように見えたら、開いているページを再読み込みしてみてください。

修正後の効果

unmap で外した場合の挙動を表にすると、次のとおりです。

操作 変更前 変更後
入力中に B ブックマーク検索が開く ページ側にキーが渡る
ページ上で b ブックマーク検索が開く ページ側にキーが渡る

注意点

unmap するとブックマーク検索は使えなくなる

キーボードでブックマークを開きたい場面があるなら、unmap ではなく別キーへの割り当てを選んでください。

Ctrl + Shift の書き方

<c-B> の書き方が Ctrl + Shift の意味になるかは、拡張機能のバージョンによって違うかもしれません。

私の環境では、この書き方での動作までは確かめていません。

動かないときは、オプション画面の Show available commands で、コマンド名を確認してみてください。

他のキーでも起きるかもしれない

b と B 以外にも、入力中に反応するキーがあるかもしれません。

サイト単位で Vimium-C のキーを止めたいときは、除外ルール(exclusion rules)で指定する方法があります。

Vimium-C の公式リポジトリはこちらです。

まとめ

Vimium-C では、b がブックマーク検索、B が新しいタブでのブックマーク検索に割り当てられています。

入力中に B が反応して煩わしいときは、Custom key mappings に unmap を書けば外せます。

別のキーに移したい場合は、unmap のあとに map で割り当て直します。