Replace ts_ls with typescript-tools
This commit is contained in:
parent
242dccba12
commit
b4ee9d0b8a
1 changed files with 36 additions and 7 deletions
|
@ -19,7 +19,6 @@
|
|||
jdtls.enable = true;
|
||||
nil_ls.enable = true;
|
||||
pyright.enable = true;
|
||||
ts_ls.enable = true;
|
||||
rust_analyzer = {
|
||||
enable = true;
|
||||
installCargo = false;
|
||||
|
@ -28,14 +27,44 @@
|
|||
svelte.enable = true;
|
||||
volar = {
|
||||
enable = true;
|
||||
tslsIntegration = true;
|
||||
# extraOptions.init_options.vue.hybridMode = false;
|
||||
extraOptions.on_init.__raw = ''
|
||||
function(client)
|
||||
client.handlers['tsserver/request'] = function(_, result, context)
|
||||
local clients = vim.lsp.get_clients({ bufnr = context.bufnr, name = 'vtsls' })
|
||||
if #clients == 0 then
|
||||
vim.notify('Could not found `vtsls` lsp client, vue_lsp would not work without it.', vim.log.levels.ERROR)
|
||||
return
|
||||
end
|
||||
local ts_client = clients[1]
|
||||
|
||||
local param = unpack(result)
|
||||
local id, command, payload = unpack(param)
|
||||
ts_client:exec_cmd({
|
||||
command = 'typescript.tsserverRequest',
|
||||
arguments = {
|
||||
command,
|
||||
payload,
|
||||
},
|
||||
}, { bufnr = context.bufnr }, function(_, r)
|
||||
local response_data = { { id, r.body } }
|
||||
---@diagnostic disable-next-line: param-type-mismatch
|
||||
client:notify('tsserver/response', response_data)
|
||||
end)
|
||||
end
|
||||
end,
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
typescript-tools = {
|
||||
enable = true;
|
||||
settings = {
|
||||
filetypes = [ "javascript" "typescript" "vue" ];
|
||||
settings = {
|
||||
single_file_support = false;
|
||||
tsserver_plugins = [ "@vue/typescript-plugin" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
# nvim-jdtls = {
|
||||
# enable = true;
|
||||
# data = "~/.cache/jdtls/workspace";
|
||||
# };
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue