qmk-keychron-q3-colemak-dh/keyboards/handwired/stream_cheap/2x5/keymaps/default/keymap.c
Kyle f3b518ae40
[Keyboard] Added a new handwired 2x3,2x4,2x5 keyboard called the Stream_cheap (#9871)
* Added a new handwired 2x3,2x4,2x5 keyboard called the Stream_cheap

stream cheap is a diy version of the El Gato Stream deck minus the LCD keys
but you can always get relegendable keycaps to change the icon if you want

* added missing commas in info.json files

* update config to change pin definition

* changed keymap.c for 2x4

was trying to add macros and multi key commands to the keymap,

i added 2 ctrl commands that have more than one key i.e. ctrl-k-c (visual studio comment hot key)

and i added a test string to see how type out a string with the press of a button

* testing more changes to the keymap to the 2x5

* Update keyboards/handwired/stream_cheap/2x3/2x3.c

* Update keyboards/handwired/stream_cheap/2x3/config.h

* Update keyboards/handwired/stream_cheap/2x3/rules.mk

* Update keyboards/handwired/stream_cheap/2x5/config.h

* Update keyboards/handwired/stream_cheap/2x5/info.json

* Update keyboards/handwired/stream_cheap/2x3/config.h

* Update keyboards/handwired/stream_cheap/2x3/info.json

* Update keyboards/handwired/stream_cheap/2x4/config.h

* Update keyboards/handwired/stream_cheap/2x4/info.json

* Update keyboards/handwired/stream_cheap/2x4/keymaps/default/keymap.c

* Update keyboards/handwired/stream_cheap/2x5/info.json

* Update keyboards/handwired/stream_cheap/2x5/config.h

* Update keyboards/handwired/stream_cheap/2x5/rules.mk

* Update keyboards/handwired/stream_cheap/2x4/2x4.c

* Update keyboards/handwired/stream_cheap/2x4/config.h

* Update keyboards/handwired/stream_cheap/2x4/info.json

* Update keyboards/handwired/stream_cheap/2x5/2x5.c

* Update keyboards/handwired/stream_cheap/2x4/rules.mk

* removed file as per request of user zvecr

* removed line in rules.mk for 2x5

* Update keyboards/handwired/stream_cheap/2x5/keymaps/default/keymap.c

* Apply suggestions from code review

changes suggested in code review
2020-07-31 16:18:06 -07:00

61 lines
1.3 KiB
C

#include QMK_KEYBOARD_H
enum custom_keycode {
VS_COMMENT = SAFE_RANGE,
VS_UNCOMMENT,
TST_STRING
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case VS_COMMENT:
if (record->event.pressed) {
SEND_STRING(SS_LCTL("kc"));
}
break;
case VS_UNCOMMENT:
if (record->event.pressed) {
SEND_STRING(SS_LCTL("ku"));
}
break;
case TST_STRING:
if (record->event.pressed) {
SEND_STRING("12345\n");
}
break;
}
return true;
}
#define LOCK LGUI(KC_L)
#define CUT LCTL(KC_X)
#define COPY LCTL(KC_C)
#define PASTE LCTL(KC_V)
#define FIND LCTL(KC_F)
enum layers {
NORMAL_LAYER = 0,
SECOND_LAYER
// ,
// THIRD_LAYER
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[NORMAL_LAYER] = LAYOUT_ortho_2x5(
VS_COMMENT, VS_UNCOMMENT, LOCK, TST_STRING, KC_F5,
KC_F9, KC_F10, KC_F11, KC_F12, TO(1)
),
[SECOND_LAYER] = LAYOUT_ortho_2x5(
KC_MUTE, KC_VOLD, KC_VOLU, KC_MPLY, KC_MSTP,
CUT, COPY, PASTE, FIND, TO(0)
)
// ,
// [THIRD_LAYER] = LAYOUT_ortho_2x5(
// KC_Q, KC_W, KC_E, KC_R, KC_T,
// KC_Y, KC_U, KC_L, KC_P, TO(0)
// )
};