mirror of
https://github.com/vim/vim.git
synced 2025-10-01 04:54:07 -04:00
patch 8.2.2493: text property for text left of window shows up
Problem: Text property for text left of window shows up. Solution: Check if the text property ends before the current column. (closes #7806)
This commit is contained in:
@@ -1418,7 +1418,12 @@ win_line(
|
|||||||
// Add any text property that starts in this column.
|
// Add any text property that starts in this column.
|
||||||
while (text_prop_next < text_prop_count
|
while (text_prop_next < text_prop_count
|
||||||
&& bcol >= text_props[text_prop_next].tp_col - 1)
|
&& bcol >= text_props[text_prop_next].tp_col - 1)
|
||||||
text_prop_idxs[text_props_active++] = text_prop_next++;
|
{
|
||||||
|
if (bcol <= text_props[text_prop_next].tp_col - 1
|
||||||
|
+ text_props[text_prop_next].tp_len)
|
||||||
|
text_prop_idxs[text_props_active++] = text_prop_next;
|
||||||
|
++text_prop_next;
|
||||||
|
}
|
||||||
|
|
||||||
text_prop_attr = 0;
|
text_prop_attr = 0;
|
||||||
text_prop_combine = FALSE;
|
text_prop_combine = FALSE;
|
||||||
|
6
src/testdir/dumps/Test_textprop_nowrap_01.dump
Normal file
6
src/testdir/dumps/Test_textprop_nowrap_01.dump
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
>a+0&#ffffff0|l@1|e|r| |t|h|a|n| |4+0#ffffff16#e000002|5|6|7|.+0#0000000#ffffff0|X@58
|
||||||
|
|~+0#4040ff13&| @73
|
||||||
|
|~| @73
|
||||||
|
|~| @73
|
||||||
|
|~| @73
|
||||||
|
| +0#0000000&@56|1|,|2|1| @9|A|l@1|
|
6
src/testdir/dumps/Test_textprop_nowrap_02.dump
Normal file
6
src/testdir/dumps/Test_textprop_nowrap_02.dump
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
|X+0&#ffffff0@36>X| @36
|
||||||
|
|~+0#4040ff13&| @73
|
||||||
|
|~| @73
|
||||||
|
|~| @73
|
||||||
|
|~| @73
|
||||||
|
| +0#0000000&@56|1|,|1@2| @8|A|l@1|
|
@@ -1049,6 +1049,30 @@ func Test_textprop_after_tab()
|
|||||||
call delete('XtestPropTab')
|
call delete('XtestPropTab')
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_textprop_nowrap_scrolled()
|
||||||
|
CheckScreendump
|
||||||
|
|
||||||
|
let lines =<< trim END
|
||||||
|
vim9script
|
||||||
|
set nowrap
|
||||||
|
setline(1, 'The number 123 is smaller than 4567.' .. repeat('X', &columns))
|
||||||
|
prop_type_add('number', {'highlight': 'ErrorMsg'})
|
||||||
|
prop_add(1, 12, {'length': 3, 'type': 'number'})
|
||||||
|
prop_add(1, 32, {'length': 4, 'type': 'number'})
|
||||||
|
feedkeys('gg20zl', 'nxt')
|
||||||
|
END
|
||||||
|
call writefile(lines, 'XtestNowrap')
|
||||||
|
let buf = RunVimInTerminal('-S XtestNowrap', {'rows': 6})
|
||||||
|
call VerifyScreenDump(buf, 'Test_textprop_nowrap_01', {})
|
||||||
|
|
||||||
|
call term_sendkeys(buf, "$")
|
||||||
|
call VerifyScreenDump(buf, 'Test_textprop_nowrap_02', {})
|
||||||
|
|
||||||
|
" clean up
|
||||||
|
call StopVimInTerminal(buf)
|
||||||
|
call delete('XtestNowrap')
|
||||||
|
endfunc
|
||||||
|
|
||||||
func Test_textprop_with_syntax()
|
func Test_textprop_with_syntax()
|
||||||
CheckScreendump
|
CheckScreendump
|
||||||
|
|
||||||
|
@@ -750,6 +750,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
2493,
|
||||||
/**/
|
/**/
|
||||||
2492,
|
2492,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user