add view.indent_markers (#1134)

This commit is contained in:
Alexander Courtis
2022-04-10 23:40:29 +10:00
committed by GitHub
parent 83fe370d52
commit d5e4f0655b
6 changed files with 72 additions and 13 deletions

View File

@@ -169,6 +169,13 @@ local migrations = {
o.actions.change_dir.global = vim.g.nvim_tree_change_dir_global == 1
end
end,
nvim_tree_indent_markers = function(o)
utils.table_create_missing(o, "renderer.indent_markers")
if o.renderer.indent_markers.enable == nil then
o.renderer.indent_markers.enable = vim.g.nvim_tree_indent_markers == 1
end
end,
}
function M.migrate_legacy_options(opts)

View File

@@ -256,7 +256,7 @@ function M.draw()
hl = {}
icon_state = _icons.get_config()
local show_arrows = vim.g.nvim_tree_indent_markers ~= 1
local show_arrows = not M.config.indent_markers.enable
and icon_state.show_folder_icon
and icon_state.show_folder_arrows
_padding.reload_padding_function()
@@ -289,4 +289,12 @@ function M.render_hl(bufnr)
end
end
function M.setup(opts)
M.config = {
indent_markers = opts.renderer.indent_markers,
}
require("nvim-tree.renderer.padding").setup(opts)
end
return M

View File

@@ -21,11 +21,11 @@ local function get_padding_indent_markers(depth, idx, tree, _, markers)
markers[rdepth] = idx ~= #tree.nodes
for i = 1, rdepth do
if idx == #tree.nodes and i == rdepth then
padding = padding .. ""
padding = padding .. M.config.indent_markers.icons.corner
elseif markers[i] then
padding = padding .. ""
padding = padding .. M.config.indent_markers.icons.edge
else
padding = padding .. " "
padding = padding .. M.config.indent_markers.icons.none
end
end
end
@@ -39,9 +39,15 @@ function M.reload_padding_function()
M.get_padding = get_padding_arrows(icon_state)
end
if vim.g.nvim_tree_indent_markers == 1 then
if M.config.indent_markers.enable then
M.get_padding = get_padding_indent_markers
end
end
function M.setup(opts)
M.config = {
indent_markers = opts.renderer.indent_markers,
}
end
return M