aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHellTM <lisca94@gmail.com>2021-12-07 20:00:31 +0000
committerGitHub <noreply@github.com>2021-12-07 12:00:31 -0800
commit495a2f0ec3db6f2f18207c8ce9d230a1f2a5ac3b (patch)
treed8970a76ea9d1869a4c105c900f46eb70c1ee691
parent7e58ab88ffb5a7ac556e3ca4184628ef41ba8d20 (diff)
downloadqmk_firmware-495a2f0ec3db6f2f18207c8ce9d230a1f2a5ac3b.tar.gz
qmk_firmware-495a2f0ec3db6f2f18207c8ce9d230a1f2a5ac3b.zip
[Keymap] 3w6 helltm keymap combos (#15393)
-rw-r--r--keyboards/3w6/keymaps/helltm/combos.def18
-rw-r--r--keyboards/3w6/keymaps/helltm/combos.h35
-rw-r--r--keyboards/3w6/keymaps/helltm/config.h20
-rw-r--r--keyboards/3w6/keymaps/helltm/keymap.c52
-rw-r--r--keyboards/3w6/keymaps/helltm/rules.mk2
5 files changed, 105 insertions, 22 deletions
diff --git a/keyboards/3w6/keymaps/helltm/combos.def b/keyboards/3w6/keymaps/helltm/combos.def
new file mode 100644
index 000000000..49b95e5eb
--- /dev/null
+++ b/keyboards/3w6/keymaps/helltm/combos.def
@@ -0,0 +1,18 @@
1CB(open_round_brackets_combo, KC_LPRN, KC_R, KC_T)
2CB(open_square_brackets_combo, KC_LBRC, KC_F, KC_G)
3CB(open_curly_brackets_combo, KC_LCBR, KC_V, KC_B)
4CB(close_round_brackets_combo, KC_RPRN, KC_Y, KC_U)
5CB(close_square_brackets_combo, KC_RBRC, KC_H, KC_J)
6CB(close_curly_brackets_combo, KC_RCBR, KC_N, KC_M)
7
8CB(esc_combo, KC_ESC, KC_Q, KC_A)
9CB(tab_combo, KC_TAB, KC_A, LSFT_T(KC_Z))
10
11CB(single_quote_combo, KC_QUOT, KC_P, KC_SCLN)
12CB(double_quote_combo, KC_DQUO, KC_SCLN, RSFT_T(KC_SLSH))
13
14CB(plus_combo, KC_PLUS, KC_T, KC_G)
15CB(asterisk_combo, KC_ASTR, KC_G, KC_B)
16
17CB(minus_combo, KC_MINS, KC_Y, KC_H)
18CB(equal_combo, KC_EQL, KC_H, KC_N)
diff --git a/keyboards/3w6/keymaps/helltm/combos.h b/keyboards/3w6/keymaps/helltm/combos.h
new file mode 100644
index 000000000..85f44cd0d
--- /dev/null
+++ b/keyboards/3w6/keymaps/helltm/combos.h
@@ -0,0 +1,35 @@
1/* Copyright 2021 HellSingCoder
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18
19#define CB(name, action, ...) C_##name,
20enum user_combos {
21#include "combos.def"
22 COMBO_LENGTH
23};
24#undef CB
25uint16_t COMBO_LEN = COMBO_LENGTH;
26
27#define CB(name, action, ...) const uint16_t PROGMEM name##_combo[] = {__VA_ARGS__, COMBO_END};
28#include "combos.def"
29#undef CB
30
31combo_t key_combos[COMBO_LENGTH] = {
32#define CB(name, action, ...) COMBO(name##_combo, action),
33#include "combos.def"
34#undef CB
35};
diff --git a/keyboards/3w6/keymaps/helltm/config.h b/keyboards/3w6/keymaps/helltm/config.h
new file mode 100644
index 000000000..9ccb616a0
--- /dev/null
+++ b/keyboards/3w6/keymaps/helltm/config.h
@@ -0,0 +1,20 @@
1/* Copyright 2021 HellSingCoder
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18
19/* Combo timer */
20#define COMBO_TERM 15
diff --git a/keyboards/3w6/keymaps/helltm/keymap.c b/keyboards/3w6/keymaps/helltm/keymap.c
index 507085081..83ac6f02d 100644
--- a/keyboards/3w6/keymaps/helltm/keymap.c
+++ b/keyboards/3w6/keymaps/helltm/keymap.c
@@ -16,6 +16,10 @@
16 16
17#include QMK_KEYBOARD_H 17#include QMK_KEYBOARD_H
18 18
19#ifdef COMBO_ENABLE
20# include "combos.h"
21#endif
22
19enum layers 23enum layers
20{ 24{
21 _ALPHA_QWERTY = 0, 25 _ALPHA_QWERTY = 0,
@@ -35,18 +39,22 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
35 39
36 /* 40 /*
37 * QWERTY 41 * QWERTY
38 * _____ _____ 42 *
39 * .-----| E |-----._____ _____.-----| I |-----. 43 * _____________________ _____________________
40 * .-----| W |_____| R | T | | Y | U |_____| O |-----. 44 * __|__ | | __|__
41 * | Q |-----| D |-----|_____| |_____|-----| K |-----| P | 45 * _____ | | v v | | _____
42 * |-----| S |_____| F | G | | H | J |_____| L |-----| 46 * .-----| E |-----._____ _____.-----| I |-----.
43 * | A |-----| C |-----|_____| |_____|-----| , < |-----| ; : | 47 * .-----| W |_____| R | T | __ ( ) __ | Y | U |_____| O |-----.
44 * |-----| X |_____| V | B | | N | M |_____| . > |-----| 48 * __ | Q |-----| D |-----|_____| __|--> + - <--|__ |_____|-----| K |-----| P | __
45 * | Z |-----' '-----|_____| |_____|-----' '-----| / ? | 49 * ESC <--|__ |-----| S |_____| F | G | [ ] | H | J |_____| L |-----| __|--> '
46 * '-----' .-----. _____ .-.._ _..-. _____ .-----. '-----' 50 * __ | A |-----| C |-----|_____| __ __ |_____|-----| , < |-----| ; : | __
47 * SHIFT | WIN ||CTRL | / / \ \ | BSp || Del | SHIFT 51 * TAB <--|__ |-----| X |_____| V | B | __|--> * { } = <--|__ | N | M |_____| . > |-----| __|--> "
48 * '-----':_____|/ ENT / \ SPC \|_____:'-----' 52 * | Z |-----' '-----|_____| |_____|-----' '-----| / ? |
49 * NUM '--.._/ \_..--' NAV SYM 53 * '-----' .-----. _____ .-.._ _..-. _____ .-----. '-----'
54 * | | WIN ||CTRL | / / \ \ | BSp || Del | |
55 * SHIFT '-----':_____|/ ENT / \ SPC \|_____:'-----' SHIFT
56 * | '--.._/ \_..--' | |
57 * NUM NAV SYM
50 */ 58 */
51 [_ALPHA_QWERTY] = LAYOUT( 59 [_ALPHA_QWERTY] = LAYOUT(
52 KC_Q, KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , 60 KC_Q, KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P ,
@@ -85,7 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
85 * | Esc |-----|Play |-----|_____| |_____|-----|Down |-----| BSp | 93 * | Esc |-----|Play |-----|_____| |_____|-----|Down |-----| BSp |
86 * |-----|Prev |_____|Next | | |Home |Left |_____|Right|-----| 94 * |-----|Prev |_____|Next | | |Home |Left |_____|Right|-----|
87 * | Tab |-----|Stop |-----|_____| |_____|-----| |-----| ' " | 95 * | Tab |-----|Stop |-----|_____| |_____|-----| |-----| ' " |
88 * |-----| |_____| |Swap | | | |_____| End |-----| 96 * |-----| |_____| | | | | |_____| End |-----|
89 * | CPS |-----' '-----|_____| |_____|-----' '-----| Del | 97 * | CPS |-----' '-----|_____| |_____|-----' '-----| Del |
90 * '-----' .-----. _____ .-.._ _..-. _____ .-----. '-----' 98 * '-----' .-----. _____ .-.._ _..-. _____ .-----. '-----'
91 * SHIFT | ||CTRL | / / \ \ | BSp || | SHIFT 99 * SHIFT | ||CTRL | / / \ \ | BSp || | SHIFT
@@ -93,10 +101,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
93 * '--.._/ \_..--' 101 * '--.._/ \_..--'
94 */ 102 */
95 [_NAV] = LAYOUT( 103 [_NAV] = LAYOUT(
96 KC_ESC , KC_VOLD, KC_MUTE, KC_VOLU, XXXXXXX , XXXXXXX, KC_PGDN, KC_UP , KC_PGUP, KC_BSPC, 104 KC_ESC , KC_VOLD, KC_MUTE, KC_VOLU, XXXXXXX, XXXXXXX, KC_PGDN, KC_UP , KC_PGUP, KC_BSPC,
97 KC_TAB , KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX , KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_QUOT, 105 KC_TAB , KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_QUOT,
98 LSFT_T(KC_CAPS), XXXXXXX, KC_MSTP, XXXXXXX, KC_THUMB_SWAP, XXXXXXX, XXXXXXX, XXXXXXX, KC_END , RSFT_T(KC_DEL) , 106 LSFT_T(KC_CAPS), XXXXXXX, KC_MSTP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_END , RSFT_T(KC_DEL) ,
99 XXXXXXX, _______, _______, _______, KC_BSPC, XXXXXXX 107 XXXXXXX, _______, _______, _______, KC_BSPC, XXXXXXX
100 ), 108 ),
101 109
102 /* 110 /*
@@ -107,7 +115,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
107 * | 1 |-----| F3 |-----|_____| |_____|-----| F8 |-----| 0 | 115 * | 1 |-----| F3 |-----|_____| |_____|-----| F8 |-----| 0 |
108 * |-----| F2 |_____| F4 | F5 | | F6 | F7 |_____| F9 |-----| 116 * |-----| F2 |_____| F4 | F5 | | F6 | F7 |_____| F9 |-----|
109 * | F1 |-----| Scr |-----|_____| |_____|-----| |-----| F10 | 117 * | F1 |-----| Scr |-----|_____| |_____|-----| |-----| F10 |
110 * |-----| TMg |_____| | | | | |_____| F11 |-----| 118 * |-----| TMg |_____| |Swap | | | |_____| F11 |-----|
111 * |Shift|-----' '-----|_____| |_____|-----' '-----| F12 | 119 * |Shift|-----' '-----|_____| |_____|-----' '-----| F12 |
112 * '-----' .-----. _____ .-.._ _..-. _____ .-----. '-----' 120 * '-----' .-----. _____ .-.._ _..-. _____ .-----. '-----'
113 * | ||CTRL | / / \ \ | BSp || | SHIFT 121 * | ||CTRL | / / \ \ | BSp || | SHIFT
@@ -115,10 +123,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
115 * '--.._/ \_..--' 123 * '--.._/ \_..--'
116 */ 124 */
117 [_NUM] = LAYOUT( 125 [_NUM] = LAYOUT(
118 KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , 126 KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,
119 KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , 127 KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 ,
120 KC_LSFT, LCA(KC_DEL), SWIN(KC_S), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11 , RSFT_T(KC_F12) , 128 KC_LSFT, LCA(KC_DEL), SWIN(KC_S), XXXXXXX, KC_THUMB_SWAP, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11 , RSFT_T(KC_F12) ,
121 XXXXXXX, _______, _______, _______, KC_BSPC, XXXXXXX 129 XXXXXXX, _______, _______, _______, KC_BSPC, XXXXXXX
122 ), 130 ),
123}; 131};
124 132
diff --git a/keyboards/3w6/keymaps/helltm/rules.mk b/keyboards/3w6/keymaps/helltm/rules.mk
new file mode 100644
index 000000000..df85626f5
--- /dev/null
+++ b/keyboards/3w6/keymaps/helltm/rules.mk
@@ -0,0 +1,2 @@
1# Combos
2COMBO_ENABLE = yes