refactor: use more modern methods for getting/setting options
This commit is contained in:
parent
0bfa381307
commit
d27bfa1f37
5 changed files with 14 additions and 22 deletions
|
|
@ -277,7 +277,7 @@ M.open_float = function(dir)
|
||||||
local winid = vim.api.nvim_open_win(bufnr, true, win_opts)
|
local winid = vim.api.nvim_open_win(bufnr, true, win_opts)
|
||||||
vim.w[winid].is_oil_win = true
|
vim.w[winid].is_oil_win = true
|
||||||
for k, v in pairs(config.float.win_options) do
|
for k, v in pairs(config.float.win_options) do
|
||||||
vim.api.nvim_win_set_option(winid, k, v)
|
vim.wo[winid][k] = v
|
||||||
end
|
end
|
||||||
local autocmds = {}
|
local autocmds = {}
|
||||||
table.insert(
|
table.insert(
|
||||||
|
|
@ -540,8 +540,8 @@ M.select = function(opts)
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
if opts.preview then
|
if opts.preview then
|
||||||
vim.api.nvim_win_set_option(0, "previewwindow", true)
|
vim.wo.previewwindow = true
|
||||||
vim.api.nvim_win_set_var(0, "oil_entry_id", entry.id)
|
vim.w.oil_entry_id = entry.id
|
||||||
vim.api.nvim_set_current_win(prev_win)
|
vim.api.nvim_set_current_win(prev_win)
|
||||||
end
|
end
|
||||||
-- Set opts.split so that for every entry after the first, we do a split
|
-- Set opts.split so that for every entry after the first, we do a split
|
||||||
|
|
|
||||||
|
|
@ -103,7 +103,7 @@ M.show = vim.schedule_wrap(function(actions, should_confirm, cb)
|
||||||
vim.bo[bufnr].filetype = "oil_preview"
|
vim.bo[bufnr].filetype = "oil_preview"
|
||||||
vim.bo[bufnr].syntax = "oil_preview"
|
vim.bo[bufnr].syntax = "oil_preview"
|
||||||
for k, v in pairs(config.preview.win_options) do
|
for k, v in pairs(config.preview.win_options) do
|
||||||
vim.api.nvim_win_set_option(winid, k, v)
|
vim.wo[winid][k] = v
|
||||||
end
|
end
|
||||||
|
|
||||||
render_lines(winid, bufnr, lines)
|
render_lines(winid, bufnr, lines)
|
||||||
|
|
|
||||||
|
|
@ -59,7 +59,7 @@ function Progress:show(opts)
|
||||||
})
|
})
|
||||||
vim.bo[self.bufnr].filetype = "oil_progress"
|
vim.bo[self.bufnr].filetype = "oil_progress"
|
||||||
for k, v in pairs(config.preview.win_options) do
|
for k, v in pairs(config.preview.win_options) do
|
||||||
vim.api.nvim_win_set_option(self.winid, k, v)
|
vim.wo[self.winid][k] = v
|
||||||
end
|
end
|
||||||
table.insert(
|
table.insert(
|
||||||
self.autocmds,
|
self.autocmds,
|
||||||
|
|
|
||||||
|
|
@ -348,12 +348,8 @@ M.add_title_to_win = function(winid, opts)
|
||||||
noautocmd = true,
|
noautocmd = true,
|
||||||
})
|
})
|
||||||
winid_map[winid] = title_winid
|
winid_map[winid] = title_winid
|
||||||
vim.api.nvim_win_set_option(
|
vim.wo[title_winid].winblend = vim.wo[winid].winblend
|
||||||
title_winid,
|
vim.bo[bufnr].bufhidden = "wipe"
|
||||||
"winblend",
|
|
||||||
vim.api.nvim_win_get_option(winid, "winblend")
|
|
||||||
)
|
|
||||||
vim.api.nvim_buf_set_option(bufnr, "bufhidden", "wipe")
|
|
||||||
|
|
||||||
local update_autocmd = vim.api.nvim_create_autocmd("BufWinEnter", {
|
local update_autocmd = vim.api.nvim_create_autocmd("BufWinEnter", {
|
||||||
desc = "Update oil floating window title when buffer changes",
|
desc = "Update oil floating window title when buffer changes",
|
||||||
|
|
@ -401,11 +397,7 @@ M.add_title_to_win = function(winid, opts)
|
||||||
end
|
end
|
||||||
vim.api.nvim_buf_set_lines(bufnr, 0, -1, true, { " " .. title .. " " })
|
vim.api.nvim_buf_set_lines(bufnr, 0, -1, true, { " " .. title .. " " })
|
||||||
vim.bo[bufnr].modified = false
|
vim.bo[bufnr].modified = false
|
||||||
vim.api.nvim_win_set_option(
|
vim.wo[title_winid].winhighlight = "Normal:FloatTitle,NormalFloat:FloatTitle"
|
||||||
title_winid,
|
|
||||||
"winhighlight",
|
|
||||||
"Normal:FloatTitle,NormalFloat:FloatTitle"
|
|
||||||
)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
---@param action oil.Action
|
---@param action oil.Action
|
||||||
|
|
@ -542,7 +534,7 @@ end
|
||||||
M.run_in_fullscreen_win = function(bufnr, callback)
|
M.run_in_fullscreen_win = function(bufnr, callback)
|
||||||
if not bufnr then
|
if not bufnr then
|
||||||
bufnr = vim.api.nvim_create_buf(false, true)
|
bufnr = vim.api.nvim_create_buf(false, true)
|
||||||
vim.api.nvim_buf_set_option(bufnr, "bufhidden", "wipe")
|
vim.bo[bufnr].bufhidden = "wipe"
|
||||||
end
|
end
|
||||||
local winid = vim.api.nvim_open_win(bufnr, false, {
|
local winid = vim.api.nvim_open_win(bufnr, false, {
|
||||||
relative = "editor",
|
relative = "editor",
|
||||||
|
|
@ -588,7 +580,7 @@ end
|
||||||
---@return nil|integer
|
---@return nil|integer
|
||||||
M.get_preview_win = function()
|
M.get_preview_win = function()
|
||||||
for _, winid in ipairs(vim.api.nvim_tabpage_list_wins(0)) do
|
for _, winid in ipairs(vim.api.nvim_tabpage_list_wins(0)) do
|
||||||
if vim.api.nvim_win_is_valid(winid) and vim.api.nvim_win_get_option(winid, "previewwindow") then
|
if vim.api.nvim_win_is_valid(winid) and vim.wo[winid].previewwindow then
|
||||||
return winid
|
return winid
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -162,7 +162,7 @@ M.set_win_options = function()
|
||||||
vim.api.nvim_win_set_var(winid, varname, prev_value)
|
vim.api.nvim_win_set_var(winid, varname, prev_value)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
vim.api.nvim_win_set_option(winid, k, v)
|
vim.wo[winid][k] = v
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
@ -172,7 +172,7 @@ M.restore_win_options = function()
|
||||||
local varname = "_oil_" .. k
|
local varname = "_oil_" .. k
|
||||||
local has_opt, opt = pcall(vim.api.nvim_win_get_var, winid, varname)
|
local has_opt, opt = pcall(vim.api.nvim_win_get_var, winid, varname)
|
||||||
if has_opt then
|
if has_opt then
|
||||||
vim.api.nvim_win_set_option(winid, k, opt)
|
vim.wo[winid][k] = opt
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
@ -535,7 +535,7 @@ M.render_buffer_async = function(bufnr, opts, callback)
|
||||||
end
|
end
|
||||||
local handle_error = vim.schedule_wrap(function(message)
|
local handle_error = vim.schedule_wrap(function(message)
|
||||||
if not preserve_undo then
|
if not preserve_undo then
|
||||||
vim.bo[bufnr].undolevels = vim.api.nvim_get_option("undolevels")
|
vim.bo[bufnr].undolevels = vim.api.nvim_get_option_value("undolevels", { scope = "global" })
|
||||||
end
|
end
|
||||||
util.render_text(bufnr, { "Error: " .. message })
|
util.render_text(bufnr, { "Error: " .. message })
|
||||||
if callback then
|
if callback then
|
||||||
|
|
@ -566,7 +566,7 @@ M.render_buffer_async = function(bufnr, opts, callback)
|
||||||
loading.set_loading(bufnr, false)
|
loading.set_loading(bufnr, false)
|
||||||
render_buffer(bufnr, { jump = true })
|
render_buffer(bufnr, { jump = true })
|
||||||
if not preserve_undo then
|
if not preserve_undo then
|
||||||
vim.bo[bufnr].undolevels = vim.api.nvim_get_option("undolevels")
|
vim.bo[bufnr].undolevels = vim.api.nvim_get_option_value("undolevels", { scope = "global" })
|
||||||
end
|
end
|
||||||
vim.bo[bufnr].modifiable = not buffers_locked and adapter.is_modifiable(bufnr)
|
vim.bo[bufnr].modifiable = not buffers_locked and adapter.is_modifiable(bufnr)
|
||||||
if callback then
|
if callback then
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue