From c21c9096c900df69dba7a875fed44b28ef2e0d97 Mon Sep 17 00:00:00 2001 From: Bertrand Benjamin Date: Mon, 17 Oct 2022 17:51:22 +0200 Subject: [PATCH] Feat: replace lsp-install by mason and add ltex --- nvim/.config/nvim/lua/config/null-ls.lua | 11 +++++--- nvim/.config/nvim/lua/config/treesitter.lua | 2 +- nvim/.config/nvim/lua/lsp.lua | 29 ++++++++------------- nvim/.config/nvim/lua/plugins.lua | 8 ++++-- 4 files changed, 26 insertions(+), 24 deletions(-) diff --git a/nvim/.config/nvim/lua/config/null-ls.lua b/nvim/.config/nvim/lua/config/null-ls.lua index c38808f..43b2c93 100644 --- a/nvim/.config/nvim/lua/config/null-ls.lua +++ b/nvim/.config/nvim/lua/config/null-ls.lua @@ -3,6 +3,14 @@ if not null_ls_status_ok then return end +local mason_null_ls_status_ok, mason_null_ls = pcall(require, "mason-null-ls") +if not null_ls_status_ok then + return +end + +require("mason-null-ls").setup({ +}) + -- https://github.com/jose-elias-alvarez/null-ls.nvim/tree/main/lua/null-ls/builtins/formatting local formatting = null_ls.builtins.formatting -- https://github.com/jose-elias-alvarez/null-ls.nvim/tree/main/lua/null-ls/builtins/diagnostics @@ -18,6 +26,3 @@ null_ls.setup { diagnostics.yamllint, }, } - -local map = vim.api.nvim_set_keymap -map('n', 'f', 'lua vim.lsp.buf.formatting_sync()', {}) diff --git a/nvim/.config/nvim/lua/config/treesitter.lua b/nvim/.config/nvim/lua/config/treesitter.lua index dd94017..181b49a 100644 --- a/nvim/.config/nvim/lua/config/treesitter.lua +++ b/nvim/.config/nvim/lua/config/treesitter.lua @@ -3,7 +3,7 @@ if (not status) then return end ts.setup { -- One of "all", "maintained" (parsers with maintainers), or a list of languages - ensure_installed = {"python", "css", "html", "lua", "javascript", "vue", "c", "markdown", "rst"}, + ensure_installed = {"python", "css", "html", "lua", "javascript", "vue", "c", "markdown", "rst", "cpp"}, highlight = { enable = true, additional_vim_regex_highlighting = false, diff --git a/nvim/.config/nvim/lua/lsp.lua b/nvim/.config/nvim/lua/lsp.lua index 3179e09..48ef90d 100644 --- a/nvim/.config/nvim/lua/lsp.lua +++ b/nvim/.config/nvim/lua/lsp.lua @@ -1,20 +1,5 @@ -local lsp_installer = require("nvim-lsp-installer") - --- Register a handler that will be called for each installed server when it's ready (i.e. when installation is finished --- or if the server is already installed). -lsp_installer.on_server_ready(function(server) - local opts = {} - - -- (optional) Customize the options passed to the server - -- if server.name == "tsserver" then - -- opts.root_dir = function() ... end - -- end - - -- This setup() function will take the provided server configuration and decorate it with the necessary properties - -- before passing it onwards to lspconfig. - -- Refer to https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md - server:setup(opts) -end) +require("mason").setup() +require("mason-lspconfig").setup() local nvim_lsp = require('lspconfig') -- Use an on_attach function to only map the following keys @@ -46,7 +31,7 @@ local on_attach = function(client, bufnr) buf_set_keymap('n', 'dp', 'lua vim.diagnostic.goto_next()', opts) -- Get diagnostic on local list buf_set_keymap('n', 'q', 'lua vim.diagnostic.setloclist()', opts) - buf_set_keymap("n", "f", "lua vim.lsp.buf.formatting()", opts) + buf_set_keymap("n", "f", "lua vim.lsp.buf.format()", opts) buf_set_keymap('n', 'gD', 'lua vim.lsp.buf.declaration()', opts) buf_set_keymap('n', 'gd', 'lua vim.lsp.buf.definition()', opts) @@ -81,3 +66,11 @@ nvim_lsp.vuels.setup{ client.resolved_capabilities.document_formatting = true end; } + +nvim_lsp.ltex.setup{ + settings = { + ltex = { + language = "fr", + } + } +} diff --git a/nvim/.config/nvim/lua/plugins.lua b/nvim/.config/nvim/lua/plugins.lua index a80f44f..04f9da6 100644 --- a/nvim/.config/nvim/lua/plugins.lua +++ b/nvim/.config/nvim/lua/plugins.lua @@ -60,10 +60,11 @@ return packer.startup(function(use) use 'tpope/vim-repeat' use { + "williamboman/mason.nvim", + "williamboman/mason-lspconfig.nvim", 'neovim/nvim-lspconfig', requires = { "hrsh7th/cmp-nvim-lsp", - 'williamboman/nvim-lsp-installer', } } use { @@ -85,7 +86,10 @@ return packer.startup(function(use) -- for formatters and linters use { "jose-elias-alvarez/null-ls.nvim", - config = [[require('config.null-ls')]] + config = [[require('config.null-ls')]], + requires = { + "jayp0521/mason-null-ls.nvim" + } }