Installing Vimium

そういえばずっと以前にブラウザをvimっぽくする拡張の評価をいろいろして、最終的にcVimを選択したことがあった。それでずっとcVimを使っていたのだけど、メンテされなくなって随分経ち、いろいろと不具合が目立ってきたので別の何かに乗り換えることにした。

乗り換え先はタイトルの通りVimiumだ。VimiumはcVimに比べると

  • 内包している機能を直接呼び出すコマンドラインモードがない
  • 編集できる要素に対する拡張の余地がない

という明確なconsがあるが、それ以外はまあ何とかなる。軽いしよくできている。今までありがとうcVim…!

vi flavored browser UX #2

地道に試しているのだが、インストールしたらページが hjkl でスクロールできたよやったねたえちゃん! という観点で見ると違いはそれほどわからない。なんとか違いを探してみると:

開発の活発さ
Vichrome と Hometype は github 上のコードの最終更新が数年前と、すでに中の人がやる気をなくしている感がある。それ以外は活発なようだ。

vi/vim の機能の理解
ほぼすべてのエクステンションにおいて gt/gT で次のタブ・前のタブに切り替えることができるが、この時カウントを前置できる・できないエクステンションがある。Vichrome はできない(というよりカウントの前置という概念がないように思える)。Hometype はキーボードからのアクティブタブの移動という機能自体がない。見た目のセンスはいいと思うけど、全般的に機能が足りない感じがする。

一方で機能の豊富さで言うと vrome が優れているように思える。ただあんまり機能が多くても全部使うわけでもないので、個人的には vimium くらいの規模が妥当かなという感じ。

コンテントスクリプトのサイズ
フロントエンド側の機能を提供するコンテントスクリプトはすべてのタブのみならずすべてのサブフレームでも読み込まれるので、できるだけコンパクトな方が良く、jquery に代表される汎用的なライブラリ等には頼っていないほうが好ましい。そうじゃないとなんちゃらまとめサイトみたいな iframe 広告だらけのページを開いた時に悲惨なことになってしまう。

Vimium、Vrome、cVim はそのようなライブラリに頼っていない。特に cVim は機能の大多数をページに差し込む iframe 内に置いているようでコンテントスクリプトは非常にコンパクトであり、アーキテクチャは最も洗練されているように思える。

まとめ
後発なだけに cVim が優れている感じだが、Vimium や vrome も悪くはない。Vichrome と Hometype は今のところ一休み状態かなーという感じ。Vichrome は [cci]/[/cci] [cci]?[/cci] コマンドなどで日本語対応というのが売りらしいので、そういう方向ではいいのかも。といいつつ今 [cci]?[/cci] を押して何も入力しないまま enter 押したら Chrome ごと固まっちゃったが……。