view src/testdir/test87.ok @ 4627:18ba89e06fab v7.3.1061

updated for version 7.3.1061 Problem: Python: Dictionary is not standard. Solution: Python patch 20: Add standard methods and fields. (ZyX)
author Bram Moolenaar <bram@vim.org>
date Thu, 30 May 2013 13:01:18 +0200
parents 90beab957ba9
children e4e48d4ee040
line wrap: on
line source

start:
[1, 'as''d', [1, 2, function('strlen'), {'a': 1}]]
[1, 2, function('strlen'), {'a': 1}]
Vim(put):E684:
[0, 'as''d', [1, 2, function('strlen'), {'a': 1}]]
[0, function('strlen'), [1, 2, function('strlen'), {'a': 1}]]
[b'-1', b'0', b'1', b'b']
[-1, <vim.dictionary object at >, <vim.list object at >, b'asd']
[(b'-1', <vim.dictionary object at >), (b'0', -1), (b'1', b'asd'), (b'b', <vim.list object at >)]
'-1' : {'a': 1}
'0' : -1
'1' : 'asd'
'b' : [1, 2, function('strlen')]
[0, function('strlen')]
[3]
[1, 2, function('strlen')]
[1, 2, function('strlen')]
1
'asd'
2
True
False
True
False
[b'0']
{'0': -1}
(b'', -1)
None
[]
[0, 1, 2, 3]
[0, 1, 2, 3]
[0, 1, 3]
[0, 1]
[0, 1]
[0, 1]
[0, 1, 2, 3]
[0, 1, 2, 3]
[0, 2, 3]
[2, 3]
[2, 3]
[2, 3]
['a', 0, 1, 2, 3]
[0, 'b', 2, 3]
[0, 1, 'c']
[0, 1, 2, 3, 'd']
[0, 1, 2, 'e', 3]
['f', 2, 3]
[0, 1, 'g', 2, 3]
['h']
[0, 1, 2, 3]
[function('New'), function('DictNew'), 'NewStart', 1, 2, 3, 'NewEnd']
[function('New'), function('DictNew'), 'NewStart', 1, 2, 3, 'NewEnd', 'DictNewStart', 1, 2, 3, 'DictNewEnd', {'a': 'b'}]
[function('New'), function('DictNew'), 'NewStart', 1, 2, 3, 'NewEnd', 'DictNewStart', 1, 2, 3, 'DictNewEnd', {'a': 'b'}, 'New']
Vim(py3):E725:
Vim(py3):E117:
[0.0, 0.0]
KeyError
TypeError
TypeError
ValueError
TypeError
TypeError
KeyError
KeyError
d : locked:0;scope:0
dl : locked:1;scope:0
v: : locked:2;scope:1
g: : locked:0;scope:2
d:{'abc': 1}
dl:{'def': 1}
l : locked:0
ll : locked:1
l:[0]
ll:[1]
[0, 1, 2]
['a', 'b']
['c', 1]
['d', ['e']]
0.0
"\0":	Vim(let):E859:
{"\0": 1}:	Vim(let):E859:
undefined_name:	Vim(let):Trace
vim:	Vim(let):E859:
[1]
[1, 10, 11, 10, 11, 10, 11, 10, 11, 10, 11, 10, 1]
Abc
bac
def
bar
jkl
>>> paste
  p/gopts1: False
  p/wopts1! KeyError
  inv: 2! KeyError
  wopts1! KeyError
  wopts2! KeyError
  wopts3! KeyError
  p/bopts1! KeyError
  inv: 2! KeyError
  bopts1! KeyError
  bopts2! KeyError
  bopts3! KeyError
  G: 1
  W: 1:1 2:1 3:1 4:1
  B: 1:1 2:1 3:1 4:1
  del wopts3! KeyError
  del bopts3! KeyError
  G: 1
  W: 1:1 2:1 3:1 4:1
  B: 1:1 2:1 3:1 4:1
>>> previewheight
  p/gopts1: 12
  inv: 'a'! TypeError
  p/wopts1! KeyError
  inv: 'a'! KeyError
  wopts1! KeyError
  wopts2! KeyError
  wopts3! KeyError
  p/bopts1! KeyError
  inv: 'a'! KeyError
  bopts1! KeyError
  bopts2! KeyError
  bopts3! KeyError
  G: 5
  W: 1:5 2:5 3:5 4:5
  B: 1:5 2:5 3:5 4:5
  del wopts3! KeyError
  del bopts3! KeyError
  G: 5
  W: 1:5 2:5 3:5 4:5
  B: 1:5 2:5 3:5 4:5
>>> operatorfunc
  p/gopts1: b''
  inv: 2! TypeError
  p/wopts1! KeyError
  inv: 2! KeyError
  wopts1! KeyError
  wopts2! KeyError
  wopts3! KeyError
  p/bopts1! KeyError
  inv: 2! KeyError
  bopts1! KeyError
  bopts2! KeyError
  bopts3! KeyError
  G: 'A'
  W: 1:'A' 2:'A' 3:'A' 4:'A'
  B: 1:'A' 2:'A' 3:'A' 4:'A'
  del wopts3! KeyError
  del bopts3! KeyError
  G: 'A'
  W: 1:'A' 2:'A' 3:'A' 4:'A'
  B: 1:'A' 2:'A' 3:'A' 4:'A'
