| To: vim-dev@vim.org |
| Subject: Patch 7.2.148 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=ISO-8859-1 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.2.148 |
| Problem: When searching for "$" while 'hlsearch' is set, highlighting the |
| character after the line does not work in the cursor column. |
| Also highlighting for Visual mode after the line end when this |
| isn't needed. (Markus Heidelberg) |
| Solution: Only compare the cursor column in the cursor line. Only highlight |
| for Visual selection after the last character when it's needed to |
| see where the Visual selection ends. |
| Files: src/screen.c |
| |
| |
| |
| |
| |
| *** 2889,2896 **** |
| } |
| else |
| tocol = MAXCOL; |
| ! if (fromcol == tocol) /* do at least one character */ |
| ! tocol = fromcol + 1; /* happens when past end of line */ |
| area_highlighting = TRUE; |
| attr = hl_attr(HLF_I); |
| } |
| --- 2889,2897 ---- |
| } |
| else |
| tocol = MAXCOL; |
| ! /* do at least one character; happens when past end of line */ |
| ! if (fromcol == tocol) |
| ! tocol = fromcol + 1; |
| area_highlighting = TRUE; |
| attr = hl_attr(HLF_I); |
| } |
| |
| *** 4118,4123 **** |
| --- 4119,4125 ---- |
| # endif |
| (col < W_WIDTH(wp))) |
| && !(noinvcur |
| + && lnum == wp->w_cursor.lnum |
| && (colnr_T)vcol == wp->w_virtcol))) |
| && lcs_eol_one >= 0) |
| { |
| |
| *** 4259,4265 **** |
| * preedit_changed and commit. Thus Vim can't set "im_is_active", use |
| * im_is_preediting() here. */ |
| if (xic != NULL |
| ! && lnum == curwin->w_cursor.lnum |
| && (State & INSERT) |
| && !p_imdisable |
| && im_is_preediting() |
| --- 4261,4267 ---- |
| * preedit_changed and commit. Thus Vim can't set "im_is_active", use |
| * im_is_preediting() here. */ |
| if (xic != NULL |
| ! && lnum == wp->w_cursor.lnum |
| && (State & INSERT) |
| && !p_imdisable |
| && im_is_preediting() |
| |
| *** 4268,4274 **** |
| colnr_T tcol; |
| |
| if (preedit_end_col == MAXCOL) |
| ! getvcol(curwin, &(curwin->w_cursor), &tcol, NULL, NULL); |
| else |
| tcol = preedit_end_col; |
| if ((long)preedit_start_col <= vcol && vcol < (long)tcol) |
| --- 4270,4276 ---- |
| colnr_T tcol; |
| |
| if (preedit_end_col == MAXCOL) |
| ! getvcol(curwin, &(wp->w_cursor), &tcol, NULL, NULL); |
| else |
| tcol = preedit_end_col; |
| if ((long)preedit_start_col <= vcol && vcol < (long)tcol) |
| |
| *** 4365,4371 **** |
| } |
| #endif |
| if (lcs_eol == lcs_eol_one |
| ! && ((area_attr != 0 && vcol == fromcol && c == NUL) |
| #ifdef FEAT_SEARCH_EXTRA |
| /* highlight 'hlsearch' match at end of line */ |
| || (prevcol_hl_flag == TRUE |
| --- 4367,4379 ---- |
| } |
| #endif |
| if (lcs_eol == lcs_eol_one |
| ! && ((area_attr != 0 && vcol == fromcol |
| ! #ifdef FEAT_VISUAL |
| ! && (VIsual_mode != Ctrl_V |
| ! || lnum == VIsual.lnum |
| ! || lnum == curwin->w_cursor.lnum) |
| ! #endif |
| ! && c == NUL) |
| #ifdef FEAT_SEARCH_EXTRA |
| /* highlight 'hlsearch' match at end of line */ |
| || (prevcol_hl_flag == TRUE |
| |
| *** 4459,4465 **** |
| if (c == NUL) |
| { |
| #ifdef FEAT_SYN_HL |
| ! if (eol_hl_off > 0 && vcol - eol_hl_off == (long)wp->w_virtcol) |
| { |
| /* highlight last char after line */ |
| --col; |
| --- 4467,4474 ---- |
| if (c == NUL) |
| { |
| #ifdef FEAT_SYN_HL |
| ! if (eol_hl_off > 0 && vcol - eol_hl_off == (long)wp->w_virtcol |
| ! && lnum == wp->w_cursor.lnum) |
| { |
| /* highlight last char after line */ |
| --col; |
| |
| |
| |
| *** 678,679 **** |
| --- 678,681 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 148, |
| /**/ |
| |
| -- |
| hundred-and-one symptoms of being an internet addict: |
| 239. You think "surfing" is something you do on dry land. |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ download, build and distribute -- http://www.A-A-P.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |