diff options
author | christianchiarulli <[email protected]> | 2021-08-29 14:17:32 -0400 |
---|---|---|
committer | christianchiarulli <[email protected]> | 2021-08-29 14:17:32 -0400 |
commit | ed5559d259e38a78796a7d81421f02ba6dafac4b (patch) | |
tree | afa9c00c017382bac547265a8a1e16b9770a07eb /lua/lsp/utils.lua | |
parent | e7b6d3b6f5982ea1042ffd499a7b85c18f0b782e (diff) | |
parent | c7a5122fe2c14dba0f28f1c077f838f957884afc (diff) |
Merge branch 'rolling' of github.com:ChristianChiarulli/LunarVim
Diffstat (limited to 'lua/lsp/utils.lua')
-rw-r--r-- | lua/lsp/utils.lua | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/lua/lsp/utils.lua b/lua/lsp/utils.lua new file mode 100644 index 00000000..17b9c3bc --- /dev/null +++ b/lua/lsp/utils.lua @@ -0,0 +1,28 @@ +local M = {} + +function M.is_client_active(name) + local clients = vim.lsp.get_active_clients() + for _, client in pairs(clients) do + if client.name == name then + return true, client + end + end + return false +end + +-- FIXME: this should return a list instead +function M.get_active_client_by_ft(filetype) + if not lvim.lang[filetype] or not lvim.lang[filetype].lsp then + return nil + end + + local clients = vim.lsp.get_active_clients() + for _, client in pairs(clients) do + if client.name == lvim.lang[filetype].lsp.provider then + return client + end + end + return nil +end + +return M |