Saya menggunakan set matchpairs+=<:>
dengan kode C ++ saya, dan itu bekerja dengan baik. Tetapi ada beberapa kasus di mana itu tidak cukup di sana, seperti kode C ++ ini:
#include <type_traits>
template<int X> typename std::enable_if<(X>9),int>::type func() { return 5; }
int main() { func<10>(); }
Di sini, jika Anda meletakkan kursor di bagian <
setelah enable_if
, >
in X>9
akan disorot. Tentu saja masuk akal dari perspektif Vim, yang bukan kompiler C ++ atau IDE. Tetapi adakah cara mudah untuk membuatnya tidak cocok dengan pasangan yang diputus oleh tanda kurung yang tidak tertutup? Yaitu saya ingin <()>
mencocokkan braket sudut penutup, dan <(>)
tidak.
delimiter-matching
Ruslan
sumber
sumber
Jawaban:
matchit
kemungkinan besar tidak akan melakukan ini untuk Anda. Anda mungkin ingin menulis fungsi pembungkus kecil untuk%
, yang mengidentifikasi karakter di bawah kursor Anda dengan:diikuti oleh beberapa tes bersarang sederhana sehingga:
yang artinya, dapatkan skrip di vim ...
Beri tahu kami bagaimana ini.
sumber