うちのVimperator設定を晒してみる

はじめに

これらはVimperatorをお使いの諸先輩方の素晴らしい設定を参考にさせていただいたもので、彼らにまず多大な敬意を表したいと思います。これからVimperatorを使う方の参考に少しでもなればと、拙いまとめではありますが晒させていただきます。なお、私は素人全開100%ですので間違いも多々含まれていると思います。変なところがあっても鵜呑みしないよう、予めそこらへんよろしく。

.vimperatorrc

" 1.2pre (created: 2008/07/11 21:30:06)

" Options
"メニュー/ツール/ブックマークバーを表示
set guioptions=mTb
"ブラウザタイトルの設定
set titlestring=Mozilla Firefox 3
"エラー時のビープ音をビジュアルベルに
set visualbell
"ビジュアルベルを無効化
set visualbellstyle=display:none;
"詳細表示を7行に(最大値=9)
set verbose=7
":[tab]open時の補完設定(s=検索エンジン+キーワードURL,l=ロケーションバーの補完機能を利用)
set complete=sl
"コマンド入力時にコマンド名を自動補完
set wildoptions=auto
"デフォルト検索エンジン(検索バーの管理→キーワード,うちではg=google)
set defsearch=g
"サジェストエンジンの設定
set suggestengines=g
"検索語のハイライト
set hlsearch
"開いているページが1つならタブ非表示
set showtabline=1
"履歴を保存
set history=1000
"以下のとき新しいタブで開く
set activate=homepage,quickmark,tabopen,paste
"ヒント機能(f,F押下時)の見た目設定(効いてない?)
set hintstyle+= font-family: Verdana , monospace; font-size:20px; color:white; background-color:blue; border-color:ButtonShadow;


" Mappings
"j/kの移動量を5倍に
noremap j 5
noremap k 5
"J/KにPageDown,PageUpを割り当て(LDRizeが効いている場合でも指のポジションを動かさずに済む
noremap J 
noremap K 
"h/lで戻る/進む
noremap h 
noremap l 
"H/Lでタブ移動
noremap H gT
noremap L gt
"←/→でタブ移動
map  
map  
"Shift+←/Shift+→でタブ位置変更
map  :tabmove! +1
map  :tabmove! -1

"コピー&ペーストなどOSのショートカットが効くように
inoremap  
inoremap  
inoremap  
inoremap  
inoremap  
cnoremap  
cnoremap  
cnoremap  
cnoremap  
cnoremap  

"ロケーションバーにフォーカス
map  

"各種バー表示をトグル
noremap  :set guioptions=
noremap  :set guioptions=b
noremap  :set guioptions=bmT

"LDRize_Cooperationをトグル
map q :toggleldrc

"はてブ追加
noremap a :hb[

"ダイアログ表示してブックマーク追加
map ,a :dialog addbookmark

"はてブ情報表示
map b :hbinfo

"はてブタグ読み込み
map ,b :hbtags

"タブを閉じる(browser_object.js)
map x dd

"Vimperatorからminibufferコマンド
map  :m

"Ctrl+rで再起動,Ctrl+hでヘルプ
map  :restart
map  :help

"niconicoplaylist.js関連
map ,nn :nnpplaynext
map ,na :nnppushallvideos
map ,nt :nnppushthisvideo
map ,nc :nnpclear
map ,nl :nnpgetlist
map ,nr :nnpremove
map ,ni :nicoinfo
map ,np :nicopause
map ,nm :nicomute
map ,nv :nicommentvisible
map ,nz :nicosize
map ,ns :nicoseek

" C-cでテキスト選択してたらコピー、 してなかったらロードを中止する
js <'], 'Copy selected text or stop loading',
    function(){
        var sel = window.content.window.getSelection().toString();
        if (sel){
            copyToClipboard(sel,true);
        } else {
            BrowserStop();
            echo('Stopped loading !');
        }
    }
);
EOM

" Plugins
" ===================================================
" ime_controller.js
let g:ex_ime_mode = "inactive"
let g:textarea_ime_mode = "inactive"

" googlesuggest.js
map s :google

" migemo_hint.js
set hintmatching=custom

" ldrize_cooperation.js
let g:ldrc_captureMappings = "['j','k','p','o','?']"
let g:ldrc_intelligence_bind = "false"
let g:ldrc_skip = "0.25"

" feedSomeKeys.js
autocmd LocationChange .* :fmapc

" livedoor Reader/Fastladder/OpenFL
js <  z Z < > q w b i g u".split(/ +/));');
EOM
autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap o vj
autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap J 
autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap K 
autocmd LocationChange (?!http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/) :set! browser.tabs.loadDivertedInBackground=false
autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :set! browser.tabs.loadDivertedInBackground=true

" Reblog用 (要tombloo.xpi)
autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap i t

" Tumblr (要ReblogCommand)
autocmd LocationChange http://.*\.tumblr\.com/ :fmap i t

"niconicoplaylist.js (http://d.hatena.ne.jp/janus_wel/20080711)
" 再生リストの表示数を 7 個に
" plugin : niconicoplaylist_cooperation.js
let g:nnp_coop_numoflist='7'

javascript <

導入したプラグインリスト

合計 20個
入手先はほとんどCodeRepos

bookmarktoolbar-hint.js ブックマークツールバーにもヒント機能を 参照
browser_object.js drtで「ここから右のタブ閉じる」rstで「同ホストのタブを全部リロード」とか 参照
char-hints-mod.js クイックヒントを数字から英字に
copy.js :copyコマンドでCopy URL+的な機能を 参照
direct_hb.js はてなブックマークに開いているページを直接追加 参照
feedSomeKeys.js 任意のURLで任意のキーをブラウザに渡す 参照
googlesuggest.js タブ補完時にGoogleSuggestをつかって補完を可能にする
hatenabookmark_show.js :hbinfoコマンドではてなブックマークを表示
hatenaStar.js :hatenastarコマンドではてなスターを打つ 参照
ime_controller.js コマンド入力及びテキスト入力時のIMEを指定の状態に切り替える 参照
ldrize_cooperation.js LDRizeとVimperatorを協調動作させる 参照
ldrize_cooperation_fetch_flv.js :fetchflvコマンドでニコニコ動画をDL 参照
lookupDictionary.js :eijiro,:gooコマンドで辞書検索
migemo_hint.js fのヒント機能時にローマ字でリンクの日本語を絞り込み 参照
nicontroller.js ニコニコ動画をキーボードで操作 参照
nnp_cooperation.js NicoNicoPlaylistと協調動作するプラグイン 参照
sbmcommentsviewer.js ソーシャルブックマークのコメントを表示 参照
stylechanger.js Stylish的なプラグイン:コマンドでリロード可能など 参照
twitter.js twitterに投稿したり情報表示したり 参照
wassr.js wassrに投稿したり情報表示したり 参照

困ってること

  • やっぱりset hintstyle+が効いてない気がする
  • F押したときはバックグラウンドタブでガシガシ開きたいけど、やり方がわからん
    • :set! browser.tabs.loadDivertedInBackgroundあたりを使うのかな