4

我刚刚将操作系统从 Ubuntu 8.04 升级到了 Ubuntu 12.04,以及相应的 VIM 包。但是,我发现较新的 VIM 对 BASH 脚本的语法高亮很奇怪:(1)左括号和右括号的颜色不同;(2) 评论的颜色看起来不对;(3) 注释中的 BASH 关键字不应突出显示。我已经将let g:is_bash=1和添加syntax on到我的“.vimrc”文件中。我不确定这是 VIM 的错误还是我的设置有问题。这个问题有什么解决办法吗?谢谢。

错误语法突出显示的屏幕截图。 在此处输入图像描述

对应正确语法高亮的截图: 在此处输入图像描述

新的(错误的)VIM 版本是:VIM - Vi IMproved 7.3(2010 年 8 月 15 日,编译 2012 年 5 月 4 日 04:21:49)包含的补丁:1-429

旧的(正确的)VIM 版本是:VIM - Vi IMproved 7.2(2008 年 8 月 9 日,2009 年 9 月 21 日 11:21:42 编译)包含的补丁:1-245

4

2 回答 2

6

有时我对脚本使用zshvim 语法高亮。bash不完美,但有点帮助。

:set ft=zsh
于 2012-06-15T05:21:14.910 回答
6

首先,所有的 Bash 语法高亮都被一千种方式破坏了。这并不罕见。您根本不能依靠编辑器来正确解析 Bash,语法只是允许太多复杂的可能性。Vim 比大多数做得更好。

确保您拥有来自Dr Chip 页面的最新语法文件。它在 Vim 中并不总是最新的。

我相信您大多会注意到一些在某些时候添加的基本错误突出显示,这会经常出错并用难看的红色文本弄乱您的代码。我注意到一个新变量添加了几个版本,用于禁用尚未记录的此功能。let g:sh_no_error=1为我解决了大部分这些问题。

作为旁注,任何使用终端 vim 特别是 256 色方案的人都应该真正使用csapprox。每当我看到那种奇怪的浅蓝色与黄色混合的屏幕截图时,通常意味着没有使用 csapprox。我不知道为什么它不包含在 vim 中并且默认启用。

于 2012-06-15T05:13:05.410 回答