# HG changeset patch # User vimboss # Date 1213975911 0 # Node ID 1324b7b755f3b5570ce9aa7fb27c075c89a1d2df # Parent 152883db0edf63f35e8459dcc5862ef3f4b48c9e updated for version 7.1-322 diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -3515,6 +3515,10 @@ line({expr}) The result is a Number, whi returned) w0 first line visible in current window w$ last line visible in current window + v In Visual mode: the start of the Visual area (the + cursor is the end). When not in Visual mode + returns the cursor position. Differs from |'<| in + that it's updated right away. Note that a mark in another file can be used. The line number then applies to another buffer. To get the column number use |col()|. To get both use diff --git a/src/eval.c b/src/eval.c --- a/src/eval.c +++ b/src/eval.c @@ -16907,9 +16907,17 @@ var2fpos(varp, dollar_lnum, fnum) name = get_tv_string_chk(varp); if (name == NULL) return NULL; - if (name[0] == '.') /* cursor */ + if (name[0] == '.') /* cursor */ return &curwin->w_cursor; - if (name[0] == '\'') /* mark */ +#ifdef FEAT_VISUAL + if (name[0] == 'v' && name[1] == NUL) /* Visual start */ + { + if (VIsual_active) + return &VIsual; + return &curwin->w_cursor; + } +#endif + if (name[0] == '\'') /* mark */ { pp = getmark_fnum(name[1], FALSE, fnum); if (pp == NULL || pp == (pos_T *)-1 || pp->lnum <= 0) diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -667,6 +667,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 322, +/**/ 321, /**/ 320,