KeySnailでタブを操作するプラグイン 「TabSnail」 を作った
以前公開した,ツリー型タブをKeySnailから操作するコマンド群をKeySnailプラグイン化してみました。インストールすると,タブ操作用の各種エクステ (コマンド)が利用できるようになります。ツリー型タブがインストールされていると,ツリー操作用のエクステも使えるようになります 。
前回の記事(d:id:gifnksm:20100622:1277224479)からの差分は,プラグイン化したことと,タブ移動系のコマンドが増えていることの2つです。
.keysnail.js に以下を書き込むと,各コマンドにショートカットキーを割り当てることができます。
key.setViewKey(['U'], function (ev, arg) { ext.exec("tst-select-parent-tab", arg, ev); }, '親タブを選択する'); key.setViewKey(['t', '^'], function (ev, arg) { ext.exec("tst-select-first-child-tab", arg, ev); }, '最初の子タブを選択する'); key.setViewKey(['t', '$'], function (ev, arg) { ext.exec("tst-select-last-child-tab", arg, ev); }, '最後の子タブを選択する'); key.setViewKey('^', function (ev, arg) { ext.exec("tst-select-first-sibling-tab", arg, ev); }, '最初の兄弟タブを選択する', true); key.setViewKey('$', function (ev, arg) { ext.exec("tst-select-last-sibling-tab", arg, ev); }, '最後の兄弟タブを選択する', true); key.setViewKey('H', function (ev, arg) { ext.exec("tst-select-previous-sibling-tab", arg, ev); }, '前の兄弟タブを選択する'); key.setViewKey('L', function (ev, arg) { ext.exec("tst-select-next-sibling-tab", arg, ev); }, '次の兄弟タブを選択する'); key.setViewKey(['t', 'p'], function (ev, arg) { ext.exec("tst-read-selected-tab-later", arg, ev); }, '選択中のタブを後回しにする'); key.setGlobalKey('C-P', function (ev, arg) { ext.exec('tst-move-selected-tab-left', arg, ev); }, '選択中のタブを左へ移動する'); key.setGlobalKey('C-N', function (ev, arg) { ext.exec('tst-move-selected-tab-right', arg, ev); }, '選択中のタブを右へ移動する'); key.setGlobalKey('C-B', function (ev, arg) { ext.exec("tst-promote-tab", arg, ev); }, '選択中のタブを1つ上の階層に移動する'); key.setGlobalKey('C-F', function (ev, arg) { ext.exec("tst-demote-tab", arg, ev); }, '選択中のタブを1つ下の階層に移動する'); key.setViewKey(['t', 'SPC'], function (ev, arg) { ext.exec("tst-toggle-collapse-expand-tree", arg, ev); }, 'タブの折りたたみをトグル', true); key.setViewKey(['t', 't'], function (ev, arg) { ext.exec("tst-toggle-autohide-tabbar", arg, ev); }, 'タブバーの表示をトグル', true);