From 8204ab4cb874b9c2df20bf9f55f54967c462a423 Mon Sep 17 00:00:00 2001 From: Israel Chauca Fuentes Date: Sat, 11 Feb 2017 22:38:13 -0500 Subject: [PATCH] Better handling of syntax regions --- autoload/delimitMate.vim | 3 ++- test/autoclose_matchpairs.vim | 7 +++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/autoload/delimitMate.vim b/autoload/delimitMate.vim index ed7b387..8fcefe1 100644 --- a/autoload/delimitMate.vim +++ b/autoload/delimitMate.vim @@ -245,7 +245,8 @@ function! delimitMate#InsertCharPre(str) "{{{1 echom 03 return 0 endif - if !empty(filter(s:option('excluded_regions'), 'index(s:synstack(line("."), col(".")), v:val) >= 0')) + let synstack = join(map(synstack(line('.'), col('.')), 'tolower(synIDattr(v:val, "name"))'), ',') + if !empty(filter(s:option('excluded_regions'), 'stridx(synstack, tolower(v:val)) >= 0')) echom 04 return 0 endif diff --git a/test/autoclose_matchpairs.vim b/test/autoclose_matchpairs.vim index 5426d26..341bce8 100644 --- a/test/autoclose_matchpairs.vim +++ b/test/autoclose_matchpairs.vim @@ -85,6 +85,13 @@ let g:delimitMate_autoclose = 1 let g:delimitMate_balance_pairs = 1 call DMTest_pairs('ab cd)', "la(x", 'ab(x cd)') +" Disable on syntax groups +new +syntax on +set ft=vim +call DMTest_pairs('echo " "', "f\"la(", 'echo " ( "') +syntax off +bp call vimtest#Quit() " vim: sw=2 et