Config Quick Reference v0.997+


Comments begin with a '#' and continue to the end of the line.

# This is a comment.

The force command disables the auto-detection of keyboard type.

force {set1|set2|set3|set2ext}

The include command processes another file, exactly as if it was copy-pasted to where the include command is.

include <file_name>

Conditionals stay in effect until the conditional is repeated with different argument(s).
The blocks following a conditional are only applied if...

ifselect {<select_num> | any}               # specified select is active.
ifset [set1] [set2] [set3] [set2ext] [any]  # using one of the specified sets.
ifkeyboard {<keyboard_id> | any}            # keyboard has the specified ID.

Layerblocks define combinations of function keys to access different layers.
(Function keys are defined by remapping one or more keys to pseudo-HID codes FN1 to FN8).

layerblock
    <fn_key_combo> <layer_num>
    ...
endblock

Remapblocks define remappings either for the base layer, or for the specified layer if a layer command is given inside the block.

remapblock
    [layer <layer_num>]
    <from_hid> <to_hid>
    ...
endblock

Macroblocks define one or more macros. Macros are triggered by a single HID key with any combination of metas, and can have command blocks that execute on either or both of make and break of the HID key.

macroblock
    macro <hid> [[-][{l|r}]shift] [[-][{l|r}]ctrl] [[-][{l|r}]alt] [[-][{l|r}]gui] ...
    [
        <command> [<value>]
        ...
    ]
    [onbreak [norestoremeta]
        <command> [<value>]
        ...
    ]
    endmacro
    ...
endblock