mirror of
https://github.com/LGUG2Z/komorebi.git
synced 2026-02-24 22:24:58 +01:00
This commit adds a command to output a JSON Schema for the applications.yaml file maintained in the komorebi-application-specific-configuration repo, and also adds an up-to-date version of the JSON Schema as a file in the root of this repository so that users can reference it as an autocompletion source.
129 lines
2.5 KiB
JSON
129 lines
2.5 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"title": "Array_of_ApplicationConfiguration",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/definitions/ApplicationConfiguration"
|
|
},
|
|
"definitions": {
|
|
"ApplicationConfiguration": {
|
|
"type": "object",
|
|
"required": [
|
|
"identifier",
|
|
"name"
|
|
],
|
|
"properties": {
|
|
"float_identifiers": {
|
|
"type": [
|
|
"array",
|
|
"null"
|
|
],
|
|
"items": {
|
|
"$ref": "#/definitions/IdWithIdentifierAndComment"
|
|
}
|
|
},
|
|
"identifier": {
|
|
"$ref": "#/definitions/IdWithIdentifier"
|
|
},
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"options": {
|
|
"type": [
|
|
"array",
|
|
"null"
|
|
],
|
|
"items": {
|
|
"$ref": "#/definitions/ApplicationOptions"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"ApplicationIdentifier": {
|
|
"type": "string",
|
|
"enum": [
|
|
"Exe",
|
|
"Class",
|
|
"Title"
|
|
]
|
|
},
|
|
"ApplicationOptions": {
|
|
"type": "string",
|
|
"enum": [
|
|
"object_name_change",
|
|
"layered",
|
|
"border_overflow",
|
|
"tray_and_multi_window",
|
|
"force"
|
|
]
|
|
},
|
|
"IdWithIdentifier": {
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"kind"
|
|
],
|
|
"properties": {
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"$ref": "#/definitions/ApplicationIdentifier"
|
|
},
|
|
"matching_strategy": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/definitions/MatchingStrategy"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"IdWithIdentifierAndComment": {
|
|
"type": "object",
|
|
"required": [
|
|
"id",
|
|
"kind"
|
|
],
|
|
"properties": {
|
|
"comment": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"id": {
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"$ref": "#/definitions/ApplicationIdentifier"
|
|
},
|
|
"matching_strategy": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/definitions/MatchingStrategy"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"MatchingStrategy": {
|
|
"type": "string",
|
|
"enum": [
|
|
"Legacy",
|
|
"Equals",
|
|
"StartsWith",
|
|
"EndsWith",
|
|
"Contains",
|
|
"Regex"
|
|
]
|
|
}
|
|
}
|
|
}
|