Patch 8.1.1331
Problem:    Test 29 is old style.
Solution:   Turn it into a new style test. (Yegappan Lakshmanan, closes #4370)
Files:      src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
            src/testdir/test29.in, src/testdir/test29.ok,
            src/testdir/test_backspace_opt.vim, src/testdir/test_join.vim


*** ../vim-8.1.1330/src/Makefile        2019-05-11 17:03:55.170019762 +0200
--- src/Makefile        2019-05-14 17:34:49.744798083 +0200
***************
*** 2179,2185 ****
  test1 \
        test_eval \
        test3 \
!       test29 test30 test37 test39 \
        test42 test44 test48 test49 \
        test52 test59 \
        test64 test69 \
--- 2180,2186 ----
  test1 \
        test_eval \
        test3 \
!       test30 test37 test39 \
        test42 test44 test48 test49 \
        test52 test59 \
        test64 test69 \
*** ../vim-8.1.1330/src/testdir/Make_all.mak    2019-05-11 21:14:02.332269584 
+0200
--- src/testdir/Make_all.mak    2019-05-14 17:34:49.744798083 +0200
***************
*** 14,20 ****
  # Tests that run on all systems.
  SCRIPTS_ALL = \
        test3.out \
-       test29.out \
        test37.out \
        test39.out \
        test42.out \
--- 14,19 ----
*** ../vim-8.1.1330/src/testdir/Make_vms.mms    2019-05-06 21:59:42.194211119 
+0200
--- src/testdir/Make_vms.mms    2019-05-14 17:34:49.744798083 +0200
***************
*** 74,80 ****
  .SUFFIXES : .out .in
  
  SCRIPT = test1.out test3.out \
-        test29.out \
         test30.out test37.out test39.out \
         test42.out test44.out test48.out test49.out \
         test64.out test69.out \
--- 74,79 ----
*** ../vim-8.1.1330/src/testdir/test29.in       2017-03-08 22:48:59.000000000 
+0100
--- src/testdir/test29.in       1970-01-01 01:00:00.000000000 +0100
***************
*** 1,231 ****
- Test for joining lines and marks in them
-  in compatible and nocompatible modes
-  and with 'joinspaces' set or not
-  and with 'cpoptions' flag 'j' set or not
- 
- STARTTEST
- :so small.vim
- :set nocompatible viminfo+=nviminfo
- :set nojoinspaces
- :set cpoptions-=j
- /firstline/
- j"td/^STARTTEST/-1
- PJjJjJjJjJjJjJjJjJjJjJjJjJjJj05lmx2j06lmy2k4Jy3l$p`xyl$p`yy2l$p:set 
cpoptions+=j
- j05lmx2j06lmy2k4Jy3l$p`xyl$p`yy2l$p:set cpoptions-=j joinspaces
- j"tpJjJjJjJjJjJjJjJjJjJjJjJjJjJj05lmx2j06lmy2k4Jy3l$p`xyl$p`yy2l$p:set 
cpoptions+=j
- j05lmx2j06lmy2k4Jy3l$p`xyl$p`yy2l$p:set cpoptions-=j nojoinspaces compatible
- j"tpJjJjJjJjJjJjJjJjJjJjJjJjJjJj4Jy3l$pjd/STARTTEST/-2
- ENDTEST
- 
- firstline
- asdfasdf.
- asdf
- asdfasdf. 
- asdf
- asdfasdf.  
- asdf
- asdfasdf.     
- asdf
- asdfasdf.     
- asdf
- asdfasdf.      
- asdf
- asdfasdf.             
- asdf
- asdfasdf
- asdf
- asdfasdf 
- asdf
- asdfasdf  
- asdf
- asdfasdf      
- asdf
- asdfasdf       
- asdf
- asdfasdf      
- asdf
- asdfasdf              
- asdf
- zx cvn.
- as dfg?
- hjkl iop!
- ert
- zx cvn.
- as dfg?
- hjkl iop!
- ert
- 
- STARTTEST
- /^{/+1
- :set comments=s1:/*,mb:*,ex:*/,://
- :set nojoinspaces fo=j
- :set backspace=eol,start
- :.,+3join
- j4J
- :.,+2join
- j3J
- :.,+2join
- j3J
- :.,+2join
- jj3J
- ENDTEST
- 
- {
- 
- /*
-  * Make sure the previous comment leader is not removed.
-  */
- 
- /*
-  * Make sure the previous comment leader is not removed.
-  */
- 
- // Should the next comment leader be left alone?
- // Yes.
- 
- // Should the next comment leader be left alone?
- // Yes.
- 
- /* Here the comment leader should be left intact. */
- // And so should this one.
- 
- /* Here the comment leader should be left intact. */
- // And so should this one.
- 
- if (condition) // Remove the next comment leader!
-                // OK, I will.
-     action();
- 
- if (condition) // Remove the next comment leader!
-                // OK, I will.
-     action();
- }
- 
- STARTTEST
- :" Test with backspace set to the non-compatible setting
- :set belloff=all
- /^\d\+ this
- :set cp bs=2
- Avim1  
- Avim2 u  
- :set cpo-=<
- :inoremap <c-u> <left><c-u>
- Avim3  
- :iunmap <c-u>
- Avim4   
- :" Test with backspace set to the compatible setting
- :set backspace= visualbell
- A vim5 A   
- A vim6 Azwei u  
- :inoremap <c-u> <left><c-u>
- A vim7   
- :set compatible novisualbell
- ENDTEST
- 1 this shouldn't be deleted
- 2 this shouldn't be deleted
- 3 this shouldn't be deleted
- 4 this should be deleted
- 5 this shouldn't be deleted
- 6 this shouldn't be deleted
- 7 this shouldn't be deleted
- 8 this shouldn't be deleted (not touched yet)
- 
- STARTTEST
- /^{/+1
- :set comments=sO:*\ -,mO:*\ \ ,exO:*/
- :set comments+=s1:/*,mb:*,ex:*/,://
- :set comments+=s1:>#,mb:#,ex:#<,:<
- :set cpoptions-=j joinspaces fo=j
- :set backspace=eol,start
- :.,+3join
- j4J
- :.,+8join
- j9J
- :.,+2join
- j3J
- :.,+2join
- j3J
- :.,+2join
- jj3J
- j:.,+2join
- jj3J
- j:.,+5join
- j6J
- oSome code!
// Make sure backspacing does not remove this comment leader. 0i  
- ENDTEST
- 
- {
- 
- /*
-  * Make sure the previous comment leader is not removed.
-  */
- 
- /*
-  * Make sure the previous comment leader is not removed.
-  */
- 
- /* List:
-  * - item1
-  *   foo bar baz
-  *   foo bar baz
-  * - item2
-  *   foo bar baz
-  *   foo bar baz
-  */
- 
- /* List:
-  * - item1
-  *   foo bar baz
-  *   foo bar baz
-  * - item2
-  *   foo bar baz
-  *   foo bar baz
-  */
- 
- // Should the next comment leader be left alone?
- // Yes.
- 
- // Should the next comment leader be left alone?
- // Yes.
- 
- /* Here the comment leader should be left intact. */
- // And so should this one.
- 
- /* Here the comment leader should be left intact. */
- // And so should this one.
- 
- if (condition) // Remove the next comment leader!
-                // OK, I will.
-     action();
- 
- if (condition) // Remove the next comment leader!
-                // OK, I will.
-     action();
- 
- int i = 7 /* foo *// 3
-  // comment
-  ;
- 
- int i = 7 /* foo *// 3
-  // comment
-  ;
- 
- ># Note that the last character of the ending comment leader (left angle
-  # bracket) is a comment leader itself. Make sure that this comment leader is
-  # not removed from the next line #<
- < On this line a new comment is opened which spans 2 lines. This comment 
should
- < retain its comment leader.
- 
- ># Note that the last character of the ending comment leader (left angle
-  # bracket) is a comment leader itself. Make sure that this comment leader is
-  # not removed from the next line #<
- < On this line a new comment is opened which spans 2 lines. This comment 
should
- < retain its comment leader.
- 
- }
- 
- STARTTEST
- :g/^STARTTEST/.,/^ENDTEST/d
- :?firstline?+1,$w! test.out
- :qa!
- ENDTEST
--- 0 ----
*** ../vim-8.1.1330/src/testdir/test29.ok       2014-04-29 14:31:23.000000000 
+0200
--- src/testdir/test29.ok       1970-01-01 01:00:00.000000000 +0100
***************
*** 1,97 ****
- asdfasdf. asdf
- asdfasdf. asdf
- asdfasdf.  asdf
- asdfasdf.     asdf
- asdfasdf.     asdf
- asdfasdf.      asdf
- asdfasdf.             asdf
- asdfasdf asdf
- asdfasdf asdf
- asdfasdf  asdf
- asdfasdf      asdf
- asdfasdf       asdf
- asdfasdf      asdf
- asdfasdf              asdf
- zx cvn. as dfg? hjkl iop! ert ernop
- zx cvn. as dfg? hjkl iop! ert ernop
- 
- asdfasdf.  asdf
- asdfasdf.  asdf
- asdfasdf.  asdf
- asdfasdf.     asdf
- asdfasdf.     asdf
- asdfasdf.      asdf
- asdfasdf.             asdf
- asdfasdf asdf
- asdfasdf asdf
- asdfasdf  asdf
- asdfasdf      asdf
- asdfasdf       asdf
- asdfasdf      asdf
- asdfasdf              asdf
- zx cvn.  as dfg?  hjkl iop!  ert  enop
- zx cvn.  as dfg? hjkl iop! ert ernop
- 
- asdfasdf.  asdf
- asdfasdf.  asdf
- asdfasdf.  asdf
- asdfasdf.     asdf
- asdfasdf.     asdf
- asdfasdf.      asdf
- asdfasdf.             asdf
- asdfasdf asdf
- asdfasdf asdf
- asdfasdf  asdf
- asdfasdf      asdf
- asdfasdf       asdf
- asdfasdf      asdf
- asdfasdf              asdf
- zx cvn.  as dfg? hjkl iop! ert  a
- 
- 
- {
- /* Make sure the previous comment leader is not removed. */
- /* Make sure the previous comment leader is not removed. */
- // Should the next comment leader be left alone? Yes.
- // Should the next comment leader be left alone? Yes.
- /* Here the comment leader should be left intact. */ // And so should this 
one.
- /* Here the comment leader should be left intact. */ // And so should this 
one.
- if (condition) // Remove the next comment leader! OK, I will.
-     action();
- if (condition) // Remove the next comment leader! OK, I will.
-     action();
- }
- 
- 1 this shouldn't be deleted
- 2 this shouldn't be deleted
- 3 this shouldn't be deleted
- 4 this should be deleted3
- 
- 6 this shouldn't be deleted vim5
- 7 this shouldn't be deleted vim6
- 8 this shouldn't be deleted (not touched yet) vim7
- 
- 
- {
- /* Make sure the previous comment leader is not removed.  */
- /* Make sure the previous comment leader is not removed.  */
- /* List: item1 foo bar baz foo bar baz item2 foo bar baz foo bar baz */
- /* List: item1 foo bar baz foo bar baz item2 foo bar baz foo bar baz */
- // Should the next comment leader be left alone?  Yes.
- // Should the next comment leader be left alone?  Yes.
- /* Here the comment leader should be left intact. */ // And so should this 
one.
- /* Here the comment leader should be left intact. */ // And so should this 
one.
- if (condition) // Remove the next comment leader!  OK, I will.
-     action();
- if (condition) // Remove the next comment leader!  OK, I will.
-     action();
- int i = 7 /* foo *// 3 // comment
-  ;
- int i = 7 /* foo *// 3 // comment
-  ;
- ># Note that the last character of the ending comment leader (left angle 
bracket) is a comment leader itself. Make sure that this comment leader is not 
removed from the next line #< < On this line a new comment is opened which 
spans 2 lines. This comment should retain its comment leader.
- ># Note that the last character of the ending comment leader (left angle 
bracket) is a comment leader itself. Make sure that this comment leader is not 
removed from the next line #< < On this line a new comment is opened which 
spans 2 lines. This comment should retain its comment leader.
- 
- Some code!// Make sure backspacing does not remove this comment leader.
- }
- 
--- 0 ----
*** ../vim-8.1.1330/src/testdir/test_backspace_opt.vim  2016-08-18 
22:57:45.000000000 +0200
--- src/testdir/test_backspace_opt.vim  2019-05-14 17:34:49.744798083 +0200
***************
*** 56,59 ****
--- 56,110 ----
    set nocompatible viminfo+=nviminfo
  endfunc
  
+ " Test with backspace set to the non-compatible setting
+ func Test_backspace_ctrl_u()
+   new
+   call append(0,  [
+         \ "1 this shouldn't be deleted",
+         \ "2 this shouldn't be deleted",
+         \ "3 this shouldn't be deleted",
+         \ "4 this should be deleted",
+         \ "5 this shouldn't be deleted",
+         \ "6 this shouldn't be deleted",
+         \ "7 this shouldn't be deleted",
+         \ "8 this shouldn't be deleted (not touched yet)"])
+   call cursor(2, 1)
+ 
+   set compatible
+   set backspace=2
+ 
+   exe "normal Avim1\<C-U>\<Esc>\<CR>"
+   exe "normal Avim2\<C-G>u\<C-U>\<Esc>\<CR>"
+ 
+   set cpo-=<
+   inoremap <c-u> <left><c-u>
+   exe "normal Avim3\<C-U>\<Esc>\<CR>"
+   iunmap <c-u>
+   exe "normal Avim4\<C-U>\<C-U>\<Esc>\<CR>"
+ 
+   " Test with backspace set to the compatible setting
+   set backspace= visualbell
+   exe "normal A vim5\<Esc>A\<C-U>\<C-U>\<Esc>\<CR>"
+   exe "normal A vim6\<Esc>Azwei\<C-G>u\<C-U>\<Esc>\<CR>"
+ 
+   inoremap <c-u> <left><c-u>
+   exe "normal A vim7\<C-U>\<C-U>\<Esc>\<CR>"
+ 
+   call assert_equal([
+         \ "1 this shouldn't be deleted",
+         \ "2 this shouldn't be deleted",
+         \ "3 this shouldn't be deleted",
+         \ "4 this should be deleted3",
+         \ "",
+         \ "6 this shouldn't be deleted vim5",
+         \ "7 this shouldn't be deleted vim6",
+         \ "8 this shouldn't be deleted (not touched yet) vim7",
+         \ ""], getline(1, '$'))
+ 
+   set compatible&vim
+   set visualbell&vim
+   set backspace&vim
+   close!
+ endfunc
+ 
  " vim: shiftwidth=2 sts=2 expandtab
*** ../vim-8.1.1330/src/testdir/test_join.vim   2017-10-22 14:08:57.000000000 
+0200
--- src/testdir/test_join.vim   2019-05-14 17:34:49.744798083 +0200
***************
*** 33,35 ****
--- 33,423 ----
    call assert_equal([0, 4, 67, 0], getpos("']"))
    enew!
  endfunc
+ 
+ " Test for joining lines and marks in them
+ "   in compatible and nocompatible modes
+ "   and with 'joinspaces' set or not
+ "   and with 'cpoptions' flag 'j' set or not
+ func Test_join_spaces_marks()
+   new
+   " Text used for the test
+   insert
+ asdfasdf.
+ asdf
+ asdfasdf. 
+ asdf
+ asdfasdf.  
+ asdf
+ asdfasdf.     
+ asdf
+ asdfasdf.     
+ asdf
+ asdfasdf.      
+ asdf
+ asdfasdf.             
+ asdf
+ asdfasdf
+ asdf
+ asdfasdf 
+ asdf
+ asdfasdf  
+ asdf
+ asdfasdf      
+ asdf
+ asdfasdf       
+ asdf
+ asdfasdf      
+ asdf
+ asdfasdf              
+ asdf
+ zx cvn.
+ as dfg?
+ hjkl iop!
+ ert
+ zx cvn.
+ as dfg?
+ hjkl iop!
+ ert
+ .
+   let text = getline(1, '$')
+   normal gg
+ 
+   set nojoinspaces
+   set cpoptions-=j
+   normal JjJjJjJjJjJjJjJjJjJjJjJjJjJ
+   normal j05lmx
+   normal 2j06lmy
+   normal 2k4Jy3l$p
+   normal `xyl$p
+   normal `yy2l$p
+ 
+   set cpoptions+=j
+   normal j05lmx
+   normal 2j06lmy
+   normal 2k4Jy3l$p
+   normal `xyl$p
+   normal `yy2l$p
+ 
+   normal G
+   let last_line = line('$')
+ 
+   " Expected output
+   append
+ asdfasdf. asdf
+ asdfasdf. asdf
+ asdfasdf.  asdf
+ asdfasdf.     asdf
+ asdfasdf.     asdf
+ asdfasdf.      asdf
+ asdfasdf.             asdf
+ asdfasdf asdf
+ asdfasdf asdf
+ asdfasdf  asdf
+ asdfasdf      asdf
+ asdfasdf       asdf
+ asdfasdf      asdf
+ asdfasdf              asdf
+ zx cvn. as dfg? hjkl iop! ert ernop
+ zx cvn. as dfg? hjkl iop! ert ernop
+ .
+ 
+   call assert_equal(getline(last_line + 1, '$'), getline(1, last_line))
+ 
+   enew!
+   call append(0, text)
+   normal gg
+ 
+   set cpoptions-=j
+   set joinspaces
+   normal JjJjJjJjJjJjJjJjJjJjJjJjJjJ
+   normal j05lmx
+   normal 2j06lmy
+   normal 2k4Jy3l$p
+   normal `xyl$p
+   normal `yy2l$p
+ 
+   set cpoptions+=j
+   normal j05lmx
+   normal 2j06lmy
+   normal 2k4Jy3l$p
+   normal `xyl$p
+   normal `yy2l$p
+ 
+   normal G
+   let last_line = line('$')
+ 
+   " Expected output
+   append
+ asdfasdf.  asdf
+ asdfasdf.  asdf
+ asdfasdf.  asdf
+ asdfasdf.     asdf
+ asdfasdf.     asdf
+ asdfasdf.      asdf
+ asdfasdf.             asdf
+ asdfasdf asdf
+ asdfasdf asdf
+ asdfasdf  asdf
+ asdfasdf      asdf
+ asdfasdf       asdf
+ asdfasdf      asdf
+ asdfasdf              asdf
+ zx cvn.  as dfg?  hjkl iop!  ert  enop
+ zx cvn.  as dfg? hjkl iop! ert ernop
+ 
+ .
+ 
+   call assert_equal(getline(last_line + 1, '$'), getline(1, last_line))
+ 
+   enew!
+   call append(0, text)
+   normal gg
+ 
+   set cpoptions-=j
+   set nojoinspaces
+   set compatible
+ 
+   normal JjJjJjJjJjJjJjJjJjJjJjJjJjJ
+   normal j4Jy3l$pjdG
+ 
+   normal G
+   let last_line = line('$')
+ 
+   " Expected output
+   append
+ asdfasdf.  asdf
+ asdfasdf.  asdf
+ asdfasdf.  asdf
+ asdfasdf.     asdf
+ asdfasdf.     asdf
+ asdfasdf.      asdf
+ asdfasdf.             asdf
+ asdfasdf asdf
+ asdfasdf asdf
+ asdfasdf  asdf
+ asdfasdf      asdf
+ asdfasdf       asdf
+ asdfasdf      asdf
+ asdfasdf              asdf
+ zx cvn.  as dfg? hjkl iop! ert  a
+ .
+ 
+   call assert_equal(getline(last_line + 1, '$'), getline(1, last_line))
+ 
+   set nocompatible
+   set cpoptions&vim
+   set joinspaces&vim
+   close!
+ endfunc
+ 
+ " Test for joining lines with comments
+ func Test_join_lines_with_comments()
+   new
+ 
+   " Text used by the test
+   insert
+ {
+ 
+ /*
+ * Make sure the previous comment leader is not removed.
+ */
+ 
+ /*
+ * Make sure the previous comment leader is not removed.
+ */
+ 
+ // Should the next comment leader be left alone?
+ // Yes.
+ 
+ // Should the next comment leader be left alone?
+ // Yes.
+ 
+ /* Here the comment leader should be left intact. */
+ // And so should this one.
+ 
+ /* Here the comment leader should be left intact. */
+ // And so should this one.
+ 
+ if (condition) // Remove the next comment leader!
+ // OK, I will.
+ action();
+ 
+ if (condition) // Remove the next comment leader!
+ // OK, I will.
+ action();
+ }
+ .
+ 
+   call cursor(2, 1)
+   set comments=s1:/*,mb:*,ex:*/,://
+   set nojoinspaces fo=j
+   set backspace=eol,start
+ 
+   .,+3join
+   exe "normal j4J\<CR>"
+   .,+2join
+   exe "normal j3J\<CR>"
+   .,+2join
+   exe "normal j3J\<CR>"
+   .,+2join
+   exe "normal jj3J\<CR>"
+ 
+   normal G
+   let last_line = line('$')
+ 
+   " Expected output
+   append
+ {
+ /* Make sure the previous comment leader is not removed. */
+ /* Make sure the previous comment leader is not removed. */
+ // Should the next comment leader be left alone? Yes.
+ // Should the next comment leader be left alone? Yes.
+ /* Here the comment leader should be left intact. */ // And so should this 
one.
+ /* Here the comment leader should be left intact. */ // And so should this 
one.
+ if (condition) // Remove the next comment leader! OK, I will.
+ action();
+ if (condition) // Remove the next comment leader! OK, I will.
+ action();
+ }
+ .
+ 
+   call assert_equal(getline(last_line + 1, '$'), getline(1, last_line))
+ 
+   set comments&vim
+   set joinspaces&vim
+   set fo&vim
+   set backspace&vim
+   close!
+ endfunc
+ 
+ " Test for joining lines with different comment leaders
+ func Test_join_comments_2()
+   new
+ 
+   insert
+ {
+ 
+ /*
+  * Make sure the previous comment leader is not removed.
+  */
+ 
+ /*
+  * Make sure the previous comment leader is not removed.
+  */
+ 
+ /* List:
+  * - item1
+  *   foo bar baz
+  *   foo bar baz
+  * - item2
+  *   foo bar baz
+  *   foo bar baz
+  */
+ 
+ /* List:
+  * - item1
+  *   foo bar baz
+  *   foo bar baz
+  * - item2
+  *   foo bar baz
+  *   foo bar baz
+  */
+ 
+ // Should the next comment leader be left alone?
+ // Yes.
+ 
+ // Should the next comment leader be left alone?
+ // Yes.
+ 
+ /* Here the comment leader should be left intact. */
+ // And so should this one.
+ 
+ /* Here the comment leader should be left intact. */
+ // And so should this one.
+ 
+ if (condition) // Remove the next comment leader!
+                // OK, I will.
+     action();
+ 
+ if (condition) // Remove the next comment leader!
+                // OK, I will.
+     action();
+ 
+ int i = 7 /* foo *// 3
+  // comment
+  ;
+ 
+ int i = 7 /* foo *// 3
+  // comment
+  ;
+ 
+ ># Note that the last character of the ending comment leader (left angle
+  # bracket) is a comment leader itself. Make sure that this comment leader is
+  # not removed from the next line #<
+ < On this line a new comment is opened which spans 2 lines. This comment 
should
+ < retain its comment leader.
+ 
+ ># Note that the last character of the ending comment leader (left angle
+  # bracket) is a comment leader itself. Make sure that this comment leader is
+  # not removed from the next line #<
+ < On this line a new comment is opened which spans 2 lines. This comment 
should
+ < retain its comment leader.
+ 
+ }
+ .
+ 
+   call cursor(2, 1)
+   set comments=sO:*\ -,mO:*\ \ ,exO:*/
+   set comments+=s1:/*,mb:*,ex:*/,://
+   set comments+=s1:>#,mb:#,ex:#<,:<
+   set cpoptions-=j joinspaces fo=j
+   set backspace=eol,start
+ 
+   .,+3join
+   exe "normal j4J\<CR>"
+   .,+8join
+   exe "normal j9J\<CR>"
+   .,+2join
+   exe "normal j3J\<CR>"
+   .,+2join
+   exe "normal j3J\<CR>"
+   .,+2join
+   exe "normal jj3J\<CR>j"
+   .,+2join
+   exe "normal jj3J\<CR>j"
+   .,+5join
+   exe "normal j6J\<CR>"
+   exe "normal oSome code!\<CR>// Make sure backspacing does not remove this 
comment leader.\<Esc>0i\<C-H>\<Esc>"
+ 
+   normal G
+   let last_line = line('$')
+ 
+   " Expected output
+   append
+ {
+ /* Make sure the previous comment leader is not removed.  */
+ /* Make sure the previous comment leader is not removed.  */
+ /* List: item1 foo bar baz foo bar baz item2 foo bar baz foo bar baz */
+ /* List: item1 foo bar baz foo bar baz item2 foo bar baz foo bar baz */
+ // Should the next comment leader be left alone?  Yes.
+ // Should the next comment leader be left alone?  Yes.
+ /* Here the comment leader should be left intact. */ // And so should this 
one.
+ /* Here the comment leader should be left intact. */ // And so should this 
one.
+ if (condition) // Remove the next comment leader!  OK, I will.
+     action();
+ if (condition) // Remove the next comment leader!  OK, I will.
+     action();
+ int i = 7 /* foo *// 3 // comment
+  ;
+ int i = 7 /* foo *// 3 // comment
+  ;
+ ># Note that the last character of the ending comment leader (left angle 
bracket) is a comment leader itself. Make sure that this comment leader is not 
removed from the next line #< < On this line a new comment is opened which 
spans 2 lines. This comment should retain its comment leader.
+ ># Note that the last character of the ending comment leader (left angle 
bracket) is a comment leader itself. Make sure that this comment leader is not 
removed from the next line #< < On this line a new comment is opened which 
spans 2 lines. This comment should retain its comment leader.
+ 
+ Some code!// Make sure backspacing does not remove this comment leader.
+ }
+ .
+ 
+   call assert_equal(getline(last_line + 1, '$'), getline(1, last_line))
+   close!
+ endfunc
*** ../vim-8.1.1330/src/version.c       2019-05-13 20:27:19.216311194 +0200
--- src/version.c       2019-05-14 17:39:18.067407608 +0200
***************
*** 769,770 ****
--- 769,772 ----
  {   /* Add new patch number below this line */
+ /**/
+     1331,
  /**/

-- 
ARTHUR:    Be quiet!  I order you to shut up.
OLD WOMAN: Order, eh -- who does he think he is?
ARTHUR:    I am your king!
OLD WOMAN: Well, I didn't vote for you.
                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/201905141557.x4EFveAt015721%40masaka.moolenaar.net.
For more options, visit https://groups.google.com/d/optout.

Reply via email to