screen/tmuxのウインドウをuniteで選択してウインドウ切替えを実現するunite-screen作った
ばよえ〜ん(訳:Vim Advent Calendar 2012への5回目の投稿です)
ブレインダムドだった。
この記事はVim Advent Calendar 58日目の記事です。
前回は@glidenoteさんの美しい日記アプリ「Day One」の記事作成支援vimプラグイン NewDayOne.vimを作ったでした。
なぜシェルスクリプトか
- Vimを操作中にscreen/tmux切り替えできても別にうれしくない
- 切り替えるとしたらシェルからunite-screenを呼び出すはず
- 端末かつscreen/tmuxの中で端末版Vimが動いてないと意味がない
といった理由のためです。
スクリーンショット
screenの場合、このようにwindowlistが表示され、エンターを押すかしばらく待たないと次に進めません。
この問題の原因はscreenの仕様にあり、今の所不可避です。tmuxの場合このような現象は起きません。
こんな感じでunite-screenが起動します。
ウインドウの一覧が表示されるので、選択したり、ウインドウ名を入力して絞り込んでください。
- 現在のウインドウは表示しません。-aオプションをつけると現在のウインドウも表示します。
- .vimrcの設定の影響を受けます。それプラス、「-prompt=unite-screen> -no-split」を:Uniteコマンドの引数に追加しています。
:wqa!
次のVim Advent Calendarは@HardwareLabさんです。