在vi中启用语法高亮

10 Jul 2016

偶然发现在公司的 CentOS 中的 vi 无法提供语法高亮,而自己的 VPS 中使用同样版本的 CentOS 却可以。

于是上网寻找解决方案。大多都说设置syntax on即可。但这在我的 vi 中是无效的。

再次加上更多关键词搜索,发现在 vi 中是存在small versionhuge version的。一般 CentOS 中默认带的 vi 都是 small version。于是升级成 huge version。依然无用。其实这些步骤都是有效的,但为什么在我这里就没有生效呢?一定是什么地方配置阻止了设置的激活。

于是再去细读 vimrc 文件。发现默认情况下如果TERM的值为xtermsyntaxon。在查看当前环境变量,发现为vt100。改为xterm后,语法高亮好用了。

为什么我的xterm值会设置成了vt100呢?原来这是为了解决 screen 在 Linux 下的一个 Bug。如果TERM=xterm,则在 screen 中按退格键时,屏幕会闪烁。

为了让 screen 和 vi 同时工作,最终设置为:

.bash_profile
export TERM=vt100
.bashrc
export TERM=xterm

comments powered by Disqus