diff options
-rw-r--r-- | src/nvim/eval.c | 4 | ||||
-rw-r--r-- | src/nvim/testdir/test_viml.vim | 18 | ||||
-rw-r--r-- | src/nvim/version.c | 2 |
3 files changed, 20 insertions, 4 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c index 598bf2c0dd..e9b1df6367 100644 --- a/src/nvim/eval.c +++ b/src/nvim/eval.c @@ -16986,9 +16986,9 @@ static char_u *find_name_end(char_u *arg, char_u **expr_start, } } else if (br_nest == 0 && mb_nest == 0 && *p == ':') { // "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); - if (len > 1 + if ((len > 1 && p[-1] != '}') || (len == 1 && vim_strchr(namespace_char, *arg) == NULL)) { break; } diff --git a/src/nvim/testdir/test_viml.vim b/src/nvim/testdir/test_viml.vim index 5d65953a9e..9f0618bd45 100644 --- a/src/nvim/testdir/test_viml.vim +++ b/src/nvim/testdir/test_viml.vim @@ -1,5 +1,5 @@ " Test various aspects of the Vim language. -" This was formerly in test49. +" Most of this was formerly in test49. "------------------------------------------------------------------------------- " Test environment {{{1 @@ -908,6 +908,22 @@ endfunc "------------------------------------------------------------------------------- +" Test 16: 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 " vim: ts=8 sw=4 tw=80 fdm=marker " vim: fdt=substitute(substitute(foldtext(),\ '\\%(^+--\\)\\@<=\\(\\s*\\)\\(.\\{-}\\)\:\ \\%(\"\ \\)\\=\\(Test\ \\d*\\)\:\\s*',\ '\\3\ (\\2)\:\ \\1',\ \"\"),\ '\\(Test\\s*\\)\\(\\d\\)\\D\\@=',\ '\\1\ \\2',\ "") diff --git a/src/nvim/version.c b/src/nvim/version.c index e0d5e984cd..7b7d711cec 100644 --- a/src/nvim/version.c +++ b/src/nvim/version.c @@ -251,7 +251,7 @@ static int included_patches[] = { // 1116, // 1115 NA // 1114, - // 1113, + 1113, 1112, // 1111, // 1110, |