~ruther/qmk_firmware

19fdfccca28f923a12351fbee6c8c8282dca004e — noroadsleft 7 years ago 9175eeb
Keyboard: Ckeys refactor (#3681)

* Obelus Refactor: LAYOUT to LAYOUT_ortho_4x4

- Keymap also now uses #include QMK_KEYBOARD_H
- Readability and white space changes
- rules.mk now has LAYOUTS = ortho_4x4
- added info.json

* naKey Refactor: LAYOUT to LAYOUT_numpad_5x4

- Matrix LAYOUT renamed to LAYOUT_numpad_5x4
- Now supports community layout numpad_5x4
- White space changes

* naKey Configurator update

Updated order of JSON objects to match new matrix order.
M keyboards/ckeys/nakey/info.json => keyboards/ckeys/nakey/info.json +3 -3
@@ 5,8 5,8 @@
  "width": 4,
  "height": 5,
  "layouts": {
      "LAYOUT": {
          "layout": [{"label":"Num Lock", "x":0, "y":0}, {"label":"/", "x":1, "y":0}, {"label":"*", "x":2, "y":0}, {"label":"-", "x":3, "y":0}, {"label":"7", "x":0, "y":1}, {"label":"8", "x":1, "y":1}, {"label":"9", "x":2, "y":1}, {"label":"+", "x":3, "y":1, "h":2}, {"label":"4", "x":0, "y":2}, {"label":"5", "x":1, "y":2}, {"label":"6", "x":2, "y":2}, {"label":"1", "x":0, "y":3}, {"label":"2", "x":1, "y":3}, {"label":"3", "x":2, "y":3}, {"label":"Enter", "x":3, "y":3, "h":2}, {"label":"0", "x":0, "y":4, "w":2}, {"label":".", "x":2, "y":4}]
      }
    "LAYOUT_numpad_5x4": {
      "layout": [{"label":"Num Lock", "x":0, "y":0}, {"label":"/", "x":1, "y":0}, {"label":"*", "x":2, "y":0}, {"label":"-", "x":3, "y":0}, {"label":"7", "x":0, "y":1}, {"label":"8", "x":1, "y":1}, {"label":"9", "x":2, "y":1}, {"label":"4", "x":0, "y":2}, {"label":"5", "x":1, "y":2}, {"label":"6", "x":2, "y":2}, {"label":"+", "x":3, "y":1, "h":2}, {"label":"1", "x":0, "y":3}, {"label":"2", "x":1, "y":3}, {"label":"3", "x":2, "y":3}, {"label":"0", "x":0, "y":4, "w":2}, {"label":".", "x":2, "y":4}, {"label":"Enter", "x":3, "y":3, "h":2}]
    }
  }
}

M keyboards/ckeys/nakey/keymaps/default/keymap.c => keyboards/ckeys/nakey/keymaps/default/keymap.c +17 -18
@@ 16,32 16,31 @@
#include QMK_KEYBOARD_H

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT( /* Base */
  KC_NLCK,  KC_PSLS,  KC_PAST, KC_PMNS, \
  KC_P7,    KC_P8,    KC_P9,   KC_PPLS, \
  KC_P4,    KC_P5,    KC_P6,   \
  KC_P1,    KC_P2,    KC_P3,   KC_PENT, \
  KC_P0,              KC_PDOT  \
),
  [0] = LAYOUT_numpad_5x4( /* Base */
    KC_NLCK,  KC_PSLS,  KC_PAST, KC_PMNS, \
    KC_P7,    KC_P8,    KC_P9,            \
    KC_P4,    KC_P5,    KC_P6,   KC_PPLS, \
    KC_P1,    KC_P2,    KC_P3,            \
    KC_P0,              KC_PDOT, KC_PENT \
  ),
};

const uint16_t PROGMEM fn_actions[] = {

};

