我知道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+=<:>