diff --git a/lua/plugins/config/lsp/init.lua b/lua/plugins/config/lsp/init.lua index 930dd4a4..912cbbcb 100644 --- a/lua/plugins/config/lsp/init.lua +++ b/lua/plugins/config/lsp/init.lua @@ -3,24 +3,28 @@ local M = {} function M.setup() local lspconfig = require 'lspconfig' - + -- Get capabilities from blink.cmp if available local capabilities = {} pcall(function() capabilities = require('blink.cmp').get_lsp_capabilities() end) - + -- + -- Set global position encoding preference + capabilities.offsetEncoding = { 'utf-8', 'utf-16' } + -- Load server configurations local servers = require('plugins.config.lsp.servers').get_servers() - + -- Setup each server with capabilities for name, config in pairs(servers) do config.capabilities = vim.tbl_deep_extend('force', {}, capabilities, config.capabilities or {}) lspconfig[name].setup(config) end - + -- Setup LSP keymaps require('plugins.config.lsp.keymaps').setup() end -return M \ No newline at end of file +return M + diff --git a/lua/plugins/config/lsp/servers.lua b/lua/plugins/config/lsp/servers.lua index 66158188..94126d2c 100644 --- a/lua/plugins/config/lsp/servers.lua +++ b/lua/plugins/config/lsp/servers.lua @@ -6,15 +6,15 @@ local util = require 'lspconfig.util' -- Get clang-wrapper resource-root for Nix environments local function get_clang_resource_dir() -- Try to find clang-wrapper's resource-root - local handle = io.popen('ls -d /nix/store/*clang-wrapper*/resource-root 2>/dev/null | head -1') + local handle = io.popen 'ls -d /nix/store/*clang-wrapper*/resource-root 2>/dev/null | head -1' if handle then - local resource_root = handle:read('*l') + local resource_root = handle:read '*l' handle:close() if resource_root and resource_root ~= '' then return resource_root end end - return nil -- Let clangd use its default + return nil -- Let clangd use its default end function M.get_servers() @@ -30,7 +30,7 @@ function M.get_servers() '--header-insertion-decorators', '--header-insertion=iwyu', } - + -- Add resource-dir if in Nix environment local resource_dir = get_clang_resource_dir() if resource_dir then @@ -72,7 +72,6 @@ function M.get_servers() }, }, }, - positionEncoding = 'utf-8', }, -- Python Linter/Formatter @@ -106,4 +105,3 @@ function M.get_servers() end return M -