139 lines
2.3 KiB
Lua
139 lines
2.3 KiB
Lua
return {
|
|
{
|
|
"stevearc/conform.nvim",
|
|
event = "BufWritePre", -- uncomment for format on save
|
|
opts = require("configs.conform"),
|
|
},
|
|
|
|
{
|
|
"neovim/nvim-lspconfig",
|
|
config = function()
|
|
require("configs.lspconfig")
|
|
end,
|
|
},
|
|
|
|
{ import = "nvchad.blink.lazyspec" },
|
|
|
|
{
|
|
"nvim-treesitter/nvim-treesitter",
|
|
opts = {
|
|
ensure_installed = {
|
|
"vim",
|
|
"lua",
|
|
"vimdoc",
|
|
"html",
|
|
"css",
|
|
"python",
|
|
"typst",
|
|
"c_sharp", -- C# treesitter support
|
|
"cpp",
|
|
"c",
|
|
"javascript",
|
|
"typescript",
|
|
"json",
|
|
},
|
|
},
|
|
},
|
|
|
|
{
|
|
"williamboman/mason.nvim",
|
|
opts = {
|
|
ensure_installed = {
|
|
-- LSP servers
|
|
"clangd",
|
|
"typescript-language-server",
|
|
"html-lsp",
|
|
"css-lsp",
|
|
"emmet-ls",
|
|
"eslint-lsp",
|
|
"pyright",
|
|
"tinymist",
|
|
"jdtls",
|
|
"omnisharp", -- C# LSP server
|
|
|
|
-- Formatters
|
|
"prettier",
|
|
"eslint_d",
|
|
"black", -- Python formatter
|
|
"isort",
|
|
"google-java-format",
|
|
"csharpier", -- C# formatter
|
|
|
|
-- Debuggers
|
|
"netcoredbg", -- C# debugger
|
|
|
|
-- Linters
|
|
"flake8",
|
|
},
|
|
},
|
|
},
|
|
|
|
{
|
|
"williamboman/mason-lspconfig.nvim",
|
|
dependencies = {
|
|
"williamboman/mason.nvim",
|
|
},
|
|
opts = {
|
|
ensure_installed = {
|
|
"clangd",
|
|
"pyright",
|
|
"jdtls",
|
|
"ts_ls",
|
|
"html",
|
|
"cssls",
|
|
"emmet_ls",
|
|
"eslint",
|
|
"omnisharp", -- Ensure OmniSharp is installed
|
|
},
|
|
automatic_installation = true,
|
|
},
|
|
},
|
|
|
|
-- C# specific plugins
|
|
{
|
|
"Hoffs/omnisharp-extended-lsp.nvim",
|
|
ft = "cs", -- Only load for C# files
|
|
},
|
|
|
|
-- Debug support
|
|
{
|
|
"mfussenegger/nvim-dap",
|
|
dependencies = {
|
|
"rcarriga/nvim-dap-ui",
|
|
},
|
|
config = function()
|
|
require("configs.csharp") -- This will set up C# debugging
|
|
end,
|
|
},
|
|
|
|
-- Python debugging
|
|
{
|
|
"mfussenegger/nvim-dap-python",
|
|
ft = "python",
|
|
dependencies = {
|
|
"mfussenegger/nvim-dap",
|
|
"rcarriga/nvim-dap-ui",
|
|
},
|
|
config = function()
|
|
local path = require("mason-registry").get_package("debugpy"):get_install_path()
|
|
require("dap-python").setup(path .. "/venv/bin/python")
|
|
end,
|
|
},
|
|
|
|
-- Java support
|
|
{
|
|
"mfussenegger/nvim-jdtls",
|
|
ft = "java",
|
|
},
|
|
|
|
-- Enhanced completion
|
|
{
|
|
"hrsh7th/nvim-cmp",
|
|
opts = function()
|
|
local M = require("nvchad.configs.cmp")
|
|
table.insert(M.sources, { name = "pyright" })
|
|
return M
|
|
end,
|
|
},
|
|
}
|