summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/syntax.c4
-rw-r--r--src/testdir/test_highlight.vim8
-rw-r--r--src/version.c2
3 files changed, 14 insertions, 0 deletions
diff --git a/src/syntax.c b/src/syntax.c
index 8c23d20a3..4d4234683 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -9440,6 +9440,7 @@ syn_list_header(
{
int endcol = 19;
int newline = TRUE;
+ int name_col = 0;
if (!did_header)
{
@@ -9447,6 +9448,7 @@ syn_list_header(
if (got_int)
return TRUE;
msg_outtrans(HL_TABLE()[id - 1].sg_name);
+ name_col = msg_col;
endcol = 15;
}
else if (msg_col + outlen + 1 >= Columns)
@@ -9471,6 +9473,8 @@ syn_list_header(
/* Show "xxx" with the attributes. */
if (!did_header)
{
+ if (endcol == Columns - 1 && endcol <= name_col)
+ msg_putchar(' ');
msg_puts_attr("xxx", syn_id2attr(id));
msg_putchar(' ');
}
diff --git a/src/testdir/test_highlight.vim b/src/testdir/test_highlight.vim
index 09f80670f..f21ebd7e2 100644
--- a/src/testdir/test_highlight.vim
+++ b/src/testdir/test_highlight.vim
@@ -607,3 +607,11 @@ func Test_1_highlight_Normalgroup_exists()
call assert_match('hi Normal\s*clear', hlNormal)
endif
endfunc
+
+function Test_no_space_before_xxx()
+ let l:org_columns = &columns
+ set columns=17
+ let l:hi_StatusLineTermNC = join(split(execute('hi StatusLineTermNC')))
+ call assert_match('StatusLineTermNC xxx', l:hi_StatusLineTermNC)
+ let &columns = l:org_columns
+endfunction
diff --git a/src/version.c b/src/version.c
index 53c3c66fe..aa0b8be7e 100644
--- a/src/version.c
+++ b/src/version.c
@@ -778,6 +778,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1606,
+/**/
1605,
/**/
1604,