>>> number
  p/gopts1! KeyError
  inv: 0! KeyError
  gopts1! KeyError
  p/wopts1: False
  p/bopts1! KeyError
  inv: 0! KeyError
  bopts1! KeyError
  bopts2! KeyError
  bopts3! KeyError
  G: 0
  W: 1:1 2:1 3:0 4:0
  B: 1:1 2:1 3:0 4:0
  del wopts3! ValueError
  del bopts3! KeyError
  G: 0
  W: 1:1 2:1 3:0 4:0
  B: 1:1 2:1 3:0 4:0
>>> numberwidth
  p/gopts1! KeyError
  inv: -100! KeyError
  gopts1! KeyError
  p/wopts1: 8
  inv: -100! error
  p/bopts1! KeyError
  inv: -100! KeyError
  bopts1! KeyError
  bopts2! KeyError
  bopts3! KeyError
  G: 8
  W: 1:3 2:5 3:2 4:8
  B: 1:3 2:5 3:2 4:8
  del wopts3! ValueError
  del bopts3! KeyError
  G: 8
  W: 1:3 2:5 3:2 4:8
  B: 1:3 2:5 3:2 4:8
>>> colorcolumn
  p/gopts1! KeyError
  inv: 'abc'! KeyError
  gopts1! KeyError
  p/wopts1: b''
  inv: 'abc'! error
  p/bopts1! KeyError
  inv: 'abc'! KeyError
  bopts1! KeyError
  bopts2! KeyError
  bopts3! KeyError
  G: ''
  W: 1:'+2' 2:'+3' 3:'+1' 4:''
  B: 1:'+2' 2:'+3' 3:'+1' 4:''
  del wopts3! ValueError
  del bopts3! KeyError
  G: ''
  W: 1:'+2' 2:'+3' 3:'+1' 4:''
  B: 1:'+2' 2:'+3' 3:'+1' 4:''
>>> statusline
  p/gopts1: b''
  inv: 0! TypeError
  p/wopts1: None
  inv: 0! TypeError
  p/bopts1! KeyError
  inv: 0! KeyError
  bopts1! KeyError
  bopts2! KeyError
  bopts3! KeyError
  G: '1'
  W: 1:'2' 2:'4' 3:'1' 4:'1'
  B: 1:'2' 2:'4' 3:'1' 4:'1'
  del bopts3! KeyError
  G: '1'
  W: 1:'2' 2:'1' 3:'1' 4:'1'
  B: 1:'2' 2:'1' 3:'1' 4:'1'
>>> autoindent
  p/gopts1! KeyError
  inv: 2! KeyError
  gopts1! KeyError
  p/wopts1! KeyError
  inv: 2! KeyError
  wopts1! KeyError
  wopts2! KeyError
  wopts3! KeyError
  p/bopts1: False
  G: 0
  W: 1:0 2:1 3:0 4:1
  B: 1:0 2:1 3:0 4:1
  del wopts3! KeyError
  del bopts3! ValueError
  G: 0
  W: 1:0 2:1 3:0 4:1
  B: 1:0 2:1 3:0 4:1
>>> shiftwidth
  p/gopts1! KeyError
  inv: 3! KeyError
  gopts1! KeyError
  p/wopts1! KeyError
  inv: 3! KeyError
  wopts1! KeyError
  wopts2! KeyError
  wopts3! KeyError
  p/bopts1: 8
  G: 8
  W: 1:0 2:2 3:8 4:1
  B: 1:0 2:2 3:8 4:1
  del wopts3! KeyError
  del bopts3! ValueError
  G: 8
  W: 1:0 2:2 3:8 4:1
  B: 1:0 2:2 3:8 4:1
>>> omnifunc
  p/gopts1! KeyError
  inv: 1! KeyError
  gopts1! KeyError
  p/wopts1! KeyError
  inv: 1! KeyError
  wopts1! KeyError
  wopts2! KeyError
  wopts3! KeyError
  p/bopts1: b''
  inv: 1! TypeError
  G: ''
  W: 1:'A' 2:'B' 3:'' 4:'C'
  B: 1:'A' 2:'B' 3:'' 4:'C'
  del wopts3! KeyError
  del bopts3! ValueError
  G: ''
  W: 1:'A' 2:'B' 3:'' 4:'C'
  B: 1:'A' 2:'B' 3:'' 4:'C'
>>> preserveindent
  p/gopts1! KeyError
  inv: 2! KeyError
  gopts1! KeyError
  p/wopts1! KeyError
  inv: 2! KeyError
  wopts1! KeyError
  wopts2! KeyError
  wopts3! KeyError
  p/bopts1: False
  G: 0
  W: 1:0 2:1 3:0 4:1
  B: 1:0 2:1 3:0 4:1
  del wopts3! KeyError
  del bopts3! ValueError
  G: 0
  W: 1:0 2:1 3:0 4:1
  B: 1:0 2:1 3:0 4:1
