Home | History | Annotate | Line # | Download | only in geometry
      1      1.1  mrg //
      2  1.1.1.5  mrg //	XKB geometry for the Happy Hacking (Lite).
      3      1.1  mrg //	Different variants correspond to different switch
      4      1.1  mrg //	settings on the HHK.
      5      1.1  mrg //
      6      1.1  mrg //  Copyright (c) Doug Palmer <doug (a] charvolant.org>, 2002
      7      1.1  mrg //
      8      1.1  mrg //Permission is hereby granted, free of charge, to any person obtaining a copy
      9      1.1  mrg //of this software and associated documentation files (the "Software"), to deal
     10      1.1  mrg //in the Software without restriction, including without limitation the rights
     11      1.1  mrg //to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
     12      1.1  mrg //copies of the Software, and to permit persons to whom the Software is
     13      1.1  mrg //furnished to do so, subject to the following conditions:
     14      1.1  mrg //
     15      1.1  mrg //The above copyright notice and this permission notice shall be included in
     16      1.1  mrg //all copies or substantial portions of the Software.
     17      1.1  mrg //
     18      1.1  mrg //THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     19      1.1  mrg //IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     20      1.1  mrg //FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     21      1.1  mrg //AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     22      1.1  mrg //LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     23      1.1  mrg //OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
     24      1.1  mrg //THE SOFTWARE.
     25      1.1  mrg 
     26      1.1  mrg // SW = 100 Default layout with windows keys
     27      1.1  mrg default xkb_geometry "win1" {
     28      1.1  mrg 	include "hhk(basic)"
     29      1.1  mrg 
     30      1.1  mrg 	key.gap = 1;
     31      1.1  mrg 	section "Space" {
     32      1.1  mrg 		top = 86;
     33      1.1  mrg 		left = 30;
     34      1.1  mrg 		row {
     35      1.1  mrg 			top = 1;
     36      1.1  mrg 			keys {
     37      1.1  mrg 				<LALT>,
     38      1.1  mrg 				{ <LWIN>, "DIAM" },
     39      1.1  mrg 				{ <SPCE>, "SPCE" },
     40      1.1  mrg 				{ <RWIN>, "DIAM" },
     41      1.1  mrg 				<RALT>
     42      1.1  mrg 			};
     43      1.1  mrg 		};
     44      1.1  mrg 	};
     45      1.1  mrg };
     46      1.1  mrg 
     47      1.1  mrg // SW = 101 Layout with windows and alt keys swapped
     48      1.1  mrg xkb_geometry "win2" {
     49      1.1  mrg 	include "hhk(basic)"
     50      1.1  mrg 
     51      1.1  mrg 	key.gap = 1;
     52      1.1  mrg 	section "Space" {
     53      1.1  mrg 		top = 86;
     54      1.1  mrg 		left = 30;
     55      1.1  mrg 		row {
     56      1.1  mrg 			top = 1;
     57      1.1  mrg 			keys {
     58      1.1  mrg 				<LWIN>,
     59      1.1  mrg 				{ <LALT>, "DIAM" },
     60      1.1  mrg 				{ <SPCE>, "SPCE" },
     61      1.1  mrg 				{ <RALT>, "DIAM" },
     62      1.1  mrg 				<RWIN>
     63      1.1  mrg 			};
     64      1.1  mrg 		};
     65      1.1  mrg 	};
     66      1.1  mrg };
     67      1.1  mrg 
     68      1.1  mrg // SW = 110 Default layout with windows keys, and left diamond = Fn key
     69      1.1  mrg xkb_geometry "win3" {
     70      1.1  mrg 	include "hhk(basic)"
     71      1.1  mrg 
     72      1.1  mrg 	key.gap = 1;
     73      1.1  mrg 	section "Space" {
     74      1.1  mrg 		top = 86;
     75      1.1  mrg 		left = 30;
     76      1.1  mrg 		row {
     77      1.1  mrg 			top = 1;
     78      1.1  mrg 			keys {
     79      1.1  mrg 				<LALT>,
     80      1.1  mrg 				{ <FN>, "DIAM" },
     81      1.1  mrg 				{ <SPCE>, "SPCE" },
     82      1.1  mrg 				{ <RWIN>, "DIAM" },
     83      1.1  mrg 				<RALT>
     84      1.1  mrg 			};
     85      1.1  mrg 		};
     86      1.1  mrg 	};
     87      1.1  mrg };
     88      1.1  mrg 
     89      1.1  mrg // SW = 101 Layout with windows and alt keys swapped and left-Alt = Fn key
     90      1.1  mrg xkb_geometry "win4" {
     91      1.1  mrg 	include "hhk(basic)"
     92      1.1  mrg 
     93      1.1  mrg 	key.gap = 1;
     94      1.1  mrg 	section "Space" {
     95      1.1  mrg 		top = 86;
     96      1.1  mrg 		left = 30;
     97      1.1  mrg 		row {
     98      1.1  mrg 			top = 1;
     99      1.1  mrg 			keys {
    100      1.1  mrg 				<FN>,
    101      1.1  mrg 				{ <LALT>, "DIAM" },
    102      1.1  mrg 				{ <SPCE>, "SPCE" },
    103      1.1  mrg 				{ <RALT>, "DIAM" },
    104      1.1  mrg 				<RWIN>
    105      1.1  mrg 			};
    106      1.1  mrg 		};
    107      1.1  mrg 	};
    108      1.1  mrg };
    109      1.1  mrg 
    110      1.1  mrg // SW = 000 Layout with Muhenkan and Henkan keys
    111      1.1  mrg xkb_geometry "jp1" {
    112      1.1  mrg 	include "hhk(basic)"
    113      1.1  mrg 
    114      1.1  mrg 	key.gap = 1;
    115      1.1  mrg 	section "Space" {
    116      1.1  mrg 		top = 86;
    117      1.1  mrg 		left = 30;
    118      1.1  mrg 		row {
    119      1.1  mrg 			top = 1;
    120      1.1  mrg 			keys {
    121      1.1  mrg 				<LALT>,
    122      1.1  mrg 				{ <NFER>, "DIAM" },
    123      1.1  mrg 				{ <SPCE>, "SPCE" },
    124      1.1  mrg 				{ <XFER>, "DIAM" },
    125      1.1  mrg 				<RALT>
    126      1.1  mrg 			};
    127      1.1  mrg 		};
    128      1.1  mrg 	};
    129      1.1  mrg };
    130      1.1  mrg 
    131  1.1.1.5  mrg // SW = 001 Layout with Muhenkan and Henkan keys swapped with Alt
    132      1.1  mrg xkb_geometry "jp2" {
    133      1.1  mrg 	include "hhk(basic)"
    134      1.1  mrg 
    135      1.1  mrg 	key.gap = 1;
    136      1.1  mrg 	section "Space" {
    137      1.1  mrg 		top = 86;
    138      1.1  mrg 		left = 30;
    139      1.1  mrg 		row {
    140      1.1  mrg 			top = 1;
    141      1.1  mrg 			keys {
    142      1.1  mrg 				<NFER>,
    143      1.1  mrg 				{ <LALT>, "DIAM" },
    144      1.1  mrg 				{ <SPCE>, "SPCE" },
    145      1.1  mrg 				{ <RALT>, "DIAM" },
    146      1.1  mrg 				<XFER>
    147      1.1  mrg 			};
    148      1.1  mrg 		};
    149      1.1  mrg 	};
    150      1.1  mrg };
    151      1.1  mrg 
    152      1.1  mrg // SW = 010 Layout with Henkan key and left-diamond as Fn
    153      1.1  mrg xkb_geometry "jp3" {
    154      1.1  mrg 	include "hhk(basic)"
    155      1.1  mrg 
    156      1.1  mrg 	key.gap = 1;
    157      1.1  mrg 	section "Space" {
    158      1.1  mrg 		top = 86;
    159      1.1  mrg 		left = 30;
    160      1.1  mrg 		row {
    161      1.1  mrg 			top = 1;
    162      1.1  mrg 			keys {
    163      1.1  mrg 				<LALT>,
    164      1.1  mrg 				{ <FN>, "DIAM" },
    165      1.1  mrg 				{ <SPCE>, "SPCE" },
    166      1.1  mrg 				{ <XFER>, "DIAM" },
    167      1.1  mrg 				<RALT>
    168      1.1  mrg 			};
    169      1.1  mrg 		};
    170      1.1  mrg 	};
    171      1.1  mrg };
    172      1.1  mrg 
    173  1.1.1.5  mrg // SW = 001 Layout with Henkan key swapped with Alt and left-Alt as Fn
    174      1.1  mrg xkb_geometry "jp4" {
    175      1.1  mrg 	include "hhk(basic)"
    176      1.1  mrg 
    177      1.1  mrg 	key.gap = 1;
    178      1.1  mrg 	section "Space" {
    179      1.1  mrg 		top = 86;
    180      1.1  mrg 		left = 30;
    181      1.1  mrg 		row {
    182      1.1  mrg 			top = 1;
    183      1.1  mrg 			keys {
    184      1.1  mrg 				<FN>,
    185      1.1  mrg 				{ <LALT>, "DIAM" },
    186      1.1  mrg 				{ <SPCE>, "SPCE" },
    187      1.1  mrg 				{ <RALT>, "DIAM" },
    188      1.1  mrg 				<XFER>
    189      1.1  mrg 			};
    190      1.1  mrg 		};
    191      1.1  mrg 	};
    192      1.1  mrg };
    193      1.1  mrg 
    194  1.1.1.4  mrg // Basic layout for non-switchable keys
    195      1.1  mrg partial hidden xkb_geometry "basic" {
    196      1.1  mrg 
    197  1.1.1.5  mrg 	description = "Happy Hacking";
    198      1.1  mrg 	width = 290;
    199      1.1  mrg 	height = 106;
    200      1.1  mrg 	
    201      1.1  mrg 	shape.cornerRadius = 1;
    202      1.1  mrg 	shape "NORM" { { [18, 18] }, { [2, 1], [14, 14] } };
    203      1.1  mrg 	shape "BKSP" { { [28, 18] }, { [2, 1], [24, 14] } };
    204      1.1  mrg 	shape "TABK" { { [28, 18] }, { [2, 1], [24, 14] } };
    205      1.1  mrg 	shape "CTRL" { { [32, 18] }, { [2, 1], [28, 14] } };
    206      1.1  mrg 	shape "RTRN" { { [42, 18] }, { [2, 1], [38, 14] } };
    207      1.1  mrg 	shape "LFSH" { { [42, 18] }, { [2, 1], [38, 14] } };
    208      1.1  mrg 	shape "RTSH" { { [32, 18] }, { [2, 1], [28, 14] } };
    209      1.1  mrg 	shape "DIAM" { { [28, 18] }, { [2, 1], [24, 14] } };
    210      1.1  mrg 	shape "SPCE" { { [114, 18] }, { [2, 1], [110, 14] } };
    211      1.1  mrg 
    212      1.1  mrg 	text.color = "black";
    213      1.1  mrg 	text "PFULabel" { left = 16; top = 2; fontsize = 20; text = "PFU"; };
    214      1.1  mrg 	text "HHKLabel" { left = 254; top = 90; text = "Happy Hacking\nKeyboard"; };
    215      1.1  mrg 
    216      1.1  mrg 	section.left = 1;
    217      1.1  mrg 	row.left = 1;
    218      1.1  mrg 	key.shape = "NORM";
    219      1.1  mrg 	key.gap = 1;
    220      1.1  mrg 
    221      1.1  mrg 	section "Alphanumeric" {
    222      1.1  mrg 		top = 10;
    223      1.1  mrg 		row {
    224      1.1  mrg 			top = 1;
    225      1.1  mrg 			keys {
    226      1.1  mrg 				 <ESC>, 
    227      1.1  mrg 				<AE01>, <AE02>, <AE03>, <AE04>, <AE05>, 
    228      1.1  mrg 				<AE06>, <AE07>, <AE08>, <AE09>, <AE10>, 
    229      1.1  mrg 				<AE11>, <AE12>, 
    230      1.1  mrg 				<BKSL>, <TLDE>
    231      1.1  mrg 			};
    232      1.1  mrg 		};
    233      1.1  mrg 		row {
    234      1.1  mrg 			top = 20;
    235      1.1  mrg 			keys {
    236      1.1  mrg 				{ <TAB>, "TABK" },
    237      1.1  mrg 				<AD01>, <AD02>, <AD03>, <AD04>, <AD05>,
    238      1.1  mrg 				<AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
    239      1.1  mrg 				<AD11>, <AD12>,
    240      1.1  mrg 				{ <BKSP>, "BKSP" }
    241      1.1  mrg 			};
    242      1.1  mrg 		};
    243      1.1  mrg 		row {
    244      1.1  mrg 			top = 39;
    245      1.1  mrg 			keys {
    246      1.1  mrg 				{ <LCTL>, "CTRL" },
    247      1.1  mrg 				<AC01>, <AC02>, <AC03>, <AC04>, <AC05>,
    248      1.1  mrg 				<AC06>, <AC07>, <AC08>, <AC09>, <AC10>,
    249      1.1  mrg 				<AC11>, 
    250      1.1  mrg 				{ <RTRN>, "RTRN" }
    251      1.1  mrg 			};
    252      1.1  mrg 		};
    253      1.1  mrg 		row {
    254      1.1  mrg 			top = 58;
    255      1.1  mrg 			keys {
    256      1.1  mrg 				{ <LFSH>, "LFSH" },
    257      1.1  mrg 				<AB01>, <AB02>, <AB03>, <AB04>, <AB05>,
    258      1.1  mrg 				<AB06>, <AB07>, <AB08>, <AB09>, <AB10>,
    259      1.1  mrg 				{ <RTSH>, "RTSH" },
    260      1.1  mrg 				{ <FN>, color = "grey20" }
    261      1.1  mrg 			};
    262      1.1  mrg 		};
    263      1.1  mrg 	};
    264      1.1  mrg 
    265      1.1  mrg 	alias <AC00> = <LCTL>;
    266      1.1  mrg };
    267