用于在VIM中自动格式化或给出错误的工具

时间:2010-09-05 18:19:22

标签: vim

什么是vim / gvim的插件可以报告有关格式错误的esp C ++代码和PLSQL代码。像:

  1. 一行后的空格。
  2. 字符超过80(如'匹配')。
  3. void foo(int x,int y);然后它会在,
  4. 之后报告忘记空格
  5. 还有更多格式错误,如上所述。
  6. 在检查CVS之前是否有任何报告代码格式的标准做法?

1 个答案:

答案 0 :(得分:4)

就我而言,我定义了一系列语法规则,以便轻松发现这些内容。

highlight ImproperSyntax ctermbg=red guibg=red
au BufWinEnter * syn match ImproperSyntax /\s\+$\| \+\ze\t/  "Spaces at the end of lines or BEFORE tabs
au Filetype cpp,c syn keyword ImproperSyntax dynamic_cast "disallowed keyword
au Filetype cpp,c syn match ImproperSyntax /[^\n]\%$/  display "Last line should be blank
au Filetype cpp,c syn match ImproperSyntax /\t/ display "No tabs!
au Filetype cpp,c syn match ImproperSyntax /,\S/ display "comma always has a space
au Filetype cpp,c syn match ImproperSyntax /\%80v.*$/ "Highlight any characters passed column 80

您可以使用的另一个技巧是将所有这些功能合并到一个函数(或列表/字典)中,并将其显示为状态行(我的首选项)上的错误,或者作为错误显示给用户。

关于检查CVS ...我不确定CVS,但可以指示SVN和hg(可能是大多数其他版本控制系统)执行一系列“预提交挂钩”,然后再允许承诺。其中一个可以很容易地编程来扫描这种相同的行为(可能还有一些覆盖符号)。

相关问题