Last active
February 25, 2023 13:08
-
-
Save Himenon/ae8c4874b88745f9e2f2d6b7a63dfaed to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"$schema": "http://json-schema.org/draft-07/schema#", | |
"type": "object", | |
"properties": | |
{ | |
"global": | |
{ | |
"$ref": "#/definitions/global" | |
}, | |
"profiles": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/profile" | |
}, | |
"minItems": 1 | |
} | |
}, | |
"required": | |
[ | |
"global", | |
"profiles" | |
], | |
"additionalProperties": false, | |
"definitions": | |
{ | |
"global": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"check_for_updates_on_startup": | |
{ | |
"type": "boolean" | |
}, | |
"show_in_menu_bar": | |
{ | |
"type": "boolean" | |
}, | |
"show_profile_name_in_menu_bar": | |
{ | |
"type": "boolean" | |
}, | |
"show_sticky_modifier_status_in_menu_bar": | |
{ | |
"type": "boolean" | |
}, | |
"show_passthrough_status_in_menu_bar": | |
{ | |
"type": "boolean" | |
}, | |
"use_fkeys_as_standard_function_keys": | |
{ | |
"type": "boolean" | |
}, | |
"check_for_updates_manually": | |
{ | |
"type": "boolean" | |
}, | |
"show_in_all_spaces": | |
{ | |
"type": "boolean" | |
}, | |
"run_in_login_shell": | |
{ | |
"type": "boolean" | |
}, | |
"session_workflow": | |
{ | |
"type": "string" | |
}, | |
"check_for_updates_interval_days": | |
{ | |
"type": "integer", | |
"minimum": 1 | |
}, | |
"show_advanced_preferences": | |
{ | |
"type": "boolean" | |
}, | |
"show_import_export_panel": | |
{ | |
"type": "boolean" | |
}, | |
"language": | |
{ | |
"type": "string" | |
}, | |
"use_log_color": | |
{ | |
"type": "boolean" | |
}, | |
"force_display_as_short_name": | |
{ | |
"type": "boolean" | |
}, | |
"allow_devices": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"identifiers": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"vendor_id": | |
{ | |
"type": "integer" | |
}, | |
"product_id": | |
{ | |
"type": "integer" | |
} | |
}, | |
"required": | |
[ | |
"vendor_id", | |
"product_id" | |
], | |
"additionalProperties": false | |
}, | |
"simple_modifications": | |
{ | |
"type": "object" | |
}, | |
"fn_function_keys": | |
{ | |
"type": "object" | |
}, | |
"complex_modifications": | |
{ | |
"type": "object" | |
}, | |
"virtual_hid_keyboard": | |
{ | |
"type": "object" | |
}, | |
"devices": | |
{ | |
"type": "object" | |
}, | |
"name": | |
{ | |
"type": "string" | |
}, | |
"selected": | |
{ | |
"type": "boolean" | |
} | |
}, | |
"required": | |
[ | |
"identifiers" | |
], | |
"additionalProperties": false | |
} | |
} | |
}, | |
"additionalProperties": false | |
}, | |
"profile": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"name": | |
{ | |
"type": "string" | |
}, | |
"selected": | |
{ | |
"type": "boolean" | |
}, | |
"simple_modifications": | |
{ | |
"type": "object", | |
"additionalProperties": | |
{ | |
"$ref": "#/definitions/keycode_mapping" | |
} | |
}, | |
"complex_modifications": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"parameters": | |
{ | |
"type": "object", | |
"additionalProperties": | |
{ | |
"type": "string" | |
} | |
}, | |
"rules": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/rule" | |
} | |
} | |
}, | |
"additionalProperties": false | |
}, | |
"devices": | |
{ | |
"type": "object", | |
"additionalProperties": | |
{ | |
"$ref": "#/definitions/device" | |
} | |
} | |
}, | |
"required": | |
[ | |
"name", | |
"selected", | |
"simple_modifications" | |
], | |
"additionalProperties": false | |
}, | |
"keycode_mapping": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"from": | |
{ | |
"$ref": "#/definitions/keycode" | |
}, | |
"to": | |
{ | |
"$ref": "#/definitions/keycode" | |
}, | |
"to_if_alone": | |
{ | |
"$ref": "#/definitions/keycode" | |
}, | |
"modifiers": | |
{ | |
"$ref": "#/definitions/modifiers" | |
}, | |
"mandatory_modifiers": | |
{ | |
"$ref": "#/definitions/modifiers" | |
}, | |
"halt": | |
{ | |
"type": "boolean" | |
} | |
}, | |
"required": | |
[ | |
"from", | |
"to" | |
], | |
"additionalProperties": false | |
}, | |
"modifiers": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/modifier" | |
} | |
}, | |
"modifier": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"name": | |
{ | |
"type": "string", | |
"enum": | |
[ | |
"caps_lock", | |
"left_control", | |
"left_option", | |
"left_shift", | |
"left_command", | |
"right_control", | |
"right_option", | |
"right_shift", | |
"right_command" | |
] | |
}, | |
"optional": | |
{ | |
"type": "boolean" | |
} | |
}, | |
"required": | |
[ | |
"name" | |
], | |
"additionalProperties": false | |
}, | |
"keycode": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"key_code": | |
{ | |
"type": "string" | |
}, | |
"modifiers": | |
{ | |
"$ref": "#/definitions/modifiers" | |
}, | |
"mandatory_modifiers": | |
{ | |
"$ref": "#/definitions/modifiers" | |
}, | |
"sticky": | |
{ | |
"type": "boolean" | |
}, | |
"repeat": | |
{ | |
"type": "boolean" | |
}, | |
"lazy": | |
{ | |
"type": "boolean" | |
}, | |
"treat_unhandled_key": | |
{ | |
"type": "string", | |
"enum": | |
[ | |
"pass_through", | |
"hanja_mode", | |
"roman_mode", | |
"japanese_eisuu_mode", | |
"japanese_kana_mode" | |
] | |
}, | |
"description": | |
{ | |
"type": "string" | |
} | |
}, | |
"required": | |
[ | |
"key_code" | |
], | |
"additionalProperties": false | |
}, | |
"rule": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"description": | |
{ | |
"type": "string" | |
}, | |
"manipulators": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/manipulator" | |
}, | |
"minItems": 1 | |
} | |
}, | |
"required": | |
[ | |
"manipulators" | |
], | |
"additionalProperties": false | |
}, | |
"manipulator": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"type": | |
{ | |
"type": "string", | |
"enum": | |
[ | |
"basic", | |
"mouse_motion", | |
"mouse_button", | |
"pointing_button", | |
"momentary_switch_event", | |
"any", | |
"shell_command", | |
"select_input_source" | |
] | |
}, | |
"from": | |
{ | |
"$ref": "#/definitions/from" | |
}, | |
"to": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"conditions": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/condition" | |
} | |
}, | |
"parameters": | |
{ | |
"type": "object", | |
"additionalProperties": | |
{ | |
"type": "number" | |
} | |
}, | |
"modifiers": | |
{ | |
"type": "object", | |
"additionalProperties": | |
{ | |
"$ref": "#/definitions/modifiers" | |
} | |
}, | |
"simple_modifications": | |
{ | |
"type": "object", | |
"additionalProperties": | |
{ | |
"$ref": "#/definitions/keycode_mapping" | |
} | |
}, | |
"complex_modifications": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"parameters": | |
{ | |
"type": "object", | |
"additionalProperties": | |
{ | |
"type": "string" | |
} | |
}, | |
"rules": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/rule" | |
} | |
} | |
}, | |
"additionalProperties": false | |
}, | |
"conditions_dependent_modifiers": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/conditions_dependent_modifier" | |
} | |
}, | |
"device": | |
{ | |
"$ref": "#/definitions/device" | |
}, | |
"to_after_key_up": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"to_if_alone": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"to_if_held_down": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"to_delayed_action": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"to_if_canceled": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"to_if_invoked": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"delay_milliseconds": | |
{ | |
"type": "integer", | |
"minimum": 0 | |
}, | |
"key_down_order": | |
{ | |
"type": "integer", | |
"minimum": 0 | |
} | |
}, | |
"required": | |
[ | |
"to_delayed_action", | |
"delay_milliseconds" | |
], | |
"additionalProperties": false | |
}, | |
"repeat": | |
{ | |
"type": "boolean" | |
}, | |
"lazy": | |
{ | |
"type": "boolean" | |
}, | |
"treat_unhandled_key": | |
{ | |
"type": "string", | |
"enum": | |
[ | |
"pass_through", | |
"hanja_mode", | |
"roman_mode", | |
"japanese_eisuu_mode", | |
"japanese_kana_mode" | |
] | |
}, | |
"description": | |
{ | |
"type": "string" | |
} | |
}, | |
"required": | |
[ | |
"type" | |
], | |
"additionalProperties": false | |
}, | |
"from": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"key_code": | |
{ | |
"type": "string" | |
}, | |
"modifiers": | |
{ | |
"$ref": "#/definitions/modifiers" | |
}, | |
"pointing_button": | |
{ | |
"type": "integer", | |
"minimum": 0, | |
"maximum": 64 | |
}, | |
"any": | |
{ | |
"type": "boolean" | |
}, | |
"shell_command": | |
{ | |
"type": "string" | |
}, | |
"select_input_source": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"language": | |
{ | |
"type": "string" | |
}, | |
"input_source_id": | |
{ | |
"type": "string" | |
} | |
}, | |
"additionalProperties": false | |
} | |
}, | |
"oneOf": | |
[ | |
{ | |
"required": | |
[ | |
"key_code" | |
] | |
}, | |
{ | |
"required": | |
[ | |
"modifiers" | |
] | |
}, | |
{ | |
"required": | |
[ | |
"pointing_button" | |
] | |
}, | |
{ | |
"required": | |
[ | |
"any" | |
] | |
}, | |
{ | |
"required": | |
[ | |
"shell_command" | |
] | |
}, | |
{ | |
"required": | |
[ | |
"select_input_source" | |
] | |
} | |
], | |
"additionalProperties": false | |
}, | |
"to": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"key_code": | |
{ | |
"type": "string" | |
}, | |
"modifiers": | |
{ | |
"$ref": "#/definitions/modifiers" | |
}, | |
"pointing_button": | |
{ | |
"type": "integer", | |
"minimum": 0, | |
"maximum": 64 | |
}, | |
"set_variable": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"name": | |
{ | |
"type": "string" | |
}, | |
"value": | |
{ | |
"type": "number" | |
} | |
}, | |
"required": | |
[ | |
"name", | |
"value" | |
], | |
"additionalProperties": false | |
}, | |
"mouse_key": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"x": | |
{ | |
"type": "number" | |
}, | |
"y": | |
{ | |
"type": "number" | |
}, | |
"vertical_wheel": | |
{ | |
"type": "integer" | |
}, | |
"horizontal_wheel": | |
{ | |
"type": "integer" | |
} | |
}, | |
"additionalProperties": false | |
}, | |
"home": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"device_id": | |
{ | |
"type": "integer" | |
}, | |
"usage_page": | |
{ | |
"type": "integer" | |
} | |
} | |
}, | |
"function_key": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"key_code": | |
{ | |
"type": "string" | |
}, | |
"modifiers": | |
{ | |
"$ref": "#/definitions/modifiers" | |
} | |
}, | |
"required": | |
[ | |
"key_code" | |
], | |
"additionalProperties": false | |
}, | |
"select_input_source": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"language": | |
{ | |
"type": "string" | |
}, | |
"input_source_id": | |
{ | |
"type": "string" | |
} | |
}, | |
"additionalProperties": false | |
}, | |
"virtual_key": | |
{ | |
"type": "integer" | |
}, | |
"apple_vendor_top_case_keyboard_event_key_code": | |
{ | |
"type": "integer" | |
}, | |
"apple_vendor_keyboard_event_key_code": | |
{ | |
"type": "integer" | |
}, | |
"consumer_key_code": | |
{ | |
"type": "integer" | |
}, | |
"caps_lock_delay_milliseconds": | |
{ | |
"type": "integer", | |
"minimum": 0 | |
}, | |
"shell_command": | |
{ | |
"type": "string" | |
}, | |
"popup_select_input_source": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"input_source_id": | |
{ | |
"type": "string" | |
} | |
}, | |
"required": | |
[ | |
"input_source_id" | |
], | |
"additionalProperties": false | |
}, | |
"set_mouse_position": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"x": | |
{ | |
"type": "number" | |
}, | |
"y": | |
{ | |
"type": "number" | |
}, | |
"screen": | |
{ | |
"type": "string" | |
} | |
}, | |
"additionalProperties": false | |
}, | |
"sticky_modifier": | |
{ | |
"$ref": "#/definitions/modifiers" | |
}, | |
"to_after_key_up": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"to_if_alone": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"to_if_held_down": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"to_delay": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"nfc_tag": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"vendor_id": | |
{ | |
"type": "integer" | |
}, | |
"product_id": | |
{ | |
"type": "integer" | |
}, | |
"tag_id": | |
{ | |
"type": "string" | |
} | |
}, | |
"required": | |
[ | |
"vendor_id", | |
"product_id", | |
"tag_id" | |
], | |
"additionalProperties": false | |
}, | |
"to_if_invoked": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"to_if_canceled": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"$ref": "#/definitions/to" | |
} | |
}, | |
"post_key": | |
{ | |
"type": "array", | |
"items": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"key_code": | |
{ | |
"type": "string" | |
}, | |
"modifiers": | |
{ | |
"$ref": "#/definitions/modifiers" | |
} | |
}, | |
"required": | |
[ | |
"key_code" | |
], | |
"additionalProperties": false | |
} | |
}, | |
"up_down_repeat": | |
{ | |
"type": "integer", | |
"minimum": 0, | |
"maximum": 2 | |
}, | |
"increase": | |
{ | |
"type": "integer", | |
"minimum": 0 | |
}, | |
"decrease": | |
{ | |
"type": "integer", | |
"minimum": 0 | |
}, | |
"toggle": | |
{ | |
"type": "integer", | |
"minimum": 0 | |
}, | |
"momentary": | |
{ | |
"type": "integer", | |
"minimum": 0 | |
}, | |
"select": | |
{ | |
"type": "integer", | |
"minimum": 0 | |
}, | |
"scroll": | |
{ | |
"type": "integer", | |
"minimum": 0 | |
}, | |
"open_url": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"url": | |
{ | |
"type": "string" | |
} | |
}, | |
"required": | |
[ | |
"url" | |
], | |
"additionalProperties": false | |
}, | |
"frontmost_application": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"bundle_identifier": | |
{ | |
"type": "string" | |
} | |
}, | |
"required": | |
[ | |
"bundle_identifier" | |
], | |
"additionalProperties": false | |
}, | |
"mouse_motion": | |
{ | |
"type": "object", | |
"properties": | |
{ | |
"x": | |
{ | |
"type": "number" | |
}, | |
"y": | |
{ | |
"type": "number" | |
}, | |
"vertical_wheel": | |
{ | |
"type": "integer" | |
}, | |
"horizontal_wheel": | |
{ | |
"type": "integer" | |
} | |
}, | |
"additionalProperties": false | |
} | |
} | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment