local lsp_utils = require('lsp-utils') local ra_config = lsp_utils.ra_config() vim.lsp.start(ra_config) vim.cmd.compiler('cargo') vim.bo.makeprg = 'cargo build --all' vim.keymap.set('n', 'cbb', ":Dispatch! cargo build" , { noremap=true, buffer=0 }) vim.keymap.set('n', 'cbc', ":Dispatch! cargo clean" , { noremap=true, buffer=0 }) vim.keymap.set('n', 'cbd', ":Dispatch! cargo doc" , { noremap=true, buffer=0 }) vim.keymap.set('n', 'cdD', ":Dispatch! cargo doc --open", { noremap=true, buffer=0 }) vim.keymap.set('n', 'cbu', ":Dispatch! cargo update" , { noremap=true, buffer=0 }) vim.api.nvim_create_autocmd({ "BufWritePre" }, { buffer = 0, callback = function() vim.lsp.buf.format({async=true}) end, }) vim.api.nvim_create_autocmd({ "BufReadPre", "BufWinEnter" }, { pattern = { "*/git/checkouts/*", "*/toolchains/*", "*cargo/registry/*" }, callback = function() vim.bo.buflisted = false end, })