userChrome.jsをVimperatorに移行

vimp2.0preで起動時にCSSを読み込むための設定 - hogehoge @teramako を参考にして、userChrome.js のスクリプトを全部Vimperatorに移行。
動かないスクリプトとかあるかもしれないので、自分で直せる人にだけオススメ。


(function() {
['color','userchrome'].forEach( function(dirs){
var dir = io.getRuntimeDirectories(dirs)[0];
io.readDirectory(dir).forEach(function(file) {
if (/\.(js|css)$/i.test(file.path)) io.source(file.path, false);
});
});
})();

(ディレクトリを分けているのは、単純にjsとcssを別にしたかっただけです。
ここに晒したコードだと、colorにいれてもuserchromeにいれてもjs、CSSのどっちも動くので注意!!)

ついでにFireGesturesをmousegestures.jsに移行したので、拡張が2つ減った。
一応じぇすちゃの設定も晒します。


GESTURES: {
"L" : ["Back", "Browser:Back"],
"RLR" : ["Close Tab Or Window", "cmd_close"],
"LD" : ["Stop Loading Page", "Browser:Stop"],
"LR" : ["Undo Close Tab", "History:UndoCloseTab"],
"R" : ["Forward", "Browser:Forward"],
"RDUR": ["Translate To English", 'content.location = "http://translate.google.com/translate?u=" + content.location;'],
"RU" : ["Scroll To Top", 'goDoCommand("cmd_scrollTop");'],
"RD" : ["Scroll To Bottom", 'goDoCommand("cmd_scrollBottom");'],
"DL" : ["Select Previous Tab", 'gBrowser.tabContainer.advanceSelectedTab(-1, true);'],
"DR" : ["Select Next Tab", 'gBrowser.tabContainer.advanceSelectedTab(+1, true);'],
"D" : ["Lock This Tab", 'gBrowser.lockTab(gBrowser.mCurrentTab);'],
"LUD" : ["Close Left Tabs",
'var browser = getBrowser();'
+ 'var tabs = browser.mTabContainer.childNodes;'
+ 'for (var i = tabs.length - 1; tabs[i] != browser.mCurrentTab; i--){}'
+ 'for (i--; i >=0 ; i--) browser.removeTab(tabs[i]);' ],
"RUD" : ["Close Right Tabs",
'var browser = getBrowser();'
+ 'var tabs = browser.mTabContainer.childNodes;'
+ 'for (var i = tabs.length - 1; tabs[i] != browser.selectedTab; i--) browser.removeTab(tabs[i]);'],
"U" : ["Move To Upper Directory",
'var uri = window.content.location.href;'
+ 'if(uri){'
+ ' if(uri.match(/^(.+?)\\?/) != null)uri=RegExp.$1;'
+ ' if(uri.match(/^(.+?)\\/$/) != null)uri=RegExp.$1;'
+ ' if(uri.match(/^(.+:\\/\\/.+\\/)[^\\/]+$/)){'

+ ' var parenturi = RegExp.$1;'
+ ' window.loadURI(parenturi, null, null);'
+ ' }'
+ '}'],
"UD" : ["Add Bookmark",
'var url = window.content.location.href;'
+ 'if (url){'
+ ' if ("BookmarksUtils" in window) BookmarksUtils.addBookmark(url, window.title);'
+ ' else PlacesCommandHook.bookmarkLink(PlacesUtils.bookmarksMenuFolderId, url, window.title);'
+ '}'],
},

う〜む、こころなしか軽くなった…気がする。笑
とりあえず、Firefox+Vimp+dotfilesで困らない環境ができた〜!