aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/contra/keymaps/maxr1998/keymap.c70
1 files changed, 55 insertions, 15 deletions
diff --git a/keyboards/contra/keymaps/maxr1998/keymap.c b/keyboards/contra/keymaps/maxr1998/keymap.c
index afdd3d94a..87bf33894 100644
--- a/keyboards/contra/keymaps/maxr1998/keymap.c
+++ b/keyboards/contra/keymaps/maxr1998/keymap.c
@@ -20,13 +20,17 @@
20enum contra_layers { 20enum contra_layers {
21 _QWERTZ, 21 _QWERTZ,
22 _FUNC, 22 _FUNC,
23 _NUMROW 23 _NUMROW,
24 _NUMROW_L3,
25 _GAMING
24}; 26};
25 27
26#define KC_I3 LM(_NUMROW, MOD_LALT) 28#define KC_I3 LM(_NUMROW, MOD_LALT)
27#define KC_NR MO(_NUMROW) 29#define KC_NR MO(_NUMROW)
28#define NR_L3 SAFE_RANGE 30#define NR_L3 SAFE_RANGE
29#define FUN MO(_FUNC) 31#define FUN MO(_FUNC)
32#define G_1 TO(_GAMING)
33#define G_0 TG(_GAMING)
30 34
31const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 35const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
32 36
@@ -52,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
52 * ,-----------------------------------------------------------------------------------. 56 * ,-----------------------------------------------------------------------------------.
53 * | | | | | | | | Ü | | Ö | | Del | 57 * | | | | | | | | Ü | | Ö | | Del |
54 * |------+------+------+------+------+-------------+------+------+------+------+------| 58 * |------+------+------+------+------+-------------+------+------+------+------+------|
55 * | Lock | Ä | ß | | | | | RGBS | RGBB | RGBS | | | 59 * | Lock | Ä | ß | | | GAME | | RGBS | RGBB | RGBS | | |
56 * |------+------+------+------+------+------|------+------+------+------+------+------| 60 * |------+------+------+------+------+------|------+------+------+------+------+------|
57 * | | | | | | | | RGBH-| RGBT | RGBH+| PgUp | | 61 * | | | | | | | | RGBH-| RGBT | RGBH+| PgUp | |
58 * |------+------+------+------+------+------+------+------+------+------+------+------| 62 * |------+------+------+------+------+------+------+------+------+------+------+------|
@@ -61,14 +65,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
61 */ 65 */
62[_FUNC] = { 66[_FUNC] = {
63 {_______, _______, _______, _______, _______, _______, _______, DE_UE, _______, DE_OE, _______, KC_DEL }, 67 {_______, _______, _______, _______, _______, _______, _______, DE_UE, _______, DE_OE, _______, KC_DEL },
64 {KC_LOCK, DE_AE, DE_SS, _______, _______, _______, _______, RGB_M_P, RGB_M_B, RGB_M_SW,_______, _______}, 68 {KC_LOCK, DE_AE, DE_SS, _______, _______, G_1, _______, RGB_M_P, RGB_M_B, RGB_M_SW,_______, _______},
65 {_______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_TOG, RGB_HUI, KC_PGUP, _______}, 69 {_______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_TOG, RGB_HUI, KC_PGUP, _______},
66 {_______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, KC_HOME, KC_PGDN, KC_END } 70 {_______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, KC_HOME, KC_PGDN, KC_END }
67}, 71},
68 72
69/* Numrow layer (special characters with Shift and ISO_L3_Shift) 73/* Numrow layer (special characters with Shift and ISO_L3_Shift)
70 * ,-----------------------------------------------------------------------------------. 74 * ,-----------------------------------------------------------------------------------.
71 * | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | ß | 75 * | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
72 * |------+------+------+------+------+-------------+------+------+------+------+------| 76 * |------+------+------+------+------+-------------+------+------+------+------+------|
73 * | | | | | | | | | | | #' | | 77 * | | | | | | | | | | | #' | |
74 * |------+------+------+------+------+------|------+------+------+------+------+------| 78 * |------+------+------+------+------+------|------+------+------+------+------+------|
@@ -78,25 +82,61 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
78 * `-----------------------------------------------------------------------------------' 82 * `-----------------------------------------------------------------------------------'
79 */ 83 */
80[_NUMROW] = { 84[_NUMROW] = {
81 {_______, DE_1, DE_2, DE_3, DE_4, DE_5, DE_6, DE_7, DE_8, DE_9, DE_0, DE_SS }, 85 {_______, DE_1, DE_2, DE_3, DE_4, DE_5, DE_6, DE_7, DE_8, DE_9, DE_0, _______},
82 {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DE_HASH, _______}, 86 {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DE_HASH, _______},
83 {_______, DE_LESS, _______, _______, _______, _______, _______, _______, _______, _______, DE_MINS, _______}, 87 {_______, DE_LESS, _______, _______, _______, _______, _______, _______, _______, _______, DE_MINS, _______},
84 {_______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, _______, _______, _______} 88 {_______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, _______, _______, _______}
89},
90[_NUMROW_L3] = {
91 {_______, DE_1, DE_2, DE_3, DE_4, DE_5, DE_6, DE_7, DE_8, DE_9, DE_0, _______},
92 {_______, DE_Q, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
93 {_______, DE_LESS, _______, _______, _______, _______, _______, _______, _______, _______, DE_MINS, _______},
94 {_______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, _______, _______, _______}
95},
96
97/* Gaming
98 * ,-----------------------------------------------------------------------------------.
99 * | | | | | | | | | | | | |
100 * |------+------+------+------+------+-------------+------+------+------+------+------|
101 * | | | | | | | | | | | | |
102 * |------+------+------+------+------+------|------+------+------+------+------+------|
103 * | | | | | | | | | | | | |
104 * |------+------+------+------+------+------+------+------+------+------+------+------|
105 * | Space| | | | | | | | Reset| | | |
106 * `-----------------------------------------------------------------------------------'
107 */
108[_GAMING] = {
109 {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
110 {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
111 {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
112 {KC_SPC, _______, _______, _______, _______, _______, _______, _______, G_0, _______, _______, _______}
85} 113}
86}; 114};
87 115
88bool process_record_user(uint16_t keycode, keyrecord_t *record) { 116bool process_record_user(uint16_t keycode, keyrecord_t *record) {
89 if (keycode == NR_L3) { 117 switch(keycode) {
90 if (record->event.pressed) { 118 case KC_BSPC:
91 register_code(DE_ALGR); 119 if (record->event.pressed) {
92 layer_on(_NUMROW); 120 if (get_mods() & (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT))) {
93 } else { 121 register_code(DE_SS);
94 layer_off(_NUMROW); 122 return false;
95 unregister_code(DE_ALGR); 123 }
96 } 124 } else {
97 return false; 125 unregister_code(DE_SS);
126 }
127 return true;
128 case NR_L3:
129 if (record->event.pressed) {
130 register_code(DE_ALGR);
131 layer_on(_NUMROW_L3);
132 } else {
133 layer_off(_NUMROW_L3);
134 unregister_code(DE_ALGR);
135 }
136 return false;
137 default:
138 return true;
98 } 139 }
99 return true;
100} 140}
101 141
102void led_set_user(uint8_t usb_led) { 142void led_set_user(uint8_t usb_led) {