1
0
mirror of https://github.com/jdhao/nvim-config.git synced 2025-06-08 14:14:33 +02:00

filter fold level sign for statuscol.nvim

Only show fold signs for fold level below a certain level to avoid
clutter the left side columns with a lot of folding signs
This commit is contained in:
jdhao 2024-08-06 18:00:41 +02:00
parent fd6df981cd
commit f1062a3d8f
2 changed files with 24 additions and 9 deletions

View File

@ -0,0 +1,23 @@
local builtin = require("statuscol.builtin")
local ffi = require("statuscol.ffidef")
local C = ffi.C
-- only show fold level up to this level
local fold_level_limit = 2
local function foldfunc(args)
local foldinfo = C.fold_info(args.wp, args.lnum)
if foldinfo.level > fold_level_limit then
return " "
end
return builtin.foldfunc(args)
end
require("statuscol").setup {
relculright = false,
segments = {
{ text = { "%s" }, click = "v:lua.ScSa" },
{ text = { builtin.lnumfunc, " " }, click = "v:lua.ScLa" },
{ text = { foldfunc, " " }, condition = { true, builtin.not_empty }, click = "v:lua.ScFa" },
},
}

View File

@ -190,15 +190,7 @@ local plugin_specs = {
"luukvbaal/statuscol.nvim", "luukvbaal/statuscol.nvim",
opts = {}, opts = {},
config = function() config = function()
local builtin = require("statuscol.builtin") require("config.nvim-statuscol")
require("statuscol").setup {
relculright = true,
segments = {
{ text = { "%s" }, click = "v:lua.ScSa" },
{ text = { builtin.lnumfunc, " " }, click = "v:lua.ScLa" },
{ text = { builtin.foldfunc, " " }, condition = {true, builtin.not_empty}, click = "v:lua.ScFa" },
},
}
end, end,
}, },
{ {