summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorNdot <Ndot@users.noreply.github.com>2022-11-28 02:08:27 +0000
committerGitHub <noreply@github.com>2022-11-28 02:08:27 +0000
commit5a3770d363a657b73c644bc70d4586c0d142f372 (patch)
tree52743e7c15dff33b19f4335f626092a2195f8c27 /docs
parentcbedec64a42ddc408fc5053dc3a68afc6f48d4c1 (diff)
[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>
Diffstat (limited to 'docs')
-rw-r--r--docs/reference_info_json.md8
1 files changed, 4 insertions, 4 deletions
diff --git a/docs/reference_info_json.md b/docs/reference_info_json.md
index c872bcb696..a96d9d4b6f 100644
--- a/docs/reference_info_json.md
+++ b/docs/reference_info_json.md
@@ -1,6 +1,6 @@
# `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%.
@@ -22,9 +22,6 @@ The `info.json` file is a JSON formatted dictionary. The first six keys noted he
* Example: `skullydazed`
* `usb`
* 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`
* The amount of time in milliseconds to wait for debounce to happen.
* Default: `5`
@@ -39,6 +36,9 @@ There are many more optional keys, some of which are described below. Others may
* `rgblight`
* 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
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`.