arm-sdk

os build toolkit for various embedded devices
git clone https://git.parazyd.org/arm-sdk
Log | Files | Refs | Submodules | README | LICENSE

evdev (43403B)


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