97 lines
2.0 KiB
Lua
97 lines
2.0 KiB
Lua
return {
|
|
{
|
|
"neovim/nvim-lspconfig",
|
|
opts = {
|
|
servers = {
|
|
rust_analyzer = {},
|
|
taplo = {
|
|
keys = {
|
|
{
|
|
"K",
|
|
function()
|
|
if vim.fn.expand("%:t") == "Cargo.toml" and require("crates").popup_available() then
|
|
require("crates").show_popup()
|
|
else
|
|
vim.lsp.buf.hover()
|
|
end
|
|
end,
|
|
desc = "Show Crate Documentation",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
-- setup = {
|
|
-- rust_analyzer = function()
|
|
-- return true
|
|
-- end,
|
|
-- },
|
|
},
|
|
},
|
|
{
|
|
"nvim-treesitter/nvim-treesitter",
|
|
---@type TSConfig
|
|
---@diagnostic disable-next-line: missing-fields
|
|
opts = {
|
|
ensure_installed = {
|
|
"bash",
|
|
"c",
|
|
"diff",
|
|
"html",
|
|
"javascript",
|
|
"jsdoc",
|
|
"json",
|
|
"jsonc",
|
|
"lua",
|
|
"luadoc",
|
|
"luap",
|
|
"markdown",
|
|
"markdown_inline",
|
|
"python",
|
|
"query",
|
|
"regex",
|
|
"toml",
|
|
"tsx",
|
|
"typescript",
|
|
"vim",
|
|
"vimdoc",
|
|
"yaml",
|
|
"nix",
|
|
},
|
|
},
|
|
},
|
|
{
|
|
"stevearc/conform.nvim",
|
|
---@class ConformOpts
|
|
opts = {
|
|
---@type table<string, conform.FormatterUnit[]>
|
|
formatters_by_ft = {
|
|
nix = { "alejandra" },
|
|
javascript = { { "prettierd", "prettier" } },
|
|
javascriptreact = { { "prettierd", "prettier" } },
|
|
typescript = { { "prettierd", "prettier" } },
|
|
typescriptreact = { { "prettierd", "prettier" } },
|
|
yaml = { { "prettierd", "prettier" } },
|
|
css = { { "prettierd", "prettier" } },
|
|
markdown = { { "prettierd", "prettier" } },
|
|
},
|
|
},
|
|
},
|
|
{
|
|
"rush-rs/tree-sitter-asm",
|
|
},
|
|
{
|
|
"imsnif/kdl.vim",
|
|
},
|
|
{
|
|
"andreshazard/vim-freemarker",
|
|
},
|
|
{
|
|
"mrcjkb/rustaceanvim",
|
|
opts = {
|
|
server = {
|
|
load_vscode_settings = true,
|
|
},
|
|
},
|
|
},
|
|
}
|