プラグインも作ったことだしそろそろvimperatorrcでも晒してみるの巻
そんな感じで晒してみます。
ちなみに、入れてるプラグインはこんな感じ
- xpathBlink.js
- bookmarktoolbar-hint.js
- char-hints-mod.js
- command_menu.js
- commandBookmarklet.js
- copy.js
- direct_bookmark.js
- encodingSwitcher.js
- feedSomeKeys.js
- gmail_biff.js
- gmperator.js
- googlesuggest.js
- ime_controller.js
- ldr_unread_counter.js
- ldrize_cooperation.js
- ldrize_cooperation_fetch_flv.js
- localkeymode.js
- lookupDictionary.js
- nicontroller.js
- noscript.js
- proxy.js
- relative_move.js
- sbmcommentsviewer.js
- scroll_div.js
- uaSwitch.js
- ubiquity.js
- walk-input.js
最低限使うのだけ残した感じ。
でもって、vimperatorrc はこんな感じ。
かなり頻繁に書き換えてるので、明日の時点ではまた変わるかもしれんです。
"" ** notice!! **
""
"" firegestures のロッカージェスチャはクイックリンクがきかなくなるらしいので、無効にすること。
"""" エラーコンソール出力レベル
"" →「:javascript! 」で表示される内容レベル 9->たくさん表示
""set verbose=9"" 検索での大文字小文字を無視
set ic"" スクロールの端などの際に出るbeepをoff
set novisualbell"" 新規タブを開いた際にアクティブにする機能
set activate=homepage,quickmark,tabopen,paste"" :[tab]open コマンドで補完する候補と順番
set complete=sl
set suggestengines=google"" exモード時の補完候補がTabキーを押さなくても自動的に表示されて、キー入力するたびに更新
set wildoptions=auto"" おせっかいユーザビリティーを無効化
set focuscontent""] ]
set nextpattern+=next, 次(の)?ページ,\b次.*,→\b,下一頁,Следующая,・、・隹
""[ [
set previouspattern+=prev, 前(の)?ページ,\b前.*,\b←"" ブラウザタイトルの変更 Firefox デフォルトは 「Mozilla - Firefox」
set titlestring=Mozilla Firefox"" ウィンドウ表示設定(m:メニュー,T:アドレスバー,b:リンクバー)
set guioptions+=mT"" 検索キーワードのハイライト
set hlsearch"" 最初の補完を早くする(らしい)
set preload"" エディタ設定
set editor="C:\\Personal\\Apps\\Editor\\sakura\\sakura.exe""" HintのStyle
set hintstyle=z-index:5000; font-family:monospace; font-size:12px; color:white; background-color:blue; border-color:ButtonShadow; border-width:0px; border-style:solid; padding:0px 1px 0px 1px; position:absolute;"" migemo_hint.js
""set hintmatching=custom"" ime_controller.js
let g:ex_ime_mode = "inactive"
let g:textarea_ime_mode = "inactive""" 上のディレクトリに移動
""map <BS> gu
map <S-BS> gu
map <C-BS> gU"" j/k でのスクロール幅を 1行 から 5行 に
noremap j 5j
noremap k 5k
noremap J <C-d>
noremap K <C-u>"" Backspace に戻るを割り当て
map <BS> <A-Left>"" 戻るや進むを割り当て
map H <A-Left>
map L <A-Right>"" ex modeでC-jを無効化
cmap <C-j> <Nop>"" ex modeでUp/DownをTab/S-Tab互換に
cmap <Down> <Tab>
cmap <Up> <S-Tab>"" URL中の数字を++/--
mapc +
mapc -
noremap ++ <C-a>
noremap -- <C-x>"" for migemo search
map <C-f> <C-v>/gi"" コマンドライン、テキストエリア内ではC-v,C-xで貼付/切取
noremap <C-a> <C-v><C-a>
inoremap <C-a> <C-v><C-a>
cnoremap <C-a> <C-v><C-a>inoremap <C-c> <C-v><C-c>
cnoremap <C-c> <C-v><C-c>inoremap <C-v> <S-Insert>
""inoremap <C-v> <C-v><C-v>
cnoremap <C-v> <S-Insert>
""cnoremap <C-v> <C-v><C-vinoremap <C-x> <S-Del>
""inoremap <C-x> <C-v><C-x>
cnoremap <C-x> <S-Del>
""cnoremap <C-x> <C-v><C-x>inoremap <C-z> <C-v><C-z>
cnoremap <C-z> <C-v><C-z>"" Add Mapping `C-c copy or stop loading
javascript <<EOM
liberator.mappings.addUserMap([liberator.modes.NORMAL,liberator.modes.INSERT], ['<C-c>'],
'Copy selected text or ',
function () {
var sel = document.getSelection();
// var sel = liberator.buffer.getCurrentWord();
if (sel) {
liberator.copyToClipboard(sel, true);
echo('Yanked: ' + liberator.util.escapeHTML(sel) );
} else {
BrowserStop();
liberator.echo('Stopped loading !');
}
} , {}
);
EOM"" ,/ ,n で検索(For GMail)
javascript <<EOM
liberator.mappings.addUserMap([liberator.modes.NORMAL],
[',/'], 'Search forward for a pattern',
function() { liberator.search.openSearchDialog(liberator.modes.SEARCH_FORWARD);}
);
liberator.mappings.addUserMap([liberator.modes.NORMAL],
[',n'], 'Search forward for a pattern',
function() { liberator.search.findAgain(false);}
);
EOM"" ,m で最大化/元のサイズ
javascript <<EOM
liberator.mappings.addUserMap([liberator.modes.NORMAL],
[',m'], 'toggle Maximize',
function() { window.windowState == window.STATE_MAXIMIZED ? window.restore() : window.maximize();}
);EOM
javascript <<EOM
[
['h',':tabprevious'], //タブ移動
['l',':tabnext'],
['<S-Left>',':tabprevious'],
['<S-Right>',':tabnext'],
['<C-Left>',':tabmove! -1'], //現在のタブの位置変更
['<C-Right>',':tabmove! +1'],
['<C-h>',':tabmove! -1'],
['<C-l>',':tabmove! +1'],
['<C-r>',':restart'], //C-r でブラウザ再起動
[',s',':so .vimperatorrc'], //設定ファイルを再読み込み
[',S',':mapc\n:cmapc\n:imapc\n:so .vimperatorrc'],
['!',':set invum'], //! でページのCSSをon/off
[';l',':closerighttabs'],
[';h',':closelefttabs'],
['A',':dialog addbookmark'],
// for plugin functions
[',es',':set fenc=Shift_JIS'],
[',ee',':set fenc=EUC-JP'],
[',eu',':set fenc=utf-8'],
[',l',':toggleldrizecooperation'],
[',z',':viewSBMComments'],
[',k',':togglelocalkeymode'],
[',p',':tabopen chrome://browser/content/places/places.xul'], //ブックマークを表示
[',1', ':set go=\n:set stal=1\n'], // バーの表示切り替え
[',2', ':set go=mb\n:set stal=1\n'],
[',3', ':set go=mT\n:set stal=1\n'],
[',4', ':set go=mTb\n:set stal=1\n'],
[',0', ':set go=\n:set stal=0\n'],
].forEach(function([key,command]){
liberator.mappings.addUserMap([liberator.modes.NORMAL], [key],
"User defined mapping",
// function () { liberator.execute(command); },
function () { command.split("\n").forEach(function(cmd){liberator.execute(cmd);} ); },
{
rhs: key,
noremap: true
});
});
EOM"" コマンドラインC-xでURL補完 -- http://mattn.kaoriya.net/software/firefox/vimperator/20080804213818.htm
javascript <<EOM
(function() {
liberator.mappings.addUserMap([liberator.modes.COMMAND_LINE], ['<c-x>'],
"insert current URL to command line",
function () {
var cmdline = liberator.CommandLine();
var curcmd = cmdline.getCommand();
if (!curcmd.match(/ $/)) curcmd += ' ';
cmdline.open(":", curcmd+liberator.buffer.URL);
}
);
})();
EOM"" sbmcommentsviewer.js
let g:def_sbm_format = "timestamp,id,tagsAndComment""" direct_bookmark.js
let g:direct_sbm_use_services_by_tag = "d"
let g:direct_sbm_use_services_by_post = "d"
let g:direct_sbm_is_normalize = "false"
let g:direct_sbm_is_use_migemo = "true"
map ,a :sbm<Space>
map a :sbm<Space>"" ldr_cooperation.js
""let g:ldrc_captureMappings = "['t', 'h', 'l', 'j', 'k', 'p', 'o', '?']"
let g:ldrc_captureMappings = "[ 'j', 'k', 'p', 'o', '?']"let g:ldrc_hints = "true"
let g:ldrc_intelligence_bind = "true"
let g:ldrc_skip = "0.2""" copy.js
javascript <<EOM
liberator.globalVariables.copy_templates = [
{ label: 'titleAndURL', value: '%TITLE% %URL%' },
{ label: 'title', value: '%TITLE%' },
{ label: 'hatena', value: '[%URL%:title=%TITLE%]' },
{ label: 'hatenacite', value: '>%URL%:title=%TITLE%>\n%SEL%\n<<' },
{ label: 'markdown', value: '[%SEL%](%URL% "%TITLE%")' },
{ label: 'htmlblockquote', value: '<blockquote cite="%URL%" title="%TITLE%">%HTMLSEL%</blockquote>' }
];
EOM"" feedSomeKeys.js
autocmd LocationChange .* :fmapc"" livedoor Reader UnRead Count
let livedoor_id = "xxxxxx""" Gmail/LDR/Fastladder/OpenFL上では新規タブをバックグラウンドで開く
autocmd LocationChange (?!https?://(mail\.google\.com\/(mail|a)\/|(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/)) :set! browser.tabs.loadDivertedInBackground=false
autocmd LocationChange https?://(mail\.google\.com\/(mail|a)\/|(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/) :set! browser.tabs.loadDivertedInBackground=true"" livedoor Reader/Fastladder/OpenFL
js <<EOF
autocommands.add('LocationChange',/reader\.livedoor\.com\/reader\//,
'js plugins.feedKey.setup("j k s a p v c <Space> <S-Space> z Z < > q w b i u g G".split(/ +/));');
EOFjs <<EOF
autocommands.add('LocationChange',/(fastladder\.com|0\.0\.0\.0\:3000)\/reader\//,
'js plugins.feedKey.setup("j k s a p v c <Space> <S-Space> z Z < > q w".split(/ +/));');
EOF
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 <Space>
autocmd LocationChange http://(reader\.livedoor\.com|fastladder\.com|0\.0\.0\.0\:3000)/reader/ :fmap K <S-Space>"" Google Reader
js <<EOF
autocommands.add('LocationChange',/www\.google\.(com|co\.jp)\/reader\//,
'js plugins.feedKey.setup("j k n p N P X O s S v t m o <Space> <S-Space> <enter> A e gh ga gs gS gu gt gT gd r u 1 2 / a = - ? z Z <C-z>".split(/ +/)'
+',true);');
EOF
autocmd LocationChange http://www\.google\.(com|co\.jp)\/reader/ :vfmap J <Space>
autocmd LocationChange http://www\.google\.(com|co\.jp)\/reader/ :vfmap K <S-Space>"" for modiphi
js <<EOF
autocommands.add('LocationChange',/www\.modiphi\.com\/apps\/reader/,
'js plugins.feedKey.setup("n p <Space>".split(/ +/));');
EOF"" Gmail
js <<EOF
autocommands.add('LocationChange',/mail\.google\.com\/(mail|a)\//,[
'js plugins.feedKey.setup(',
'"c / y j k n p o u e x s r a # [ ] z ? gi gs gt gd ga gc".split(/ +/).map(function(i) [i, "4" + i])',
');'
].join(''));
EOF"" ステータスバーにfeedボタンを表示
"" http://d.hatena.ne.jp/teramako/20071205/p1
javascript <<EOM
(function(){
var feedPanel = document.createElement('statusbarpanel');
var feedButton = document.getElementById('feed-button');
feedPanel.setAttribute('id','feed-panel-clone');
feedPanel.appendChild(feedButton.cloneNode(true));
feedButton.parentNode.removeChild(feedButton);
document.getElementById('status-bar').insertBefore(feedPanel,document.getElementById('security-button'));
})();
EOM"" disable accesskey
javascript <<EOM
liberator.options.setPref('ui.key.generalAccessKey', 0);
EOM"" for Livedoor Reader Subscribe
javascript <<EOM
liberator.commands.addUserCommand(["subscribeldr","sldr"], "post to livedoor reader",
function (arg){
liberator.open("http://reader.livedoor.com/subscribe/"+liberator.buffer.URL);
}
);
EOM"" ←のタブを全て閉じる
javascript <<EOM
liberator.commands.addUserCommand(["closelefttabs"], "close left tabs",
function(){
var tabs = gBrowser.mTabContainer.childNodes;
for (var i = tabs.length - 1; tabs[i] != gBrowser.mCurrentTab; i--){}
for (i--; i >=0 ; i--) gBrowser.removeTab(tabs[i]);
});
EOM"" →のタブを全て閉じる
javascript <<EOM
liberator.commands.addUserCommand(["closerighttabs"], "close right tabs",
function(){
// 右のタブをすべて閉じる
var tabs = gBrowser.mTabContainer.childNodes;
for (var i = tabs.length - 1; tabs[i] != gBrowser.selectedTab; i--) gBrowser.removeTab(tabs[i]);
});
EOM"" ローカルキーモード設定
javascript <<EOM
liberator.globalVariables.localKeyMappings=[
['^http://www\.nicovideo\.jp/watch/', [
['p', ':nicopause'],
['m', ':nicomute'],
['v', ':nicommentvisible'],
['s', ':nicoseek! +5'],
['S', ':nicoseek! -5'],
['l', 'nicovolume! +5'],
['L', 'nicovolume! -5'],
['z', ':nicosize ', true],
['c', ':nicomment ', true],
['C', ':nicommand ', true],
] ],
['^https://', [
['e', '<space>',true],
] ],
// ['', [
// ['', ''],
// ] ],
];
EOM"" 読み込んだ事を出力
echo ".vimperatorrc sourced"
以上!!