3 // XKB geometry for the Happy Hacking Keyboard (Lite).
4 // Different variants correspond to different switch
5 // settings on the HHK.
7 // Copyright (c) Doug Palmer <doug@charvolant.org>, 2002
9 //Permission is hereby granted, free of charge, to any person obtaining a copy
10 //of this software and associated documentation files (the "Software"), to deal
11 //in the Software without restriction, including without limitation the rights
12 //to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13 //copies of the Software, and to permit persons to whom the Software is
14 //furnished to do so, subject to the following conditions:
16 //The above copyright notice and this permission notice shall be included in
17 //all copies or substantial portions of the Software.
19 //THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20 //IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21 //FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22 //AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23 //LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24 //OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
27 // SW = 100 Default layout with windows keys
28 default xkb_geometry "win1" {
48 // SW = 101 Layout with windows and alt keys swapped
69 // SW = 110 Default layout with windows keys, and left diamond = Fn key
90 // SW = 101 Layout with windows and alt keys swapped and left-Alt = Fn key
111 // SW = 000 Layout with Muhenkan and Henkan keys
132 // SW = 001 Layout with Muhenkan and Henkan keys swapped with Alt keys
153 // SW = 010 Layout with Henkan key and left-diamond as Fn
174 // SW = 001 Layout with Henkan key swapped with Alt keys and left-Alt as Fn
195 // Basic layout for non-swictchable keys
196 partial hidden xkb_geometry "basic" {
198 description = "Happy Hacking Keyboard";
202 shape.cornerRadius = 1;
203 shape "NORM" { { [18, 18] }, { [2, 1], [14, 14] } };
204 shape "BKSP" { { [28, 18] }, { [2, 1], [24, 14] } };
205 shape "TABK" { { [28, 18] }, { [2, 1], [24, 14] } };
206 shape "CTRL" { { [32, 18] }, { [2, 1], [28, 14] } };
207 shape "RTRN" { { [42, 18] }, { [2, 1], [38, 14] } };
208 shape "LFSH" { { [42, 18] }, { [2, 1], [38, 14] } };
209 shape "RTSH" { { [32, 18] }, { [2, 1], [28, 14] } };
210 shape "DIAM" { { [28, 18] }, { [2, 1], [24, 14] } };
211 shape "SPCE" { { [114, 18] }, { [2, 1], [110, 14] } };
213 text.color = "black";
214 text "PFULabel" { left = 16; top = 2; fontsize = 20; text = "PFU"; };
215 text "HHKLabel" { left = 254; top = 90; text = "Happy Hacking\nKeyboard"; };
222 section "Alphanumeric" {
228 <AE01>, <AE02>, <AE03>, <AE04>, <AE05>,
229 <AE06>, <AE07>, <AE08>, <AE09>, <AE10>,
238 <AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
239 <AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
248 <AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
249 <AC06>, <AC07>, <AC08>, <AC09>, <AC10>,
258 <AB01>, <AB02>, <AB03>, <AB04>, <AB05>,
259 <AB06>, <AB07>, <AB08>, <AB09>, <AB10>,
261 { <FN>, color = "grey20" }
266 alias <AC00> = <LCTL>;