aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/nvim/lua/vim.lua4
-rw-r--r--test/functional/lua/vim_spec.lua13
2 files changed, 11 insertions, 6 deletions
diff --git a/src/nvim/lua/vim.lua b/src/nvim/lua/vim.lua
index 090869c68e..e7c5458102 100644
--- a/src/nvim/lua/vim.lua
+++ b/src/nvim/lua/vim.lua
@@ -374,9 +374,9 @@ do
if winnr == nil and type(k) == "number" then
return new_win_opt_accessor(k)
end
- return a.nvim_win_get_option(winnr or nil, k)
+ return a.nvim_win_get_option(winnr or 0, k)
end
- local function set(k, v) return a.nvim_win_set_option(winnr or nil, k, v) end
+ local function set(k, v) return a.nvim_win_set_option(winnr or 0, k, v) end
return make_meta_accessor(get, set)
end
vim.wo = new_win_opt_accessor(nil)
diff --git a/test/functional/lua/vim_spec.lua b/test/functional/lua/vim_spec.lua
index 22c975147f..17ffcd8d86 100644
--- a/test/functional/lua/vim_spec.lua
+++ b/test/functional/lua/vim_spec.lua
@@ -629,22 +629,27 @@ describe('lua stdlib', function()
end)
it('vim.wo', function()
- eq('', funcs.luaeval "vim.bo.filetype")
exec_lua [[
vim.api.nvim_win_set_option(0, "cole", 2)
- BUF = vim.api.nvim_create_buf(false, true)
- vim.api.nvim_buf_set_option(BUF, "modifiable", false)
+ vim.cmd "split"
+ vim.api.nvim_win_set_option(0, "cole", 2)
]]
eq(2, funcs.luaeval "vim.wo.cole")
exec_lua [[
vim.wo.conceallevel = 0
- vim.bo[BUF].modifiable = true
]]
eq(0, funcs.luaeval "vim.wo.cole")
+ eq(0, funcs.luaeval "vim.wo[0].cole")
+ eq(0, funcs.luaeval "vim.wo[1001].cole")
matches("^Error executing lua: .*: Invalid option name: 'notanopt'$",
pcall_err(exec_lua, 'return vim.wo.notanopt'))
matches("^Error executing lua: .*: Expected lua string$",
pcall_err(exec_lua, 'return vim.wo[0][0].list'))
+ eq(2, funcs.luaeval "vim.wo[1000].cole")
+ exec_lua [[
+ vim.wo[1000].cole = 0
+ ]]
+ eq(0, funcs.luaeval "vim.wo[1000].cole")
end)
it('vim.cmd', function()