feat(lua): omnifunc for builting lua interpreter

also make implicit submodules "uri" and "_inspector" work with completion

this is needed for `:lua=vim.uri_<tab>` wildmenu completion
to work even before uri or _inspector functions are used.
This commit is contained in:
Björn Linse
2021-01-27 09:00:28 +01:00
committed by bfredl
parent ed05d38d9f
commit 79571b92ce
6 changed files with 79 additions and 6 deletions

View File

@@ -5,7 +5,7 @@ local eq = helpers.eq
local exec_lua = helpers.exec_lua
local get_completions = function(input, env)
return exec_lua("return {vim._expand_pat(...)}", '^' .. input, env)
return exec_lua("return {vim._expand_pat(...)}", input, env)
end
local get_compl_parts = function(parts)
@@ -107,9 +107,12 @@ describe('nlua_expand_pat', function()
end)
it('should work with lazy submodules of "vim" global', function()
eq({{ 'inspect' }, 4 },
eq({{ 'inspect', 'inspect_pos' }, 4 },
get_completions('vim.inspec'))
eq({{ 'treesitter' }, 4 },
get_completions('vim.treesi'))
eq({{ 'set' }, 11 },
get_completions('vim.keymap.se'))
end)