diff --git a/init.lua b/init.lua index ea86b792abe..0b886bf0e6f 100644 --- a/init.lua +++ b/init.lua @@ -922,6 +922,7 @@ require('lazy').setup({ -- require 'kickstart.plugins.lint', -- require 'kickstart.plugins.autopairs', -- require 'kickstart.plugins.neo-tree', + -- require 'kickstart.plugins.statuscol', -- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps -- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua` diff --git a/lua/kickstart/plugins/statuscol.lua b/lua/kickstart/plugins/statuscol.lua new file mode 100644 index 00000000000..b864d0b4cbb --- /dev/null +++ b/lua/kickstart/plugins/statuscol.lua @@ -0,0 +1,31 @@ +-- Provide a configurable 'statuscolumn' and click handlers +return { + 'luukvbaal/statuscol.nvim', + config = function() + vim.opt.fillchars = vim.g.have_nerd_font and { foldclose = '', foldopen = '', foldsep = ' ' } or { foldclose = '˃', foldopen = '˅', foldsep = ' ' } + vim.opt.foldcolumn = '1' + + local builtin = require 'statuscol.builtin' + require('statuscol').setup { + -- configuration goes here, for example: + relculright = true, -- whether to right-align the cursor line number with 'relativenumber' set + segments = { + { + sign = { namespace = { 'diagnostic/signs' } }, + click = 'v:lua.ScSa', + }, + { + sign = { name = { '.*' }, colwidth = 1 }, -- signs like breakpoints, etc. + click = 'v:lua.ScSa', + }, + { text = { builtin.lnumfunc }, click = 'v:lua.ScLa' }, -- line number that can be configured through a few options + { + sign = { namespace = { 'gitsigns' }, colwidth = 1 }, + click = 'v:lua.ScSa', + }, + { text = { builtin.foldfunc }, click = 'v:lua.ScFa' }, -- fold column that does not print the fold depth digits + { text = { ' ' } }, -- whitespace padding + }, + } + end, +}