COPYING added - MIT license (thanks to Keithp). Some minor fixes on infrastructure
[xorg/xkeyboard-config] / rules / base
1 // $Xorg: xfree86,v 1.3 2000/08/17 19:54:42 cpqbld Exp $
2
3 //
4 //  Rules for resolving XKB components for use with XFree86
5 //  Copyright 1996 by Joseph Moss
6 //
7 //  2002 Modifier: Ivan Pascal      The XFree86 Project
8 //  $XFree86: xc/programs/xkbcomp/rules/xfree86,v 3.79 2004/01/09 00:16:01 dawes Exp $
9 //
10
11 // Layouts that still need be composed by old rules
12 ! $oldlayouts = az bs ca ca_enhanced de_CH fr_CH hu hu_qwerty lt_std mn vn hr_US
13
14 // If you want non-latin layouts implicitly include the en_US layout
15 // uncomment lines below
16 //! $nonlatin = am ar ben bg by dev el ge_la ge_ru guj gur il il_phonetic\
17 //              ir iu kan lo mk mm ml ori ru sr syr syr_phonetic tel th\
18 //              tj tml ua
19
20 ! $pcmodels = pc101 pc102 pc104 pc105
21 ! $maclaptop = ibook powerbook
22 ! $mac = macintosh macintosh_old ibook powerbook
23
24 ! model         =       keycodes
25   macintosh_old =       macintosh
26   powerpcps2    =       powerpcps2
27   pc98          =       xfree98(pc98)
28   abnt2         =       xfree86(abnt2)
29   jp106         =       xfree86(jp106)
30   *             =       xfree86
31
32 ! $azerty = be fr fr-latin9
33 ! $qwertz = al cz de hr pl2 ro si sk 
34
35 ! layout[1]     =       keycodes
36   $azerty       =       +aliases(azerty)
37   $qwertz       =       +aliases(qwertz)
38   *             =       +aliases(qwerty)
39
40 ! layout        =       keycodes
41   $azerty       =       +aliases(azerty)
42   $qwertz       =       +aliases(qwertz)
43   *             =       +aliases(qwerty)
44
45 ! model         =       geometry
46   microsoft     =       microsoft(natural)
47   microsoftpro  =       microsoft(natural)
48   microsoftprose =      microsoft(natural)
49   dell101       =       dell(dell101)
50   flexpro       =       keytronic(FlexPro)
51   hp6000        =       hp(omnibook)
52   omnikey101    =       northgate(omnikey101)
53   thinkpad      =       ibm.vndr/thinkpad(common)
54  $pcmodels      =       pc(%m)
55   jp106         =       pc(jp106)
56   everex        =       everex(STEPnote)
57   winbook       =       winbook(XP5)
58   pc98          =       nec(pc98)
59   abnt2         =       pc(abnt2)
60  $mac           =       macintosh(macintosh)
61   *             =       pc(pc104)
62
63 ! model         variant         layout  =       symbols
64  $maclaptop     nodeadkeys      *       =       macintosh.vndr/us(extended)+macintosh.vndr/%l%(v)+apple(laptop_bad_switch)
65  $mac           nodeadkeys      *       =       macintosh.vndr/us(extended)+macintosh.vndr/%l%(v)
66  $pcmodels      nodeadkeys  $oldlayouts =       en_US(%m%_v)+%l%(v)
67   *             nodeadkeys  $oldlayouts =       en_US(pc105%_v)+%l%(v)
68
69 ! model         layout  =       symbols
70   pc98          nec/jp  =       nec.vndr/jp(pc98)
71   abnt2         br      =       pc(pc104)+br
72  $maclaptop     us      =       macintosh.vndr/us(extended)+apple(laptop_bad_switch)
73  $maclaptop     en_US   =       macintosh.vndr/us(extended)+apple(laptop_bad_switch)
74  $maclaptop     *       =       macintosh.vndr/us(extended)+apple(laptop_bad_switch)+macintosh.vndr/%l%(v)
75  $mac           us      =       macintosh.vndr/us(extended)
76  $mac           en_US   =       macintosh.vndr/us(extended)
77  $mac           *       =       macintosh.vndr/us(extended)+macintosh.vndr/%l%(v)
78  $pcmodels      intl    =       us(%mcompose)
79   *             intl    =       us(pc104compose) 
80   *             jp      =       jp
81  $pcmodels $oldlayouts  =       en_US(%m)+%l%(v)
82  $pcmodels $nonlatin    =       pc(%m)+us+%l%(v):2
83  $pcmodels      *       =       pc(%m)+%l%(v)
84   *        $oldlayouts  =       en_US(pc105)+%l%(v)
85   *        $nonlatin    =       pc(pc105)+us+%l%(v):2
86   *             *       =       pc(pc105)+%l%(v)
87
88 ! model     layout[1]   =       symbols
89  $pcmodels      *       =       pc(%m)+%l[1]%(v[1])
90   *             *       =       pc(pc105)+%l[1]%(v[1])
91
92 ! layout[2]     =       symbols
93   *             =       +%l[2]%(v[2]):2
94
95 ! layout[3]     =       symbols
96   *             =       +%l[3]%(v[3]):3
97
98 ! layout[4]     =       symbols
99   *             =       +%l[4]%(v[4]):4
100  
101 ! $inetkbds = airkey acpi scorpius azonaRF2300 \
102               brother \
103               btc5113rf btc5126t btc9000 btc9000a btc9001ah btc5090\
104               cherryblue cherrybluea \
105               chicony chicony9885 \
106               compaqeak8 compaqik7 compaqik13 compaqik18 armada presario ipaq \
107               dell inspiron dtk2000 \
108               dexxa diamond genius geniuscomfy2 \
109               ennyah_dkb1008 \
110               hpi6 hp2501 hp2505 hp5181 hpxe3gc hpxe3gf hpxe4xxx hpzt11xx \
111               hp500fa hp5xx hp5185 \
112               honeywell_euroboard \
113               rapidaccess rapidaccess2 rapidaccess2a \
114               ltcd logiaccess logicdp logicdpa logicink logiciink \
115               logiinkse logiinkseusb logiik itouch \
116               mx1998 mx2500 mx2750 \
117               microsoftinet microsoftpro microsoftprooem microsoftprose \
118               microsoftoffice microsoftmult \
119               oretec \
120               propeller \
121               qtronix \
122               samsung4500 samsung4510 \
123               sk1300 sk2500 sk6200 sk7100 \
124               sven symplon toshiba_s3000 trust trustda yahoo
125
126 ! model         =       symbols
127   $inetkbds     =       +inet(%m)
128
129 ! model         layout  =       compat
130   pc98          nec/jp  =       pc98(basic)
131   *             *       =       complete
132
133 ! model      layout[1]  =       compat
134   *             *       =       complete
135
136 ! model         =       types
137   *             =       complete
138
139 ! option                =       symbols
140   grp:switch            =       +group(switch)
141   grp:lswitch           =       +group(lswitch)
142   grp:win_switch        =       +group(win_switch)
143   grp:lwin_switch       =       +group(lwin_switch)
144   grp:rwin_switch       =       +group(rwin_switch)
145   grp:toggle            =       +group(toggle)
146   grp:shift_toggle      =       +group(shift_toggle)
147   grp:ctrls_toggle      =       +group(ctrls_toggle)
148   grp:alts_toggle       =       +group(alts_toggle)
149   grp:ctrl_shift_toggle =       +group(ctrl_shift_toggle)
150   grp:caps_toggle       =       +group(caps_toggle)
151   grp:shift_caps_toggle =       +group(shift_caps_toggle)
152   grp:ctrl_alt_toggle   =       +group(ctrl_alt_toggle)
153   grp:alt_shift_toggle  =       +group(alt_shift_toggle)
154   grp:menu_toggle       =       +group(menu_toggle)
155   grp:lwin_toggle       =       +group(lwin_toggle)
156   grp:rwin_toggle       =       +group(rwin_toggle)
157   grp:lshift_toggle     =       +group(lshift_toggle)
158   grp:rshift_toggle     =       +group(rshift_toggle)
159   grp:lctrl_toggle      =       +group(lctrl_toggle)
160   grp:rctrl_toggle      =       +group(rctrl_toggle)
161   grp:lalt_toggle       =       +group(lalt_toggle)
162   lv3:switch            =       +level3(switch)
163   lv3:ralt_switch       =       +level3(ralt_switch)
164   lv3:lalt_switch       =       +level3(lalt_switch)
165   lv3:alt_switch        =       +level3(alt_switch)
166   lv3:menu_switch       =       +level3(menu_switch)
167   lv3:win_switch        =       +level3(win_switch)
168   lv3:lwin_switch       =       +level3(lwin_switch)
169   lv3:rwin_switch       =       +level3(rwin_switch)
170   ctrl:nocaps           =       +ctrl(nocaps)
171   ctrl:swapcaps         =       +ctrl(swapcaps)
172   ctrl:ctrl_ac          =       +ctrl(ctrl_ac)
173   ctrl:ctrl_aa          =       +ctrl(ctrl_aa)
174   ctrl:ctrl_ra          =       +ctrl(ctrl_ra)
175   altwin:menu           =       +altwin(menu)
176   altwin:meta_alt       =       +altwin(meta_alt)
177   altwin:meta_win       =       +altwin(meta_win)
178   altwin:left_meta_win  =       +altwin(left_meta_win)
179   altwin:super_win      =       +altwin(super_win)
180   altwin:hyper_win      =       +altwin(hyper_win)
181   compose:ralt          =       +compose(ralt)
182   compose:rwin          =       +compose(rwin)
183   compose:menu          =       +compose(menu)
184   srvrkeys:none         =       +srvr_ctrl(no_srvr_keys)
185
186 ! option                =       compat
187   grp_led:num           =       +leds(num)
188   grp_led:caps          =       +leds(caps)
189   grp_led:scroll        =       +leds(scroll)
190
191 ! option                        =       types
192   caps:internal                 =       +caps(internal)
193   caps:internal_nocancel        =       +caps(internal_nocancel)
194   caps:shift                    =       +caps(shift)
195   caps:shift_nocancel           =       +caps(shift_nocancel)
196   numpad:microsoft              =       +numpad(microsoft)