1
0
forked from aniani/vim

patch 8.1.2293: join adds trailing space when second line is empty

Problem:    Join adds trailing space when second line is empty. (Brennan
            Vincent)
Solution:   Do not add a trailing space.
This commit is contained in:
Bram Moolenaar 2019-11-12 20:31:20 +01:00
parent d002e411c6
commit cc184cfb09
3 changed files with 25 additions and 1 deletions

View File

@ -1999,7 +1999,8 @@ do_join(
if (insert_space && t > 0)
{
curr = skipwhite(curr);
if (*curr != ')' && currsize != 0 && endcurr1 != TAB
if (*curr != NUL && *curr != ')'
&& currsize != 0 && endcurr1 != TAB
&& (!has_format_option(FO_MBYTE_JOIN)
|| (mb_ptr2char(curr) < 0x100 && endcurr1 < 0x100))
&& (!has_format_option(FO_MBYTE_JOIN2)

View File

@ -9,6 +9,27 @@ func Test_join_with_count()
call setline(1, ['one', 'two', 'three', 'four'])
normal 10J
call assert_equal('one two three four', getline(1))
call setline(1, ['one', '', 'two'])
normal J
call assert_equal('one', getline(1))
call setline(1, ['one', ' ', 'two'])
normal J
call assert_equal('one', getline(1))
call setline(1, ['one', '', '', 'two'])
normal JJ
call assert_equal('one', getline(1))
call setline(1, ['one', ' ', ' ', 'two'])
normal JJ
call assert_equal('one', getline(1))
call setline(1, ['one', '', '', 'two'])
normal 2J
call assert_equal('one', getline(1))
quit!
endfunc

View File

@ -741,6 +741,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
2293,
/**/
2292,
/**/