From 8632ac273979d5ec22ecee9c23aba18a73345584 Mon Sep 17 00:00:00 2001 From: kiyan Date: Thu, 14 Jul 2022 19:04:01 +0200 Subject: [PATCH] fix(renderer): indent markers + folder arrows should offset fixes #1421 --- lua/nvim-tree/renderer/components/padding.lua | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/lua/nvim-tree/renderer/components/padding.lua b/lua/nvim-tree/renderer/components/padding.lua index 3d7611f8..361c85e9 100644 --- a/lua/nvim-tree/renderer/components/padding.lua +++ b/lua/nvim-tree/renderer/components/padding.lua @@ -1,20 +1,21 @@ local M = {} -local function get_padding_indent_markers(depth, idx, nodes_number, markers) - local padding = "" +local function get_padding_indent_markers(depth, idx, nodes_number, markers, with_arrows, node) + local default_padding = with_arrows and (not node.nodes or depth > 0) and " " or "" + local padding = depth == 0 and default_padding or "" - if depth ~= 0 then + if depth > 0 then local rdepth = depth / 2 markers[rdepth] = idx ~= nodes_number for i = 1, rdepth do if idx == nodes_number and i == rdepth then - padding = padding .. M.config.indent_markers.icons.corner + padding = padding .. default_padding .. M.config.indent_markers.icons.corner elseif markers[i] and i == rdepth then - padding = padding .. M.config.indent_markers.icons.item + padding = padding .. default_padding .. M.config.indent_markers.icons.item elseif markers[i] then - padding = padding .. M.config.indent_markers.icons.edge + padding = padding .. default_padding .. M.config.indent_markers.icons.edge else - padding = padding .. M.config.indent_markers.icons.none + padding = padding .. default_padding .. M.config.indent_markers.icons.none end end end @@ -35,7 +36,8 @@ function M.get_padding(depth, idx, nodes_number, node, markers) local padding = "" if M.config.indent_markers.enable then - padding = padding .. get_padding_indent_markers(depth, idx, nodes_number, markers) + padding = padding + .. get_padding_indent_markers(depth, idx, nodes_number, markers, M.config.icons.show.folder_arrow, node) else padding = padding .. string.rep(" ", depth) end