keys.json
Schema for Mudlet keybindings described in keys.json.
Schema URL
{
"$schema": "https://schema.gesslar.dev/muddler/v1/keys.json"
}
Array Items
This schema defines an array where each item references: #/definitions/key
Definitions
This schema includes 1 reusable definition(s): key
Full Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://schema.gesslar.dev/muddler/v1/keys.json",
"title": "Muddler Keys Schema",
"description": "Schema for Mudlet keybindings described in keys.json.",
"type": "array",
"items": {
"$ref": "#/definitions/key"
},
"definitions": {
"key": {
"allOf": [
{
"$ref": "https://schema.gesslar.dev/muddler/v1/common.json#/$defs/nodeBase"
},
{
"type": "object",
"properties": {
"isActive": {
"description": "Yes if this keybinding will automatically load, no otherwise."
},
"isFolder": {
"description": "Yes if this is a folder, no otherwise."
},
"command": {
"$ref": "https://schema.gesslar.dev/muddler/v1/common.json#/$defs/commandString",
"description": "Command text (optional convenience alongside script)."
},
"keys": {
"type": "string",
"description": "Human-readable combo, e.g. \"ctrl+shift+alt+c\" or \"f1\". Parsed into keyCode/keyModifier during build."
},
"keyCode": {
"type": "string",
"description": "Optional explicit key code override."
},
"keyModifier": {
"type": "string",
"description": "Optional explicit modifier code override."
},
"children": {
"type": "array",
"description": "Nested keybindings when used as a folder (isFolder=yes).",
"items": {
"$ref": "#/definitions/key"
}
}
}
}
],
"unevaluatedProperties": false
}
}
}