Fix CR expansion & syn fold enabled by InsertLeave

Benamin Fritz reported the following:

Without the "zv", if the user has syntax folding on, when the mapping
invokes <Esc> the pair of braces which were just separated by a <CR>
could become folded, so that the trailing "o" opens a new line AFTER
the pair.
This commit is contained in:
Israel Chauca Fuentes
2012-06-08 16:51:28 -04:00
parent 9c1564a22f
commit 1dfe26a538
2 changed files with 19 additions and 2 deletions

View File

@@ -46,5 +46,20 @@ sub foo {
call setline(1, "\"{bracketed}")
normal A"x
================================================================================
"{bracketed}"x
"{bracketed""x
--------------------------------------------------------------------------------
# Syntax folding enabled by autocmd breaks expansion. But ti can't be tested
# with :normal
new
autocmd InsertEnter * let w:fdm=&foldmethod | setl foldmethod=manual
autocmd InsertLeave * let &foldmethod = w:fdm
set foldmethod=marker
set foldmarker={,}
set foldlevel=0
set backspace=2
exec "normal iabc {\<CR>x"
================================================================================
abc {
x
}
--------------------------------------------------------------------------------