diff --git a/src/nvim/lua/vim.lua b/src/nvim/lua/vim.lua index 00f7c8a48b..090869c68e 100644 --- a/src/nvim/lua/vim.lua +++ b/src/nvim/lua/vim.lua @@ -277,6 +277,10 @@ setmetatable(vim, { __index = __index }) +-- An easier alias for commands. +vim.cmd = vim.api.nvim_command + +-- These are the vim.env/v/g/o/bo/wo variable magic accessors. do local a = vim.api local validate = vim.validate diff --git a/test/functional/lua/vim_spec.lua b/test/functional/lua/vim_spec.lua index 877d14f7e7..45818d2a99 100644 --- a/test/functional/lua/vim_spec.lua +++ b/test/functional/lua/vim_spec.lua @@ -618,4 +618,13 @@ describe('lua stdlib', function() matches("^Error executing lua: .*: Expected lua string$", pcall_err(exec_lua, 'return vim.wo[0][0].list')) end) + + it('vim.cmd', function() + exec_lua [[ + vim.cmd "autocmd BufNew * ++once lua BUF = vim.fn.expand('')" + vim.cmd "new" + ]] + eq('2', funcs.luaeval "BUF") + eq(2, funcs.luaeval "#vim.api.nvim_list_bufs()") + end) end)