Mercurial > vim
comparison src/testdir/test86.in @ 3828:fd6ef931aa77 v7.3.672
updated for version 7.3.672
Problem: Not possible to lock/unlock lists in Python interface.
Solution: Add .locked and .scope attributes. (ZyX)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Fri, 21 Sep 2012 14:00:35 +0200 |
parents | e75da4a3225d |
children | 3b2a771abb39 |
comparison
equal
deleted
inserted
replaced
3827:72c860159c0f | 3828:fd6ef931aa77 |
---|---|
209 d[b'a\0b']=1 | 209 d[b'a\0b']=1 |
210 except Exception as e: | 210 except Exception as e: |
211 m.extend([e.__class__.__name__]) | 211 m.extend([e.__class__.__name__]) |
212 EOF | 212 EOF |
213 :$put =messages | 213 :$put =messages |
214 :unlet messages | |
215 :" locked and scope attributes | |
216 :let d={} | let dl={} | lockvar dl | |
217 :for s in split("d dl v: g:") | |
218 : let name=tr(s, ':', 's') | |
219 : execute 'py '.name.'=vim.bindeval("'.s.'")' | |
220 : let toput=s.' : '.join(map(['locked', 'scope'], 'v:val.":".pyeval(name.".".v:val)'), ';') | |
221 : $put =toput | |
222 :endfor | |
223 :silent! let d.abc=1 | |
224 :silent! let dl.abc=1 | |
225 :py d.locked=True | |
226 :py dl.locked=False | |
227 :silent! let d.def=1 | |
228 :silent! let dl.def=1 | |
229 :put ='d:'.string(d) | |
230 :put ='dl:'.string(dl) | |
231 :unlet d dl | |
232 : | |
233 :let l=[] | let ll=[] | lockvar ll | |
234 :for s in split("l ll") | |
235 : let name=tr(s, ':', 's') | |
236 : execute 'py '.name.'=vim.bindeval("'.s.'")' | |
237 : let toput=s.' : locked:'.pyeval(name.'.locked') | |
238 : $put =toput | |
239 :endfor | |
240 :silent! call extend(l, [0]) | |
241 :silent! call extend(ll, [0]) | |
242 :py l.locked=True | |
243 :py ll.locked=False | |
244 :silent! call extend(l, [1]) | |
245 :silent! call extend(ll, [1]) | |
246 :put ='l:'.string(l) | |
247 :put ='ll:'.string(ll) | |
248 :unlet l ll | |
214 :" | 249 :" |
215 :" pyeval() | 250 :" pyeval() |
216 :let l=pyeval('range(3)') | 251 :let l=pyeval('range(3)') |
217 :$put =string(l) | 252 :$put =string(l) |
218 :let d=pyeval('{"a": "b", "c": 1, "d": ["e"]}') | 253 :let d=pyeval('{"a": "b", "c": 1, "d": ["e"]}') |
238 :" | 273 :" |
239 :delfunc Test | 274 :delfunc Test |
240 :call garbagecollect(1) | 275 :call garbagecollect(1) |
241 :" | 276 :" |
242 :/^start:/,$wq! test.out | 277 :/^start:/,$wq! test.out |
278 :call getchar() | |
243 ENDTEST | 279 ENDTEST |
244 | 280 |
245 start: | 281 start: |