X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/84f35c0a4f3fcb8a816785e02983732c4a1dcc99..68c34f9b2944a9ebf1f970d2d54b915806a121ad:/indent/python.vim?ds=sidebyside diff --git a/indent/python.vim b/indent/python.vim index 5da97e9..36ff12a 100644 --- a/indent/python.vim +++ b/indent/python.vim @@ -69,13 +69,15 @@ let s:stop_statement = '^\s*\(break\|continue\|raise\|return\|pass\)\>' let s:skip_after_opening_paren = 'synIDattr(synID(line("."), col("."), 0), "name") ' . \ '=~? "\\vcomment|jedi\\S"' +let s:special_chars_syn_pattern = "\\vstring|comment|^pythonbytes%(contents)=$|pythonTodo|jedi\\S" + if !get(g:, 'python_pep8_indent_skip_concealed', 0) || !has('conceal') " Skip strings and comments. Return 1 for chars to skip. " jedi* refers to syntax definitions from jedi-vim for call signatures, which " are inserted temporarily into the buffer. function! s:_skip_special_chars(line, col) return synIDattr(synID(a:line, a:col, 0), 'name') - \ =~? "\\vstring|comment|^pythonbytes%(contents)=$|jedi\\S" + \ =~? s:special_chars_syn_pattern endfunction else " Also ignore anything concealed. @@ -90,8 +92,8 @@ else function! s:_skip_special_chars(line, col) return synIDattr(synID(a:line, a:col, 0), 'name') - \ =~? "\\vstring|comment|^pythonbytes%(contents)=$|jedi\\S" - \ || s:is_concealed(a:line, a:col) + \ =~? s:special_chars_syn_pattern + \ || s:is_concealed(a:line, a:col) endfunction endif