{
  "servers": {
    "typescript": {
      "command": "typescript-language-server",
      "args": ["--stdio"],
      "fileTypes": ["ts", "tsx", "js", "jsx", "mts", "cts", "mjs", "cjs"],
      "rootMarkers": ["tsconfig.json", "jsconfig.json", "package.json"]
    },
    "python": {
      "command": "pyright-langserver",
      "args": ["--stdio"],
      "fileTypes": ["py", "pyi"],
      "rootMarkers": [
        "pyproject.toml",
        "setup.py",
        "setup.cfg",
        "requirements.txt",
        "pyrightconfig.json"
      ]
    },
    "rust": {
      "command": "rust-analyzer",
      "args": [],
      "fileTypes": ["rs"],
      "rootMarkers": ["Cargo.toml"]
    },
    "go": {
      "command": "gopls",
      "args": ["serve"],
      "fileTypes": ["go", "mod"],
      "rootMarkers": ["go.mod", "go.sum"]
    },
    "c": {
      "command": "clangd",
      "args": ["--background-index"],
      "fileTypes": ["c", "h", "cpp", "hpp", "cc", "cxx", "hxx", "c++", "h++"],
      "rootMarkers": ["compile_commands.json", "CMakeLists.txt", ".clangd", "Makefile"]
    },
    "ruby": {
      "command": "ruby-lsp",
      "args": [],
      "fileTypes": ["rb", "erb", "gemspec"],
      "rootMarkers": ["Gemfile", ".ruby-version"]
    },
    "java": {
      "command": "jdtls",
      "args": [],
      "fileTypes": ["java"],
      "rootMarkers": ["pom.xml", "build.gradle"]
    },
    "kotlin": {
      "command": "kotlin-lsp",
      "args": ["--stdio"],
      "fileTypes": ["kt", "kts"],
      "rootMarkers": ["build.gradle.kts", "pom.xml"]
    },
    "bash": {
      "command": "bash-language-server",
      "args": ["start"],
      "fileTypes": ["sh", "bash", "zsh", "ksh"],
      "rootMarkers": []
    },
    "html": {
      "command": "vscode-html-language-server",
      "args": ["--stdio"],
      "fileTypes": ["html", "htm", "xhtml"],
      "rootMarkers": ["package.json"]
    },
    "sql": {
      "command": "sql-language-server",
      "args": ["up", "--method", "stdio"],
      "fileTypes": ["sql"],
      "rootMarkers": []
    },
    "r": {
      "command": "R",
      "args": ["--slave", "-e", "languageserver::run()"],
      "fileTypes": ["r"],
      "rootMarkers": ["DESCRIPTION", "renv.lock", ".Rprofile"]
    }
  }
}
