all repos

init.lua @ d3945c4

my nvim config

init.lua/lua/plugins/lsp/init.lua(view raw)

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
return {
  "neovim/nvim-lspconfig",
  event = "BufRead",
  dependencies = {
    "b0o/schemastore.nvim",
    { "williamboman/mason-lspconfig.nvim", config = true },
    { "j-hui/fidget.nvim", config = true },
    { "folke/neodev.nvim", config = true },
    {
      "folke/neoconf.nvim",
      cmd = "Neoconf",
      config = true,
      dependencies = { "nvim-lspconfig" },
    },
    {
      "jose-elias-alvarez/null-ls.nvim",
      config = function()
        require "plugins.lsp.null-ls"
      end,
    },
    {
      "RRethy/vim-illuminate",
      config = function()
        require("illuminate").configure {
          providers = { "lsp", "treesitter" },
          filetypes_denylist = {
            "NvimTree",
            "packer",
            "NeogitStatus",
            "TelescopePrompt",
          },
        }
      end,
    },
    {
      "williamboman/mason.nvim",
      config = true,
      build = function()
        pcall(function()
          vim.cmd "MasonUpdate"
        end)
      end,
    },
  },
  config = function()
    require("plugins.lsp.diagnostic").setup()
    for name, conf in pairs(require "plugins.lsp.servers") do
      require("lspconfig")[name].setup(vim.tbl_extend("force", {
        on_attach = require("plugins.lsp.attach").common,
        flags = { debounce_text_changes = 150 },
        capabilities = require("cmp_nvim_lsp").default_capabilities(),
      }, conf))
    end
  end,
}