mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 7.4.1015
Problem: The column is not restored properly when the matchparen plugin is used in Insert mode and the cursor is after the end of the line. Solution: Set the curswant flag. (Christian Brabandt). Also fix highlighting the match of the character before the cursor.
This commit is contained in:
parent
06b0734d9c
commit
c21d67e33c
@ -1,6 +1,6 @@
|
|||||||
" Vim plugin for showing matching parens
|
" Vim plugin for showing matching parens
|
||||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
" Last Change: 2014 Jul 19
|
" Last Change: 2015 Dec 31
|
||||||
|
|
||||||
" Exit quickly when:
|
" Exit quickly when:
|
||||||
" - this plugin was already loaded (or disabled)
|
" - this plugin was already loaded (or disabled)
|
||||||
@ -55,7 +55,7 @@ function! s:Highlight_Matching_Pair()
|
|||||||
let before = 0
|
let before = 0
|
||||||
|
|
||||||
let text = getline(c_lnum)
|
let text = getline(c_lnum)
|
||||||
let matches = matchlist(text, '\(.\)\=\%'.c_col.'c\(.\)')
|
let matches = matchlist(text, '\(.\)\=\%'.c_col.'c\(.\=\)')
|
||||||
if empty(matches)
|
if empty(matches)
|
||||||
let [c_before, c] = ['', '']
|
let [c_before, c] = ['', '']
|
||||||
else
|
else
|
||||||
|
@ -10183,6 +10183,7 @@ f_cursor(argvars, rettv)
|
|||||||
#ifdef FEAT_VIRTUALEDIT
|
#ifdef FEAT_VIRTUALEDIT
|
||||||
long coladd = 0;
|
long coladd = 0;
|
||||||
#endif
|
#endif
|
||||||
|
int set_curswant = TRUE;
|
||||||
|
|
||||||
rettv->vval.v_number = -1;
|
rettv->vval.v_number = -1;
|
||||||
if (argvars[1].v_type == VAR_UNKNOWN)
|
if (argvars[1].v_type == VAR_UNKNOWN)
|
||||||
@ -10198,7 +10199,10 @@ f_cursor(argvars, rettv)
|
|||||||
coladd = pos.coladd;
|
coladd = pos.coladd;
|
||||||
#endif
|
#endif
|
||||||
if (curswant >= 0)
|
if (curswant >= 0)
|
||||||
|
{
|
||||||
curwin->w_curswant = curswant - 1;
|
curwin->w_curswant = curswant - 1;
|
||||||
|
set_curswant = FALSE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -10231,7 +10235,7 @@ f_cursor(argvars, rettv)
|
|||||||
mb_adjust_cursor();
|
mb_adjust_cursor();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
curwin->w_set_curswant = TRUE;
|
curwin->w_set_curswant = set_curswant;
|
||||||
rettv->vval.v_number = 0;
|
rettv->vval.v_number = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -17524,7 +17528,10 @@ f_setpos(argvars, rettv)
|
|||||||
{
|
{
|
||||||
curwin->w_cursor = pos;
|
curwin->w_cursor = pos;
|
||||||
if (curswant >= 0)
|
if (curswant >= 0)
|
||||||
|
{
|
||||||
curwin->w_curswant = curswant - 1;
|
curwin->w_curswant = curswant - 1;
|
||||||
|
curwin->w_set_curswant = FALSE;
|
||||||
|
}
|
||||||
check_cursor();
|
check_cursor();
|
||||||
rettv->vval.v_number = 0;
|
rettv->vval.v_number = 0;
|
||||||
}
|
}
|
||||||
|
@ -741,6 +741,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1015,
|
||||||
/**/
|
/**/
|
||||||
1014,
|
1014,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user