forked from aniani/vim
patch 8.2.0871: cannot use getmarklist() as a method
Problem: Cannot use getmarklist() as a method. Solution: Make getmarklist() work as a method. Add one to the column number to match getpos(). (Yegappan Lakshmanan, closes #6176)
This commit is contained in:
parent
ad772a63ec
commit
f17e7ea67a
@ -5385,6 +5385,8 @@ getmarklist([{expr}] *getmarklist()*
|
||||
Refer to |getpos()| for getting information about a specific
|
||||
mark.
|
||||
|
||||
Can also be used as a |method|: >
|
||||
GetBufnr()->getmarklist()
|
||||
|
||||
getmatches([{win}]) *getmatches()*
|
||||
Returns a |List| with all matches previously defined for the
|
||||
|
@ -579,7 +579,7 @@ static funcentry_T global_functions[] =
|
||||
{"getjumplist", 0, 2, FEARG_1, ret_list_any, f_getjumplist},
|
||||
{"getline", 1, 2, FEARG_1, ret_f_getline, f_getline},
|
||||
{"getloclist", 1, 2, 0, ret_list_dict_any, f_getloclist},
|
||||
{"getmarklist", 0, 1, 0, ret_list_dict_any, f_getmarklist},
|
||||
{"getmarklist", 0, 1, FEARG_1, ret_list_dict_any, f_getmarklist},
|
||||
{"getmatches", 0, 1, 0, ret_list_dict_any, f_getmatches},
|
||||
{"getmousepos", 0, 0, 0, ret_dict_number, f_getmousepos},
|
||||
{"getpid", 0, 0, 0, ret_number, f_getpid},
|
||||
|
@ -1442,7 +1442,7 @@ add_mark(list_T *l, char_u *mname, pos_T *pos, int bufnr, char_u *fname)
|
||||
|
||||
list_append_number(lpos, bufnr);
|
||||
list_append_number(lpos, pos->lnum);
|
||||
list_append_number(lpos, pos->col);
|
||||
list_append_number(lpos, pos->col + 1);
|
||||
list_append_number(lpos, pos->coladd);
|
||||
|
||||
if (dict_add_string(d, "mark", mname) == FAIL
|
||||
|
@ -269,18 +269,18 @@ func Test_getmarklist()
|
||||
mark A
|
||||
call cursor(3, 5)
|
||||
normal mN
|
||||
call assert_equal([{'file' : '', 'mark' : "'A", 'pos' : [bufnr(), 1, 0, 0]},
|
||||
\ {'file' : '', 'mark' : "'N", 'pos' : [bufnr(), 3, 4, 0]}],
|
||||
call assert_equal([{'file' : '', 'mark' : "'A", 'pos' : [bufnr(), 1, 1, 0]},
|
||||
\ {'file' : '', 'mark' : "'N", 'pos' : [bufnr(), 3, 5, 0]}],
|
||||
\ getmarklist())
|
||||
" buffer local marks
|
||||
delmarks!
|
||||
call assert_equal([{'mark' : "''", 'pos' : [bufnr(), 1, 0, 0]},
|
||||
\ {'mark' : "'\"", 'pos' : [bufnr(), 1, 0, 0]}], getmarklist(bufnr()))
|
||||
call assert_equal([{'mark' : "''", 'pos' : [bufnr(), 1, 1, 0]},
|
||||
\ {'mark' : "'\"", 'pos' : [bufnr(), 1, 1, 0]}], getmarklist(bufnr()))
|
||||
call cursor(2, 2)
|
||||
normal mr
|
||||
call assert_equal({'mark' : "'r", 'pos' : [bufnr(), 2, 1, 0]},
|
||||
\ getmarklist(bufnr())[0])
|
||||
call assert_equal([], getmarklist({}))
|
||||
call assert_equal({'mark' : "'r", 'pos' : [bufnr(), 2, 2, 0]},
|
||||
\ bufnr()->getmarklist()[0])
|
||||
call assert_equal([], {}->getmarklist())
|
||||
close!
|
||||
endfunc
|
||||
|
||||
|
@ -746,6 +746,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
871,
|
||||
/**/
|
||||
870,
|
||||
/**/
|
||||
|
Loading…
x
Reference in New Issue
Block a user