aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/nvim
diff options
context:
space:
mode:
Diffstat (limited to 'nvim')
-rw-r--r--nvim/.config/nvim/lua/tobyvin/lsp/handlers.lua2
-rw-r--r--nvim/.config/nvim/lua/tobyvin/plugins/crates.lua19
-rw-r--r--nvim/.config/nvim/lua/tobyvin/plugins/rust-tools.lua7
3 files changed, 16 insertions, 12 deletions
diff --git a/nvim/.config/nvim/lua/tobyvin/lsp/handlers.lua b/nvim/.config/nvim/lua/tobyvin/lsp/handlers.lua
index a0ad173..80c336f 100644
--- a/nvim/.config/nvim/lua/tobyvin/lsp/handlers.lua
+++ b/nvim/.config/nvim/lua/tobyvin/lsp/handlers.lua
@@ -73,7 +73,7 @@ M.setup = function()
vim.bo[bufnr].tagfunc = "v:lua.vim.lsp.tagfunc"
end
- utils.hover.register(vim.lsp.buf.hover, { buffer = bufnr, priority = 1 })
+ utils.hover.register(vim.lsp.buf.hover, { desc = "lsp", buffer = bufnr, priority = 1 })
vim.keymap.set("n", "<C-k>", vim.lsp.buf.signature_help, { desc = "Signature Help", buffer = bufnr })
vim.keymap.set("n", "gd", vim.lsp.buf.definition, { desc = "Definition", buffer = bufnr })
diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/crates.lua b/nvim/.config/nvim/lua/tobyvin/plugins/crates.lua
index 1a18bfb..841f04a 100644
--- a/nvim/.config/nvim/lua/tobyvin/plugins/crates.lua
+++ b/nvim/.config/nvim/lua/tobyvin/plugins/crates.lua
@@ -15,20 +15,17 @@ M.setup = function()
})
vim.api.nvim_create_autocmd("LspAttach", {
- group = vim.api.nvim_create_augroup("tobyvin_crates", { clear = true }),
+ group = vim.api.nvim_create_augroup("tobyvin_crates", { clear = true }),
pattern = "*/Cargo.toml",
desc = "setup crates",
- callback = function()
+ callback = function(args)
utils.documentation.register("toml", crates.open_documentation)
-
- local original = vim.lsp.handlers["textDocument/hover"]
- vim.lsp.handlers["textDocument/hover"] = function(...)
- if crates.popup_available() then
- crates.show_popup()
- else
- original(...)
- end
- end
+ utils.hover.register(crates.show_popup, {
+ enabled = crates.popup_available,
+ desc = "crates",
+ buffer = args.buf,
+ priority = 10,
+ })
end,
})
end
diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/rust-tools.lua b/nvim/.config/nvim/lua/tobyvin/plugins/rust-tools.lua
index c7e9e72..458e0db 100644
--- a/nvim/.config/nvim/lua/tobyvin/plugins/rust-tools.lua
+++ b/nvim/.config/nvim/lua/tobyvin/plugins/rust-tools.lua
@@ -68,6 +68,7 @@ M.setup = function()
local open_cargo_toml = rust_tools.open_cargo_toml.open_cargo_toml
local external_docs = rust_tools.external_docs.open_external_docs
local expand_macro = rust_tools.expand_macro.expand_macro
+ local hover_actions = rust_tools.hover_actions.hover_actions
vim.keymap.set("n", "<leader>dd", debuggables, { desc = "Debuggables", buffer = bufnr })
vim.keymap.set("n", "<leader>r", runnables, { desc = "Runnables", buffer = bufnr })
@@ -75,10 +76,16 @@ M.setup = function()
vim.keymap.set("n", "<leader>le", expand_macro, { desc = "Expand macro", buffer = bufnr })
utils.documentation.register("rust", external_docs)
+ utils.hover.register(hover_actions, { desc = "rust-tools hover actions", buffer = bufnr, priority = 10 })
end,
})
rust_tools.setup({
+ tools = {
+ hover_actions = {
+ border = "single",
+ },
+ },
server = lsp.configs["rust-analyzer"],
dap = {
adapter = require("rust-tools.dap").get_codelldb_adapter(M.codelldb, M.liblldb),