[Docs] Update reference_info_json.md (#18817)
* [Docs] Update reference_info_json.md - Makes it easier to find keyboard.jsonschema. - Adds a reference to the Data Driven page. * Update docs/reference_info_json.md Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Ryan <fauxpark@gmail.com>
This commit is contained in:
parent
cbedec64a4
commit
5a3770d363
|
@ -1,6 +1,6 @@
|
||||||
# `info.json`
|
# `info.json`
|
||||||
|
|
||||||
The information contained in `info.json` is combined with the `config.h` and `rules.mk` files, dynamically generating the necessary configuration for your keyboard at compile time. It is also used by the [QMK API](https://github.com/qmk/qmk_api), and contains the information [QMK Configurator](https://config.qmk.fm/) needs to display a representation of your keyboard.
|
The information contained in `info.json` is combined with the `config.h` and `rules.mk` files, dynamically generating the necessary configuration for your keyboard at compile time. It is also used by the [QMK API](https://github.com/qmk/qmk_api), and contains the information [QMK Configurator](https://config.qmk.fm/) needs to display a representation of your keyboard. Its key/value pairs are ruled by the [`data/schemas/keyboard.jsonschema`](https://github.com/qmk/qmk_firmware/blob/master/data/schemas/keyboard.jsonschema) file. To learn more about the why and how of the schema file see the [Data Driven Configuration](https://docs.qmk.fm/#/data_driven_config) page.
|
||||||
|
|
||||||
You can create `info.json` files at every level under `qmk_firmware/keyboards/<name>`. These files are combined, with more specific files overriding keys in less specific files. This means you do not need to duplicate your metadata information. For example, `qmk_firmware/keyboards/clueboard/info.json` specifies `manufacturer` and `maintainer`, while `qmk_firmware/keyboards/clueboard/66/info.json` specifies more specific information about Clueboard 66%.
|
You can create `info.json` files at every level under `qmk_firmware/keyboards/<name>`. These files are combined, with more specific files overriding keys in less specific files. This means you do not need to duplicate your metadata information. For example, `qmk_firmware/keyboards/clueboard/info.json` specifies `manufacturer` and `maintainer`, while `qmk_firmware/keyboards/clueboard/66/info.json` specifies more specific information about Clueboard 66%.
|
||||||
|
|
||||||
|
@ -22,9 +22,6 @@ The `info.json` file is a JSON formatted dictionary. The first six keys noted he
|
||||||
* Example: `skullydazed`
|
* Example: `skullydazed`
|
||||||
* `usb`
|
* `usb`
|
||||||
* Configure USB VID, PID, and device version. See the [USB](#USB) section for more detail.
|
* Configure USB VID, PID, and device version. See the [USB](#USB) section for more detail.
|
||||||
|
|
||||||
There are many more optional keys, some of which are described below. Others may be found by examining `data/schemas`.
|
|
||||||
|
|
||||||
* `debounce`
|
* `debounce`
|
||||||
* The amount of time in milliseconds to wait for debounce to happen.
|
* The amount of time in milliseconds to wait for debounce to happen.
|
||||||
* Default: `5`
|
* Default: `5`
|
||||||
|
@ -39,6 +36,9 @@ There are many more optional keys, some of which are described below. Others may
|
||||||
* `rgblight`
|
* `rgblight`
|
||||||
* Configure the [RGB Lighting feature](feature_rgblight.md). See the [RGB Lighting](#rgb-lighting) section for more detail.
|
* Configure the [RGB Lighting feature](feature_rgblight.md). See the [RGB Lighting](#rgb-lighting) section for more detail.
|
||||||
|
|
||||||
|
|
||||||
|
?> For all the available keys and their allowed values refer back to the [`data/schemas/keyboard.jsonschema`](https://github.com/qmk/qmk_firmware/blob/master/data/schemas/keyboard.jsonschema) file.
|
||||||
|
|
||||||
### Layout Format
|
### Layout Format
|
||||||
|
|
||||||
Within our `info.json` file the `layouts` portion of the dictionary contains several nested dictionaries. The outer layer consists of QMK layout macros, for example `LAYOUT_ansi` or `LAYOUT_iso`.
|
Within our `info.json` file the `layouts` portion of the dictionary contains several nested dictionaries. The outer layer consists of QMK layout macros, for example `LAYOUT_ansi` or `LAYOUT_iso`.
|
||||||
|
|
Loading…
Reference in a new issue