From c1a4d3291af014fc7031c8f9dc91adfa3125de5a Mon Sep 17 00:00:00 2001 From: Mochammad Hanif R Date: Tue, 23 Feb 2021 14:03:42 +0700 Subject: Add :CargoReload to reload cargo workspace --- lua/lspconfig/rust_analyzer.lua | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'lua') diff --git a/lua/lspconfig/rust_analyzer.lua b/lua/lspconfig/rust_analyzer.lua index 08812819..cd033a3b 100644 --- a/lua/lspconfig/rust_analyzer.lua +++ b/lua/lspconfig/rust_analyzer.lua @@ -1,5 +1,15 @@ local configs = require 'lspconfig/configs' local util = require 'lspconfig/util' +local lsp = vim.lsp + +local function reload_workspace(bufnr) + bufnr = util.validate_bufnr(bufnr) + lsp.buf_request(bufnr, 'rust-analyzer/reloadWorkspace', _, + function(err, _, result, _) + if err then error(tostring(err)) end + print("Workspace reloaded") + end) +end configs.rust_analyzer = { default_config = { @@ -20,6 +30,14 @@ configs.rust_analyzer = { ["rust-analyzer"] = {} }; }; + commands = { + CargoReload = { + function() + reload_workspace(0) + end; + description = "Reload current workspace" + } + }; docs = { package_json = "https://raw.githubusercontent.com/rust-analyzer/rust-analyzer/master/editors/code/package.json"; description = [[ @@ -34,4 +52,6 @@ See [docs](https://github.com/rust-analyzer/rust-analyzer/tree/master/docs/user# }; }; }; + +configs.rust_analyzer.reload_workspace = reload_workspace -- vim:et ts=2 sw=2 -- cgit v1.2.3-70-g09d2 From 3766e06a7e7aad13a0827d0c47583134c26a2942 Mon Sep 17 00:00:00 2001 From: Mochammad Hanif R Date: Tue, 23 Feb 2021 14:12:24 +0700 Subject: Satisfy check --- lua/lspconfig/rust_analyzer.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lua') diff --git a/lua/lspconfig/rust_analyzer.lua b/lua/lspconfig/rust_analyzer.lua index cd033a3b..3002a8cd 100644 --- a/lua/lspconfig/rust_analyzer.lua +++ b/lua/lspconfig/rust_analyzer.lua @@ -4,7 +4,7 @@ local lsp = vim.lsp local function reload_workspace(bufnr) bufnr = util.validate_bufnr(bufnr) - lsp.buf_request(bufnr, 'rust-analyzer/reloadWorkspace', _, + lsp.buf_request(bufnr, 'rust-analyzer/reloadWorkspace', nil, function(err, _, result, _) if err then error(tostring(err)) end print("Workspace reloaded") @@ -32,7 +32,7 @@ configs.rust_analyzer = { }; commands = { CargoReload = { - function() + function() reload_workspace(0) end; description = "Reload current workspace" -- cgit v1.2.3-70-g09d2 From 43c34cebda8a44faabb009ff9a7cac06b9c5c47a Mon Sep 17 00:00:00 2001 From: Mochammad Hanif R Date: Tue, 23 Feb 2021 14:16:25 +0700 Subject: Use vim..notify Co-authored-by: Peter Lithammer --- lua/lspconfig/rust_analyzer.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lua') diff --git a/lua/lspconfig/rust_analyzer.lua b/lua/lspconfig/rust_analyzer.lua index 3002a8cd..4e9494cb 100644 --- a/lua/lspconfig/rust_analyzer.lua +++ b/lua/lspconfig/rust_analyzer.lua @@ -7,7 +7,7 @@ local function reload_workspace(bufnr) lsp.buf_request(bufnr, 'rust-analyzer/reloadWorkspace', nil, function(err, _, result, _) if err then error(tostring(err)) end - print("Workspace reloaded") + vim.notify("Workspace reloaded") end) end -- cgit v1.2.3-70-g09d2 From 1657542af46066b08f3cedf2f88480a66561053e Mon Sep 17 00:00:00 2001 From: Mochammad Hanif R Date: Tue, 23 Feb 2021 15:01:05 +0700 Subject: Better context on what workspace was reloaded --- lua/lspconfig/rust_analyzer.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lua') diff --git a/lua/lspconfig/rust_analyzer.lua b/lua/lspconfig/rust_analyzer.lua index 4e9494cb..7f7ddeb5 100644 --- a/lua/lspconfig/rust_analyzer.lua +++ b/lua/lspconfig/rust_analyzer.lua @@ -7,7 +7,7 @@ local function reload_workspace(bufnr) lsp.buf_request(bufnr, 'rust-analyzer/reloadWorkspace', nil, function(err, _, result, _) if err then error(tostring(err)) end - vim.notify("Workspace reloaded") + vim.notify("Cargo workspace reloaded") end) end @@ -35,7 +35,7 @@ configs.rust_analyzer = { function() reload_workspace(0) end; - description = "Reload current workspace" + description = "Reload current cargo workspace" } }; docs = { -- cgit v1.2.3-70-g09d2