local on_attach = require('myConfig.exports').on_attach require("rust-tools").setup { server = { cmd = { vim.g.rust_analyzer_path }, settings = { ["rust-analyzer"] = { checkOnSave = { command = "clippy", }, experimental = { procAttrMacros = true, }, }, }, on_attach = on_attach, }, } -- TODO: setup nvim-cmp completion score require("clangd_extensions").setup { server = { cmd = { vim.g.clangd_path }, } } require("neodev").setup({}) -- Refactoring require("refactoring").setup {} -- Null LSP local null_ls = require("null-ls") null_ls.setup({ sources = { null_ls.builtins.code_actions.gitrebase, null_ls.builtins.code_actions.gitsigns, null_ls.builtins.code_actions.refactoring.with { filetypes = { "typescript", "javascript", "lua", "c", "cpp", "go", "python", "java", "php", "ruby" }, }, null_ls.builtins.code_actions.shellcheck, null_ls.builtins.code_actions.statix, null_ls.builtins.diagnostics.deadnix, null_ls.builtins.diagnostics.ruff, null_ls.builtins.diagnostics.shellcheck, null_ls.builtins.diagnostics.statix, null_ls.builtins.diagnostics.vale.with { filetypes = { "markdown", "pandoc", "rst", "tex", "asciidoc" }, }, null_ls.builtins.formatting.alejandra, null_ls.builtins.formatting.black, null_ls.builtins.formatting.ruff, null_ls.builtins.formatting.shfmt, null_ls.builtins.formatting.taplo, }, on_attach = on_attach, }) -- Vim Pandoc vim.g["pandoc#formatting#equalprg"] = "pandoc -t markdown --wrap=preserve" vim.g["pandoc#formatting#extra_equalprg"] = "--reference-links --reference-location=section" -- Actions preview require("actions-preview").setup()