diff options
Diffstat (limited to 'lua/lsp')
| -rw-r--r-- | lua/lsp/tsserver-ls.lua | 41 | 
1 files changed, 41 insertions, 0 deletions
| diff --git a/lua/lsp/tsserver-ls.lua b/lua/lsp/tsserver-ls.lua new file mode 100644 index 00000000..d7c4ec3c --- /dev/null +++ b/lua/lsp/tsserver-ls.lua @@ -0,0 +1,41 @@ +if require("lv-utils").check_lsp_client_active "tsserver" then +  return +end + +-- npm install -g typescript typescript-language-server +-- require'snippets'.use_suggested_mappings() +-- local capabilities = vim.lsp.protocol.make_client_capabilities() +-- capabilities.textDocument.completion.completionItem.snippetSupport = true; +-- local on_attach_common = function(client) +-- print("LSP Initialized") +-- require'completion'.on_attach(client) +-- require'illuminate'.on_attach(client) +-- end +require("lspconfig").tsserver.setup { +  cmd = { +    DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server", +    "--stdio", +  }, +  filetypes = { +    "javascript", +    "javascriptreact", +    "javascript.jsx", +    "typescript", +    "typescriptreact", +    "typescript.tsx", +  }, +  on_attach = require("lsp").tsserver_on_attach, +  -- This makes sure tsserver is not used for formatting (I prefer prettier) +  -- on_attach = require'lsp'.common_on_attach, +  root_dir = require("lspconfig/util").root_pattern("package.json", "tsconfig.json", "jsconfig.json", ".git"), +  settings = { documentFormatting = false }, +  handlers = { +    ["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, { +      virtual_text = O.lang.tsserver.diagnostics.virtual_text, +      signs = O.lang.tsserver.diagnostics.signs, +      underline = O.lang.tsserver.diagnostics.underline, +      update_in_insert = true, +    }), +  }, +} +require("lsp.ts-fmt-lint").setup() | 
