mirror of
https://github.com/qmk/qmk_firmware
synced 2024-11-11 14:40:06 +00:00
Keymap: Some tweaks to Maxr1998's Contra layout (#4144)
* Make some keys more accessible, prevent mistypings * Add "Gaming" layer which maps L-Ctrl to space (left-handed jumping compatibility-mode for all games)
This commit is contained in:
parent
31d12662bd
commit
4e2817eff1
1 changed files with 55 additions and 15 deletions
|
@ -20,13 +20,17 @@
|
||||||
enum contra_layers {
|
enum contra_layers {
|
||||||
_QWERTZ,
|
_QWERTZ,
|
||||||
_FUNC,
|
_FUNC,
|
||||||
_NUMROW
|
_NUMROW,
|
||||||
|
_NUMROW_L3,
|
||||||
|
_GAMING
|
||||||
};
|
};
|
||||||
|
|
||||||
#define KC_I3 LM(_NUMROW, MOD_LALT)
|
#define KC_I3 LM(_NUMROW, MOD_LALT)
|
||||||
#define KC_NR MO(_NUMROW)
|
#define KC_NR MO(_NUMROW)
|
||||||
#define NR_L3 SAFE_RANGE
|
#define NR_L3 SAFE_RANGE
|
||||||
#define FUN MO(_FUNC)
|
#define FUN MO(_FUNC)
|
||||||
|
#define G_1 TO(_GAMING)
|
||||||
|
#define G_0 TG(_GAMING)
|
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
|
|
||||||
|
@ -52,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
* ,-----------------------------------------------------------------------------------.
|
* ,-----------------------------------------------------------------------------------.
|
||||||
* | | | | | | | | Ü | | Ö | | Del |
|
* | | | | | | | | Ü | | Ö | | Del |
|
||||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||||
* | Lock | Ä | ß | | | | | RGBS | RGBB | RGBS | | |
|
* | Lock | Ä | ß | | | GAME | | RGBS | RGBB | RGBS | | |
|
||||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||||
* | | | | | | | | RGBH-| RGBT | RGBH+| PgUp | |
|
* | | | | | | | | RGBH-| RGBT | RGBH+| PgUp | |
|
||||||
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||||
|
@ -61,14 +65,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
*/
|
*/
|
||||||
[_FUNC] = {
|
[_FUNC] = {
|
||||||
{_______, _______, _______, _______, _______, _______, _______, DE_UE, _______, DE_OE, _______, KC_DEL },
|
{_______, _______, _______, _______, _______, _______, _______, DE_UE, _______, DE_OE, _______, KC_DEL },
|
||||||
{KC_LOCK, DE_AE, DE_SS, _______, _______, _______, _______, RGB_M_P, RGB_M_B, RGB_M_SW,_______, _______},
|
{KC_LOCK, DE_AE, DE_SS, _______, _______, G_1, _______, RGB_M_P, RGB_M_B, RGB_M_SW,_______, _______},
|
||||||
{_______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_TOG, RGB_HUI, KC_PGUP, _______},
|
{_______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_TOG, RGB_HUI, KC_PGUP, _______},
|
||||||
{_______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, KC_HOME, KC_PGDN, KC_END }
|
{_______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, KC_HOME, KC_PGDN, KC_END }
|
||||||
},
|
},
|
||||||
|
|
||||||
/* Numrow layer (special characters with Shift and ISO_L3_Shift)
|
/* Numrow layer (special characters with Shift and ISO_L3_Shift)
|
||||||
* ,-----------------------------------------------------------------------------------.
|
* ,-----------------------------------------------------------------------------------.
|
||||||
* | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | ß |
|
* | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
|
||||||
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||||
* | | | | | | | | | | | #' | |
|
* | | | | | | | | | | | #' | |
|
||||||
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||||
|
@ -78,25 +82,61 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||||
* `-----------------------------------------------------------------------------------'
|
* `-----------------------------------------------------------------------------------'
|
||||||
*/
|
*/
|
||||||
[_NUMROW] = {
|
[_NUMROW] = {
|
||||||
{_______, DE_1, DE_2, DE_3, DE_4, DE_5, DE_6, DE_7, DE_8, DE_9, DE_0, DE_SS },
|
{_______, DE_1, DE_2, DE_3, DE_4, DE_5, DE_6, DE_7, DE_8, DE_9, DE_0, _______},
|
||||||
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DE_HASH, _______},
|
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DE_HASH, _______},
|
||||||
{_______, DE_LESS, _______, _______, _______, _______, _______, _______, _______, _______, DE_MINS, _______},
|
{_______, DE_LESS, _______, _______, _______, _______, _______, _______, _______, _______, DE_MINS, _______},
|
||||||
{_______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, _______, _______, _______}
|
{_______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, _______, _______, _______}
|
||||||
|
},
|
||||||
|
[_NUMROW_L3] = {
|
||||||
|
{_______, DE_1, DE_2, DE_3, DE_4, DE_5, DE_6, DE_7, DE_8, DE_9, DE_0, _______},
|
||||||
|
{_______, DE_Q, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
|
||||||
|
{_______, DE_LESS, _______, _______, _______, _______, _______, _______, _______, _______, DE_MINS, _______},
|
||||||
|
{_______, _______, _______, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, _______, _______, _______}
|
||||||
|
},
|
||||||
|
|
||||||
|
/* Gaming
|
||||||
|
* ,-----------------------------------------------------------------------------------.
|
||||||
|
* | | | | | | | | | | | | |
|
||||||
|
* |------+------+------+------+------+-------------+------+------+------+------+------|
|
||||||
|
* | | | | | | | | | | | | |
|
||||||
|
* |------+------+------+------+------+------|------+------+------+------+------+------|
|
||||||
|
* | | | | | | | | | | | | |
|
||||||
|
* |------+------+------+------+------+------+------+------+------+------+------+------|
|
||||||
|
* | Space| | | | | | | | Reset| | | |
|
||||||
|
* `-----------------------------------------------------------------------------------'
|
||||||
|
*/
|
||||||
|
[_GAMING] = {
|
||||||
|
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
|
||||||
|
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
|
||||||
|
{_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
|
||||||
|
{KC_SPC, _______, _______, _______, _______, _______, _______, _______, G_0, _______, _______, _______}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||||
if (keycode == NR_L3) {
|
switch(keycode) {
|
||||||
if (record->event.pressed) {
|
case KC_BSPC:
|
||||||
register_code(DE_ALGR);
|
if (record->event.pressed) {
|
||||||
layer_on(_NUMROW);
|
if (get_mods() & (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT))) {
|
||||||
} else {
|
register_code(DE_SS);
|
||||||
layer_off(_NUMROW);
|
return false;
|
||||||
unregister_code(DE_ALGR);
|
}
|
||||||
}
|
} else {
|
||||||
return false;
|
unregister_code(DE_SS);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
case NR_L3:
|
||||||
|
if (record->event.pressed) {
|
||||||
|
register_code(DE_ALGR);
|
||||||
|
layer_on(_NUMROW_L3);
|
||||||
|
} else {
|
||||||
|
layer_off(_NUMROW_L3);
|
||||||
|
unregister_code(DE_ALGR);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
default:
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void led_set_user(uint8_t usb_led) {
|
void led_set_user(uint8_t usb_led) {
|
||||||
|
|
Loading…
Reference in a new issue