aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/_editor.lua
diff options
context:
space:
mode:
authorbfredl <bjorn.linse@gmail.com>2022-03-09 14:26:01 +0100
committerbfredl <bjorn.linse@gmail.com>2022-03-09 15:25:06 +0100
commit5ed60804fe69e97a699ca64422f4f7f4cc20f3da (patch)
treeb01987a6afd391d65266d56865b6bba97d3e7479 /runtime/lua/vim/_editor.lua
parent2783f4cc4a410cd3b73e8cdfbdf8c859c426c6c6 (diff)
downloadrneovim-5ed60804fe69e97a699ca64422f4f7f4cc20f3da.tar.gz
rneovim-5ed60804fe69e97a699ca64422f4f7f4cc20f3da.tar.bz2
rneovim-5ed60804fe69e97a699ca64422f4f7f4cc20f3da.zip
feat(lua): handle lazy submodules in `:lua vim.` wildmenu completion
Diffstat (limited to 'runtime/lua/vim/_editor.lua')
-rw-r--r--runtime/lua/vim/_editor.lua5
1 files changed, 5 insertions, 0 deletions
diff --git a/runtime/lua/vim/_editor.lua b/runtime/lua/vim/_editor.lua
index 2251aca004..3136e36043 100644
--- a/runtime/lua/vim/_editor.lua
+++ b/runtime/lua/vim/_editor.lua
@@ -519,6 +519,8 @@ function vim._expand_pat(pat, env)
local mt = getmetatable(final_env)
if mt and type(mt.__index) == "table" then
field = rawget(mt.__index, key)
+ elseif final_env == vim and vim._submodules[key] then
+ field = vim[key]
end
end
final_env = field
@@ -545,6 +547,9 @@ function vim._expand_pat(pat, env)
if mt and type(mt.__index) == "table" then
insert_keys(mt.__index)
end
+ if final_env == vim then
+ insert_keys(vim._submodules)
+ end
table.sort(keys)