diff --git a/README.md b/README.md index 3ade0996..3c787ea6 100644 --- a/README.md +++ b/README.md @@ -157,6 +157,7 @@ use { }, indent = { indent_size = 2, + level = 2, padding = 1, -- extra padding on left hand side -- indent guides with_markers = true, diff --git a/doc/neo-tree.txt b/doc/neo-tree.txt index e66325ce..fa14d24c 100644 --- a/doc/neo-tree.txt +++ b/doc/neo-tree.txt @@ -1035,6 +1035,7 @@ for each source, or just do it once in the default_component_configs section: indent_marker = "│", last_indent_marker = "└", indent_size = 2, + level = 2 }, }, }) diff --git a/lua/neo-tree/sources/common/components.lua b/lua/neo-tree/sources/common/components.lua index da85b02c..791b7c3b 100644 --- a/lua/neo-tree/sources/common/components.lua +++ b/lua/neo-tree/sources/common/components.lua @@ -389,6 +389,7 @@ M.indent = function(config, node, state) local skip_marker = state.skip_marker_at_level local indent_size = config.indent_size or 2 local padding = config.padding or 0 + local start_level = config.level or 2 local level = node.level local with_markers = config.with_markers local with_expanders = config.with_expanders == nil and file_nesting.is_enabled() @@ -403,7 +404,7 @@ M.indent = function(config, node, state) end end - if indent_size == 0 or level < 2 or not with_markers then + if indent_size == 0 or level < start_level or not with_markers then local len = indent_size * level + padding local expander = get_expander() if level == 0 or not expander then @@ -426,12 +427,12 @@ M.indent = function(config, node, state) table.insert(indent, { text = string.rep(" ", padding) }) end - for i = 1, level do + for i = start_level - 1, level do local char = "" local spaces_count = indent_size local highlight = nil - if i > 1 and not skip_marker[i] or i == level then + if i > start_level - 1 and not skip_marker[i] or i == level then spaces_count = spaces_count - 1 char = indent_marker highlight = marker_highlight