5

我有大量 C 代码,并且大部分代码被注释掉和/或#if 0。当我使用 % 键匹配 if-else 的左括号和右括号时,它也匹配注释掉的代码。
有没有一种方法或vim插件在匹配括号时不会考虑注释掉或#if 0代码。

目前我正在使用 snipMate 和 omniComplete vim 插件。

4

2 回答 2

3

正如 david 所提到的,matchit 插件能够跳过评论。#if 0但是,插件中没有配置C 语法脚本定义的语法组。创建一个文件~/.vim/after/ftplugin/c.vim并将以下内容放入其中:

" Make the matchit plugin also skip over sections commented out via #if 0.
let b:match_skip .= '\|cCppOut2'
于 2012-11-13T07:54:31.623 回答
1

matchit 插件(包含在 vim 中但未启用)默认情况下应该为注释掉的代码执行此操作。很确定它不适用于#if 0代码。签出:h matchit:h match_skip

于 2012-11-12T22:41:16.290 回答