diff options
author | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2019-05-03 01:45:35 -0400 |
---|---|---|
committer | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2019-05-03 02:08:18 -0400 |
commit | 96a8b0ab787c7d7148eb4c9881fdb5e022996081 (patch) | |
tree | 27565ee941cd97515399964f5e22018817a9d022 /runtime/indent/vim.vim | |
parent | 4b287119fe798da1ca1ae5b96f6503972ed3a229 (diff) | |
download | rneovim-96a8b0ab787c7d7148eb4c9881fdb5e022996081.tar.gz rneovim-96a8b0ab787c7d7148eb4c9881fdb5e022996081.tar.bz2 rneovim-96a8b0ab787c7d7148eb4c9881fdb5e022996081.zip |
vim-patch:8.1.0369: continuation lines cannot contain comments
Problem: Continuation lines cannot contain comments.
Solution: Support using "\ .
https://github.com/vim/vim/commit/67f8ab829911c7901c534ef2bf19cc34b622936f
Diffstat (limited to 'runtime/indent/vim.vim')
-rw-r--r-- | runtime/indent/vim.vim | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/runtime/indent/vim.vim b/runtime/indent/vim.vim index 8ebfa12caf..cd735c3a3c 100644 --- a/runtime/indent/vim.vim +++ b/runtime/indent/vim.vim @@ -10,7 +10,7 @@ endif let b:did_indent = 1 setlocal indentexpr=GetVimIndent() -setlocal indentkeys+==end,=else,=cat,=fina,=END,0\\ +setlocal indentkeys+==end,=else,=cat,=fina,=END,0\\,0=\"\\\ let b:undo_indent = "setl indentkeys< indentexpr<" @@ -31,15 +31,17 @@ function GetVimIndent() endtry endfunc +let s:lineContPat = '^\s*\(\\\|"\\ \)' + function GetVimIndentIntern() " Find a non-blank line above the current line. let lnum = prevnonblank(v:lnum - 1) - " If the current line doesn't start with '\' and below a line that starts - " with '\', use the indent of the line above it. + " If the current line doesn't start with '\' or '"\ ' and below a line that + " starts with '\' or '"\ ', use the indent of the line above it. let cur_text = getline(v:lnum) - if cur_text !~ '^\s*\\' - while lnum > 0 && getline(lnum) =~ '^\s*\\' + if cur_text !~ s:lineContPat + while lnum > 0 && getline(lnum) =~ s:lineContPat let lnum = lnum - 1 endwhile endif @@ -51,10 +53,10 @@ function GetVimIndentIntern() let prev_text = getline(lnum) " Add a 'shiftwidth' after :if, :while, :try, :catch, :finally, :function - " and :else. Add it three times for a line that starts with '\' after - " a line that doesn't (or g:vim_indent_cont if it exists). + " and :else. Add it three times for a line that starts with '\' or '"\ ' + " after a line that doesn't (or g:vim_indent_cont if it exists). let ind = indent(lnum) - if cur_text =~ '^\s*\\' && v:lnum > 1 && prev_text !~ '^\s*\\' + if cur_text =~ s:lineContPat && v:lnum > 1 && prev_text !~ s:lineContPat if exists("g:vim_indent_cont") let ind = ind + g:vim_indent_cont else |