fix: deal with deprecated util methods

This commit is contained in:
Folke Lemaitre 2024-11-07 15:33:32 +01:00
parent 93a5323ba6
commit d455a7f8ce
No known key found for this signature in database
GPG key ID: 41F8B1FBACAE2040
7 changed files with 123 additions and 106 deletions

View file

@ -20,11 +20,6 @@ function M.foldtext()
return ret
end
---@deprecated This is now setup by snacks.nvim
function M.statuscolumn()
return Snacks.statuscolumn()
end
---@return {fg?:string}?
function M.fg(name)
local color = M.color(name)
@ -90,4 +85,45 @@ function M.foldexpr()
return "0"
end
function M.maximize()
---@type {k:string, v:any}[]?
local maximized = nil
return Snacks.toggle({
name = "Maximize",
get = function()
return maximized ~= nil
end,
set = function(state)
if state then
maximized = {}
local function set(k, v)
table.insert(maximized, 1, { k = k, v = vim.o[k] })
vim.o[k] = v
end
set("winwidth", 999)
set("winheight", 999)
set("winminwidth", 10)
set("winminheight", 4)
vim.cmd("wincmd =")
-- `QuitPre` seems to be executed even if we quit a normal window, so we don't want that
-- `VimLeavePre` might be another consideration? Not sure about differences between the 2
vim.api.nvim_create_autocmd("ExitPre", {
once = true,
group = vim.api.nvim_create_augroup("lazyvim_restore_max_exit_pre", { clear = true }),
desc = "Restore width/height when close Neovim while maximized",
callback = function()
M.maximize.set(false)
end,
})
else
for _, opt in ipairs(maximized) do
vim.o[opt.k] = opt.v
end
maximized = nil
vim.cmd("wincmd =")
end
end,
})
end
return M