initial commit
This commit is contained in:
28
lua/plugins/fold.lua
Normal file
28
lua/plugins/fold.lua
Normal file
@@ -0,0 +1,28 @@
|
||||
return {
|
||||
"kevinhwang91/nvim-ufo",
|
||||
dependencies = {
|
||||
"kevinhwang91/promise-async", -- required by nvim-ufo
|
||||
"nvim-treesitter/nvim-treesitter"
|
||||
},
|
||||
config = function()
|
||||
vim.opt.foldmethod = "expr"
|
||||
vim.opt.foldexpr = "v:lua.require('ufo').foldexpr()"
|
||||
vim.opt.foldlevel = 99 -- open all folds initially
|
||||
vim.opt.foldlevelstart = 99 -- set foldlevel when buffer loads
|
||||
|
||||
|
||||
local ufo = require('ufo')
|
||||
|
||||
-- Optional: keymaps for folding
|
||||
vim.keymap.set('n', 'zR', ufo.openAllFolds)
|
||||
vim.keymap.set('n', 'zM', ufo.closeAllFolds)
|
||||
vim.keymap.set('n', 'K', function()
|
||||
local winid = ufo.peekFoldedLinesUnderCursor()
|
||||
if not winid then
|
||||
vim.lsp.buf.hover()
|
||||
end
|
||||
end)
|
||||
|
||||
ufo.setup()
|
||||
end,
|
||||
}
|
||||
Reference in New Issue
Block a user