Files
outline.nvim/lua/symbols-outline/folding.lua
hedy 29ed132f07 MAJOR: Refactor configuration structure
The details of the change is documented in the readme.

If your config stops working, I'm fully responsible :)
2023-11-08 13:56:09 +08:00

28 lines
566 B
Lua

local M = {}
local cfg = require 'symbols-outline.config'
M.is_foldable = function(node)
return node.children and #node.children > 0
end
local get_default_folded = function(depth)
local fold_past = cfg.o.symbol_folding.autofold_depth
if not fold_past then
return false
else
return depth >= fold_past
end
end
M.is_folded = function(node)
if node.folded ~= nil then
return node.folded
elseif node.hovered and cfg.o.symbol_folding.auto_unfold_hover then
return false
else
return get_default_folded(node.depth)
end
end
return M