diff options
author | wyethGR <48162735+wyethGR@users.noreply.github.com> | 2022-01-28 15:33:26 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-28 15:33:26 -0800 |
commit | db56db2f798a83a7736fc7681c1fb58070dd7511 (patch) | |
tree | 544ed7e8bfe7e71e34ea0d16d49a0afe585cd22f | |
parent | 0f0e90971b6da2b1a125acc1620c3d33d0f1864c (diff) | |
download | qmk_firmware-db56db2f798a83a7736fc7681c1fb58070dd7511.tar.gz qmk_firmware-db56db2f798a83a7736fc7681c1fb58070dd7511.zip |
[Keymap] Added personal 36 key layout for 40percentclub's nori (#15980)
Co-authored-by: Drashna Jaelre <drashna@live.com>
4 files changed, 149 insertions, 0 deletions
diff --git a/keyboards/40percentclub/nori/keymaps/wings_36key/config.h b/keyboards/40percentclub/nori/keymaps/wings_36key/config.h new file mode 100644 index 000000000..eacfacc5a --- /dev/null +++ b/keyboards/40percentclub/nori/keymaps/wings_36key/config.h | |||
@@ -0,0 +1,27 @@ | |||
1 | /* Copyright 2018 | ||
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 IGNORE_MOD_TAP_INTERRUPT // MT key must be held longer than tapping term for | ||
20 | // modifer to be registered | ||
21 | #define RETRO_TAPPING_PER_KEY | ||
22 | #define TAPPING_TERM_PER_KEY | ||
23 | |||
24 | #define COMBO_COUNT 2 // number of combos used | ||
25 | #define COMBO_TERM 40 // time out for combos in ms | ||
26 | #define TAPPING_TERM 200 // time out for tap-hold in ms | ||
27 | |||
diff --git a/keyboards/40percentclub/nori/keymaps/wings_36key/keymap.c b/keyboards/40percentclub/nori/keymaps/wings_36key/keymap.c new file mode 100644 index 000000000..7d9d51659 --- /dev/null +++ b/keyboards/40percentclub/nori/keymaps/wings_36key/keymap.c | |||
@@ -0,0 +1,118 @@ | |||
1 | #include QMK_KEYBOARD_H | ||
2 | |||
3 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
4 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
5 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
6 | // entirely and just use numbers. | ||
7 | enum custom_layers { | ||
8 | _QWERTY, | ||
9 | _LOWER, | ||
10 | _RAISE, | ||
11 | _ADJUST, | ||
12 | }; | ||
13 | |||
14 | #define LOWER MO(_LOWER) | ||
15 | #define RAISE MO(_RAISE) | ||
16 | |||
17 | #define _ESC MT(MOD_LGUI, KC_ESC) // escape on tap, gui on hold | ||
18 | #define _SFT MT(MOD_LSFT, KC_ENT) // enter on tap, shift on hold | ||
19 | #define _SPC MT(MOD_LCTL, KC_SPC) // space on tap, ctrl on hold | ||
20 | |||
21 | const uint16_t PROGMEM df_tab[] = {KC_D, KC_F, COMBO_END}; | ||
22 | const uint16_t PROGMEM jk_alt[] = {KC_J, KC_K, COMBO_END}; | ||
23 | |||
24 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
25 | |||
26 | /* Qwerty | ||
27 | * .-----------------------------------------------------------------------------------. | ||
28 | * | Q | W | E | R | T | | | Y | U | I | O | P | | ||
29 | * +------+------+------+------+-------------+------+------+------+------+------+------+ | ||
30 | * | A | S | D | F | G | | | H | J | K | L | : ; | | ||
31 | * +------+------+------+------+------|------+------+------+------+------+------+------+ | ||
32 | * | Z | X | C | V | B | | | N | M | < , | > . | ? / | | ||
33 | * +------+------+------+------+------+------+------+------+------+------+------+------+ | ||
34 | * | | | Esc |Enter |Raise | | |Lower |Space |Delete| | | | ||
35 | * .-----------------------------------------------------------------------------------. | ||
36 | * esc on tap, gui on hold | ||
37 | * enter on tap, shift on hold | ||
38 | * space on tap, ctl on hold | ||
39 | */ | ||
40 | [_QWERTY] = LAYOUT_ortho_4x12( | ||
41 | KC_Q, KC_W, KC_E, KC_R, KC_T, XXXXXXX, XXXXXXX, KC_Y, KC_U, KC_I, KC_O, KC_P, | ||
42 | KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, KC_H, KC_J, KC_K, KC_L, KC_SCLN, | ||
43 | KC_Z, KC_X, KC_C, KC_V, KC_B, XXXXXXX, XXXXXXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, | ||
44 | XXXXXXX, XXXXXXX, _ESC, _SFT, RAISE, XXXXXXX, XXXXXXX, LOWER, _SPC, KC_BSPC, XXXXXXX, XXXXXXX | ||
45 | ), | ||
46 | |||
47 | /* Lower | ||
48 | * ,-----------------------------------------------------------------------------------. | ||
49 | * | ` | ! | @ | # | $ | | | % | ^ | & | * | \ | | ||
50 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
51 | * | ~ | | | [ | ] | { | | | } | ( | ) | " | ' | | ||
52 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
53 | * | | | | | | | |Shift | + | = | - | _ | | ||
54 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
55 | * | | | | |RAISE | | | | | | | | | ||
56 | * `-----------------------------------------------------------------------------------' | ||
57 | */ | ||
58 | [_LOWER] = LAYOUT_ortho_4x12( | ||
59 | KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, XXXXXXX, XXXXXXX, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_BSLS, | ||
60 | KC_TILD, KC_PIPE, KC_LBRC, KC_RBRC, KC_LCBR, XXXXXXX, XXXXXXX, KC_RCBR, KC_LPRN, KC_RPRN, KC_DQUO, KC_QUOT, | ||
61 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LSFT, KC_PLUS, KC_EQL, KC_MINS, KC_UNDS, | ||
62 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RAISE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX | ||
63 | ), | ||
64 | |||
65 | /* Raise | ||
66 | * ,-----------------------------------------------------------------------------------. | ||
67 | * | 1 | 2 | 3 | 4 | 5 | | | 6 | 7 | 8 | 9 | 0 | | ||
68 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
69 | * | F1 | F2 | F3 | F4 | F5 | | | | GUI | SFT | CTL | ALT | | ||
70 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
71 | * | F6 | F7 | F8 | F9 | F10 | | | F11 | F12 | | | Esc | | ||
72 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
73 | * | | | | | | | |Lower |Space |Delete| | | | ||
74 | * `-----------------------------------------------------------------------------------' | ||
75 | */ | ||
76 | [_RAISE] = LAYOUT_ortho_4x12( | ||
77 | KC_1, KC_2, KC_3, KC_4, KC_5, XXXXXXX, XXXXXXX, KC_6, KC_7, KC_8, KC_9, KC_0, | ||
78 | KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, KC_LGUI, KC_LSFT, KC_LCTL, KC_LALT, | ||
79 | KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, KC_F11, KC_F12, XXXXXXX, XXXXXXX, KC_ESC, | ||
80 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, LOWER, _SPC, KC_BSPC, XXXXXXX, XXXXXXX | ||
81 | ), | ||
82 | |||
83 | /* Adjust (Lower + Raise) | ||
84 | * ,-----------------------------------------------------------------------------------. | ||
85 | * |PntSrn| | | PgUp |BrtUp | | | Mute |VolDw |VolUp |Ply/Ps|RESET | | ||
86 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
87 | * | | | | PgDw |BrtDw | | | Left | Down | Up |Right | | | ||
88 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
89 | * | | | | | | | | | Prev | Next | | | | ||
90 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
91 | * | | | | | | | | | | | | | | ||
92 | * `-----------------------------------------------------------------------------------' | ||
93 | */ | ||
94 | [_ADJUST] = LAYOUT_ortho_4x12( | ||
95 | KC_PSCR, XXXXXXX, XXXXXXX, KC_PGUP, KC_BRIU, XXXXXXX, XXXXXXX, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPLY, RESET, | ||
96 | XXXXXXX, XXXXXXX, XXXXXXX, KC_PGDN, KC_BRID, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, | ||
97 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MPRV, KC_MNXT, XXXXXXX, XXXXXXX, | ||
98 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX | ||
99 | ) | ||
100 | }; | ||
101 | |||
102 | combo_t key_combos[COMBO_COUNT] = { | ||
103 | COMBO(df_tab, KC_TAB), | ||
104 | COMBO(jk_alt, KC_LALT), | ||
105 | }; | ||
106 | |||
107 | layer_state_t layer_state_set_user(layer_state_t state) { | ||
108 | return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); | ||
109 | } | ||
110 | |||
111 | uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { | ||
112 | switch (keycode) { | ||
113 | case _SFT: | ||
114 | return TAPPING_TERM - 100; | ||
115 | default: | ||
116 | return TAPPING_TERM; | ||
117 | } | ||
118 | } | ||
diff --git a/keyboards/40percentclub/nori/keymaps/wings_36key/readme.md b/keyboards/40percentclub/nori/keymaps/wings_36key/readme.md new file mode 100644 index 000000000..16eb6d9e1 --- /dev/null +++ b/keyboards/40percentclub/nori/keymaps/wings_36key/readme.md | |||
@@ -0,0 +1,3 @@ | |||
1 | # 36 Key QWERTY Layout | ||
2 | |||
3 | Offers more hand seperation with a 2 key gap down the middle of the board. | ||
diff --git a/keyboards/40percentclub/nori/keymaps/wings_36key/rules.mk b/keyboards/40percentclub/nori/keymaps/wings_36key/rules.mk new file mode 100644 index 000000000..446213032 --- /dev/null +++ b/keyboards/40percentclub/nori/keymaps/wings_36key/rules.mk | |||
@@ -0,0 +1 @@ | |||
COMBO_ENABLE = yes # Custom chords | |||