UntitledDesktopEnvironment Core Keybinding Format Specification
Authors
Version
Current version is 0.9.0.0
Overview
The UntitledDesktopEnvironment strives to support multiple types of input devices and systems. This specification establishes a core format for laying out application specific keybindings. This format supports the following input devices:
- Standard keyboards
- Standard mice
- Touchscreen actions
- Any device that functions like a keyboard or mouse
This version of the specification does not currently support, but will support the following devices in future revisions:
- Joysticks
Any other devices are currently not considered by the specification.
Format
The format is specified in pure YAML, using the following schema:
bindings:
- key: empty-binding
val: [ key code 1, key code 2, key code 3 ]
Each binding is part of the global array of bindings called
bindings
. Each binding is stored as a key-value pair inside
the array:
- The
key
key, sets the string ID for the given keybinding, which is used by the application to fetch its state. - The
val
key, sets the keys that need to be activated for the binding to be inpressed
orrepeat
state. This is an array of key codes specified in this file
Revisions before version 0.9.0.0 did not include support for multikey bindings. Since they were developed during the standard's experimental phase, they are not supported by input systems used by current MadLad Squad applications/libraries/frameworks.