Làm cách nào tôi có thể yêu cầu Vim hiển thị mã thoát ANSI đúng cách?


16

Tôi đang cố gắng xem và chỉnh sửa một tệp trong Vim, nhưng tệp này có mã thoát ANSI:

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

Làm thế nào tôi có thể bảo Vim diễn giải chúng đúng cách thay vì chỉ hiển thị mã thô?


2
"Giải thích đúng" nghĩa là gì?
wallyk

Liên quan: unix.stackexchange.com/questions/7695/ (không bị lừa vì anh ta muốn Vim làm máy nhắn tin)
Ciro Santilli 改造

@wallyk: Có nghĩa là tôi muốn xem màu sắc và hiệu ứng, không phải mã thô.
Nathan Fellman

Xem câu trả lời tại vi.stackexchange.com/a/20496/3324 : Hạ Nếu bạn có một vim đủ hiện đại có tính năng + terminal, bạn có thể làm :term cat somefilevà bạn sẽ nhận được bộ đệm với tất cả các mã đầu cuối được diễn giải. Điều này có thể hoạt động tốt hơn trên các tệp lớn hơn, ví dụ như Colorizer, điều này làm cho vim của tôi chậm một cách bất thường khi tôi thả nó trên một tệp 6000 dòng.
diễn

Câu trả lời:


15

Có vẻ như bạn muốn hiển thị màu ANSI và che giấu các ký tự thoát của chúng. Bạn có thể làm điều này với plugin " AnsiEsc " của Charles Campbell .

Lưu ý rằng bạn sẽ cần Vim phiên bản 7.3 trở lên. (Các phiên bản cũ hơn của Vim có thể được vá, nhưng đó là công việc nhiều hơn cho phiên bản Vim đã lỗi thời.)


Điều này hoạt động, nếu tập tin nằm trong một bộ đệm. Tuy nhiên, nó không hoạt động tốt nếu bạn đang chạy một lệnh như cào hoặc dưa chuột đặt đầu ra lệnh không nằm trong bộ đệm.
Ivan

Điều đó là chính xác, nhưng người hỏi đã đề cập cụ thể đến ANSI trong một tệp được mở trong Vim.
Heptite
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.