我有带有彩色日志条目的日志文件(假设扩展名为 *.smt2),其中颜色由 ansi 转义码定义。我安装了vim插件基于AnsiEsc.vim http://www.vim.org/scripts/script.php?script_id=302.
现在,当我打开 vim 编辑器时,我需要输入 :AnsiEsc。
如何将 :AnsiEsc 添加到我的 .vimrc 中以使其处于默认视图中?
您的 autocmd 仅适用于作为命令行参数传递的第一个文件,因为:AnsiEsc
命令仅适用于当前缓冲区。它将错过通过打开的文件:edit
or :split
。更好地使用BufRead
event:
autocmd BufRead * AnsiEsc
另外,我想知道你是否只使用Vim来查看日志文件(这会很遗憾)?这:AnsiEsc
命令可能会干扰编辑其他类型的文件。
通常的解决方案是定义一个自定义文件类型, e.g. log
。然后,您可以通过以下脚本为这些文件启用插件~/.vim/ftplugin/log.vim
:
" Only do this when not done yet for this buffer
if exists("b:did_ftplugin")
finish
endif
AnsiEsc
(你还需要有:filetype plugin on
在你的 .vimrc 中。)
要打开日志文件,您必须指定文件类型:vim "+setf log" logfile
,或者稍后在 Vim 中通过:setf log
。当然,如果日志文件名称遵循某种模式或者内部有某个公共字符串,您可以花哨地写一个文件类型检测; see :help new-filetype
。或者你写一个 shell 别名,例如alias vimlog='vim +setf\ log'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)