aboutsummaryrefslogtreecommitdiffstats
path: root/lua/alpha/lsp/null-ls.lua
blob: 1f8da4ba51c21e7ff9d4e74bed045d431a91b280 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
local null_ls = require("null-ls")
local composer = require("composer")
local php_actions = require("php-code-actions")
-- local laravel_actions = require("laravel.code-actions")

local sources = {
	null_ls.builtins.code_actions.gitsigns,
	null_ls.builtins.formatting.jq,
	null_ls.builtins.code_actions.refactoring,
    null_ls.builtins.formatting.alejandra,

	php_actions.getter_setter,
	php_actions.file_creator,

	null_ls.builtins.diagnostics.phpstan.with({
		to_temp_file = false,
		method = null_ls.methods.DIAGNOSTICS_ON_SAVE,
	}),
}

if composer.query({ "require", "symfony/framework-bundle" }) ~= nil then
	table.insert(sources, null_ls.builtins.diagnostics.phpcs.with({
		method = null_ls.methods.DIAGNOSTICS_ON_SAVE,
	}))
elseif composer.query({ "require", "laravel/framework" }) ~= nil then
	table.insert(sources, null_ls.builtins.formatting.pint)
	-- table.insert(sources, laravel_actions.relationships)
end

null_ls.setup({
    sources = sources,
})

vim.keymap.set({ "n", "v" }, "<leader>vca", vim.lsp.buf.code_action, {})
vim.keymap.set("n", "<leader>vf", function()
	return vim.lsp.buf.format({ async = true })
end, {})