506 lines
12 KiB
JSON
506 lines
12 KiB
JSON
{
|
|
"rust-analyzer": {
|
|
"command": "rust-analyzer",
|
|
"args": [],
|
|
"fileTypes": [".rs"],
|
|
"rootMarkers": ["Cargo.toml", "rust-analyzer.toml"],
|
|
"initOptions": {},
|
|
"settings": {
|
|
"rust-analyzer": {
|
|
"checkOnSave": false
|
|
}
|
|
},
|
|
"capabilities": {
|
|
"flycheck": true,
|
|
"ssr": true,
|
|
"expandMacro": true,
|
|
"runnables": true,
|
|
"relatedTests": true
|
|
}
|
|
},
|
|
"tlaplus": {
|
|
"command": "tlapm_lsp",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".tla", ".tlaplus"],
|
|
"rootMarkers": ["*.tla"]
|
|
},
|
|
"clangd": {
|
|
"command": "clangd",
|
|
"args": ["--background-index", "--clang-tidy", "--header-insertion=iwyu"],
|
|
"fileTypes": [".c", ".cpp", ".cc", ".cxx", ".h", ".hpp", ".hxx", ".m", ".mm"],
|
|
"rootMarkers": ["compile_commands.json", "CMakeLists.txt", ".clangd", ".clang-format", "Makefile"]
|
|
},
|
|
"zls": {
|
|
"command": "zls",
|
|
"args": [],
|
|
"fileTypes": [".zig"],
|
|
"rootMarkers": ["build.zig", "build.zig.zon", "zls.json"]
|
|
},
|
|
"gopls": {
|
|
"command": "gopls",
|
|
"args": ["serve"],
|
|
"fileTypes": [".go", ".mod", ".sum"],
|
|
"rootMarkers": ["go.mod", "go.work", "go.sum"],
|
|
"settings": {
|
|
"gopls": {
|
|
"analyses": {
|
|
"unusedparams": true,
|
|
"shadow": true
|
|
},
|
|
"staticcheck": true,
|
|
"gofumpt": true
|
|
}
|
|
}
|
|
},
|
|
"typescript-language-server": {
|
|
"command": "typescript-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs"],
|
|
"rootMarkers": ["package.json", "tsconfig.json", "jsconfig.json"],
|
|
"initOptions": {
|
|
"hostInfo": "omp-coding-agent",
|
|
"preferences": {
|
|
"includeInlayParameterNameHints": "all",
|
|
"includeInlayVariableTypeHints": true,
|
|
"includeInlayFunctionParameterTypeHints": true
|
|
}
|
|
}
|
|
},
|
|
"biome": {
|
|
"command": "biome",
|
|
"args": ["lsp-proxy"],
|
|
"fileTypes": [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs", ".json", ".jsonc", ".css"],
|
|
"rootMarkers": ["biome.json", "biome.jsonc"],
|
|
"isLinter": true
|
|
},
|
|
"eslint": {
|
|
"command": "vscode-eslint-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".ts", ".tsx", ".js", ".jsx", ".mjs", ".cjs", ".vue", ".svelte"],
|
|
"rootMarkers": [
|
|
".eslintrc",
|
|
".eslintrc.js",
|
|
".eslintrc.json",
|
|
".eslintrc.yml",
|
|
"eslint.config.js",
|
|
"eslint.config.mjs"
|
|
],
|
|
"isLinter": true,
|
|
"settings": {
|
|
"validate": "on",
|
|
"run": "onType"
|
|
}
|
|
},
|
|
"denols": {
|
|
"command": "deno",
|
|
"args": ["lsp"],
|
|
"fileTypes": [".ts", ".tsx", ".js", ".jsx"],
|
|
"rootMarkers": ["deno.json", "deno.jsonc", "deno.lock"],
|
|
"initOptions": {
|
|
"enable": true,
|
|
"lint": true,
|
|
"unstable": true
|
|
}
|
|
},
|
|
"vscode-html-language-server": {
|
|
"command": "vscode-html-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".html", ".htm"],
|
|
"rootMarkers": ["package.json", ".git"],
|
|
"initOptions": {
|
|
"provideFormatter": true
|
|
}
|
|
},
|
|
"vscode-css-language-server": {
|
|
"command": "vscode-css-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".css", ".scss", ".sass", ".less"],
|
|
"rootMarkers": ["package.json", ".git"],
|
|
"initOptions": {
|
|
"provideFormatter": true
|
|
}
|
|
},
|
|
"vscode-json-language-server": {
|
|
"command": "vscode-json-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".json", ".jsonc"],
|
|
"rootMarkers": ["package.json", ".git"],
|
|
"initOptions": {
|
|
"provideFormatter": true
|
|
}
|
|
},
|
|
"tailwindcss": {
|
|
"command": "tailwindcss-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".html", ".css", ".scss", ".js", ".jsx", ".ts", ".tsx", ".vue", ".svelte"],
|
|
"rootMarkers": ["tailwind.config.js", "tailwind.config.ts", "tailwind.config.mjs", "tailwind.config.cjs"]
|
|
},
|
|
"svelte": {
|
|
"command": "svelteserver",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".svelte"],
|
|
"rootMarkers": ["svelte.config.js", "svelte.config.mjs", "package.json"]
|
|
},
|
|
"vue-language-server": {
|
|
"command": "vue-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".vue"],
|
|
"rootMarkers": ["vue.config.js", "nuxt.config.js", "nuxt.config.ts", "package.json"]
|
|
},
|
|
"astro": {
|
|
"command": "astro-ls",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".astro"],
|
|
"rootMarkers": ["astro.config.mjs", "astro.config.js", "astro.config.ts"]
|
|
},
|
|
"pyright": {
|
|
"command": "pyright-langserver",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".py", ".pyi"],
|
|
"rootMarkers": ["pyproject.toml", "pyrightconfig.json", "setup.py", "setup.cfg", "requirements.txt", "Pipfile"],
|
|
"settings": {
|
|
"python": {
|
|
"analysis": {
|
|
"autoSearchPaths": true,
|
|
"diagnosticMode": "openFilesOnly",
|
|
"useLibraryCodeForTypes": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"basedpyright": {
|
|
"command": "basedpyright-langserver",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".py", ".pyi"],
|
|
"rootMarkers": ["pyproject.toml", "pyrightconfig.json", "setup.py", "requirements.txt"],
|
|
"settings": {
|
|
"basedpyright": {
|
|
"analysis": {
|
|
"autoSearchPaths": true,
|
|
"diagnosticMode": "openFilesOnly",
|
|
"useLibraryCodeForTypes": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"pylsp": {
|
|
"command": "pylsp",
|
|
"args": [],
|
|
"fileTypes": [".py"],
|
|
"rootMarkers": ["pyproject.toml", "setup.py", "setup.cfg", "requirements.txt", "Pipfile"]
|
|
},
|
|
"ty": {
|
|
"command": "ty",
|
|
"args": ["server"],
|
|
"fileTypes": [".py", ".pyi"],
|
|
"rootMarkers": ["pyproject.toml", "ty.toml", "setup.py", "setup.cfg", "requirements.txt", "Pipfile"]
|
|
},
|
|
"ruff": {
|
|
"command": "ruff",
|
|
"args": ["server"],
|
|
"fileTypes": [".py", ".pyi"],
|
|
"rootMarkers": ["pyproject.toml", "ruff.toml", ".ruff.toml"],
|
|
"isLinter": true
|
|
},
|
|
"jdtls": {
|
|
"command": "jdtls",
|
|
"args": [],
|
|
"fileTypes": [".java"],
|
|
"rootMarkers": ["pom.xml", "build.gradle", "build.gradle.kts", "settings.gradle", ".project"]
|
|
},
|
|
"kotlin-lsp": {
|
|
"command": "kotlin-lsp",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".kt", ".kts"],
|
|
"rootMarkers": ["build.gradle", "build.gradle.kts", "pom.xml", "settings.gradle", "settings.gradle.kts"]
|
|
},
|
|
"metals": {
|
|
"command": "metals",
|
|
"args": [],
|
|
"fileTypes": [".scala", ".sbt", ".sc"],
|
|
"rootMarkers": ["build.sbt", "build.sc", "build.gradle", "pom.xml"],
|
|
"initOptions": {
|
|
"statusBarProvider": "show-message",
|
|
"isHttpEnabled": true
|
|
}
|
|
},
|
|
"hls": {
|
|
"command": "haskell-language-server-wrapper",
|
|
"args": ["--lsp"],
|
|
"fileTypes": [".hs", ".lhs"],
|
|
"rootMarkers": ["stack.yaml", "cabal.project", "hie.yaml", "package.yaml", "*.cabal"],
|
|
"settings": {
|
|
"haskell": {
|
|
"formattingProvider": "ormolu",
|
|
"checkProject": true
|
|
}
|
|
}
|
|
},
|
|
"ocamllsp": {
|
|
"command": "ocamllsp",
|
|
"args": [],
|
|
"fileTypes": [".ml", ".mli", ".mll", ".mly"],
|
|
"rootMarkers": ["dune-project", "dune-workspace", "*.opam", ".ocamlformat"]
|
|
},
|
|
"elixirls": {
|
|
"command": "elixir-ls",
|
|
"args": [],
|
|
"fileTypes": [".ex", ".exs", ".heex", ".eex"],
|
|
"rootMarkers": ["mix.exs", "mix.lock"],
|
|
"settings": {
|
|
"elixirLS": {
|
|
"dialyzerEnabled": true,
|
|
"fetchDeps": false
|
|
}
|
|
}
|
|
},
|
|
"expert": {
|
|
"command": "expert",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".ex", ".exs", ".heex", ".eex"],
|
|
"rootMarkers": ["mix.exs", "mix.lock"]
|
|
},
|
|
"erlangls": {
|
|
"command": "erlang_ls",
|
|
"args": [],
|
|
"fileTypes": [".erl", ".hrl"],
|
|
"rootMarkers": ["rebar.config", "erlang.mk", "rebar.lock"]
|
|
},
|
|
"gleam": {
|
|
"command": "gleam",
|
|
"args": ["lsp"],
|
|
"fileTypes": [".gleam"],
|
|
"rootMarkers": ["gleam.toml"]
|
|
},
|
|
"solargraph": {
|
|
"command": "solargraph",
|
|
"args": ["stdio"],
|
|
"fileTypes": [".rb", ".rake", ".gemspec"],
|
|
"rootMarkers": ["Gemfile", ".solargraph.yml", "Rakefile"],
|
|
"initOptions": {
|
|
"formatting": true
|
|
},
|
|
"settings": {
|
|
"solargraph": {
|
|
"diagnostics": true,
|
|
"completion": true,
|
|
"hover": true,
|
|
"formatting": true,
|
|
"references": true,
|
|
"rename": true,
|
|
"symbols": true
|
|
}
|
|
}
|
|
},
|
|
"ruby-lsp": {
|
|
"command": "ruby-lsp",
|
|
"args": [],
|
|
"fileTypes": [".rb", ".rake", ".gemspec", ".erb"],
|
|
"rootMarkers": ["Gemfile", ".ruby-version", ".ruby-gemset"],
|
|
"initOptions": {
|
|
"formatter": "auto"
|
|
}
|
|
},
|
|
"rubocop": {
|
|
"command": "rubocop",
|
|
"args": ["--lsp"],
|
|
"fileTypes": [".rb", ".rake"],
|
|
"rootMarkers": [".rubocop.yml", "Gemfile"],
|
|
"isLinter": true
|
|
},
|
|
"bashls": {
|
|
"command": "bash-language-server",
|
|
"args": ["start"],
|
|
"fileTypes": [".sh", ".bash", ".zsh"],
|
|
"rootMarkers": [".git"],
|
|
"settings": {
|
|
"bashIde": {
|
|
"globPattern": "*@(.sh|.inc|.bash|.command)"
|
|
}
|
|
}
|
|
},
|
|
"lua-language-server": {
|
|
"command": "lua-language-server",
|
|
"args": [],
|
|
"fileTypes": [".lua"],
|
|
"rootMarkers": [".luarc.json", ".luarc.jsonc", ".luacheckrc", ".stylua.toml", "stylua.toml"],
|
|
"settings": {
|
|
"Lua": {
|
|
"runtime": {
|
|
"version": "LuaJIT"
|
|
},
|
|
"diagnostics": {
|
|
"globals": ["vim"]
|
|
},
|
|
"workspace": {
|
|
"checkThirdParty": false
|
|
},
|
|
"telemetry": {
|
|
"enable": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"intelephense": {
|
|
"command": "intelephense",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".php", ".phtml"],
|
|
"rootMarkers": ["composer.json", "composer.lock", ".git"]
|
|
},
|
|
"phpactor": {
|
|
"command": "phpactor",
|
|
"args": ["language-server"],
|
|
"fileTypes": [".php"],
|
|
"rootMarkers": ["composer.json", ".phpactor.json", ".phpactor.yml"]
|
|
},
|
|
"omnisharp": {
|
|
"command": "omnisharp",
|
|
"args": ["-z", "--hostPID", "$PID", "--encoding", "utf-8", "--languageserver"],
|
|
"fileTypes": [".cs", ".csx"],
|
|
"rootMarkers": ["*.sln", "*.csproj", "omnisharp.json", ".git"],
|
|
"settings": {
|
|
"FormattingOptions": {
|
|
"EnableEditorConfigSupport": true
|
|
},
|
|
"RoslynExtensionsOptions": {
|
|
"EnableAnalyzersSupport": true
|
|
}
|
|
}
|
|
},
|
|
"yamlls": {
|
|
"command": "yaml-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".yaml", ".yml"],
|
|
"rootMarkers": [".git"],
|
|
"settings": {
|
|
"yaml": {
|
|
"validate": true,
|
|
"format": {
|
|
"enable": true
|
|
},
|
|
"hover": true,
|
|
"completion": true
|
|
},
|
|
"redhat": {
|
|
"telemetry": {
|
|
"enabled": false
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"terraformls": {
|
|
"command": "terraform-ls",
|
|
"args": ["serve"],
|
|
"fileTypes": [".tf", ".tfvars"],
|
|
"rootMarkers": [".terraform", "terraform.tfstate", "*.tf"]
|
|
},
|
|
"dockerls": {
|
|
"command": "docker-langserver",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".dockerfile", "Dockerfile"],
|
|
"rootMarkers": ["Dockerfile", "docker-compose.yml", "docker-compose.yaml", ".dockerignore"]
|
|
},
|
|
"helm-ls": {
|
|
"command": "helm_ls",
|
|
"args": ["serve"],
|
|
"fileTypes": [".yaml", ".yml", ".tpl"],
|
|
"rootMarkers": ["Chart.yaml", "Chart.yml"]
|
|
},
|
|
"nixd": {
|
|
"command": "nixd",
|
|
"args": [],
|
|
"fileTypes": [".nix"],
|
|
"rootMarkers": ["flake.nix", "default.nix", "shell.nix"]
|
|
},
|
|
"nil": {
|
|
"command": "nil",
|
|
"args": [],
|
|
"fileTypes": [".nix"],
|
|
"rootMarkers": ["flake.nix", "default.nix", "shell.nix"]
|
|
},
|
|
"ols": {
|
|
"command": "ols",
|
|
"args": [],
|
|
"fileTypes": [".odin"],
|
|
"rootMarkers": ["ols.json", ".git"]
|
|
},
|
|
"dartls": {
|
|
"command": "dart",
|
|
"args": ["language-server", "--protocol=lsp"],
|
|
"fileTypes": [".dart"],
|
|
"rootMarkers": ["pubspec.yaml", "pubspec.lock"],
|
|
"initOptions": {
|
|
"closingLabels": true,
|
|
"flutterOutline": true,
|
|
"outline": true
|
|
}
|
|
},
|
|
"marksman": {
|
|
"command": "marksman",
|
|
"args": ["server"],
|
|
"fileTypes": [".md", ".markdown"],
|
|
"rootMarkers": [".marksman.toml", ".git"],
|
|
"warmupTimeoutMs": 2000
|
|
},
|
|
"texlab": {
|
|
"command": "texlab",
|
|
"args": [],
|
|
"fileTypes": [".tex", ".bib", ".sty", ".cls"],
|
|
"rootMarkers": [".latexmkrc", "latexmkrc", ".texlabroot", "texlabroot", "Tectonic.toml"],
|
|
"settings": {
|
|
"texlab": {
|
|
"build": {
|
|
"executable": "latexmk",
|
|
"args": ["-pdf", "-interaction=nonstopmode", "-synctex=1", "%f"]
|
|
},
|
|
"chktex": {
|
|
"onOpenAndSave": true
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"graphql": {
|
|
"command": "graphql-lsp",
|
|
"args": ["server", "-m", "stream"],
|
|
"fileTypes": [".graphql", ".gql"],
|
|
"rootMarkers": [".graphqlrc", ".graphqlrc.json", ".graphqlrc.yml", ".graphqlrc.yaml", "graphql.config.js"]
|
|
},
|
|
"prismals": {
|
|
"command": "prisma-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".prisma"],
|
|
"rootMarkers": ["schema.prisma", "prisma/schema.prisma"]
|
|
},
|
|
"vimls": {
|
|
"command": "vim-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".vim", ".vimrc"],
|
|
"rootMarkers": [".git"],
|
|
"initOptions": {
|
|
"isNeovim": true,
|
|
"diagnostic": {
|
|
"enable": true
|
|
}
|
|
}
|
|
},
|
|
"emmet-language-server": {
|
|
"command": "emmet-language-server",
|
|
"args": ["--stdio"],
|
|
"fileTypes": [".html", ".css", ".scss", ".less", ".jsx", ".tsx", ".vue", ".svelte"],
|
|
"rootMarkers": [".git"]
|
|
},
|
|
"sourcekit-lsp": {
|
|
"command": "sourcekit-lsp",
|
|
"args": [],
|
|
"fileTypes": [".swift"],
|
|
"rootMarkers": ["Package.swift", "*.xcodeproj", "*.xcworkspace", "project.yml", ".swiftpm"]
|
|
},
|
|
"swiftlint": {
|
|
"command": "swiftlint",
|
|
"args": ["lint", "--quiet", "--reporter", "json"],
|
|
"fileTypes": [".swift"],
|
|
"rootMarkers": [".swiftlint.yml", ".swiftlint.yaml", "Package.swift", "*.xcodeproj"],
|
|
"isLinter": true
|
|
}
|
|
}
|