The problem can be reproduced with
$ echo -e "1\n2\n3" > file1
$ echo -e "3" > file2
$ vim -d file1 file2
and in vim:
:sign define piet text=>> texthl=Search
:sign place 1 line=3 name=piet file=file1
:sign place 2 line=3 name=piet file=file2
The sign shows only in file1, but not in file2, because of the diff
filler lines directly above the sign's line.
It seems the sign code did not account for filler lines, while other
parts of win_line() did.
--
Olaf Dabrunz (oda <at> fctrace.org)
--- a/src/screen.c
+++ b/src/screen.c
@@ -3569,7 +3569,11 @@ win_line(wp, lnum, startrow, endrow, noc
char_attr = hl_attr(HLF_SC);
n_extra = 2;
- if (row == startrow)
+ if (row == startrow
+#ifdef FEAT_DIFF
+ + filler_lines
+#endif
+ )
{
text_sign = buf_getsigntype(wp->w_buffer, lnum,
SIGN_TEXT);
--
--
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 [email protected].
For more options, visit https://groups.google.com/d/optout.