mirror of
https://github.com/neovim/neovim.git
synced 2026-01-06 11:27:26 +10:00
fix(lua): separate vim.{g,b,w,t} types #37081
Problem: When `vim.g.foo = 1`, `vim.b.foo` also appears as a completion candidate (when use emmylua_ls). Solution: Define separate types.
This commit is contained in:
@@ -410,6 +410,11 @@ vim.cmd = setmetatable({}, {
|
||||
--- @field [string] any
|
||||
--- @field [integer] vim.var_accessor
|
||||
|
||||
--- @class (private) vim.g: { [string]: any }
|
||||
--- @class (private) vim.b: vim.var_accessor
|
||||
--- @class (private) vim.w: vim.var_accessor
|
||||
--- @class (private) vim.t: vim.var_accessor
|
||||
|
||||
-- These are the vim.env/v/g/o/bo/wo variable magic accessors.
|
||||
do
|
||||
--- @param scope string
|
||||
@@ -430,11 +435,11 @@ do
|
||||
return setmetatable({}, mt)
|
||||
end
|
||||
|
||||
vim.g = make_dict_accessor('g', false)
|
||||
vim.g = make_dict_accessor('g', false) --[[@as vim.g]]
|
||||
vim.v = make_dict_accessor('v', false) --[[@as vim.v]]
|
||||
vim.b = make_dict_accessor('b')
|
||||
vim.w = make_dict_accessor('w')
|
||||
vim.t = make_dict_accessor('t')
|
||||
vim.b = make_dict_accessor('b') --[[@as vim.b]]
|
||||
vim.w = make_dict_accessor('w') --[[@as vim.w]]
|
||||
vim.t = make_dict_accessor('t') --[[@as vim.t]]
|
||||
end
|
||||
|
||||
--- @deprecated
|
||||
|
||||
Reference in New Issue
Block a user