Ich habe manchmal versucht, Vim folgendermaßen aufzurufen xargs
:
find . -name '*.java' | xargs vim
… Welche Art von Arbeiten:
Beim Start von Vim wird die folgende Warnung kurz angezeigt:
Vim: Warning: Input is not from a terminal
- Das Bearbeiten funktioniert -
:files
listet alle.java
Dateien wie erwartet korrekt auf . - Ich kann sparen und kündigen.
Nach dem Verlassen von Vim ist mein Terminal jedoch nicht mehr erreichbar:
- Was auch immer ich an der Shell-Eingabeaufforderung eingebe, wird nicht wiedergegeben.
- Wagenrückläufe werden überhaupt nicht angezeigt, und Zeilenvorschübe werden nur manchmal angezeigt.
Dies geht so lange weiter, bis ich einen reset(1)
Befehl zum Reinitialisieren des Terminals erteile.
Ist dies ein Vim-Fehler oder gibt es eine zufriedenstellendere Erklärung für die Interaktion mit dem Terminal? Ich habe es auf Vim bis Version 7.3 (die Version scheint keine Rolle zu spielen) unter Linux und verschiedenen Unices gesehen.
Ich kenne eine Problemumgehung, nämlich vim $(find . -name '*.java')
. Andere Problemumgehungen wären willkommen, obwohl das nicht meine Hauptfrage ist.
xargs
Verwendet einen Dummystdin
, der von Vim nicht verwendet werden kann, und bricht ab alles danach.