filetype configs with named files. has telescope
added lsp configs with hints for the names
2 files changed, +429 -395
+67-33lua/ftconfig/init.lua
| @@ -8,21 +8,76 @@ end | ||
| 8 | 8 | |
| 9 | 9 | local augroup = vim.api.nvim_create_augroup("ftconfig", { clear = true }) |
| 10 | 10 | |
| 11 | ----@class FTConformSpec | |
| 12 | ----@field use string[] | |
| 13 | ----@field formatters? table<string, conform.FileFormatterConfig> | |
| 14 | - | |
| 15 | ----@class FTKeymapOptions | |
| 11 | +---@class ft.KeymapOptions | |
| 16 | 12 | ---@field [1] string # mode |
| 17 | 13 | ---@field [2] string # lhs |
| 18 | 14 | ---@field [3] string|fun(args:vim.api.keyset.create_autocmd.callback_args) # rhs |
| 19 | 15 | ---@field [4]? vim.keymap.set.Opts |
| 20 | 16 | |
| 17 | +---sets the keymaps | |
| 18 | +---@param ft string | |
| 19 | +---@param spec FTSpec | |
| 20 | +function M.set_keymaps(ft, spec) | |
| 21 | + for _, k in ipairs(spec.keymaps or {}) do | |
| 22 | + vim.api.nvim_create_autocmd("FileType", { | |
| 23 | + pattern = ft, | |
| 24 | + callback = function(args) | |
| 25 | + local opts = k[4] or {} | |
| 26 | + opts.buffer = args.buf | |
| 27 | + vim.keymap.set(k[1], k[2], k[3], opts) | |
| 28 | + end, | |
| 29 | + }) | |
| 30 | + end | |
| 31 | +end | |
| 32 | + | |
| 33 | +---sets the indent | |
| 34 | +---@param ft string | |
| 35 | +---@param spec FTSpec | |
| 36 | +function M.set_indent(ft, spec) | |
| 37 | + local indent = spec.indent or 4 | |
| 38 | + vim.api.nvim_create_autocmd("FileType", { | |
| 39 | + group = augroup, | |
| 40 | + pattern = ft, | |
| 41 | + callback = function() | |
| 42 | + vim.opt_local.shiftwidth = indent | |
| 43 | + vim.opt_local.tabstop = indent | |
| 44 | + vim.opt_local.softtabstop = indent | |
| 45 | + end, | |
| 46 | + }) | |
| 47 | +end | |
| 48 | + | |
| 49 | +---@class ft.ConformSpec | |
| 50 | +---@field use string[] | |
| 51 | +---@field formatters? table<string, conform.FileFormatterConfig> | |
| 52 | + | |
| 53 | +---sets conform | |
| 54 | +---@param ft string | |
| 55 | +---@param spec FTSpec | |
| 56 | +function M.set_conform(ft, spec) | |
| 57 | + if spec.conform then | |
| 58 | + local conform_opts = { formatters_by_ft = { [ft] = spec.conform.use }, formatters = spec.conform.formatters } | |
| 59 | + require("conform").setup(conform_opts) | |
| 60 | + end | |
| 61 | +end | |
| 62 | + | |
| 63 | +---sets up lsps | |
| 64 | +---@param spec FTSpec | |
| 65 | +function M.set_lsp(spec) | |
| 66 | + if spec.lsp then | |
| 67 | + for key, value in pairs(spec.lsp) do | |
| 68 | + if value.enabled == nil or value.enabled then | |
| 69 | + vim.lsp.config(key, value) | |
| 70 | + vim.lsp.enable(key) | |
| 71 | + end | |
| 72 | + end | |
| 73 | + end | |
| 74 | +end | |
| 75 | + | |
| 21 | 76 | ---@class FTSpec |
| 22 | 77 | ---@field indent? integer |
| 23 | ----@field conform? FTConformSpec | |
| 24 | ----@field keymaps? FTKeymapOptions[] | |
| 25 | ----@field lsp? table<LSPName, any> | |
| 78 | +---@field conform? ft.ConformSpec | |
| 79 | +---@field keymaps? ft.KeymapOptions[] | |
| 80 | +---@field lsp? ft.LSPConf | |
| 26 | 81 | |
| 27 | 82 | ---Loads the config for the given filename |
| 28 | 83 | ---@param filename string |
| @@ -36,31 +91,10 @@ function M.load_file(filename) | ||
| 36 | 91 | return |
| 37 | 92 | end |
| 38 | 93 | local ok, err = pcall(function() |
| 39 | - local indent = spec.indent or 4 | |
| 40 | - vim.api.nvim_create_autocmd("FileType", { | |
| 41 | - group = augroup, | |
| 42 | - pattern = ft, | |
| 43 | - callback = function() | |
| 44 | - vim.opt_local.shiftwidth = indent | |
| 45 | - vim.opt_local.tabstop = indent | |
| 46 | - vim.opt_local.softtabstop = indent | |
| 47 | - end, | |
| 48 | - }) | |
| 49 | - for _, k in ipairs(spec.keymaps or {}) do | |
| 50 | - vim.api.nvim_create_autocmd("FileType", { | |
| 51 | - pattern = ft, | |
| 52 | - callback = function(args) | |
| 53 | - local opts = k[4] or {} | |
| 54 | - opts.buffer = args.buf | |
| 55 | - vim.keymap.set(k[1], k[2], k[3], opts) | |
| 56 | - end, | |
| 57 | - }) | |
| 58 | - end | |
| 59 | - if spec.conform then | |
| 60 | - local conform_opts = | |
| 61 | - { formatters_by_ft = { [ft] = spec.conform.use }, formatters = spec.conform.formatters } | |
| 62 | - require("conform").setup(conform_opts) | |
| 63 | - end | |
| 94 | + M.set_indent(ft, spec) | |
| 95 | + M.set_keymaps(ft, spec) | |
| 96 | + M.set_conform(ft, spec) | |
| 97 | + M.set_lsp(spec) | |
| 64 | 98 | end) |
| 65 | 99 | if not ok then |
| 66 | 100 | local msg = string.format("%s ftconfig error: %s", ft, err) |
+362-362lua/ftconfig/lsp-list.lua
| @@ -1,362 +1,362 @@ | ||
| 1 | ----@alias LSPName | |
| 2 | ----| "ada_ls" | |
| 3 | ----| "agda_ls" | |
| 4 | ----| "aiken" | |
| 5 | ----| "air" | |
| 6 | ----| "alloy_ls" | |
| 7 | ----| "anakin_language_server" | |
| 8 | ----| "angularls" | |
| 9 | ----| "ansiblels" | |
| 10 | ----| "antlersls" | |
| 11 | ----| "apex_ls" | |
| 12 | ----| "arduino_language_server" | |
| 13 | ----| "asm_lsp" | |
| 14 | ----| "ast_grep" | |
| 15 | ----| "astro" | |
| 16 | ----| "atlas" | |
| 17 | ----| "autohotkey_lsp" | |
| 18 | ----| "autotools_ls" | |
| 19 | ----| "awk_ls" | |
| 20 | ----| "azure_pipelines_ls" | |
| 21 | ----| "bacon_ls" | |
| 22 | ----| "ballerina" | |
| 23 | ----| "basedpyright" | |
| 24 | ----| "bashls" | |
| 25 | ----| "basics_ls" | |
| 26 | ----| "bazelrc_lsp" | |
| 27 | ----| "beancount" | |
| 28 | ----| "bicep" | |
| 29 | ----| "biome" | |
| 30 | ----| "bitbake_language_server" | |
| 31 | ----| "bitbake_ls" | |
| 32 | ----| "blueprint_ls" | |
| 33 | ----| "bqls" | |
| 34 | ----| "bqnlsp" | |
| 35 | ----| "bright_script" | |
| 36 | ----| "bsl_ls" | |
| 37 | ----| "buck2" | |
| 38 | ----| "buddy_ls" | |
| 39 | ----| "buf_ls" | |
| 40 | ----| "bufls" | |
| 41 | ----| "bzl" | |
| 42 | ----| "c3_lsp" | |
| 43 | ----| "cadence" | |
| 44 | ----| "cairo_ls" | |
| 45 | ----| "ccls" | |
| 46 | ----| "cds_lsp" | |
| 47 | ----| "circom" | |
| 48 | ----| "clangd" | |
| 49 | ----| "clarity_lsp" | |
| 50 | ----| "clojure_lsp" | |
| 51 | ----| "cmake" | |
| 52 | ----| "cobol_ls" | |
| 53 | ----| "codeqlls" | |
| 54 | ----| "coffeesense" | |
| 55 | ----| "contextive" | |
| 56 | ----| "coq_lsp" | |
| 57 | ----| "crystalline" | |
| 58 | ----| "csharp_ls" | |
| 59 | ----| "css_variables" | |
| 60 | ----| "cssls" | |
| 61 | ----| "cssmodules_ls" | |
| 62 | ----| "cucumber_language_server" | |
| 63 | ----| "cue" | |
| 64 | ----| "custom_elements_ls" | |
| 65 | ----| "cypher_ls" | |
| 66 | ----| "daedalus_ls" | |
| 67 | ----| "dafny" | |
| 68 | ----| "dagger" | |
| 69 | ----| "dartls" | |
| 70 | ----| "dcmls" | |
| 71 | ----| "debputy" | |
| 72 | ----| "delphi_ls" | |
| 73 | ----| "denols" | |
| 74 | ----| "dhall_lsp_server" | |
| 75 | ----| "diagnosticls" | |
| 76 | ----| "digestif" | |
| 77 | ----| "djlsp" | |
| 78 | ----| "docker_compose_language_service" | |
| 79 | ----| "dockerls" | |
| 80 | ----| "dolmenls" | |
| 81 | ----| "dotls" | |
| 82 | ----| "dprint" | |
| 83 | ----| "drools_lsp" | |
| 84 | ----| "ds_pinyin_lsp" | |
| 85 | ----| "dts_lsp" | |
| 86 | ----| "earthlyls" | |
| 87 | ----| "ecsact" | |
| 88 | ----| "efm" | |
| 89 | ----| "elixirls" | |
| 90 | ----| "elmls" | |
| 91 | ----| "elp" | |
| 92 | ----| "ember" | |
| 93 | ----| "emmet_language_server" | |
| 94 | ----| "emmet_ls" | |
| 95 | ----| "erg_language_server" | |
| 96 | ----| "erlangls" | |
| 97 | ----| "esbonio" | |
| 98 | ----| "eslint" | |
| 99 | ----| "facility_language_server" | |
| 100 | ----| "fennel_language_server" | |
| 101 | ----| "fennel_ls" | |
| 102 | ----| "fish_lsp" | |
| 103 | ----| "flow" | |
| 104 | ----| "flux_lsp" | |
| 105 | ----| "foam_ls" | |
| 106 | ----| "fortls" | |
| 107 | ----| "fsautocomplete" | |
| 108 | ----| "fsharp_language_server" | |
| 109 | ----| "fstar" | |
| 110 | ----| "futhark_lsp" | |
| 111 | ----| "gdscript" | |
| 112 | ----| "gdshader_lsp" | |
| 113 | ----| "gh_actions_ls" | |
| 114 | ----| "ghcide" | |
| 115 | ----| "ghdl_ls" | |
| 116 | ----| "ginko_ls" | |
| 117 | ----| "gitlab_ci_ls" | |
| 118 | ----| "glasgow" | |
| 119 | ----| "gleam" | |
| 120 | ----| "glint" | |
| 121 | ----| "glsl_analyzer" | |
| 122 | ----| "glslls" | |
| 123 | ----| "golangci_lint_ls" | |
| 124 | ----| "gopls" | |
| 125 | ----| "gradle_ls" | |
| 126 | ----| "grammarly" | |
| 127 | ----| "graphql" | |
| 128 | ----| "groovyls" | |
| 129 | ----| "guile_ls" | |
| 130 | ----| "harper_ls" | |
| 131 | ----| "haxe_language_server" | |
| 132 | ----| "hdl_checker" | |
| 133 | ----| "helm_ls" | |
| 134 | ----| "hhvm" | |
| 135 | ----| "hie" | |
| 136 | ----| "hlasm" | |
| 137 | ----| "hls" | |
| 138 | ----| "hoon_ls" | |
| 139 | ----| "html" | |
| 140 | ----| "htmx" | |
| 141 | ----| "hydra_lsp" | |
| 142 | ----| "hyprls" | |
| 143 | ----| "idris2_lsp" | |
| 144 | ----| "intelephense" | |
| 145 | ----| "janet_lsp" | |
| 146 | ----| "java_language_server" | |
| 147 | ----| "jdtls" | |
| 148 | ----| "jedi_language_server" | |
| 149 | ----| "jinja_lsp" | |
| 150 | ----| "jqls" | |
| 151 | ----| "jsonls" | |
| 152 | ----| "jsonnet_ls" | |
| 153 | ----| "julials" | |
| 154 | ----| "just" | |
| 155 | ----| "kcl" | |
| 156 | ----| "koka" | |
| 157 | ----| "kotlin_language_server" | |
| 158 | ----| "kulala_ls" | |
| 159 | ----| "laravel_ls" | |
| 160 | ----| "lean3ls" | |
| 161 | ----| "leanls" | |
| 162 | ----| "lelwel_ls" | |
| 163 | ----| "lemminx" | |
| 164 | ----| "lexical" | |
| 165 | ----| "lsp_ai" | |
| 166 | ----| "ltex" | |
| 167 | ----| "ltex_plus" | |
| 168 | ----| "lua_ls" | |
| 169 | ----| "luau_lsp" | |
| 170 | ----| "lwc_ls" | |
| 171 | ----| "m68k" | |
| 172 | ----| "markdown_oxide" | |
| 173 | ----| "marko" | |
| 174 | ----| "marksman" | |
| 175 | ----| "matlab_ls" | |
| 176 | ----| "mdx_analyzer" | |
| 177 | ----| "mesonlsp" | |
| 178 | ----| "metals" | |
| 179 | ----| "millet" | |
| 180 | ----| "mint" | |
| 181 | ----| "mlir_lsp_server" | |
| 182 | ----| "mlir_pdll_lsp_server" | |
| 183 | ----| "mm0_ls" | |
| 184 | ----| "mojo" | |
| 185 | ----| "motoko_lsp" | |
| 186 | ----| "move_analyzer" | |
| 187 | ----| "msbuild_project_tools_server" | |
| 188 | ----| "muon" | |
| 189 | ----| "mutt_ls" | |
| 190 | ----| "nelua_lsp" | |
| 191 | ----| "neocmake" | |
| 192 | ----| "nextflow_ls" | |
| 193 | ----| "nextls" | |
| 194 | ----| "nginx_language_server" | |
| 195 | ----| "nickel_ls" | |
| 196 | ----| "nil_ls" | |
| 197 | ----| "nim_langserver" | |
| 198 | ----| "nimls" | |
| 199 | ----| "nixd" | |
| 200 | ----| "nomad_lsp" | |
| 201 | ----| "ntt" | |
| 202 | ----| "nushell" | |
| 203 | ----| "nxls" | |
| 204 | ----| "ocamlls" | |
| 205 | ----| "ocamllsp" | |
| 206 | ----| "ols" | |
| 207 | ----| "omnisharp" | |
| 208 | ----| "opencl_ls" | |
| 209 | ----| "openedge_ls" | |
| 210 | ----| "openscad_ls" | |
| 211 | ----| "openscad_lsp" | |
| 212 | ----| "oxlint" | |
| 213 | ----| "pact_ls" | |
| 214 | ----| "pasls" | |
| 215 | ----| "pbls" | |
| 216 | ----| "perlls" | |
| 217 | ----| "perlnavigator" | |
| 218 | ----| "perlpls" | |
| 219 | ----| "pest_ls" | |
| 220 | ----| "phan" | |
| 221 | ----| "phpactor" | |
| 222 | ----| "pico8_ls" | |
| 223 | ----| "pkgbuild_language_server" | |
| 224 | ----| "please" | |
| 225 | ----| "poryscript_pls" | |
| 226 | ----| "postgres_lsp" | |
| 227 | ----| "powershell_es" | |
| 228 | ----| "prismals" | |
| 229 | ----| "prolog_ls" | |
| 230 | ----| "prosemd_lsp" | |
| 231 | ----| "protols" | |
| 232 | ----| "psalm" | |
| 233 | ----| "pug" | |
| 234 | ----| "puppet" | |
| 235 | ----| "purescriptls" | |
| 236 | ----| "pylsp" | |
| 237 | ----| "pylyzer" | |
| 238 | ----| "pyre" | |
| 239 | ----| "pyright" | |
| 240 | ----| "qmlls" | |
| 241 | ----| "quick_lint_js" | |
| 242 | ----| "r_language_server" | |
| 243 | ----| "racket_langserver" | |
| 244 | ----| "raku_navigator" | |
| 245 | ----| "reason_ls" | |
| 246 | ----| "regal" | |
| 247 | ----| "regols" | |
| 248 | ----| "relay_lsp" | |
| 249 | ----| "remark_ls" | |
| 250 | ----| "rescriptls" | |
| 251 | ----| "rls" | |
| 252 | ----| "rnix" | |
| 253 | ----| "robotcode" | |
| 254 | ----| "robotframework_ls" | |
| 255 | ----| "roc_ls" | |
| 256 | ----| "rome" | |
| 257 | ----| "rpmspec" | |
| 258 | ----| "rubocop" | |
| 259 | ----| "ruby_lsp" | |
| 260 | ----| "ruff" | |
| 261 | ----| "ruff_lsp" | |
| 262 | ----| "rune_languageserver" | |
| 263 | ----| "rust_analyzer" | |
| 264 | ----| "salt_ls" | |
| 265 | ----| "scheme_langserver" | |
| 266 | ----| "scry" | |
| 267 | ----| "selene3p_ls" | |
| 268 | ----| "serve_d" | |
| 269 | ----| "shopify_theme_ls" | |
| 270 | ----| "sixtyfps" | |
| 271 | ----| "slangd" | |
| 272 | ----| "slint_lsp" | |
| 273 | ----| "smarty_ls" | |
| 274 | ----| "smithy_ls" | |
| 275 | ----| "snakeskin_ls" | |
| 276 | ----| "snyk_ls" | |
| 277 | ----| "solang" | |
| 278 | ----| "solargraph" | |
| 279 | ----| "solc" | |
| 280 | ----| "solidity" | |
| 281 | ----| "solidity_ls" | |
| 282 | ----| "solidity_ls_nomicfoundation" | |
| 283 | ----| "somesass_ls" | |
| 284 | ----| "sorbet" | |
| 285 | ----| "sourcekit" | |
| 286 | ----| "sourcery" | |
| 287 | ----| "spectral" | |
| 288 | ----| "spyglassmc_language_server" | |
| 289 | ----| "sqlls" | |
| 290 | ----| "sqls" | |
| 291 | ----| "standardrb" | |
| 292 | ----| "starlark_rust" | |
| 293 | ----| "starpls" | |
| 294 | ----| "statix" | |
| 295 | ----| "steep" | |
| 296 | ----| "stimulus_ls" | |
| 297 | ----| "stylelint_lsp" | |
| 298 | ----| "stylua3p_ls" | |
| 299 | ----| "superhtml" | |
| 300 | ----| "svelte" | |
| 301 | ----| "svlangserver" | |
| 302 | ----| "svls" | |
| 303 | ----| "swift_mesonls" | |
| 304 | ----| "syntax_tree" | |
| 305 | ----| "systemd_ls" | |
| 306 | ----| "tabby_ml" | |
| 307 | ----| "tailwindcss" | |
| 308 | ----| "taplo" | |
| 309 | ----| "tblgen_lsp_server" | |
| 310 | ----| "teal_ls" | |
| 311 | ----| "templ" | |
| 312 | ----| "terraform_lsp" | |
| 313 | ----| "terraformls" | |
| 314 | ----| "texlab" | |
| 315 | ----| "textlsp" | |
| 316 | ----| "tflint" | |
| 317 | ----| "theme_check" | |
| 318 | ----| "thriftls" | |
| 319 | ----| "tilt_ls" | |
| 320 | ----| "tinymist" | |
| 321 | ----| "ts_ls" | |
| 322 | ----| "ts_query_ls" | |
| 323 | ----| "tsp_server" | |
| 324 | ----| "ttags" | |
| 325 | ----| "turbo_ls" | |
| 326 | ----| "turtle_ls" | |
| 327 | ----| "tvm_ffi_navigator" | |
| 328 | ----| "twiggy_language_server" | |
| 329 | ----| "typeprof" | |
| 330 | ----| "typos_lsp" | |
| 331 | ----| "typst_lsp" | |
| 332 | ----| "uiua" | |
| 333 | ----| "ungrammar_languageserver" | |
| 334 | ----| "unison" | |
| 335 | ----| "unocss" | |
| 336 | ----| "uvls" | |
| 337 | ----| "v_analyzer" | |
| 338 | ----| "vacuum" | |
| 339 | ----| "vala_ls" | |
| 340 | ----| "vale_ls" | |
| 341 | ----| "vdmj" | |
| 342 | ----| "vectorcode_server" | |
| 343 | ----| "verible" | |
| 344 | ----| "veridian" | |
| 345 | ----| "veryl_ls" | |
| 346 | ----| "vhdl_ls" | |
| 347 | ----| "vimls" | |
| 348 | ----| "visualforce_ls" | |
| 349 | ----| "vls" | |
| 350 | ----| "volar" | |
| 351 | ----| "vscoqtop" | |
| 352 | ----| "vtsls" | |
| 353 | ----| "vuels" | |
| 354 | ----| "wasm_language_tools" | |
| 355 | ----| "wgsl_analyzer" | |
| 356 | ----| "yamlls" | |
| 357 | ----| "yang_lsp" | |
| 358 | ----| "yls" | |
| 359 | ----| "ziggy" | |
| 360 | ----| "ziggy_schema" | |
| 361 | ----| "zk" | |
| 362 | ----| "zls" | |
| 1 | +---@class ft.LSPConf | |
| 2 | +---@field ada_ls? vim.lsp.Config | |
| 3 | +---@field agda_ls? vim.lsp.Config | |
| 4 | +---@field aiken? vim.lsp.Config | |
| 5 | +---@field air? vim.lsp.Config | |
| 6 | +---@field alloy_ls? vim.lsp.Config | |
| 7 | +---@field anakin_language_server? vim.lsp.Config | |
| 8 | +---@field angularls? vim.lsp.Config | |
| 9 | +---@field ansiblels? vim.lsp.Config | |
| 10 | +---@field antlersls? vim.lsp.Config | |
| 11 | +---@field apex_ls? vim.lsp.Config | |
| 12 | +---@field arduino_language_server? vim.lsp.Config | |
| 13 | +---@field asm_lsp? vim.lsp.Config | |
| 14 | +---@field ast_grep? vim.lsp.Config | |
| 15 | +---@field astro? vim.lsp.Config | |
| 16 | +---@field atlas? vim.lsp.Config | |
| 17 | +---@field autohotkey_lsp? vim.lsp.Config | |
| 18 | +---@field autotools_ls? vim.lsp.Config | |
| 19 | +---@field awk_ls? vim.lsp.Config | |
| 20 | +---@field azure_pipelines_ls? vim.lsp.Config | |
| 21 | +---@field bacon_ls? vim.lsp.Config | |
| 22 | +---@field ballerina? vim.lsp.Config | |
| 23 | +---@field basedpyright? vim.lsp.Config | |
| 24 | +---@field bashls? vim.lsp.Config | |
| 25 | +---@field basics_ls? vim.lsp.Config | |
| 26 | +---@field bazelrc_lsp? vim.lsp.Config | |
| 27 | +---@field beancount? vim.lsp.Config | |
| 28 | +---@field bicep? vim.lsp.Config | |
| 29 | +---@field biome? vim.lsp.Config | |
| 30 | +---@field bitbake_language_server? vim.lsp.Config | |
| 31 | +---@field bitbake_ls? vim.lsp.Config | |
| 32 | +---@field blueprint_ls? vim.lsp.Config | |
| 33 | +---@field bqls? vim.lsp.Config | |
| 34 | +---@field bqnlsp? vim.lsp.Config | |
| 35 | +---@field bright_script? vim.lsp.Config | |
| 36 | +---@field bsl_ls? vim.lsp.Config | |
| 37 | +---@field buck2? vim.lsp.Config | |
| 38 | +---@field buddy_ls? vim.lsp.Config | |
| 39 | +---@field buf_ls? vim.lsp.Config | |
| 40 | +---@field bufls? vim.lsp.Config | |
| 41 | +---@field bzl? vim.lsp.Config | |
| 42 | +---@field c3_lsp? vim.lsp.Config | |
| 43 | +---@field cadence? vim.lsp.Config | |
| 44 | +---@field cairo_ls? vim.lsp.Config | |
| 45 | +---@field ccls? vim.lsp.Config | |
| 46 | +---@field cds_lsp? vim.lsp.Config | |
| 47 | +---@field circom? vim.lsp.Config | |
| 48 | +---@field clangd? vim.lsp.Config | |
| 49 | +---@field clarity_lsp? vim.lsp.Config | |
| 50 | +---@field clojure_lsp? vim.lsp.Config | |
| 51 | +---@field cmake? vim.lsp.Config | |
| 52 | +---@field cobol_ls? vim.lsp.Config | |
| 53 | +---@field codeqlls? vim.lsp.Config | |
| 54 | +---@field coffeesense? vim.lsp.Config | |
| 55 | +---@field contextive? vim.lsp.Config | |
| 56 | +---@field coq_lsp? vim.lsp.Config | |
| 57 | +---@field crystalline? vim.lsp.Config | |
| 58 | +---@field csharp_ls? vim.lsp.Config | |
| 59 | +---@field css_variables? vim.lsp.Config | |
| 60 | +---@field cssls? vim.lsp.Config | |
| 61 | +---@field cssmodules_ls? vim.lsp.Config | |
| 62 | +---@field cucumber_language_server? vim.lsp.Config | |
| 63 | +---@field cue? vim.lsp.Config | |
| 64 | +---@field custom_elements_ls? vim.lsp.Config | |
| 65 | +---@field cypher_ls? vim.lsp.Config | |
| 66 | +---@field daedalus_ls? vim.lsp.Config | |
| 67 | +---@field dafny? vim.lsp.Config | |
| 68 | +---@field dagger? vim.lsp.Config | |
| 69 | +---@field dartls? vim.lsp.Config | |
| 70 | +---@field dcmls? vim.lsp.Config | |
| 71 | +---@field debputy? vim.lsp.Config | |
| 72 | +---@field delphi_ls? vim.lsp.Config | |
| 73 | +---@field denols? vim.lsp.Config | |
| 74 | +---@field dhall_lsp_server? vim.lsp.Config | |
| 75 | +---@field diagnosticls? vim.lsp.Config | |
| 76 | +---@field digestif? vim.lsp.Config | |
| 77 | +---@field djlsp? vim.lsp.Config | |
| 78 | +---@field docker_compose_language_service? vim.lsp.Config | |
| 79 | +---@field dockerls? vim.lsp.Config | |
| 80 | +---@field dolmenls? vim.lsp.Config | |
| 81 | +---@field dotls? vim.lsp.Config | |
| 82 | +---@field dprint? vim.lsp.Config | |
| 83 | +---@field drools_lsp? vim.lsp.Config | |
| 84 | +---@field ds_pinyin_lsp? vim.lsp.Config | |
| 85 | +---@field dts_lsp? vim.lsp.Config | |
| 86 | +---@field earthlyls? vim.lsp.Config | |
| 87 | +---@field ecsact? vim.lsp.Config | |
| 88 | +---@field efm? vim.lsp.Config | |
| 89 | +---@field elixirls? vim.lsp.Config | |
| 90 | +---@field elmls? vim.lsp.Config | |
| 91 | +---@field elp? vim.lsp.Config | |
| 92 | +---@field ember? vim.lsp.Config | |
| 93 | +---@field emmet_language_server? vim.lsp.Config | |
| 94 | +---@field emmet_ls? vim.lsp.Config | |
| 95 | +---@field erg_language_server? vim.lsp.Config | |
| 96 | +---@field erlangls? vim.lsp.Config | |
| 97 | +---@field esbonio? vim.lsp.Config | |
| 98 | +---@field eslint? vim.lsp.Config | |
| 99 | +---@field facility_language_server? vim.lsp.Config | |
| 100 | +---@field fennel_language_server? vim.lsp.Config | |
| 101 | +---@field fennel_ls? vim.lsp.Config | |
| 102 | +---@field fish_lsp? vim.lsp.Config | |
| 103 | +---@field flow? vim.lsp.Config | |
| 104 | +---@field flux_lsp? vim.lsp.Config | |
| 105 | +---@field foam_ls? vim.lsp.Config | |
| 106 | +---@field fortls? vim.lsp.Config | |
| 107 | +---@field fsautocomplete? vim.lsp.Config | |
| 108 | +---@field fsharp_language_server? vim.lsp.Config | |
| 109 | +---@field fstar? vim.lsp.Config | |
| 110 | +---@field futhark_lsp? vim.lsp.Config | |
| 111 | +---@field gdscript? vim.lsp.Config | |
| 112 | +---@field gdshader_lsp? vim.lsp.Config | |
| 113 | +---@field gh_actions_ls? vim.lsp.Config | |
| 114 | +---@field ghcide? vim.lsp.Config | |
| 115 | +---@field ghdl_ls? vim.lsp.Config | |
| 116 | +---@field ginko_ls? vim.lsp.Config | |
| 117 | +---@field gitlab_ci_ls? vim.lsp.Config | |
| 118 | +---@field glasgow? vim.lsp.Config | |
| 119 | +---@field gleam? vim.lsp.Config | |
| 120 | +---@field glint? vim.lsp.Config | |
| 121 | +---@field glsl_analyzer? vim.lsp.Config | |
| 122 | +---@field glslls? vim.lsp.Config | |
| 123 | +---@field golangci_lint_ls? vim.lsp.Config | |
| 124 | +---@field gopls? vim.lsp.Config | |
| 125 | +---@field gradle_ls? vim.lsp.Config | |
| 126 | +---@field grammarly? vim.lsp.Config | |
| 127 | +---@field graphql? vim.lsp.Config | |
| 128 | +---@field groovyls? vim.lsp.Config | |
| 129 | +---@field guile_ls? vim.lsp.Config | |
| 130 | +---@field harper_ls? vim.lsp.Config | |
| 131 | +---@field haxe_language_server? vim.lsp.Config | |
| 132 | +---@field hdl_checker? vim.lsp.Config | |
| 133 | +---@field helm_ls? vim.lsp.Config | |
| 134 | +---@field hhvm? vim.lsp.Config | |
| 135 | +---@field hie? vim.lsp.Config | |
| 136 | +---@field hlasm? vim.lsp.Config | |
| 137 | +---@field hls? vim.lsp.Config | |
| 138 | +---@field hoon_ls? vim.lsp.Config | |
| 139 | +---@field html? vim.lsp.Config | |
| 140 | +---@field htmx? vim.lsp.Config | |
| 141 | +---@field hydra_lsp? vim.lsp.Config | |
| 142 | +---@field hyprls? vim.lsp.Config | |
| 143 | +---@field idris2_lsp? vim.lsp.Config | |
| 144 | +---@field intelephense? vim.lsp.Config | |
| 145 | +---@field janet_lsp? vim.lsp.Config | |
| 146 | +---@field java_language_server? vim.lsp.Config | |
| 147 | +---@field jdtls? vim.lsp.Config | |
| 148 | +---@field jedi_language_server? vim.lsp.Config | |
| 149 | +---@field jinja_lsp? vim.lsp.Config | |
| 150 | +---@field jqls? vim.lsp.Config | |
| 151 | +---@field jsonls? vim.lsp.Config | |
| 152 | +---@field jsonnet_ls? vim.lsp.Config | |
| 153 | +---@field julials? vim.lsp.Config | |
| 154 | +---@field just? vim.lsp.Config | |
| 155 | +---@field kcl? vim.lsp.Config | |
| 156 | +---@field koka? vim.lsp.Config | |
| 157 | +---@field kotlin_language_server? vim.lsp.Config | |
| 158 | +---@field kulala_ls? vim.lsp.Config | |
| 159 | +---@field laravel_ls? vim.lsp.Config | |
| 160 | +---@field lean3ls? vim.lsp.Config | |
| 161 | +---@field leanls? vim.lsp.Config | |
| 162 | +---@field lelwel_ls? vim.lsp.Config | |
| 163 | +---@field lemminx? vim.lsp.Config | |
| 164 | +---@field lexical? vim.lsp.Config | |
| 165 | +---@field lsp_ai? vim.lsp.Config | |
| 166 | +---@field ltex? vim.lsp.Config | |
| 167 | +---@field ltex_plus? vim.lsp.Config | |
| 168 | +---@field lua_ls? vim.lsp.Config | |
| 169 | +---@field luau_lsp? vim.lsp.Config | |
| 170 | +---@field lwc_ls? vim.lsp.Config | |
| 171 | +---@field m68k? vim.lsp.Config | |
| 172 | +---@field markdown_oxide? vim.lsp.Config | |
| 173 | +---@field marko? vim.lsp.Config | |
| 174 | +---@field marksman? vim.lsp.Config | |
| 175 | +---@field matlab_ls? vim.lsp.Config | |
| 176 | +---@field mdx_analyzer? vim.lsp.Config | |
| 177 | +---@field mesonlsp? vim.lsp.Config | |
| 178 | +---@field metals? vim.lsp.Config | |
| 179 | +---@field millet? vim.lsp.Config | |
| 180 | +---@field mint? vim.lsp.Config | |
| 181 | +---@field mlir_lsp_server? vim.lsp.Config | |
| 182 | +---@field mlir_pdll_lsp_server? vim.lsp.Config | |
| 183 | +---@field mm0_ls? vim.lsp.Config | |
| 184 | +---@field mojo? vim.lsp.Config | |
| 185 | +---@field motoko_lsp? vim.lsp.Config | |
| 186 | +---@field move_analyzer? vim.lsp.Config | |
| 187 | +---@field msbuild_project_tools_server? vim.lsp.Config | |
| 188 | +---@field muon? vim.lsp.Config | |
| 189 | +---@field mutt_ls? vim.lsp.Config | |
| 190 | +---@field nelua_lsp? vim.lsp.Config | |
| 191 | +---@field neocmake? vim.lsp.Config | |
| 192 | +---@field nextflow_ls? vim.lsp.Config | |
| 193 | +---@field nextls? vim.lsp.Config | |
| 194 | +---@field nginx_language_server? vim.lsp.Config | |
| 195 | +---@field nickel_ls? vim.lsp.Config | |
| 196 | +---@field nil_ls? vim.lsp.Config | |
| 197 | +---@field nim_langserver? vim.lsp.Config | |
| 198 | +---@field nimls? vim.lsp.Config | |
| 199 | +---@field nixd? vim.lsp.Config | |
| 200 | +---@field nomad_lsp? vim.lsp.Config | |
| 201 | +---@field ntt? vim.lsp.Config | |
| 202 | +---@field nushell? vim.lsp.Config | |
| 203 | +---@field nxls? vim.lsp.Config | |
| 204 | +---@field ocamlls? vim.lsp.Config | |
| 205 | +---@field ocamllsp? vim.lsp.Config | |
| 206 | +---@field ols? vim.lsp.Config | |
| 207 | +---@field omnisharp? vim.lsp.Config | |
| 208 | +---@field opencl_ls? vim.lsp.Config | |
| 209 | +---@field openedge_ls? vim.lsp.Config | |
| 210 | +---@field openscad_ls? vim.lsp.Config | |
| 211 | +---@field openscad_lsp? vim.lsp.Config | |
| 212 | +---@field oxlint? vim.lsp.Config | |
| 213 | +---@field pact_ls? vim.lsp.Config | |
| 214 | +---@field pasls? vim.lsp.Config | |
| 215 | +---@field pbls? vim.lsp.Config | |
| 216 | +---@field perlls? vim.lsp.Config | |
| 217 | +---@field perlnavigator? vim.lsp.Config | |
| 218 | +---@field perlpls? vim.lsp.Config | |
| 219 | +---@field pest_ls? vim.lsp.Config | |
| 220 | +---@field phan? vim.lsp.Config | |
| 221 | +---@field phpactor? vim.lsp.Config | |
| 222 | +---@field pico8_ls? vim.lsp.Config | |
| 223 | +---@field pkgbuild_language_server? vim.lsp.Config | |
| 224 | +---@field please? vim.lsp.Config | |
| 225 | +---@field poryscript_pls? vim.lsp.Config | |
| 226 | +---@field postgres_lsp? vim.lsp.Config | |
| 227 | +---@field powershell_es? vim.lsp.Config | |
| 228 | +---@field prismals? vim.lsp.Config | |
| 229 | +---@field prolog_ls? vim.lsp.Config | |
| 230 | +---@field prosemd_lsp? vim.lsp.Config | |
| 231 | +---@field protols? vim.lsp.Config | |
| 232 | +---@field psalm? vim.lsp.Config | |
| 233 | +---@field pug? vim.lsp.Config | |
| 234 | +---@field puppet? vim.lsp.Config | |
| 235 | +---@field purescriptls? vim.lsp.Config | |
| 236 | +---@field pylsp? vim.lsp.Config | |
| 237 | +---@field pylyzer? vim.lsp.Config | |
| 238 | +---@field pyre? vim.lsp.Config | |
| 239 | +---@field pyright? vim.lsp.Config | |
| 240 | +---@field qmlls? vim.lsp.Config | |
| 241 | +---@field quick_lint_js? vim.lsp.Config | |
| 242 | +---@field r_language_server? vim.lsp.Config | |
| 243 | +---@field racket_langserver? vim.lsp.Config | |
| 244 | +---@field raku_navigator? vim.lsp.Config | |
| 245 | +---@field reason_ls? vim.lsp.Config | |
| 246 | +---@field regal? vim.lsp.Config | |
| 247 | +---@field regols? vim.lsp.Config | |
| 248 | +---@field relay_lsp? vim.lsp.Config | |
| 249 | +---@field remark_ls? vim.lsp.Config | |
| 250 | +---@field rescriptls? vim.lsp.Config | |
| 251 | +---@field rls? vim.lsp.Config | |
| 252 | +---@field rnix? vim.lsp.Config | |
| 253 | +---@field robotcode? vim.lsp.Config | |
| 254 | +---@field robotframework_ls? vim.lsp.Config | |
| 255 | +---@field roc_ls? vim.lsp.Config | |
| 256 | +---@field rome? vim.lsp.Config | |
| 257 | +---@field rpmspec? vim.lsp.Config | |
| 258 | +---@field rubocop? vim.lsp.Config | |
| 259 | +---@field ruby_lsp? vim.lsp.Config | |
| 260 | +---@field ruff? vim.lsp.Config | |
| 261 | +---@field ruff_lsp? vim.lsp.Config | |
| 262 | +---@field rune_languageserver? vim.lsp.Config | |
| 263 | +---@field rust_analyzer? vim.lsp.Config | |
| 264 | +---@field salt_ls? vim.lsp.Config | |
| 265 | +---@field scheme_langserver? vim.lsp.Config | |
| 266 | +---@field scry? vim.lsp.Config | |
| 267 | +---@field selene3p_ls? vim.lsp.Config | |
| 268 | +---@field serve_d? vim.lsp.Config | |
| 269 | +---@field shopify_theme_ls? vim.lsp.Config | |
| 270 | +---@field sixtyfps? vim.lsp.Config | |
| 271 | +---@field slangd? vim.lsp.Config | |
| 272 | +---@field slint_lsp? vim.lsp.Config | |
| 273 | +---@field smarty_ls? vim.lsp.Config | |
| 274 | +---@field smithy_ls? vim.lsp.Config | |
| 275 | +---@field snakeskin_ls? vim.lsp.Config | |
| 276 | +---@field snyk_ls? vim.lsp.Config | |
| 277 | +---@field solang? vim.lsp.Config | |
| 278 | +---@field solargraph? vim.lsp.Config | |
| 279 | +---@field solc? vim.lsp.Config | |
| 280 | +---@field solidity? vim.lsp.Config | |
| 281 | +---@field solidity_ls? vim.lsp.Config | |
| 282 | +---@field solidity_ls_nomicfoundation? vim.lsp.Config | |
| 283 | +---@field somesass_ls? vim.lsp.Config | |
| 284 | +---@field sorbet? vim.lsp.Config | |
| 285 | +---@field sourcekit? vim.lsp.Config | |
| 286 | +---@field sourcery? vim.lsp.Config | |
| 287 | +---@field spectral? vim.lsp.Config | |
| 288 | +---@field spyglassmc_language_server? vim.lsp.Config | |
| 289 | +---@field sqlls? vim.lsp.Config | |
| 290 | +---@field sqls? vim.lsp.Config | |
| 291 | +---@field standardrb? vim.lsp.Config | |
| 292 | +---@field starlark_rust? vim.lsp.Config | |
| 293 | +---@field starpls? vim.lsp.Config | |
| 294 | +---@field statix? vim.lsp.Config | |
| 295 | +---@field steep? vim.lsp.Config | |
| 296 | +---@field stimulus_ls? vim.lsp.Config | |
| 297 | +---@field stylelint_lsp? vim.lsp.Config | |
| 298 | +---@field stylua3p_ls? vim.lsp.Config | |
| 299 | +---@field superhtml? vim.lsp.Config | |
| 300 | +---@field svelte? vim.lsp.Config | |
| 301 | +---@field svlangserver? vim.lsp.Config | |
| 302 | +---@field svls? vim.lsp.Config | |
| 303 | +---@field swift_mesonls? vim.lsp.Config | |
| 304 | +---@field syntax_tree? vim.lsp.Config | |
| 305 | +---@field systemd_ls? vim.lsp.Config | |
| 306 | +---@field tabby_ml? vim.lsp.Config | |
| 307 | +---@field tailwindcss? vim.lsp.Config | |
| 308 | +---@field taplo? vim.lsp.Config | |
| 309 | +---@field tblgen_lsp_server? vim.lsp.Config | |
| 310 | +---@field teal_ls? vim.lsp.Config | |
| 311 | +---@field templ? vim.lsp.Config | |
| 312 | +---@field terraform_lsp? vim.lsp.Config | |
| 313 | +---@field terraformls? vim.lsp.Config | |
| 314 | +---@field texlab? vim.lsp.Config | |
| 315 | +---@field textlsp? vim.lsp.Config | |
| 316 | +---@field tflint? vim.lsp.Config | |
| 317 | +---@field theme_check? vim.lsp.Config | |
| 318 | +---@field thriftls? vim.lsp.Config | |
| 319 | +---@field tilt_ls? vim.lsp.Config | |
| 320 | +---@field tinymist? vim.lsp.Config | |
| 321 | +---@field ts_ls? vim.lsp.Config | |
| 322 | +---@field ts_query_ls? vim.lsp.Config | |
| 323 | +---@field tsp_server? vim.lsp.Config | |
| 324 | +---@field ttags? vim.lsp.Config | |
| 325 | +---@field turbo_ls? vim.lsp.Config | |
| 326 | +---@field turtle_ls? vim.lsp.Config | |
| 327 | +---@field tvm_ffi_navigator? vim.lsp.Config | |
| 328 | +---@field twiggy_language_server? vim.lsp.Config | |
| 329 | +---@field typeprof? vim.lsp.Config | |
| 330 | +---@field typos_lsp? vim.lsp.Config | |
| 331 | +---@field typst_lsp? vim.lsp.Config | |
| 332 | +---@field uiua? vim.lsp.Config | |
| 333 | +---@field ungrammar_languageserver? vim.lsp.Config | |
| 334 | +---@field unison? vim.lsp.Config | |
| 335 | +---@field unocss? vim.lsp.Config | |
| 336 | +---@field uvls? vim.lsp.Config | |
| 337 | +---@field v_analyzer? vim.lsp.Config | |
| 338 | +---@field vacuum? vim.lsp.Config | |
| 339 | +---@field vala_ls? vim.lsp.Config | |
| 340 | +---@field vale_ls? vim.lsp.Config | |
| 341 | +---@field vdmj? vim.lsp.Config | |
| 342 | +---@field vectorcode_server? vim.lsp.Config | |
| 343 | +---@field verible? vim.lsp.Config | |
| 344 | +---@field veridian? vim.lsp.Config | |
| 345 | +---@field veryl_ls? vim.lsp.Config | |
| 346 | +---@field vhdl_ls? vim.lsp.Config | |
| 347 | +---@field vimls? vim.lsp.Config | |
| 348 | +---@field visualforce_ls? vim.lsp.Config | |
| 349 | +---@field vls? vim.lsp.Config | |
| 350 | +---@field volar? vim.lsp.Config | |
| 351 | +---@field vscoqtop? vim.lsp.Config | |
| 352 | +---@field vtsls? vim.lsp.Config | |
| 353 | +---@field vuels? vim.lsp.Config | |
| 354 | +---@field wasm_language_tools? vim.lsp.Config | |
| 355 | +---@field wgsl_analyzer? vim.lsp.Config | |
| 356 | +---@field yamlls? vim.lsp.Config | |
| 357 | +---@field yang_lsp? vim.lsp.Config | |
| 358 | +---@field yls? vim.lsp.Config | |
| 359 | +---@field ziggy? vim.lsp.Config | |
| 360 | +---@field ziggy_schema? vim.lsp.Config | |
| 361 | +---@field zk? vim.lsp.Config | |
| 362 | +---@field zls? vim.lsp.Config |