c++ - 如何在 vim 中导航 C++ 模板实例化?

标签 c++ templates vim

我知道 vim 有一种方便的方法可以在匹配的左括号和右括号 ()、方括号 [] 和大括号 {} 之间导航。我碰巧写了很多 C++ 模板代码,并且希望具有类似的能力来在匹配的尖括号 <> 之间导航。

// I want to jump from this '<'
//         v
enable_if_t<conditional_t<test_v<x>, y, z>::template w<x, y>::value > 42,
            typename a<b, c>::type>
// ... to this '>'                ^

是否有一个 vim 命令可以以上下文相关的方式正确地执行此操作?具体应该理解为什么时候<less than当它打开模板参数列表时,>greater than以及何时关闭模板参数列表,以及何时>>是右移,当它关闭两个模板参数列表时。

编辑:如果可以的话,愿意切换到 emacs。

最佳答案

您可以通过将以下内容添加到您的 vimrc,将 vim 配置为仅在 c++ 文件中匹配的尖括号之间导航

autocmd FileType cpp setlocal matchpairs+=<:>

关于c++ - 如何在 vim 中导航 C++ 模板实例化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51698956/

相关文章:

c++ - 在我的案例中,我是否需要销毁单例实例?

C++ 组合参数模板元编程

c++ - 模板函数 : invalid operands 中的运算符<<

python - django模板嵌套字典,按键获取值

vim - 在 vim 中一次用引号包围几个单词

perl - 是否有使 Moose 属性显示在 Tag_List 中的 vim 插件?

c++ - boost python wrap c++​​类私有(private)成员

c++ - 使用 constexpr 遇到麻烦

c++ - 编译器不使用 move c'tor/assignment oper?

vim - 在 Vim 中打开 expandtab 选项时如何插入制表符