// // XKB geometry for the Happy Hacking Keyboard (Lite). // Different variants correspond to different switch // settings on the HHK. // // Copyright (c) Doug Palmer , 2002 // //Permission is hereby granted, free of charge, to any person obtaining a copy //of this software and associated documentation files (the "Software"), to deal //in the Software without restriction, including without limitation the rights //to use, copy, modify, merge, publish, distribute, sublicense, and/or sell //copies of the Software, and to permit persons to whom the Software is //furnished to do so, subject to the following conditions: // //The above copyright notice and this permission notice shall be included in //all copies or substantial portions of the Software. // //THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR //IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, //FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE //AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER //LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, //OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN //THE SOFTWARE. // SW = 100 Default layout with windows keys default xkb_geometry "win1" { include "hhk(basic)" key.gap = 1; section "Space" { top = 86; left = 30; row { top = 1; keys { , { , "DIAM" }, { , "SPCE" }, { , "DIAM" }, }; }; }; }; // SW = 101 Layout with windows and alt keys swapped xkb_geometry "win2" { include "hhk(basic)" key.gap = 1; section "Space" { top = 86; left = 30; row { top = 1; keys { , { , "DIAM" }, { , "SPCE" }, { , "DIAM" }, }; }; }; }; // SW = 110 Default layout with windows keys, and left diamond = Fn key xkb_geometry "win3" { include "hhk(basic)" key.gap = 1; section "Space" { top = 86; left = 30; row { top = 1; keys { , { , "DIAM" }, { , "SPCE" }, { , "DIAM" }, }; }; }; }; // SW = 101 Layout with windows and alt keys swapped and left-Alt = Fn key xkb_geometry "win4" { include "hhk(basic)" key.gap = 1; section "Space" { top = 86; left = 30; row { top = 1; keys { , { , "DIAM" }, { , "SPCE" }, { , "DIAM" }, }; }; }; }; // SW = 000 Layout with Muhenkan and Henkan keys xkb_geometry "jp1" { include "hhk(basic)" key.gap = 1; section "Space" { top = 86; left = 30; row { top = 1; keys { , { , "DIAM" }, { , "SPCE" }, { , "DIAM" }, }; }; }; }; // SW = 001 Layout with Muhenkan and Henkan keys swapped with Alt keys xkb_geometry "jp2" { include "hhk(basic)" key.gap = 1; section "Space" { top = 86; left = 30; row { top = 1; keys { , { , "DIAM" }, { , "SPCE" }, { , "DIAM" }, }; }; }; }; // SW = 010 Layout with Henkan key and left-diamond as Fn xkb_geometry "jp3" { include "hhk(basic)" key.gap = 1; section "Space" { top = 86; left = 30; row { top = 1; keys { , { , "DIAM" }, { , "SPCE" }, { , "DIAM" }, }; }; }; }; // SW = 001 Layout with Henkan key swapped with Alt keys and left-Alt as Fn xkb_geometry "jp4" { include "hhk(basic)" key.gap = 1; section "Space" { top = 86; left = 30; row { top = 1; keys { , { , "DIAM" }, { , "SPCE" }, { , "DIAM" }, }; }; }; }; // Basic layout for non-swictchable keys partial hidden xkb_geometry "basic" { description = "Happy Hacking Keyboard"; width = 290; height = 106; shape.cornerRadius = 1; shape "NORM" { { [18, 18] }, { [2, 1], [14, 14] } }; shape "BKSP" { { [28, 18] }, { [2, 1], [24, 14] } }; shape "TABK" { { [28, 18] }, { [2, 1], [24, 14] } }; shape "CTRL" { { [32, 18] }, { [2, 1], [28, 14] } }; shape "RTRN" { { [42, 18] }, { [2, 1], [38, 14] } }; shape "LFSH" { { [42, 18] }, { [2, 1], [38, 14] } }; shape "RTSH" { { [32, 18] }, { [2, 1], [28, 14] } }; shape "DIAM" { { [28, 18] }, { [2, 1], [24, 14] } }; shape "SPCE" { { [114, 18] }, { [2, 1], [110, 14] } }; text.color = "black"; text "PFULabel" { left = 16; top = 2; fontsize = 20; text = "PFU"; }; text "HHKLabel" { left = 254; top = 90; text = "Happy Hacking\nKeyboard"; }; section.left = 1; row.left = 1; key.shape = "NORM"; key.gap = 1; section "Alphanumeric" { top = 10; row { top = 1; keys { , , , , , , , , , , , , , , }; }; row { top = 20; keys { { , "TABK" }, , , , , , , , , , , , , { , "BKSP" } }; }; row { top = 39; keys { { , "CTRL" }, , , , , , , , , , , , { , "RTRN" } }; }; row { top = 58; keys { { , "LFSH" }, , , , , , , , , , , { , "RTSH" }, { , color = "grey20" } }; }; }; alias = ; };