Permalink
Please sign in to comment.
Showing
with
42 additions
and 2 deletions.
- +36 −0 google_python_style.vim
- +6 −2 pyguide.html
36
google_python_style.vim
| @@ -0,0 +1,36 @@ | ||
| +" Indent Python in the Google way. | ||
| + | ||
| +setlocal indentexpr=GetGooglePythonIndent(v:lnum) | ||
| + | ||
| +let s:maxoff = 50 " maximum number of lines to look backwards. | ||
| + | ||
| +function GetGooglePythonIndent(lnum) | ||
| + | ||
| + " Indent inside parens. | ||
| + " Align with the open paren unless it is at the end of the line. | ||
| + " E.g. | ||
| + " open_paren_not_at_EOL(100, | ||
| + " (200, | ||
| + " 300), | ||
| + " 400) | ||
| + " open_paren_at_EOL( | ||
| + " 100, 200, 300, 400) | ||
| + call cursor(a:lnum, 1) | ||
| + let [par_line, par_col] = searchpairpos('(\|{\|\[', '', ')\|}\|\]', 'bW', | ||
| + \ "line('.') < " . (a:lnum - s:maxoff) . " ? dummy :" | ||
| + \ . " synIDattr(synID(line('.'), col('.'), 1), 'name')" | ||
| + \ . " =~ '\\(Comment\\|String\\)$'") | ||
| + if par_line > 0 | ||
| + call cursor(par_line, 1) | ||
| + if par_col != col("$") - 1 | ||
| + return par_col | ||
| + endif | ||
| + endif | ||
| + | ||
| + " Delegate the rest to the original function. | ||
| + return GetPythonIndent(a:lnum) | ||
| + | ||
| +endfunction | ||
| + | ||
| +let pyindent_nested_paren="&sw*2" | ||
| +let pyindent_open_paren="&sw*2" |
8
pyguide.html
0 comments on commit
222e6da