c++ - vim 插件,用于在 C/C++ 中跨预处理器#if、#else、#endif 搜索合法的不平衡括号
问题描述
在 Vim 中,'%' 可用于搜索匹配的括号。但是,在编辑这样的 C/C++ 代码时:
function f()
{
if (a) {
A();
#ifdef FOO
} else if (foo_0) {
foo(0);
}
#else
} else {
bar();
foo(1);
}
#endif
}
即,带有不平衡括号的合法 C/C++ 代码(4 个左括号但 5 个右括号)。Vim 命令 '%' 甚至不会匹配 function 的开始/结束括号f()
。
是否有任何插件或任何方法可以跨预处理器条件指令匹配这些不平衡的括号?
解决方案
推荐阅读
- android - 如何在 Kotlin 片段内的按钮之间切换片段?
- amazon-web-services - 谁停止和启动 ECS 任务?并通知 ECS 服务
- gradle - 如何将文本文件添加到 Gradle 中的类路径?
- python - 错误在哪里以及如何避免错误字符错误
- javascript - 调用 URL 时对我的 JavaScript 代码感到困惑,不确定是否需要 Ajax 调用
- c - 通过SDL覆盖linux桌面条目中的图标
- android - 刷新时在 textview 上显示文本的字符串数组
- python - python中的heapq模块可以使用哪些类型的堆元素?
- java - 为什么设置新键盘后我的 Android 自定义 KeyboardView 会溢出?
- php - 如何在 AJAX 中显示 MYSQL 错误?