diff options
author | johannbl <jblanteigne@gmail.com> | 2020-03-22 20:28:11 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-22 17:28:11 -0700 |
commit | f7722ef9ca485e3bc4f3897bb4ccfafd69b5db82 (patch) | |
tree | 829183f13361cbbb455c03154ab144c8cbda1b1b | |
parent | 76cb2b11606e98f1390627331ad753564db63305 (diff) |
[Keyboard] Added two new layouts for the cospad (#8502)
* creation
new numpad layout for 23 keys
creation of new keymap
* Update cospad.h
* Update info.json
* Update keymap.c
* Update keymap.c
Added a macro for the "00" key.
* added two new keymap. one for each new layout.
The new keymaps are based on the default keymap but focus on
* Update keyboards/cospad/cospad.h
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/cospad.h
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/keymaps/johannbl/numpad2/keymap.c
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/info.json
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/keymaps/johannbl/keymap.c
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/keymaps/johannbl/numpad2/keymap.c
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/info.json
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/keymaps/johannbl/numpad3/keymap.c
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/keymaps/johannbl/numpad3/keymap.c
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/keymaps/johannbl/numpad3/keymap.c
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keymap.c
layout name fix.
* Update keyboards/cospad/keymaps/johannbl/keymap.c
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/info.json
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/keymaps/johannbl/keymap.c
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Update keyboards/cospad/keymaps/johannbl/keymap.c
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
* Delete keymap.c
* Rename keyboards/cospad/keymaps/johannbl/numpad2/keymap.c to keyboards/cospad/keymaps/johannbl/split_plus_and_zero/keymap.c
* Rename keyboards/cospad/keymaps/johannbl/numpad3/keymap.c to keyboards/cospad/keymaps/johannbl/split_zero/keymap.c
* Rename keyboards/cospad/keymaps/johannbl/split_plus_and_zero/keymap.c to keyboards/cospad/keymaps/split_plus_and_zero/keymap.c
* Rename keyboards/cospad/keymaps/johannbl/split_zero/keymap.c to keyboards/cospad/keymaps/split_zero/keymap.c
* Update keyboards/cospad/keymaps/split_plus_and_zero/keymap.c
Co-Authored-By: Nick Brassel <nick@tzarc.org>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
-rw-r--r-- | keyboards/cospad/cospad.h | 64 | ||||
-rw-r--r-- | keyboards/cospad/info.json | 67 | ||||
-rw-r--r-- | keyboards/cospad/keymaps/split_plus_and_zero/keymap.c | 81 | ||||
-rw-r--r-- | keyboards/cospad/keymaps/split_zero/keymap.c | 81 |
4 files changed, 292 insertions, 1 deletions
diff --git a/keyboards/cospad/cospad.h b/keyboards/cospad/cospad.h index fc52204eda..f5ae8961f1 100644 --- a/keyboards/cospad/cospad.h +++ b/keyboards/cospad/cospad.h @@ -125,6 +125,70 @@ { k50, ___, k52, ___ } \ } + +/* 6x4 numpad with split Plus and 0 keys + * ,-------------------. + * | 00 | 01 | 02 | 03 | + * |----|----|----|----| + * | 10 | 11 | 12 | 13 | + * |----|----|----|----| + * | 20 | 21 | 22 | 23 | + * |----|----|----|----| + * | 30 | 31 | 32 | 33 | + * |----|----|----|----| + * | 40 | 41 | 42 | | + * |----|----|----| 43 | + * | 50 | 51 | 52 | | + * `-------------------' + */ +#define LAYOUT_numpad_6x4_split_plus_zero( \ + k00, k01, k02, k03, \ + k10, k11, k12, k13, \ + k20, k21, k22, k23, \ + k30, k31, k32, k33, \ + k40, k41, k42, \ + k50, k51, k52, k43 \ +) \ +{ \ + { k00, k01, k02, k03 }, \ + { k10, k11, k12, k13 }, \ + { k20, k21, k22, k23 }, \ + { k30, k31, k32, k33 }, \ + { k40, k41, k42, k43 }, \ + { k50, k51, k52, ___ } \ +} + +/* 6x4 numpad with split 0 key + * ,-------------------. + * | 00 | 01 | 02 | 03 | + * |----|----|----|----| + * | 10 | 11 | 12 | 13 | + * |----|----|----|----| + * | 20 | 21 | 22 | | + * |----|----|----| 23 | + * | 30 | 31 | 32 | | + * |----|----|----|----| + * | 40 | 41 | 42 | | + * |----|----|----| 43 | + * | 50 | 51 | 52 | | + * `-------------------' + */ +#define LAYOUT_numpad_6x4_split_zero( \ + k00, k01, k02, k03, \ + k10, k11, k12, k13, \ + k20, k21, k22, \ + k30, k31, k32, k23, \ + k40, k41, k42, \ + k50, k51, k52, k43 \ +) \ +{ \ + { k00, k01, k02, k03 }, \ + { k10, k11, k12, k13 }, \ + { k20, k21, k22, k23 }, \ + { k30, k31, k32, ___ }, \ + { k40, k41, k42, k43 }, \ + { k50, k51, k52, ___ } \ +} // Add backwards compatibility for existing keymaps #define cospad_bl_led_on backlight_enable #define cospad_bl_led_off backlight_disable diff --git a/keyboards/cospad/info.json b/keyboards/cospad/info.json index 83bf81c14d..1cd197d3fd 100644 --- a/keyboards/cospad/info.json +++ b/keyboards/cospad/info.json @@ -102,6 +102,71 @@ {"x":2, "y":5}, {"x":3, "y":5} ] - } + }, + "LAYOUT_numpad_6x4_split_plus_zero": { + "key_count": 23, + "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}, + + {"x":0, "y":4}, + {"x":1, "y":4}, + {"x":2, "y":4}, + + {"x":0, "y":5}, + {"x":1, "y":5}, + {"x":2, "y":5}, + {"x":3, "y":4, "h":2} + ] + }, + "LAYOUT_numpad_6x4_split_zero": { + "key_count": 22, + "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":0, "y":3}, + {"x":1, "y":3}, + {"x":2, "y":3}, + {"x":3, "y":2, "h":2}, + + {"x":0, "y":4}, + {"x":1, "y":4}, + {"x":2, "y":4}, + + {"x":0, "y":5}, + {"x":1, "y":5}, + {"x":2, "y":5}, + {"x":3, "y":4, "h":2} + ] + } } } diff --git a/keyboards/cospad/keymaps/split_plus_and_zero/keymap.c b/keyboards/cospad/keymaps/split_plus_and_zero/keymap.c new file mode 100644 index 0000000000..dd2ff00cd1 --- /dev/null +++ b/keyboards/cospad/keymaps/split_plus_and_zero/keymap.c @@ -0,0 +1,81 @@ +#include QMK_KEYBOARD_H + +/* + * This keymap is based on the default keymap for the cospad. + * It was adapted for the split Plus and split 0 layout focusing on the "00" key. + */ + +enum custom_keycodes { + DBL_ZRO = SAFE_RANGE, +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case DBL_ZRO: + if (record->event.pressed) { + // when keycode DBL_ZRO is pressed + SEND_STRING("00"); + } else { + // when keycode DBL_ZRO is released + } + break; + + } + return true; +}; + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BL, + _FL +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap _BL: (Base Layer) Default Layer + * ,-------------------. + * |Esc |TAB | FN | BS | + * |----|----|----|----| + * | NL | / | * | - | + * |----|----|----|----| + * | 7 | 8 | 9 | ~ | + * |----|----|----|----| + * | 4 | 5 | 6 | + | + * |----|----|----|----| + * | 1 | 2 | 3 | | + * |----|----|----| En | + * | 0 | 00 | . | | + * `-------------------' + */ + [_BL] = LAYOUT_numpad_6x4_split_plus_zero( + KC_ESC, KC_TAB, MO(_FL), KC_BSPC, + KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, KC_TILD, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, + KC_P0, DBL_ZRO, KC_PDOT, KC_PENT + ), + + /* Keymap _FL: Function Layer + * ,-------------------. + * |RGBT| | | | + * |----|----|----|----| + * |RGBM|RGBP|BTOG| | + * |----|----|----|----| + * |HUD |HUI |BON | | + * |----|----|----|----| + * |SAD |SAI |BOFF| | + * |----|----|----|----| + * |VAD |VAS |BSTP| | + * |----|----|----| | + * | | |RST | | + * `-------------------' + */ + [_FL] = LAYOUT_numpad_6x4_split_plus_zero( + RGB_TOG, _______, _______, _______, + RGB_MOD, RGB_M_P, BL_TOGG, _______, + RGB_HUD, RGB_HUI, BL_ON, _______, + RGB_SAD, RGB_SAI, BL_OFF, _______, + RGB_VAD, RGB_VAI, BL_STEP, + _______, _______, RESET, _______ + ) +}; diff --git a/keyboards/cospad/keymaps/split_zero/keymap.c b/keyboards/cospad/keymaps/split_zero/keymap.c new file mode 100644 index 0000000000..3a0c7d6e4e --- /dev/null +++ b/keyboards/cospad/keymaps/split_zero/keymap.c @@ -0,0 +1,81 @@ +#include QMK_KEYBOARD_H + +/* + * This keymap is based on the default keymap for the cospad. + * It was adapted for the split 0 layout focusing on the "00" key. + */ + +enum custom_keycodes { + DBL_ZRO = SAFE_RANGE, +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case DBL_ZRO: + if (record->event.pressed) { + // when keycode DBL_ZRO is pressed + SEND_STRING("00"); + } else { + // when keycode DBL_ZRO is released + } + break; + + } + return true; +}; + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BL, + _FL +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap _BL: (Base Layer) Default Layer + * ,-------------------. + * |Esc |TAB | FN | BS | + * |----|----|----|----| + * | NL | / | * | - | + * |----|----|----|----| + * | 7 | 8 | 9 | | + * |----|----|----| + | + * | 4 | 5 | 6 | | + * |----|----|----|----| + * | 1 | 2 | 3 | | + * |----|----|----| En | + * | 0 | 00 | . | | + * `-------------------' + */ + [_BL] = LAYOUT_numpad_6x4_split_zero( + KC_ESC, KC_TAB, MO(_FL), KC_BSPC, + 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, DBL_ZRO, KC_PDOT, KC_PENT + ), + + /* Keymap _FL: Function Layer + * ,-------------------. + * |RGBT| | | | + * |----|----|----|----| + * |RGBM|RGBP|BTOG| | + * |----|----|----|----| + * |HUD |HUI |BON | | + * |----|----|----| | + * |SAD |SAI |BOFF| | + * |----|----|----|----| + * |VAD |VAS |BSTP| | + * |----|----|----| | + * | | |RST | | + * `-------------------' + */ + [_FL] = LAYOUT_numpad_6x4_split_zero( + RGB_TOG, _______, _______, _______, + RGB_MOD, RGB_M_P, BL_TOGG, _______, + RGB_HUD, RGB_HUI, BL_ON, + RGB_SAD, RGB_SAI, BL_OFF, _______, + RGB_VAD, RGB_VAI, BL_STEP, + _______, _______, RESET, _______ + ) +}; |