Lines Matching refs:lua
5 " This test also works without the lua feature.
8 lua print("Not executed")
12 CheckFeature lua
15 " Depending on the lua version, the error messages are different.
75 " lua.eval with a number
76 lua v = vim.eval('123')
80 " lua.eval with a string
81 lua v = vim.eval('"abc"')
85 " lua.eval with a list
86 lua v = vim.eval("['a']")
90 " lua.eval with a dict
91 lua v = vim.eval("{'a':'b'}")
95 " lua.eval with a blob
96 lua v = vim.eval("0z00112233.deadbeef")
100 " lua.eval with a float
101 lua v = vim.eval('3.14')
105 " lua.eval with a bool
106 lua v = vim.eval('v:true')
109 lua v = vim.eval('v:false')
113 " lua.eval with a null
114 lua v = vim.eval('v:null')
118 call assert_fails('lua v = vim.eval(nil)',
120 call assert_fails('lua v = vim.eval(true)',
122 call assert_fails('lua v = vim.eval({})',
124 call assert_fails('lua v = vim.eval(print)',
126 call assert_fails('lua v = vim.eval(vim.buffer())',
129 lua v = nil
134 lua function hello_luaeval_lambda(a, cb) return a .. cb() end
138 lua hello_luaeval_lambda = nil
162 call assert_fails('lua vim.window().xyz = 1',
171 lua vim.window().height = 2
173 lua vim.window().height = vim.window().height + 1
181 lua vim.window().width = 2
183 lua vim.window().width = vim.window().width + 1
192 lua vim.window().line = 2
193 lua vim.window().col = 4
195 lua vim.window().line = vim.window().line + 1
196 lua vim.window().col = vim.window().col - 1
199 call assert_fails('lua vim.window().line = 10',
206 call assert_equal(has('lua'), luaeval('vim.call("has", "lua")'))
214 lua co = coroutine.create(function () print("hi") end)
217 \ ? '[string "luaeval"]:1: lua: cannot convert value'
218 \ : 'lua: cannot convert value')
219 lua co = nil
221 \ ['E117:', s:lua_53_or_later ? '\[string "luaeval"]:1: lua: call_vim_function failed'
222 \ : 'lua: call_vim_function failed'])
227 call assert_equal(has('lua'), luaeval('vim.fn.has("lua")'))
234 lua w1 = vim.window()
236 lua w2 = vim.window()
239 lua w1()
241 lua w2()
244 lua w1, w2 = nil
251 lua w1 = vim.window()
252 lua b1 = w1.buffer()
254 lua w2 = vim.window()
255 lua b2 = w2.buffer()
257 lua b1()
259 lua b2()
262 lua b1, b2, w1, w2 = nil
283 lua w = vim.window()
289 lua w = nil
311 lua bn1, bn2 = nil
337 lua vim.buffer()[1] = '3'
338 lua vim.buffer():insert('1', 0)
339 lua vim.buffer():insert('2', 1)
340 lua vim.buffer():insert('4', 10)
353 call assert_fails('lua vim.buffer():xyz()', msg)
354 call assert_fails('lua vim.buffer()[1] = {}',
364 lua vim.buffer()[2] = nil
367 call assert_fails('lua vim.buffer()[3] = nil',
389 lua bn = vim.buffer():next()
390 lua bp = vim.buffer():previous()
398 lua bn()
402 lua bp()
406 lua bn, bp = nil
413 lua b = vim.buffer()
419 lua b = nil
427 lua l = vim.eval('l')
428 lua l:add(123)
429 lua l:add('abc')
430 lua l:add(true)
431 lua l:add(false)
432 lua l:add(nil)
433 lua l:add(vim.eval("[1, 2, 3]"))
434 lua l:add(vim.eval("{'a':1, 'b':2, 'c':3}"))
439 lua l[1] = 124
440 lua l[6] = nil
441 lua l:insert('first')
442 lua l:insert('xx', 3)
443 call assert_fails('lua l:insert("xx", -20)',
448 call assert_fails('lua l:add("x")', '[string "vim chunk"]:1: list is locked')
449 call assert_fails('lua l:insert(2)', '[string "vim chunk"]:1: list is locked')
450 call assert_fails('lua l[9] = 1', '[string "vim chunk"]:1: list is locked')
454 lua ll = vim.eval('l')
468 lua l = nil
472 " See :help lua-vim
475 lua t = {3.14, 'hello', false, true, say = 'hi'}
477 lua t = nil
479 call assert_fails('lua vim.list(1)', '[string "vim chunk"]:1: table expected, got number')
480 call assert_fails('lua vim.list("x")', '[string "vim chunk"]:1: table expected, got string')
481 call assert_fails('lua vim.list(print)', '[string "vim chunk"]:1: table expected, got function')
482 call assert_fails('lua vim.list(true)', '[string "vim chunk"]:1: table expected, got boolean')
491 lua t = vim.eval('l')
492 lua table.insert(t, 10)
493 lua t[#t + 1] = 20
494 lua table.insert(t, 2, 30)
496 lua table.remove(t, 2)
498 lua t[3] = nil
500 lua removed_value = table.remove(t, 3)
502 lua t = nil
503 lua removed_value = nil
509 lua l = vim.list():add('foo'):add('bar')
510 lua str = ''
511 lua for v in l() do str = str .. v end
514 lua str, l = nil
518 lua l = vim.list():add(1):add(2)
519 lua l = l:add(l)
538 lua l = nil
545 lua d = vim.eval('d')
546 lua d[0] = 123
547 lua d[1] = "abc"
548 lua d[2] = true
549 lua d[3] = false
550 lua d[4] = vim.eval("[1, 2, 3]")
551 lua d[5] = vim.eval("{'a':1, 'b':2, 'c':3}")
559 lua d[0] = 124
560 lua d[4] = nil
564 call assert_fails('lua d[6] = 1', '[string "vim chunk"]:1: dict is locked')
568 lua d = {}
569 lua d[''] = 10
575 lua x = vim.eval('d')
576 call assert_fails("lua x[''] = 10", '[string "vim chunk"]:1: empty key')
577 lua x['a'] = nil
581 lua x = vim.eval('g:')
582 call assert_fails("lua x['min'] = vim.funcref('max')",
585 lua d = nil
589 lua t = {key1 = 'x', key2 = 3.14, key3 = true, key4 = false}
593 " Same example as in :help lua-vim.
594 lua t = {math.pi, false, say = 'hi'}
600 lua t = nil
602 call assert_fails('lua vim.dict(1)', '[string "vim chunk"]:1: table expected, got number')
603 call assert_fails('lua vim.dict("x")', '[string "vim chunk"]:1: table expected, got string')
604 call assert_fails('lua vim.dict(print)', '[string "vim chunk"]:1: table expected, got function')
605 call assert_fails('lua vim.dict(true)', '[string "vim chunk"]:1: table expected, got boolean')
611 lua d = vim.eval('d')
612 lua str = ''
613 lua for k,v in d() do str = str .. k ..':' .. v .. ',' end
616 lua str, d = nil
625 lua b = vim.blob("\x00\x00\x00\x00")
628 lua b[0], b[1], b[2], b[3] = 1, 32, 256, 0xff
630 lua b[4] = string.byte("z", 1)
633 call assert_fails('lua b[#b+1] = 0x80', '[string "vim chunk"]:1: index out of range')
634 lua b:add("12ab")
637 call assert_fails('lua b:add(nil)', '[string "vim chunk"]:1: string expected, got nil')
638 call assert_fails('lua b:add(true)', '[string "vim chunk"]:1: string expected, got boolean')
639 call assert_fails('lua b:add({})', '[string "vim chunk"]:1: string expected, got table')
640 lua b = nil
643 lua lb = vim.eval('b')
660 call assert_fails('lua lb[1] = 2', '[string "vim chunk"]:1: blob is locked')
661 call assert_fails('lua lb:add("12")', '[string "vim chunk"]:1: blob is locked')
664 lua t = {}
665 call assert_fails('lua b = vim.blob(t)',
674 lua i1 = vim.funcref"I"
675 lua i2 = vim.eval"R"
676 lua msg = "funcref|test|" .. (#i2(i1) == #i1(i2) and "OK" or "FAIL")
677 lua msg = vim.funcref"tr"(msg, "|", " ")
681 call assert_fails('lua f1 = vim.funcref("")',
683 call assert_fails('lua f1 = vim.funcref("10")',
686 call assert_fails('lua f1 = vim.funcref(fname)',
688 call assert_fails('lua vim.funcref("abc")()',
697 lua d = vim.eval"mydict"
698 lua d.len = vim.funcref"Mylen" -- assign d as 'self'
699 lua res = (d.len() == vim.funcref"len"(vim.eval"l")) and "OK" or "FAIL"
703 lua i1, i2, msg, d, res = nil
731 lua b = vim.open('XOpen1')
739 lua b = vim.open('XOpen2')()
743 lua b = nil
749 call assert_equal("hello from lua", luaeval("require('testluaplugin').hello()"))
758 lua pass_lua_callback_to_vim_from_lua_result = ""
760 lua <<EOF
794 call assert_beeps('lua vim.beep()')
804 lua co = coroutine.create(function () print("hi") end)
806 lua co = nil
810 " Test :luafile foo.lua
820 lua str, num = nil
836 lua str, num = nil
873 let x = execute('lua print("Hello\nWorld", 2)')
876 lua k = vim.buffer(vim.eval('bufnr()'))
877 lua k:insert("Hello\0World", 0)
887 lua << trim EOF
901 lua << END
904 lua <<
907 lua << trim END
910 lua << trim
913 lua << trim eof
942 lua << trim END
957 lua << trim END
967 lua << trim END
982 lua << trim END
998 call assert_fails('lua vim.g.Var1 = 20', 'variable is locked')
999 call assert_fails('lua vim.g.Var1 = Nil', 'variable is locked')
1003 lua vim.g.Var2[2] = Nil
1004 lua vim.g.Var2[3] = 21
1005 call assert_fails('lua vim.g.Var2 = Nil', 'variable is locked')
1008 call assert_fails('lua vim.g.Var2[2] = Nil', 'list is locked')
1009 call assert_fails('lua vim.g.Var2[3] = 21', 'list is locked')
1013 call assert_fails('lua vim.g.func = vim.g.TestFunc', ['E704:', 'Couldn''t add to dictionary'])
1018 lua vim.g.NonExisting = Nil
1029 lua vim.v.errmsg = 'OtherError'
1031 call assert_fails('lua vim.v.errmsg = Nil', 'variable is fixed')
1034 lua vim.v.oldfiles = vim.list({})
1037 call assert_fails('lua vim.v.argv[1] = Nil', 'list is locked')
1038 call assert_fails('lua vim.v.newvar = 1', 'Dictionary is locked')
1061 lua vim.w.wvar2 = 'paste'
1066 lua vim.w.wvar2 = vim.dict({a=10, b=20})
1070 lua vim.w.wvar7 = vim.dict({a=vim.list({1, 2}), b=20})
1074 lua vim.w.wvar2 = Nil
1102 lua vim.b.bvar2 = 'paste'
1107 lua vim.b.bvar2 = vim.dict({a=10, b=20})
1111 lua vim.b.bvar7 = vim.dict({a=vim.list({1, 2}), b=20})
1115 lua vim.b.bvar2 = Nil
1143 lua vim.t.tvar2 = 'paste'
1148 lua vim.t.tvar2 = vim.dict({a=10, b=20})
1152 lua vim.t.tvar7 = vim.dict({a=vim.list({1, 2}), b=20})
1156 lua vim.t.tvar2 = Nil
1167 lua << trim END
1176 lua << trim END