diff options
author | Chris Laplante via bitbake-devel <bitbake-devel@lists.openembedded.org> | 2019-10-17 12:36:48 -0400 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-10-23 22:57:25 +0100 |
commit | cd45a25b2a649e88ddd455bfa3dddc6a60340c03 (patch) | |
tree | 7439c9b17f7e61d09d35bc0da5ffc60b8c24382e /bitbake | |
parent | 3eb3ed6b31859e108020e47faee7215841fea8f6 (diff) | |
download | bitbake-cd45a25b2a649e88ddd455bfa3dddc6a60340c03.tar.gz |
bitbake: contrib/vim: Modify Python indentation to work with 'python do_task {'
Signed-off-by: Chris Laplante <chris.laplante@agilent.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/contrib/vim/bitbake.vim | 44 |
1 files changed, 27 insertions, 17 deletions
diff --git a/bitbake/contrib/vim/bitbake.vim b/bitbake/contrib/vim/bitbake.vim index a210cf511..ff86c19fa 100644 --- a/bitbake/contrib/vim/bitbake.vim +++ b/bitbake/contrib/vim/bitbake.vim @@ -79,8 +79,14 @@ function GetPythonIndent(lnum) \ . " =~ '\\(Comment\\|Todo\\|String\\)$'", \ searchpair_stopline, searchpair_timeout) if parlnum > 0 - let plindent = indent(parlnum) - let plnumstart = parlnum + if s:is_python_func_def(parlnum) + let parlnum = 0 + let plindent = indent(plnum) + let plnumstart = plnum + else + let plindent = indent(parlnum) + let plnumstart = parlnum + endif else let plindent = indent(plnum) let plnumstart = plnum @@ -98,22 +104,26 @@ function GetPythonIndent(lnum) \ . " =~ '\\(Comment\\|Todo\\|String\\)$'", \ searchpair_stopline, searchpair_timeout) if p > 0 - if p == plnum - " When the start is inside parenthesis, only indent one 'shiftwidth'. - let pp = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW', - \ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :" - \ . " synIDattr(synID(line('.'), col('.'), 1), 'name')" - \ . " =~ '\\(Comment\\|Todo\\|String\\)$'", - \ searchpair_stopline, searchpair_timeout) - if pp > 0 - return indent(plnum) + (exists("g:pyindent_nested_paren") ? eval(g:pyindent_nested_paren) : shiftwidth()) + if s:is_python_func_def(p) + let p = 0 + else + if p == plnum + " When the start is inside parenthesis, only indent one 'shiftwidth'. + let pp = searchpair('(\|{\|\[', '', ')\|}\|\]', 'bW', + \ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :" + \ . " synIDattr(synID(line('.'), col('.'), 1), 'name')" + \ . " =~ '\\(Comment\\|Todo\\|String\\)$'", + \ searchpair_stopline, searchpair_timeout) + if pp > 0 + return indent(plnum) + (exists("g:pyindent_nested_paren") ? eval(g:pyindent_nested_paren) : shiftwidth()) + endif + return indent(plnum) + (exists("g:pyindent_open_paren") ? eval(g:pyindent_open_paren) : (shiftwidth() * 2)) + endif + if plnumstart == p + return indent(plnum) + endif + return plindent endif - return indent(plnum) + (exists("g:pyindent_open_paren") ? eval(g:pyindent_open_paren) : (shiftwidth() * 2)) - endif - if plnumstart == p - return indent(plnum) - endif - return plindent endif endif |