event_changed_if, event_changed_unless

Change an event if/unless the event is already changed by other manipulators.

Example

Change tab key to return_or_enter if the tab key is the physical tab key. (If the tab key is the result of modifying another key by simple modification, the key is ignored.)

{
    "description": "Change tab key to return_or_enter if the tab key is the physical tab key",
    "manipulators": [
        {
            "type": "basic",
            "from": {
                "key_code": "tab",
                "modifiers": { "optional": ["any"] }
            },
            "to": [{ "key_code": "return_or_enter" }],
            "conditions": [
                {
                    "type": "event_changed_if",
                    "value": false
                }
            ]
        }
    ]
}

Specification

{
    "type": "event_changed_if",
    "value": true
}
Name Required Description
type Required "event_changed_if" or "event_changed_unless"
value Required true or false
description Optional A human-readable comment