Wie kann ich Vim anweisen, ANSI-Escape-Codes korrekt anzuzeigen?

16

Ich versuche, eine Datei in Vim anzuzeigen und zu bearbeiten, aber diese Datei enthält ANSI-Escape-Codes:

^[[1m[0.05s elapsed, 00:00:13 total]^[[0m

Wie kann ich Vim anweisen, sie richtig zu interpretieren, anstatt nur den Rohcode anzuzeigen?

Nathan Fellman
quelle
2
Was bedeutet "richtig interpretieren"?
Wallyk
Verwandte: unix.stackexchange.com/questions/7695/... (nicht übertölpeln , weil er Vim als Pager will)
Ciro Santilli新疆改造中心法轮功六四事件
@wallyk: Das heißt, ich möchte Farben und Effekte sehen, keine Rohcodes.
Nathan Fellman
Die Antwort finden Sie unter vi.stackexchange.com/a/20496/3324 : „Wenn Sie ein ausreichend modernes Video mit der Terminalfunktion + haben, können Sie dies tun :term cat somefileund Sie erhalten einen Puffer mit allen interpretierten Terminalcodes. Dies funktioniert möglicherweise besser bei großen Dateien als z. B. Colorizer, was mein Video ungewöhnlich langsam machte, wenn ich es in einer 6000-Zeilen-Datei losließ. ”
sideshowbarker

Antworten:

15

Es hört sich so an, als wollten Sie ANSI-Farben anzeigen und deren Escape-Zeichen verbergen. Sie können dies mit dem " AnsiEsc " -Plugin von Charles Campbell tun .

Beachten Sie, dass Sie Vim Version 7.3 oder neuer benötigen. (Ältere Versionen von Vim könnten gepatcht werden, aber das ist mehr Arbeit für eine veraltete Version von Vim.)

Heptit
quelle
Dies funktioniert, wenn sich die Datei in einem Puffer befindet. Es funktioniert jedoch nicht besonders gut, wenn Sie einen Befehl wie Rake oder Gurke ausführen, bei dem die Befehlsausgabe nicht in einem Puffer abgelegt wird.
Ivan
Das ist richtig, aber der Fragesteller hat ANSI in einer in Vim geöffneten Datei ausdrücklich erwähnt.
Heptite