const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
{
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
  // MACRODOWN only works in this function
      switch(id) {
        case 0:
          if (record->event.pressed) {
            register_code(KC_RSFT);
          } else {
            unregister_code(KC_RSFT);
          }
        break;
  switch(id) {
    case 0:
      if (record->event.pressed) {
        register_code(KC_RSFT);
      } else {
        unregister_code(KC_RSFT);
      }
    return MACRO_NONE;
      break;
  }
  return MACRO_NONE;
};



M keyboards/ckeys/nakey/nakey.h => keyboards/ckeys/nakey/nakey.h +6 -7
@@ 22,14 22,13 @@
// The following is an example using the Planck MIT layout
// The first section contains all of the arguments
// The second converts the arguments into a two-dimensional array
#define LAYOUT( \
#define LAYOUT_numpad_5x4( \
    k00, k01, k02, k03, \
    k10, k11, k12, k13, \
    k20, k21, k22, \
    k30, k31, k32, k33, \
    k40,      k41  \
) \
{ \
    k10, k11, k12,      \
    k20, k21, k22, k13, \
    k30, k31, k32,      \
    k40,      k41, k33  \
) { \
    { k00, k01,   k02, k03   }, \
    { k10, k11,   k12, k13   }, \
    { k20, k21,   k22, KC_NO }, \

M keyboards/ckeys/nakey/rules.mk => keyboards/ckeys/nakey/rules.mk +2 -0
@@ 66,3 66,5 @@ UNICODE_ENABLE ?= no         # Unicode
BLUETOOTH_ENABLE ?= no       # Enable Bluetooth with the Adafruit EZ-Key HID
AUDIO_ENABLE ?= no           # Audio output on port C6
FAUXCLICKY_ENABLE ?= no      # Use buzzer to emulate clicky switches

LAYOUTS = numpad_5x4

A keyboards/ckeys/obelus/info.json => keyboards/ckeys/obelus/info.json +13 -0
@@ 0,0 1,13 @@
{
  "keyboard_name": "Obelus",
  "url": "",
  "maintainer": "qmk",
  "width": 4,
  "height": 4,
  "layouts": {
    "LAYOUT_ortho_4x4": {
      "key_count": 16,
      "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}]
    }
  }
}

M keyboards/ckeys/obelus/keymaps/default/keymap.c => keyboards/ckeys/obelus/keymaps/default/keymap.c +37 -38
@@ 1,5 1,4 @@
#include "obelus.h"
#include "action_layer.h"
#include QMK_KEYBOARD_H
#ifdef AUDIO_ENABLE
  #include "audio.h"
#endif


@@ 18,12 17,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
   * |     |     |     |     |
   * `---------------------- '
   */
[0] = LAYOUT( /* LAYER SELECT */
  KC_TRNS, KC_TRNS, KC_TRNS, RESET, \
  TO(4),   KC_TRNS, KC_TRNS, KC_TRNS, \
  TO(1),   TO(2),   TO(3),   KC_TRNS, \
  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS  \
),
  [0] = LAYOUT_ortho_4x4( /* LAYER SELECT */
    _______, _______, _______, RESET,   \
    TO(4),   _______, _______, _______, \
    TO(1),   TO(2),   TO(3),   _______, \
    _______, _______, _______, _______  \
  ),
  /* NUMPAD
   * ,-----------------------.
   * |  7  |  8  |  9  |  *  |


@@ 35,12 34,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
   * |  0  |  .  |  /  |  =  |
   * `---------------------- '
   */
[1] = LAYOUT( /* NUMPAD */
  KC_P7,   KC_P8,   KC_P9,   KC_PAST, \
  KC_P4,   KC_P5,   KC_P6,   KC_PMNS, \
  KC_P1,   KC_P2,   KC_P3,   KC_PPLS, \
  KC_P0,   KC_PDOT, KC_PSLS, LT(5,KC_PENT) \
),
  [1] = LAYOUT_ortho_4x4( /* NUMPAD */
    KC_P7, KC_P8,   KC_P9,   KC_PAST,        \
    KC_P4, KC_P5,   KC_P6,   KC_PMNS,        \
    KC_P1, KC_P2,   KC_P3,   KC_PPLS,        \
    KC_P0, KC_PDOT, KC_PSLS, LT(5, KC_PENT)  \
  ),
  /* NUMPAD SUPPLEMENT
   * ,-----------------------.
   * |NUMLK|     |     |     |


@@ 52,12 51,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
   * |     |     |     |     |
   * `---------------------- '
   */
[5] = LAYOUT( /* NUMPAD SUPPLEMENT */
  KC_NLCK, KC_TRNS, KC_TRNS, TO(0),   \
  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
  KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS \
),
  [5] = LAYOUT_ortho_4x4( /* NUMPAD SUPPLEMENT */
    KC_NLCK, _______, _______, TO(0),   \
    _______, _______, _______, _______, \
    _______, _______, _______, _______, \
    _______, _______, _______, _______  \
  ),
  /* NAV
   * ,-----------------------.
   * | INS |PGUP | TAB |PRSCR|


@@ 69,12 68,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
   * |LEFT |DOWN |RIGHT|ENTER|
   * `---------------------- '
   */
[2] = LAYOUT( /* NAV CLUSTER */
  KC_INS,  KC_PGUP, KC_TAB,  KC_PSCR, \
  KC_DEL,  KC_PGDN, KC_VOLD, KC_VOLU, \
  KC_HOME, KC_UP,   KC_END,  TO(0),   \
  KC_LEFT, KC_DOWN, KC_RGHT, KC_ENT \
),
  [2] = LAYOUT_ortho_4x4( /* NAV CLUSTER */
    KC_INS,  KC_PGUP, KC_TAB,  KC_PSCR, \
    KC_DEL,  KC_PGDN, KC_VOLD, KC_VOLU, \
    KC_HOME, KC_UP,   KC_END,  TO(0),   \
    KC_LEFT, KC_DOWN, KC_RGHT, KC_ENT   \
  ),
  /* GAMING
   * ,-----------------------.
   * | ESC |  1  |  2  |  3  |


@@ 86,12 85,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
   * |CTRL |  C  |  R  |SPACE|
   * `---------------------- '
   */
[3] = LAYOUT( /* GAMING */
  LT(4, KC_ESC),  KC_1,    KC_2,    KC_3,    \
  KC_TAB,  KC_Q,    KC_W,    KC_E,    \
  KC_LSFT, KC_A,    KC_S,    KC_D,    \
  KC_LCTL, KC_C,    KC_R,    KC_SPC \
),
  [3] = LAYOUT_ortho_4x4( /* GAMING */
    LT(4, KC_ESC), KC_1, KC_2, KC_3,  \
    KC_TAB,        KC_Q, KC_W, KC_E,  \
    KC_LSFT,       KC_A, KC_S, KC_D,  \
    KC_LCTL,       KC_C, KC_R, KC_SPC \
  ),
  /* MUSIC
   * ,-----------------------.
   * |     |     |     |     |


@@ 103,12 102,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
   * |TOGGL|MODE |     |     |
   * `---------------------- '
   */
[4] = LAYOUT( /* NUMPAD SUPPLEMENT */
  KC_NO,   KC_NO,   KC_NO,   KC_NO,   \
  KC_NO,   KC_NO,   KC_NO,   KC_NO,   \
  KC_NO,   KC_NO,   KC_NO,   KC_NO,   \
  MU_TOG,  MU_MOD,  KC_NO,   TO(0)   \
),
  [4] = LAYOUT_ortho_4x4( /* NUMPAD SUPPLEMENT */
    XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
    XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
    XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
    MU_TOG,   MU_MOD, XXXXXXX, TO(0)    \
  ),
};

bool process_record_user(uint16_t keycode, keyrecord_t *record) {

M keyboards/ckeys/obelus/obelus.h => keyboards/ckeys/obelus/obelus.h +1 -1
@@ 7,7 7,7 @@
// The following is an example using the Planck MIT layout
// The first section contains all of the arguements
// The second converts the arguments into a two-dimensional array
#define LAYOUT( \
#define LAYOUT_ortho_4x4( \
    k00, k01, k02, k03, \
    k10, k11, k12, k13, \
    k20, k21, k22, k23, \

M keyboards/ckeys/obelus/rules.mk => keyboards/ckeys/obelus/rules.mk +2 -0
@@ 66,3 66,5 @@ UNICODE_ENABLE = no         # Unicode
BLUETOOTH_ENABLE = no       # Enable Bluetooth with the Adafruit EZ-Key HID
AUDIO_ENABLE = yes           # Audio output on port C6
FAUXCLICKY_ENABLE = no      # Use buzzer to emulate clicky switches

LAYOUTS = ortho_4x4