Ich weiß, dass ich die Frage nicht direkt beantworte, aber ich denke, es ist ein guter Ansatz. Niemand hat tmux erwähnt (oder zumindest nicht als eigenständige Antwort). Tmux ist ein Terminal-Multiplexer wie Screen. Die meisten Dinge können in beiden Multiplexern gemacht werden, aber afaik ist tmux einfacher zu konfigurieren. Außerdem wird tmux zur Zeit aktiver entwickelt als Screen und es gibt ein ziemlich großes Ökosystem um ihn herum, wie z.B. Tools, die bei der der Konfiguration helfen, etc.
Auch für vim gibt es ein weiteres Plugin: ViMUX das ist sehr hilfreich bei der Interaktion zwischen den beiden Tools. Sie können Befehle mit aufrufen:
:call VimuxRunCommand("ls")
Dieser Befehl erzeugt eine kleine horizontale Trennung unterhalb des aktuellen Fensters vim ist.
Es kann auch von einer Eingabeaufforderung aus ausgeführt werden, falls Sie nicht das ganzen Befehl ausführen wollen:
<Leader>vp :VimuxPromptCommand<CR>
Als wäre das nicht genug, gibt es noch mindestens 6 "plattformspezifische Plugins":
- vim-vroom runner für rspec, cucumber und test/unit; vimux-Unterstützung über
g:vroom_use_vimux
- vimux-ruby-test : eine Reihe von Befehlen zur einfachen Durchführung von Ruby-Tests
- vimux-Gurke : Cucumber-Funktionen durch Vimux ausführen
- vim-turbux : Turbo-Ruby-Tests mit tmux
- vimux-pyutils : Eine Reihe von Funktionen für vimux, die es erlauben, Codeblöcke in ipython auszuführen
- vimux-nose-test : Nasentests in vimux ausführen
Hier ist ein schöner "Anwendungsfall": Tests bei Bedarf mit Vimux und Turbux mit Spork und Guard