From 1ef3b66db8caf3ae1fbcec9938d62dcd6b365698 Mon Sep 17 00:00:00 2001 From: simrat39 Date: Tue, 21 Sep 2021 19:24:26 -0700 Subject: [PATCH] feat: Allow customizing preview window background Closes #64 --- README.md | 2 ++ doc/symbols-outline.txt | 10 ++++++++++ lua/symbols-outline/config.lua | 1 + lua/symbols-outline/preview.lua | 7 +++++++ 4 files changed, 20 insertions(+) diff --git a/README.md b/README.md index 6c95958..814b291 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,7 @@ vim.g.symbols_outline = { show_numbers = false, show_relative_numbers = false, show_symbol_details = true, + preview_bg_highlight = 'Pmenu', keymaps = { -- These keymaps can be a string or a table for multiple keys close = {"", "q"}, goto_location = "", @@ -88,6 +89,7 @@ vim.g.symbols_outline = { | show_numbers | Shows numbers with the outline | boolean | false | | show_relative_numbers | Shows relative numbers with the outline | boolean | false | | show_symbol_details | Shows extra details with the symbols (lsp dependent) | boolean | true | +| preview_bg_highlight | Background color of the preview window | string | Pmenu | | keymaps | Which keys do what | table (dictionary) | [here](#default-keymaps) | | symbols | Icon and highlight config for symbol icons | table (dictionary) | scroll up | | lsp_blacklist | Which lsp clients to ignore | table (array) | {} | diff --git a/doc/symbols-outline.txt b/doc/symbols-outline.txt index 1957166..a4b7f9b 100644 --- a/doc/symbols-outline.txt +++ b/doc/symbols-outline.txt @@ -52,6 +52,7 @@ or skip this section entirely if you want to roll with the defaults. show_numbers = false, show_relative_numbers = false, show_symbol_details = true, + preview_bg_highlight = 'Pmenu', -- These keymaps can be a string or a table for multiple keys keymaps = { close = {"", "q"}, @@ -167,6 +168,15 @@ show_symbol_details Type: boolean +----------------------------------------------------------------------------- +preview_bg_highlight + + Background color of the preview window + + Default: Pmenu + + Type: string + ----------------------------------------------------------------------------- keymaps diff --git a/lua/symbols-outline/config.lua b/lua/symbols-outline/config.lua index bcb1b16..e171cd0 100644 --- a/lua/symbols-outline/config.lua +++ b/lua/symbols-outline/config.lua @@ -11,6 +11,7 @@ M.defaults = { show_numbers = false, show_relative_numbers = false, show_symbol_details = true, + preview_bg_highlight = 'Pmenu', keymaps = { -- These keymaps can be a string or a table for multiple keys close = {"", "q"}, goto_location = "", diff --git a/lua/symbols-outline/preview.lua b/lua/symbols-outline/preview.lua index bfc5bd0..8399976 100644 --- a/lua/symbols-outline/preview.lua +++ b/lua/symbols-outline/preview.lua @@ -136,6 +136,12 @@ local function setup_hover_buf() update_hover() end +local function set_bg_hl() + local winhi = "Normal:" .. config.options.preview_bg_highlight + vim.api.nvim_win_set_option(state.preview_win, "winhighlight", winhi) + vim.api.nvim_win_set_option(state.hover_win, "winhighlight", winhi) +end + local function show_preview() if state.preview_win == nil and state.preview_buf == nil then state.preview_buf = vim.api.nvim_create_buf(false, true) @@ -195,6 +201,7 @@ function M.show() show_preview() show_hover() + set_bg_hl() end function M.close()