aboutsummaryrefslogtreecommitdiff
path: root/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_workman.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/thevankeyboards/minivan/keymaps/josjoha/base_workman.c')
-rw-r--r--keyboards/thevankeyboards/minivan/keymaps/josjoha/base_workman.c203
1 files changed, 203 insertions, 0 deletions
diff --git a/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_workman.c b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_workman.c
new file mode 100644
index 000000000..bc157d69e
--- /dev/null
+++ b/keyboards/thevankeyboards/minivan/keymaps/josjoha/base_workman.c
@@ -0,0 +1,203 @@
1/*
2 * License (GPL):
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 * Author: © 2021 by Jos Boersema
18 *
19 */
20
21// --------------------------------------v---------------------------------------
22// Configuration:
23// --------------------------------------v---------------------------------------
24
25// --------------------------------------^---------------------------------------
26// Below here no more comfortable configuration options.....
27// --------------------------------------^---------------------------------------
28
29
30 /* Redefine a layer in this file
31 *
32 * _Activate_ one or more of the below BASESFILE_LAYER_..., to redefine the layer
33 * in this file. The version in ./keymap.c will be ignored. Keep in mind to use
34 * transparent keys (_______) for “hold” layer switch keys on the BASE map, for
35 * your new layer.
36 */
37// #define BASESFILE_LAYER_ACC
38// #define BASESFILE_LAYER_DRA
39// #define BASESFILE_LAYER_BON
40// #define BASESFILE_LAYER_PAD
41// #define BASESFILE_LAYER_MOV
42// #define BASESFILE_LAYER_RAR
43// #define BASESFILE_LAYER_FUN
44
45 /* ⬇ */
46
47 /* Layer _..._BASE: Workman, normal BASE layer and 'default' layer
48 *
49 * - Dual use keys create a delay in the key (tap/hold keys), therefore
50 * space is not dual use (most ued key), neither is hyphen.
51 */
52
53// Process user configuration wrt ‛Default’ or ‛Alternative’ spot for this layout.
54# if defined(BASE_WORKMAN__DEF_BASE)
55 [ _DEF_BASE ] = LAYOUT_redefined (
56# elif defined(BASE_WORKMAN__ALT_BASE)
57 [ _ALT_BASE ] = LAYOUT_redefined (
58# endif
59
60/*
61 Layer _..._BASE (Letters). This is Workman
62 | Right hand
63 <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring> pinky>pinky2> // Keys by finger
64 -o- <|> ... //-o- BASE access
65 Esc qQ dD· rR· wW· bB· | jJ· fF· uU· pP· :;· Bksp
66 Tab+LCtl aA sS hH· tT· gG | yY· nN· eE· oO· iI· '"
67 LSht+_PAD zZ xX mM· cC· vV· | kK· lL· ,< .> /? RSht+_FUN
68 +_MOV⁵ | +_RAR⁶
69 ---------------------------------------------------------------------------------------
70 Left+LAlt Del;_ACC _..._NSY(_DRA) Enter+_MOV| Space _..._NSY(_DRA) LGUI Right;_RAR
71 hold hold₍₁,₂٭₎ hold | hold₍₁,₂٭₎ hold // switch type
72 hold₍₂₎ ^-┃-----------------------+--------^ ┃ // ₁₎ both = _DRA
73 ┗━━━_BON━━━╋┅───────────┄┄┄«or»┄┄┄─+─────────┅┛ // ₂₎ both = _BON
74 <1 ± <2 <3 <4 | 4> 3> 2> ± 1> // Keys by number
75 ^³ ^⁴ // Optional more keys
76 (RGUI) (_MOV)
77
78 ₁) Dual hold for _DRA, single hold for _..._NSY. Marked by: ^--…--^
79 ₂) Hold key “<2” with either٭ key “<3” or “3>” for _BON, single hold “<2” for _ACC. Marked: ┗━━…━━┛
80 ₃) 'South paw' hardware configuration. Configurable, default shown.
81 ₄) 'Arrow' hardware configuration Configurable, default shown.
82 ₃ ₄) There are two more optional hardware keys, to make it easier to compile for
83 a 12x12x12x11 or 12x12x12x12 layouts.
84 ₅) Left Shift when pressed with another key. Medium long: to toggle _PAD. Long: toggle _MOV.
85 ₆) Right shift when pressed with another key. medium long: to toggle _FUN. Long: toggle _RAR.
86 ₇) Letters marked by ‛·’ are different from Qwerty.
87*/
88//
89// <pink2 , <pink, <ring, <midd, <indx, <ind|, indx>, inde>, midd> , ring> , pink> , pink2> ,
90// -*!- , , , , , <|,> , , , , , ,
91 KC_ESC , KC_Q , KC_D , KC_R , KC_W , KC_B , KC_J , KC_F , KC_U , KC_P , KC_SCLN , KC_BSPC ,
92 LCTL_T ( KC_TAB ) , KC_A , KC_S , KC_H , KC_T , KC_G , KC_Y , KC_N , KC_E , KC_O , KC_I , KC_QUOT ,
93 CHOLTAP_LSHFT , KC_Z , KC_X , KC_M , KC_C , KC_V , KC_K , KC_L , KC_COMM , KC_DOT , KC_SLSH , CHOLTAP_RSHFT ,
94// -----------------------------------------------------------------------------------------------------------------
95 LALT_T ( KC_LEFT )
96
97# ifdef TRANSMINIVAN_LEFTSIDE
98 , MO ( _PAD )
99# endif
100
101# ifdef MORE_KEY__COMMAND
102 , MORE_key1_BASE
103# endif
104
105# ifdef SWITCH_HOLD_ACC_NSY
106 , DUO_HOLD , CHOLTAP_ACCE
107# else
108 , CHOLTAP_ACCE , DUO_HOLD
109# endif
110
111 , LT__MOV__KC_ENT
112
113# ifdef TRANSMINIVAN_MIDLEFT
114 , TRANS_MIDLEFT
115# endif
116
117 , KC_SPC , DUO_HOLD , KC__YGUI
118
119# ifdef TRANSMINIVAN_RIGHTSIDE
120 , MO ( _FUN )
121# endif
122
123# ifdef MORE_KEY__ARROW
124 , MORE_key2
125# endif
126
127 , CHOLTAP_LAYR
128// , , , <|,> , , ,
129// <1 ± ± , <2 , <3 , <4 |, 4> , 3> , 2> , ± ± 1>
130
131 ),
132
133 /* ⬆⬇ */
134
135 /* Layer _..._NSY: Numbers and symbols, to work with the Workman base layer above. (Same as Qwerty.)
136 * Off hand Number input (-.Bksp ent (shft)tab).
137 */
138 // KC_TILD does not work there, because of a limitation with shifted keys (nov 2019).
139
140// Process user configuration wrt ‛Default’ or ‛Alternative’ spot for this layout.
141# if defined(BASE_WORKMAN__DEF_BASE)
142 [ _DEF_NSY ] = LAYOUT_redefined (
143# elif defined(BASE_WORKMAN__ALT_BASE)
144 [ _ALT_NSY ] = LAYOUT_redefined (
145# endif
146
147/*
148 Layer _..._NSY (Numbers and SYmbols). This fits the above Workman layer _..._BASE
149
150 <pink2 <pinky<ring <middl<index<indx2| indx2>index>middl>ring>pin>pink2>
151 -*- <|> //(toggle) Access on _FUN
152 BASE ! @ # $ % | ^ & * ( ) Del
153 Tab+LCtl 1! 2@ 3# 4$ 5% | 6^ 7& 8* 9( 0) `~+RCtl
154 -+LSht [{ ]} -_ \| =+ | + | _ { } `~+RSht // limitation prevents ~
155 ^^ ^ // Only differences with normal version _..._NSY
156 ---------------------------------------------------------------------------
157 Left+LAlt ___ ___ Ent | . ___ LGUI Right+RAlt
158 -*- <|> -*- //(hold) Access on _..._BASE
159 <1 ± <2 <3 <4 | 4> 3> 2> ± 1>
160 ^ ^
161 (RGUI) (_MOV)
162*/
163//
164//
165// <pink2 , <pinky , <ring , <middl , <index , <indx2 |, indx2> , index> , middl> , ring> , pinky> , pink2> ,
166// , -*- , , , , <|,> , , , , , ,
167 CTO_BASE , KC_EXLM , KC_AT , KC_HASH , KC_DLR , KC_PERC , KC_CIRC , KC_AMPR , KC_ASTR , KC_LPRN , KC_RPRN , KC_DEL ,
168 LCTL_T ( KC_TAB ) , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , RCTL_T ( KC_GRV ) ,
169 LSFT_T ( KC_MINS ) , KC_LBRC , KC_RBRC , KC_MINS , KC_BSLS , KC_EQL , KC_PLUS , KC_PIPE , KC_UNDS , KC_LCBR , KC_RCBR , RSFT_T ( KC_TILD ) ,
170// ---------------------------------------------------------------------------------------------------------------------------------------------
171 LALT_T ( KC_LEFT )
172
173# ifdef TRANSMINIVAN_LEFTSIDE
174 , XXXXXXX
175# endif
176
177# ifdef MORE_KEY__COMMAND
178 , MORE_key1
179# endif
180
181 , _______ , _______ , KC_ENT
182
183# ifdef TRANSMINIVAN_MIDLEFT
184 , TRANS_MIDLEFT
185# endif
186
187 , KC_DOT , DUO_HOLD , KC__YGUI
188
189# ifdef TRANSMINIVAN_RIGHTSIDE
190 , XXXXXXX
191# endif
192
193# ifdef MORE_KEY__ARROW
194 , MORE_key2
195# endif
196
197 , RALT_T ( KC_RGHT )
198// , , -*- , <|,> , -*- , ,
199// <1 ± ± , <2 , <3 , <4 |, 4> , 3> , 2> , ± ± 1>
200
201 ),
202
203 /* ⬆⬇ */