diff options
| -rw-r--r-- | lsp/clangd.lua | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lsp/clangd.lua b/lsp/clangd.lua index 062b4777..d0f01d3f 100644 --- a/lsp/clangd.lua +++ b/lsp/clangd.lua @@ -57,6 +57,9 @@ local function symbol_info() end, bufnr) end +---@class ClangdInitializeResult: lsp.InitializeResult +---@field offsetEncoding? string + return { cmd = { 'clangd' }, filetypes = { 'c', 'cpp', 'objc', 'objcpp', 'cuda', 'proto' }, @@ -77,6 +80,13 @@ return { }, offsetEncoding = { 'utf-8', 'utf-16' }, }, + ---@param client vim.lsp.Client + ---@param init_result ClangdInitializeResult + on_init = function(client, init_result) + if init_result.offsetEncoding then + client.offset_encoding = init_result.offsetEncoding + end + end, on_attach = function() vim.api.nvim_buf_create_user_command(0, 'LspClangdSwitchSourceHeader', function() switch_source_header(0) |
