mirror of
https://github.com/Raimondi/delimitMate.git
synced 2025-12-06 04:34:29 +08:00
Smart quotes consider balanced quotes on current line. Closes #94.
This commit is contained in:
@@ -261,8 +261,11 @@ function! delimitMate#IsSmartQuote(char) "{{{
|
||||
let valid_char_re = '\w\|[^[:punct:][:space:]]'
|
||||
let word_before = char_before =~ valid_char_re
|
||||
let word_at = char_at =~ valid_char_re
|
||||
let escaped = delimitMate#CursorIdx() >= 1 && delimitMate#GetCharFromCursor(-1) == '\'
|
||||
let result = word_before || escaped || word_at
|
||||
let escaped = delimitMate#CursorIdx() >= 1
|
||||
\ && delimitMate#GetCharFromCursor(-1) == '\'
|
||||
let noescaped = substitute(getline('.'), '\\.', '', 'g')
|
||||
let even = !(count(split(noescaped, '\zs'), a:char) % 2)
|
||||
let result = word_before || escaped || word_at || !even
|
||||
return result
|
||||
endfunction "delimitMate#SmartQuote }}}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user