feat(nvim): switch rust-tools to rustaceanvim
This commit is contained in:
parent
a909ea3bf3
commit
838f1fb262
@ -20,6 +20,13 @@ autocmd CursorHold * lua vim.diagnostic.open_float(nil, { focusable = false })
|
||||
|
||||
vim.opt.spell = true
|
||||
vim.opt.spelllang = {'en_us'}
|
||||
vim.lsp.handlers["textDocument/publishDiagnostics"] =
|
||||
vim.lsp.with(
|
||||
vim.lsp.diagnostic.on_publish_diagnostics,
|
||||
{
|
||||
virtual_text = true,
|
||||
}
|
||||
)
|
||||
-- Completion Plugin Setup
|
||||
local cmp = require 'cmp'
|
||||
cmp.setup({
|
||||
@ -82,3 +89,8 @@ cmp.setup({
|
||||
end
|
||||
}
|
||||
})
|
||||
cmp.setup.cmdline('/', {
|
||||
sources = {
|
||||
{ name = 'buffer' },
|
||||
}
|
||||
})
|
||||
|
@ -55,7 +55,7 @@ in
|
||||
cmp-spell
|
||||
cmp-conventionalcommits
|
||||
cmp-calc
|
||||
rust-tools-nvim
|
||||
rustaceanvim
|
||||
plenary-nvim
|
||||
crates-nvim
|
||||
nvim-lspconfig
|
||||
|
30
rust.lua
30
rust.lua
@ -1,9 +1,8 @@
|
||||
local rt = require("rust-tools")
|
||||
local nvim_lsp = require 'lspconfig'
|
||||
local c = vim.lsp.protocol.make_client_capabilities()
|
||||
local deps = require("nvim-deps")
|
||||
|
||||
rt.setup({
|
||||
vim.g.rustaceanvim = {
|
||||
tools = { -- rust-tools options
|
||||
-- how to execute terminal commands
|
||||
-- options right now: termopen / quickfix / toggleterm / vimux
|
||||
@ -122,13 +121,28 @@ rt.setup({
|
||||
local keymap_opts = {buffer = bufnr}
|
||||
-- Hover actions
|
||||
-- call twice to focus
|
||||
vim.keymap.set("n", "<leader>h", rt.hover_actions.hover_actions,
|
||||
keymap_opts)
|
||||
vim.keymap.set("n", "<leader>K",
|
||||
function()
|
||||
vim.cmd.RustLsp { 'hover', 'actions' }
|
||||
end, keymap_opts)
|
||||
-- Code action groups
|
||||
vim.keymap.set("n", "<leader>as",
|
||||
rt.code_action_group.code_action_group, keymap_opts)
|
||||
vim.keymap.set('n', '<leader>c', rt.open_cargo_toml.open_cargo_toml)
|
||||
vim.keymap.set("n", "g0", vim.lsp.buf.document_symbol, keymap_opts)
|
||||
function()
|
||||
vim.cmd.RustLsp { 'hover', 'actions' }
|
||||
end, keymap_opts)
|
||||
vim.keymap.set('n', '<leader>cc',
|
||||
function()
|
||||
vim.cmd.RustLsp('openCargo')
|
||||
end, keymap_opts)
|
||||
vim.keymap.set('n', '<leader>cr',
|
||||
function()
|
||||
vim.cmd.RustLsp {'runnables', 'last' --[[ optional ]] }
|
||||
end, keymap_opts)
|
||||
vim.keymap.set('n', '<leader>cd',
|
||||
function()
|
||||
vim.cmd.RustLsp {'debuggables', 'last' --[[ optional ]] }
|
||||
end, keymap_opts)
|
||||
-- vim.keymap.set("n", "g0", vim.lsp.buf.document_symbol, keymap_opts)
|
||||
local diag_float_grp = vim.api.nvim_create_augroup(
|
||||
"DiagnosticFloat", {clear = true})
|
||||
vim.api.nvim_create_autocmd("CursorHold", {
|
||||
@ -152,4 +166,4 @@ rt.setup({
|
||||
name = "rt_lldb"
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user