{
"name": "rlsp-yaml",
"displayName": "rlsp-yaml",
"description": "YAML language support powered by rlsp-yaml",
"publisher": "chrisski",
"version": "0.1.0",
"license": "MIT",
"icon": "rlsp-yaml-logo-small.png",
"packageManager": "pnpm@10.33.2",
"engines": {
"vscode": "^1.116.0"
},
"categories": [
"Programming Languages",
"Linters",
"Formatters"
],
"activationEvents": [
"onLanguage:yaml"
],
"main": "./out/main.js",
"extensionKind": [
"workspace"
],
"capabilities": {
"untrustedWorkspaces": {
"supported": "limited",
"description": "The rlsp-yaml.server.path setting is ignored in untrusted workspaces. Only the bundled server binary is used.",
"restrictedConfigurations": [
"rlsp-yaml.server.path"
]
}
},
"contributes": {
"configuration": {
"type": "object",
"title": "rlsp-yaml",
"properties": {
"rlsp-yaml.server.path": {
"type": "string",
"default": "",
"description": "Custom path to rlsp-yaml binary"
},
"rlsp-yaml.customTags": {
"type": "array",
"items": {
"type": "string"
},
"default": [],
"description": "Custom YAML tags to recognize. Each entry is a tag name (e.g. \"!include\") or a tag name followed by a type annotation (e.g. \"!include scalar\", \"!Ref mapping\", \"!Sub sequence\"). Tags with a type annotation emit a tagTypeMismatch warning when the node structure does not match."
},
"rlsp-yaml.keyOrdering": {
"type": "boolean",
"default": false,
"description": "Enforce alphabetical key ordering"
},
"rlsp-yaml.kubernetesVersion": {
"type": "string",
"default": "master",
"description": "Kubernetes schema version to use"
},
"rlsp-yaml.schemaStore": {
"type": "boolean",
"default": true,
"description": "Enable SchemaStore.org integration"
},
"rlsp-yaml.formatValidation": {
"type": "boolean",
"default": true,
"description": "Run validation on format"
},
"rlsp-yaml.formatPrintWidth": {
"type": "number",
"default": 80,
"description": "Print width for formatting"
},
"rlsp-yaml.formatSingleQuote": {
"type": "boolean",
"default": false,
"description": "Use single quotes in formatted output"
},
"rlsp-yaml.formatPreserveQuotes": {
"type": "boolean",
"default": false,
"description": "Preserve the source quote style of scalar values during formatting"
},
"rlsp-yaml.formatBracketSpacing": {
"type": "boolean",
"default": true,
"description": "Add spaces inside flow braces: { a: 1 } vs {a: 1}. Default true."
},
"rlsp-yaml.formatEnforceBlockStyle": {
"type": "boolean",
"default": false,
"description": "Convert all flow-style collections ([...], {...}) to block style when formatting. When false (default), the formatter preserves the original style."
},
"rlsp-yaml.flowStyle": {
"type": "string",
"enum": [
"off",
"warning",
"error"
],
"default": "warning",
"description": "Severity of flow-style diagnostics (flowMap/flowSeq). 'off' disables them, 'warning' shows a warning squiggle, 'error' marks them as errors."
},
"rlsp-yaml.duplicateKeys": {
"type": "string",
"enum": [
"off",
"warning",
"error"
],
"default": "error",
"description": "Severity of duplicate key diagnostics. 'off' disables detection, 'warning' shows a warning, 'error' (default) marks as errors."
},
"rlsp-yaml.formatRemoveDuplicateKeys": {
"type": "boolean",
"default": false,
"description": "Remove duplicate mapping keys when formatting. Keeps the last occurrence (YAML spec behavior). When false (default), duplicate keys are preserved."
},
"rlsp-yaml.formatIndentSequences": {
"type": "boolean",
"default": true,
"description": "Indent block sequences under mapping keys. When true (default), sequences are indented: `key:\\n - item`. When false, sequences start at the key's indent level: `key:\\n- item`."
},
"rlsp-yaml.httpProxy": {
"type": "string",
"default": "",
"description": "HTTP proxy URL for schema fetching"
},
"rlsp-yaml.colorDecorators": {
"type": "boolean",
"default": true,
"description": "Show color decorators for CSS color values"
},
"rlsp-yaml.schemas": {
"type": "object",
"default": {},
"description": "Maps schema URLs to glob patterns for schema assignment"
},
"rlsp-yaml.yamlVersion": {
"type": "string",
"enum": [
"1.1",
"1.2"
],
"default": "1.2",
"description": "YAML specification version. Affects formatting quoting rules and YAML 1.1 compatibility diagnostics. When set to 1.1, diagnostics for YAML 1.1 boolean and octal values are suppressed."
},
"rlsp-yaml.validate": {
"type": "boolean",
"default": true,
"description": "Enable or disable all YAML diagnostics."
},
"rlsp-yaml.formatEnable": {
"type": "boolean",
"default": true,
"description": "Enable the built-in YAML formatter. When false, textDocument/formatting, textDocument/rangeFormatting, and textDocument/onTypeFormatting return no edits. Diagnostics, hover, completion, and code actions remain active. See docs/configuration.md for interop notes."
},
"rlsp-yaml.formatRespectEditorconfig": {
"type": "boolean",
"default": true,
"description": "When false, ignore .editorconfig files for YAML formatting. Defaults to true."
}
}
},
"commands": [
{
"command": "rlsp-yaml.restartServer",
"title": "Restart Server",
"category": "rlsp-yaml"
},
{
"command": "rlsp-yaml.showOutput",
"title": "Show Output",
"category": "rlsp-yaml"
},
{
"command": "rlsp-yaml.showVersion",
"title": "Show Version",
"category": "rlsp-yaml"
}
]
},
"repository": {
"type": "git",
"url": "https://github.com/chdalski/rlsp"
},
"scripts": {
"build": "esbuild src/main.ts --bundle --outdir=out --external:vscode --format=cjs --platform=node",
"watch": "esbuild src/main.ts --bundle --outdir=out --external:vscode --format=cjs --platform=node --watch",
"package": "vsce package --no-dependencies",
"test": "vitest run",
"test:coverage": "vitest run --coverage",
"test:integration": "tsc && vscode-test",
"lint": "eslint src/",
"format": "prettier --check 'src/**/*.ts'",
"format:fix": "prettier --write 'src/**/*.ts'"
},
"dependencies": {
"vscode-languageclient": "^9.0.1"
},
"pnpm": {
"overrides": {
"lodash": ">=4.18.0",
"fast-uri": "^3.1.2",
"serialize-javascript": "^7.0.5",
"qs": "^6.15.2"
}
},
"devDependencies": {
"@tsconfig/strictest": "^2.0.8",
"@types/mocha": "^10.0.10",
"@types/node": "^25.6.0",
"@types/vscode": "^1.116.0",
"@vitest/coverage-v8": "^4.1.5",
"@vscode/test-cli": "^0.0.12",
"@vscode/test-electron": "^2.5.2",
"@vscode/vsce": "^3.9.1",
"esbuild": "^0.28.0",
"eslint": "^10.2.1",
"prettier": "^3.8.3",
"typescript": "^6.0.3",
"typescript-eslint": "^8.59.0",
"vite": "^8.0.10",
"vitest": "^4.1.5"
}
}