aboutsummaryrefslogtreecommitdiffstats
path: root/lua/lspconfig/configs/zls.lua
blob: 540f4bd86eda070ab1d843f22e608111927b0d53 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
local util = require 'lspconfig.util'

return {
  default_config = {
    cmd = { 'zls' },
    on_new_config = function(new_config, new_root_dir)
      if vim.fn.filereadable(vim.fs.joinpath(new_root_dir, 'zls.json')) ~= 0 then
        new_config.cmd = { 'zls', '--config-path', 'zls.json' }
      end
    end,
    filetypes = { 'zig', 'zir' },
    root_dir = util.root_pattern('zls.json', 'build.zig', '.git'),
    single_file_support = true,
  },
  docs = {
    description = [[
https://github.com/zigtools/zls

Zig LSP implementation + Zig Language Server
        ]],
  },
}