From 7fbe5748afdb5c768c0cf91cb5e1a57d07855a5a Mon Sep 17 00:00:00 2001 From: Toby Vincent Date: Fri, 16 Jun 2023 20:04:16 -0500 Subject: fix(rust_analyzer): use RUSTUP_HOME in library check (#2679) When checking if file is part of a library, use `RUSTUP_HOME` env variable if it is set, in the same way as `CARGO_HOME`. --- lua/lspconfig/server_configurations/rust_analyzer.lua | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'lua') diff --git a/lua/lspconfig/server_configurations/rust_analyzer.lua b/lua/lspconfig/server_configurations/rust_analyzer.lua index bc7df9cb..0c5eb0c1 100644 --- a/lua/lspconfig/server_configurations/rust_analyzer.lua +++ b/lua/lspconfig/server_configurations/rust_analyzer.lua @@ -51,7 +51,10 @@ end local function is_library(fname) local cargo_home = os.getenv 'CARGO_HOME' or util.path.join(vim.env.HOME, '.cargo') local registry = util.path.join(cargo_home, 'registry', 'src') - local toolchains = util.path.join(vim.env.HOME, '.rustup', 'toolchains') + + local rustup_home = os.getenv 'RUSTUP_HOME' or util.path.join(vim.env.HOME, '.rustup') + local toolchains = util.path.join(rustup_home, 'toolchains') + for _, item in ipairs { toolchains, registry } do if fname:sub(1, #item) == item then local clients = vim.lsp.get_active_clients { name = 'rust_analyzer' } -- cgit v1.2.3-70-g09d2