diff options
author | Bram Moolenaar <Bram@vim.org> | 2013-06-30 17:24:16 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2013-06-30 17:24:16 +0200 |
commit | 5a4d51e6929b1bb615eaf212a091384cc266b8d7 (patch) | |
tree | c368580da831049b2e7361c6b8a72d49b2b4ea4d | |
parent | 85e932f2ca8830990adffa904401089e4e357c21 (diff) | |
download | vim-5a4d51e6929b1bb615eaf212a091384cc266b8d7.zip |
updated for version 7.3.1277
Problem: In diff mode 'cursorline' also draws in the non-active window.
When 'nu' and 'sbr' are set the 'sbr' string is not underlined.
Solution: Only draw the cursor line in the current window. Combine the
'cursorline' and other highlighting attributes. (Christian
Brabandt)
-rw-r--r-- | src/screen.c | 16 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 14 insertions, 4 deletions
diff --git a/src/screen.c b/src/screen.c index b33a000d7..eb1b1df49 100644 --- a/src/screen.c +++ b/src/screen.c @@ -3366,9 +3366,11 @@ win_line(wp, lnum, startrow, endrow, nochange) #endif #ifdef FEAT_SYN_HL - /* Cursor line highlighting for 'cursorline'. Not when Visual mode is - * active, because it's not clear what is selected then. */ - if (wp->w_p_cul && lnum == wp->w_cursor.lnum && !VIsual_active) + /* Cursor line highlighting for 'cursorline' in the current window. Not + * when Visual mode is active, because it's not clear what is selected + * then. */ + if (wp->w_p_cul && wp == curwin && lnum == wp->w_cursor.lnum + && !VIsual_active) { line_attr = hl_attr(HLF_CUL); area_highlighting = TRUE; @@ -3541,7 +3543,7 @@ win_line(wp, lnum, startrow, endrow, nochange) * the current line differently. * TODO: Can we use CursorLine instead of CursorLineNr * when CursorLineNr isn't set? */ - if ((wp->w_p_cul || wp->w_p_rnu) + if (((wp->w_p_cul && wp == curwin) || wp->w_p_rnu) && lnum == wp->w_cursor.lnum) char_attr = hl_attr(HLF_CLN); #endif @@ -3582,6 +3584,12 @@ win_line(wp, lnum, startrow, endrow, nochange) * required when 'linebreak' is also set. */ if (tocol == vcol) tocol += n_extra; +#ifdef FEAT_SYN_HL + /* combine 'showbreak' with 'cursorline' */ + if (wp->w_p_cul && wp == curwin + && lnum == wp->w_cursor.lnum) + char_attr = hl_combine_attr(char_attr, HLF_CLN); +#endif } # endif } diff --git a/src/version.c b/src/version.c index 08e2d7949..a3b0657ef 100644 --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1277, +/**/ 1276, /**/ 1275, |