mirror of
https://github.com/folke/snacks.nvim
synced 2025-08-06 11:48:23 +00:00
feat(util): get var either from buffer or global
This commit is contained in:
parent
baf8c180d9
commit
42439123c4
1 changed files with 20 additions and 0 deletions
|
@ -197,4 +197,24 @@ function M.keycode(str)
|
||||||
return vim.api.nvim_replace_termcodes(str, true, true, true)
|
return vim.api.nvim_replace_termcodes(str, true, true, true)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- Get a buffer or global variable.
|
||||||
|
---@generic T
|
||||||
|
---@param buf? number
|
||||||
|
---@param name string
|
||||||
|
---@param default? T
|
||||||
|
---@return T
|
||||||
|
function M.var(buf, name, default)
|
||||||
|
local ok, ret = pcall(function()
|
||||||
|
return vim.b[buf or 0][name]
|
||||||
|
end)
|
||||||
|
if ok and ret ~= nil then
|
||||||
|
return ret
|
||||||
|
end
|
||||||
|
ret = vim.g[name]
|
||||||
|
if ret ~= nil then
|
||||||
|
return ret
|
||||||
|
end
|
||||||
|
return default
|
||||||
|
end
|
||||||
|
|
||||||
return M
|
return M
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue