spiegel-keyman/resources/standards-data/keylayout/keylayout.schema.json
Sabine 9a9d33bb50
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
feat(developer):
adapt elements of keylayout-xml
boxArray
parsing ( tests, validate of and error msg for different amount of keymap<->keymapSelect)
first version keylayout.dtd, keylayout.xsd, keylayout.schema.json
2026-04-27 18:12:34 +02:00

240 lines
6.4 KiB
JSON

{
"$schema": "http://json-schema.org/schema#",
"additionalProperties": false,
"properties": {
"keyboard": {
"additionalProperties": false,
"properties": {
"actions": {
"additionalProperties": false,
"properties": {
"action": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"when": {
"items": {
"additionalProperties": false,
"properties": {
"next": {
"type": "string"
},
"output": {
"type": "string"
},
"state": {
"type": "string"
}
},
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"when"
],
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"action"
],
"type": "object"
},
"group": {
"type": "string"
},
"id": {
"type": "string"
},
"keyMapSet": {
"items": {
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"keyMap": {
"items": {
"additionalProperties": false,
"properties": {
"baseIndex": {
"type": "string"
},
"baseMapSet": {
"type": "string"
},
"index": {
"type": "string"
},
"key": {
"items": {
"additionalProperties": false,
"properties": {
"action": {
"type": "string"
},
"code": {
"type": "string"
},
"output": {
"type": "string"
}
},
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"key"
],
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"keyMap"
],
"type": "object"
},
"minItems": 1,
"type": "array"
},
"layouts": {
"additionalProperties": false,
"properties": {
"layout": {
"items": {
"additionalProperties": false,
"properties": {
"first": {
"type": "string"
},
"last": {
"type": "string"
},
"mapSet": {
"type": "string"
},
"modifiers": {
"type": "string"
}
},
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"layout"
],
"type": "object"
},
"maxout": {
"type": "string"
},
"modifierMap": {
"items": {
"additionalProperties": false,
"properties": {
"defaultIndex": {
"type": "string"
},
"id": {
"type": "string"
},
"keyMapSelect": {
"items": {
"additionalProperties": false,
"properties": {
"mapIndex": {
"type": "string"
},
"modifier": {
"items": {
"additionalProperties": false,
"properties": {
"keys": {
"type": "string"
}
},
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"modifier"
],
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"keyMapSelect"
],
"type": "object"
},
"minItems": 1,
"type": "array"
},
"name": {
"type": "string"
},
"terminators": {
"additionalProperties": false,
"properties": {
"when": {
"items": {
"additionalProperties": false,
"properties": {
"output": {
"type": "string"
},
"state": {
"type": "string"
}
},
"type": "object"
},
"minItems": 1,
"type": "array"
}
},
"required": [
"when"
],
"type": "object"
}
},
"required": [
"layouts",
"modifierMap",
"keyMapSet",
"actions",
"terminators"
]
}
},
"required": [
"keyboard"
],
"title": "C:/Projects/keyman/keyman/resources/standards-data/keylayout/dtd/keylayout.xsd",
"type": "object"
}