-
Notifications
You must be signed in to change notification settings - Fork 123
/
Copy pathremovetabs.js
56 lines (51 loc) · 1.95 KB
/
removetabs.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
var PLUGIN_INFO = xml`
<VimperatorPlugin>
<name>removetabs</name>
<description>RemoveTabs</description>
<description lang="ja">タブをまとめて閉じる</description>
<author mail="[email protected]" homepage="http://fifnel.com/">fifnel</author>
<version>0.1</version>
<minVersion>2.0pre</minVersion>
<maxVersion>2.0pre</maxVersion>
<updateURL>https://github.com/vimpr/vimperator-plugins/raw/master/removetabs.js</updateURL>
<detail lang="ja"><![CDATA[
これはremovetabsアドオンと似たような処理を行うアドオンです。
現在のタブから左(もしくは右)のタブをすべてクローズすることができます。
https://addons.mozilla.org/ja/firefox/addon/4227
== Command ==
:removetabsleft:
現在のタブから左にあるタブをすべて閉じます。
現在のタブは閉じられません。
:removetabsright:
現在のタブから右にあるタブをすべて閉じます。
現在のタブは閉じられません。
== 設定例 ==
.vimperatorrcに以下のような感じで設定すると良いかもしれません。
>||
noremap <C-S-p> :removetabsleft<CR>
noremap <C-S-n> :removetabsright<CR>
||<
]]></detail>
</VimperatorPlugin>`;
(function(){
liberator.modules.commands.addUserCommand(['removetabsleft'], 'remove tabs left',
function() {
var ts = getBrowser().tabContainer.childNodes;
var ct = getBrowser().selectedTab;
var i;
for( i=ts.length-1; ts[i]!=ct; i-- ) {}
for( i--; i>=0; i-- ) {
getBrowser().removeTab( ts[i] );
}
},{}
);
liberator.modules.commands.addUserCommand(['removetabsright'], 'remove tabs right',
function(){
var ts = getBrowser().tabContainer.childNodes;
var ct = getBrowser().selectedTab;
for( var i=ts.length-1; ts[i]!=ct; i-- ) {
getBrowser().removeTab( ts[i] );
}
},{}
);
})();