| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253 | CONFIG_PATH = os.getenv "HOME" .. "/.local/share/lunarvim/lvim"DATA_PATH = vim.fn.stdpath "data"CACHE_PATH = vim.fn.stdpath "cache"TERMINAL = vim.fn.expand "$TERMINAL"USER = vim.fn.expand "$USER"lvim = {  leader = "space",  colorscheme = "spacegray",  line_wrap_cursor_movement = true,  transparent_window = false,  format_on_save = true,  vsnip_dir = os.getenv "HOME" .. "/.config/snippets",  database = { save_location = "~/.config/lunarvim_db", auto_execute = 1 },  keys = {},  -- TODO why do we need this?  builtin = {    lspinstall = {},    telescope = {},    compe = {},    autopairs = {},    treesitter = {},    nvimtree = {},    gitsigns = {},    which_key = {},    comment = {},    rooter = {},    galaxyline = {},    bufferline = {},    dap = {},    dashboard = {},    terminal = {},  },  lsp = {    completion = {      item_kind = {        "   (Text) ",        "   (Method)",        "   (Function)",        "   (Constructor)",        " ﴲ  (Field)",        "[] (Variable)",        "   (Class)",        " ﰮ  (Interface)",        "   (Module)",        " 襁 (Property)",        "   (Unit)",        "   (Value)",        " 練 (Enum)",        "   (Keyword)",        "   (Snippet)",        "   (Color)",        "   (File)",        "   (Reference)",        "   (Folder)",        "   (EnumMember)",        " ﲀ  (Constant)",        " ﳤ  (Struct)",        "   (Event)",        "   (Operator)",        "   (TypeParameter)",      },    },    diagnostics = {      signs = {        active = true,        values = {          { name = "LspDiagnosticsSignError", text = "" },          { name = "LspDiagnosticsSignWarning", text = "" },          { name = "LspDiagnosticsSignHint", text = "" },          { name = "LspDiagnosticsSignInformation", text = "" },        },      },      virtual_text = {        prefix = "",        spacing = 0,      },      underline = true,      severity_sort = true,    },    override = {},    document_highlight = true,    popup_border = "single",    on_attach_callback = nil,    on_init_callback = nil,    ---@usage query the project directory from the language server and use it to set the CWD    smart_cwd = true,  },  plugins = {    -- use config.lua for this not put here  },  autocommands = {},  debug = false,}local schemas = nillocal lsp = require "lsp"local common_on_attach = lsp.common_on_attachlocal common_capabilities = lsp.common_capabilities()local common_on_init = lsp.common_on_initlocal status_ok, jsonls_settings = pcall(require, "nlspsettings.jsonls")if status_ok then  schemas = jsonls_settings.get_default_schemas()end-- TODO move all of this into lang specific files, only require when usinglvim.lang = {  asm = {    formatters = {      {        -- @usage can be asmfmt        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "",      setup = {},    },  },  beancount = {    formatters = {      {        -- @usage can be bean_format        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "beancount",      setup = {        cmd = { "beancount-langserver" },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  c = {    formatters = {      {        -- @usage can be clang_format or uncrustify        exe = "",        args = {},        stdin = true,      },    },    linters = {},    lsp = {      provider = "clangd",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/cpp/clangd/bin/clangd",          "--background-index",          "--header-insertion=never",          "--cross-file-rename",          "--clang-tidy",          "--clang-tidy-checks=-*,llvm-*,clang-analyzer-*",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  cpp = {    formatters = {      {        -- @usage can be clang_format or uncrustify        exe = "",        args = {},        stdin = true,      },    },    linters = {},    lsp = {      provider = "clangd",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/cpp/clangd/bin/clangd",          "--background-index",          "--header-insertion=never",          "--cross-file-rename",          "--clang-tidy",          "--clang-tidy-checks=-*,llvm-*,clang-analyzer-*",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  crystal = {    formatters = {      {        -- @usage can be crystal_format        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "crystalline",      setup = {        cmd = { "crystalline" },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  cs = {    formatters = {      {        -- @usage can be clang_format or uncrustify        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "omnisharp",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/csharp/omnisharp/run",          "--languageserver",          "--hostPID",          tostring(vim.fn.getpid()),        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  cmake = {    formatters = {      {        -- @usage can be cmake_format        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "cmake",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/cmake/venv/bin/cmake-language-server",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  clojure = {    formatters = { {      exe = "",      args = {},    } },    linters = {},    lsp = {      provider = "clojure_lsp",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/clojure/clojure-lsp",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  css = {    formatters = {      {        -- @usage can be prettier or prettierd        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "cssls",      setup = {        cmd = {          "node",          DATA_PATH .. "/lspinstall/css/vscode-css/css-language-features/server/dist/node/cssServerMain.js",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  less = {    formatters = {      {        -- @usage can be prettier or prettierd        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "cssls",      setup = {        cmd = {          "node",          DATA_PATH .. "/lspinstall/css/vscode-css/css-language-features/server/dist/node/cssServerMain.js",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  d = {    formatters = {      {        -- @usage can be dfmt        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "serve_d",      setup = {        cmd = { "serve-d" },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  dart = {    formatters = {      {        -- @usage can be dart_format        exe = "",        args = {},        stdin = true,      },    },    linters = {},    lsp = {      provider = "dartls",      setup = {        cmd = {          "dart",          "/usr/lib/dart/bin/snapshots/analysis_server.dart.snapshot",          "--lsp",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  docker = {    formatters = {      {        exe = "",        args = {},      },      -- @usage can be {"hadolint"}    },    linters = {},    lsp = {      provider = "dockerls",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/dockerfile/node_modules/.bin/docker-langserver",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  elixir = {    formatters = {      {        -- @usage can be mix        exe = "",        args = {},        stdin = true,      },    },    linters = {},    lsp = {      provider = "elixirls",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/elixir/elixir-ls/language_server.sh",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  elm = {    formatters = {      {        -- @usage can be elm_format        exe = "",        args = {},        stdin = true,      },    },    linters = {},    lsp = {      provider = "elmls",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/elm/node_modules/.bin/elm-language-server",        },        on_attach = common_on_attach,        on_init = common_on_init,        -- init_options = {        -- elmAnalyseTrigger = "change",        -- elmFormatPath = DATA_PATH .. "/lspinstall/elm/node_modules/.bin/elm-format",        -- elmPath = DATA_PATH .. "/lspinstall/elm/node_modules/.bin/",        -- elmTestPath = DATA_PATH .. "/lspinstall/elm/node_modules/.bin/elm-test",        -- },      },    },  },  erlang = {    formatters = {      {        -- @usage can be erlfmt        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "erlangls",      setup = {        cmd = {          "erlang_ls",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  emmet = { active = false },  fish = {    formatters = {      {        -- @usage can be fish_indent        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "",      setup = {        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  go = {    formatters = {      {        -- @usage can be gofmt or goimports or gofumpt        exe = "",        args = {},        stdin = true,      },    },    linters = {},    lsp = {      provider = "gopls",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/go/gopls",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  graphql = {    formatters = { {      exe = "",      args = {},    } },    linters = {},    lsp = {      provider = "graphql",      setup = {        cmd = {          "graphql-lsp",          "server",          "-m",          "stream",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  haskell = {    formatters = { {      exe = "",      args = {},    } },    linters = {},    lsp = {      provider = "hls",      setup = {        cmd = { DATA_PATH .. "/lspinstall/haskell/hls" },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  html = {    formatters = {      {        -- @usage can be prettier or prettierd        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "html",      setup = {        cmd = {          "node",          DATA_PATH .. "/lspinstall/html/vscode-html/html-language-features/server/dist/node/htmlServerMain.js",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  java = {    formatters = {      {        -- @usage can be clang_format or uncrustify        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "jdtls",      setup = {        cmd = { DATA_PATH .. "/lspinstall/java/jdtls.sh" },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  json = {    formatters = {      {        -- @usage can be json_tool or prettier or prettierd        exe = "",        args = {},        stdin = true,      },    },    linters = {},    lsp = {      provider = "jsonls",      setup = {        cmd = {          "node",          DATA_PATH .. "/lspinstall/json/vscode-json/json-language-features/server/dist/node/jsonServerMain.js",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,        settings = {          json = {            schemas = schemas,            --   = {            --   {            --     fileMatch = { "package.json" },            --     url = "https://json.schemastore.org/package.json",            --   },            -- },          },        },        commands = {          Format = {            function()              vim.lsp.buf.range_formatting({}, { 0, 0 }, { vim.fn.line "$", 0 })            end,          },        },      },    },  },  julia = {    formatters = { {      exe = "",      args = {},    } },    linters = {},    lsp = {      provider = "julials",      setup = {        {          "julia",          "--startup-file=no",          "--history-file=no",          -- vim.fn.expand "~/.config/nvim/lua/lsp/julia/run.jl",          CONFIG_PATH .. "/utils/julia/run.jl",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  kotlin = {    formatters = { {      exe = "",      args = {},    } },    linters = {},    lsp = {      provider = "kotlin_language_server",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/kotlin/server/bin/kotlin-language-server",        },        on_attach = common_on_attach,        on_init = common_on_init,        root_dir = function(fname)          local util = require "lspconfig/util"          local root_files = {            "settings.gradle", -- Gradle (multi-project)            "settings.gradle.kts", -- Gradle (multi-project)            "build.xml", -- Ant            "pom.xml", -- Maven          }          local fallback_root_files = {            "build.gradle", -- Gradle            "build.gradle.kts", -- Gradle          }          return util.root_pattern(unpack(root_files))(fname) or util.root_pattern(unpack(fallback_root_files))(fname)        end,      },    },  },  lua = {    formatters = {      {        -- @usage can be stylua or lua_format        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "sumneko_lua",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/lua/sumneko-lua-language-server",          "-E",          DATA_PATH .. "/lspinstall/lua/main.lua",        },        capabilities = common_capabilities,        on_attach = common_on_attach,        on_init = common_on_init,        settings = {          Lua = {            runtime = {              -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)              version = "LuaJIT",              -- Setup your lua path              path = vim.split(package.path, ";"),            },            diagnostics = {              -- Get the language server to recognize the `vim` global              globals = { "vim", "lvim" },            },            workspace = {              -- Make the server aware of Neovim runtime files              library = {                [vim.fn.expand "~/.local/share/lunarvim/lvim/lua"] = true,                [vim.fn.expand "$VIMRUNTIME/lua"] = true,                [vim.fn.expand "$VIMRUNTIME/lua/vim/lsp"] = true,              },              maxPreload = 100000,              preloadFileSize = 1000,            },          },        },      },    },  },  nginx = {    formatters = {      {        -- @usage can be nginx_beautifier        exe = "",        args = {          provider = "",          setup = {},        },      },    },    linters = {},    lsp = {},  },  perl = {    formatters = {      {        -- @usage can be perltidy        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "",      setup = {},    },  },  sql = {    formatters = {      {        -- @usage can be sqlformat        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "sqls",      setup = {        cmd = { "sqls" },      },    },  },  php = {    formatters = {      {        -- @usage can be phpcbf        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "intelephense",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/php/node_modules/.bin/intelephense",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        filetypes = { "php", "phtml" },        settings = {          intelephense = {            environment = {              phpVersion = "7.4",            },          },        },      },    },  },  puppet = {    formatters = { {      exe = "",      args = {},    } },    linters = {},    lsp = {      provider = "puppet",      setup = {        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  javascript = {    -- @usage can be prettier or prettier_d_slim or prettierd    formatters = {      {        exe = "",        args = {},      },    },    -- @usage can be {"eslint"} or {"eslint_d"}    linters = {},    lsp = {      provider = "tsserver",      setup = {        cmd = {          -- TODO:          DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  javascriptreact = {    formatters = {      {        -- @usage can be prettier or prettier_d_slim or prettierd        exe = "",        args = {},      },    },    -- @usage can be {"eslint"} or {"eslint_d"}    linters = {},    lsp = {      provider = "tsserver",      setup = {        cmd = {          -- TODO:          DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  python = {    formatters = {      {        -- @usage can be black or yapf or isort        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "pyright",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/python/node_modules/.bin/pyright-langserver",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  -- R -e 'install.packages("formatR",repos = "http://cran.us.r-project.org")'  -- R -e 'install.packages("readr",repos = "http://cran.us.r-project.org")'  r = {    formatters = {      {        -- @usage can be format_r        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "r_language_server",      setup = {        cmd = {          "R",          "--slave",          "-e",          "languageserver::run()",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  ruby = {    formatters = {      {        -- @usage can be rufo        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "solargraph",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/ruby/solargraph/solargraph",          "stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  rust = {    formatters = {      {        -- @usage can be rustfmt        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "rust_analyzer",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/rust/rust-analyzer",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  scala = {    formatters = {      {        -- @usage can be scalafmt        exe = "",        args = {},      },    },    linters = { "" },    lsp = {      provider = "metals",      setup = {        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  sh = {    formatters = {      {        -- @usage can be shfmt        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "bashls",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/bash/node_modules/.bin/bash-language-server",          "start",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  svelte = {    formatters = { {      exe = "",      args = {},    } },    linters = {},    lsp = {      provider = "svelte",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/svelte/node_modules/.bin/svelteserver",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  swift = {    formatters = {      {        -- @usage can be swiftformat        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "sourcekit",      setup = {        cmd = {          "xcrun",          "sourcekit-lsp",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  tailwindcss = {    active = false,    filetypes = {      "html",      "css",      "scss",      "javascript",      "javascriptreact",      "typescript",      "typescriptreact",    },  },  terraform = {    formatters = {      {        -- @usage can be terraform_fmt        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "terraformls",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/terraform/terraform-ls",          "serve",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  tex = {    formatters = {      {        exe = "",        args = {},        stdin = false,      },      -- @usage can be chktex or vale    },    linters = {},    lsp = {      provider = "texlab",      setup = {        cmd = { DATA_PATH .. "/lspinstall/latex/texlab" },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  typescript = {    formatters = {      {        -- @usage can be prettier or prettierd or prettier_d_slim        exe = "",        args = {},      },      -- @usage can be {"eslint"} or {"eslint_d"}    },    linters = {},    lsp = {      provider = "tsserver",      setup = {        cmd = {          -- TODO:          DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  typescriptreact = {    formatters = {      {        -- @usage can be prettier or prettierd or prettier_d_slim        exe = "",        args = {},      },    },    -- @usage can be {"eslint"} or {"eslint_d"}    linters = {},    lsp = {      provider = "tsserver",      setup = {        cmd = {          -- TODO:          DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  vim = {    formatters = {      {        exe = "",        args = {},      },    },    -- @usage can be {"vint"}    linters = { "" },    lsp = {      provider = "vimls",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/vim/node_modules/.bin/vim-language-server",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  vue = {    formatters = {      {        -- @usage can be prettier or prettierd or prettier_d_slim        exe = "",        args = {},      },    },    -- @usage can be {"eslint"} or {"eslint_d"}    linters = {},    lsp = {      provider = "vuels",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/vue/node_modules/.bin/vls",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  yaml = {    formatters = {      {        -- @usage can be prettier or prettierd        exe = "",        args = {},      },    },    linters = {},    lsp = {      provider = "yamlls",      setup = {        cmd = {          DATA_PATH .. "/lspinstall/yaml/node_modules/.bin/yaml-language-server",          "--stdio",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  zig = {    formatters = { {      exe = "",      args = {},      stdin = false,    } },    linters = {},    lsp = {      provider = "zls",      setup = {        cmd = {          "zls",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },  gdscript = {    formatter = {},    linters = {},    lsp = {      provider = "gdscript",      setup = {        cmd = {          "nc",          "localhost",          "6008",        },        on_attach = common_on_attach,        on_init = common_on_init,        capabilities = common_capabilities,      },    },  },}require("keymappings").config()require("core.which-key").config()require "core.status_colors"require("core.gitsigns").config()require("core.compe").config()require("core.dashboard").config()require("core.dap").config()require("core.terminal").config()require("core.telescope").config()require("core.treesitter").config()require("core.nvimtree").config()require("core.rooter").config()
 |