============================================================================== mason-lspconfig troubleshooting *rustaceanvim.mason* This plugin supports automatically detecting mason.nvim codelldb installations, but not rust-analyzer. The main reason for this choice is that it mason.nvim installations of rust-analyzer will most likely have been built with a different toolchain than your project, leading to inconsistencies and possibly subtle bugs. If you want to use a mason.nvim installation anyway, you can do so by specifying the `server.cmd` setting (see |rustaceanvim.config| and |RustaceanLspClientOpts|): >lua vim.g.rustaceanvim = { server = { cmd = function() local mason_registry = require('mason-registry') local ra_binary = mason_registry.is_installed('rust-analyzer') -- This may need to be tweaked, depending on the operating system. and mason_registry.get_package('rust-analyzer'):get_install_path() .. "/rust-analyzer" or "rust-analyzer" return { ra_binary } -- You can add args to the list, such as '--log-file' end, }, } < Note that mason-lspconfig.nvim, when configured to ensure rust-analyzer is installed, assumes you are using the `nvim-lspconfig.rust_analyzer` client. Some Neovim distributions will automatically call the client's `setup` function, resulting in a conflict with this plugin. General approach to prevent mason-lspconfig from setting up `lspconfig.rust_analyzer`: >lua require('mason-lspconfig').setup_handlers { ['rust_analyzer'] = function() end, } < Using LazyVim: >lua { 'neovim/nvim-lspconfig', opts = { setup = { rust_analyzer = function() return true end, }, }, } < vim:tw=78:ts=8:noet:ft=help:norl: