add typescript-tools plugin

This commit is contained in:
2024-03-18 23:10:55 +00:00
parent 6899039df5
commit f96d50770a
4 changed files with 71 additions and 74 deletions

View File

@ -4,33 +4,11 @@ local capabilities = configs.capabilities
local lspconfig = require("lspconfig") local lspconfig = require("lspconfig")
local servers = { "tsserver", "tailwindcss", "eslint", "gopls" } local servers = { "tailwindcss", "eslint", "gopls" }
local function organize_imports()
local params = {
command = "_typescript.organizeImports",
arguments = { vim.api.nvim_buf_get_name(0) },
title = "",
}
vim.lsp.buf.execute_command(params)
end
for _, lsp in ipairs(servers) do for _, lsp in ipairs(servers) do
if lsp == "tsserver" then lspconfig[lsp].setup({
lspconfig[lsp].setup({ on_attach = on_attach,
on_attach = on_attach, capabilities = capabilities,
capabilities = capabilities, })
commands = {
OrganizeImports = {
organize_imports,
description = "Organize Imports",
},
},
})
else
lspconfig[lsp].setup({
on_attach = on_attach,
capabilities = capabilities,
})
end
end end

View File

@ -1,65 +1,64 @@
local M = {} local M = {}
M.treesitter = { M.treesitter = {
ensure_installed = { ensure_installed = {
-- defaults -- defaults
"vim", "vim",
"lua", "lua",
-- web dev -- web dev
"html", "html",
"css", "css",
"javascript", "javascript",
"typescript", "typescript",
"tsx", "tsx",
-- nix -- nix
"nix", "nix",
-- go -- go
"go", "go",
"gomod", "gomod",
"gowork", "gowork",
"gosum", "gosum",
}, },
} }
M.mason = { M.mason = {
ensure_installed = { ensure_installed = {
-- defaults -- defaults
"lua-language-server", "lua-language-server",
"stylua", "stylua",
"luacheck", "luacheck",
-- web dev -- web dev
"css-lsp", "css-lsp",
"html-lsp", "html-lsp",
"prettierd", "prettierd",
"eslint-lsp", "eslint-lsp",
"eslint_d", "eslint_d",
"typescript-language-server", "tailwindcss-language-server",
"tailwindcss-language-server",
-- nix -- nix
"nil", "nil",
-- go -- go
"gopls", "gopls",
"goimports", "goimports",
"gofumpt", "gofumpt",
"gomodifytags", "gomodifytags",
"impl", "impl",
"iferr", "iferr",
"staticcheck", "staticcheck",
"delve", "delve",
}, },
} }
M.telescope = { M.telescope = {
defaults = { defaults = {
winblend = 40, winblend = 40,
pumblend = 40, pumblend = 40,
}, },
} }
return M return M

View File

@ -0,0 +1,5 @@
local on_attach = require("nvchad.configs.lspconfig").on_attach
require("typescript-tools").setup({
on_attach = on_attach,
})

View File

@ -95,5 +95,20 @@ local plugins = {
"folke/neodev.nvim", "folke/neodev.nvim",
event = "VeryLazy", event = "VeryLazy",
}, },
-- Language specific plugins
{
"pmizio/typescript-tools.nvim",
dependencies = { "nvim-lua/plenary.nvim", "neovim/nvim-lspconfig" },
config = function()
require("configs.ts")
end,
ft = {
"javascript",
"typescript",
"javascriptreact",
"typescriptreact",
},
},
} }
return plugins return plugins