vimperatorの設定

2017年11月にfirefox開発以来の大幅アップデートが行われ,新しいfirefox 57 (firefox quantum)がリリースされました.
vimperatorはこの大幅アップデートに対応することができず,今現在もfirefox 57に対応する見通しが立っていません.
vimperatorのgithubページにはEnd of Lifeという言葉が使われ,vimmerの私としては寂しいばかりです.

今現在firefox 57 (firefox quantum)に対応している,vimライクのキーバインドでブラウジングできるプラグインを探して見たところ,vim-vixenというプラグインが見つかりました.しかし,このプラグインもまだまだ開発途上で,vimpertorと比べるとどうしても劣るところがあります...

waterfoxを試す
そこで,私はfirefoxの派生ブラウザでfirefoxレガシープラグインが使用できるwaterfoxでvimperatorを使用しています.
どうしてもvimperatorと離れられないvimmerの皆さんは是非導入して見てはいかがでしょうか.

 

vimperatorとは?

WebブラウザFirefoxをvimライクに操作できるようにするためのプラグインです.
vimと同じようにh,j,k,lキーを用いてスクロールしたり,設定ファイル.vimperatorrcにキーマッピングを記述することで独自のキーバインドに変更出来たりします.
firefoxを完全にマウスなしで操作できるようになるので,vimmerの皆さんにはぜひ使って欲しいプラグインです!
(アドオンでvimperatorと検索するとヒットすると思います.手順に従ってインストールしてみて下さい)

 

 

設定ファイル.vimperatorrc

vimで言うところの.vimrcにあたるものが.vimperatorrcになります.
ホーム直下に~/.vimperatorrcを置くことで自動的によみこんでくれます.
このファイル内にキーマッピング等の設定を記述していきます.

 

 

基本的な設定

set titlestring="Firefox"
set visualbell

set titlestring
下図に示すように,タイトルの文字列を設定することができるます.(set title string hereの部分)
何も指定しないと”Vimperator”となります.
(ubuntuのfirefoxを想定していますので,macやwindowsの方はもしかしたらできないかもしれません)

こんなこともできます.笑

set visualbell
画面下端等に到達してもなおスクロールしようとした時などになるビープ音を消します.

 

 

ヒントモードに関するもの

" hint mode char
set hintchars="ghfjdktyrueibnvmc"

" hint style
hi Hint font-family: Ubuntu\ Mono; font-size: 20px; font-weight: regular; text-shadow: -1px -1px 2px black, 1px -1px 2px black, -1px 1px 2px black, 1px 1px 2px black; color: #33cccc;
hi HintElem color: gray; background-color: #a1e4e6;
hi HintActive color: gray; background-color: #a1e4e6;

" hint mode with iem off
nnoremap f :!fcitx-remote -c<Enter><ESC>f
nnoremap F :!fcitx-remote -c<Enter><ESC>F

set hintchars=” … “
ヒントモードでリンクを選択する際の数字を英語に変更することができる.
数字よりも英語の方が断然使いやすいので,設定することをオススメ.
タイプしやすいように人差し指や中指の位置にあるキーを設定している.

hi Hint,  hi HintElem,   hi HintActive
ヒントモードのデザインに関するもの.
フォントはUbuntu Monoがお気に入りなので,それに変更.
フォントサイズや影のサイズ,網掛けの色などを設定.

nnoremap f :!fcitx-remote -c<Enter><ESC>f
nnoremap F :!fcitx-remote -c<Enter><ESC>F
f(F)キーでヒントモードに入るとき,IMEをオフにする.
私は日本語入力にfcitxを使用しているので,このように設定.

ヒントモード: デフォルト

 ヒントモード: 設定後

 

 

キーマッピング

" restart firefox
nnoremap <C-r> :restart<CR>

" open new tab
noremap O :tabopen<Space>

" private browsing
noremap <C-p> :winopen -private<CR>

" google it
nnoremap s :open<Space>google<Space>
nnoremap S :tabopen<Space>google<Space>

" next previous tab
nnoremap <C-l> gt
nnoremap <C-h> gT

" move tab
nnoremap @l :tabmove! +1<CR>
nnoremap @h :tabmove! -1<CR>

" smooth scroll using <Down> <Up>
nnoremap j <Down><Down><Down>
nnoremap k <Up><Up><Up>
nnoremap J <PageDown>
nnoremap K <PageUp>

 nnoremap <C-r> :restart<CR>
Firefoxを再起動する.

noremap O :tabopen<Space>
Oキーで新しいタブを開く.

 

noremap <C-p> :winopen -private<CR>
Ctrl + p でプライベートウィンドウを開く.
mac版のfirefoxではプライベートウィンドウが開くことは確認できたが,ubuntu GNOMEでは使用できないようです.
ubuntu GNOMEでも使用できるコマンドを探し中なので,知っている方いらっしゃいましたらぜひ教えて欲しいです.

nnoremap s :open<Space>google<Space>
nnoremap S :tabopen<Space>google<Space>
sキー   現在のタブでgoogle検索.
Sキー   新しいタブでgoogle検索.
vimperatorでは   :open google <検索ワード>   でgoogle検索ができます.

nnoremap <C-l> gt
nnoremap <C-h> gT
Ctrl + l で左のタブに, Ctrl + r で右のタブに移動する.

nnoremap @l :tabmove! +1<CR>
nnoremap @h :tabmove! -1<CR>
@l で現在のタブを一つ左に移動. @h で現在のタブを一つ右に移動する.

nnoremap j <Down><Down><Down>
nnoremap k <Up><Up><Up>
nnoremap J <PageDown>
nnoremap K <PageUp>
デフォルトのスクロール量が小さいので j,kキーでのスクロール量を三倍に設定.
J,Kにすると更にスクロール量が大きくなる.

 

 

mybookmarksを使う

mybookmarksとは...
firefoxに登録されているブックマークを表示してくれるプラグインです.
それぞれの文字列にリンクが貼ってあるので,vimperatorのヒントモードで簡単にブックマークのリンクに飛ぶことができます.
vimperatorのヒントモードと相性がとてもよいので是非使ってほしいプラグインです.
(アドオンからmybookmarksと検索するとヒットすると思います)

 

 

mybookmarksのキーマッピング

" mybookmarks
nnoremap b :open<Space>about:mybookmarks<CR>
nnoremap B :tabopen<Space>about:mybookmarks<CR>

nnoremap b :open<Space>about:mybookmarks<CR>
nnoremap B :tabopen<Space>about:mybookmarks<CR>
b   現在のページでmybookmarksのページを表示.
B   新しいタブでmybookmarksのページを表示.

 

以上でvimperatorの説明は終わりになります.
vimmerの皆さんはぜひvimperatorも使いこなせるようになりましょう!