From 32ba8ea3fedb4ace60bc019fc895f4f07d0a60dc Mon Sep 17 00:00:00 2001 From: hacktivista Date: Thu, 6 Jun 2024 07:26:51 -0400 Subject: [PATCH] feat(lang): added php support (#1450) Configures tree-sitter, phpactor as LSP server and xdebug/vscode-php-debug as DAP server. --------- Co-authored-by: Folke Lemaitre --- lua/lazyvim/plugins/extras/lang/php.lua | 44 +++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 lua/lazyvim/plugins/extras/lang/php.lua diff --git a/lua/lazyvim/plugins/extras/lang/php.lua b/lua/lazyvim/plugins/extras/lang/php.lua new file mode 100644 index 00000000..59e7b292 --- /dev/null +++ b/lua/lazyvim/plugins/extras/lang/php.lua @@ -0,0 +1,44 @@ +return { + recommended = { + ft = "php", + root = { "composer.json", ".git", ".phpactor.json", ".phpactor.yml" }, + }, + + { + "nvim-treesitter/nvim-treesitter", + opts = function(_, opts) + vim.list_extend(opts.ensure_installed, { "php" }) + end, + }, + + { + "neovim/nvim-lspconfig", + opts = { + servers = { + phpactor = {}, + }, + }, + }, + + { + "mfussenegger/nvim-dap", + optional = true, + dependencies = { + "williamboman/mason.nvim", + opts = function(_, opts) + if type(opts.ensure_installed) == "table" then + table.insert(opts.ensure_installed, "php-debug-adapter") + end + end, + }, + opts = function() + local dap = require("dap") + local path = require("mason-registry").get_package("php-debug-adapter"):get_install_path() + dap.adapters.php = { + type = "executable", + command = "node", + args = { path .. "/extension/out/phpDebug.js" }, + } + end, + }, +}