{
  "languages": {
    "typescript": {
      "name": "typescript-language-server",
      "command": "typescript-language-server",
      "args": [
        "--stdio"
      ],
      "file_extensions": [
        "ts",
        "js",
        "tsx",
        "jsx"
      ],
      "project_patterns": [
        "package.json",
        "tsconfig.json"
      ],
      "exclude_patterns": [
        "**/node_modules/**",
        "**/dist/**"
      ],
      "multi_workspace": false,
      "initialization_options": {
        "preferences": {
          "disableSuggestions": false
        }
      },
      "request_timeout_secs": 60
    },
    "python": {
      "name": "pyright",
      "command": "pyright-langserver",
      "args": [
        "--stdio"
      ],
      "file_extensions": [
        "py"
      ],
      "project_patterns": [
        "pyproject.toml",
        "setup.py",
        "requirements.txt",
        "pyrightconfig.json"
      ],
      "exclude_patterns": [
        "**/__pycache__/**",
        "**/venv/**",
        "**/.venv/**",
        "**/.pytest_cache/**"
      ],
      "multi_workspace": false,
      "initialization_options": {},
      "request_timeout_secs": 60
    },
    "rust": {
      "name": "rust-analyzer",
      "command": "rust-analyzer",
      "args": [],
      "file_extensions": [
        "rs"
      ],
      "project_patterns": [
        "Cargo.toml"
      ],
      "exclude_patterns": [
        "**/target/**"
      ],
      "multi_workspace": false,
      "initialization_options": {
        "cargo": {
          "buildScripts": {
            "enable": true
          }
        },
        "diagnostics": {
          "enable": true,
          "enableExperimental": true
        },
        "workspace": {
          "symbol": {
            "search": {
              "scope": "workspace"
            }
          }
        }
      },
      "request_timeout_secs": 60
    },
    "java": {
      "name": "jdtls",
      "command": "jdtls",
      "args": [],
      "file_extensions": [
        "java"
      ],
      "project_patterns": [
        "pom.xml",
        "build.gradle",
        "build.gradle.kts",
        ".project"
      ],
      "exclude_patterns": [
        "**/target/**",
        "**/build/**",
        "**/.gradle/**"
      ],
      "multi_workspace": false,
      "initialization_options": {
        "settings": {
          "java": {
            "compile": {
              "nullAnalysis": {
                "mode": "automatic"
              }
            },
            "configuration": {
              "annotationProcessing": {
                "enabled": true
              }
            }
          }
        }
      },
      "request_timeout_secs": 60
    },
    "ruby": {
      "name": "solargraph",
      "command": "solargraph",
      "args": [
        "stdio"
      ],
      "file_extensions": [
        "rb"
      ],
      "project_patterns": [
        "Gemfile",
        "Rakefile"
      ],
      "exclude_patterns": [
        "**/vendor/**",
        "**/tmp/**"
      ],
      "multi_workspace": false,
      "initialization_options": {},
      "request_timeout_secs": 60
    },
    "go": {
      "name": "gopls",
      "command": "gopls",
      "args": [],
      "file_extensions": [
        "go"
      ],
      "project_patterns": [
        "go.mod",
        "go.sum"
      ],
      "exclude_patterns": [
        "**/vendor/**"
      ],
      "multi_workspace": false,
      "initialization_options": {
        "usePlaceholders": true,
        "completeUnimported": true
      },
      "request_timeout_secs": 60
    },
    "cpp": {
      "name": "clangd",
      "command": "clangd",
      "args": [
        "--background-index"
      ],
      "file_extensions": [
        "cpp",
        "cc",
        "cxx",
        "c",
        "h",
        "hpp",
        "hxx"
      ],
      "project_patterns": [
        "CMakeLists.txt",
        "compile_commands.json",
        "Makefile"
      ],
      "exclude_patterns": [
        "**/build/**",
        "**/cmake-build-**/**"
      ],
      "multi_workspace": false,
      "initialization_options": {},
      "request_timeout_secs": 60
    }
  }
}