1// DO NOT EDIT THIS FILE - IT WAS AUTOGENERATED BY merge.py FROM rules/*.part
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//
9
10// If you want non-latin layouts to implicitly include the en_US layout,
11// then uncomment the following lines:
12//! $nonlatin = af am ara bd bg bt by eg et ge gn gr id il in ir \
13//              jp jv kg kh kr kz la lk ma me mk mm mn mv my \
14//              pk rs ru sy th tj tz ua uz
15
16// PC models
17! $pcmodels = pc86 pc101 pc102 pc104 pc104alt pc105
18
19// Jolla devices and keyboards
20! $jollamodels = jollasbj
21
22// Microsoft models (using MS geometry)
23! $msmodels = microsoft microsoft4000 microsoft7000 microsoftpro microsoftprousb microsoftprose microsoftsurface
24
25// Nokia devices and keyboards
26! $nokiamodels = nokiasu8w nokiarx44 nokiarx51
27
28// TypeMatrix geometries
29! $tmgeometries = tm2020 tm2030PS2 tm2030USB tm2030USB-102 tm2030USB-106
30
31// Layouts that provide further specializations for the OLPC
32! $olpclayouts = af am ara br ca es et fr it kh kz in mn np ru th tr us
33
34! $macbooks = macbook78 macbook79
35! $maclaptop = ibook powerbook macbook78 macbook79
36! $applealu = applealu_ansi applealu_iso applealu_jis
37! $macs = macintosh macintosh_old ibook powerbook macbook78 macbook79
38
39! $macvendorlayouts = ch de dk fi fr gb is it latam nl no pt se us
40
41// The countries that predominantly have AZERTY or QWERTZ layouts:
42! $azerty = be fr
43! $qwertz = al ch cz de hr hu ro si sk
44
45! $thinkpads = thinkpad thinkpad60 thinkpadz60
46
47! $sun = sun_type6_jp sun_type6_usb sun_type6_euro_usb \
48         sun_type6_jp_usb sun_type6_unix_usb sun_type7_jp_usb \
49         sun_type7_usb sun_type7_euro_usb sun_type7_unix_usb
50
51! $sun_jp = sun_type6_jp sun_type6_jp_usb sun_type7_jp_usb
52
53// Sun Type_6_7 keyboards with custom layouts
54! $sun_custom = ara be br ca ch cz de dk \
55                ee es fi fr gb gr it jp \
56                kr lt lv nl no pl pt ro \
57                ru se sk tr tw ua us
58
59! $sun_var =  sun_type6 sun_type6_suncompat sun_type6_de sun_type6_fr \
60              sun_type7 sun_type7_suncompat suncompat
61
62! $sun_compat = sun_type6 sun_type6_suncompat sun_type7_suncompat suncompat
63
64
65! $inetkbds = acer_c300 acer_ferrari4k acer_laptop \
66              airkey apex300 \
67              apple armada azonaRF2300 \
68              benqx brother \
69              btc5113rf btc9000 btc9000a btc9001ah btc5090 btc9019u \
70              cherryblue cherrybluea cherryblueb \
71              cherrycyboard cherrycmexpert \
72              chicony chicony0108 chicony0420 chicony9885 \
73              compalfl90 \
74              compaqeak8 compaqik7 compaqik13 compaqik18 \
75              creativedw7000 \
76              cymotionlinux \
77              dell dellm65 dellusbmm \
78              emachines ennyah_dkb1008 evdev \
79              genius geniuscomfy2 \
80              gyration honeywell_euroboard \
81              hp250x hp5xx hp500fa hpdv5 \
82              hpi6 hpxe3gc hpxe3gf hpxe4xxx hpxt1000 hpzt11xx \
83              ibm_spacesaver inspiron intel ipaq itouch \
84              logiaccess logicda logicink logiclx300 \
85              logidinovo logidinovoedge logiex110 \
86              logiik logiinkse logiinkseusb logiitc \
87              logitech_base logitech_g15 logiultrax \
88              microsoft4000 microsoft7000 microsoftinet microsoftmult \
89              microsoftoffice microsoftprooem microsoftprose microsoftprousb \
90              mx1998 mx2500 mx2750 \
91              oretec \
92              pc105 ppkb presario propeller \
93              qtronix \
94              rapidaccess rapidaccess2 \
95              samsung4500 samsung4510 \
96              silvercrest \
97              sk1300 sk2500 sk6200 sk7100 \
98              sven sven303 symplon \
99              teck227 teck229 thinkpad60 \
100              toshiba_s3000 trust trustda \
101              unitekkb1925 yahoo
102
103! $inetmediakbds = \
104                    a4_rfkb23 a4techKB21 a4techKBS8 acer_ferrari4k acer_laptop \
105                    armada asus_laptop benqx btc5090 btc6301urf btc9019u \
106                    cherrybluea cherryblueb cherrycyboard chicony042 \
107                    compalfl90 compaqik13 compaqik18 creativedw7000 \
108                    cymotionlinux dellm65 dellusbmm dexxa diamond dtk2000 \
109                    emachines ennyah_dkb1008 fscaa1667g genius geniuscomfy \
110                    geniuscomfy2 geniuskb19e hp5xx hpdv5 hpi6 hpxe3gc hpxe3gf \
111                    hpxe4xxx hpxt1000 hpzt11xx inspiron latitude \
112                    logidinovo logidinovoedge logitech_base logitech_g15 \
113                    microsoft4000 microsoft7000 microsoftmult microsoftpro \
114                    microsoftprooem mx1998 mx2500 mx2750 pc105 precision_m \
115                    presario propeller samsung4500 samsung4510 scorpius \
116                    silvercrest sk1300 sk2500 sk7100 sp_inet targa_v811 \
117                    thinkpad thinkpad60 tm2030USB-102 tm2030USB-106 \
118                    toshiba_s3000 trust trustda trust_slimline unitekkb1925
119
120! model             =         keycodes
121  amiga             =         amiga(de)
122  ataritt =         ataritt(de)
123  empty             =         empty
124 $sun_jp  =         sun(type6_jp_usb)
125 $sun               =         sun(type6_usb)
126  pc98              =         xfree98(pc98)
127 $applealu          =         macintosh(alukbd)
128  macintosh_hhk     =         macintosh(hhk)
129  macintosh_old     =         macintosh(old)
130 $macs              =         macintosh
131  thinkpadz60       =         xfree86(thinkpadz60)
132  *                 =         xfree86
133
134! layout[1]         =         keycodes
135  $azerty       =       +aliases(azerty)
136  $qwertz       =       +aliases(qwertz)
137  *             =       +aliases(qwerty)
138
139! layout  =         keycodes
140  $azerty       =       +aliases(azerty)
141  $qwertz       =       +aliases(qwertz)
142  *             =       +aliases(qwerty)
143
144! option  =         keycodes
145
146! model             layout    =         geometry
147  thinkpad          us        =         thinkpad(us)
148
149! model             =         geometry
150  microsoftelite    =         microsoft(elite)
151 $msmodels          =         microsoft(natural)
152  dell101 =         dell(dell101)
153  dellm65 =         dell(dellm65)
154  latitude          =         dell(latitude)
155  flexpro =         keytronic(FlexPro)
156  hp6000  =         hp(omnibook)
157  hpmini110         =         hp(mini110)
158  hpdv5             =         hp(dv5)
159  omnikey101        =         northgate(omnikey101)
160  sanwaskbkg3       =         sanwa(sanwaskbkg3)
161 $pcmodels          =         pc(%m)
162  everex  =         everex(STEPnote)
163  thinkpad          =         thinkpad(intl)
164  thinkpad60        =         thinkpad(60)
165  thinkpadz60       =         thinkpad(60)
166  apex300 =         steelseries(apex300)
167 $tmgeometries      =         typematrix(%m)
168  winbook =         winbook(XP5)
169  pc98              =         nec(pc98)
170 $applealu          =         macintosh(%m)
171 $macbooks      =       macintosh(%m)
172 $macs              =         macintosh(macintosh)
173  hhk               =         hhk(basic)
174  kinesis =         kinesis(model100)
175 $nokiamodels       =         nokia(%m)
176  sun_type6_jp          =   sun(type6jp)
177  sun_type6_usb         =   sun(type6)
178  sun_type6_euro_usb    =   sun(type6tuv)
179  sun_type6_jp_usb      =   sun(type6jp)
180  sun_type6_unix_usb    =   sun(type6unix)
181  sun_type7_jp_usb      =   sun(type6jp)
182  sun_type7_usb         =   sun(type7)
183  sun_type7_euro_usb    =   sun(type7tuv)
184  sun_type7_unix_usb    =   sun(type7unix)
185  *                 =       pc(pc104)
186
187! model             layout              variant             =         symbols
188  *                 ben                 basic               =         pc+in(ben)
189  *                 ben                 probhat             =         pc+in(ben_probhat)
190  *                 dev                 basic               =         pc+in(deva)
191  *                 dzdwi               basic               =         pc+bt(basic)
192  *                 fi                  basic               =         pc+fi(classic)
193  *                 ge                  azerty_tskapo                 =         pc+fr(geo)
194  *                 guj                 basic               =         pc+in(guj)
195  *                 gur                 basic               =         pc+in(guru)
196  *                 ie                  laptop              =         pc+ie(basic)
197  *                 ie                  CloGaelachLaptop              =         pc+ie(CloGaelach)
198  *                 in                  urd                 =         pc+in(urd-phonetic)
199  *                 iu                  basic               =         pc+ca(ike)
200  *                 lo                  basic               =         pc+la(basic)
201  *                 kan                 basic               =         pc+in(kan)
202  *                 mal                 basic               =         pc+in(mal)
203  *                 mal                 mlplusnum           =         pc+in(mal)
204  *                 ogham               basic               =         pc+ie(ogam)
205  *                 ogham               laptop              =         pc+ie(ogam)
206  *                 ogham               is434               =         pc+ie(ogam_is434)
207  *                 ogham               is434laptop                   =         pc+ie(ogam_is434)
208  *                 ori                 basic               =         pc+in(ori)
209  *                 ro                  de                  =         pc+ro(winkeys)
210  *                 ro                  us                  =         pc+ro(std)
211  *                 ro                  academic            =         pc+ro(std)
212  *                 ro                  std_comma           =         pc+ro(std)
213  *                 ro                  comma               =         pc+ro(basic)
214  *                 ru                  os                  =         pc+ru(os_legacy)
215  *                 pk                  urd                 =         pc+pk(urd-phonetic)
216  *                 sapmi               basic               =         pc+no(smi)
217  *                 sapmi               nodeadkeys                    =         pc+no(smi_nodeadkeys)
218  *                 sapmi               sefi                =         pc+fi(smi)
219  *                 sin                 phonetic-static               =         pc+in(sin_phonetic)
220  *                 syr                 basic               =         pc+sy(syc)
221  *                 syr                 phonetic            =         pc+sy(syc_phonetic)
222  *                 tam                 INSCRIPT            =         pc+in(tam)
223  *                 tel                 basic               =         pc+in(tel)
224  classmate         us                  intl                =         pc+us(classmate-intl)
225  classmate         us                  alt-intl  =         pc+us(classmate-alt-intl)
226  classmate         us                  altgr-intl          =         pc+us(classmate-altgr-intl)
227  nokiarx51         cz                  qwerty              =         nokia_vndr/rx-51(cz_qwerty)
228  *                 $sun_custom         $sun_var  =         pc+sun_vndr/%l%(v)
229
230! model             layout                                  =         symbols
231  *                 ar                            =         pc+ara
232  *                 ben                           =         pc+in(ben)
233  *                 bs                            =         pc+ba
234  *                 dev                           =         pc+in(deva)
235  *                 dvorak                        =         pc+us(dvorak)
236  *                 dzdwi                         =         pc+bt
237  *                 el                            =         pc+gr
238  *                 en_US                         =         pc+latin
239  *                 guj                           =         pc+in(guj)
240  *                 gur                           =         pc+in(guru)
241  *                 iu                            =         pc+ca(ike)
242  *                 lo                            =         pc+la
243  *                 kan                           =         pc+in(kan)
244  *                 mi                            =         pc+mao
245  *                 ogham                         =         pc+ie(ogam)
246  *                 ori                           =         pc+in(ori)
247  *                 sapmi                         =         pc+no(smi)
248  *                 syr                           =         pc+sy(syc)
249  *                 tel                           =         pc+in(tel)
250  *                 tml                           =         pc+in(tam)
251  *                 us_intl                       =         pc+us(alt-intl)
252  *                 ben(basic)                              =         pc+in(ben)
253  *                 ben(probhat)                            =         pc+in(ben_probhat)
254  *                 dev(basic)                              =         pc+in(deva)
255  *                 dzdwi(basic)                            =         pc+bt(basic)
256  *                 fi(basic)                     =         pc+fi(classic)
257  *                 ge(azerty_tskapo)                       =         pc+fr(geo)
258  *                 guj(basic)                              =         pc+in(guj)
259  *                 gur(basic)                              =         pc+in(guru)
260  *                 ie(laptop)                              =         pc+ie(basic)
261  *                 ie(CloGaelachLaptop)                              =         pc+ie(CloGaelach)
262  *                 in(urd)                       =         pc+in(urd-phonetic)
263  *                 iu(basic)                     =         pc+ca(ike)
264  *                 lo(basic)                     =         pc+la(basic)
265  *                 kan(basic)                              =         pc+in(kan)
266  *                 mal(basic)                              =         pc+in(mal)
267  *                 mal(mlplusnum)                          =         pc+in(mal)
268  *                 ogham(basic)                            =         pc+ie(ogam)
269  *                 ogham(laptop)                           =         pc+ie(ogam)
270  *                 ogham(is434)                            =         pc+ie(ogam_is434)
271  *                 ogham(is434laptop)                      =         pc+ie(ogam_is434)
272  *                 ori(basic)                              =         pc+in(ori)
273  *                 ro(de)                        =         pc+ro(winkeys)
274  *                 ro(us)                        =         pc+ro(std)
275  *                 ro(academic)                            =         pc+ro(std)
276  *                 ro(std_comma)                           =         pc+ro(std)
277  *                 ro(comma)                     =         pc+ro(basic)
278  *                 ru(os)                        =         pc+ru(os_legacy)
279  *                 pk(urd)                       =         pc+pk(urd-phonetic)
280  *                 sapmi(basic)                            =         pc+no(smi)
281  *                 sapmi(nodeadkeys)                       =         pc+no(smi_nodeadkeys)
282  *                 sapmi(sefi)                             =         pc+fi(smi)
283  *                 sin(phonetic-static)                              =         pc+in(sin_phonetic)
284  *                 syr(basic)                              =         pc+sy(syc)
285  *                 syr(phonetic)                           =         pc+sy(syc_phonetic)
286  *                 tam(INSCRIPT)                           =         pc+in(tam)
287  *                 tel(basic)                              =         pc+in(tel)
288
289! model             layout                        =         symbols
290  ataritt $nonlatin           =         xfree68_vndr/ataritt(us)+%l%(v):2
291  ataritt *                             =         xfree68_vndr/ataritt(us)+%l%(v)
292  amiga             $nonlatin           =         xfree68_vndr/amiga(usa1)+%l%(v):2
293  amiga             *                             =         xfree68_vndr/amiga(usa1)+%l%(v)
294  classmate         us                            =         pc+%l(classmate)
295  empty             *                             =         empty(basic)
296  *                 empty                         =         empty(basic)
297  jollasbj          $nonlatin           =         jolla_vndr/sbj(common)+us+%l%(v):2
298  jollasbj          *                             =         jolla_vndr/sbj(common)+%l%(v)
299 $sun               $sun_custom                   =         pc+sun_vndr/%l%(v)
300  pc98              nec_vndr/jp                   =         nec_vndr/jp(pc98)
301  macintosh_old     us                            =         macintosh_vndr/us(oldmac)
302  macintosh_old     en_US                         =         macintosh_vndr/us(oldmac)
303  macintosh_old     $macvendorlayouts   =         macintosh_vndr/us(oldmac)+macintosh_vndr/%l%(v)
304  macintosh_old     $nonlatin           =         macintosh_vndr/us(oldmac)+%l%(v):2
305  macintosh_old     *                             =         macintosh_vndr/us(oldmac)+%l%(v)
306  applealu_jis      jp                            =         macintosh_vndr/apple(alukbd)+macintosh_vndr/jp(usmac)+macintosh_vndr/jp(mac):2
307  applealu_jis      *                             =         macintosh_vndr/apple(alukbd)+%l%(v)+macintosh_vndr/jp(mac):2
308 $applealu          $macvendorlayouts   =         macintosh_vndr/apple(alukbd)+macintosh_vndr/%l%(v)
309 $applealu          *                             =         macintosh_vndr/apple(alukbd)+%l%(v)
310 $macs              en_US                         =         pc+macintosh_vndr/us(extended)
311 $macs              $macvendorlayouts   =         pc+macintosh_vndr/%l%(v)
312  nokiarx44         *                             =         nokia_vndr/rx-44(%l)
313  nokiarx51         cz(qwerty)                    =         nokia_vndr/rx-51(common)+nokia_vndr/rx-51(cz_qwerty)
314  nokiarx51         *                             =         nokia_vndr/rx-51(common)+nokia_vndr/rx-51(%l%_v)
315  nokiasu8w         *                             =         nokia_vndr/su-8w(%l)
316  olpc              $olpclayouts                  =         olpc+%l%(m)
317  olpc              *                             =         olpc+%l%(v)
318  olpcm             $olpclayouts                  =         olpc+%l%(m)
319  olpcm             *                             =         olpc+%l%(v)
320 $thinkpads         br                            =         pc+br(thinkpad)
321  sl-c3x00          *                             =         pc+sharp_vndr/sl-c3x00(basic)
322  ws003sh *                             =         pc+sharp_vndr/ws003sh(basic)
323  ws007sh *                             =         pc+sharp_vndr/ws007sh(basic)
324  ws011sh *                             =         pc+sharp_vndr/ws011sh(basic)
325  ws020sh *                             =         pc+sharp_vndr/ws020sh(basic)
326  *                 $nonlatin           =         pc+us+%l%(v):2
327  *                 *                             =         pc+%l%(v)
328
329! model             layout[1] =         symbols
330  *                 ar                  =         pc+ara%(v[1])
331  *                 ben                 =         pc+in(ben)
332  *                 bs                  =         pc+ba%(v[1])
333  *                 dev                 =         pc+in(deva)
334  *                 dvorak              =         pc+us(dvorak)
335  *                 dzdwi               =         pc+bt%(v[1])
336  *                 el                  =         pc+gr%(v[1])
337  *                 en_US               =         pc+latin%(v[1])
338  *                 guj                 =         pc+in(guj)
339  *                 gur                 =         pc+in(guru)
340  *                 iu                  =         pc+ca(ike)
341  *                 lo                  =         pc+la%(v[1])
342  *                 kan                 =         pc+in(kan)
343  *                 mi                  =         pc+mao%(v[1])
344  *                 ogham               =         pc+ie(ogam)
345  *                 ori                 =         pc+in(ori)
346  *                 sapmi               =         pc+no(smi)
347  *                 syr                 =         pc+sy(syc)
348  *                 tel                 =         pc+in(tel)
349  *                 tml                 =         pc+in(tam)
350  *                 us_intl             =         pc+us(alt-intl)
351  *                 ben(basic)                    =         pc+in(ben)
352  *                 ben(probhat)                  =         pc+in(ben_probhat)
353  *                 dev(basic)                    =         pc+in(deva)
354  *                 dzdwi(basic)                  =         pc+bt(basic)
355  *                 fi(basic)           =         pc+fi(classic)
356  *                 ge(azerty_tskapo)             =         pc+fr(geo)
357  *                 guj(basic)                    =         pc+in(guj)
358  *                 gur(basic)                    =         pc+in(guru)
359  *                 ie(laptop)                    =         pc+ie(basic)
360  *                 ie(CloGaelachLaptop)                    =         pc+ie(CloGaelach)
361  *                 in(urd)             =         pc+in(urd-phonetic)
362  *                 iu(basic)           =         pc+ca(ike)
363  *                 lo(basic)           =         pc+la(basic)
364  *                 kan(basic)                    =         pc+in(kan)
365  *                 mal(basic)                    =         pc+in(mal)
366  *                 mal(mlplusnum)                =         pc+in(mal)
367  *                 ogham(basic)                  =         pc+ie(ogam)
368  *                 ogham(laptop)                 =         pc+ie(ogam)
369  *                 ogham(is434)                  =         pc+ie(ogam_is434)
370  *                 ogham(is434laptop)            =         pc+ie(ogam_is434)
371  *                 ori(basic)                    =         pc+in(ori)
372  *                 ro(de)              =         pc+ro(winkeys)
373  *                 ro(us)              =         pc+ro(std)
374  *                 ro(academic)                  =         pc+ro(std)
375  *                 ro(std_comma)                 =         pc+ro(std)
376  *                 ro(comma)           =         pc+ro(basic)
377  *                 ru(os)              =         pc+ru(os_legacy)
378  *                 pk(urd)             =         pc+pk(urd-phonetic)
379  *                 sapmi(basic)                  =         pc+no(smi)
380  *                 sapmi(nodeadkeys)             =         pc+no(smi_nodeadkeys)
381  *                 sapmi(sefi)                   =         pc+fi(smi)
382  *                 sin(phonetic-static)                    =         pc+in(sin_phonetic)
383  *                 syr(basic)                    =         pc+sy(syc)
384  *                 syr(phonetic)                 =         pc+sy(syc_phonetic)
385  *                 tam(INSCRIPT)                 =         pc+in(tam)
386  *                 tel(basic)                    =         pc+in(tel)
387
388! model             layout[1]           =         symbols
389  ataritt *                             =         xfree68_vndr/ataritt(us)+%l[1]%(v[1])
390  amiga             *                             =         xfree68_vndr/amiga(usa1)+%l[1]%(v[1])
391  jollasbj          *                             =         jolla_vndr/sbj(common)+%l[1]%(v[1])
392 $sun               $sun_custom                   =         pc+sun_vndr/%l[1]%(v[1])
393  macintosh_old     us                            =         macintosh_vndr/us(oldmac)
394  macintosh_old     $macvendorlayouts   =         macintosh_vndr/us(oldmac)+macintosh_vndr/%l[1]%(v[1])
395  macintosh_old     *                             =         macintosh_vndr/us(oldmac)+%l[1]%(v[1])
396  applealu_jis      us                            =         macintosh_vndr/apple(alukbd)+macintosh_vndr/jp(usmac)
397 $applealu          $macvendorlayouts   =         macintosh_vndr/apple(alukbd)+macintosh_vndr/%l[1]%(v[1])
398 $applealu          *                             =         macintosh_vndr/apple(alukbd)+%l[1]%(v[1])
399 $macs              $macvendorlayouts   =         pc+macintosh_vndr/%l[1]%(v[1])
400  nokiarx51         cz(qwerty)                    =         nokia_vndr/rx-51(common)+nokia_vndr/rx-51(cz_qwerty)
401  nokiarx51         *                             =         nokia_vndr/rx-51(common)+nokia_vndr/rx-51(%l[1]%_v[1])
402 $thinkpads         br                            =         pc+%l[1](thinkpad)
403  *                 *                             =         pc+%l[1]%(v[1])
404
405! model             layout[1] variant[1]          =         symbols
406  *                 ben                 basic     =         pc+in(ben)
407  *                 ben                 probhat   =         pc+in(ben_probhat)
408  *                 dev                 basic     =         pc+in(deva)
409  *                 dzdwi               basic     =         pc+bt(basic)
410  *                 fi                  basic     =         pc+fi(classic)
411  *                 ge                  azerty_tskapo       =         pc+fr(geo)
412  *                 guj                 basic     =         pc+in(guj)
413  *                 gur                 basic     =         pc+in(guru)
414  *                 ie                  laptop    =         pc+ie(basic)
415  *                 ie                  CloGaelachLaptop    =         pc+ie(CloGaelach)
416  *                 in                  urd       =         pc+in(urd-phonetic)
417  *                 iu                  basic     =         pc+ca(ike)
418  *                 lo                  basic     =         pc+la(basic)
419  *                 kan                 basic     =         pc+in(kan)
420  *                 mal                 basic     =         pc+in(mal)
421  *                 mal                 mlplusnum =         pc+in(mal)
422  *                 ogham               basic     =         pc+ie(ogam)
423  *                 ogham               laptop    =         pc+ie(ogam)
424  *                 ogham               is434     =         pc+ie(ogam_is434)
425  *                 ogham               is434laptop         =         pc+ie(ogam_is434)
426  *                 ori                 basic     =         pc+in(ori)
427  *                 ro                  de        =         pc+ro(winkeys)
428  *                 ro                  us        =         pc+ro(std)
429  *                 ro                  academic  =         pc+ro(std)
430  *                 ro                  std_comma =         pc+ro(std)
431  *                 ro                  comma     =         pc+ro(basic)
432  *                 ru                  os        =         pc+ru(os_legacy)
433  *                 pk                  urd       =         pc+pk(urd-phonetic)
434  *                 sapmi               basic     =         pc+no(smi)
435  *                 sapmi               nodeadkeys          =         pc+no(smi_nodeadkeys)
436  *                 sapmi               sefi      =         pc+fi(smi)
437  *                 sin                 phonetic-static     =         pc+in(sin_phonetic)
438  *                 syr                 basic     =         pc+sy(syc)
439  *                 syr                 phonetic  =         pc+sy(syc_phonetic)
440  *                 tam                 INSCRIPT  =         pc+in(tam)
441  *                 tel                 basic     =         pc+in(tel)
442
443! model             layout[2] =         symbols
444  *                 ar                  =         +ara%(v[2]):2
445  *                 ben                 =         +in(ben):2
446  *                 bs                  =         +ba%(v[2]):2
447  *                 dev                 =         +in(deva):2
448  *                 dvorak              =         +us(dvorak):2
449  *                 dzdwi               =         +bt%(v[2]):2
450  *                 el                  =         +gr%(v[2]):2
451  *                 en_US               =         +latin%(v[2]):2
452  *                 guj                 =         +in(guj):2
453  *                 gur                 =         +in(guru):2
454  *                 iu                  =         +ca(ike):2
455  *                 lo                  =         +la%(v[2]):2
456  *                 kan                 =         +in(kan):2
457  *                 mi                  =         +mao%(v[2]):2
458  *                 ogham               =         +ie(ogam):2
459  *                 ori                 =         +in(ori):2
460  *                 sapmi               =         +no(smi):2
461  *                 syr                 =         +sy(syc):2
462  *                 tel                 =         +in(tel):2
463  *                 tml                 =         +in(tam):2
464  *                 us_intl             =         +us(alt-intl):2
465  *                 ben(basic)                    =         +in(ben):2
466  *                 ben(probhat)                  =         +in(ben_probhat):2
467  *                 dev(basic)                    =         +in(deva):2
468  *                 dzdwi(basic)                  =         +bt(basic):2
469  *                 fi(basic)           =         +fi(classic):2
470  *                 ge(azerty_tskapo)             =         +fr(geo):2
471  *                 guj(basic)                    =         +in(guj):2
472  *                 gur(basic)                    =         +in(guru):2
473  *                 ie(laptop)                    =         +ie(basic):2
474  *                 ie(CloGaelachLaptop)                    =         +ie(CloGaelach):2
475  *                 in(urd)             =         +in(urd-phonetic):2
476  *                 iu(basic)           =         +ca(ike):2
477  *                 lo(basic)           =         +la(basic):2
478  *                 kan(basic)                    =         +in(kan):2
479  *                 mal(basic)                    =         +in(mal):2
480  *                 mal(mlplusnum)                =         +in(mal):2
481  *                 ogham(basic)                  =         +ie(ogam):2
482  *                 ogham(laptop)                 =         +ie(ogam):2
483  *                 ogham(is434)                  =         +ie(ogam_is434):2
484  *                 ogham(is434laptop)            =         +ie(ogam_is434):2
485  *                 ori(basic)                    =         +in(ori):2
486  *                 ro(de)              =         +ro(winkeys):2
487  *                 ro(us)              =         +ro(std):2
488  *                 ro(academic)                  =         +ro(std):2
489  *                 ro(std_comma)                 =         +ro(std):2
490  *                 ro(comma)           =         +ro(basic):2
491  *                 ru(os)              =         +ru(os_legacy):2
492  *                 pk(urd)             =         +pk(urd-phonetic):2
493  *                 sapmi(basic)                  =         +no(smi):2
494  *                 sapmi(nodeadkeys)             =         +no(smi_nodeadkeys):2
495  *                 sapmi(sefi)                   =         +fi(smi):2
496  *                 sin(phonetic-static)                    =         +in(sin_phonetic):2
497  *                 syr(basic)                    =         +sy(syc):2
498  *                 syr(phonetic)                 =         +sy(syc_phonetic):2
499  *                 tam(INSCRIPT)                 =         +in(tam):2
500  *                 tel(basic)                    =         +in(tel):2
501  nokiarx51         cz(qwerty)          =         +nokia_vndr/rx-51(cz_qwerty):2
502  nokiarx51         *                   =         +nokia_vndr/rx-51(%l[2]%_v[2]):2
503 $sun               $sun_custom         =         +sun_vndr/%l[2]%(v[2]):2
504  *                 *                   =         +%l[2]%(v[2]):2
505
506! model             layout[3] =         symbols
507  *                 ar                  =         +ara%(v[3]):3
508  *                 ben                 =         +in(ben):3
509  *                 bs                  =         +ba%(v[3]):3
510  *                 dev                 =         +in(deva):3
511  *                 dvorak              =         +us(dvorak):3
512  *                 dzdwi               =         +bt%(v[3]):3
513  *                 el                  =         +gr%(v[3]):3
514  *                 en_US               =         +latin%(v[3]):3
515  *                 guj                 =         +in(guj):3
516  *                 gur                 =         +in(guru):3
517  *                 iu                  =         +ca(ike):3
518  *                 lo                  =         +la%(v[3]):3
519  *                 kan                 =         +in(kan):3
520  *                 mi                  =         +mao%(v[3]):3
521  *                 ogham               =         +ie(ogam):3
522  *                 ori                 =         +in(ori):3
523  *                 sapmi               =         +no(smi):3
524  *                 syr                 =         +sy(syc):3
525  *                 tel                 =         +in(tel):3
526  *                 tml                 =         +in(tam):3
527  *                 us_intl             =         +us(alt-intl):3
528  *                 ben(basic)                    =         +in(ben):3
529  *                 ben(probhat)                  =         +in(ben_probhat):3
530  *                 dev(basic)                    =         +in(deva):3
531  *                 dzdwi(basic)                  =         +bt(basic):3
532  *                 fi(basic)           =         +fi(classic):3
533  *                 ge(azerty_tskapo)             =         +fr(geo):3
534  *                 guj(basic)                    =         +in(guj):3
535  *                 gur(basic)                    =         +in(guru):3
536  *                 ie(laptop)                    =         +ie(basic):3
537  *                 ie(CloGaelachLaptop)                    =         +ie(CloGaelach):3
538  *                 in(urd)             =         +in(urd-phonetic):3
539  *                 iu(basic)           =         +ca(ike):3
540  *                 lo(basic)           =         +la(basic):3
541  *                 kan(basic)                    =         +in(kan):3
542  *                 mal(basic)                    =         +in(mal):3
543  *                 mal(mlplusnum)                =         +in(mal):3
544  *                 ogham(basic)                  =         +ie(ogam):3
545  *                 ogham(laptop)                 =         +ie(ogam):3
546  *                 ogham(is434)                  =         +ie(ogam_is434):3
547  *                 ogham(is434laptop)            =         +ie(ogam_is434):3
548  *                 ori(basic)                    =         +in(ori):3
549  *                 ro(de)              =         +ro(winkeys):3
550  *                 ro(us)              =         +ro(std):3
551  *                 ro(academic)                  =         +ro(std):3
552  *                 ro(std_comma)                 =         +ro(std):3
553  *                 ro(comma)           =         +ro(basic):3
554  *                 ru(os)              =         +ru(os_legacy):3
555  *                 pk(urd)             =         +pk(urd-phonetic):3
556  *                 sapmi(basic)                  =         +no(smi):3
557  *                 sapmi(nodeadkeys)             =         +no(smi_nodeadkeys):3
558  *                 sapmi(sefi)                   =         +fi(smi):3
559  *                 sin(phonetic-static)                    =         +in(sin_phonetic):3
560  *                 syr(basic)                    =         +sy(syc):3
561  *                 syr(phonetic)                 =         +sy(syc_phonetic):3
562  *                 tam(INSCRIPT)                 =         +in(tam):3
563  *                 tel(basic)                    =         +in(tel):3
564  nokiarx51         cz(qwerty)          =         +nokia_vndr/rx-51(cz_qwerty):3
565  nokiarx51         *                   =         +nokia_vndr/rx-51(%l[3]%_v[3]):3
566 $sun               $sun_custom         =         +sun_vndr/%l[3]%(v[3]):3
567  *                 *                   =         +%l[3]%(v[3]):3
568
569! model             layout[4] =         symbols
570  *                 ar                  =         +ara%(v[4]):4
571  *                 ben                 =         +in(ben):4
572  *                 bs                  =         +ba%(v[4]):4
573  *                 dev                 =         +in(deva):4
574  *                 dvorak              =         +us(dvorak):4
575  *                 dzdwi               =         +bt%(v[4]):4
576  *                 el                  =         +gr%(v[4]):4
577  *                 en_US               =         +latin%(v[4]):4
578  *                 guj                 =         +in(guj):4
579  *                 gur                 =         +in(guru):4
580  *                 iu                  =         +ca(ike):4
581  *                 lo                  =         +la%(v[4]):4
582  *                 kan                 =         +in(kan):4
583  *                 mi                  =         +mao%(v[4]):4
584  *                 ogham               =         +ie(ogam):4
585  *                 ori                 =         +in(ori):4
586  *                 sapmi               =         +no(smi):4
587  *                 syr                 =         +sy(syc):4
588  *                 tel                 =         +in(tel):4
589  *                 tml                 =         +in(tam):4
590  *                 us_intl             =         +us(alt-intl):4
591  *                 ben(basic)                    =         +in(ben):4
592  *                 ben(probhat)                  =         +in(ben_probhat):4
593  *                 dev(basic)                    =         +in(deva):4
594  *                 dzdwi(basic)                  =         +bt(basic):4
595  *                 fi(basic)           =         +fi(classic):4
596  *                 ge(azerty_tskapo)             =         +fr(geo):4
597  *                 guj(basic)                    =         +in(guj):4
598  *                 gur(basic)                    =         +in(guru):4
599  *                 ie(laptop)                    =         +ie(basic):4
600  *                 ie(CloGaelachLaptop)                    =         +ie(CloGaelach):4
601  *                 in(urd)             =         +in(urd-phonetic):4
602  *                 iu(basic)           =         +ca(ike):4
603  *                 lo(basic)           =         +la(basic):4
604  *                 kan(basic)                    =         +in(kan):4
605  *                 mal(basic)                    =         +in(mal):4
606  *                 mal(mlplusnum)                =         +in(mal):4
607  *                 ogham(basic)                  =         +ie(ogam):4
608  *                 ogham(laptop)                 =         +ie(ogam):4
609  *                 ogham(is434)                  =         +ie(ogam_is434):4
610  *                 ogham(is434laptop)            =         +ie(ogam_is434):4
611  *                 ori(basic)                    =         +in(ori):4
612  *                 ro(de)              =         +ro(winkeys):4
613  *                 ro(us)              =         +ro(std):4
614  *                 ro(academic)                  =         +ro(std):4
615  *                 ro(std_comma)                 =         +ro(std):4
616  *                 ro(comma)           =         +ro(basic):4
617  *                 ru(os)              =         +ru(os_legacy):4
618  *                 pk(urd)             =         +pk(urd-phonetic):4
619  *                 sapmi(basic)                  =         +no(smi):4
620  *                 sapmi(nodeadkeys)             =         +no(smi_nodeadkeys):4
621  *                 sapmi(sefi)                   =         +fi(smi):4
622  *                 sin(phonetic-static)                    =         +in(sin_phonetic):4
623  *                 syr(basic)                    =         +sy(syc):4
624  *                 syr(phonetic)                 =         +sy(syc_phonetic):4
625  *                 tam(INSCRIPT)                 =         +in(tam):4
626  *                 tel(basic)                    =         +in(tel):4
627  nokiarx51         cz(qwerty)          =         +nokia_vndr/rx-51(cz_qwerty):4
628  nokiarx51         *                   =         +nokia_vndr/rx-51(%l[4]%_v[4]):4
629 $sun               $sun_custom         =         +sun_vndr/%l[4]%(v[4]):4
630  *                 *                   =         +%l[4]%(v[4]):4
631
632! model             layout[2] variant[2]          =         symbols
633  *                 ben                 basic     =         +in(ben):2
634  *                 ben                 probhat   =         +in(ben_probhat):2
635  *                 dev                 basic     =         +in(deva):2
636  *                 dzdwi               basic     =         +bt(basic):2
637  *                 fi                  basic     =         +fi(classic):2
638  *                 ge                  azerty_tskapo       =         +fr(geo):2
639  *                 guj                 basic     =         +in(guj):2
640  *                 gur                 basic     =         +in(guru):2
641  *                 ie                  laptop    =         +ie(basic):2
642  *                 ie                  CloGaelachLaptop    =         +ie(CloGaelach):2
643  *                 in                  urd       =         +in(urd-phonetic):2
644  *                 iu                  basic     =         +ca(ike):2
645  *                 lo                  basic     =         +la(basic):2
646  *                 kan                 basic     =         +in(kan):2
647  *                 mal                 basic     =         +in(mal):2
648  *                 mal                 mlplusnum =         +in(mal):2
649  *                 ogham               basic     =         +ie(ogam):2
650  *                 ogham               laptop    =         +ie(ogam):2
651  *                 ogham               is434     =         +ie(ogam_is434):2
652  *                 ogham               is434laptop         =         +ie(ogam_is434):2
653  *                 ori                 basic     =         +in(ori):2
654  *                 ro                  de        =         +ro(winkeys):2
655  *                 ro                  us        =         +ro(std):2
656  *                 ro                  academic  =         +ro(std):2
657  *                 ro                  std_comma =         +ro(std):2
658  *                 ro                  comma     =         +ro(basic):2
659  *                 ru                  os        =         +ru(os_legacy):2
660  *                 pk                  urd       =         +pk(urd-phonetic):2
661  *                 sapmi               basic     =         +no(smi):2
662  *                 sapmi               nodeadkeys          =         +no(smi_nodeadkeys):2
663  *                 sapmi               sefi      =         +fi(smi):2
664  *                 sin                 phonetic-static     =         +in(sin_phonetic):2
665  *                 syr                 basic     =         +sy(syc):2
666  *                 syr                 phonetic  =         +sy(syc_phonetic):2
667  *                 tam                 INSCRIPT  =         +in(tam):2
668  *                 tel                 basic     =         +in(tel):2
669
670! model             layout[3] variant[3]          =         symbols
671  *                 ben                 basic     =         +in(ben):3
672  *                 ben                 probhat   =         +in(ben_probhat):3
673  *                 dev                 basic     =         +in(deva):3
674  *                 dzdwi               basic     =         +bt(basic):3
675  *                 fi                  basic     =         +fi(classic):3
676  *                 ge                  azerty_tskapo       =         +fr(geo):3
677  *                 guj                 basic     =         +in(guj):3
678  *                 gur                 basic     =         +in(guru):3
679  *                 ie                  laptop    =         +ie(basic):3
680  *                 ie                  CloGaelachLaptop    =         +ie(CloGaelach):3
681  *                 in                  urd       =         +in(urd-phonetic):3
682  *                 iu                  basic     =         +ca(ike):3
683  *                 lo                  basic     =         +la(basic):3
684  *                 kan                 basic     =         +in(kan):3
685  *                 mal                 basic     =         +in(mal):3
686  *                 mal                 mlplusnum =         +in(mal):3
687  *                 ogham               basic     =         +ie(ogam):3
688  *                 ogham               laptop    =         +ie(ogam):3
689  *                 ogham               is434     =         +ie(ogam_is434):3
690  *                 ogham               is434laptop         =         +ie(ogam_is434):3
691  *                 ori                 basic     =         +in(ori):3
692  *                 ro                  de        =         +ro(winkeys):3
693  *                 ro                  us        =         +ro(std):3
694  *                 ro                  academic  =         +ro(std):3
695  *                 ro                  std_comma =         +ro(std):3
696  *                 ro                  comma     =         +ro(basic):3
697  *                 ru                  os        =         +ru(os_legacy):3
698  *                 pk                  urd       =         +pk(urd-phonetic):3
699  *                 sapmi               basic     =         +no(smi):3
700  *                 sapmi               nodeadkeys          =         +no(smi_nodeadkeys):3
701  *                 sapmi               sefi      =         +fi(smi):3
702  *                 sin                 phonetic-static     =         +in(sin_phonetic):3
703  *                 syr                 basic     =         +sy(syc):3
704  *                 syr                 phonetic  =         +sy(syc_phonetic):3
705  *                 tam                 INSCRIPT  =         +in(tam):3
706  *                 tel                 basic     =         +in(tel):3
707
708! model             layout[4] variant[4]          =         symbols
709  *                 ben                 basic     =         +in(ben):4
710  *                 ben                 probhat   =         +in(ben_probhat):4
711  *                 dev                 basic     =         +in(deva):4
712  *                 dzdwi               basic     =         +bt(basic):4
713  *                 fi                  basic     =         +fi(classic):4
714  *                 ge                  azerty_tskapo       =         +fr(geo):4
715  *                 guj                 basic     =         +in(guj):4
716  *                 gur                 basic     =         +in(guru):4
717  *                 ie                  laptop    =         +ie(basic):4
718  *                 ie                  CloGaelachLaptop    =         +ie(CloGaelach):4
719  *                 in                  urd       =         +in(urd-phonetic):4
720  *                 iu                  basic     =         +ca(ike):4
721  *                 lo                  basic     =         +la(basic):4
722  *                 kan                 basic     =         +in(kan):4
723  *                 mal                 basic     =         +in(mal):4
724  *                 mal                 mlplusnum =         +in(mal):4
725  *                 ogham               basic     =         +ie(ogam):4
726  *                 ogham               laptop    =         +ie(ogam):4
727  *                 ogham               is434     =         +ie(ogam_is434):4
728  *                 ogham               is434laptop         =         +ie(ogam_is434):4
729  *                 ori                 basic     =         +in(ori):4
730  *                 ro                  de        =         +ro(winkeys):4
731  *                 ro                  us        =         +ro(std):4
732  *                 ro                  academic  =         +ro(std):4
733  *                 ro                  std_comma =         +ro(std):4
734  *                 ro                  comma     =         +ro(basic):4
735  *                 ru                  os        =         +ru(os_legacy):4
736  *                 pk                  urd       =         +pk(urd-phonetic):4
737  *                 sapmi               basic     =         +no(smi):4
738  *                 sapmi               nodeadkeys          =         +no(smi_nodeadkeys):4
739  *                 sapmi               sefi      =         +fi(smi):4
740  *                 sin                 phonetic-static     =         +in(sin_phonetic):4
741  *                 syr                 basic     =         +sy(syc):4
742  *                 syr                 phonetic  =         +sy(syc_phonetic):4
743  *                 tam                 INSCRIPT  =         +in(tam):4
744  *                 tel                 basic     =         +in(tel):4
745
746! model             =         symbols
747  a4techKB21    =       +inet(media_nav_common)
748  a4techKBS8    =       +inet(media_nav_acpi_common)
749  a4_rfkb23     =       +inet(media_nav_acpi_common)
750  asus_laptop   =       +inet(media_common)
751  acer_tm_800   =       +inet(acer_laptop)
752  benqx730      =       +inet(benqx)
753  benqx800      =       +inet(benqx)
754  btc5126t      =       +inet(nav_acpi_common)
755  btc9116u      =       +inet(btc9019u)
756  btc6301urf    =       +inet(media_nav_acpi_common)
757  chromebook    =       +inet(chromebook)
758  dellsk8125    =       +inet(dell)
759  dellsk8135    =       +inet(dell)
760  cherrybunlim  =       +inet(nav_common)
761  dexxa         =       +inet(media_nav_common)
762  dtk2000       =       +inet(media_nav_acpi_common)
763  fscaa1667g    =       +inet(media_nav_common)
764  geniuskb19e   =       +inet(media_nav_acpi_common)
765  geniuscomfy   =       +inet(media_nav_acpi_common)
766  geniuskkb2050hs =     +inet(dellusbmm)
767  hpnx9020      =       +inet(hpi6)
768  latitude      =       +inet(media_common)
769  logicd        =       +inet(logitech_base)
770  logicd_it     =       +inet(logitech_base)
771  logicd_nav    =       +inet(logitech_base)
772  logicd_opt    =       +inet(logitech_base)
773  logiultrax    =       +inet(logitech_base)
774  logiclx300    =       +inet(logiex110)
775  logii350      =       +inet(logiex110)
776  logimel       =       +inet(logiex110)
777  logicdit      =       +inet(logicd)
778  logicdo       =       +inet(logicd)
779  logicdp       =       +inet(logicd)
780  logicdpa      =       +inet(logicda)
781  logiciink     =       +inet(logicink)
782  ltcd          =       +inet(logicda)
783  microsoftccurve2k =   +inet(microsoftprooem)
784  microsoftpro  =       +inet(media_nav_acpi_common)
785  precision_m   =       +inet(media_nav_common)
786  scorpius      =       +inet(media_nav_acpi_common)
787  sp_inet       =       +inet(media_nav_acpi_common)
788  targa_v811    =       +inet(media_nav_acpi_common)
789  thinkpad      =       +inet(media_nav_common)
790  thinkpadz60   =       +inet(thinkpad60)
791  tm2030USB-102 =       +inet(media_nav_acpi_common)
792  tm2030USB-106 =       +inet(media_nav_acpi_common)
793  trust_slimline =      +inet(media_nav_acpi_common)
794  vsonku306     =       +inet(microsoftprooem)
795  $inetkbds     =       +inet(%m)
796  $maclaptop    =       +inet(apple)+level3(enter_switch)
797  $applealu     =       +inet(apple)
798  $macs           =       +inet(apple)
799  sun_type7_jp_usb  =         +sun_vndr/solaris(defaults_type7jp)
800  $sun                        =                   +sun_vndr/solaris(defaults)
801
802! model             layout              =         symbols
803 $inetmediakbds     jp                  =         +jp(henkan)
804
805! layout   variant            = compat
806  de                 neo                          = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
807  de                 adnw                         = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
808  de                 koy                          = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
809  de                 bone                         = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
810  de                 bone_eszett_home   = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
811  de                 neo_qwertz                   = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
812  de                 neo_qwerty                   = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
813  jp                $sun_compat                   = complete+japan(kana_lock)
814
815! layout[1]          variant[1]                   = compat
816  de                 neo                          = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
817  de                 adnw                         = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
818  de                 koy                          = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
819  de                 bone                         = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
820  de                 bone_eszett_home   = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
821  de                 neo_qwertz                   = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
822  de                 neo_qwerty                   = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock)
823  jp                $sun_compat                   = complete+japan(kana_lock)
824
825! layout[2]          variant[2]                   = compat
826  de                 neo                          = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2
827  de                 adnw                         = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2
828  de                 koy                          = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2
829  de                 bone                         = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2
830  de                 bone_eszett_home   = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2
831  de                 neo_qwertz                   = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2
832  de                 neo_qwerty                   = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2
833  jp                $sun_compat                   = +complete+japan(kana_lock):2
834
835! layout[3]          variant[3]                   = compat
836  de                 neo                          = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3
837  de                 adnw                         = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3
838  de                 koy                          = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3
839  de                 bone                         = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3
840  de                 bone_eszett_home   = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3
841  de                 neo_qwertz                   = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3
842  de                 neo_qwerty                   = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3
843  jp                $sun_compat                   = +complete+japan(kana_lock):3
844
845! layout[4]          variant[4]                   = compat
846  de                 neo                          = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4
847  de                 adnw                         = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4
848  de                 koy                          = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4
849  de                 bone                         = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4
850  de                 bone_eszett_home   = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4
851  de                 neo_qwertz                   = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4
852  de                 neo_qwerty                   = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4
853  jp                $sun_compat                   = +complete+japan(kana_lock):4
854
855! model             layout              =         compat
856  pc98              nec_vndr/jp         =         pc98(basic)
857  *                 jp                  =         complete+japan
858  olpc          *               =       olpc
859  olpcm         *               =       olpc
860  *                 *                   =         complete
861
862! model             layout[1] =         compat
863  *                 *                   =         complete
864
865! model             =         types
866  $macs             =         complete+numpad(mac)
867  $applealu         =         complete+numpad(mac)
868  $nokiamodels      =         complete+nokia
869  *                 =         complete
870
871! layout            option                        = symbols
872  *                           grp:toggle                    = +group(toggle)
873  *                           grp:alts_toggle               = +group(alts_toggle)
874  *                           grp:alt_altgr_toggle          = +group(alt_altgr_toggle)
875  *                           grp:alt_space_toggle          = +group(alt_space_toggle)
876  *                           grp:win_space_toggle          = +group(win_space_toggle)
877  *                           grp:ctrl_space_toggle         = +group(ctrl_space_toggle)
878  *                           grp:rctrl_rshift_toggle       = +group(rctrl_rshift_toggle)
879  *                           lv3:ralt_alt                  = +level3(ralt_alt)
880  *                           misc:typo           = +typo(base)
881  *                           misc:apl            = +apl(level3)
882
883! layout[1]                   option                        = symbols
884  *                           grp:toggle                    = +group(toggle):1
885  *                           grp:alts_toggle               = +group(alts_toggle):1
886  *                           grp:alt_altgr_toggle          = +group(alt_altgr_toggle):1
887  *                           grp:alt_space_toggle          = +group(alt_space_toggle):1
888  *                           grp:win_space_toggle          = +group(win_space_toggle):1
889  *                           grp:ctrl_space_toggle         = +group(ctrl_space_toggle):1
890  *                           grp:rctrl_rshift_toggle       = +group(rctrl_rshift_toggle):1
891  *                           lv3:ralt_alt                  = +level3(ralt_alt):1
892  *                           misc:typo           = +typo(base):1
893  *                           misc:apl            = +apl(level3):1
894
895! layout[2]                   option                        = symbols
896  *                           grp:toggle                    = +group(toggle):2
897  *                           grp:alts_toggle               = +group(alts_toggle):2
898  *                           grp:alt_altgr_toggle          = +group(alt_altgr_toggle):2
899  *                           grp:alt_space_toggle          = +group(alt_space_toggle):2
900  *                           grp:win_space_toggle          = +group(win_space_toggle):2
901  *                           grp:ctrl_space_toggle         = +group(ctrl_space_toggle):2
902  *                           grp:rctrl_rshift_toggle       = +group(rctrl_rshift_toggle):2
903  *                           lv3:ralt_alt                  = +level3(ralt_alt):2
904  *                           misc:typo           = +typo(base):2
905  *                           misc:apl            = +apl(level3):2
906
907! layout[3]                   option                        = symbols
908  *                           grp:toggle                    = +group(toggle):3
909  *                           grp:alts_toggle               = +group(alts_toggle):3
910  *                           grp:alt_altgr_toggle          = +group(alt_altgr_toggle):3
911  *                           grp:alt_space_toggle          = +group(alt_space_toggle):3
912  *                           grp:win_space_toggle          = +group(win_space_toggle):3
913  *                           grp:ctrl_space_toggle         = +group(ctrl_space_toggle):3
914  *                           grp:rctrl_rshift_toggle       = +group(rctrl_rshift_toggle):3
915  *                           lv3:ralt_alt                  = +level3(ralt_alt):3
916  *                           misc:typo           = +typo(base):3
917  *                           misc:apl            = +apl(level3):3
918
919! layout[4]                   option                        = symbols
920  *                           grp:toggle                    = +group(toggle):4
921  *                           grp:alts_toggle               = +group(alts_toggle):4
922  *                           grp:alt_altgr_toggle          = +group(alt_altgr_toggle):4
923  *                           grp:alt_space_toggle          = +group(alt_space_toggle):4
924  *                           grp:win_space_toggle          = +group(win_space_toggle):4
925  *                           grp:ctrl_space_toggle         = +group(ctrl_space_toggle):4
926  *                           grp:rctrl_rshift_toggle       = +group(rctrl_rshift_toggle):4
927  *                           lv3:ralt_alt                  = +level3(ralt_alt):4
928  *                           misc:typo           = +typo(base):4
929  *                           misc:apl            = +apl(level3):4
930
931! option                      = symbols
932  grp:shift_caps_switch                 = +group(caps_select)
933  grp:win_menu_switch                   = +group(win_menu_select)
934  grp:lctrl_rctrl_switch      = +group(ctrl_select)
935//  Delete the above three aliases in July 2027.
936  ctrl:swapcaps_hyper                      = +ctrl(hyper_capscontrol)
937  ctrl:swapcaps_and_switch_layout  = +ctrl(swapcaps)+group(lctrl_toggle)
938//  Delete the above two aliases in September 2027.
939
940! option            =         symbols
941  altwin:menu                 =         +altwin(menu)
942  altwin:menu_win   =         +altwin(menu_win)
943  altwin:meta_alt   =         +altwin(meta_alt)
944  altwin:alt_win    =         +altwin(alt_win)
945  altwin:ctrl_win   =         +altwin(ctrl_win)
946  altwin:ctrl_rwin  =         +altwin(ctrl_rwin)
947  altwin:ctrl_alt_win         =         +altwin(ctrl_alt_win)
948  altwin:meta_win   =         +altwin(meta_win)
949  altwin:left_meta_win        =         +altwin(left_meta_win)
950  altwin:hyper_win  =         +altwin(hyper_win)
951  altwin:alt_super_win        =         +altwin(alt_super_win)
952  altwin:swap_lalt_lwin       =         +altwin(swap_lalt_lwin)
953  altwin:swap_alt_win         =         +altwin(swap_alt_win)
954  altwin:prtsc_rwin =         +altwin(prtsc_rwin)
955  grab:debug                  =         +srvr_ctrl(grab_debug)
956  grp:switch                  =         +group(switch)
957  grp:lswitch                 =         +group(lswitch)
958  grp:win_switch    =         +group(win_switch)
959  grp:lwin_switch   =         +group(lwin_switch)
960  grp:rwin_switch   =         +group(rwin_switch)
961  grp:menu_switch   =         +group(menu_switch)
962  grp:caps_switch   =         +group(caps_switch)
963  grp:shifts_toggle =         +group(shifts_toggle)
964  grp:ctrls_toggle  =         +group(ctrls_toggle)
965  grp:caps_toggle   =         +group(caps_toggle)
966  grp:shift_caps_toggle       =         +group(shift_caps_toggle)
967  grp:caps_select   =         +group(caps_select)
968  grp:win_menu_select         =         +group(win_menu_select)
969  grp:ctrl_select   =         +group(ctrl_select)
970  grp:alt_caps_toggle         =         +group(alt_caps_toggle)
971  grp:menu_toggle   =         +group(menu_toggle)
972  grp:lwin_toggle   =         +group(lwin_toggle)
973  grp:rwin_toggle   =         +group(rwin_toggle)
974  grp:lshift_toggle =         +group(lshift_toggle)
975  grp:rshift_toggle =         +group(rshift_toggle)
976  grp:rctrl_switch  =         +group(rctrl_switch)
977  grp:lctrl_toggle  =         +group(lctrl_toggle)
978  grp:rctrl_toggle  =         +group(rctrl_toggle)
979  grp:lalt_toggle   =         +group(lalt_toggle)
980  grp:sclk_toggle   =         +group(sclk_toggle)
981  grp:lctrl_lwin_rctrl_menu   =         +group(lctrl_lwin_rctrl_menu)
982  grp:lctrl_lalt_toggle                 =         +group(lctrl_lalt_toggle)
983  grp:rctrl_ralt_toggle                 =         +group(rctrl_ralt_toggle)
984  grp:ctrl_alt_toggle                   =         +group(ctrl_alt_toggle)
985  grp:ctrl_alt_toggle_bidir   =         +group(ctrl_alt_toggle_bidir)
986  grp:lctrl_lshift_toggle     =         +group(lctrl_lshift_toggle)
987  grp:ctrl_shift_toggle                 =         +group(ctrl_shift_toggle)
988  grp:ctrl_shift_toggle_bidir =         +group(ctrl_shift_toggle_bidir)
989  grp:lalt_lshift_toggle      =         +group(lalt_lshift_toggle)
990  grp:ralt_rshift_toggle      =         +group(ralt_rshift_toggle)
991  grp:alt_shift_toggle                  =         +group(alt_shift_toggle)
992  grp:alt_shift_toggle_bidir  =         +group(alt_shift_toggle_bidir)
993  grp:lctrl_lwin_toggle                 =         +group(lctrl_lwin_toggle)
994  lv3:switch                  =         +level3(switch)
995  lv3:ralt_switch   =         +level3(ralt_switch)
996  lv3:ralt_switch_multikey    =         +level3(ralt_switch_multikey)
997  lv3:lalt_switch   =         +level3(lalt_switch)
998  lv3:alt_switch    =         +level3(alt_switch)
999  lv3:menu_switch   =         +level3(menu_switch)
1000  lv3:win_switch    =         +level3(win_switch)
1001  lv3:lwin_switch   =         +level3(lwin_switch)
1002  lv3:rwin_switch   =         +level3(rwin_switch)
1003  lv3:enter_switch  =         +level3(enter_switch)
1004  lv3:4_switch_isolated       =         +level3(4_switch_isolated)
1005  lv3:9_switch_isolated       =         +level3(9_switch_isolated)
1006  caps:capslock               =         +capslock(capslock)
1007  caps:numlock                =         +capslock(numlock)
1008  caps:shiftlock    =         +capslock(shiftlock)
1009  caps:swapescape   =         +capslock(swapescape)
1010  caps:escape                 =         +capslock(escape)
1011  caps:escape_shifted_capslock          =         +capslock(escape_shifted_capslock)
1012  caps:escape_shifted_compose =         +capslock(escape_shifted_compose)
1013  caps:backspace    =         +capslock(backspace)
1014  caps:super                  =         +capslock(super)
1015  caps:hyper                  =         +capslock(hyper)
1016  caps:menu                   =         +capslock(menu)
1017  caps:none                   =         +capslock(none)
1018  caps:ctrl_modifier          =         +capslock(ctrl_modifier)
1019  ctrl:nocaps                 =         +ctrl(nocaps)
1020  ctrl:lctrl_meta   =         +ctrl(lctrl_meta)
1021  ctrl:swapcaps               =         +ctrl(swapcaps)
1022  ctrl:hyper_capscontrol      =         +ctrl(hyper_capscontrol)
1023  ctrl:grouptoggle_capscontrol          =         +ctrl(swapcaps)+group(lctrl_toggle)
1024  ctrl:ac_ctrl                =         +ctrl(ac_ctrl)
1025  ctrl:aa_ctrl                =         +ctrl(aa_ctrl)
1026  ctrl:rctrl_ralt   =         +ctrl(rctrl_ralt)
1027  ctrl:menu_rctrl   =         +ctrl(menu_rctrl)
1028  ctrl:ralt_rctrl   =         +ctrl(ralt_rctrl)
1029  ctrl:swap_lalt_lctl         =         +ctrl(swap_lalt_lctl)
1030  ctrl:swap_ralt_rctl         =         +ctrl(swap_ralt_rctl)
1031  ctrl:swap_lwin_lctl         =         +ctrl(swap_lwin_lctl)
1032  ctrl:swap_rwin_rctl         =         +ctrl(swap_rwin_rctl)
1033  ctrl:swap_lalt_lctl_lwin  = +ctrl(swap_lalt_lctl_lwin)
1034  compose:ralt                =         +compose(ralt)
1035  compose:lwin                =         +compose(lwin)
1036  compose:lwin-altgr          =         +compose(lwin-altgr)
1037  compose:rwin                =         +compose(rwin)
1038  compose:rwin-altgr          =         +compose(rwin-altgr)
1039  compose:menu                =         +compose(menu)
1040  compose:menu-altgr          =         +compose(menu-altgr)
1041  compose:lctrl               =         +compose(lctrl)
1042  compose:lctrl-altgr         =         +compose(lctrl-altgr)
1043  compose:rctrl               =         +compose(rctrl)
1044  compose:rctrl-altgr         =         +compose(rctrl-altgr)
1045  compose:caps                =         +compose(caps)
1046  compose:caps-altgr          =         +compose(caps-altgr)
1047  compose:102                 =         +compose(102)
1048  compose:102-altgr =         +compose(102-altgr)
1049  compose:ins                 =         +compose(ins)
1050  compose:paus                =         +compose(paus)
1051  compose:prsc                =         +compose(prsc)
1052  compose:sclk                =         +compose(sclk)
1053  srvrkeys:none               =         +srvr_ctrl(no_srvr_keys)
1054  eurosign:e                  =         +eurosign(e)
1055  eurosign:2                  =         +eurosign(2)
1056  eurosign:4                  =         +eurosign(4)
1057  eurosign:5                  =         +eurosign(5)
1058  rupeesign:4                 =         +rupeesign(4)
1059  keypad:oss                  =         +keypad(oss)
1060  keypad:legacy         =     +keypad(legacy)
1061  keypad:legacy_wang    =     +keypad(legacy_wang)
1062  keypad:oss_wang       =     +keypad(oss_wang)
1063  keypad:future         =     +keypad(future)
1064  keypad:future_wang    =     +keypad(future_wang)
1065  keypad:hex            =     +keypad(ops)+keypad(hex)
1066  keypad:atm            =     +keypad(ops)+keypad(hex)+keypad(atm)
1067  nbsp:none             =     +nbsp(none)
1068  nbsp:level2           =     +nbsp(level2)
1069  nbsp:level3           =     +nbsp(level3)
1070  nbsp:level3n          =     +nbsp(level3n)
1071  nbsp:level4           =     +nbsp(level4)
1072  nbsp:level4n          =     +nbsp(level4n)
1073  nbsp:level4nl         =     +nbsp(level4nl)
1074  nbsp:zwnj2            =     +nbsp(zwnj2)
1075  nbsp:zwnj2zwj3        =     +nbsp(zwnj2zwj3)
1076  nbsp:zwnj2zwj3nb4     =     +nbsp(zwnj2zwj3nb4)
1077  nbsp:zwnj2nb3         =     +nbsp(zwnj2nb3)
1078  nbsp:zwnj2nb3zwj4     =     +nbsp(zwnj2nb3zwj4)
1079  nbsp:zwnj2nb3nnb4     =     +nbsp(zwnj2nb3nnb4)
1080  nbsp:zwnj3zwj4        =     +nbsp(zwnj3zwj4)
1081  japan:nicola_f_bs     =     +jp(nicola_f_bs)
1082  japan:hztg_escape     =     +jp(hztg_escape)
1083  korean:ralt_hangul          =         +kr(ralt_hangul)
1084  korean:rctrl_hangul         =         +kr(rctrl_hangul)
1085  korean:ralt_hanja =         +kr(ralt_hanja)
1086  korean:rctrl_hanja          =         +kr(rctrl_hanja)
1087  kpdl:dot              =     +kpdl(dot)
1088  kpdl:comma            =     +kpdl(comma)
1089  kpdl:dotoss           =     +kpdl(dotoss)
1090  kpdl:dotoss_latin9    =     +kpdl(dotoss_latin9)
1091  kpdl:commaoss         =     +kpdl(commaoss)
1092  kpdl:momayyezoss      =     +kpdl(momayyezoss)
1093  kpdl:kposs            =     +kpdl(kposs)
1094  kpdl:semi             =     +kpdl(semi)
1095  shift:breaks_caps     =     +shift(breaks_caps)
1096  esperanto:qwerty      =     +epo(qwerty)
1097  esperanto:dvorak      =     +epo(dvorak)
1098  esperanto:colemak     =     +epo(colemak)
1099  terminate:ctrl_alt_bksp =   +terminate(ctrl_alt_bksp)
1100  keypad:pointerkeys          =         +keypad(pointerkeys)
1101  apple:alupckeys   =         +macintosh_vndr/apple(alupckeys)
1102  apple:jp_pc106    =         +macintosh_vndr/apple(jp_pc106)
1103  apple:jp_oadg109a =         +macintosh_vndr/apple(jp_oadg109a)
1104  shift:both_capslock                =       +shift(both_capslock)
1105  shift:lshift_both_capslock         =       +shift(lshift_both_capslock)
1106  shift:rshift_both_capslock         =       +shift(rshift_both_capslock)
1107  shift:both_capslock_cancel         =       +shift(both_capslock_cancel)
1108  shift:lshift_both_capslock_cancel  =       +shift(lshift_both_capslock_cancel)
1109  shift:rshift_both_capslock_cancel  =       +shift(rshift_both_capslock_cancel)
1110  shift:both_shiftlock               =       +shift(both_shiftlock)
1111  shift:lshift_both_shiftlock        =       +shift(lshift_both_shiftlock)
1112  shift:rshift_both_shiftlock        =       +shift(rshift_both_shiftlock)
1113  solaris:sun_compat                                         =                   +sun_vndr/solaris(sun_compat)
1114  lv2:lsgt_switch                    =       +level2(lsgt_switch)
1115  lv3:caps_switch                    =       +level3(caps_switch)
1116  lv3:bksl_switch                    =       +level3(bksl_switch)
1117  lv3:lsgt_switch                    =       +level3(lsgt_switch)
1118  lv3:caps_switch_latch              =       +level3(caps_switch_latch)
1119  lv3:bksl_switch_latch              =       +level3(bksl_switch_latch)
1120  lv3:lsgt_switch_latch              =       +level3(lsgt_switch_latch)
1121  lv5:caps_switch                 =       +level5(caps_switch)
1122  lv5:lsgt_switch                 =       +level5(lsgt_switch)
1123  lv5:ralt_switch                 =       +level5(ralt_switch)
1124  lv5:menu_switch                 =       +level5(menu_switch)
1125  lv5:rctrl_switch                =       +level5(rctrl_switch)
1126  lv5:lsgt_switch_lock            =       +level5(lsgt_switch_lock)
1127  lv5:ralt_switch_lock            =       +level5(ralt_switch_lock)
1128  lv5:lwin_switch_lock            =       +level5(lwin_switch_lock)
1129  lv5:rwin_switch_lock            =       +level5(rwin_switch_lock)
1130  lv5:lsgt_switch_lock_cancel     =       +level5(lsgt_switch_lock_cancel)
1131  lv5:ralt_switch_lock_cancel     =       +level5(ralt_switch_lock_cancel)
1132  lv5:lwin_switch_lock_cancel     =       +level5(lwin_switch_lock_cancel)
1133  lv5:rwin_switch_lock_cancel     =       +level5(rwin_switch_lock_cancel)
1134  parens:swap_brackets   =   +parens(swap_brackets)
1135
1136
1137! option            =         compat
1138  grp_led:num                 =         +lednum(group_lock)
1139  grp_led:caps                =         +ledcaps(group_lock)
1140  grp_led:scroll    =         +ledscroll(group_lock)
1141  mod_led:compose   =         +ledcompose(compose)
1142  japan:kana_lock   =         +japan(kana_lock)
1143  caps:shiftlock    =         +ledcaps(shift_lock)
1144  grab:break_actions          =         +xfree86(grab_break)
1145
1146
1147! option                      =         types
1148  caps:internal                         =         +caps(internal)
1149  caps:internal_nocancel      =         +caps(internal_nocancel)
1150  caps:shift                            =         +caps(shift)
1151  caps:shift_nocancel                   =         +caps(shift_nocancel)
1152  numpad:pc                             =         +numpad(pc)
1153  numpad:mac                            =         +numpad(mac)
1154  numpad:microsoft            =         +numpad(microsoft)
1155  numpad:shift3                         =         +numpad(shift3)
1156