Hatena::Groupvimperator

Vimple Star Sprites RSSフィード

 | 

2012-01-06

:tabclose コマンドに -select オプションが追加された

| 21:02 | :tabclose コマンドに -select オプションが追加された - Vimple Star Sprites を含むブックマーク はてなブックマーク - :tabclose コマンドに -select オプションが追加された - Vimple Star Sprites

今まで、:tabclose?コマンドはタブ削除後に一つ左のタブを選択と固定だったのだが、-selectオプションが加わったことで、右側だったり、直前まで選択していたタブに戻ったりができるようになった。

Spec

:tabc[lose] [-select {left|right|lastactive}]
left
左側のタブを選択
right
右側のタブを選択
lastactive
直前まで選択してたタブに戻る。もし直前のタブが利用できない場合(既に削除された後だったりとか)はフォールバック的に右側を選択する

経緯

  1. [Vimperator] [PATCH] select previous tab when revmoe a tab(sorry for forgetting to add attachment)
    • ここから始まるスレッドで、タブ削除時にVimperator側で選択するタブを制御するのではなくFirefoxにお任せするパッチが投下される。
  2. が、オーナーのマーチンさんにリジェクトされる
  3. 僕が破壊的な提案をする(ぉ
  4. もちろん却下
  5. id:AmaiSaeta さんが穏当な提案
    • :tabclose?コマンドに -select オプションを追加してユーザが好きなように map すれば良いじゃない
  6. マーチンさん、了承。パッチ、プリーズ!
  7. 僕、パッチを投下
  8. マーチンさん、英語等を修正してコミット

若干の仕様変更

プラグインを書く人にとっては影響があるかもしれない(たぶんないけど)ので一応書いておく

  • tab.removeメソッドの引数に変更
    • 第3引数、今までは Boolean 型で true なら左側を選択、falseなら右側だった
    • これを Number 型に変更し、マイナス値なら左側、0 なら直前まで選択していたタブ、プラス値なら右側に

dDも合わせて既存の仕様となるように変更しているので、基本的な使用には影響はない。

つまり何が嬉しいの?

:nnormap d :tabc -select lastactive<CR>

今までは右側のタブが選択されるものが、前に選択してたタブに戻るようになるため、:tabopen?で開いてdでまた前のタブに戻ったりができるようになった。

RSSリーダー系のページからタブに開いて閉じてすぐ戻って...ができるわけだ。

(若干の)注意点

Vimperatorは一つ前に選択してたタブまでは記憶しているが、それ以降は持っていないので連続して戻ることは不可能。

まあこれはFirefoxもほぼ同様の仕様なので特に不満は出ないと思っているが...

あと、Firefoxでのabout:config値browser.tabs.selectOwnerOnCloseとも若干違う仕様である。Firefox側のそれは、タブに開いた後別タブを選択すると履歴は消えるが、Vimperatorは常に直前のタブを記憶する仕様になっている。

トラックバック - http://vimperator.g.hatena.ne.jp/teramako/20120106
 |