aboutsummaryrefslogtreecommitdiffstats
path: root/lua/lspconfig/phpactor.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/lspconfig/phpactor.lua')
-rw-r--r--lua/lspconfig/phpactor.lua32
1 files changed, 32 insertions, 0 deletions
diff --git a/lua/lspconfig/phpactor.lua b/lua/lspconfig/phpactor.lua
new file mode 100644
index 00000000..c5985279
--- /dev/null
+++ b/lua/lspconfig/phpactor.lua
@@ -0,0 +1,32 @@
+local configs = require 'lspconfig/configs'
+local util = require 'lspconfig/util'
+
+local server_name = "phpactor"
+local bin_name = "phpactor"
+
+configs[server_name] = {
+ default_config = {
+ cmd = {bin_name, "language-server"};
+ filetypes = {"php"};
+ root_dir = function (pattern)
+ local cwd = vim.loop.cwd();
+ local root = util.root_pattern("composer.json", ".git")(pattern);
+
+ -- prefer cwd if root is a descendant
+ return util.path.is_descendant(cwd, root) and cwd or root;
+ end;
+ };
+ docs = {
+ description = [[
+https://github.com/phpactor/phpactor
+
+Installation: https://phpactor.readthedocs.io/en/develop/usage/standalone.html#installation-global
+]];
+ default_config = {
+ cmd = {"phpactor", "language-server"};
+ root_dir = [[root_pattern("composer.json", ".git")]];
+ };
+ };
+}
+
+-- vim:et ts=2 sw=2