summaryrefslogtreecommitdiff
path: root/src/testdir/test87.in
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2012-09-21 14:00:35 +0200
committerBram Moolenaar <Bram@vim.org>2012-09-21 14:00:35 +0200
commit66b7985ec9e4924abc370636077ed33114d0327d (patch)
treed3fc6e02af7989af008caade8eff1eb53e5ad52c /src/testdir/test87.in
parent770456589e5e53507fcd32013a190b520f4fc688 (diff)
downloadvim-git-66b7985ec9e4924abc370636077ed33114d0327d.tar.gz
updated for version 7.3.672v7.3.672
Problem: Not possible to lock/unlock lists in Python interface. Solution: Add .locked and .scope attributes. (ZyX)
Diffstat (limited to 'src/testdir/test87.in')
-rw-r--r--src/testdir/test87.in35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/testdir/test87.in b/src/testdir/test87.in
index 312763c80..1d7ccedd5 100644
--- a/src/testdir/test87.in
+++ b/src/testdir/test87.in
@@ -211,6 +211,41 @@ except Exception as e:
m.extend([e.__class__.__name__])
EOF
:$put =messages
+:unlet messages
+:" locked and scope attributes
+:let d={} | let dl={} | lockvar dl
+:for s in split("d dl v: g:")
+: let name=tr(s, ':', 's')
+: execute 'py3 '.name.'=vim.bindeval("'.s.'")'
+: let toput=s.' : '.join(map(['locked', 'scope'], 'v:val.":".py3eval(name.".".v:val)'), ';')
+: $put =toput
+:endfor
+:silent! let d.abc=1
+:silent! let dl.abc=1
+:py3 d.locked=True
+:py3 dl.locked=False
+:silent! let d.def=1
+:silent! let dl.def=1
+:put ='d:'.string(d)
+:put ='dl:'.string(dl)
+:unlet d dl
+:
+:let l=[] | let ll=[] | lockvar ll
+:for s in split("l ll")
+: let name=tr(s, ':', 's')
+: execute 'py3 '.name.'=vim.bindeval("'.s.'")'
+: let toput=s.' : locked:'.py3eval(name.'.locked')
+: $put =toput
+:endfor
+:silent! call extend(l, [0])
+:silent! call extend(ll, [0])
+:py3 l.locked=True
+:py3 ll.locked=False
+:silent! call extend(l, [1])
+:silent! call extend(ll, [1])
+:put ='l:'.string(l)
+:put ='ll:'.string(ll)
+:unlet l ll
:"
:" py3eval()
:let l=py3eval('[0, 1, 2]')