Как я могу сказать Vim правильно показывать управляющие коды ANSI?

16

Я пытаюсь просмотреть и отредактировать файл в Vim, но этот файл имеет escape-коды ANSI:

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

Как я могу сказать Vim правильно их интерпретировать, а не просто показывать необработанный код?

Натан Феллман
источник
2
Что значит «правильно интерпретировать»?
Wallyk
Связанный: unix.stackexchange.com/questions/7695/… (не дурак, потому что он хочет, чтобы Vim был пейджером)
Ciro Santilli 23 改造 中心 法轮功 六四 事件 事件
@wallyk: это значит, что я хочу видеть цвета и эффекты, а не сырые коды.
Натан Феллман
См. Ответ по адресу vi.stackexchange.com/a/20496/3324 : «Если у вас достаточно современный vim с функцией + терминал, вы можете сделать это, :term cat somefileи вы получите буфер со всеми интерпретированными кодами терминала. Это может работать лучше на больших файлов , чем , например , Colorizer, который сделал мой ВИМ unusably медленно , когда я пусть разрешишь на файл в 6000-линии «.
sideshowbarker

Ответы:

15

Похоже, вы хотите отобразить цвета ANSI и скрыть их escape-символы. Вы можете сделать это с помощью плагина Чарльза Кэмпбелла " AnsiEsc ".

Обратите внимание, что вам понадобится Vim версии 7.3 или новее. (Старые версии Vim могут быть исправлены, но это больше подходит для устаревшей версии Vim.)

Heptite
источник
Это работает, если файл находится в буфере. Однако это не очень хорошо работает, если вы запускаете команду типа rake или cucumber, которая выводит вывод команды не в буфер.
Иван
Это правильно, но спрашивающий специально упомянул ANSI в файле, открытом в Vim.
Гептит