nvim/lua/cosmic/lsp/providers/tsserver.lua
2022-02-06 19:19:22 -08:00

46 lines
1.3 KiB
Lua

local u = require('cosmic.utils')
local default_on_attach = require('cosmic.lsp.providers.defaults').on_attach
local config = require('cosmic.core.user')
local M = {}
function M.on_attach(client, bufnr)
default_on_attach(client, bufnr)
local ts_utils = require('nvim-lsp-ts-utils')
-- defaults
ts_utils.setup(u.merge({
debug = false,
disable_commands = false,
enable_import_on_completion = true,
-- import all
import_all_timeout = 5000, -- ms
import_all_priorities = {
buffers = 4, -- loaded buffer names
buffer_content = 3, -- loaded buffer content
local_files = 2, -- git files or files with relative path markers
same_file = 1, -- add to existing import statement
},
import_all_scan_buffers = 100,
import_all_select_source = false,
-- inlay hints
auto_inlay_hints = true,
inlay_hints_highlight = 'Comment',
-- update imports on file move
update_imports_on_move = true,
require_confirmation_on_move = false,
watch_dir = nil,
-- filter diagnostics
filter_out_diagnostics_by_severity = {},
filter_out_diagnostics_by_code = {},
}, config.lsp.ts_utils or {}))
-- required to fix code action ranges and filter diagnostics
ts_utils.setup_client(client)
end
return M