qmk

Unnamed repository; edit this file 'description' to name the repository.
git clone git://git.z3bra.org/qmk.git
Log | Files | Refs | Submodules | LICENSE

commit eccfb8d55e47fff65df33622c5494b07eac0daab
parent 2435a52655979de6dab703545b57875815b0d191
Author: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
Date:   Sat, 16 Jun 2018 08:02:11 -0700

SixKeyBoard refactor (#3193)

* Refactor: create matrix macro

* Readme changes

* Configurator support

Diffstat:
keyboards/sixkeyboard/info.json | 12++++++++++++
keyboards/sixkeyboard/keymaps/default/keymap.c | 10+++++-----
keyboards/sixkeyboard/readme.md | 6+++---
keyboards/sixkeyboard/sixkeyboard.h | 29++++++++++++++++++++++-------
4 files changed, 42 insertions(+), 15 deletions(-)

diff --git a/keyboards/sixkeyboard/info.json b/keyboards/sixkeyboard/info.json @@ -0,0 +1,12 @@ +{ + "keyboard_name": "Techkeys SixKeyBoard", + "url": "", + "maintainer": "qmk", + "width": 3, + "height": 2, + "layouts": { + "LAYOUT": { + "layout": [{"label":"k00", "x":0, "y":0}, {"label":"k01", "x":1, "y":0}, {"label":"k02", "x":2, "y":0}, {"label":"k10", "x":0, "y":1}, {"label":"k11", "x":1, "y":1}, {"label":"k12", "x":2, "y":1}] + } + } +} diff --git a/keyboards/sixkeyboard/keymaps/default/keymap.c b/keyboards/sixkeyboard/keymaps/default/keymap.c @@ -1,12 +1,12 @@ -#include "sixkeyboard.h" +#include QMK_KEYBOARD_H #include "matrix.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = { - {KC_A, KC_B, KC_C}, - {KC_D, KC_E, KC_F} - } + [0] = LAYOUT( + KC_A, KC_B, KC_C, \ + KC_D, KC_E, KC_F \ + ) }; const uint16_t PROGMEM fn_actions[] = { diff --git a/keyboards/sixkeyboard/readme.md b/keyboards/sixkeyboard/readme.md @@ -1,9 +1,9 @@ Techkeys SixKeyBoard === -Keyboard Maintainer: QMK Community -Hardware Supported: Techkeys SixKeyBoard PCB -Hardware Availability: http://techkeys.us/collections/accessories/products/sixkeyboard +Keyboard Maintainer: QMK Community +Hardware Supported: Techkeys SixKeyBoard PCB +Hardware Availability: [Techkeys](http://techkeys.us/collections/accessories/products/sixkeyboard) Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/sixkeyboard/sixkeyboard.h b/keyboards/sixkeyboard/sixkeyboard.h @@ -3,16 +3,32 @@ #include "quantum.h" -// This macro is an example of using a non-standard row-column matrix. The -// keyboard in question had 11 rows and 8 columns, but the rows were not all -// horizontal, and the columns were not all vertical. For example, row 2 +// This macro is an example of using a non-standard row-column matrix. The +// keyboard in question had 11 rows and 8 columns, but the rows were not all +// horizontal, and the columns were not all vertical. For example, row 2 // contained "Print Screen", "N", "M", ",", ".", "/", "Right Shift", and -// "Left Alt". Column 0 contained "F6", "7", "O", "'", "Q", "D", "B", +// "Left Alt". Column 0 contained "F6", "7", "O", "'", "Q", "D", "B", // "Left Alt", "Up Arrow", and "Down Arrow". // // The macro makes programming the keys easier and in a more straight-forward -// manner because it realigns the keys into a 6x15 sensible keyboard layout +// manner because it realigns the keys into a 6x15 sensible keyboard layout // instead of the obtuse 11x8 matrix. -#endif- \ No newline at end of file +/* + * ┌───┬───┬───┐ + * │ A │ B │ C │ + * ├───┼───┼───┤ + * │ D │ E │ F │ + * └───┴───┴───┘ + */ +#define LAYOUT( \ + k00, k01, k02, \ + k10, k11, k12 \ + ) { \ + { k00, k01, k02 }, \ + { k10, k11, k12 } \ +} + + +#endif