1154daed1Smrg//
29184b9c8Smrg//	XKB geometry for the Happy Hacking (Lite).
3154daed1Smrg//	Different variants correspond to different switch
4154daed1Smrg//	settings on the HHK.
5154daed1Smrg//
6154daed1Smrg//  Copyright (c) Doug Palmer <doug@charvolant.org>, 2002
7154daed1Smrg//
8154daed1Smrg//Permission is hereby granted, free of charge, to any person obtaining a copy
9154daed1Smrg//of this software and associated documentation files (the "Software"), to deal
10154daed1Smrg//in the Software without restriction, including without limitation the rights
11154daed1Smrg//to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12154daed1Smrg//copies of the Software, and to permit persons to whom the Software is
13154daed1Smrg//furnished to do so, subject to the following conditions:
14154daed1Smrg//
15154daed1Smrg//The above copyright notice and this permission notice shall be included in
16154daed1Smrg//all copies or substantial portions of the Software.
17154daed1Smrg//
18154daed1Smrg//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19154daed1Smrg//IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20154daed1Smrg//FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21154daed1Smrg//AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22154daed1Smrg//LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23154daed1Smrg//OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24154daed1Smrg//THE SOFTWARE.
25154daed1Smrg
26154daed1Smrg// SW = 100 Default layout with windows keys
27154daed1Smrgdefault xkb_geometry "win1" {
28154daed1Smrg	include "hhk(basic)"
29154daed1Smrg
30154daed1Smrg	key.gap = 1;
31154daed1Smrg	section "Space" {
32154daed1Smrg		top = 86;
33154daed1Smrg		left = 30;
34154daed1Smrg		row {
35154daed1Smrg			top = 1;
36154daed1Smrg			keys {
37154daed1Smrg				<LALT>,
38154daed1Smrg				{ <LWIN>, "DIAM" },
39154daed1Smrg				{ <SPCE>, "SPCE" },
40154daed1Smrg				{ <RWIN>, "DIAM" },
41154daed1Smrg				<RALT>
42154daed1Smrg			};
43154daed1Smrg		};
44154daed1Smrg	};
45154daed1Smrg};
46154daed1Smrg
47154daed1Smrg// SW = 101 Layout with windows and alt keys swapped
48154daed1Smrgxkb_geometry "win2" {
49154daed1Smrg	include "hhk(basic)"
50154daed1Smrg
51154daed1Smrg	key.gap = 1;
52154daed1Smrg	section "Space" {
53154daed1Smrg		top = 86;
54154daed1Smrg		left = 30;
55154daed1Smrg		row {
56154daed1Smrg			top = 1;
57154daed1Smrg			keys {
58154daed1Smrg				<LWIN>,
59154daed1Smrg				{ <LALT>, "DIAM" },
60154daed1Smrg				{ <SPCE>, "SPCE" },
61154daed1Smrg				{ <RALT>, "DIAM" },
62154daed1Smrg				<RWIN>
63154daed1Smrg			};
64154daed1Smrg		};
65154daed1Smrg	};
66154daed1Smrg};
67154daed1Smrg
68154daed1Smrg// SW = 110 Default layout with windows keys, and left diamond = Fn key
69154daed1Smrgxkb_geometry "win3" {
70154daed1Smrg	include "hhk(basic)"
71154daed1Smrg
72154daed1Smrg	key.gap = 1;
73154daed1Smrg	section "Space" {
74154daed1Smrg		top = 86;
75154daed1Smrg		left = 30;
76154daed1Smrg		row {
77154daed1Smrg			top = 1;
78154daed1Smrg			keys {
79154daed1Smrg				<LALT>,
80154daed1Smrg				{ <FN>, "DIAM" },
81154daed1Smrg				{ <SPCE>, "SPCE" },
82154daed1Smrg				{ <RWIN>, "DIAM" },
83154daed1Smrg				<RALT>
84154daed1Smrg			};
85154daed1Smrg		};
86154daed1Smrg	};
87154daed1Smrg};
88154daed1Smrg
89154daed1Smrg// SW = 101 Layout with windows and alt keys swapped and left-Alt = Fn key
90154daed1Smrgxkb_geometry "win4" {
91154daed1Smrg	include "hhk(basic)"
92154daed1Smrg
93154daed1Smrg	key.gap = 1;
94154daed1Smrg	section "Space" {
95154daed1Smrg		top = 86;
96154daed1Smrg		left = 30;
97154daed1Smrg		row {
98154daed1Smrg			top = 1;
99154daed1Smrg			keys {
100154daed1Smrg				<FN>,
101154daed1Smrg				{ <LALT>, "DIAM" },
102154daed1Smrg				{ <SPCE>, "SPCE" },
103154daed1Smrg				{ <RALT>, "DIAM" },
104154daed1Smrg				<RWIN>
105154daed1Smrg			};
106154daed1Smrg		};
107154daed1Smrg	};
108154daed1Smrg};
109154daed1Smrg
110154daed1Smrg// SW = 000 Layout with Muhenkan and Henkan keys
111154daed1Smrgxkb_geometry "jp1" {
112154daed1Smrg	include "hhk(basic)"
113154daed1Smrg
114154daed1Smrg	key.gap = 1;
115154daed1Smrg	section "Space" {
116154daed1Smrg		top = 86;
117154daed1Smrg		left = 30;
118154daed1Smrg		row {
119154daed1Smrg			top = 1;
120154daed1Smrg			keys {
121154daed1Smrg				<LALT>,
122154daed1Smrg				{ <NFER>, "DIAM" },
123154daed1Smrg				{ <SPCE>, "SPCE" },
124154daed1Smrg				{ <XFER>, "DIAM" },
125154daed1Smrg				<RALT>
126154daed1Smrg			};
127154daed1Smrg		};
128154daed1Smrg	};
129154daed1Smrg};
130154daed1Smrg
1319184b9c8Smrg// SW = 001 Layout with Muhenkan and Henkan keys swapped with Alt
132154daed1Smrgxkb_geometry "jp2" {
133154daed1Smrg	include "hhk(basic)"
134154daed1Smrg
135154daed1Smrg	key.gap = 1;
136154daed1Smrg	section "Space" {
137154daed1Smrg		top = 86;
138154daed1Smrg		left = 30;
139154daed1Smrg		row {
140154daed1Smrg			top = 1;
141154daed1Smrg			keys {
142154daed1Smrg				<NFER>,
143154daed1Smrg				{ <LALT>, "DIAM" },
144154daed1Smrg				{ <SPCE>, "SPCE" },
145154daed1Smrg				{ <RALT>, "DIAM" },
146154daed1Smrg				<XFER>
147154daed1Smrg			};
148154daed1Smrg		};
149154daed1Smrg	};
150154daed1Smrg};
151154daed1Smrg
152154daed1Smrg// SW = 010 Layout with Henkan key and left-diamond as Fn
153154daed1Smrgxkb_geometry "jp3" {
154154daed1Smrg	include "hhk(basic)"
155154daed1Smrg
156154daed1Smrg	key.gap = 1;
157154daed1Smrg	section "Space" {
158154daed1Smrg		top = 86;
159154daed1Smrg		left = 30;
160154daed1Smrg		row {
161154daed1Smrg			top = 1;
162154daed1Smrg			keys {
163154daed1Smrg				<LALT>,
164154daed1Smrg				{ <FN>, "DIAM" },
165154daed1Smrg				{ <SPCE>, "SPCE" },
166154daed1Smrg				{ <XFER>, "DIAM" },
167154daed1Smrg				<RALT>
168154daed1Smrg			};
169154daed1Smrg		};
170154daed1Smrg	};
171154daed1Smrg};
172154daed1Smrg
1739184b9c8Smrg// SW = 001 Layout with Henkan key swapped with Alt and left-Alt as Fn
174154daed1Smrgxkb_geometry "jp4" {
175154daed1Smrg	include "hhk(basic)"
176154daed1Smrg
177154daed1Smrg	key.gap = 1;
178154daed1Smrg	section "Space" {
179154daed1Smrg		top = 86;
180154daed1Smrg		left = 30;
181154daed1Smrg		row {
182154daed1Smrg			top = 1;
183154daed1Smrg			keys {
184154daed1Smrg				<FN>,
185154daed1Smrg				{ <LALT>, "DIAM" },
186154daed1Smrg				{ <SPCE>, "SPCE" },
187154daed1Smrg				{ <RALT>, "DIAM" },
188154daed1Smrg				<XFER>
189154daed1Smrg			};
190154daed1Smrg		};
191154daed1Smrg	};
192154daed1Smrg};
193154daed1Smrg
194797b363dSmrg// Basic layout for non-switchable keys
195154daed1Smrgpartial hidden xkb_geometry "basic" {
196154daed1Smrg
1979184b9c8Smrg	description = "Happy Hacking";
198154daed1Smrg	width = 290;
199154daed1Smrg	height = 106;
200154daed1Smrg	
201154daed1Smrg	shape.cornerRadius = 1;
202154daed1Smrg	shape "NORM" { { [18, 18] }, { [2, 1], [14, 14] } };
203154daed1Smrg	shape "BKSP" { { [28, 18] }, { [2, 1], [24, 14] } };
204154daed1Smrg	shape "TABK" { { [28, 18] }, { [2, 1], [24, 14] } };
205154daed1Smrg	shape "CTRL" { { [32, 18] }, { [2, 1], [28, 14] } };
206154daed1Smrg	shape "RTRN" { { [42, 18] }, { [2, 1], [38, 14] } };
207154daed1Smrg	shape "LFSH" { { [42, 18] }, { [2, 1], [38, 14] } };
208154daed1Smrg	shape "RTSH" { { [32, 18] }, { [2, 1], [28, 14] } };
209154daed1Smrg	shape "DIAM" { { [28, 18] }, { [2, 1], [24, 14] } };
210154daed1Smrg	shape "SPCE" { { [114, 18] }, { [2, 1], [110, 14] } };
211154daed1Smrg
212154daed1Smrg	text.color = "black";
213154daed1Smrg	text "PFULabel" { left = 16; top = 2; fontsize = 20; text = "PFU"; };
214154daed1Smrg	text "HHKLabel" { left = 254; top = 90; text = "Happy Hacking\nKeyboard"; };
215154daed1Smrg
216154daed1Smrg	section.left = 1;
217154daed1Smrg	row.left = 1;
218154daed1Smrg	key.shape = "NORM";
219154daed1Smrg	key.gap = 1;
220154daed1Smrg
221154daed1Smrg	section "Alphanumeric" {
222154daed1Smrg		top = 10;
223154daed1Smrg		row {
224154daed1Smrg			top = 1;
225154daed1Smrg			keys {
226154daed1Smrg				 <ESC>, 
227154daed1Smrg				<AE01>, <AE02>, <AE03>, <AE04>, <AE05>, 
228154daed1Smrg				<AE06>, <AE07>, <AE08>, <AE09>, <AE10>, 
229154daed1Smrg				<AE11>, <AE12>, 
230154daed1Smrg				<BKSL>, <TLDE>
231154daed1Smrg			};
232154daed1Smrg		};
233154daed1Smrg		row {
234154daed1Smrg			top = 20;
235154daed1Smrg			keys {
236154daed1Smrg				{ <TAB>, "TABK" },
237154daed1Smrg				<AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
238154daed1Smrg				<AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
239154daed1Smrg				<AD11>, <AD12>,
240154daed1Smrg				{ <BKSP>, "BKSP" }
241154daed1Smrg			};
242154daed1Smrg		};
243154daed1Smrg		row {
244154daed1Smrg			top = 39;
245154daed1Smrg			keys {
246154daed1Smrg				{ <LCTL>, "CTRL" },
247154daed1Smrg				<AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
248154daed1Smrg				<AC06>, <AC07>, <AC08>, <AC09>, <AC10>,
249154daed1Smrg				<AC11>, 
250154daed1Smrg				{ <RTRN>, "RTRN" }
251154daed1Smrg			};
252154daed1Smrg		};
253154daed1Smrg		row {
254154daed1Smrg			top = 58;
255154daed1Smrg			keys {
256154daed1Smrg				{ <LFSH>, "LFSH" },
257154daed1Smrg				<AB01>, <AB02>, <AB03>, <AB04>, <AB05>,
258154daed1Smrg				<AB06>, <AB07>, <AB08>, <AB09>, <AB10>,
259154daed1Smrg				{ <RTSH>, "RTSH" },
260154daed1Smrg				{ <FN>, color = "grey20" }
261154daed1Smrg			};
262154daed1Smrg		};
263154daed1Smrg	};
264154daed1Smrg
265154daed1Smrg	alias <AC00> = <LCTL>;
266154daed1Smrg};
267