2024-09-07 18:39:22 +00:00
|
|
|
local T = require('toolchain')
|
|
|
|
local M = {}
|
|
|
|
|
2024-09-07 23:50:39 +00:00
|
|
|
function M.setup()
|
2024-09-07 18:39:22 +00:00
|
|
|
T.add_highlighter_autoinstalls('php', 'phpdoc', 'twig')
|
|
|
|
|
|
|
|
T.add_null_ls_module(function(null_ls)
|
|
|
|
return {
|
|
|
|
-- Diagnostics
|
|
|
|
null_ls.builtins.diagnostics.phpstan,
|
|
|
|
null_ls.builtins.diagnostics.phpcs,
|
|
|
|
null_ls.builtins.diagnostics.twigcs,
|
|
|
|
-- Formatter
|
|
|
|
null_ls.builtins.formatting.phpcsfixer.with({
|
|
|
|
prefer_local = 'vendor/bin/php-cs-fixer',
|
|
|
|
args = { 'fix', '--allow-risky=yes', '$FILENAME' },
|
|
|
|
}),
|
|
|
|
}
|
|
|
|
end)
|
|
|
|
|
|
|
|
T.add_lsp_autoinstalls('phpactor', 'twiggy_language_server', 'stimulus_ls')
|
|
|
|
T.add_lsps(function(lspconfig, capabilities)
|
|
|
|
local config = { capabilities = capabilities }
|
|
|
|
lspconfig.phpactor.setup(config)
|
|
|
|
lspconfig.stimulus_ls.setup(config)
|
|
|
|
end)
|
|
|
|
end
|
|
|
|
|
|
|
|
return M
|