Estou usando o set matchpairs+=<:>meu código C ++ e funciona muito bem. Mas há alguns casos em que não existe, como este código C ++:
#include <type_traits>
template<int X> typename std::enable_if<(X>9),int>::type func() { return 5; }
int main() { func<10>(); }
Aqui, se você colocar o cursor no <depois enable_if, o >in X>9será destacado. É claro que faz sentido da perspectiva do Vim, que não é um compilador C ++ nem um IDE. Mas existe alguma maneira fácil de fazer com que ele não corresponda a pares quebrados por parênteses não fechados? Ou seja, eu gostaria <()>de combinar o colchete angular de fechamento, e <(>)não.