From 5629b6dafee0acb2e1550e1facfef86c335eab9a Mon Sep 17 00:00:00 2001 From: charburgx Date: Wed, 17 Aug 2022 17:13:03 -0500 Subject: [PATCH] fix: Incorporate nesting depth in hover highlight --- lua/symbols-outline/parser.lua | 2 ++ lua/symbols-outline/writer.lua | 12 +++++++----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/lua/symbols-outline/parser.lua b/lua/symbols-outline/parser.lua index 9fa5f4c..fe2f8d1 100644 --- a/lua/symbols-outline/parser.lua +++ b/lua/symbols-outline/parser.lua @@ -253,6 +253,8 @@ function M.get_lines(flattened_outline_items) local hl_end = #string_prefix + #node.icon local hl_type = config.options.symbols[symbols.kinds[node.kind]].hl table.insert(hl_info, { node_line, hl_start, hl_end, hl_type }) + + node.prefix_length = #string_prefix + #node.icon + 1 end return lines, hl_info end diff --git a/lua/symbols-outline/writer.lua b/lua/symbols-outline/writer.lua index ce9eff6..e119940 100644 --- a/lua/symbols-outline/writer.lua +++ b/lua/symbols-outline/writer.lua @@ -74,11 +74,13 @@ M.add_hover_highlights = function(bufnr, nodes) end local marker_fac = (config.options.fold_markers and 1) or 0 - ui.add_hover_highlight( - bufnr, - node.line_in_outline - 1, - (node.depth + marker_fac) * 2 - ) + if node.prefix_length then + ui.add_hover_highlight( + bufnr, + node.line_in_outline - 1, + node.prefix_length + ) + end ::continue:: end end