diff options
| author | Ashkan Kiani <ashkan.k.kiani@gmail.com> | 2019-11-13 18:31:52 -0800 |
|---|---|---|
| committer | Ashkan Kiani <ashkan.k.kiani@gmail.com> | 2019-11-13 18:31:52 -0800 |
| commit | f5cdde6f8334f125c5b251abdb3e6600459ab888 (patch) | |
| tree | ee24c6ff56e767194c48c1109949b84df4284ac0 /lua | |
| parent | Add more instructions for contributions. (diff) | |
| download | nvim-lspconfig-f5cdde6f8334f125c5b251abdb3e6600459ab888.tar nvim-lspconfig-f5cdde6f8334f125c5b251abdb3e6600459ab888.tar.gz nvim-lspconfig-f5cdde6f8334f125c5b251abdb3e6600459ab888.tar.bz2 nvim-lspconfig-f5cdde6f8334f125c5b251abdb3e6600459ab888.tar.lz nvim-lspconfig-f5cdde6f8334f125c5b251abdb3e6600459ab888.tar.xz nvim-lspconfig-f5cdde6f8334f125c5b251abdb3e6600459ab888.tar.zst nvim-lspconfig-f5cdde6f8334f125c5b251abdb3e6600459ab888.zip | |
Bugfix and indentation
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/common_lsp/gopls.lua | 96 | ||||
| -rw-r--r-- | lua/common_lsp/util.lua | 26 |
2 files changed, 62 insertions, 60 deletions
diff --git a/lua/common_lsp/gopls.lua b/lua/common_lsp/gopls.lua index c43f4c38..96e9df76 100644 --- a/lua/common_lsp/gopls.lua +++ b/lua/common_lsp/gopls.lua @@ -91,66 +91,68 @@ end -- This is a table, and the keys are case sensitive. -- Example: `settings = { }` function M.setup(config) - validate { - root_dir = {config.root_dir, 'f'}; - filetype = {config.filetype, 't', true}; - } + validate { + root_dir = {config.root_dir, 'f'}; + filetype = {config.filetype, 't', true}; + } - if config.filetype then + local filetype = config.filetype or default_config.filetype + + if filetype then local filetypes - if type(config.filetype) == 'string' then - filetypes = { config.filetype } + if type(filetype) == 'string' then + filetypes = { filetype } else - filetypes = config.filetype + filetypes = filetype end - api.nvim_command(string.format( - "autocmd FileType %s lua require'common_lsp/%s'.manager.try_add()" - , table.concat(filetypes, ',') - , M.name - )) - else - api.nvim_command(string.format( - "autocmd BufReadPost * lua require'common_lsp/%s'.manager.try_add()" - , M.name - )) - end + api.nvim_command(string.format( + "autocmd FileType %s lua require'common_lsp'[%q].manager.try_add()" + , table.concat(filetypes, ',') + , M.name + )) + else + api.nvim_command(string.format( + "autocmd BufReadPost * lua require'common_lsp'[%q].manager.try_add()" + , M.name + )) + end - local get_root_dir = config.root_dir + local get_root_dir = config.root_dir or default_config.root_dir - M.manager = util.server_per_root_dir_manager(function(_root_dir) - local new_config = vim.tbl_extend("keep", config, default_config) - -- Deepcopy anything that is >1 level nested. - new_config.settings = vim.deepcopy(new_config.settings) - util.tbl_deep_extend(new_config.settings, default_config.settings) + M.manager = util.server_per_root_dir_manager(function(_root_dir) + local new_config = vim.tbl_extend("keep", config, default_config) + -- Deepcopy anything that is >1 level nested. + new_config.settings = vim.deepcopy(new_config.settings) + util.tbl_deep_extend(new_config.settings, default_config.settings) - new_config.capabilities = new_config.capabilities or lsp.protocol.make_client_capabilities() - util.tbl_deep_extend(new_config.capabilities, { - workspace = { - configuration = true; - } - }) + new_config.capabilities = new_config.capabilities or lsp.protocol.make_client_capabilities() + util.tbl_deep_extend(new_config.capabilities, { + workspace = { + configuration = true; + } + }) - setup_callbacks(new_config) + setup_callbacks(new_config) - new_config.on_attach = util.add_hook_after(new_config.on_attach, function(client, bufnr) - if bufnr == api.nvim_get_current_buf() then - M._setup_buffer() - else - api.nvim_command(string.format( - "autocmd BufEnter <buffer=%d> ++once lua require'common_lsp/%s'._setup_buffer()", - M.name, - bufnr)) - end - end) - return new_config - end) + new_config.on_attach = util.add_hook_after(new_config.on_attach, function(client, bufnr) + if bufnr == api.nvim_get_current_buf() then + M._setup_buffer() + else + api.nvim_command(string.format( + "autocmd BufEnter <buffer=%d> ++once lua require'common_lsp/%s'._setup_buffer()", + M.name, + bufnr)) + end + end) + return new_config + end) - function M.manager.try_add() + function M.manager.try_add() local root_dir = get_root_dir(api.nvim_buf_get_name(0), api.nvim_get_current_buf()) print(api.nvim_get_current_buf(), root_dir) - local id = M.manager.add(root_dir) + local id = M.manager.add(root_dir) lsp.buf_attach_client(0, id) - end + end end -- Declare any commands here. You can use additional modifiers like "-range" diff --git a/lua/common_lsp/util.lua b/lua/common_lsp/util.lua index b821854a..9aed25fe 100644 --- a/lua/common_lsp/util.lua +++ b/lua/common_lsp/util.lua @@ -124,10 +124,10 @@ M.path = (function() local strip_sep_pat = path_sep.."$" dirname = function(path) local result = path:gsub(strip_sep_pat, ""):gsub(strip_dir_pat, "") - if #result == 0 then - return "/" - end - return result + if #result == 0 then + return "/" + end + return result end end @@ -142,24 +142,24 @@ M.path = (function() -- Just in case our algo is buggy, don't infinite loop. for _ = 1, 100 do dir = dirname(dir) - -- If we can't ascend further, then stop looking. + -- If we can't ascend further, then stop looking. if cb(dir, path) then return dir, path end - if is_fs_root(dir) then - break - end + if is_fs_root(dir) then + break + end end end -- Iterate the path until we find the rootdir. local function iterate_parents(path) path = uv.fs_realpath(path) - local function it(s, v) - if is_fs_root(v) then return end - return dirname(v), path - end - return it, path, path + local function it(s, v) + if is_fs_root(v) then return end + return dirname(v), path + end + return it, path, path end return { |
