From a7d60f73b1325137b34c630bc0af76fa6598ba1f Mon Sep 17 00:00:00 2001 From: Folke Lemaitre Date: Mon, 12 Jun 2023 17:41:37 +0200 Subject: [PATCH] fix(views): don't override winbar and foldenable for every view --- lua/noice/config/views.lua | 10 ++++++++++ lua/noice/util/init.lua | 12 ++++++++++++ lua/noice/view/init.lua | 4 +--- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/lua/noice/config/views.lua b/lua/noice/config/views.lua index 0cb2f85b..fb95335a 100644 --- a/lua/noice/config/views.lua +++ b/lua/noice/config/views.lua @@ -39,6 +39,8 @@ M.defaults = { -- min_width = 10, }, win_options = { + winbar = "", + foldenable = false, cursorline = true, cursorlineopt = "line", winhighlight = { @@ -111,6 +113,8 @@ M.defaults = { }, win_options = { winhighlight = { Normal = "NoicePopup", FloatBorder = "NoicePopupBorder" }, + winbar = "", + foldenable = false, }, }, hover = { @@ -176,6 +180,8 @@ M.defaults = { }, zindex = 60, win_options = { + winbar = "", + foldenable = false, winblend = 30, winhighlight = { Normal = "NoiceMini", @@ -213,6 +219,8 @@ M.defaults = { CurSearch = "", Search = "", }, + winbar = "", + foldenable = false, cursorline = false, }, }, @@ -241,6 +249,8 @@ M.defaults = { Normal = "NoiceConfirm", FloatBorder = "NoiceConfirmBorder", }, + winbar = "", + foldenable = false, }, }, } diff --git a/lua/noice/util/init.lua b/lua/noice/util/init.lua index f912708d..e8895589 100644 --- a/lua/noice/util/init.lua +++ b/lua/noice/util/init.lua @@ -63,6 +63,18 @@ function M.tag(buf, tag) end end +---@param win window +---@param options table +function M.wo(win, options) + for k, v in pairs(options) do + if vim.api.nvim_set_option_value then + vim.api.nvim_set_option_value(k, v, { scope = "local", win = win }) + else + vim.wo[win][k] = v + end + end +end + function M.debounce(ms, fn) local timer = vim.loop.new_timer() return function(...) diff --git a/lua/noice/view/init.lua b/lua/noice/view/init.lua index 94b24490..e32bd8b1 100644 --- a/lua/noice/view/init.lua +++ b/lua/noice/view/init.lua @@ -193,10 +193,8 @@ function View:content() end function View:set_win_options(win) - vim.wo[win].winbar = "" - vim.wo[win].foldenable = false if self._opts.win_options then - require("nui.utils")._.set_win_options(win, self._opts.win_options) + Util.wo(win, self._opts.win_options) end -- reset cursor on show vim.api.nvim_win_set_cursor(win, { 1, 0 })