refactor(rust-tools): check for client name and use different keymaps to not interfere with cmp for <C-space>

This commit is contained in:
Amaan Q 2023-01-10 14:08:55 -05:00
parent 2d4fe35af1
commit c9c6bc56f0
No known key found for this signature in database
GPG key ID: E67890ADC4227273

View file

@ -11,16 +11,7 @@ return {
-- correctly setup lspconfig for Rust 🚀 -- correctly setup lspconfig for Rust 🚀
{ {
"neovim/nvim-lspconfig", "neovim/nvim-lspconfig",
dependencies = { dependencies = { "simrat39/rust-tools.nvim" },
"simrat39/rust-tools.nvim",
init = function()
require("lazyvim.util").on_attach(function(_, buffer)
-- stylua: ignore
vim.keymap.set("n", "<C-space>", "RustHoverActions", { buffer = buffer, desc = "Hover Actions (Rust)" })
vim.keymap.set("n", "<Leader>a", "RustCodeActionGroup", { buffer = buffer, desc = "Code Action (Rust)" })
end)
end,
},
opts = { opts = {
servers = { servers = {
rust_analyzer = { rust_analyzer = {
@ -47,6 +38,13 @@ return {
}, },
setup = { setup = {
rust_analyzer = function(_, opts) rust_analyzer = function(_, opts)
require("lazyvim.util").on_attach(function(client, buffer)
if client.name == "rust_analyzer" then
-- stylua: ignore
vim.keymap.set("n", "<leader>co", "RustHoverActions", { buffer = buffer, desc = "Hover Actions (Rust)" })
vim.keymap.set("n", "<leader>cR", "RustCodeActionGroup", { buffer = buffer, desc = "Code Action (Rust)" })
end
end)
local rust_opts = { local rust_opts = {
server = vim.tbl_deep_extend("force", {}, opts, opts.server or {}), server = vim.tbl_deep_extend("force", {}, opts, opts.server or {}),
tools = { -- rust-tools options tools = { -- rust-tools options