From 41714b6eb77860675d82240f8c2d5c35dac3364c Mon Sep 17 00:00:00 2001 From: andrzej Date: Wed, 18 Sep 2024 18:32:26 +0200 Subject: [PATCH] isntall nvim ufo --- nvim/.config/nvim/lazy-lock.json | 3 ++- nvim/.config/nvim/lua/options/default.lua | 13 +++++++------ nvim/.config/nvim/lua/plugins/ufo-folding.lua | 17 +++++++++++++++++ 3 files changed, 26 insertions(+), 7 deletions(-) create mode 100644 nvim/.config/nvim/lua/plugins/ufo-folding.lua diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json index ef43052..c269802 100644 --- a/nvim/.config/nvim/lazy-lock.json +++ b/nvim/.config/nvim/lazy-lock.json @@ -36,9 +36,11 @@ "nvim-treesitter-textobjects": { "branch": "master", "commit": "bf8d2ad35d1d1a687eae6c065c3d524f7ab61b23" }, "nvim-ts-autotag": { "branch": "main", "commit": "e239a560f338be31337e7abc3ee42515daf23f5e" }, "nvim-ts-context-commentstring": { "branch": "main", "commit": "375c2d86cee6674afd75b4f727ce3a80065552f7" }, + "nvim-ufo": { "branch": "main", "commit": "203c9f434feec57909ab4b1e028abeb3349b7847" }, "nvim-web-devicons": { "branch": "master", "commit": "9793801f974bba70e4ac5d7eae6c4f5659993d8e" }, "oil.nvim": { "branch": "master", "commit": "1fe476daf0b3c108cb8ee1fc1226cc282fa2c9c1" }, "plenary.nvim": { "branch": "master", "commit": "ec289423a1693aeae6cd0d503bac2856af74edaa" }, + "promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" }, "rainbow-delimiters.nvim": { "branch": "master", "commit": "5f73b24aeb94f5274c218955573153c69ce4d1ee" }, "rose-pine": { "branch": "main", "commit": "8b1fd252255a7f2c41b4192a787ab62660b29f72" }, "telescope-file-browser.nvim": { "branch": "master", "commit": "c5a14e0550699a7db575805cdb9ddc969ba0f1f5" }, @@ -47,7 +49,6 @@ "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, "telescope-zoxide": { "branch": "main", "commit": "54bfe630bad08dc9891ec78c7cf8db38dd725c97" }, "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, - "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, "tokyonight.nvim": { "branch": "main", "commit": "817bb6ffff1b9ce72cdd45d9fcfa8c9cd1ad3839" }, "trouble.nvim": { "branch": "main", "commit": "6efc446226679fda0547c0fd6a7892fd5f5b15d8" }, "twilight.nvim": { "branch": "main", "commit": "1584c0b0a979b71fd86b18d302ba84e9aba85b1b" }, diff --git a/nvim/.config/nvim/lua/options/default.lua b/nvim/.config/nvim/lua/options/default.lua index e9e9ca6..cfec7c2 100644 --- a/nvim/.config/nvim/lua/options/default.lua +++ b/nvim/.config/nvim/lua/options/default.lua @@ -41,12 +41,13 @@ vim.opt.cursorline = true -- Minimal number of screen lines to keep above and below the cursor. vim.opt.scrolloff = 20 -vim.opt.foldmethod = "expr" -vim.opt.foldexpr = "nvim_treesitter#foldexpr()" -vim.o.foldtext = "" -vim.o.fillchars = "fold: " -vim.o.foldenable = false -vim.g.markdown_folding = 1 +-- all this is being handled by ufo atm +-- vim.opt.foldmethod = "expr" +-- vim.opt.foldexpr = "nvim_treesitter#foldexpr()" +-- vim.o.foldtext = "" +-- vim.o.fillchars = "fold: " +-- vim.o.foldenable = false +-- vim.g.markdown_folding = 1 vim.opt.spelllang = "en_us" vim.opt.spell = true diff --git a/nvim/.config/nvim/lua/plugins/ufo-folding.lua b/nvim/.config/nvim/lua/plugins/ufo-folding.lua new file mode 100644 index 0000000..39ff839 --- /dev/null +++ b/nvim/.config/nvim/lua/plugins/ufo-folding.lua @@ -0,0 +1,17 @@ +return { + "kevinhwang91/nvim-ufo", + dependencies = "kevinhwang91/promise-async", + config = function() + vim.o.foldcolumn = "1" -- '0' is not bad + vim.o.foldlevel = 99 -- Using ufo provider need a large value, feel free to decrease the value + vim.o.foldlevelstart = 99 + vim.o.foldenable = true + vim.keymap.set("n", "zR", require("ufo").openAllFolds) + vim.keymap.set("n", "zM", require("ufo").closeAllFolds) + require("ufo").setup({ + provider_selector = function(bufnr, filetype, buftype) + return { "treesitter", "indent" } + end, + }) + end, +}