summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Rambo <davrambo@gmail.com>2018-04-15 12:46:26 -0400
committerDrashna Jaelre <drashna@live.com>2018-04-15 09:46:26 -0700
commit32fd5e4f61d50df6a5828b258d995a5da242600b (patch)
treeb4355e38f2b5a0d51e43b57a0b04fdd26baffa57
parentfe8b9d0d0f2f137903ca17eefa8fa301a9c5dd75 (diff)
keymaps for Iris, Planck, Satan, and XD75 (#2747)
* DRambo Planck keymap in Colemak * DRambo Planck keymap in Colemak * Satan GH60 keymap for Bri QWERTY layout with Navigation layer toggled with "Caps Lock" key. * xd75 keymap in Colemak for Mac and Win * DRambo Planck keymap in Colemak * Satan GH60 keymap for Bri QWERTY layout with Navigation layer toggled with "Caps Lock" key. * xd75 keymap in Colemak for Mac and Win * Added Iris Colemak layout for Mac, Windows, and Gaming. * changed comment text * DRambo Planck keymap in Colemak * Satan GH60 keymap for Bri QWERTY layout with Navigation layer toggled with "Caps Lock" key. * xd75 keymap in Colemak for Mac and Win * Added Iris Colemak layout for Mac, Windows, and Gaming. * changed comment text * Added Iris keymap from DavidRambo * Added planck keymap from DavidRambo * Added xd75 keymap from DavidRambo * Added readme
-rw-r--r--keyboards/iris/keymaps/davidrambo/config.h45
-rw-r--r--keyboards/iris/keymaps/davidrambo/keymap.c158
-rw-r--r--keyboards/iris/keymaps/davidrambo/readme.md3
-rw-r--r--keyboards/iris/keymaps/davidrambo/rules.mk7
-rw-r--r--keyboards/iris/keymaps/dnrambo/config.h45
-rw-r--r--keyboards/iris/keymaps/dnrambo/keymap.c158
-rw-r--r--keyboards/iris/keymaps/dnrambo/readme.md3
-rw-r--r--keyboards/iris/keymaps/dnrambo/rules.mk7
-rw-r--r--keyboards/planck/keymaps/davidrambo/config.h9
-rw-r--r--keyboards/planck/keymaps/davidrambo/keymap.c98
-rw-r--r--keyboards/planck/keymaps/davidrambo/rules.mk6
-rw-r--r--keyboards/planck/keymaps/rambo/config.h9
-rw-r--r--keyboards/planck/keymaps/rambo/keymap.c98
-rw-r--r--keyboards/planck/keymaps/rambo/rules.mk6
-rw-r--r--keyboards/satan/keymaps/bri/keymap.c102
-rw-r--r--keyboards/satan/keymaps/bri/readme.md2
-rw-r--r--keyboards/xd75/keymaps/davidrambo/config.h26
-rw-r--r--keyboards/xd75/keymaps/davidrambo/keymap.c150
-rw-r--r--keyboards/xd75/keymaps/davidrambo/readme.md4
-rw-r--r--keyboards/xd75/keymaps/davidrambo/rules.mk2
-rw-r--r--keyboards/xd75/keymaps/rambo/config.h26
-rw-r--r--keyboards/xd75/keymaps/rambo/keymap.c150
-rw-r--r--keyboards/xd75/keymaps/rambo/readme.md4
-rw-r--r--keyboards/xd75/keymaps/rambo/rules.mk2
24 files changed, 1120 insertions, 0 deletions
diff --git a/keyboards/iris/keymaps/davidrambo/config.h b/keyboards/iris/keymaps/davidrambo/config.h
new file mode 100644
index 0000000000..01e078e326
--- /dev/null
+++ b/keyboards/iris/keymaps/davidrambo/config.h
@@ -0,0 +1,45 @@
1/*
2Copyright 2017 Danny Nguyen <danny@keeb.io>
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#ifndef CONFIG_USER_H
19#define CONFIG_USER_H
20
21#include "config_common.h"
22
23/* Use I2C or Serial, not both */
24
25#define USE_SERIAL
26// #define USE_I2C
27
28/* Select hand configuration */
29#define PERMISSIVE_HOLD
30#define PREVENT_STUCK_MODIFIERS
31#define MASTER_LEFT
32// #define MASTER_RIGHT
33// #define EE_HANDS
34/*
35#undef RGBLED_NUM
36#define RGBLIGHT_ANIMATIONS
37#define RGBLED_NUM 12
38#define RGBLIGHT_HUE_STEP 8
39#define RGBLIGHT_SAT_STEP 8
40#define RGBLIGHT_VAL_STEP 8
41*/
42#define TAPPING_TERM 200
43#include "../../config.h"
44
45#endif
diff --git a/keyboards/iris/keymaps/davidrambo/keymap.c b/keyboards/iris/keymaps/davidrambo/keymap.c
new file mode 100644
index 0000000000..31ec3eba15
--- /dev/null
+++ b/keyboards/iris/keymaps/davidrambo/keymap.c
@@ -0,0 +1,158 @@
1#include "iris.h"
2#include "action_layer.h"
3#include "eeconfig.h"
4
5extern keymap_config_t keymap_config;
6
7//keycode shorthands
8#define KC____ KC_TRNS
9#define KC_SYM MO(3)
10#define KC_MAC TO(0)
11#define KC_PC TO(1)
12#define KC_GM TO(2)
13#define KC_NAV LT(4, KC_TAB)
14#define KC_NAVPC LT(5, KC_TAB)
15
16//text editor shortcuts for NAV and NAVPC
17#define KC_AL LALT(KC_LEFT)
18#define KC_AR LALT(KC_RGHT)
19#define KC_CL LCTL(KC_LEFT)
20#define KC_CR LCTL(KC_RGHT)
21#define KC_A_BS LALT(KC_BSPC)
22#define KC_C_BS LALT(KC_BSPC)
23
24//internet browser tab shortcuts and window swapping for Mac and Windows
25#define KC_GSL LGUI(S(KC_LEFT))
26#define KC_GSR LGUI(S(KC_RGHT))
27#define KC_CPGD LCTL(KC_PGDN)
28#define KC_CPGU LCTL(KC_PGUP)
29
30#define KC_CMBS GUI_T(KC_BSPC)
31#define KC_CTBS CTL_T(KC_BSPC)
32#define KC_C_TAB LCTL(KC_TAB)
33#define KC_G_TAB LGUI(KC_TAB)
34#define KC_A_TAB LALT(KC_TAB)
35
36//layer shorthands
37#define _COLEMAK 0
38#define _PC 1
39#define _GAME 2
40#define _SYMBOL 3
41#define _NAV 4
42#define _NAVPC 5
43
44enum {
45// SFT_LCK //tapdance declarations
46 COLEMAK = 0,
47 PC,
48 GAME,
49 SYMBOL,
50 NAV, //Navigation layer for Mac Colemak
51 NAVPC, //Navigation layer for PC Colemak
52 SFT_LCK //tapdance declaration
53};
54
55#define KC_SFLK TD(SFT_LCK) // alias for tapdance
56
57const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
58
59 [_COLEMAK] = KC_KEYMAP(
60 //,----+----+----+----+----+----. ,----+----+----+----+----+----.
61 ESC , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS,
62 //|----+----+----+----+----+----| |----+----+----+----+----+----|
63 GRV , Q , W , F , P , G , J , L , U , Y ,SCLN,BSPC,
64 //|----+----+----+----+----+----| |----+----+----+----+----+----|
65 NAV , A , R , S , T , D , H , N , E , I , O ,QUOT,
66 //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
67 SFLK, Z , X , C , V , B , PC , ENT , K , M ,COMM, DOT,SLSH,RSFT,
68 //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
69 LCTL,LGUI,CMBS, SPC, SYM, LALT
70 // `----+----+----' `----+----+----'
71 ),
72
73 [_PC] = KC_KEYMAP(
74 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
75
76 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
77
78 NAVPC,___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
79
80 ___ , ___ , ___ , ___ , ___ , ___ , GM, ___, ___ , ___ , ___ , ___ , ___ , ___ ,
81
82 LGUI , LCTL , CTBS , ___ , ___ , ___
83 ),
84
85 [_GAME] = KC_KEYMAP(
86 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
87
88 ___ , T , Q , W , E , R , ___ , ___ , ___ , ___ , ___ , ___ ,
89
90 TAB , LSFT, A , S , D , F , ___ , ___ , ___ , ___ , ___ , ___ ,
91
92 I , LCTL, Z , X , C , V , M, P , ___, ___ , ___ , ___ , ___ , ___ ,
93
94 LALT , LALT , SPC, BSPC, MAC, ___
95 ),
96
97 [_SYMBOL] = KC_KEYMAP(
98
99 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
100
101 LBRC, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , RBRC,
102
103 BSLS, EXLM, AT , HASH, DLR , PERC, CIRC, AMPR, ASTR, LPRN, RPRN, EQL ,
104
105 ___ , HOME, END , VOLD, VOLU, MPLY,___, ___,___, MINS, ___ , ___ , ___ , ___ ,
106
107 ___ , ___ , A_BS, ___, ___ , ___
108 ),
109
110 [_NAV] = KC_KEYMAP(
111
112 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
113
114 ___ , ___ , ___ , ___ , ___ , ___ , C_TAB, AL , UP , AR , DEL , ___ ,
115
116 ___ , ___ , ___ , ___ , ___ , ___ , GSL , LEFT, DOWN, RGHT, GSR , ___ ,
117
118 ___ , ___ , ___ , ___ , ___ , ___ ,___, ___,G_TAB, ___ , ___ , ___ , ___ , ___ ,
119
120 ___ , ___ , ___ , ___ , ___ , ___
121 ),
122
123 [_NAVPC] = KC_KEYMAP(
124
125 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
126
127 ___ , ___ , ___ , ___ , ___ , ___ , C_TAB, CL , UP , CR , DEL , ___ ,
128
129 ___ , ___ , ___ , ___ , ___ , ___ , CPGU, LEFT, DOWN, RGHT, CPGD, ___ ,
130
131 ___ , ___ , ___ , ___ , ___ , ___ ,___, ___,A_TAB, ___ , ___ , ___ , ___ , ___ ,
132
133 ___ , ___ , ___ , ___ , ___ , ___
134 ),
135
136};
137
138// Shift vs. capslock function. From bbaserdem's Planck keymap.
139void caps_tap (qk_tap_dance_state_t *state, void *user_data) {
140 if (state->count == 1) {
141 register_code (KC_LSFT);
142 } else if (state->count == 2) {
143 unregister_code (KC_LSFT);
144 register_code (KC_CAPS);
145 }
146}
147void caps_tap_end (qk_tap_dance_state_t *state, void *user_data) {
148 if (state->count == 1) {
149 unregister_code (KC_LSFT);
150 } else {
151 unregister_code (KC_CAPS);
152 }
153}
154
155qk_tap_dance_action_t tap_dance_actions[] = {
156 //Tap once for Shift, twice for Caps Lock
157 [SFT_LCK] = ACTION_TAP_DANCE_FN_ADVANCED( caps_tap, NULL, caps_tap_end)
158}; \ No newline at end of file
diff --git a/keyboards/iris/keymaps/davidrambo/readme.md b/keyboards/iris/keymaps/davidrambo/readme.md
new file mode 100644
index 0000000000..4d21f37c09
--- /dev/null
+++ b/keyboards/iris/keymaps/davidrambo/readme.md
@@ -0,0 +1,3 @@
1# Colemak layout for Iris rev2.1 with Mac and Windows layers and a Gaming Layer.
2# Symbol layer is based on my Planck layout, so it provides numbers, symbols, and volume controls.
3# Two Navigation layers, for Mac and Windows Colemak layers respectively. \ No newline at end of file
diff --git a/keyboards/iris/keymaps/davidrambo/rules.mk b/keyboards/iris/keymaps/davidrambo/rules.mk
new file mode 100644
index 0000000000..0b7e7b9057
--- /dev/null
+++ b/keyboards/iris/keymaps/davidrambo/rules.mk
@@ -0,0 +1,7 @@
1RGBLIGHT_ENABLE = no
2BACKLIGHT_ENABLE = no
3TAP_DANCE_ENABLE = yes
4
5ifndef QUANTUM_DIR
6 include ../../../../Makefile
7endif
diff --git a/keyboards/iris/keymaps/dnrambo/config.h b/keyboards/iris/keymaps/dnrambo/config.h
new file mode 100644
index 0000000000..01e078e326
--- /dev/null
+++ b/keyboards/iris/keymaps/dnrambo/config.h
@@ -0,0 +1,45 @@
1/*
2Copyright 2017 Danny Nguyen <danny@keeb.io>
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#ifndef CONFIG_USER_H
19#define CONFIG_USER_H
20
21#include "config_common.h"
22
23/* Use I2C or Serial, not both */
24
25#define USE_SERIAL
26// #define USE_I2C
27
28/* Select hand configuration */
29#define PERMISSIVE_HOLD
30#define PREVENT_STUCK_MODIFIERS
31#define MASTER_LEFT
32// #define MASTER_RIGHT
33// #define EE_HANDS
34/*
35#undef RGBLED_NUM
36#define RGBLIGHT_ANIMATIONS
37#define RGBLED_NUM 12
38#define RGBLIGHT_HUE_STEP 8
39#define RGBLIGHT_SAT_STEP 8
40#define RGBLIGHT_VAL_STEP 8
41*/
42#define TAPPING_TERM 200
43#include "../../config.h"
44
45#endif
diff --git a/keyboards/iris/keymaps/dnrambo/keymap.c b/keyboards/iris/keymaps/dnrambo/keymap.c
new file mode 100644
index 0000000000..31ec3eba15
--- /dev/null
+++ b/keyboards/iris/keymaps/dnrambo/keymap.c
@@ -0,0 +1,158 @@
1#include "iris.h"
2#include "action_layer.h"
3#include "eeconfig.h"
4
5extern keymap_config_t keymap_config;
6
7//keycode shorthands
8#define KC____ KC_TRNS
9#define KC_SYM MO(3)
10#define KC_MAC TO(0)
11#define KC_PC TO(1)
12#define KC_GM TO(2)
13#define KC_NAV LT(4, KC_TAB)
14#define KC_NAVPC LT(5, KC_TAB)
15
16//text editor shortcuts for NAV and NAVPC
17#define KC_AL LALT(KC_LEFT)
18#define KC_AR LALT(KC_RGHT)
19#define KC_CL LCTL(KC_LEFT)
20#define KC_CR LCTL(KC_RGHT)
21#define KC_A_BS LALT(KC_BSPC)
22#define KC_C_BS LALT(KC_BSPC)
23
24//internet browser tab shortcuts and window swapping for Mac and Windows
25#define KC_GSL LGUI(S(KC_LEFT))
26#define KC_GSR LGUI(S(KC_RGHT))
27#define KC_CPGD LCTL(KC_PGDN)
28#define KC_CPGU LCTL(KC_PGUP)
29
30#define KC_CMBS GUI_T(KC_BSPC)
31#define KC_CTBS CTL_T(KC_BSPC)
32#define KC_C_TAB LCTL(KC_TAB)
33#define KC_G_TAB LGUI(KC_TAB)
34#define KC_A_TAB LALT(KC_TAB)
35
36//layer shorthands
37#define _COLEMAK 0
38#define _PC 1
39#define _GAME 2
40#define _SYMBOL 3
41#define _NAV 4
42#define _NAVPC 5
43
44enum {
45// SFT_LCK //tapdance declarations
46 COLEMAK = 0,
47 PC,
48 GAME,
49 SYMBOL,
50 NAV, //Navigation layer for Mac Colemak
51 NAVPC, //Navigation layer for PC Colemak
52 SFT_LCK //tapdance declaration
53};
54
55#define KC_SFLK TD(SFT_LCK) // alias for tapdance
56
57const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
58
59 [_COLEMAK] = KC_KEYMAP(
60 //,----+----+----+----+----+----. ,----+----+----+----+----+----.
61 ESC , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 ,MINS,
62 //|----+----+----+----+----+----| |----+----+----+----+----+----|
63 GRV , Q , W , F , P , G , J , L , U , Y ,SCLN,BSPC,
64 //|----+----+----+----+----+----| |----+----+----+----+----+----|
65 NAV , A , R , S , T , D , H , N , E , I , O ,QUOT,
66 //|----+----+----+----+----+----+----. ,----|----+----+----+----+----+----|
67 SFLK, Z , X , C , V , B , PC , ENT , K , M ,COMM, DOT,SLSH,RSFT,
68 //`----+----+----+--+-+----+----+----/ \----+----+----+----+----+----+----'
69 LCTL,LGUI,CMBS, SPC, SYM, LALT
70 // `----+----+----' `----+----+----'
71 ),
72
73 [_PC] = KC_KEYMAP(
74 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
75
76 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
77
78 NAVPC,___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
79
80 ___ , ___ , ___ , ___ , ___ , ___ , GM, ___, ___ , ___ , ___ , ___ , ___ , ___ ,
81
82 LGUI , LCTL , CTBS , ___ , ___ , ___
83 ),
84
85 [_GAME] = KC_KEYMAP(
86 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
87
88 ___ , T , Q , W , E , R , ___ , ___ , ___ , ___ , ___ , ___ ,
89
90 TAB , LSFT, A , S , D , F , ___ , ___ , ___ , ___ , ___ , ___ ,
91
92 I , LCTL, Z , X , C , V , M, P , ___, ___ , ___ , ___ , ___ , ___ ,
93
94 LALT , LALT , SPC, BSPC, MAC, ___
95 ),
96
97 [_SYMBOL] = KC_KEYMAP(
98
99 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
100
101 LBRC, 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 0 , RBRC,
102
103 BSLS, EXLM, AT , HASH, DLR , PERC, CIRC, AMPR, ASTR, LPRN, RPRN, EQL ,
104
105 ___ , HOME, END , VOLD, VOLU, MPLY,___, ___,___, MINS, ___ , ___ , ___ , ___ ,
106
107 ___ , ___ , A_BS, ___, ___ , ___
108 ),
109
110 [_NAV] = KC_KEYMAP(
111
112 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
113
114 ___ , ___ , ___ , ___ , ___ , ___ , C_TAB, AL , UP , AR , DEL , ___ ,
115
116 ___ , ___ , ___ , ___ , ___ , ___ , GSL , LEFT, DOWN, RGHT, GSR , ___ ,
117
118 ___ , ___ , ___ , ___ , ___ , ___ ,___, ___,G_TAB, ___ , ___ , ___ , ___ , ___ ,
119
120 ___ , ___ , ___ , ___ , ___ , ___
121 ),
122
123 [_NAVPC] = KC_KEYMAP(
124
125 ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ , ___ ,
126
127 ___ , ___ , ___ , ___ , ___ , ___ , C_TAB, CL , UP , CR , DEL , ___ ,
128
129 ___ , ___ , ___ , ___ , ___ , ___ , CPGU, LEFT, DOWN, RGHT, CPGD, ___ ,
130
131 ___ , ___ , ___ , ___ , ___ , ___ ,___, ___,A_TAB, ___ , ___ , ___ , ___ , ___ ,
132
133 ___ , ___ , ___ , ___ , ___ , ___
134 ),
135
136};
137
138// Shift vs. capslock function. From bbaserdem's Planck keymap.
139void caps_tap (qk_tap_dance_state_t *state, void *user_data) {
140 if (state->count == 1) {
141 register_code (KC_LSFT);
142 } else if (state->count == 2) {
143 unregister_code (KC_LSFT);
144 register_code (KC_CAPS);
145 }
146}
147void caps_tap_end (qk_tap_dance_state_t *state, void *user_data) {
148 if (state->count == 1) {
149 unregister_code (KC_LSFT);
150 } else {
151 unregister_code (KC_CAPS);
152 }
153}
154
155qk_tap_dance_action_t tap_dance_actions[] = {
156 //Tap once for Shift, twice for Caps Lock
157 [SFT_LCK] = ACTION_TAP_DANCE_FN_ADVANCED( caps_tap, NULL, caps_tap_end)
158}; \ No newline at end of file
diff --git a/keyboards/iris/keymaps/dnrambo/readme.md b/keyboards/iris/keymaps/dnrambo/readme.md
new file mode 100644
index 0000000000..4d21f37c09
--- /dev/null
+++ b/keyboards/iris/keymaps/dnrambo/readme.md
@@ -0,0 +1,3 @@
1# Colemak layout for Iris rev2.1 with Mac and Windows layers and a Gaming Layer.
2# Symbol layer is based on my Planck layout, so it provides numbers, symbols, and volume controls.
3# Two Navigation layers, for Mac and Windows Colemak layers respectively. \ No newline at end of file
diff --git a/keyboards/iris/keymaps/dnrambo/rules.mk b/keyboards/iris/keymaps/dnrambo/rules.mk
new file mode 100644
index 0000000000..0b7e7b9057
--- /dev/null
+++ b/keyboards/iris/keymaps/dnrambo/rules.mk
@@ -0,0 +1,7 @@
1RGBLIGHT_ENABLE = no
2BACKLIGHT_ENABLE = no
3TAP_DANCE_ENABLE = yes
4
5ifndef QUANTUM_DIR
6 include ../../../../Makefile
7endif
diff --git a/keyboards/planck/keymaps/davidrambo/config.h b/keyboards/planck/keymaps/davidrambo/config.h
new file mode 100644
index 0000000000..c3bebf5799
--- /dev/null
+++ b/keyboards/planck/keymaps/davidrambo/config.h
@@ -0,0 +1,9 @@
1#ifndef CONFIG_USER_H
2
3#define CONFIG_USER_H
4#define TAPPING_TERM 200
5#include "../../config.h"
6#define PERMISSIVE_HOLD
7#define PREVENT_STUCK_MODIFIERS
8
9#endif \ No newline at end of file
diff --git a/keyboards/planck/keymaps/davidrambo/keymap.c b/keyboards/planck/keymaps/davidrambo/keymap.c
new file mode 100644
index 0000000000..37e22afb90
--- /dev/null
+++ b/keyboards/planck/keymaps/davidrambo/keymap.c
@@ -0,0 +1,98 @@
1#include "planck.h"
2
3//alias for clarity in layering
4#define _______ KC_TRNS
5#define A_BSPC LALT(KC_BSPC)
6#define A_LEFT LALT(KC_LEFT)
7#define A_RGHT LALT(KC_RGHT)
8#define C_TAB LCTL(KC_TAB)
9#define GSL LGUI(S(KC_LEFT))
10#define GSR LGUI(S(KC_RGHT))
11#define G_TAB LGUI(KC_TAB)
12#define G_GRV LGUI(KC_GRV) // MAC: switch between windows within an application
13#define SftEnt SFT_T(KC_ENT)
14#define NAV LT(2, KC_TAB)
15
16#define _COLEMAK 0
17#define _SYMBOL 1
18#define _NAVIGATION 2
19
20//tapdance declarations
21enum {
22 SFT_LCK
23};
24
25//alias for tapdance
26#define SftLck TD(SFT_LCK)
27
28const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
29
30/* Colemak
31 * ,-----------------------------------------------------------------------------------.
32 * | ESC` | Q | W | F | P | G | J | L | U | Y | ; | Bksp |
33 * |------+------+------+------+------+-------------+------+------+------+------+------|
34 * | Tab | A | R | S | T | D | H | N | E | I | O | " |
35 * |------+------+------+------+------+------|------+------+------+------+------+------|
36 * |SftLck| Z | X | C | V | B | K | M | , | . | /? |SftEnt|
37 * |------+------+------+------+------+------+------+------+------+------+------+------|
38 * | Del | GUI | Ctrl | Alt | GUI | Space |Symbol| Left | Down | Up |Right |
39 * `-----------------------------------------------------------------------------------'
40*/
41
42[_COLEMAK] = {
43 {KC_GESC, KC_Q , KC_W , KC_F , KC_P , KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC},
44 {NAV , KC_A , KC_R , KC_S , KC_T , KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT},
45 {SftLck , KC_Z , KC_X , KC_C , KC_V , KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, SftEnt },
46 {KC_DEL , KC_LGUI, KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT}
47 },
48
49/* Symbol
50 * ,-----------------------------------------------------------------------------------.
51 * | [ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | ] |
52 * |------+------+------+------+------+-------------+------+------+------+------+------|
53 * | \| | ! | @ | # | $ | % | ^ | & | * | ( | ) | =+ |
54 * |------+------+------+------+------+------|------+------+------+------+------+------|
55 * | | Home | End | ScUp | ScDn | F1 | F2 | -_ |Pg Up | | / | |
56 * |------+------+------+------+------+------+------+------+------+------+------+------|
57 * | `~ | | | |Alt(Bk)| | |Pg Dn | Vol- | Vol+ | |
58 * `-----------------------------------------------------------------------------------'
59 */
60[_SYMBOL] = {
61 {KC_LBRC, KC_1, KC_2, KC_3, KC_4 , KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC},
62 {KC_BSLS, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_EQL },
63 {_______, KC_HOME, KC_END, KC_WH_U, KC_WH_D,KC_F1 , KC_F2 , KC_MINS, KC_PGUP, _______, _______, _______},
64 {KC_GRV, _______, _______, _______, A_BSPC, _______, _______, _______, KC_PGDN, KC_VOLD, KC_VOLU, KC_MUTE}
65 },
66
67/* Navigation*/
68
69[_NAVIGATION] = {
70 {_______, _______, _______, _______, _______, _______, C_TAB , A_LEFT, KC_UP, A_RGHT , KC_DEL , _______},
71 {_______, _______, _______, _______, _______, _______, GSL , KC_LEFT, KC_DOWN, KC_RGHT, GSR , _______},
72 {_______, _______, _______, _______, _______, _______, G_TAB , KC_HOME, _______, KC_END, G_GRV , _______},
73 {RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
74}
75};
76
77// Shift vs capslock function. From bbaserdem's Planck keymap.
78void caps_tap (qk_tap_dance_state_t *state, void *user_data) {
79 if (state->count == 1) {
80 register_code (KC_LSFT);
81 } else if (state->count == 2) {
82 unregister_code (KC_LSFT);
83 register_code (KC_CAPS);
84 }
85}
86void caps_tap_end (qk_tap_dance_state_t *state, void *user_data) {
87 if (state->count == 1) {
88 unregister_code (KC_LSFT);
89 } else {
90 unregister_code (KC_CAPS);
91 }
92}
93
94//Tap Dance Definitions
95qk_tap_dance_action_t tap_dance_actions[] = {
96 //Tap once for Shift, twice for Caps Lock
97 [SFT_LCK] = ACTION_TAP_DANCE_FN_ADVANCED( caps_tap, NULL, caps_tap_end )
98}; \ No newline at end of file
diff --git a/keyboards/planck/keymaps/davidrambo/rules.mk b/keyboards/planck/keymaps/davidrambo/rules.mk
new file mode 100644
index 0000000000..ffa9b870af
--- /dev/null
+++ b/keyboards/planck/keymaps/davidrambo/rules.mk
@@ -0,0 +1,6 @@
1TAP_DANCE_ENABLE = yes
2MOUSEKEY_ENABLE = yes
3
4ifndef QUANTUM_DIR
5 include ../../../../Makefile
6endif \ No newline at end of file
diff --git a/keyboards/planck/keymaps/rambo/config.h b/keyboards/planck/keymaps/rambo/config.h
new file mode 100644
index 0000000000..c3bebf5799
--- /dev/null
+++ b/keyboards/planck/keymaps/rambo/config.h
@@ -0,0 +1,9 @@
1#ifndef CONFIG_USER_H
2
3#define CONFIG_USER_H
4#define TAPPING_TERM 200
5#include "../../config.h"
6#define PERMISSIVE_HOLD
7#define PREVENT_STUCK_MODIFIERS
8
9#endif \ No newline at end of file
diff --git a/keyboards/planck/keymaps/rambo/keymap.c b/keyboards/planck/keymaps/rambo/keymap.c
new file mode 100644
index 0000000000..37e22afb90
--- /dev/null
+++ b/keyboards/planck/keymaps/rambo/keymap.c
@@ -0,0 +1,98 @@
1#include "planck.h"
2
3//alias for clarity in layering
4#define _______ KC_TRNS
5#define A_BSPC LALT(KC_BSPC)
6#define A_LEFT LALT(KC_LEFT)
7#define A_RGHT LALT(KC_RGHT)
8#define C_TAB LCTL(KC_TAB)
9#define GSL LGUI(S(KC_LEFT))
10#define GSR LGUI(S(KC_RGHT))
11#define G_TAB LGUI(KC_TAB)
12#define G_GRV LGUI(KC_GRV) // MAC: switch between windows within an application
13#define SftEnt SFT_T(KC_ENT)
14#define NAV LT(2, KC_TAB)
15
16#define _COLEMAK 0
17#define _SYMBOL 1
18#define _NAVIGATION 2
19
20//tapdance declarations
21enum {
22 SFT_LCK
23};
24
25//alias for tapdance
26#define SftLck TD(SFT_LCK)
27
28const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
29
30/* Colemak
31 * ,-----------------------------------------------------------------------------------.
32 * | ESC` | Q | W | F | P | G | J | L | U | Y | ; | Bksp |
33 * |------+------+------+------+------+-------------+------+------+------+------+------|
34 * | Tab | A | R | S | T | D | H | N | E | I | O | " |
35 * |------+------+------+------+------+------|------+------+------+------+------+------|
36 * |SftLck| Z | X | C | V | B | K | M | , | . | /? |SftEnt|
37 * |------+------+------+------+------+------+------+------+------+------+------+------|
38 * | Del | GUI | Ctrl | Alt | GUI | Space |Symbol| Left | Down | Up |Right |
39 * `-----------------------------------------------------------------------------------'
40*/
41
42[_COLEMAK] = {
43 {KC_GESC, KC_Q , KC_W , KC_F , KC_P , KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC},
44 {NAV , KC_A , KC_R , KC_S , KC_T , KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT},
45 {SftLck , KC_Z , KC_X , KC_C , KC_V , KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, SftEnt },
46 {KC_DEL , KC_LGUI, KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT}
47 },
48
49/* Symbol
50 * ,-----------------------------------------------------------------------------------.
51 * | [ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | ] |
52 * |------+------+------+------+------+-------------+------+------+------+------+------|
53 * | \| | ! | @ | # | $ | % | ^ | & | * | ( | ) | =+ |
54 * |------+------+------+------+------+------|------+------+------+------+------+------|
55 * | | Home | End | ScUp | ScDn | F1 | F2 | -_ |Pg Up | | / | |
56 * |------+------+------+------+------+------+------+------+------+------+------+------|
57 * | `~ | | | |Alt(Bk)| | |Pg Dn | Vol- | Vol+ | |
58 * `-----------------------------------------------------------------------------------'
59 */
60[_SYMBOL] = {
61 {KC_LBRC, KC_1, KC_2, KC_3, KC_4 , KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_RBRC},
62 {KC_BSLS, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_EQL },
63 {_______, KC_HOME, KC_END, KC_WH_U, KC_WH_D,KC_F1 , KC_F2 , KC_MINS, KC_PGUP, _______, _______, _______},
64 {KC_GRV, _______, _______, _______, A_BSPC, _______, _______, _______, KC_PGDN, KC_VOLD, KC_VOLU, KC_MUTE}
65 },
66
67/* Navigation*/
68
69[_NAVIGATION] = {
70 {_______, _______, _______, _______, _______, _______, C_TAB , A_LEFT, KC_UP, A_RGHT , KC_DEL , _______},
71 {_______, _______, _______, _______, _______, _______, GSL , KC_LEFT, KC_DOWN, KC_RGHT, GSR , _______},
72 {_______, _______, _______, _______, _______, _______, G_TAB , KC_HOME, _______, KC_END, G_GRV , _______},
73 {RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______}
74}
75};
76
77// Shift vs capslock function. From bbaserdem's Planck keymap.
78void caps_tap (qk_tap_dance_state_t *state, void *user_data) {
79 if (state->count == 1) {
80 register_code (KC_LSFT);
81 } else if (state->count == 2) {
82 unregister_code (KC_LSFT);
83 register_code (KC_CAPS);
84 }
85}
86void caps_tap_end (qk_tap_dance_state_t *state, void *user_data) {
87 if (state->count == 1) {
88 unregister_code (KC_LSFT);
89 } else {
90 unregister_code (KC_CAPS);
91 }
92}
93
94//Tap Dance Definitions
95qk_tap_dance_action_t tap_dance_actions[] = {
96 //Tap once for Shift, twice for Caps Lock
97 [SFT_LCK] = ACTION_TAP_DANCE_FN_ADVANCED( caps_tap, NULL, caps_tap_end )
98}; \ No newline at end of file
diff --git a/keyboards/planck/keymaps/rambo/rules.mk b/keyboards/planck/keymaps/rambo/rules.mk
new file mode 100644
index 0000000000..ffa9b870af
--- /dev/null
+++ b/keyboards/planck/keymaps/rambo/rules.mk
@@ -0,0 +1,6 @@
1TAP_DANCE_ENABLE = yes
2MOUSEKEY_ENABLE = yes
3
4ifndef QUANTUM_DIR
5 include ../../../../Makefile
6endif \ No newline at end of file
diff --git a/keyboards/satan/keymaps/bri/keymap.c b/keyboards/satan/keymaps/bri/keymap.c
new file mode 100644
index 0000000000..e2ec80ef95
--- /dev/null
+++ b/keyboards/satan/keymaps/bri/keymap.c
@@ -0,0 +1,102 @@
1#include "satan.h"
2
3#define _BL 0
4#define _FL 1
5#define _NAV 2
6
7#define _______ KC_TRNS
8#define A_LEFT LALT(KC_LEFT)
9#define A_RGHT LALT(KC_RGHT)
10
11const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
12 /* Keymap _BL: (Base Layer) Default Layer
13 * ,-----------------------------------------------------------.
14 * |Esc~| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp |
15 * |-----------------------------------------------------------|
16 * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ |
17 * |-----------------------------------------------------------|
18 * |CAPS | A| S| D| F| G| H| J| K| L| ;| '|Return |
19 * |-----------------------------------------------------------|
20 * |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift |
21 * |-----------------------------------------------------------|
22 * |Ctrl|Gui |Alt | Space |Alt |Gui |FN |Ctrl |
23 * `-----------------------------------------------------------'
24 */
25[_BL] = KEYMAP_ANSI(
26 KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, \
27 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC,KC_BSLS, \
28 MO(2), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, KC_ENT, \
29 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, \
30 KC_LCTL, KC_LALT,KC_LGUI, KC_SPC, KC_RGUI,KC_RALT, KC_RCTL, MO(_FL) ),
31
32 /* Keymap _FL: Function Layer
33 * ,-----------------------------------------------------------.
34 * | | | | | | | | | | | | | | |
35 * |-----------------------------------------------------------|
36 * | | | | | | | | | | | |BL-|BL+|BL |
37 * |-----------------------------------------------------------|
38 * | | | | | | | | | | | | |
39 * |-----------------------------------------------------------|
40 * | | F1|F2 | F3|F4 | F5| F6| F7| F8| | | |
41 * |-----------------------------------------------------------|
42 * |RESET| | | | | | | |
43 * `-----------------------------------------------------------'
44 */
45[_FL] = KEYMAP_ANSI(
46 #ifdef RGBLIGHT_ENABLE
47 KC_GRV , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10, KC_F11, KC_F12,_______, \
48 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, BL_DEC,BL_INC, BL_TOGG, \
49 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \
50 _______,RGB_TOG,RGB_MOD,RGB_HUI,RGB_HUD,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD,_______,_______,_______, \
51 RESET ,_______,_______, _______, _______,_______,_______, _______),
52 #else
53 KC_GRV, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10, KC_F11, KC_F12,_______, \
54 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, BL_DEC, BL_INC,BL_TOGG, \
55 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, \
56 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, \
57 RESET ,_______,_______, _______, _______,_______,_______,_______),
58 #endif
59
60[_NAV] = KEYMAP_ANSI(
61 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, \
62 _______,_______,_______,_______,_______,_______,_______,A_LEFT , KC_UP ,A_RGHT ,_______,_______,_______,_______, \
63 _______,_______,_______,_______,_______,_______,_______,KC_LEFT,KC_DOWN,KC_RGHT,_______,_______, _______, \
64 _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, \
65 _______,_______,_______, _______, _______,_______,_______,_______),
66
67};
68/*
69enum function_id {
70 SHIFT_ESC,
71};
72
73const uint16_t PROGMEM fn_actions[] = {
74 [0] = ACTION_FUNCTION(SHIFT_ESC),
75};
76
77void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
78 static uint8_t shift_esc_shift_mask;
79 switch (id) {
80 case SHIFT_ESC:
81 shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK;
82 if (record->event.pressed) {
83 if (shift_esc_shift_mask) {
84 add_key(KC_GRV);
85 send_keyboard_report();
86 } else {
87 add_key(KC_ESC);
88 send_keyboard_report();
89 }
90 } else {
91 if (shift_esc_shift_mask) {
92 del_key(KC_GRV);
93 send_keyboard_report();
94 } else {
95 del_key(KC_ESC);
96 send_keyboard_report();
97 }
98 }
99 break;
100 }
101}
102*/
diff --git a/keyboards/satan/keymaps/bri/readme.md b/keyboards/satan/keymaps/bri/readme.md
new file mode 100644
index 0000000000..bed305997d
--- /dev/null
+++ b/keyboards/satan/keymaps/bri/readme.md
@@ -0,0 +1,2 @@
1#QWERTY keymap for Satan GH60 with layers for arrow keys, function keys, and backlight controls.
2#The layout of modifiers is intended to mimic the MacBook Air keyboard. \ No newline at end of file
diff --git a/keyboards/xd75/keymaps/davidrambo/config.h b/keyboards/xd75/keymaps/davidrambo/config.h
new file mode 100644
index 0000000000..e87ccde797
--- /dev/null
+++ b/keyboards/xd75/keymaps/davidrambo/config.h
@@ -0,0 +1,26 @@
1/* Copyright 2017 Benjamin Kesselring
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#ifndef CONFIG_USER_H
18#define CONFIG_USER_H
19
20#include "../../config.h"
21
22#define TAPPING_TERM 200
23#define PERMISSIVE_HOLD
24#define PREVENT_STUCK_MODIFIERS
25
26#endif
diff --git a/keyboards/xd75/keymaps/davidrambo/keymap.c b/keyboards/xd75/keymaps/davidrambo/keymap.c
new file mode 100644
index 0000000000..6e95936c84
--- /dev/null
+++ b/keyboards/xd75/keymaps/davidrambo/keymap.c
@@ -0,0 +1,150 @@
1#include "xd75.h"
2
3//aliases for clarity in layering
4#define _______ KC_TRNS
5#define A_BSPC LALT(KC_BSPC) // delete whole word in Mac
6#define C_BSPS LCTL(KC_BSPC) // delete whole word in PC
7#define A_LEFT LALT(KC_LEFT)
8#define A_RGHT LALT(KC_RGHT)
9#define C_RGHT LCTL(KC_RGHT)
10#define C_LEFT LCTL(KC_LEFT)
11#define SftEnt SFT_T(KC_ENT)
12#define GBSPC LGUI_T(KC_BSPC)
13#define CBSPC LCTL_T(KC_BSPC)
14
15//internet browser tab shortcuts and window swapping for Mac and Win
16#define GSL LGUI(S(KC_LEFT)) // back one tab in Safari
17#define GSR LGUI(S(KC_RGHT)) // forward one tab in Safari
18#define CTLPGDN LCTL(KC_PGDN) // back one tab on Windows
19#define CTLPGUP LCTL(KC_PGUP) // forward one tab on Windows
20#define G_TAB LGUI(KC_TAB) // MAC: switch applications
21#define G_GRV LGUI(KC_GRV) // MAC: switch between windows within an application
22#define A_TAB LALT(KC_TAB)
23#define C_TAB LCTL(KC_TAB)
24
25//
26#define NAV LT(3, KC_TAB)
27#define NAVPC LT(4, KC_TAB)
28
29// Layer shorthand
30#define _COLEMAK 0
31#define _PC 1
32#define _SYMBOL 2 //Function keys, numbers, symbols, Backlighting
33#define _NAV 3 //Navigation Layer on Mac
34#define _NAVPC 4 //Navigation Layer on Win
35
36//tapdance declarations
37enum {
38 SFT_LCK
39};
40
41//alias for tapdance
42#define SftLck TD(SFT_LCK)
43
44const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
45
46/* COLEMAK
47 * .--------------------------------------------------------------------------------------------------------------------------------------.
48 * | `~ | 1 | 2 | 3 | 4 | 5 | - | SWITCH | = | 6 | 7 | 8 | 9 | 0 | BACKSP |
49 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
50 * | ESC/`~ | Q | W | F | P | G | [ | \ | ] | J | L | U | Y | ; | BACKSP |
51 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------|
52 * | NAVTAB | A | S | D | F | G | PgUp |PlayPaus| ENTER | H | N | E | I | O | ' |
53 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------|
54 * |SFT/CAPS| Z | X | C | V | B | PgDn | UP | ENTER | K | M | , | . | / | SftEnt |
55 * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+-----------------+--------+--------|
56 * | DEL | LGUI | LCTRL | LALT | LGUI | BKSPC | LEFT | DOWN | RIGHT | SPACE | SYMBOL | RGUI | RALT | RCTRL | BL |
57 * '--------------------------------------------------------------------------------------------------------------------------------------'
58 */
59
60 [_COLEMAK] = { /* COLEMAK */
61 { KC_GRV , KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, TG(1) , KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC },
62 { KC_GESC, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_LBRC, KC_BSLS, KC_RBRC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC },
63 { NAV , KC_A, KC_R, KC_S, KC_T, KC_D, KC_PGUP, KC_ESC , KC_ENT , KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT },
64 { SftLck , KC_Z, KC_X, KC_C, KC_V, KC_B, KC_PGDN, KC_UP , KC_ENT , KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, SftEnt },
65 { KC_DEL , KC_LGUI, KC_LCTL, KC_LALT, KC_LGUI, GBSPC, KC_LEFT, KC_DOWN, KC_RGHT, KC_SPC, MO(2) , KC_RGUI, KC_RALT, KC_RCTL, BL_STEP },
66 },
67
68// Windows Layer: essentially swaps Control and GUI
69
70 [_PC] = { /* WINDOWS */
71 { _______, _______, _______, _______, _______, _______, _______, TG(0) , _______, _______, _______, _______, _______, _______, _______ },
72 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
73 { NAVPC , _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, _______, _______, _______ },
74 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
75 { _______, KC_LCTL, KC_LGUI, _______, KC_LCTL, CBSPC , _______, _______, _______, _______, _______, KC_RCTL, KC_RALT, KC_RGUI, _______ },
76 },
77
78/* SYMBOL
79 * .--------------------------------------------------------------------------------------------------------------------------------------.
80 * | F12 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 |
81 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
82 * | [{ | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | }] |
83 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
84 * | | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | = |
85 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
86 * | | | | | | | | | | | -_ | | | | |
87 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
88 * | | | | | | | | | | | | | | | |
89 * '--------------------------------------------------------------------------------------------------------------------------------------'
90 */
91
92 [_SYMBOL] = { /* SYMBOL */
93 { _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , _______, _______, _______, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , _______},
94 { KC_LBRC, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , _______, _______, _______, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_RBRC},
95 { _______, KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_EQL },
96 { _______, BL_OFF , BL_ON , BL_DEC , BL_INC , KC_F11 , _______, _______, _______, KC_F12 , KC_MINS, _______, _______, _______, _______},
97 { _______, _______, _______, _______, _______, A_BSPC , _______, _______, _______, _______, _______, _______, _______, _______, _______},
98 },
99
100
101 [_NAV] = { /* NAVIGATION for Mac */
102 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
103 { _______, _______, _______, _______, _______, _______, _______, _______, _______, C_TAB , A_LEFT, KC_UP, A_RGHT , KC_DEL , _______},
104 { _______, _______, _______, _______, _______, _______, _______, _______, _______, GSL , KC_LEFT, KC_DOWN, KC_RGHT, GSR , _______},
105 { _______, _______, _______, _______, _______, _______, _______, _______, _______, G_TAB , KC_HOME, _______, KC_END , G_GRV , _______},
106 { RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
107 },
108
109 [_NAVPC] = { /* NAVIGATION FOR WINDOWS: replaces Alt with Control, GUI with Alt, and browser tab shortcuts*/
110 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
111 { _______, _______, _______, _______, _______, _______, _______, _______, _______, C_TAB , C_LEFT, KC_UP, C_RGHT , KC_DEL , _______},
112 { _______, _______, _______, _______, _______, _______, _______, _______, _______, CTLPGDN, KC_LEFT, KC_DOWN, KC_RGHT, CTLPGUP, _______},
113 { _______, _______, _______, _______, _______, _______, _______, _______, _______, A_TAB , KC_HOME, _______, KC_END , _______, _______},
114 { RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
115 }
116};
117
118// Shift vs capslock function. From bbaserdem's Planck keymap.
119void caps_tap (qk_tap_dance_state_t *state, void *user_data) {
120 if (state->count == 1) {
121 register_code (KC_LSFT);
122 } else if (state->count == 2) {
123 unregister_code (KC_LSFT);
124 register_code (KC_CAPS);
125 }
126}
127void caps_tap_end (qk_tap_dance_state_t *state, void *user_data) {
128 if (state->count == 1) {
129 unregister_code (KC_LSFT);
130 } else {
131 unregister_code (KC_CAPS);
132 }
133}
134
135//Tap Dance Definitions
136qk_tap_dance_action_t tap_dance_actions[] = {
137 //Tap once for Shift, twice for Caps Lock
138 [SFT_LCK] = ACTION_TAP_DANCE_FN_ADVANCED( caps_tap, NULL, caps_tap_end )
139};
140
141/* Template for future layers
142 [_LAYER_NAME] = {
143 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
144 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
145 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
146 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
147 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
148 }
149};
150*/
diff --git a/keyboards/xd75/keymaps/davidrambo/readme.md b/keyboards/xd75/keymaps/davidrambo/readme.md
new file mode 100644
index 0000000000..17b928c501
--- /dev/null
+++ b/keyboards/xd75/keymaps/davidrambo/readme.md
@@ -0,0 +1,4 @@
1# A Colemak layout for XD75 with both Mac and Windows layers.
2# These two layers share momentary toggle access to a "Symbol" layer, which is modeled after my Planck layout.
3# Each of the base Colemak layers have their own Navigation layers for the right hand to use arrows and shortcuts for both text editing and web browsing.
4# The rules.mk file overrides the XD75's "BACKLIGHT_ENABLE" with YES and also adds tap dance functionality. \ No newline at end of file
diff --git a/keyboards/xd75/keymaps/davidrambo/rules.mk b/keyboards/xd75/keymaps/davidrambo/rules.mk
new file mode 100644
index 0000000000..edc9cc6bc1
--- /dev/null
+++ b/keyboards/xd75/keymaps/davidrambo/rules.mk
@@ -0,0 +1,2 @@
1BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
2TAP_DANCE_ENABLE = yes # Enable tap dance functionality \ No newline at end of file
diff --git a/keyboards/xd75/keymaps/rambo/config.h b/keyboards/xd75/keymaps/rambo/config.h
new file mode 100644
index 0000000000..e87ccde797
--- /dev/null
+++ b/keyboards/xd75/keymaps/rambo/config.h
@@ -0,0 +1,26 @@
1/* Copyright 2017 Benjamin Kesselring
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#ifndef CONFIG_USER_H
18#define CONFIG_USER_H
19
20#include "../../config.h"
21
22#define TAPPING_TERM 200
23#define PERMISSIVE_HOLD
24#define PREVENT_STUCK_MODIFIERS
25
26#endif
diff --git a/keyboards/xd75/keymaps/rambo/keymap.c b/keyboards/xd75/keymaps/rambo/keymap.c
new file mode 100644
index 0000000000..6e95936c84
--- /dev/null
+++ b/keyboards/xd75/keymaps/rambo/keymap.c
@@ -0,0 +1,150 @@
1#include "xd75.h"
2
3//aliases for clarity in layering
4#define _______ KC_TRNS
5#define A_BSPC LALT(KC_BSPC) // delete whole word in Mac
6#define C_BSPS LCTL(KC_BSPC) // delete whole word in PC
7#define A_LEFT LALT(KC_LEFT)
8#define A_RGHT LALT(KC_RGHT)
9#define C_RGHT LCTL(KC_RGHT)
10#define C_LEFT LCTL(KC_LEFT)
11#define SftEnt SFT_T(KC_ENT)
12#define GBSPC LGUI_T(KC_BSPC)
13#define CBSPC LCTL_T(KC_BSPC)
14
15//internet browser tab shortcuts and window swapping for Mac and Win
16#define GSL LGUI(S(KC_LEFT)) // back one tab in Safari
17#define GSR LGUI(S(KC_RGHT)) // forward one tab in Safari
18#define CTLPGDN LCTL(KC_PGDN) // back one tab on Windows
19#define CTLPGUP LCTL(KC_PGUP) // forward one tab on Windows
20#define G_TAB LGUI(KC_TAB) // MAC: switch applications
21#define G_GRV LGUI(KC_GRV) // MAC: switch between windows within an application
22#define A_TAB LALT(KC_TAB)
23#define C_TAB LCTL(KC_TAB)
24
25//
26#define NAV LT(3, KC_TAB)
27#define NAVPC LT(4, KC_TAB)
28
29// Layer shorthand
30#define _COLEMAK 0
31#define _PC 1
32#define _SYMBOL 2 //Function keys, numbers, symbols, Backlighting
33#define _NAV 3 //Navigation Layer on Mac
34#define _NAVPC 4 //Navigation Layer on Win
35
36//tapdance declarations
37enum {
38 SFT_LCK
39};
40
41//alias for tapdance
42#define SftLck TD(SFT_LCK)
43
44const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
45
46/* COLEMAK
47 * .--------------------------------------------------------------------------------------------------------------------------------------.
48 * | `~ | 1 | 2 | 3 | 4 | 5 | - | SWITCH | = | 6 | 7 | 8 | 9 | 0 | BACKSP |
49 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------|
50 * | ESC/`~ | Q | W | F | P | G | [ | \ | ] | J | L | U | Y | ; | BACKSP |
51 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------|
52 * | NAVTAB | A | S | D | F | G | PgUp |PlayPaus| ENTER | H | N | E | I | O | ' |
53 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------|
54 * |SFT/CAPS| Z | X | C | V | B | PgDn | UP | ENTER | K | M | , | . | / | SftEnt |
55 * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+-----------------+--------+--------|
56 * | DEL | LGUI | LCTRL | LALT | LGUI | BKSPC | LEFT | DOWN | RIGHT | SPACE | SYMBOL | RGUI | RALT | RCTRL | BL |
57 * '--------------------------------------------------------------------------------------------------------------------------------------'
58 */
59
60 [_COLEMAK] = { /* COLEMAK */
61 { KC_GRV , KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, TG(1) , KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC },
62 { KC_GESC, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_LBRC, KC_BSLS, KC_RBRC, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC },
63 { NAV , KC_A, KC_R, KC_S, KC_T, KC_D, KC_PGUP, KC_ESC , KC_ENT , KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT },
64 { SftLck , KC_Z, KC_X, KC_C, KC_V, KC_B, KC_PGDN, KC_UP , KC_ENT , KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, SftEnt },
65 { KC_DEL , KC_LGUI, KC_LCTL, KC_LALT, KC_LGUI, GBSPC, KC_LEFT, KC_DOWN, KC_RGHT, KC_SPC, MO(2) , KC_RGUI, KC_RALT, KC_RCTL, BL_STEP },
66 },
67
68// Windows Layer: essentially swaps Control and GUI
69
70 [_PC] = { /* WINDOWS */
71 { _______, _______, _______, _______, _______, _______, _______, TG(0) , _______, _______, _______, _______, _______, _______, _______ },
72 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
73 { NAVPC , _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, _______, _______, _______ },
74 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ },
75 { _______, KC_LCTL, KC_LGUI, _______, KC_LCTL, CBSPC , _______, _______, _______, _______, _______, KC_RCTL, KC_RALT, KC_RGUI, _______ },
76 },
77
78/* SYMBOL
79 * .--------------------------------------------------------------------------------------------------------------------------------------.
80 * | F12 | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 |
81 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
82 * | [{ | 1 | 2 | 3 | 4 | 5 | | | | 6 | 7 | 8 | 9 | 0 | }] |
83 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
84 * | | ! | @ | # | $ | % | | | | ^ | & | * | ( | ) | = |
85 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
86 * | | | | | | | | | | | -_ | | | | |
87 * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
88 * | | | | | | | | | | | | | | | |
89 * '--------------------------------------------------------------------------------------------------------------------------------------'
90 */
91
92 [_SYMBOL] = { /* SYMBOL */
93 { _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , _______, _______, _______, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , _______},
94 { KC_LBRC, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , _______, _______, _______, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_RBRC},
95 { _______, KC_EXLM, KC_AT , KC_HASH, KC_DLR , KC_PERC, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_EQL },
96 { _______, BL_OFF , BL_ON , BL_DEC , BL_INC , KC_F11 , _______, _______, _______, KC_F12 , KC_MINS, _______, _______, _______, _______},
97 { _______, _______, _______, _______, _______, A_BSPC , _______, _______, _______, _______, _______, _______, _______, _______, _______},
98 },
99
100
101 [_NAV] = { /* NAVIGATION for Mac */
102 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
103 { _______, _______, _______, _______, _______, _______, _______, _______, _______, C_TAB , A_LEFT, KC_UP, A_RGHT , KC_DEL , _______},
104 { _______, _______, _______, _______, _______, _______, _______, _______, _______, GSL , KC_LEFT, KC_DOWN, KC_RGHT, GSR , _______},
105 { _______, _______, _______, _______, _______, _______, _______, _______, _______, G_TAB , KC_HOME, _______, KC_END , G_GRV , _______},
106 { RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
107 },
108
109 [_NAVPC] = { /* NAVIGATION FOR WINDOWS: replaces Alt with Control, GUI with Alt, and browser tab shortcuts*/
110 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
111 { _______, _______, _______, _______, _______, _______, _______, _______, _______, C_TAB , C_LEFT, KC_UP, C_RGHT , KC_DEL , _______},
112 { _______, _______, _______, _______, _______, _______, _______, _______, _______, CTLPGDN, KC_LEFT, KC_DOWN, KC_RGHT, CTLPGUP, _______},
113 { _______, _______, _______, _______, _______, _______, _______, _______, _______, A_TAB , KC_HOME, _______, KC_END , _______, _______},
114 { RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
115 }
116};
117
118// Shift vs capslock function. From bbaserdem's Planck keymap.
119void caps_tap (qk_tap_dance_state_t *state, void *user_data) {
120 if (state->count == 1) {
121 register_code (KC_LSFT);
122 } else if (state->count == 2) {
123 unregister_code (KC_LSFT);
124 register_code (KC_CAPS);
125 }
126}
127void caps_tap_end (qk_tap_dance_state_t *state, void *user_data) {
128 if (state->count == 1) {
129 unregister_code (KC_LSFT);
130 } else {
131 unregister_code (KC_CAPS);
132 }
133}
134
135//Tap Dance Definitions
136qk_tap_dance_action_t tap_dance_actions[] = {
137 //Tap once for Shift, twice for Caps Lock
138 [SFT_LCK] = ACTION_TAP_DANCE_FN_ADVANCED( caps_tap, NULL, caps_tap_end )
139};
140
141/* Template for future layers
142 [_LAYER_NAME] = {
143 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
144 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
145 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
146 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
147 { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______},
148 }
149};
150*/
diff --git a/keyboards/xd75/keymaps/rambo/readme.md b/keyboards/xd75/keymaps/rambo/readme.md
new file mode 100644
index 0000000000..17b928c501
--- /dev/null
+++ b/keyboards/xd75/keymaps/rambo/readme.md
@@ -0,0 +1,4 @@
1# A Colemak layout for XD75 with both Mac and Windows layers.
2# These two layers share momentary toggle access to a "Symbol" layer, which is modeled after my Planck layout.
3# Each of the base Colemak layers have their own Navigation layers for the right hand to use arrows and shortcuts for both text editing and web browsing.
4# The rules.mk file overrides the XD75's "BACKLIGHT_ENABLE" with YES and also adds tap dance functionality. \ No newline at end of file
diff --git a/keyboards/xd75/keymaps/rambo/rules.mk b/keyboards/xd75/keymaps/rambo/rules.mk
new file mode 100644
index 0000000000..edc9cc6bc1
--- /dev/null
+++ b/keyboards/xd75/keymaps/rambo/rules.mk
@@ -0,0 +1,2 @@
1BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
2TAP_DANCE_ENABLE = yes # Enable tap dance functionality \ No newline at end of file