如何把Railsdevelopment.log漂亮的显示给vim/sublime?

How to display Rails development.log nicely to vim/sublime?

Development.log如果加载到tailcat可以很容易地阅读。但是,如果它被加载到 vimsublime,内容就会有额外的转义字符,这会使其难以阅读。例如:

[1m[35m (0.2ms)[0m  BEGIN
[1m[36m (776.2ms)[0m  [1mCREATE TABLE "accounts" ("id" serial primary key, "user_id" integer, "type" character varying(255), "token" character varying(255), "expired_at" character varying(255), "created_at" timestamp, "updated_at" timestamp) [0m

我猜额外的字符用于设置 bash 中的颜色。如何在 vimsublime 中很好地显示它?

是的,这些是用于在终端中切换颜色和字体属性的 ANSI 转义序列。由于像 cat 这样的低级工具直接输出到终端,所以这些打印在那里很好。但是 Vim 是一个文本编辑器,它会显示自己的文本渲染,包括此类特殊字符(例如 <Esc> 通常显示为 ^[)。

如果你想在Vim中查看这样的日志输出,最好在没有颜色信息的情况下捕获它。一些命令支持 --no-color 命令行参数;或者尝试在启动命令之前取消设置 TERMTERM=dumb

或者,AnsiEsc.vim plugin 可以将转义序列转换为 Vim 语法突出显示。