diff options
| -rw-r--r-- | docs/hardware_keyboard_guidelines.md | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/docs/hardware_keyboard_guidelines.md b/docs/hardware_keyboard_guidelines.md index 3a74e5f5c..c8aec40e0 100644 --- a/docs/hardware_keyboard_guidelines.md +++ b/docs/hardware_keyboard_guidelines.md | |||
| @@ -78,9 +78,11 @@ The following functions are typically defined in this file: | |||
| 78 | 78 | ||
| 79 | ### `<keyboard_name.h>` | 79 | ### `<keyboard_name.h>` |
| 80 | 80 | ||
| 81 | This file is used to define the matrix for your keyboard. You should define at least one C macro named `LAYOUT` which translates an array into a matrix representing the physical switch matrix for your keyboard. If it's possible to build your keyboard with multiple layouts you may define additional macros. | 81 | This file is used to define the matrix for your keyboard. You should define at least one C macro which translates an array into a matrix representing the physical switch matrix for your keyboard. If it's possible to build your keyboard with multiple layouts you should define additional macros. |
| 82 | 82 | ||
| 83 | When defining multiple layouts you should have a base layout, named `LAYOUT`, that supports all possible switch positions on your matrix, even if that layout is impossible to build physically. This is the macro you should use in your `default` keymap. You should then have additional keymaps named `default_<layout>` that use your other layout macros. This will make it easier for people to use the layouts you define. | 83 | If you have only a single layout you should call this macro `LAYOUT`. |
| 84 | |||
| 85 | When defining multiple layouts you should have a base layout, named `LAYOUT_all`, that supports all possible switch positions on your matrix, even if that layout is impossible to build physically. This is the macro you should use in your `default` keymap. You should then have additional keymaps named `default_<layout>` that use your other layout macros. This will make it easier for people to use the layouts you define. | ||
| 84 | 86 | ||
| 85 | Layout macro names are entirely lowercase, except for the word `LAYOUT` at the front. | 87 | Layout macro names are entirely lowercase, except for the word `LAYOUT` at the front. |
| 86 | 88 | ||
| @@ -88,7 +90,7 @@ As an example, if you have a 60% PCB that supports ANSI and ISO you might define | |||
| 88 | 90 | ||
| 89 | | Layout Name | Keymap Name | Description | | 91 | | Layout Name | Keymap Name | Description | |
| 90 | |-------------|-------------|-------------| | 92 | |-------------|-------------|-------------| |
| 91 | | LAYOUT | default | A layout that supports both ISO and ANSI | | 93 | | LAYOUT_all | default | A layout that supports both ISO and ANSI | |
| 92 | | LAYOUT_ansi | default_ansi | An ANSI layout | | 94 | | LAYOUT_ansi | default_ansi | An ANSI layout | |
| 93 | | LAYOUT_iso | default_iso | An ISO layout | | 95 | | LAYOUT_iso | default_iso | An ISO layout | |
| 94 | 96 | ||
