ブラウザでももっとVimVimしたい!
Vim Advent Calendar 16日目
みなさんこんにちは。OperaもDvorakも大好きですが、Vimも大好きなゆずえもんです。
大好きなVimを大好きなブラウザでも使いたい!!って時、ありますよね?
今日はそんなVimmerの皆さんに各ブラウザでのVimライクな利用方法を纏めてみました。
主に「ブラウザ操作のVim化」、「textareaのVim化」に焦点を合わせてエントリを書きます。
Firefox
Vimperator
言わずと知れた有名なアドオン。Vimperator :: Add-ons for Firefox
移動コマンドだけでなく、:set 〜などとコマンドも打てるのが特徴です。
設定ファイルとして .vimperatorrc があるのもVimらしくていいですね。
It's All Text
textareaを外部エディタで編集できるアドオンです。 It's All Text! :: Add-ons for Firefox
インストールするとtextareaの右下*1に編集ボタンが追加されます。
Google Chrome
Vimium
Chrome Web Store - Vimium
Vimperator程のカスタマイズ性はないのですが、ページ移動・タブ移動などの基本的な操作はひと通りカバーしています。
デフォルトのキーボードショートカットと競合する為、以下のキーバインドはデフォルトで無効になっているので適宜有効にするといいでしょう。
c-d | scrollPageDown |
c-u | scrollPageUp |
c-f | scrollFullPageDown |
c-b | scrollFullPageUp |
もちろん、以下のように環境設定画面から自分でmappingをカスタマイズすることも可能です。
詳しいキーバインドや設定方法はこちらに載っています。
Chrome Web Store - Vimium
Edit with Emacs
元々はEmacs用なのですが、Vimに限らず他のエディタで開くことも可能です。
Chrome Web Store - Edit with Emacs
こちらもIt's All Textと同じようなボタンから外部エディタを起動します。
ここではgithubにあるedit-serverを利用します。
gfxmonk/edit-server · GitHub
このedit-serverはデフォルトでgVimを開く設定になっているのでそのまま利用することができます。
git clone git://github.com/gfxmonk/edit-server.git ~/github
MacVim(Macvim-KaoriYa)と併用する場合にはこんな感じに引数を与えて実行するといいでしょう。
~/github/edit-server/edit-server /Applications/MacVim.app/Contents/MacOS/MacVim
:wで保存すると、一瞬textareaが黄色くなり同期が行われます。
参考: Blueman Dancing
Opera
Extensionなど要らん!!
Operaではデフォルトでキーボードの操作をほぼ自由に編集できるのでkeyboard.iniを編集すれば簡単にVim化できます。
流石我らがOpera。
こちらのアクションコマンド一覧を眺めながら、好きに設定するといいでしょう。アクション一覧 - Opera Wiki