diff options
author | Bram Moolenaar <Bram@vim.org> | 2014-08-06 13:20:56 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2014-08-06 13:20:56 +0200 |
commit | e0f148270a03e0da2bf21706bee4d2fe99146c55 (patch) | |
tree | e2058f24b39a2e3c2d36b80f73e51cd3163eefb8 /src/screen.c | |
parent | ece29e80131afdd4bb7aa74f62b98cf97f1090b5 (diff) | |
download | vim-git-e0f148270a03e0da2bf21706bee4d2fe99146c55.tar.gz |
updated for version 7.4.391v7.4.391
Problem: No 'cursorline' highlighting when the cursor is on a line with
diff highlighting. (Benjamin Fritz)
Solution: Combine the highlight attributes. (Christian Brabandt)
Diffstat (limited to 'src/screen.c')
-rw-r--r-- | src/screen.c | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/src/screen.c b/src/screen.c index 188b36f9c..3ab53d9e2 100644 --- a/src/screen.c +++ b/src/screen.c @@ -3702,7 +3702,12 @@ win_line(wp, lnum, startrow, endrow, nochange) char_attr = 0; /* was: hl_attr(HLF_AT); */ #ifdef FEAT_DIFF if (diff_hlf != (hlf_T)0) + { char_attr = hl_attr(diff_hlf); + if (wp->w_p_cul && lnum == wp->w_cursor.lnum) + char_attr = hl_combine_attr(char_attr, + hl_attr(HLF_CUL)); + } #endif p_extra = NULL; c_extra = ' '; @@ -3753,7 +3758,8 @@ win_line(wp, lnum, startrow, endrow, nochange) #ifdef FEAT_SYN_HL /* combine 'showbreak' with 'cursorline' */ if (wp->w_p_cul && lnum == wp->w_cursor.lnum) - char_attr = hl_combine_attr(char_attr, HLF_CLN); + char_attr = hl_combine_attr(char_attr, + hl_attr(HLF_CUL)); #endif } # endif @@ -3931,6 +3937,8 @@ win_line(wp, lnum, startrow, endrow, nochange) && n_extra == 0) diff_hlf = HLF_CHD; /* changed line */ line_attr = hl_attr(diff_hlf); + if (wp->w_p_cul && lnum == wp->w_cursor.lnum) + line_attr = hl_combine_attr(line_attr, hl_attr(HLF_CUL)); } #endif @@ -4729,7 +4737,12 @@ win_line(wp, lnum, startrow, endrow, nochange) { diff_hlf = HLF_CHD; if (attr == 0 || char_attr != attr) + { char_attr = hl_attr(diff_hlf); + if (wp->w_p_cul && lnum == wp->w_cursor.lnum) + char_attr = hl_combine_attr(char_attr, + hl_attr(HLF_CUL)); + } } # endif } @@ -10174,9 +10187,9 @@ draw_tabline() break; screen_puts_len(NameBuff, len, 0, col, #if defined(FEAT_SYN_HL) - hl_combine_attr(attr, hl_attr(HLF_T)) + hl_combine_attr(attr, hl_attr(HLF_T)) #else - attr + attr #endif ); col += len; |