aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/redox_w/keymaps/danielo515/keymap.c65
-rw-r--r--users/danielo515/combo.c44
-rw-r--r--users/danielo515/config.h4
-rw-r--r--users/danielo515/process_records.c247
-rw-r--r--users/danielo515/process_records.h94
5 files changed, 250 insertions, 204 deletions
diff --git a/keyboards/redox_w/keymaps/danielo515/keymap.c b/keyboards/redox_w/keymaps/danielo515/keymap.c
index 2b37a4be3..c174c7cf3 100644
--- a/keyboards/redox_w/keymaps/danielo515/keymap.c
+++ b/keyboards/redox_w/keymaps/danielo515/keymap.c
@@ -22,56 +22,59 @@
22# define GUI OSM(MOD_LGUI) 22# define GUI OSM(MOD_LGUI)
23# define ENT_SYM LT(_SYMB, KC_ENT) 23# define ENT_SYM LT(_SYMB, KC_ENT)
24# define __S LT(_S,KC_S) 24# define __S LT(_S,KC_S)
25# define OSX_BACK LGUI(KC_GRV)
26// Which key do you use to enter a layer
27# define ENTRY _______
25 28
26 29
27const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 30const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
28 31
29 [_QWERTY] = LAYOUT( 32 [_QWERTY] = LAYOUT(
30 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ 33 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
31 KC_NAGR ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_DQUO , 34 KC_EQL ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_DQUO ,
32 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 35 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
33 KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,TD_PASTE, ALT_TAB ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,SFT_MINS, 36 KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,TD_PASTE, KC_INS ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,CMD_MINS,
34 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 37 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
35 SHIFT ,KC_A ,__S ,FN_D ,FN_F ,KC_G ,COPY_CUT, KC_UNDS ,HYPR_H ,ALT_J ,CTL_K ,KC_L ,TD_CLN ,CMD_QUOT, 38 KC_PIPE ,KC_A ,__S ,FN_D ,FN_F ,KC_G ,COPY_CUT, KC_UNDS ,HYPR_H ,ALT_J ,CTL_K ,KC_L ,TD_CLN ,SFT_QUOT,
36 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 39 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
37 KC_BSLS ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DEL ,KC_PGDN , ALT_TAB ,AD_ESC ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_ASTR , 40 KC_BSLS ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DEL ,KC_PLUS , ALT_TAB ,AD_ESC ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_ASTR ,
38 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ 41 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
39 CTL ,ALT ,KC_LEFT ,KC_RIGHT, GUI , SHIFT ,KC_BSPC , KC_LEAD ,NAV_SPC , ENT_SYM, KC_LBRC ,KC_RBRC ,KC_DOWN ,KC_UP 42 CTL ,ALT ,KC_LEFT ,KC_RIGHT, GUI , SHIFT ,KC_BSPC , KC_LEAD ,NAV_SPC , ENT_SYM, KC_LBRC ,KC_RBRC ,KC_DOWN ,KC_UP
40 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ 43 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
41 ), 44 ),
42 45
43 [_SYMB] = LAYOUT( 46 [_SYMB] = LAYOUT(
44 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ 47 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
45 _______ ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 , 48 _______ ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F12 ,
46 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 49 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
47 _______ ,KC_EXLM ,KC_DLR ,KC_LCBR ,KC_RCBR ,KC_PIPE ,_______ , _______ ,KC_PSLS ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PERC ,KC_PMNS , 50 _______ ,KC_EXLM ,KC_DLR ,KC_LCBR ,KC_RCBR ,KC_PIPE ,_______ , _______ ,KC_PSLS ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PERC ,KC_BSPC ,
48 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 51 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
49 _______ ,KC_AT ,KC_DLR , KC_LPRN, KC_RPRN,KC_GRV ,_______ , _______ ,KC_PAST ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS ,KC_BSPC , 52 _______ ,KC_AT ,KC_DLR , KC_LPRN, KC_RPRN,KC_GRV ,_______ , _______ ,KC_PENT ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS ,KC_PMNS ,
50 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 53 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
51 _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,_______ ,_______ , _______ ,_______ ,KC_COLN ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PENT ,XXXXXXX , 54 _______ ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,_______ ,_______ , _______ ,_______ ,KC_COLN ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PSLS ,XXXXXXX ,
52 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ 55 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
53 _______ ,_______ ,_______ ,_______ , _______ , _______ ,_______ , _______ ,_______ , KC_P0 , KC_P0 ,KC_PDOT ,KC_PENT ,XXXXXXX 56 _______ ,_______ ,_______ ,_______ , _______ , _______ ,_______ , _______ ,_______ , ENTRY , KC_P0 ,KC_PDOT ,KC_PAST ,XXXXXXX
54 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ 57 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
55 ), 58 ),
56 59
57 [_NAV] = LAYOUT( 60 [_NAV] = LAYOUT(
58 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ 61 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
59 _______ ,_______ ,_______ ,_______ ,_______ ,_______ , _______ ,_______ ,_______ ,_______ ,_______ ,_______ , 62 _______ ,_______ ,_______ ,_______ ,_______ ,_______ , _______ ,_______ ,_______ ,_______ ,_______ ,_______ ,
60 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 63 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
61 XXXXXXX ,XXXXXXX ,KC_MS_U ,XXXXXXX ,KC_WH_U ,XXXXXXX ,_______ , _______ ,XXXXXXX,SFT_LEFT,SFT_RIGHT,XXXXXXX ,XXXXXXX ,XXXXXXX , 64 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ , _______ ,SFT_LEFT_END,SFT_LEFT,SFT_RIGHT,SFT_RIGHT_END ,XXXXXXX ,KC_F12 ,
62 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 65 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
63 XXXXXXX ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_WH_D ,XXXXXXX ,_______ , _______ ,KC_LEFT ,KC_DOWN ,KC_UP ,KC_RIGHT,XXXXXXX ,XXXXXXX , 66 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ , _______ ,KC_LEFT ,KC_DOWN ,KC_UP ,KC_RIGHT,XXXXXXX ,XXXXXXX ,
64 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 67 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
65 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,_______ , _______ ,XXXXXXX ,KC_HOME ,CTL_LEFT,CTL_RIGHT,XXXXXXX,XXXXXXX ,XXXXXXX , 68 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,_______ , _______ ,XXXXXXX ,KC_HOME ,CTL_LEFT,CTL_RIGHT,KC_END,XXXXXXX ,XXXXXXX ,
66 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ 69 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
67 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , KC_BTN1 , KC_BTN2 ,_______ , _______ ,_______ , XXXXXXX , XXXXXXX ,XXXXXXX ,WIN_LEFT,WIN_RIGHT 70 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , _______ , _______ ,_______ , _______ , ENTRY , KC_MUTE , KC_VOLD ,KC_VOLU ,WIN_LEFT,WIN_RIGHT
68 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ 71 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
69 ), 72 ),
70 [_ADJUST] = LAYOUT( 73 [_ADJUST] = LAYOUT(
71 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ 74 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
72 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , 75 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
73 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 76 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
74 XXXXXXX ,RESET ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,KC_F12 , 77 XXXXXXX ,RESET ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
75 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 78 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
76 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , 79 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
77 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 80 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
@@ -84,26 +87,26 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
84 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ 87 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
85 XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 , 88 XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,
86 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 89 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
87 XXXXXXX ,XXXXXXX ,ALL_WIN ,EXPOSE ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , 90 XXXXXXX ,XXXXXXX ,ALL_WIN ,EXPOSE ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,KC_F4 ,KC_F5 ,KC_F6 ,XXXXXXX ,KC_F12 ,
88 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 91 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
89 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , 92 XXXXXXX ,XXXXXXX ,SAVE ,OSX_BACK ,ENTRY ,XXXXXXX ,XXXXXXX , XXXXXXX ,KC_PSCR ,KC_F1 ,KC_F2 ,KC_F3 ,XXXXXXX ,XXXXXXX ,
90 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 93 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
91 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,_______ ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , 94 XXXXXXX ,UNDO ,REDO ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,_______ ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,
92 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ 95 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
93 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,XXXXXXX , XXXXXXX ,_______ , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX 96 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,XXXXXXX , KC_PGUP ,KC_PGDOWN , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX
94 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ 97 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
95 ), 98 ),
96 [_D] = LAYOUT( 99 [_D] = LAYOUT(
97 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ 100 //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐
98 XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F12 , 101 XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_A ,KC_B ,KC_C ,KC_D ,KC_E ,KC_F ,
99 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 102 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤
100 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , _______ ,KC_PSLS ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PERC ,KC_PMNS , 103 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , _______ ,KC_LBRACKET ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PERC ,KC_KP_MINUS ,
101 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 104 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
102 XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,XXXXXXX ,XXXXXXX ,XXXXXXX , _______ ,KC_PAST ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS ,KC_BSPC , 105 XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,KC_F5 ,KC_F2 ,XXXXXXX , _______ ,KC_RBRACKET ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS ,KC_PAST ,
103 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 106 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
104 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , _______ ,_______ ,KC_COLN ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PENT ,XXXXXXX , 107 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , _______ ,_______ ,KC_COLN ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PSLS ,XXXXXXX ,
105 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ 108 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
106 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,_______ , _______ ,_______ , KC_P0 , KC_P0 ,KC_PDOT ,KC_PENT ,XXXXXXX 109 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,_______ , _______ ,_______ , KC_P0 , KC_COMMA ,KC_PDOT ,KC_PAST ,XXXXXXX
107 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ 110 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
108 ), 111 ),
109 [_S] = LAYOUT( 112 [_S] = LAYOUT(
@@ -114,9 +117,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
114 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 117 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤
115 XXXXXXX ,XXXXXXX ,_______ ,KC_EQL ,F_ARROW ,KC_GRAVE,XXXXXXX , XXXXXXX ,KC_AMPR ,KC_LPRN ,KC_RPRN ,CLN_EQ ,KC_PLUS ,KC_PIPE , 118 XXXXXXX ,XXXXXXX ,_______ ,KC_EQL ,F_ARROW ,KC_GRAVE,XXXXXXX , XXXXXXX ,KC_AMPR ,KC_LPRN ,KC_RPRN ,CLN_EQ ,KC_PLUS ,KC_PIPE ,
116 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ 119 //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤
117 XXXXXXX ,XXXXXXX ,XXXXXXX ,KC_CIRC ,KC_DLR ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,KC_EXLM ,KC_TILD ,KC_CIRC ,ARROW ,KC_BSLASH,IARROW , 120 XXXXXXX ,XXXXXXX ,XXXXXXX ,KC_CIRC ,ARROW ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,KC_EXLM ,KC_TILD ,KC_CIRC ,ARROW ,KC_BSLASH,IARROW ,
118 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ 121 //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤
119 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,_______ , XXXXXXX ,_______ , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX 122 XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,_______ , XXXXXXX ,ENTRY , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX
120 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ 123 //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘
121 ) 124 )
122 125
diff --git a/users/danielo515/combo.c b/users/danielo515/combo.c
index 1c8414377..b33cb838b 100644
--- a/users/danielo515/combo.c
+++ b/users/danielo515/combo.c
@@ -6,31 +6,39 @@ enum combos {
6 UI_COM, 6 UI_COM,
7 IO_COM, 7 IO_COM,
8 QW_COM, 8 QW_COM,
9 COM_SLS, 9 DOT_SLS,
10 COM_DOT, 10 COM_DOT,
11 M_COMM, 11 M_COMM,
12 N_M, 12 N_M,
13 OP_COM, 13 OP_COM,
14 M_CM_DOT,
14}; 15};
15 16
16const uint16_t PROGMEM ui_combo[] = {KC_U, KC_I, COMBO_END}; 17const uint16_t PROGMEM ui_combo[] = {KC_U, KC_I, COMBO_END};
17const uint16_t PROGMEM jk_combo[] = {KC_J, KC_K, COMBO_END}; 18const uint16_t PROGMEM jk_combo[] = {KC_J, KC_K, COMBO_END};
18const uint16_t PROGMEM yu_combo[] = {KC_Y, KC_U, COMBO_END}; 19const uint16_t PROGMEM yu_combo[] = {KC_Y, KC_U, COMBO_END};
19const uint16_t PROGMEM io_combo[] = {KC_I, KC_O, COMBO_END}; 20const uint16_t PROGMEM io_combo[] = {KC_I, KC_O, COMBO_END};
20const uint16_t PROGMEM qw_combo[] = {KC_Q, KC_W, COMBO_END}; 21const uint16_t PROGMEM qw_combo[] = {KC_Q, KC_W, COMBO_END};
21const uint16_t PROGMEM com_sls[] = {KC_COMMA, KC_SLSH, COMBO_END}; 22const uint16_t PROGMEM dot_sls[] = {KC_DOT, KC_SLSH, COMBO_END};
22const uint16_t PROGMEM com_dot[] = {KC_COMMA, KC_DOT, COMBO_END}; 23const uint16_t PROGMEM com_dot[] = {KC_COMMA, KC_DOT, COMBO_END};
23const uint16_t PROGMEM m_comm[] = {KC_M,KC_COMMA, COMBO_END}; 24const uint16_t PROGMEM m_comm[] = {KC_M, KC_COMMA, COMBO_END};
24const uint16_t PROGMEM n_m[] = {KC_N, KC_M,COMBO_END}; 25const uint16_t PROGMEM n_m[] = {KC_N, KC_M, COMBO_END};
26const uint16_t PROGMEM o_p_combo[] = {KC_O, KC_P, COMBO_END};
27const uint16_t PROGMEM m_cm_dot_combo[] = {KC_M, KC_COMMA, KC_DOT, COMBO_END};
25 28
26combo_t key_combos[COMBO_COUNT] = { 29combo_t key_combos[COMBO_COUNT] = {
27 [JK_ESC] = COMBO(jk_combo, KC_ESC), 30 [JK_ESC] = COMBO(jk_combo, KC_ESC),
28 [YU_COM] = COMBO(yu_combo, KC_CIRC), 31 [YU_COM] = COMBO(yu_combo, KC_AMPR),
29 [UI_COM] = COMBO(ui_combo, KC_DLR), 32 [UI_COM] = COMBO(ui_combo, KC_CIRC),
30 [IO_COM] = COMBO(io_combo, KC_TILD), 33 [IO_COM] = COMBO(io_combo, KC_TILD),
34 [DOT_SLS] = COMBO(dot_sls, KC_EXLM),
35 [COM_DOT] = COMBO(com_dot, KC_QUES),
36 [N_M] = COMBO(n_m, KC_DLR),
37 [OP_COM] = COMBO(o_p_combo, KC_HASH),
38 // m + , = {
39 [M_COMM] = COMBO(m_comm, KC_LCBR),
40 // m + , + . = }
41 // [M_CM_DOT] = COMBO(m_cm_dot_combo, KC_RCBR),
42 // Right hand side combos
31 [QW_COM] = COMBO(qw_combo, KC_AT), 43 [QW_COM] = COMBO(qw_combo, KC_AT),
32 [COM_SLS] = COMBO(com_sls, KC_QUES),
33 [COM_DOT] = COMBO(com_dot, KC_QUES),
34 [M_COMM] = COMBO(m_comm, KC_ESC),
35 [N_M] = COMBO(n_m, KC_DLR),
36}; 44};
diff --git a/users/danielo515/config.h b/users/danielo515/config.h
index fb2472645..d7efcd536 100644
--- a/users/danielo515/config.h
+++ b/users/danielo515/config.h
@@ -1,8 +1,8 @@
1#pragma once 1#pragma once
2 2
3#if defined(COMBO_ENABLE) 3#if defined(COMBO_ENABLE)
4 #define COMBO_COUNT 9 4# define COMBO_COUNT 11
5 #define COMBO_TERM 40 5# define COMBO_TERM 25
6#endif // !COMBO_ENABLE 6#endif // !COMBO_ENABLE
7// Timeout settings for leader key 7// Timeout settings for leader key
8#undef LEADER_TIMEOUT 8#undef LEADER_TIMEOUT
diff --git a/users/danielo515/process_records.c b/users/danielo515/process_records.c
index b1a8b9255..22a46789a 100644
--- a/users/danielo515/process_records.c
+++ b/users/danielo515/process_records.c
@@ -4,11 +4,11 @@ extern bool onMac;
4// ======== INCREMENTAL MACROS STUFF ============= 4// ======== INCREMENTAL MACROS STUFF =============
5#define MAX_INCREMENTAL_MACRO 20 5#define MAX_INCREMENTAL_MACRO 20
6#define TAP_ROTATION_TIMEOUT 400 6#define TAP_ROTATION_TIMEOUT 400
7uint16_t latest_kc = 0; 7uint16_t latest_kc = 0;
8uint16_t latest_rotation = 0; 8uint16_t latest_rotation = 0;
9int key_count = 0; 9int key_count = 0;
10 10
11const char incremental_macros[][MAX_INCREMENTAL_MACRO] = { "String1"SS_TAP(X_HOME)"X-", "String2"SS_TAP(X_HOME) }; 11const char incremental_macros[][MAX_INCREMENTAL_MACRO] = {"String1" SS_TAP(X_HOME) "X-", "String2" SS_TAP(X_HOME)};
12 12
13bool process_incremental_macro(uint16_t kc) { 13bool process_incremental_macro(uint16_t kc) {
14 if (kc < INC_MACROS_START || kc > INC_MACROS_END) { 14 if (kc < INC_MACROS_START || kc > INC_MACROS_END) {
@@ -44,124 +44,157 @@ void refresh_incremental_macros(uint16_t kc) {
44} 44}
45// Send control or GUI depending if we are on windows or mac 45// Send control or GUI depending if we are on windows or mac
46bool CMD(uint16_t kc) { 46bool CMD(uint16_t kc) {
47 if(onMac){ tap_code16(LGUI(kc)); } else { tap_code16(LCTL(kc)); } 47 if (onMac) {
48 tap_code16(LGUI(kc));
49 } else {
50 tap_code16(LCTL(kc));
51 }
48 return false; 52 return false;
49} 53}
50 54
51bool process_record_user(uint16_t keycode, keyrecord_t *record) { 55bool process_record_user(uint16_t keycode, keyrecord_t *record) {
52 bool pressed = record->event.pressed; 56 bool pressed = record->event.pressed;
53 if(pressed){ 57 if (pressed) {
54 refresh_incremental_macros(keycode); 58 refresh_incremental_macros(keycode);
55 if(process_incremental_macro(keycode)){ 59 if (process_incremental_macro(keycode)) {
56 return false; 60 return false;
57 } 61 }
58 switch (keycode) { 62 switch (keycode) {
59 case MAC_TGL: 63 case MAC_TGL:
60 onMac = !onMac; 64 onMac = !onMac;
61 onMac ? SEND_STRING("On mac") : SEND_STRING("Not on MAC"); 65 onMac ? SEND_STRING("On mac") : SEND_STRING("Not on MAC");
62 return false; 66 return false;
63 } 67 }
64 } 68 }
65 69
66 switch (keycode) { 70 switch (keycode) {
67 case QWERTY: 71 case QWERTY:
68 if (record->event.pressed) { 72 if (record->event.pressed) {
69 #ifdef AUDIO_ENABLE 73#ifdef AUDIO_ENABLE
70 PLAY_SONG(tone_qwerty); 74 PLAY_SONG(tone_qwerty);
71 #endif 75#endif
72 layer_on(_QWERTY); 76 layer_on(_QWERTY);
73 } 77 }
74 return false; 78 return false;
75 case LOWER: 79 case LOWER:
76 if (record->event.pressed) { 80 if (record->event.pressed) {
77 layer_on(_LOWER); 81 layer_on(_LOWER);
78 } else { 82 } else {
79 layer_off(_LOWER); 83 layer_off(_LOWER);
80 } 84 }
81 return false; 85 return false;
82 case RAISE: 86 case RAISE:
83 if (record->event.pressed) { 87 if (record->event.pressed) {
84 layer_on(_RAISE); 88 layer_on(_RAISE);
85 } else { 89 } else {
86 layer_off(_RAISE); 90 layer_off(_RAISE);
87 } 91 }
88 return false; 92 return false;
89 case ADJUST: 93 case ADJUST:
90 if (record->event.pressed) { 94 if (record->event.pressed) {
91 layer_on(_ADJUST); 95 layer_on(_ADJUST);
92 } else { 96 } else {
93 layer_off(_ADJUST); 97 layer_off(_ADJUST);
94 } 98 }
95 return false; 99 return false;
96 // == Macros START === 100 // == Macros START ===
97 case IARROW: if (record->event.pressed) SEND_STRING("<-"); return false; 101 case IARROW:
98 case ARROW: if (record->event.pressed) SEND_STRING("->"); return false; 102 if (record->event.pressed) SEND_STRING("<-");
99 case F_ARROW: if (record->event.pressed) SEND_STRING("=>"); return false; 103 return false;
100 case GREP: if (record->event.pressed) SEND_STRING(" | grep "); return false; 104 case ARROW:
101 case CLN_EQ: if (record->event.pressed) SEND_STRING(":="); return false; 105 if (record->event.pressed) SEND_STRING("->");
102 // == Macros END === 106 return false;
103 // == Multi Os START === 107 case F_ARROW:
104 case KC_HOME:// make the home behave the same on OSX 108 if (record->event.pressed) SEND_STRING("=>");
105 if (record->event.pressed && onMac) { 109 return false;
106 SEND_STRING(SS_LCTRL("a")); 110 case GREP:
107 return false; 111 if (record->event.pressed) SEND_STRING(" | grep ");
108 } 112 return false;
109 case KC_END:// make the end behave the same on OSX 113 case CLN_EQ:
110 if (record->event.pressed && onMac) { 114 if (record->event.pressed) SEND_STRING(":=");
111 tap_code16(C(KC_E)); 115 return false;
112 return false; 116 // == Macros END ===
113 } 117 // == Multi Os START ===
114 case AC_A:// Accent á 118 case KC_HOME: // make the home behave the same on OSX
115 if (record->event.pressed) SEND_STRING(SS_LALT("e") "a"); return false; 119 if (record->event.pressed && onMac) {
116 case AC_E:// Accent é 120 SEND_STRING(SS_LCTRL("a"));
117 if (record->event.pressed) SEND_STRING(SS_LALT("e") "e"); return false; 121 return false;
118 case AC_I:// Accent í 122 }
119 if (record->event.pressed) SEND_STRING(SS_LALT("e") "i"); return false; 123 case KC_END: // make the end behave the same on OSX
120 case AC_O:// Accent ó 124 if (record->event.pressed && onMac) {
121 if (record->event.pressed) SEND_STRING(SS_LALT("e") "o"); return false; 125 tap_code16(C(KC_E));
122 case CUT: if (record->event.pressed) return CMD(KC_X); 126 return false;
123 case COPY: 127 }
124 if (record->event.pressed) { 128 case AC_A: // Accent á
125 onMac ? SEND_STRING(SS_LGUI("c")) : SEND_STRING(SS_LCTRL("c")); 129 if (record->event.pressed) SEND_STRING(SS_LALT("e") "a");
126 } 130 return false;
127 return false; 131 case AC_E: // Accent é
128 case PASTE: 132 if (record->event.pressed) SEND_STRING(SS_LALT("e") "e");
129 if (record->event.pressed) { 133 return false;
130 onMac ? SEND_STRING(SS_LGUI("v")) : SEND_STRING(SS_LCTRL("v")); 134 case AC_I: // Accent í
131 } 135 if (record->event.pressed) SEND_STRING(SS_LALT("e") "i");
132 return false; 136 return false;
133 case SAVE: 137 case AC_O: // Accent ó
134 if (record->event.pressed) { 138 if (record->event.pressed) SEND_STRING(SS_LALT("e") "o");
135 onMac ? SEND_STRING(SS_LGUI("s")) : SEND_STRING(SS_LCTRL("s")); 139 return false;
136 } 140 case CUT:
137 return false; 141 if (record->event.pressed) return CMD(KC_X);
138 case UNDO: 142 case COPY:
139 if (record->event.pressed) { 143 if (record->event.pressed) {
140 onMac ? SEND_STRING(SS_LGUI("z")) : SEND_STRING(SS_LCTRL("z")); 144 onMac ? SEND_STRING(SS_LGUI("c")) : SEND_STRING(SS_LCTRL("c"));
141 } 145 }
142 return false; 146 return false;
143 case FIND: 147 case PASTE:
144 if (record->event.pressed) { 148 if (record->event.pressed) {
145 onMac ? SEND_STRING(SS_LGUI("f")) : SEND_STRING(SS_LCTRL("f")); 149 onMac ? SEND_STRING(SS_LGUI("v")) : SEND_STRING(SS_LCTRL("v"));
146 } 150 }
147 return false; 151 return false;
148 case CHG_LAYOUT: 152 case SAVE:
149 if (record->event.pressed) { 153 if (record->event.pressed) {
150 onMac ? SEND_STRING(SS_LCTRL(" ")) : SEND_STRING(SS_LCTRL("f")); 154 onMac ? SEND_STRING(SS_LGUI("s")) : SEND_STRING(SS_LCTRL("s"));
151 } 155 }
152 return false; 156 return false;
153 // == Multi Os END === 157 case UNDO:
158 if (record->event.pressed) {
159 onMac ? SEND_STRING(SS_LGUI("z")) : SEND_STRING(SS_LCTRL("z"));
160 }
161 return false;
162 case REDO:
163 if (record->event.pressed) {
164 onMac ? SEND_STRING(SS_LGUI(SS_LSFT("z"))) : SEND_STRING(SS_LCTRL("y"));
165 }
166 return false;
167 case FIND:
168 if (record->event.pressed) {
169 onMac ? SEND_STRING(SS_LGUI("f")) : SEND_STRING(SS_LCTRL("f"));
170 }
171 return false;
172 case WIN_TO_RIGHT:
173 if (record->event.pressed) {
174 onMac ? tap_code16(SGUI(A(KC_RIGHT))) : tap_code16(G(KC_RIGHT));
175 }
176 return false;
177 case WIN_TO_LEFT:
178 if (record->event.pressed) {
179 onMac ? tap_code16(SGUI(A(KC_LEFT))) : tap_code16(G(KC_LEFT));
180 }
181 return false;
182 case CHG_LAYOUT:
183 if (record->event.pressed) {
184 onMac ? SEND_STRING(SS_LCTRL(" ")) : SEND_STRING(SS_LCTRL("f"));
185 }
186 return false;
187 // == Multi Os END ===
154#ifdef RGBLIGHT_ENABLE 188#ifdef RGBLIGHT_ENABLE
155 case RGB_SLD: 189 case RGB_SLD:
156 if (record->event.pressed) { rgblight_mode(1); } 190 if (record->event.pressed) {
157 return false; 191 rgblight_mode(1);
158 break; 192 }
159 //First time alt + tab, and alt stays sticky. Next press we just send tab. Any other key releases the alt 193 return false;
194 break;
195 // First time alt + tab, and alt stays sticky. Next press we just send tab. Any other key releases the alt
160#endif 196#endif
161 } 197 }
162// =============== ALT_TAB single key handling 198 // =============== ALT_TAB single key handling
163 return process_alt_tab(keycode, record); 199 return process_alt_tab(keycode, record);
164}; 200};
165
166
167
diff --git a/users/danielo515/process_records.h b/users/danielo515/process_records.h
index c994511a5..0efd690d4 100644
--- a/users/danielo515/process_records.h
+++ b/users/danielo515/process_records.h
@@ -1,35 +1,36 @@
1#pragma once 1#pragma once
2#include "quantum.h" 2#include "quantum.h"
3 3
4enum custom_keycodes 4enum custom_keycodes {
5{ 5 RGB_SLD = SAFE_RANGE,
6 EPRM = SAFE_RANGE,
7 RGB_SLD,
8 ALT_TAB, 6 ALT_TAB,
9 QWERTY, 7 QWERTY,
10 SYM, 8 SYM,
11 NAV, 9 NAV,
12 ADJUST, 10 ADJUST,
13// Macros 11 // Macros
14 ARROW, 12 ARROW,
15 IARROW, 13 IARROW,
16 CLN_EQ, 14 CLN_EQ,
17 F_ARROW, 15 F_ARROW,
18 GREP, 16 GREP,
19// Accented characters 17 // Accented characters
20 AC_A, 18 AC_A,
21 AC_E, 19 AC_E,
22 AC_I, 20 AC_I,
23 AC_O, 21 AC_O,
24// Custom multi-os key-codes 22 // Custom multi-os key-codes
25 CUT, 23 CUT,
26 COPY, 24 COPY,
27 PASTE, 25 PASTE,
28 SAVE, 26 SAVE,
29 UNDO, 27 UNDO,
28 REDO,
30 CHG_LAYOUT, 29 CHG_LAYOUT,
31 FIND, 30 FIND,
32// OTHER OLD STUFF 31 WIN_TO_LEFT,
32 WIN_TO_RIGHT,
33 // OTHER OLD STUFF
33 LOWER, 34 LOWER,
34 RAISE, 35 RAISE,
35 MAC_TGL, 36 MAC_TGL,
@@ -57,48 +58,49 @@ enum layers {
57}; 58};
58 59
59//===== Function letters 60//===== Function letters
60# define FN_F LT(_F,KC_F) 61#define FN_F LT(_F, KC_F)
61# define FN_D LT(_D,KC_D) 62#define FN_D LT(_D, KC_D)
62# define FN_S LT(_S,KC_S) 63#define FN_S LT(_S, KC_S)
63# define FN_A LT(_A,KC_A) 64#define FN_A LT(_A, KC_A)
64# define FN_K LT(_K,KC_K) 65#define FN_K LT(_K, KC_K)
65# define FN_J LT(_J,KC_J) 66#define FN_J LT(_J, KC_J)
66# define KC_FN_D FN_D 67#define KC_FN_D FN_D
67# define KC_FN_S FN_S 68#define KC_FN_S FN_S
68# define KC_FN_F FN_F 69#define KC_FN_F FN_F
69 70
70# define KC_MACROS OSL(_MACROS) 71#define KC_MACROS OSL(_MACROS)
71 72
72 73#define KC_E_COLN LSFT(KC_DOT)
73# define KC_E_COLN LSFT(KC_DOT) 74#define KC_E_EQL ES_EQL
74# define KC_E_EQL ES_EQL 75#define KC_GUI OSM(MOD_RGUI)
75# define KC_GUI OSM(MOD_RGUI) 76#define KC_R_NUB S(KC_NUBS)
76# define KC_R_NUB S(KC_NUBS) 77#define KC_E_LT KC_NUBS
77# define KC_E_LT KC_NUBS 78#define KC_E_GT S(KC_NUBS)
78# define KC_E_GT S(KC_NUBS) 79#define KC_E_TILD ES_TILD
79# define KC_E_TILD ES_TILD 80#define KC_E_MINS ES_MINS
80# define KC_E_MINS ES_MINS 81#define KC_E_OVRR ES_OVRR
81# define KC_E_OVRR ES_OVRR 82#define KC_E_APOS ES_APOS
82# define KC_E_APOS ES_APOS 83#define KC_E_IEXL ES_IEXL
83# define KC_E_IEXL ES_IEXL
84//========== Short hand for complex key combinations 84//========== Short hand for complex key combinations
85# define WIN_LEFT_HALF LALT(LGUI(KC_LEFT)) 85#define WIN_LEFT_HALF LALT(LGUI(KC_LEFT))
86# define WIN_RIGHT_HALF LALT(LGUI(KC_RIGHT)) 86#define WIN_RIGHT_HALF LALT(LGUI(KC_RIGHT))
87# define WIN_TO_LEFT LALT(LSFT( LGUI(KC_LEFT) )) 87#define ALL_WIN LCTL(KC_DOWN)
88# define WIN_TO_RIGHT LALT(LSFT( LGUI(KC_RIGHT) )) 88#define EXPOSE LGUI(KC_DOWN)
89# define ALL_WIN LCTL(KC_DOWN)
90# define EXPOSE LGUI(KC_DOWN)
91// ========== Modifiers!! 89// ========== Modifiers!!
92# define SHIFT OSM(MOD_LSFT) 90#define SHIFT OSM(MOD_LSFT)
93//=============== tap for key hold for mod 91//=============== tap for key hold for mod
94# define HYPR_H HYPR_T(KC_H) 92#define HYPR_H HYPR_T(KC_H)
95# define CTL_K RCTL_T(KC_K) 93#define CTL_K RCTL_T(KC_K)
96# define ALT_J ALT_T(KC_J) 94#define ALT_J ALT_T(KC_J)
97# define SFT_MINS LSFT_T(KC_MINS) // tap - hold shift 95#define SFT_MINS LSFT_T(KC_MINS) // tap - hold shift
98# define CMD_QUOT GUI_T(KC_QUOTE) // tap ' hold cmd 96#define CMD_MINS GUI_T(KC_MINS) // tap - hold cmd
97#define CMD_QUOT GUI_T(KC_QUOTE) // tap ' hold cmd
98#define SFT_QUOT LSFT_T(KC_QUOTE) // tap ' hold shift
99//=============== Movement modified 99//=============== Movement modified
100# define CTL_LEFT LCTL(KC_LEFT) 100#define CTL_LEFT LCTL(KC_LEFT)
101# define CTL_RIGHT LCTL(KC_RIGHT) 101#define CTL_RIGHT LCTL(KC_RIGHT)
102 102
103# define SFT_LEFT LSFT(KC_LEFT) 103#define SFT_LEFT LSFT(KC_LEFT)
104# define SFT_RIGHT LSFT(KC_RIGHT) 104#define SFT_RIGHT LSFT(KC_RIGHT)
105#define SFT_LEFT_END LGUI(LSFT(KC_LEFT))
106#define SFT_RIGHT_END LGUI(LSFT(KC_RIGHT))