Keyboard: Blockey refactor (#3722)
* Matrix refactor Edited for readability. * Keymap refactor Deleted TMK-syntax macro block. Edited for readability. * Readme cleanup Edited image link (link previously referenced a single-image album). * Configurator support
This commit is contained in:
parent
4951fc52be
commit
9d27d55443
5 changed files with 49 additions and 73 deletions
|
@ -18,6 +18,9 @@
|
||||||
|
|
||||||
#include "quantum.h"
|
#include "quantum.h"
|
||||||
|
|
||||||
|
// readability
|
||||||
|
#define XXX KC_NO
|
||||||
|
|
||||||
// This a shortcut to help you visually see your layout.
|
// This a shortcut to help you visually see your layout.
|
||||||
// The following is an example using the Planck MIT layout
|
// The following is an example using the Planck MIT layout
|
||||||
// The first section contains all of the arguments
|
// The first section contains all of the arguments
|
||||||
|
@ -25,21 +28,21 @@
|
||||||
#define LAYOUT( \
|
#define LAYOUT( \
|
||||||
k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, \
|
k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, \
|
||||||
k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, \
|
k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, \
|
||||||
k29, k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k40, k41, \
|
k29, k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k40, k41, \
|
||||||
k42, k43, k44, k45, k46, k47, k48, k49, k50, k51, k52, k53, k54, \
|
k42, k43, k44, k45, k46, k47, k48, k49, k50, k51, k52, k53, k54, \
|
||||||
k55, k56, k57, k58, k59, k60, k61, k62 \
|
k55, k56, k57, k58, k59, k60, k61, k62 \
|
||||||
) \
|
) \
|
||||||
{ \
|
{ \
|
||||||
{ k01, k02, k03, k04, k05, k06, k07 }, \
|
{ k01, k02, k03, k04, k05, k06, k07 }, \
|
||||||
{ k15, k16, k17, k18, k19, k20, k21 }, \
|
{ k15, k16, k17, k18, k19, k20, k21 }, \
|
||||||
{ k29, k30, k31, k32, k33, k34, k35 }, \
|
{ k29, k30, k31, k32, k33, k34, k35 }, \
|
||||||
{ k42, k43, k44, k45, k46, k47, k48 }, \
|
{ k42, k43, k44, k45, k46, k47, k48 }, \
|
||||||
{ k55, k56, k57, k58, KC_NO, KC_NO, k59 }, \
|
{ k55, k56, k57, k58, XXX, XXX, k59 }, \
|
||||||
{ k08, k09, k10, k11, k12, k13, k14 }, \
|
{ k08, k09, k10, k11, k12, k13, k14 }, \
|
||||||
{ k22, k23, k24, k25, k26, k27, k28 }, \
|
{ k22, k23, k24, k25, k26, k27, k28 }, \
|
||||||
{ k36, k37, k38, k39, k40, k41, KC_NO }, \
|
{ k36, k37, k38, k39, k40, k41, XXX }, \
|
||||||
{ k49, k50, k51, k52, k53, k54, KC_NO }, \
|
{ k49, k50, k51, k52, k53, k54, XXX }, \
|
||||||
{ KC_NO, KC_NO, KC_NO, k60, k61, k62, KC_NO}, \
|
{ XXX, XXX, XXX, k60, k61, k62, XXX }, \
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
12
keyboards/blockey/info.json
Normal file
12
keyboards/blockey/info.json
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
"keyboard_name": "BlocKey",
|
||||||
|
"url": "",
|
||||||
|
"maintainer": "qmk",
|
||||||
|
"width": 14.16,
|
||||||
|
"height": 5,
|
||||||
|
"layouts": {
|
||||||
|
"LAYOUT": {
|
||||||
|
"layout": [{"label":"`", "x":0, "y":0}, {"label":"1", "x":1, "y":0}, {"label":"2", "x":2, "y":0}, {"label":"3", "x":3, "y":0}, {"label":"4", "x":4, "y":0}, {"label":"5", "x":5, "y":0}, {"label":"6", "x":6, "y":0}, {"label":"7", "x":7, "y":0}, {"label":"8", "x":8, "y":0}, {"label":"9", "x":9, "y":0}, {"label":"0", "x":10, "y":0}, {"label":"-", "x":11, "y":0}, {"label":"=", "x":12, "y":0}, {"label":"Back Space", "x":13, "y":0}, {"label":"Tab", "x":0.16, "y":1}, {"label":"Q", "x":1.16, "y":1}, {"label":"W", "x":2.16, "y":1}, {"label":"E", "x":3.16, "y":1}, {"label":"R", "x":4.16, "y":1}, {"label":"T", "x":5.16, "y":1}, {"label":"Y", "x":6.16, "y":1}, {"label":"U", "x":7.16, "y":1}, {"label":"I", "x":8.16, "y":1}, {"label":"O", "x":9.16, "y":1}, {"label":"P", "x":10.16, "y":1}, {"label":"[", "x":11.16, "y":1}, {"label":"]", "x":12.16, "y":1}, {"label":"\\", "x":13.16, "y":1}, {"label":"LCtrl", "x":0.33, "y":2}, {"label":"A", "x":1.33, "y":2}, {"label":"S", "x":2.33, "y":2}, {"label":"D", "x":3.33, "y":2}, {"label":"F", "x":4.33, "y":2}, {"label":"G", "x":5.33, "y":2}, {"label":"H", "x":6.33, "y":2}, {"label":"J", "x":7.33, "y":2}, {"label":"K", "x":8.33, "y":2}, {"label":"L", "x":9.33, "y":2}, {"label":";", "x":10.33, "y":2}, {"label":"\"", "x":11.33, "y":2}, {"label":"Enter", "x":12.66, "y":2}, {"label":"LShift", "x":0.5, "y":3}, {"label":"Z", "x":1.5, "y":3}, {"label":"X", "x":2.5, "y":3}, {"label":"C", "x":3.5, "y":3}, {"label":"V", "x":4.5, "y":3}, {"label":"B", "x":5.5, "y":3}, {"label":"N", "x":6.5, "y":3}, {"label":"M", "x":7.5, "y":3}, {"label":",", "x":8.5, "y":3}, {"label":".", "x":9.5, "y":3}, {"label":"/", "x":10.5, "y":3}, {"label":"Up", "x":11.5, "y":3}, {"label":"Fn", "x":12.83, "y":3}, {"label":"Esc", "x":0, "y":4}, {"label":"Caps Lock", "x":1, "y":4}, {"label":"LAlt", "x":2, "y":4}, {"label":"LGUI", "x":3, "y":4}, {"label":"Space", "x":4, "y":4, "w":6}, {"label":"Left", "x":10.5, "y":4}, {"label":"Down", "x":11.5, "y":4}, {"label":"Right", "x":12.5, "y":4}]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -27,41 +27,25 @@ extern rgblight_config_t rgblight_config;
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
[0] = LAYOUT(
|
[0] = LAYOUT(
|
||||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,KC_EQL, KC_BSPC, \
|
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
|
||||||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,KC_RBRC,KC_BSLS, \
|
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
|
||||||
KC_LCTL,KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_ENT, \
|
KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
|
||||||
KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_UP, MO(1), \
|
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, MO(1), \
|
||||||
KC_ESC, KC_CAPS,KC_LALT,KC_LGUI,KC_SPC, KC_LEFT,KC_DOWN,KC_RGHT \
|
KC_ESC, KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, KC_LEFT, KC_DOWN, KC_RGHT \
|
||||||
),
|
),
|
||||||
[1] = LAYOUT(
|
[1] = LAYOUT(
|
||||||
_______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, \
|
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, \
|
||||||
_______,RGB_TOG,RGB_HUI,RGB_SAI,RGB_VAI,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, \
|
_______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||||
_______,RGB_MOD,RGB_HUD,RGB_SAD,RGB_VAD,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,_______, \
|
_______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, \
|
||||||
_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_PGUP,_______, \
|
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGUP, _______, \
|
||||||
_______,_______,_______,_______,_______, KC_HOME,KC_PGDN,KC_END \
|
_______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END \
|
||||||
),
|
),
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const uint16_t PROGMEM fn_actions[] = {
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||||
|
return true;
|
||||||
};
|
}
|
||||||
|
|
||||||
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;
|
|
||||||
}
|
|
||||||
return MACRO_NONE;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
void matrix_init_user(void) {
|
void matrix_init_user(void) {
|
||||||
|
|
||||||
|
@ -71,10 +55,6 @@ void matrix_scan_user(void) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void led_set_user(uint8_t usb_led) {
|
void led_set_user(uint8_t usb_led) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,40 +27,25 @@ extern rgblight_config_t rgblight_config;
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
[0] = LAYOUT(
|
[0] = LAYOUT(
|
||||||
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,KC_EQL, KC_BSPC, \
|
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
|
||||||
KC_TAB, KC_Q, KC_W, KC_COMM,KC_DOT, KC_SCLN,KC_M, KC_R, KC_D, KC_Y, KC_P, KC_LBRC,KC_RBRC,KC_BSLS, \
|
KC_TAB, KC_Q, KC_W, KC_COMM, KC_DOT, KC_SCLN, KC_M, KC_R, KC_D, KC_Y, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, \
|
||||||
KC_LCTL,KC_A, KC_O, KC_E, KC_I, KC_U, KC_G, KC_T, KC_K, KC_S, KC_N, KC_QUOT,KC_ENT, \
|
KC_LCTL, KC_A, KC_O, KC_E, KC_I, KC_U, KC_G, KC_T, KC_K, KC_S, KC_N, KC_QUOT, KC_ENT, \
|
||||||
KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_F, KC_B, KC_H, KC_J, KC_L, KC_SLSH,KC_UP, MO(1), \
|
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_F, KC_B, KC_H, KC_J, KC_L, KC_SLSH, KC_UP, MO(1), \
|
||||||
KC_ESC, KC_CAPS,KC_LALT,KC_LGUI,KC_SPC, KC_LEFT,KC_DOWN,KC_RGHT \
|
KC_ESC, KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, KC_LEFT, KC_DOWN, KC_RGHT \
|
||||||
),
|
),
|
||||||
[1] = LAYOUT(
|
[1] = LAYOUT(
|
||||||
_______,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, \
|
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, \
|
||||||
_______,RGB_TOG,RGB_HUI,RGB_SAI,RGB_VAI,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, \
|
_______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
|
||||||
_______,RGB_MOD,RGB_HUD,RGB_SAD,RGB_VAD,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,_______, \
|
_______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, \
|
||||||
_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_PGUP,_______, \
|
_______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGUP, _______, \
|
||||||
_______,_______,_______,_______,_______, KC_HOME,KC_PGDN,KC_END \
|
_______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END \
|
||||||
),
|
),
|
||||||
};
|
|
||||||
|
|
||||||
const uint16_t PROGMEM fn_actions[] = {
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||||
{
|
return true;
|
||||||
// MACRODOWN only works in this function
|
}
|
||||||
switch(id) {
|
|
||||||
case 0:
|
|
||||||
if (record->event.pressed) {
|
|
||||||
register_code(KC_RSFT);
|
|
||||||
} else {
|
|
||||||
unregister_code(KC_RSFT);
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return MACRO_NONE;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
void matrix_init_user(void) {
|
void matrix_init_user(void) {
|
||||||
|
|
||||||
|
@ -70,10 +55,6 @@ void matrix_scan_user(void) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void led_set_user(uint8_t usb_led) {
|
void led_set_user(uint8_t usb_led) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# BlocKey
|
# BlocKey
|
||||||
|
|
||||||
![BlocKey](https://imgur.com/a/6jAcrjr)
|
![BlocKey](https://i.imgur.com/VDdnuHo.jpg)
|
||||||
|
|
||||||
A small keyboard.
|
A small keyboard.
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue