aboutsummaryrefslogtreecommitdiffstats
path: root/lua/alpha/lsp/servers/phpactor.lua
blob: fd25568d7e8af6840e97262a90ef21d1dd379ef1 (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
local lsp_attach = require "alpha.lsp.attach"
local lsp_flags = require "alpha.lsp.flags"

return function(ops)
  return vim.tbl_extend("force", {
    on_attach = lsp_attach,
    flags = lsp_flags,
    filetypes = { "php", "blade" },
    init_options = {
      ["language_server_worse_reflection.inlay_hints.enable"] = true,
      ["language_server_worse_reflection.inlay_hints.params"] = true,
      -- ["language_server_worse_reflection.inlay_hints.types"] = true,
      ["language_server_configuration.auto_config"] = false,
      ["code_transform.import_globals"] = true,
      ["language_server_phpstan.enabled"] = true,
      ["language_server_phpstan.level"] = 7,
      ["language_server_phpstan.bin"] = "phpstan",
    },
    handlers = {
      ["textDocument/inlayHint"] = function(err, result, ...)
        for _, res in ipairs(result) do
          res.label = res.label .. ": "
        end
        vim.lsp.handlers["textDocument/inlayHint"](err, result, ...)
      end,
    },
  }, ops)
end