>>> path
  p/gopts1: b'.,/usr/include,,'
  inv: 0! TypeError
  p/wopts1! KeyError
  inv: 0! KeyError
  wopts1! KeyError
  wopts2! KeyError
  wopts3! KeyError
  p/bopts1: None
  inv: 0! TypeError
  G: '.,,'
  W: 1:'.,,' 2:',,' 3:'.,,' 4:'.'
  B: 1:'.,,' 2:',,' 3:'.,,' 4:'.'
  del wopts3! KeyError
  G: '.,,'
  W: 1:'.,,' 2:',,' 3:'.,,' 4:'.,,'
  B: 1:'.,,' 2:',,' 3:'.,,' 4:'.,,'
First line
First line
def
First line
Second line
Third line
(7, 2)
<buffer test87.in><buffer >
baz
bar
Second line
Third line
foo
1:BufFilePre:1
1:BufFilePost:1
testdir/foo
5:BufFilePre:5
5:BufFilePost:5
testdir/bar
1:BufFilePre:1
1:BufFilePost:1
testdir/test87.in
valid: b:False, cb:True
i:<buffer test87.in>
i2:<buffer test87.in>
i:<buffer a>
i3:<buffer test87.in>
1:<buffer test87.in>=<buffer test87.in>
8:<buffer a>=<buffer a>
9:<buffer b>=<buffer b>
10:<buffer c>=<buffer c>
4
i4:<buffer test87.in>
i4:<buffer test87.in>
StopIteration
Number of tabs: 4
Current tab pages:
  <tabpage 0>(1): 1 windows, current is <window object (unknown)>
  Windows:
    <window object (unknown)>(1): displays buffer <buffer test87.in>; cursor is at (37, 0)
  <tabpage 1>(2): 1 windows, current is <window object (unknown)>
  Windows:
    <window object (unknown)>(1): displays buffer <buffer 0>; cursor is at (1, 0)
  <tabpage 2>(3): 2 windows, current is <window object (unknown)>
  Windows:
    <window object (unknown)>(1): displays buffer <buffer a.1>; cursor is at (1, 0)
    <window object (unknown)>(2): displays buffer <buffer 1>; cursor is at (1, 0)
  <tabpage 3>(4): 4 windows, current is <window 0>
  Windows:
    <window 0>(1): displays buffer <buffer c.2>; cursor is at (1, 0)
    <window 1>(2): displays buffer <buffer b.2>; cursor is at (1, 0)
    <window 2>(3): displays buffer <buffer a.2>; cursor is at (1, 0)
    <window 3>(4): displays buffer <buffer 2>; cursor is at (1, 0)
Number of windows in current tab page: 4
Current tab page: <tabpage 3>
Current window: <window 0>: <window 0> is <window 0>
Current buffer: <buffer c.2>: <buffer c.2> is <buffer c.2> is <buffer c.2>
ValueError at assigning foreign tab window
Type error at assigning None to vim.current.window
Type error at assigning None to vim.current.tabpage
Type error at assigning None to vim.current.buffer
Current tab page: <tabpage 2>
Current window: <window 0>
Current buffer: <buffer test87.in>
Current line: 'Type error at assigning None to vim.current.buffer'
w.valid: [True, False]
t.valid: [True, False, True, False]
vim.vars:Dictionary:True
vim.options:Options:True
vim.bindeval("{}"):Dictionary:True
vim.bindeval("[]"):List:True
vim.bindeval("function('tr')"):Function:True
vim.current.buffer:Buffer:True
vim.current.range:Range:True
vim.current.window:Window:True
vim.current.tabpage:TabPage:True
current:__dir__,buffer,line,range,tabpage,window
buffer:__dir__,append,mark,name,number,options,range,valid,vars
window:__dir__,buffer,col,cursor,height,number,options,row,tabpage,valid,vars
tabpage:__dir__,number,valid,vars,window,windows
range:__dir__,append,end,start
dictionary:__dir__,get,has_key,items,keys,locked,pop,popitem,scope,update,values
list:__dir__,extend,locked
function:__call__,__dir__,softspace
output:__dir__,flush,softspace,write,writelines
{}
{'a': 1}
{'a': 1}
'
abcdef
line  :
abcdef
abc
line  :
abc'
['a', 'dup_a']
(<class 'vim.error'>, error('abc',))
(<class 'vim.error'>, error('def',))
(<class 'vim.error'>, error('ghi',))
(<class 'vim.error'>, error('Vim(echoerr):jkl',))
(<class 'vim.error'>, error('Vim:E492: Not an editor command: xxx_non_existent_command_xxx',))
(<class 'vim.error'>, error('Vim:E492: Not an editor command: xxx_non_existent_command_xxx',))