Normalerweise richte ich screen
für jedes Projekt eine Sitzung ein. Vim ist in Fenster 0 und ich benutze Fenster 1 für eine Shell-Sitzung. Wenn ich in einer Sprache programmiere, die ein anständiges REPL hat, führe ich das normalerweise in Fenster 2 aus. Natürlich müssen Sie das nicht screen
tun; Sie können dies mit verschiedenen Terminalfenstern oder mit Registerkarten in einem Multitab-Terminal tun. Ich finde screen
es stabiler als andere Alternativen: Wenn Ihre Terminal-App abstürzt, können Sie einfach ein anderes Terminal starten und die Verbindung zu Ihrer noch laufenden screen
Sitzung wiederherstellen. screen
ist auch sehr schnell zu navigieren, sobald Sie es gelernt haben (ähnlich wie vim selbst).
Meistens benutze ich die Shell-Sitzung für komplizierte Versionskontrollaktivitäten wie das Neu-Basieren oder Zusammenführen: Einfachere Dinge können über die Befehlszeile von vim (z. B. :!git commit % -m 'Added info about
Bildschirm .'
) oder mit dem flüchtigen Addon ausgeführt werden. Ich finde Flüchtlinge :Gmove
(benenne den aktuellen Puffer sowohl in vim als auch im git-Index um) und :Gdiff
(rufe vimdiff für den aktuellen Puffer mit einem vorherigen Punkt in seinem Verlauf auf) besonders nützlich. Sie können auch eine Commit-Nachricht in einem Arbeitspuffer erstellen, Text aus verschiedenen Teilen Ihres Codes kopieren und anschließend mit Commit ausführen:%!git commit -F /dev/stdin
Ich werde die Shell-Sitzung auch für Funktions- / Integrationstests verwenden, wenn dies auf alle Aufgaben zutrifft, an denen ich arbeite, z. B. wenn ich ein Befehlszeilendienstprogramm schreibe.
Die Quickfix-Funktionalität von Vim ist nützlich für das Debuggen, obwohl anscheinend für jede Sprache, in der Sie arbeiten möchten, ein anderes Addon erforderlich ist. Sie scheinen auch verschiedene Aufruftechniken zu verwenden, wobei die Zuordnung zu Funktionstasten oder zu Tastensequenzen mit \
oder beginnt ,
. oder zu benutzerdefinierten Befehlen oder durch automatisches Aufrufen, wenn ein Puffer gespeichert wird. Bisher habe ich mich nicht wirklich darum gekümmert, dies herauszufiltern, sondern nur Unit-Test- oder Flusenergebnisse mit z :r !python -m doctest whatever.py
. Ändern Sie den Code, wechseln Sie zurück in den Arbeitspuffer, u
um den Vorgang rückgängig zu machen, :r
und drücken Sie dann (die meiste Zeit) auf den Aufwärtspfeil, um den Befehl zurückzugewinnen. Aber es kann sich lohnen, ein Addon dafür zu suchen, abhängig davon, in welcher Sprache Sie arbeiten.
Für gängige kompilierte Sprachen wie C, Java usw. :make
wird ein Build erstellt, und die Unterstützung für die Quickfix-Liste ist gut etabliert. So können Sie dann :copen
den Quickfix-Puffer anzeigen. Es wird eine Fehlerliste angezeigt, eine pro Zeile. Wenn Sie Enterauf eine Linie treffen, springt Ihr anderes Fenster an den Punkt in dieser Datei.
Wenn Sie mit mehreren Projekten gleichzeitig arbeiten, können Sie :lmake
dafür sorgen, dass eine Liste mit Fehlern in der Standortliste gespeichert wird : Dies entspricht der Quickfix-Liste, ist jedoch einem einzelnen Fenster zugeordnet, anstatt ein Singleton in Ihrem zu sein vim instance. :lopen
öffnet eine Standortliste für das aktuelle Fenster.