-
-
Notifications
You must be signed in to change notification settings - Fork 34
/
Copy pathEPKL_Layouts_Override_Example.ini
197 lines (173 loc) · 14.7 KB
/
EPKL_Layouts_Override_Example.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
;
;; ================================================================================================================================================
;; Layout Selection Override file
;; for EPiKaL Portable Keyboard Layout (EPKL) by Øystein "DreymaR" Bech-Aase (2015-), based on PKL by Máté Farkas (2008-2010).
;; For more info, see the README files and the Big Bag Of Keyboard Tricks: https://dreymar.colemak.org – select Windows.
;
;; - For Layout choice and settings, use the EPKL_Layouts .ini file(s). For program settings, use EPKL_Settings.
;; - For each of these, there is a Default file and optionally an Override file, the settings in which take precedence.
;; - For Extend layer mappings (navigation/editing etc), see the _eD_Extend.ini file. Set the modifier key in any active LayStack file.
;; - In the Files folder there are Compose, DeadKeys, Extend, PwrStrings and Remap special files with different types of entries.
;; ================================================================================================================================================
;
;; The EPKL Settings GUI:
;; - You can set the active layout with a handy EPKL Settings window from the EPKL Layout/Settings menu.
;; - Any changes you submit from that window will be written to your Override (or layout) file, thus taking precedence.
;; - If you wish, you can then edit the entries manually in the Override file. You may also Reset them with a button.
;; - The Settings GUI can also change general settings, special keys (Extend and Compose) and individual key mappings.
;
;; EPKL Layouts Override file info:
;; - This file takes precedence over EPKL_Layouts_Default.ini if it's present. Rename or delete it to use the Default file only.
;; - Any setting that's commented out here by prepending its line with a semicolon, will revert to its Default value.
;; - The first active line under a section such as [pkl] in this file will be used; or failing that, the Default file.
;; - For more info about the settings below, see the Default file.
;; - I've added some example settings that are more advanced than the defaults, and closer to what I use myself. Have fun!
;
;; ================================================================================================================================================
;; Tarmak learning steps: Gradually switch from VirtualKey QWERTY to Colemak. To use, uncomment this section (`;[pkl]` -> `[pkl]`).
;; - You need to set the right KbdType (ANS/ISO); see the Big Bag and EPKL documentation. Also uncomment the relevant CurlMod/HardMod.
;; - The Tarmak steps are: Tarmak0(QWERTY), Tarmak1(E), Tarmak2(ET), Tarmak3(ETR), Tarmak4(ETRO) and Tarmak5(Colemak).
;; - The lines below have all 5 steps. It may be easier for you to make and use a shorter line with only your current step(s).
;; - For Tarmak with Curl-DH, the first step has 5(6) changed keys. It's possible to first do the non-Curl step before swapping H-M.
;; - Since Tarmak layouts are in subfolders by ergo mod, make sure that CurlMod and HardMod are set to the right values as seen below.
;
;[pkl]
LayMain = Tarmak ; @L: For Tarmak, uncomment this section and a set of Tarmak CurlMod/HardMod/layout lines, and set your KbdType.
LayPath = @L\@3-@K@C@H ; @P: The path with subfolders where the layout folders with each Tarmak step are located. Usually, don't edit this.
LayType = VK ; @T: The Tarmak steps are provided as VK-type layouts. You can switch to another type once you reach Colemak.
LayVari = -- ; @V: The Tarmak steps are layout variants. No other variants such as locales are in use: Add those in later.
KbdType = ISO ;ANS ; @K: ANS(I) or ISO. For matrix-type boards, use ANS-Orth or ISO-Orth.
OthrMod = -- ; @O: There are no Other mods available for Tarmak: It's easiest to first learn Colemak and then add other mods.
;; ----------------------------------------------------------------
;; | TARMAK (for Colemak "vanilla") |
;; ----------------------------------------------------------------
;; - Tarmak 0-5 roundtrip without ergo mods, for ISO or ANS. CurlMod and HardMod are both set to `--`.
;; - Uncomment the next 3 lines to use this variant. Make sure no other CurlMod/HardMod/layout lines above are active.
;CurlMod = -- ; @C: --, Curl/DH mod; usually with an Angle/AWide ergo mod.
;HardMod = -- ; @H: --, Angle, AWide, AWing
;layout = @P-VK-QWE_@K:QWERTY(@K),@P-VK-Tm1_@K:Tarmak1,@P-VK-Tm2_@K:Tarmak2,@P-VK-Tm3_@K:Tarmak3,@P-VK-Tm4_@K:Tarmak4,@P-VK-Tm5_@K:Colemak(@K)-VK
;; ----------------------------------------------------------------
;; | TARMAK-CurlAngle (for Colemak-DH on row-staggered keyboards) |
;; ----------------------------------------------------------------
;; - Tarmak 1-5 with the Colemak-DH-Angle alias CurlAngle ergo mod, for ISO or ANS. CurlMod/HardMod are set to `Curl`/`Angle`.
;; - The initial "baby" steps adding Curl and Angle gradually at the start may be skipped/deleted as desired.
;; - Uncomment the next 3 lines to use this variant. Make sure no other CurlMod/HardMod/layout lines above are active.
CurlMod = Curl ; @C: --, Curl/DH mod; usually with an Angle/AWide ergo mod.
HardMod = Angle ; @H: --, Angle, AWide, AWing
layout = @P-VK-Tm1_@K:@L1,@P-VK-Tm1_@K_@C:@L1-C,@P-VK-Tm1_@K_@E:@L1-CA,@P-VK-Tm2_@K_@E:@L2-CA,@P-VK-Tm3_@K_@E:@L3-CA,@P-VK-Tm4_@K_@E:@L4-CA,@P-VK-Tm5_@K_@E:Cmk-CA(@K)
;; ----------------------------------------------------------------
;; | TARMAK-Curl (for Colemak-DH on matrix-type keyboards) |
;; ----------------------------------------------------------------
;; - Tarmak 1-5 with the Curl-DH-Ortho ergo mod, for Ortho/Matrix/Column-staggered boards (w/o an Angle mod), for ISO or ANS.
;; - CurlMod/HardMod are set to `Curl`/`--`. Set KbdType to ISO-Orth or ANS-Orth as applicable.
;; - Uncomment the next 4 lines to use this variant. Make sure no other CurlMod/HardMod/KbdType/layout lines above are active.
;CurlMod = Curl ; @C: --, Curl/DH mod; usually with an Angle/AWide ergo mod.
;HardMod = -- ; @H: --, Angle, AWide, AWing
;KbdType = ANS-Orth ; @K: ANS (US/ANSI 101/104 key), ISO (Euro/World 102/105 key)
;layout = @P-VK-QWE_@K:QWERTY(@K),@P-VK-Tm1_@K:@L1,@P-VK-Tm1_@K@C:@L1-DH,@P-VK-Tm2_@K@C:@L2-DH,@P-VK-Tm3_@K@C:@L3-DH,@P-VK-Tm4_@K@C:@L4-DH,@P-VK-Tm5_@K@C:Colemak-DH
;; ----------------------------------------------------------------
;; | TARMAK using all the settings defined above ... ??? |
;; ----------------------------------------------------------------
;; - This line allows you to use all the settings above ... if that variant combo exists. Not all combos do! Check the Tarmak folder.
layout = @L\@3-@K\@3-@T-QWE_@K:QWERTY(@K),@Ʃ-Tm1_@K@E:@L1,@Ʃ-Tm2_@K@E:@L2,@Ʃ-Tm3_@K@E:@L3,@Ʃ-Tm4_@K@E:@L4,@Ʃ-Tm5_@K@E:Colemak
;; ================================================================================================================================================
;; Normal layout selections by the shorthand formalism. To use these, make sure no [pkl] section settings above this are active.
;; As described above, you may instead use the full layout folder paths explicitly, and/or the Layout/Settings menu.
;; The latter adds a line just under [pkl] in an Override file, which takes precedence. Delete/Reset the line to use normal values.
;
[pkl]
;layout = Gallium\Gal-eD_ISO_AWideSym:Galliard-eD AWS(ISO), Colemak\Cmk-eD\Cmk-eD_ISO_CurlAWideSym:Colemak-eD CAWS(ISO) ; eD override
;layout = Colemak\Cmk-eD\Cmk-eD_ISO_CurlAWideSym:Colemak-eD CAWS-ISO, Colemak\Cmk-eD\Cmk-eD2VK_ISO_CurlAWideSym:Colemak-eD2VK CAWS-ISO, System\Sys-SC_ISO_CurlAWideSym:System-SC CAWS-ISO ; eD override
LayMain = Colemak ; @L: Colemak, Tarmak, Dvorak, QWERTY... – the main layout name. May state the 3-Letter-Abbreviation, as '@L/@3'.
LayPath = @L\@3-@T@V ; @P: @L[\???] LayMain\Subfolder – the path to the layout folders. May contain the 3-Letter-Abbreviation as '@3'.
LayType = eD ; @T: eD (edition DreymaR AltGr mappings), VK or SC (just move keys around)
LayVari = -- ; @V: --, Variant/Locale code. Check in the layout folders which combos exist, or make your own.
KbdType = ISO ; @K: ANS (US/ANSI 101/104 key), ISO (Euro/World 102/105 key)
CurlMod = Curl ; @C: --, Curl/DH mod; usually with an Angle/AWide ergo mod. For the old Curl-DHk variant, see _eD_Remap.ini.
HardMod = AWide ; @H: --, Angle, AWide (for AngleWide), AWing
OthrMod = Sym ; @O: --, Any other mods available such as DreymaR's Sym, as a mod combo suffix
;; Colemak or other LayMain layout, "edition DreymaR" or VirtualKey; switch to QWERTY with the same ergo mods except Curl.
layout = @Ʃ_@K@E:@L@V(@T) @E , QWERTY\QWE-@T_@K@H@O:QWERTY(@T) @H@O
;; DEMO: Cycle through the Curl/Hard mods for ANS or ISO. LayMain = Colemak/Dvorak are recommended, since they have all these ergo mods.
layout = @Ʃ_@K:@3[@T]_@K, @Ʃ_@K_Angle:@3[@T]-Angle, @Ʃ_@K_CurlAngle:@3[@T]-CurlAngle, @Ʃ_@K_AWide:@3[@T]-AWide, @Ʃ_@K_CurlAWide:@3[@T]-CurlAWide
;; TEST ZONE - HARD HAT AREA:
;; TODO: Test an imported layout on switch.
;layout = @Ʃ_@K@E:@L@V(@T) @E , _Import\CmkCAWSeD-WIP
;; WIP: Test out a layout on switch
;layout = @Ʃ_@K@E:@L@V(@T) @E , Tarmak\Tmk-VK-Tm5_@K-Orth_Curl:Tarmak5-DH ;, _Test\Cmk-eD-QIx_@K_CurlAngleSym:Cmk-TestLayout
;; ================================================================================================================================================
;; Layout key mappings are usually found in (base) Layout.ini files.
;; - These mappings may override Layouts_Default ones, and be overridden by BaseLayout and Layout.ini ones.
;
[layout]
;shiftStates = 0 : 1 : 2 : 6 : 7 ; 8 : 9 : e : f
;; SC = VKEY CStat Base Shift Ctrl AltGr AGrSh ; SwiSh SwShS SwAGr SwAGS
;; *** Several options are shown for the Caps key. Of course, these could also be used on other keys. The MoDK is awesome!
;QWCLK = qwBSP SKey ; SC03a: CapsLock as Backspace (by VK: CAPITAL -> BACK)
;QWCLK = Extend Mod ; SC03a: CapsLock as the Extend modifier
;QWCLK = BACK/Ext VKey ; SC03a: CapsLock as a Tap-or-Mod key: Backspace on tap, Extend modifier on hold
QWCLK = BACK/Ext 0 @ex0 @ex1 *#. @ex6 @ex7 ; SC03a: Caps as Mother-of-DKs (MoDK) on tap, Extend on hold; Ctrl+{Ext} = emoji picker
;; *** Any key state can be mapped as a powerful Compose or Repeat key. The key next to RAlt is a good spot; on ISO keyboards the ISO/LSGT key is another.
QWRWI = RWIN 0 ©Def @co1 -- ®® ®® ; SC15c: RWin. ©### – compose previous key(s). ®®/®# – repeat previous key. @### – dead key.
;QWPSC = vcPSC 0 ©Def @co1 -- ®® ®® ; SC137: PrtScn. Normal PrintScreen is on @co1 (DK Ext_Cmd) then p/P/π; also on Ext+Enter.
;QW_LG = vc_LG 5 œ Œ -- ø Ø ; SC056: LSGT/OEM_102, as a traditionally eD-mapped 4-level key.
;QW_LG = vc_LG 4 ©Def @co1 -- ø Ø ; SC056: LSGT. ©### – compose previous key(s). ®®/®# – repeat previous key. @### – dead key.
QW_LG = vc_LG 4 ®® ®4 -- ø Ø ; SC056: LSGT. ©### – compose previous key(s). ®®/®# – repeat previous key. @### – dead key.
;QW_LG = Swish Modifier ; SC056: LSGT, as a SwiSh (SGCaps, state+08) modifier.
;QW_LG = Flick Modifier ; SC056: LSGT, as a FliCK (custom, state+16) modifier.
;QWBSP = BACK 0 &WBS &BSp -- &WBS -- ; SC00e: Backspace as Delete Word (Back then Ctrl+Back). Shift+Back acts as the normal Back.
;QWPDC = vcPDC 0 . , -- -- -- ; SC053: Numpad Decimal (ANS/ISO DECIMAL) as a locale agnostic explicit dot/comma key
;; ================================================================================================================================================
;; Extend additions. Any Extend mapping in the LayStack overrides the main one.
;; Default such entries are found in the Extend.ini file, and sometimes in layout files.
;
[ext_Coding]
;Co_T = →Changed ; DEMO: {Shift+AltGr+Ext → Ext+T} is overwritten
;; ================================================================================================================================================
;; Dead key names. Names listed in this section will override those in the deadkey tables file.
;; Default such entries are found in the DeadKeys.ini file, and sometimes in layout files.
;
[deadKeyNames]
;@co0 = CoDeKey_0 ; Special Empty-Compose DK (CoDeKey)
;@co1 = CoDeKey_1 ; Special Shift+Compose DK
;; ================================================================================================================================================
;; Dead key additions. Any DK mapping in the LayStack overrides the main one; a -1 mapping cancels it.
;; Default such entries are found in the DeadKeys.ini file, and sometimes in layout files.
;
[dk_CoDeKey_0]
;; These are mappings for the CoDeKey DK which works when a Compose key doesn't. What you'll want here is probably individual.
;; I find using the CoDeKey DK-unless-Compose functionality to be powerful, robust and smooth. It uses the @co0 dead key.
;;
;; I find the CoDeKey DK-unless-Compose functionality very nice for individual locale letters such as the Danish/Norwegian ÆæØøÅå.
<{> = Å ; { ⇒ Å
<[> = å ; [ ⇒ å
<}> = Æ ; } ⇒ Æ
<]> = æ ; ] ⇒ æ
<?> = Ø ; ? ⇒ Ø
</> = ø ; / ⇒ ø
;<j> = ?! ; j ⇒
;<J>+ = ?! ; J ⇒
[dk_CoDeKey_1]
;; These are mappings used by the @co1 dead key which may be on the shifted state of a CoDeKey but is in itself just a dead key.
;; Beware of DKs on shifted states that they may not work quite as expected using Sticky Shift, as it holds down the Shift state.
;; - This may be utilized to get different output according to sequence timing, as an advanced technique.
;;
;; If using the CoDeKey @co0 DK for locale letters, it may be useful to duplicate at least their shifted states on the @co1 DK.
<{> = Å ; { ⇒ Å – ÅåÆæØø for Norwegian, Danish etc
<[> = å ; [ ⇒ å
<}> = Æ ; } ⇒ Æ
<]> = æ ; ] ⇒ æ
<?> = Ø ; ? ⇒ Ø
</> = ø ; / ⇒ ø
<U>+ = Ü ; U ⇒ Ü – ÜüÄäÖö for German, Swedish/Finnish etc
<u> = ü ; u ⇒ ü
<A>+ = Ä ; A ⇒ Ä
<a> = ä ; a ⇒ ä
<O>+ = Ö ; O ⇒ Ö
<o> = ö ; o ⇒ ö
<s> = š ; s ⇒ š – ŠšŽž for Finnish, Sámi etc
<S>+ = Š ; S ⇒ Š – --"--
<z> = ž ; z ⇒ ž – --"--
<Z>+ = Ž ; Z ⇒ Ž – --"--
;<j> = ?! ; j ⇒
;<J>+ = ?! ; J ⇒