mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
updated for version 7.4.344
Problem: Unessecary initializations and other things related to matchaddpos(). Solution: Code cleanup. (Alexey Radkov)
This commit is contained in:
parent
41d7523986
commit
b6da44ae82
@ -4391,17 +4391,17 @@ matchaddpos({group}, {pos}[, {priority}[, {id}]]) *matchaddpos()*
|
||||
required, for example to highlight matching parentheses.
|
||||
|
||||
The list {pos} can contain one of these items:
|
||||
- A number. This while line will be highlighted. The first
|
||||
- A number. This whole line will be highlighted. The first
|
||||
line has number 1.
|
||||
- A list with one number, e.g., [23]. The whole line with this
|
||||
number will be highlighted.
|
||||
- A list with two numbers, e.g., [23, 11]. The first number is
|
||||
the line number, the second one the column number (first
|
||||
column is 1). The character at this position will be
|
||||
highlighted.
|
||||
the line number, the second one is the column number (first
|
||||
column is 1, the value must correspond to the byte index as
|
||||
|col()| would return). The character at this position will
|
||||
be highlighted.
|
||||
- A list with three numbers, e.g., [23, 11, 3]. As above, but
|
||||
the third number gives the length of the highlight in screen
|
||||
cells.
|
||||
the third number gives the length of the highlight in bytes.
|
||||
|
||||
The maximum number of positions is 8.
|
||||
|
||||
|
@ -7531,7 +7531,7 @@ next_search_hl_pos(shl, lnum, posmatch, mincol)
|
||||
colnr_T mincol; /* minimal column for a match */
|
||||
{
|
||||
int i;
|
||||
int bot = -1;
|
||||
int bot = -1;
|
||||
|
||||
shl->lnum = 0;
|
||||
for (i = posmatch->cur; i < MAXPOSMATCH; i++)
|
||||
|
@ -734,6 +734,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
344,
|
||||
/**/
|
||||
343,
|
||||
/**/
|
||||
|
13
src/window.c
13
src/window.c
@ -6813,7 +6813,6 @@ match_add(wp, grp, pat, prio, id, pos_list)
|
||||
m->id = id;
|
||||
m->priority = prio;
|
||||
m->pattern = pat == NULL ? NULL : vim_strsave(pat);
|
||||
m->pos.cur = 0;
|
||||
m->hlg_id = hlg_id;
|
||||
m->match.regprog = regprog;
|
||||
m->match.rmm_ic = FALSE;
|
||||
@ -6827,7 +6826,7 @@ match_add(wp, grp, pat, prio, id, pos_list)
|
||||
listitem_T *li;
|
||||
int i;
|
||||
|
||||
for (i = 0, li = pos_list->lv_first; i < MAXPOSMATCH;
|
||||
for (i = 0, li = pos_list->lv_first; li != NULL && i < MAXPOSMATCH;
|
||||
i++, li = li->li_next)
|
||||
{
|
||||
linenr_T lnum = 0;
|
||||
@ -6837,11 +6836,6 @@ match_add(wp, grp, pat, prio, id, pos_list)
|
||||
listitem_T *subli;
|
||||
int error = FALSE;
|
||||
|
||||
if (li == NULL)
|
||||
{
|
||||
m->pos.pos[i].lnum = 0;
|
||||
break;
|
||||
}
|
||||
if (li->li_tv.v_type == VAR_LIST)
|
||||
{
|
||||
subl = li->li_tv.vval.v_list;
|
||||
@ -6853,12 +6847,12 @@ match_add(wp, grp, pat, prio, id, pos_list)
|
||||
lnum = get_tv_number_chk(&subli->li_tv, &error);
|
||||
if (error == TRUE)
|
||||
goto fail;
|
||||
m->pos.pos[i].lnum = lnum;
|
||||
if (lnum == 0)
|
||||
{
|
||||
--i;
|
||||
continue;
|
||||
}
|
||||
m->pos.pos[i].lnum = lnum;
|
||||
subli = subli->li_next;
|
||||
if (subli != NULL)
|
||||
{
|
||||
@ -6879,7 +6873,10 @@ match_add(wp, grp, pat, prio, id, pos_list)
|
||||
else if (li->li_tv.v_type == VAR_NUMBER)
|
||||
{
|
||||
if (li->li_tv.vval.v_number == 0)
|
||||
{
|
||||
--i;
|
||||
continue;
|
||||
}
|
||||
m->pos.pos[i].lnum = li->li_tv.vval.v_number;
|
||||
m->pos.pos[i].col = 0;
|
||||
m->pos.pos[i].len = 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user