UPDATED init.lue to ADD 'simrat39/rust-tools.nvim' rust tooling plugin.
This commit is contained in:
parent
acac8fe6cc
commit
0f8c06b6fd
96
init.lua
96
init.lua
|
@ -1144,6 +1144,102 @@ require('lazy').setup({
|
|||
})
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
'simrat39/rust-tools.nvim',
|
||||
dependencies = {
|
||||
'neovim/nvim-lspconfig',
|
||||
'nvim-lua/plenary.nvim',
|
||||
'mfussenegger/nvim-dap',
|
||||
},
|
||||
config = function()
|
||||
local rt = require 'rust-tools'
|
||||
|
||||
rt.setup {
|
||||
server = {
|
||||
-- Standalone file support
|
||||
standalone = true,
|
||||
|
||||
-- Pass in your existing rust_analyzer settings
|
||||
settings = {
|
||||
['rust-analyzer'] = {
|
||||
cargo = {
|
||||
allFeatures = true,
|
||||
loadOutDirsFromCheck = true,
|
||||
runBuildScripts = true,
|
||||
},
|
||||
-- Add clippy lints for better code suggestions
|
||||
checkOnSave = {
|
||||
command = 'clippy',
|
||||
extraArgs = { '--no-deps' },
|
||||
},
|
||||
procMacro = {
|
||||
enable = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
-- Configure LSP handlers
|
||||
on_attach = function(_, bufnr)
|
||||
-- Hover actions
|
||||
vim.keymap.set('n', 'K', rt.hover_actions.hover_actions, { buffer = bufnr, desc = 'Rust: Hover Actions' })
|
||||
|
||||
-- Code action groups
|
||||
vim.keymap.set('n', '<Leader>ra', rt.code_action_group.code_action_group, { buffer = bufnr, desc = 'Rust: Code [A]ction Group' })
|
||||
|
||||
-- Moving items
|
||||
vim.keymap.set('n', '<Leader>rmj', function()
|
||||
rt.move_item.move_item(false)
|
||||
end, { buffer = bufnr, desc = 'Rust: Move Item Down' })
|
||||
vim.keymap.set('n', '<Leader>rmk', function()
|
||||
rt.move_item.move_item(true)
|
||||
end, { buffer = bufnr, desc = 'Rust: Move Item Up' })
|
||||
|
||||
-- Debugging
|
||||
vim.keymap.set('n', '<Leader>rdd', rt.debuggables.debuggables, { buffer = bufnr, desc = 'Rust: [D]ebuggables' })
|
||||
vim.keymap.set('n', '<Leader>rr', rt.runnables.runnables, { buffer = bufnr, desc = 'Rust: [R]unnables' })
|
||||
|
||||
-- Expand macros
|
||||
vim.keymap.set('n', '<Leader>rem', rt.expand_macro.expand_macro, { buffer = bufnr, desc = 'Rust: [E]xpand [M]acro' })
|
||||
|
||||
-- Parent modules
|
||||
vim.keymap.set('n', '<Leader>rpp', rt.parent_module.parent_module, { buffer = bufnr, desc = 'Rust: [P]arent Module' })
|
||||
|
||||
-- Join lines
|
||||
vim.keymap.set('n', '<Leader>rj', rt.join_lines.join_lines, { buffer = bufnr, desc = 'Rust: [J]oin Lines' })
|
||||
|
||||
-- SSR (Structural Search Replace)
|
||||
vim.keymap.set('n', '<Leader>rss', rt.ssr.ssr, { buffer = bufnr, desc = 'Rust: [S]tructural [S]earch [R]eplace' })
|
||||
end,
|
||||
},
|
||||
|
||||
-- Set dap adapter if using nvim-dap
|
||||
dap = {
|
||||
adapter = {
|
||||
type = 'executable',
|
||||
command = 'lldb-vscode',
|
||||
name = 'rt_lldb',
|
||||
},
|
||||
},
|
||||
|
||||
-- Tools configuration
|
||||
tools = {
|
||||
-- Automatically set inlay hints
|
||||
autoSetHints = true,
|
||||
|
||||
-- Hover actions configuration
|
||||
hover_actions = {
|
||||
auto_focus = true,
|
||||
},
|
||||
|
||||
-- Code action groups configuration
|
||||
code_action_group = {
|
||||
auto_focus = true,
|
||||
},
|
||||
},
|
||||
}
|
||||
end,
|
||||
},
|
||||
}, {
|
||||
ui = {
|
||||
-- If you are using a Nerd Font: set icons to an empty table which will use the
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
"LuaSnip": { "branch": "master", "commit": "03c8e67eb7293c404845b3982db895d59c0d1538" },
|
||||
"blink.cmp": { "branch": "main", "commit": "cb5e346d9e0efa7a3eee7fd4da0b690c48d2a98e" },
|
||||
"conform.nvim": { "branch": "master", "commit": "372fc521f8421b7830ea6db4d6ea3bae1c77548c" },
|
||||
"crates.nvim": { "branch": "main", "commit": "73d2c590c74a0c582144987a4decb4a642755859" },
|
||||
"fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "140ac646db125904e456e42ab8b538d28f9607d7" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
|
||||
|
|
Loading…
Reference in New Issue