changeset 16011:de810c9651c8 v8.1.1011

patch 8.1.1011: indent from autoindent not removed from blank line commit https://github.com/vim/vim/commit/2ba4238818ca5ea52334de3037ef3729584cebf5 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Mar 16 18:11:07 2019 +0100 patch 8.1.1011: indent from autoindent not removed from blank line Problem: Indent from autoindent not removed from blank line. (Daniel Hahler) Solution: Do not reset did_ai when text follows. (closes https://github.com/vim/vim/issues/4119)
author Bram Moolenaar <Bram@vim.org>
date Sat, 16 Mar 2019 18:15:06 +0100
parents 77ebdfdfb1cd
children 9a9fad1ad197
files src/misc1.c src/testdir/test_edit.vim src/version.c
diffstat 3 files changed, 14 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -1497,8 +1497,6 @@ open_line(
 		++less_cols_off;
 	    }
 	}
-	if (*p_extra != NUL)
-	    did_ai = FALSE;	    /* append some text, don't truncate now */
 
 	/* columns for marks adjusted for removed columns */
 	less_cols = (int)(p_extra - saved_line);
--- a/src/testdir/test_edit.vim
+++ b/src/testdir/test_edit.vim
@@ -399,8 +399,19 @@ func Test_edit_13()
     call feedkeys("A {\<cr>more\<cr>}\<esc>", 'tnix')
     call assert_equal(["\tabc {", "\t\tmore", "\t}"], getline(1, '$'))
     set smartindent& autoindent&
-    bw!
+    bwipe!
   endif
+
+  " Test autoindent removing indent of blank line.
+  new
+  call setline(1, '    foo bar baz')
+  set autoindent
+  exe "normal 0eea\<CR>\<CR>\<Esc>"
+  call assert_equal("    foo bar", getline(1))
+  call assert_equal("", getline(2))
+  call assert_equal("    baz", getline(3))
+  set autoindent&
+  bwipe!
 endfunc
 
 func Test_edit_CR()
--- a/src/version.c
+++ b/src/version.c
@@ -780,6 +780,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1011,
+/**/
     1010,
 /**/
     1009,