diff --git a/README.md b/README.md index fd54443..e5ab7ab 100644 --- a/README.md +++ b/README.md @@ -579,6 +579,45 @@ for mason ``` +Another way to setup mason is disable navigator lsp setup and using mason setup handlers, pylsp for example + +```lua + use("williamboman/mason.nvim") + use({ + "williamboman/mason-lspconfig.nvim", + config = function() + require("mason").setup() + require("mason-lspconfig").setup_handlers({ + ["pylsp"] = function() + require("lspconfig").pylsp.setup({ + on_attach = function(client, bufnr) + require("navigator.lspclient.mapping").setup({ client = client, bufnr = bufnr }) -- setup navigator keymaps here, + require("navigator.dochighlight").documentHighlight(bufnr) + require("navigator.codeAction").code_action_prompt(bufnr) + end, + }) + end, + }) + require("mason-lspconfig").setup({}) + end, + }) + + use({ + "navigator.lua", + requires = { + { "ray-x/guihua.lua", run = "cd lua/fzy && make" }, + { "nvim-lspconfig" }, + { "nvim-treesitter/nvim-treesitter" }, + }, + config = function() + require("navigator").setup({ + mason = true, + lsp = { disable_lsp = { "pylsp" } }, -- disable pylsp setup from navigator + }) + end, + }) + +``` Please refer to [lsp_installer_config](https://github.com/ray-x/navigator.lua/blob/master/playground/init_lsp_installer.lua)