aboutsummaryrefslogtreecommitdiff
path: root/lua/plugins/lsp.lua
blob: 051662cfaf5a132091712e06a7950c9aa6ad7ced (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
38
39
vim.pack.add({
  { src = "https://github.com/folke/lazydev.nvim" }
})

-- Enable some settings globally
vim.lsp.config("*", {
  -- allow for multiline token support
  capabilities = {
    textDocument = {
      semanticTokens = {
        multilineTokenSupport = true,
      }
    }
  },
  -- make .git always be a root marker
  root_markers = { '.git' },
  -- setup autocompletion
  -- on_attach = function(client, bufnr)
  --   vim.lsp.completion.enable(true, client.id, bufnr, {
  --     autotrigger = true,
  --     convert = function(item)
  --       return { abbr = item.label:gsub('%b()', '') }
  --     end,
  --   })
  -- end,
})

-- enable specific language servers
vim.lsp.enable({
  "nixd",
  "lua_ls",
  "jsonls",
})

-- diagnostic settings
vim.diagnostic.config({ virtual_text = true })

-- fix annoying lua lsp errors
require("lazydev").setup()