aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/redox/keymaps/finex/config.h36
-rw-r--r--keyboards/redox/keymaps/finex/keymap.c188
-rw-r--r--keyboards/redox/keymaps/finex/readme.md35
-rw-r--r--keyboards/redox/keymaps/finex/rules.mk3
4 files changed, 262 insertions, 0 deletions
diff --git a/keyboards/redox/keymaps/finex/config.h b/keyboards/redox/keymaps/finex/config.h
new file mode 100644
index 000000000..9adbcedf4
--- /dev/null
+++ b/keyboards/redox/keymaps/finex/config.h
@@ -0,0 +1,36 @@
1/*
2Copyright 2018 Leonardo (FiNeX) Finetti <finex@finex.org>
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18#pragma once
19
20/* Use I2C or Serial, not both */
21
22#define USE_SERIAL
23// #define USE_I2C
24
25/* Select hand configuration */
26
27#define MASTER_LEFT
28// #define MASTER_RIGHT
29// #define EE_HANDS
30
31#undef RGBLED_NUM
32#define RGBLIGHT_ANIMATIONS
33#define RGBLED_NUM 14
34#define RGBLIGHT_HUE_STEP 8
35#define RGBLIGHT_SAT_STEP 8
36#define RGBLIGHT_VAL_STEP 8
diff --git a/keyboards/redox/keymaps/finex/keymap.c b/keyboards/redox/keymaps/finex/keymap.c
new file mode 100644
index 000000000..8b8f5f183
--- /dev/null
+++ b/keyboards/redox/keymaps/finex/keymap.c
@@ -0,0 +1,188 @@
1#include QMK_KEYBOARD_H
2
3extern keymap_config_t keymap_config;
4
5// Layer names
6#define _QWERTY 0
7#define _COLEMAKDHMK 1
8#define _QWERTY_MAC 2
9#define _COLEMAKDHMK_MAC 3
10#define _SYMB 4
11#define _ADJUST 5
12
13// Custom keycodes
14enum custom_keycodes {
15 QWERTY = SAFE_RANGE,
16 COLEMAKDHMK,
17 QWERTY_MAC,
18 COLEMAKDHMK_MAC,
19 SYMB,
20 ADJUST,
21 ASC_SAR,
22 ASC_DAR,
23 ASC_SQT,
24 ASC_DQT,
25 ASC_HAP,
26 ASC_SAD
27};
28
29// Shortcut to make keymap more readable
30#define KC_SYQT LT(_SYMB, KC_QUOT)
31#define KC_SYGR LT(_SYMB, KC_GRV)
32#define KC_SYSP LT(_SYMB, KC_SPC)
33#define KC_ADEN LT(_ADJUST, KC_END)
34#define KC_ADPU LT(_ADJUST, KC_PGUP)
35#define KC_CESC LCTL_T(KC_ESC)
36#define KC_CBSP LCTL_T(KC_BSPC)
37#define KC_CMIN RCTL_T(KC_MINUS)
38#define KC_GBSP LGUI_T(KC_BSPC)
39#define KC_ADEL LALT_T(KC_DEL)
40#define KC_APLS RALT_T(KC_PPLS)
41#define KC_LSEN LSFT_T(KC_ENT)
42#define KC_RSEN RSFT_T(KC_ENT)
43#define FN1 QWERTY
44#define FN2 COLEMAKDHMK
45#define FN3 QWERTY_MAC
46#define FN4 COLEMAKDHMK_MAC
47
48// Send custom strings or change default base layer
49bool process_record_user(uint16_t keycode, keyrecord_t *record) {
50 if (record->event.pressed) {
51 switch(keycode) {
52 case ASC_SAR:
53 SEND_STRING("->");
54 return false;
55 case ASC_DAR:
56 SEND_STRING("=>");
57 return false;
58 case ASC_SQT:
59 // SS_RALT(): Avoid sending dead key on software intl layouts
60 SEND_STRING(SS_RALT("'"));
61 return false;
62 case ASC_DQT:
63 // SS_RALT(SS_LSFT()): Avoid sending dead key on software intl layouts
64 SEND_STRING(SS_RALT(SS_LSFT("\"")));
65 return false;
66 case ASC_HAP:
67 SEND_STRING(":-) ");
68 return false;
69 case ASC_SAD:
70 SEND_STRING(":-( ");
71 return false;
72 case QWERTY:
73 if (record->event.pressed) {
74 set_single_persistent_default_layer(_QWERTY);
75 }
76 return false;
77 break;
78 case COLEMAKDHMK:
79 if (record->event.pressed) {
80 set_single_persistent_default_layer(_COLEMAKDHMK);
81 }
82 return false;
83 break;
84 case QWERTY_MAC:
85 if (record->event.pressed) {
86 set_single_persistent_default_layer(_QWERTY_MAC);
87 }
88 return false;
89 break;
90 case COLEMAKDHMK_MAC:
91 if (record->event.pressed) {
92 set_single_persistent_default_layer(_COLEMAKDHMK_MAC);
93 }
94 return false;
95 break;
96 }
97 }
98 return true;
99};
100
101
102const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
103
104 [_QWERTY] = LAYOUT(
105 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
106 KC_SYGR ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_SYQT ,
107 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
108 KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_DEL , KC_BSPC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_EQL ,
109 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
110 KC_CESC ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_LBRC , KC_RBRC ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,KC_CMIN ,
111 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
112 KC_LSPO ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_ADPU ,KC_PGDN , KC_HOME ,KC_ADEN ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSPC ,
113 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
114 KC_SYSP ,KC_BSLS ,KC_QUOT ,KC_LGUI , KC_ADEL , KC_CBSP ,KC_LSEN , KC_RSEN ,KC_SYSP , KC_APLS , KC_LEFT ,KC_DOWN ,KC_UP ,KC_RGHT
115 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
116 ),
117
118 [_COLEMAKDHMK] = LAYOUT(
119 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
120 KC_SYGR ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_SYQT ,
121 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
122 KC_TAB ,KC_Q ,KC_W ,KC_F ,KC_P ,KC_B ,KC_DEL , KC_BSPC ,KC_J ,KC_L ,KC_U ,KC_Y ,KC_SCLN ,KC_EQL ,
123 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
124 KC_CESC ,KC_A ,KC_R ,KC_S ,KC_T ,KC_G ,KC_LBRC , KC_RBRC ,KC_M ,KC_N ,KC_E ,KC_I ,KC_O ,KC_CMIN ,
125 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
126 KC_LSPO ,KC_Z ,KC_X ,KC_C ,KC_D ,KC_V ,KC_ADPU ,KC_PGDN , KC_HOME ,KC_ADEN ,KC_K ,KC_H ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSPC ,
127 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
128 KC_SYSP ,KC_BSLS ,KC_QUOT ,KC_LGUI , KC_ADEL , KC_CBSP ,KC_LSEN , KC_RSEN ,KC_SYSP , KC_APLS , KC_LEFT ,KC_DOWN ,KC_UP ,KC_RGHT
129 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
130 ),
131
132 [_QWERTY_MAC] = LAYOUT(
133 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
134 KC_SYGR ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_SYQT ,
135 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
136 KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_DEL , KC_BSPC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_EQL ,
137 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
138 KC_CESC ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_LBRC , KC_RBRC ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,KC_CMIN ,
139 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
140 KC_LSPO ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_ADPU ,KC_PGDN , KC_HOME ,KC_ADEN ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSPC ,
141 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
142 KC_SYSP ,KC_BSLS ,KC_QUOT ,KC_LCTL , KC_ADEL , KC_GBSP ,KC_LSEN , KC_RSEN ,KC_SYSP , KC_APLS , KC_LEFT ,KC_DOWN ,KC_UP ,KC_RGHT
143 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
144 ),
145
146 [_COLEMAKDHMK_MAC] = LAYOUT(
147 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
148 KC_SYGR ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_SYQT ,
149 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
150 KC_TAB ,KC_Q ,KC_W ,KC_F ,KC_P ,KC_B ,KC_DEL , KC_BSPC ,KC_J ,KC_L ,KC_U ,KC_Y ,KC_SCLN ,KC_EQL ,
151 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
152 KC_CESC ,KC_A ,KC_R ,KC_S ,KC_T ,KC_G ,KC_LBRC , KC_RBRC ,KC_M ,KC_N ,KC_E ,KC_I ,KC_O ,KC_CMIN ,
153 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
154 KC_LSPO ,KC_Z ,KC_X ,KC_C ,KC_D ,KC_V ,KC_ADPU ,KC_PGDN , KC_HOME ,KC_ADEN ,KC_K ,KC_H ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSPC ,
155 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
156 KC_SYSP ,KC_BSLS ,KC_QUOT ,KC_LCTL , KC_ADEL , KC_GBSP ,KC_LSEN , KC_RSEN ,KC_SYSP , KC_APLS , KC_LEFT ,KC_DOWN ,KC_UP ,KC_RGHT
157 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
158 ),
159
160 [_SYMB] = LAYOUT(
161 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
162 XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,XXXXXXX ,
163 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
164 _______ ,KC_CIRC ,KC_BSLS ,KC_PMNS ,KC_UNDS ,XXXXXXX ,_______ , _______ ,XXXXXXX ,KC_KP_7 ,KC_KP_8 ,KC_KP_9 ,KC_F11 ,KC_APP ,
165 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
166 _______ ,KC_PAST ,KC_PIPE ,ASC_SQT ,KC_TILD ,KC_QUOT ,ASC_SAR , ASC_DAR ,XXXXXXX ,KC_KP_4 ,KC_KP_5 ,KC_KP_6 ,KC_F12 ,KC_PSCR ,
167 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
168 _______ ,KC_HASH ,KC_AMPR ,KC_AT ,ASC_DQT ,KC_GRV ,ASC_SAD ,ASC_HAP , _______ ,_______ ,XXXXXXX ,KC_KP_1 ,KC_KP_2 ,KC_KP_3 ,KC_UP ,_______ ,
169 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
170 _______ ,_______ ,_______ ,_______ , _______ , _______ ,_______ , _______ ,_______ , KC_KP_0 , KC_PDOT ,KC_LEFT ,KC_DOWN ,KC_RGHT
171 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
172 ),
173
174 [_ADJUST] = LAYOUT(
175 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
176 XXXXXXX ,FN1 ,FN2 ,FN3 ,FN4 ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
177 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
178 XXXXXXX ,RESET ,RGB_M_P ,RGB_TOG ,RGB_MOD ,RGB_HUD ,RGB_HUI , RGB_SAD ,RGB_SAI ,RGB_VAD ,RGB_VAI ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
179 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
180 XXXXXXX ,XXXXXXX ,RGB_M_B ,RGB_M_R ,RGB_M_SW,RGB_M_SN,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
181 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
182 XXXXXXX ,XXXXXXX ,RGB_M_K ,RGB_M_X ,RGB_M_G ,XXXXXXX ,_______ ,XXXXXXX , XXXXXXX ,_______ ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
183 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
184 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX
185 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
186 )
187
188};
diff --git a/keyboards/redox/keymaps/finex/readme.md b/keyboards/redox/keymaps/finex/readme.md
new file mode 100644
index 000000000..f1b6fa7c7
--- /dev/null
+++ b/keyboards/redox/keymaps/finex/readme.md
@@ -0,0 +1,35 @@
1# Customized keymap for Redox by Leonardo (FiNeX) Finetti.
2
3
4## Features
5
6- Enabled USE_SERIAL for Falba.Tech Redox keyboards.
7- PC Layouts: QWERTY, Colemak Mod DH-MK.
8- Mac Layouts: same as above with CTRL-GUI keys inverted on the bottom row.
9- Added redundant "Space", "Esc" and "Ctrl" keys.
10- Added macro to print "->" and "=>" strings.
11- Added macro to print ":-( " and ":-) " strings.
12- Added more arrows.
13- Added "(" and ")" on Shifts keys.
14- Added Shift on both ) "Enter" keys.
15- Removed Mouse and media support.
16- Added missing "Print Screen" and "Menu" keys.
17- Added missing "F11" and "F12" keys.
18
19
20## Layers
21
22This keymap use the default one with some minor improvements to suit my needs.
23
24## Changelog
25
26- 2018/11/13
27 First public release
28
29
30## TODO
31
32- Bring back mouse and multimedia keys.
33- Add default Colemak Mod DH layout.
34- Improve top corner keys.
35- Improve bottom row keys (mostly KC_BSLS and KC_QUOT).
diff --git a/keyboards/redox/keymaps/finex/rules.mk b/keyboards/redox/keymaps/finex/rules.mk
new file mode 100644
index 000000000..21550e9fe
--- /dev/null
+++ b/keyboards/redox/keymaps/finex/rules.mk
@@ -0,0 +1,3 @@
1RGBLIGHT_ENABLE = yes
2
3COMMAND_ENABLE = no