From 1a62bf12390834a574802c3c836b464f27d8a01e Mon Sep 17 00:00:00 2001 From: Dinesh Salunke Date: Wed, 5 Jul 2023 07:53:28 +0530 Subject: [PATCH] refactor: remove typescript plugin and manually configure it --- lua/plugins/lsp.lua | 38 +++++++++++++++++++++++++++++--------- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua index 6589d97..a1356c2 100644 --- a/lua/plugins/lsp.lua +++ b/lua/plugins/lsp.lua @@ -38,8 +38,6 @@ return { { desc = "[G]oto [R]eference" } ) vim.keymap.set("n", "gI", vim.lsp.buf.implementation, { desc = "[G]oto [I]mplementation" }) - vim.keymap.set("n", "ws", vim.lsp.buf.rename, { desc = "Workspace Symbols" }) - vim.keymap.set("n", "ds", vim.lsp.buf.rename, { desc = "Document Symbols" }) vim.keymap.set("n", "K", vim.lsp.buf.hover, { desc = "Hover Documentation" }) vim.keymap.set("n", "", vim.lsp.buf.signature_help, { desc = "Hover Documentation" }) end) @@ -65,16 +63,39 @@ return { }) require("lspconfig").lua_ls.setup(lsp.nvim_lua_ls()) + require("lspconfig").tsserver.setup({ + single_file_support = false, + root_dir = function(...) + return require("lspconfig.util").root_pattern(".git")(...) + end, + commands = { + TypescriptOrganizeImports = { + function() + local param = { + command = "_typescript.organizeImports", + arguments = { vim.api.nvim_buf_get_name(0) }, + title = "Organize ts imports", + } + vim.lsp.buf.execute_command(param) + end, + description = "Organize imports", + }, + }, + }) + + vim.keymap.set("n", "oi", "TypescriptOrganizeImports", { silent = true, noremap = true }) + vim.keymap.set( + "n", + "ami", + "TypescriptAddMissingImports", + { silent = true, noremap = true } + ) + vim.keymap.set("n", "fa", "TypescriptFixAll", { silent = true, noremap = true }) + vim.keymap.set("n", "ru", "TypescriptRemoveUnused", { silent = true, noremap = true }) lsp.setup() end, }, - { - "jose-elias-alvarez/typescript.nvim", - config = function() - require("typescript").setup({}) - end, - }, { "jose-elias-alvarez/null-ls.nvim", @@ -87,7 +108,6 @@ return { null_ls.builtins.formatting.stylua, null_ls.builtins.formatting.prettierd, null_ls.builtins.formatting.eslint_d, - require("typescript.extensions.null-ls.code-actions"), }, }) end,