mirror of
https://github.com/vim/vim.git
synced 2025-09-26 04:04:07 -04:00
patch 7.4.1113
Problem: Using {ns} in variable name does not work. (lilydjwg) Solution: Fix recognizing colon. Add a test.
This commit is contained in:
@@ -20844,10 +20844,10 @@ find_name_end(arg, expr_start, expr_end, flags)
|
|||||||
else if (br_nest == 0 && mb_nest == 0 && *p == ':')
|
else if (br_nest == 0 && mb_nest == 0 && *p == ':')
|
||||||
{
|
{
|
||||||
/* "s:" is start of "s:var", but "n:" is not and can be used in
|
/* "s:" is start of "s:var", but "n:" is not and can be used in
|
||||||
* slice "[n:]". Also "xx:" is not a namespace. */
|
* slice "[n:]". Also "xx:" is not a namespace. But {ns}: is. */
|
||||||
len = (int)(p - arg);
|
len = (int)(p - arg);
|
||||||
if ((len == 1 && vim_strchr(NAMESPACE_CHAR, *arg) == NULL)
|
if ((len == 1 && vim_strchr(NAMESPACE_CHAR, *arg) == NULL)
|
||||||
|| len > 1)
|
|| (len > 1 && p[-1] != '}'))
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
" Test various aspects of the Vim language.
|
" Test various aspects of the Vim language.
|
||||||
" This was formerly in test49.
|
" Most of this was formerly in test49.
|
||||||
|
|
||||||
"-------------------------------------------------------------------------------
|
"-------------------------------------------------------------------------------
|
||||||
" Test environment {{{1
|
" Test environment {{{1
|
||||||
@@ -906,6 +906,20 @@ func Test_if_bar_fail()
|
|||||||
call assert_equal('acdfh-acfh', g:test15_result)
|
call assert_equal('acdfh-acfh', g:test15_result)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
"-------------------------------------------------------------------------------
|
||||||
|
" Test 90: Recognizing {} in variable name. {{{1
|
||||||
|
"-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
func Test_curlies()
|
||||||
|
let s:var = 66
|
||||||
|
let ns = 's'
|
||||||
|
call assert_equal(66, {ns}:var)
|
||||||
|
|
||||||
|
let g:a = {}
|
||||||
|
let g:b = 't'
|
||||||
|
let g:a[g:b] = 77
|
||||||
|
call assert_equal(77, g:a['t'])
|
||||||
|
endfunc
|
||||||
|
|
||||||
"-------------------------------------------------------------------------------
|
"-------------------------------------------------------------------------------
|
||||||
" Modelines {{{1
|
" Modelines {{{1
|
||||||
|
@@ -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 */
|
||||||
|
/**/
|
||||||
|
1113,
|
||||||
/**/
|
/**/
|
||||||
1112,
|
1112,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user