summaryrefslogtreecommitdiff
path: root/docs/config_options.md
diff options
context:
space:
mode:
authorfauxpark <fauxpark@gmail.com>2022-09-30 05:19:53 +1000
committerfauxpark <fauxpark@gmail.com>2022-09-30 05:19:53 +1000
commitdbb70871fcb98b98dd5544b53f4083dfc2aeefff (patch)
tree75839f796a26c2f2908b584e3ca0a35457f83fe2 /docs/config_options.md
parentdbe214c3268d9a316a137471a7679f7e45046e49 (diff)
parent45b5ed5c6e1ecdf95e9ce0523a8ff49d45b8822f (diff)
Merge remote-tracking branch 'upstream/master' into develop
Diffstat (limited to 'docs/config_options.md')
-rw-r--r--docs/config_options.md12
1 files changed, 11 insertions, 1 deletions
diff --git a/docs/config_options.md b/docs/config_options.md
index 05e27a835c..5d5cae2184 100644
--- a/docs/config_options.md
+++ b/docs/config_options.md
@@ -2,7 +2,17 @@
QMK is nearly infinitely configurable. Wherever possible we err on the side of allowing users to customize their keyboard, even at the expense of code size. That level of flexibility makes for a daunting configuration experience, however.
-There are two main types of configuration files in QMK- `config.h` and `rules.mk`. These files exist at various levels in QMK and all files of the same type are combined to build the final configuration. The levels, from lowest priority to highest priority, are:
+There are three main types of configuration files in QMK:
+
+* `config.h`, which contains various preprocessor directives (`#define`, `#ifdef`)
+* `rules.mk`, which contains additional variables
+* `info.json`, which is utilized for [data-driven configuration](https://docs.qmk.fm/#/data_driven_config)
+
+This page will only discuss the first two types, `config.h` and `rules.mk`.
+
+?> While not all settings have data-driven equivalents yet, keyboard makers are encouraged to utilize the `info.json` file to set the metadata for their boards when possible. See the [`info.json` Format](https://docs.qmk.fm/#/reference_info_json) page for more details.
+
+These files exist at various levels in QMK and all files of the same type are combined to build the final configuration. The levels, from lowest priority to highest priority, are:
* QMK Default
* Keyboard