我有大量的C代码,大部分代码被注释掉了和/或#if 0.当我使用%键来匹配if-else的开括号和右括号时,它与注释掉的匹配代码也是。
是否存在一种方法或vim插件,在匹配括号时不考虑注释掉的或#if 0代码。
目前我正在使用snipMate和omniComplete vim插件。
答案 0 :(得分:3)
如david所述,matchit插件可以跳过评论。但是,插件中未配置C语法脚本为#if 0
定义的语法组。创建一个文件~/.vim/after/ftplugin/c.vim
并将以下内容放入其中:
" Make the matchit plugin also skip over sections commented out via #if 0.
let b:match_skip .= '\|cCppOut2'
答案 1 :(得分:1)
matchit插件(包含在vim中但未启用)默认情况下应对注释掉的代码执行此操作。很确定它不适用于#if 0
代码。查看:h matchit
和:h match_skip