forked from aniani/vim
Problem: Using ":call dict.func()" where the function is a partial does
not work. Using "dict.func()" where the function does not take a
Dictionary does not work.
Solution: Handle partial properly in ":call". (Yasuhiro Matsumoto)
198 lines
3.7 KiB
Plaintext
198 lines
3.7 KiB
Plaintext
start:
|
|
[1, 'as''d', [1, 2, function('strlen')], {'a': 1}]
|
|
{'a': 1}
|
|
1
|
|
Vim(put):E684:
|
|
[1, 'as''d', [1, 2, function('strlen')], {'a': 1}]
|
|
['as''d', [1, 2, function('strlen')], {'a': 1}]
|
|
[1, 'as''d', [1, 2, function('strlen')]]
|
|
[1, 'as''d', [1, 2, function('strlen')], {'a': 1}]
|
|
[]
|
|
101101
|
|
{'1': 'asd', 'b': [1, 2, function('strlen')], '-1': {'a': 1}}asd
|
|
['-1', '1', 'b']
|
|
['asd', [1, 2, function('strlen')], {'a': 1}]
|
|
1:'asd'
|
|
b:[1, 2, function('strlen')]
|
|
-1:{'a': 1}
|
|
Vim(call):E737: 3
|
|
{'c': 'ccc', '1': 99, 'b': [1, 2, function('strlen')], '3': 33, '-1': {'a': 1}}
|
|
{'c': 'ccc', '1': 99, '3': 33, '-1': {'a': 1}}
|
|
101101
|
|
[1, 'as''d', {'a': 1}]
|
|
[4]
|
|
{'1': 99, '3': 33}
|
|
[0, 1, 2, 3]
|
|
[0, 1, 3]
|
|
[0, 1]
|
|
[0, 1]
|
|
[0, 1]
|
|
[0, 1, 2, 3]
|
|
[0, 1, 3]
|
|
[0, 3]
|
|
[3]
|
|
[3]
|
|
[3]
|
|
2
|
|
3
|
|
Vim(let):E687:
|
|
Vim(let):E688:
|
|
3000 2900 2001 1600 1501
|
|
Vim(let):E716: 1500
|
|
NONE 2999
|
|
33=999
|
|
{'33': 999}
|
|
len: 3
|
|
again: 3
|
|
xxx3
|
|
g:dict.func-4
|
|
a:function('3')
|
|
Vim(let):E698:
|
|
same list: 1
|
|
depth is 0
|
|
0000-000
|
|
ppppppp
|
|
0000-000
|
|
ppppppp
|
|
0000-000
|
|
ppppppp
|
|
depth is 1
|
|
1000-000
|
|
ppppppF
|
|
0000-000
|
|
ppppppp
|
|
0000-000
|
|
ppppppp
|
|
depth is 2
|
|
1100-100
|
|
ppFppFF
|
|
0000-000
|
|
ppppppp
|
|
0000-000
|
|
ppppppp
|
|
depth is 3
|
|
1110-110
|
|
pFFpFFF
|
|
0010-010
|
|
pFppFpp
|
|
0000-000
|
|
ppppppp
|
|
depth is 4
|
|
1111-111
|
|
FFFFFFF
|
|
0011-011
|
|
FFpFFpp
|
|
0000-000
|
|
ppppppp
|
|
Unletting:
|
|
depth is 0
|
|
0000-000
|
|
ppppppp
|
|
0000-000
|
|
ppppppp
|
|
0000-000
|
|
ppppppp
|
|
depth is 1
|
|
1000-000
|
|
ppFppFp
|
|
0000-000
|
|
ppppppp
|
|
0000-000
|
|
ppppppp
|
|
depth is 2
|
|
1100-100
|
|
pFFpFFp
|
|
0000-000
|
|
ppppppp
|
|
0000-000
|
|
ppppppp
|
|
depth is 3
|
|
1110-110
|
|
FFFFFFp
|
|
0010-010
|
|
FppFppp
|
|
0000-000
|
|
ppppppp
|
|
depth is 4
|
|
1111-111
|
|
FFFFFFp
|
|
0011-011
|
|
FppFppp
|
|
0000-000
|
|
ppppppp
|
|
Locks and commands or functions:
|
|
No :unlet after lock on dict:
|
|
Vim(unlet):E741:
|
|
{'a': 99, 'b': 100}
|
|
:unlet after lock on dict item:
|
|
did :unlet
|
|
{'b': 100}
|
|
filter() after lock on dict item:
|
|
did filter()
|
|
{'b': 100}
|
|
map() after lock on dict:
|
|
did map()
|
|
{'a': 299, 'b': 300}
|
|
No extend() after lock on dict item:
|
|
Vim(put):E741:
|
|
{'a': 99, 'b': 100}
|
|
No remove() of write-protected scope-level variable:
|
|
Vim(put):E795:
|
|
No extend() of write-protected scope-level variable:
|
|
Vim(put):E742:
|
|
No :unlet of variable in locked scope:
|
|
Vim(unlet):E741:
|
|
No :let += of locked list variable:
|
|
Vim(let):E741:
|
|
['a', 'b', 3]
|
|
[1, 2, 3, 4]
|
|
[1, 2, 3, 4]
|
|
[1, 2, 3, 4]
|
|
[1, 2, 3, 4]
|
|
[1, 2, 3, 4]
|
|
locked g:footest#x:-1
|
|
exists g:footest#x:0
|
|
g:footest#x: 1
|
|
caught a:000
|
|
caught a:000[0]
|
|
caught a:000[2]
|
|
caught a:000[3]
|
|
[1, 2, [3, 9, 5, 6], {'a': 12, '5': 8}]
|
|
['-0', 'A11', 2, 'xaaa', 4, 'foo', 'foo6', 'foo', [0, 1, 2], 'x8', [0, 1, 2], 1.5]
|
|
[1.5, [0, 1, 2], 'x8', [0, 1, 2], 'foo', 'foo6', 'foo', 4, 'xaaa', 2, 2, 'A11', '-0']
|
|
[1.5, [0, 1, 2], 'x8', [0, 1, 2], 'foo', 'foo6', 'foo', 4, 'xaaa', 2, 2, 'A11', '-0']
|
|
['-0', 'A11', 'foo', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 2, 4, [0, 1, 2], [0, 1, 2]]
|
|
[[0, 1, 2], [0, 1, 2], 4, 2, 2, 1.5, 'xaaa', 'x8', 'foo6', 'foo', 'foo', 'A11', '-0']
|
|
['-0', 'A11', 'foo', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 2, 4, [0, 1, 2], [0, 1, 2]]
|
|
['-0', 'A11', 'foo', 'foo6', 'x8', 'xaaa', 1.5, 2, 4, [0, 1, 2]]
|
|
[-1, 'one', 'two', 'three', 'four', 1.0e-15, 0.22, 7, 9, 12, 18, 22, 255]
|
|
['bar', 'BAR', 'Bar', 'Foo', 'FOO', 'foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
|
['bar', 'BAR', 'Bar', 'Foo', 'FOO', 'foo', 'FOOBAR', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
|
['BAR', 'Bar', 'FOO', 'FOOBAR', 'Foo', 'bar', 'foo', -1, 0, 0, 0.22, 1.0e-15, 12, 18, 22, 255, 7, 9, [], {}]
|
|
['aa', 'bb']
|
|
['aa', 'bb']
|
|
['', 'aa', 'bb', '']
|
|
['', '', 'aa', '', 'bb', '', '']
|
|
['aa', '', 'bb']
|
|
['', 'aa', '', 'bb', '']
|
|
['aa', '', 'bb', 'cc', '']
|
|
['a', 'b', 'c']
|
|
['', 'a', '', 'b', '', 'c', '']
|
|
1
|
|
1
|
|
0
|
|
0
|
|
1
|
|
1
|
|
[1, 2, 3, 4, 5, 1, 2, 3, 4, 5]
|
|
{'a': {'b': 'B'}}
|
|
Vim(call):E737: a
|
|
{'a': {'b': 'B'}}
|
|
[1, 2]
|
|
Vim(foldopen):E490:
|
|
|
|
|
|
Error detected while processing :
|
|
E492: Not an editor command: foobar|catch|let a = matchstr(v:exception,'^[^ ]*')|endtry
|
|
|