summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/lsp/utils.lua
diff options
context:
space:
mode:
authorGustaf Rydholm <gustaf.rydholm@gmail.com>2021-08-15 13:54:15 +0200
committerGustaf Rydholm <gustaf.rydholm@gmail.com>2021-08-15 13:54:15 +0200
commit977990584331307dd5e71ebbbbd6b45b9c961996 (patch)
treea8b3d78e80f586da192a576dd678e2fbc8ac8e00 /.config/nvim/lua/lsp/utils.lua
parent99d00f47fe780dbb021149db2f93d202a2b8b025 (diff)
Updates to nvim lsp
Diffstat (limited to '.config/nvim/lua/lsp/utils.lua')
-rw-r--r--.config/nvim/lua/lsp/utils.lua27
1 files changed, 27 insertions, 0 deletions
diff --git a/.config/nvim/lua/lsp/utils.lua b/.config/nvim/lua/lsp/utils.lua
new file mode 100644
index 0000000..af265de
--- /dev/null
+++ b/.config/nvim/lua/lsp/utils.lua
@@ -0,0 +1,27 @@
+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
+ end
+ end
+ return false
+end
+
+function M.get_active_client_by_ft(filetype)
+ if not options.lang[filetype] or not options.lang[filetype].lsp then
+ return nil
+ end
+
+ local clients = vim.lsp.get_active_clients()
+ for _, client in pairs(clients) do
+ if client.name == options.lang[filetype].lsp.provider then
+ return client
+ end
+ end
+ return nil
+end
+
+return M