diff options
| -rw-r--r-- | ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/lsp.lua | 48 | ||||
| -rw-r--r-- | ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/ufo.lua | 56 |
2 files changed, 30 insertions, 74 deletions
diff --git a/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/lsp.lua b/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/lsp.lua index 16b95fe..c6fc158 100644 --- a/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/lsp.lua +++ b/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/lsp.lua @@ -87,11 +87,13 @@ return { require("mason").setup() require("mason-lspconfig").setup({ ensure_installed = { + "bashls", "dockerls", "docker_compose_language_service", "jdtls", "jsonls", "lua_ls", + "mutt_ls", "pyright", "ruff", }, @@ -102,6 +104,11 @@ return { capabilities = capabilities, }) end, + ["bashls"] = function() + lspconfig.bashls.setup({ + capabilities = capabilities, + }) + end, ["dockerls"] = function() lspconfig.dockerls.setup({ capabilities = capabilities, @@ -124,6 +131,24 @@ return { -- }, }) end, + ["jdtls"] = function() + lspconfig.jdtls.setup({ + capabilities = capabilities, + }) + end, + ["jsonls"] = function() + lspconfig.jsonls.setup({ + capabilities = capabilities, + settings = { + json = { + format = { + enable = true, + }, + validate = { enable = true }, + }, + }, + }) + end, ["lua_ls"] = function() lspconfig.lua_ls.setup({ capabilities = capabilities, @@ -137,6 +162,11 @@ return { }, }) end, + ["mutt_ls"] = function() + lspconfig.mutt_ls.setup({ + capabilities = capabilities, + }) + end, ["pyright"] = function() lspconfig.pyright.setup({ capabilities = capabilities, @@ -159,24 +189,6 @@ return { -- }, }) end, - ["jdtls"] = function() - lspconfig.jdtls.setup({ - capabilities = capabilities, - }) - end, - ["jsonls"] = function() - lspconfig.jsonls.setup({ - capabilities = capabilities, - settings = { - json = { - format = { - enable = true, - }, - validate = { enable = true }, - }, - }, - }) - end, }, }) diff --git a/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/ufo.lua b/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/ufo.lua deleted file mode 100644 index acce8d0..0000000 --- a/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/ufo.lua +++ /dev/null @@ -1,56 +0,0 @@ -return { - "kevinhwang91/nvim-ufo", - dependencies = { - "kevinhwang91/promise-async", - }, - config = function() - vim.o.foldcolumn = "0" -- '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 - - -- Using ufo provider need remap `zR` and `zM`. If Neovim is 0.6.1, remap yourself - vim.keymap.set("n", "zR", require("ufo").openAllFolds) - vim.keymap.set("n", "zM", require("ufo").closeAllFolds) - - -- Option 1: coc.nvim as LSP client - -- { "neoclide/coc.nvim", branch = "master", run = "yarn install --frozen-lockfile" } - -- require("ufo").setup() - - -- Option 2: nvim lsp as LSP client - -- Tell the server the capability of foldingRange, - -- Neovim hasn't added foldingRange to default capabilities, users must add it manually - local capabilities = vim.lsp.protocol.make_client_capabilities() - capabilities.textDocument.foldingRange = { - dynamicRegistration = false, - lineFoldingOnly = true, - } - local language_servers = require("lspconfig").util._available_servers() -- or list servers manually like {'gopls', 'clangd'} - for _, ls in ipairs(language_servers) do - require("lspconfig")[ls].setup({ - capabilities = capabilities, - -- you can add other fields for setting up lsp server in this table - }) - end - require("ufo").setup() - - -- Option 3: treesitter as a main provider instead - -- (Note: the `nvim-treesitter` plugin is *not* needed.) - -- ufo uses the same query files for folding (queries/<lang>/folds.scm) - -- performance and stability are better than `foldmethod=nvim_treesitter#foldexpr()` - -- require("ufo").setup({ - -- provider_selector = function(bufnr, filetype, buftype) - -- return { "treesitter", "indent" } - -- end, - -- }) - -- - - -- Option 4: disable all providers for all buffers - -- Not recommend, AFAIK, the ufo's providers are the best performance in Neovim - -- require("ufo").setup({ - -- provider_selector = function(bufnr, filetype, buftype) - -- return "" - -- end, - -- }) - end, -} |
