X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/c99b009281bc9433450aab2a9d5a088c7a94053d..226e76d4d040a52d159bc77bc4f3905352f04991:/vim/indent/cmake.vim diff --git a/vim/indent/cmake.vim b/vim/indent/cmake.vim index 421afcb..854e3cb 100644 --- a/vim/indent/cmake.vim +++ b/vim/indent/cmake.vim @@ -17,7 +17,7 @@ endif let b:did_indent = 1 setlocal indentexpr=CMakeGetIndent(v:lnum) -setlocal indentkeys+==ENDIF(,ENDFOREACH(,ENDMACRO(,ELSE(,ELSEIF(,ENDWHILE( +setlocal indentkeys+=0=~ENDIF(,0=~ENDFOREACH(,0=~ENDMACRO(,0=~ELSE(,0=~ELSEIF(,0=~ENDWHILE( " Only define the function once. if exists("*CMakeGetIndent") @@ -61,7 +61,8 @@ fun! CMakeGetIndent(lnum) \ '\(' . cmake_regex_comment . '\)\?$' let cmake_indent_begin_regex = '^\s*\(IF\|MACRO\|FOREACH\|ELSE\|ELSEIF\|WHILE\|FUNCTION\)\s*(' - let cmake_indent_end_regex = '^\s*\(ENDIF\|ENDFOREACH\|ENDMACRO\|ELSE\|ELSEIF\|ENDWHILE\|ENDFUNCTION\)\s*(' + let cmake_indent_end_regex = '^\s*\(ENDIF\|ENDFOREACH\|ENDMACRO\|ELSE\|ELSEIF\|ENDWHILE\|ENDFUNCTION\)\s*(' . + \ or . ')\s*$' " Add if previous_line =~? cmake_indent_comment_line " Handle comments