feat(nvim): add ufo plugin for better folds

This commit is contained in:
Stefan Imhoff
2022-12-11 12:57:37 +01:00
parent 79464140d8
commit 0e1694fa9d
3 changed files with 27 additions and 0 deletions

20
nvim/after/plugin/ufo.lua Normal file
View File

@@ -0,0 +1,20 @@
-- https://github.com/kevinhwang91/nvim-ufo
local status_ok, ufo = pcall(require, "ufo")
if not status_ok then
return
end
local keymap = vim.keymap.set
local opts = { noremap = true, silent = true }
-- Options
vim.o.foldcolumn = "1"
vim.o.foldlevel = 99
vim.o.foldlevelstart = 99
vim.o.foldenable = true
ufo.setup()
-- Keymaps
keymap("n", "zR", require("ufo").openAllFolds, opts)
keymap("n", "zM", require("ufo").closeAllFolds, opts)

View File

@@ -159,6 +159,12 @@ end
local capabilities = vim.lsp.protocol.make_client_capabilities()
-- nvim-ufo - better folding
capabilities.textDocument.foldingRange = {
dynamicRegistration = false,
lineFoldingOnly = true,
}
local status_ok, cmp_nvim_lsp = pcall(require, "cmp_nvim_lsp")
if not status_ok then
return

View File

@@ -146,6 +146,7 @@ return packer.startup(function(use)
use("simrat39/symbols-outline.nvim") -- Symbols Outline
use("SmiteshP/nvim-navic") -- Statusline current context
use("kevinhwang91/nvim-bqf") -- Better Quickfix
use({ "kevinhwang91/nvim-ufo", requires = "kevinhwang91/promise-async" }) -- Better folds
-- Editing Files
use("windwp/nvim-autopairs") -- Autopairs, integrates with both cmp and treesitter