diff options
Diffstat (limited to 'xorg-server/xkeyboard-config/rules')
18 files changed, 7373 insertions, 7147 deletions
diff --git a/xorg-server/xkeyboard-config/rules/Makefile.am b/xorg-server/xkeyboard-config/rules/Makefile.am index f2d73ce80..dcf9e3d90 100644 --- a/xorg-server/xkeyboard-config/rules/Makefile.am +++ b/xorg-server/xkeyboard-config/rules/Makefile.am @@ -1,236 +1,236 @@ -SUBDIRS = bin compat - -if CREATE_RULES_SYMLINK -# extra_rules_file = $(xkb_rules_symlink) -# extra_dir_file = $(extra_rules_file).xml -# extra_lst_file = $(extra_rules_file).lst - -install-data-hook: - for file in `echo "$(xkb_rules_symlink)" | sed 's/,/ /'` ; do \ - extra_rules_file=$$file ; \ - extra_dir_file=$$extra_rules_file.xml ; \ - extra_lst_file=$$extra_rules_file.lst ; \ - ln -sf base $(DESTDIR)$(rulesdir)/$$extra_rules_file ; \ - ln -sf base.lst $(DESTDIR)$(rulesdir)/$$extra_lst_file ; \ - ln -sf base.xml $(DESTDIR)$(rulesdir)/$$extra_dir_file ; \ - done - -else -install-data-hook: - -endif - -if USE_COMPAT_RULES - -base_parts = base.hdr.part base.lists.part \ -compat/base.lists.part \ -HDR base.m_k.part \ -HDR base.l1_k.part \ -HDR base.l_k.part \ -HDR base.o_k.part \ -HDR base.ml_g.part \ -HDR base.m_g.part \ -HDR compat/base.mlv_s.part base.mlv_s.part \ -HDR compat/base.ml_s.part base.ml_s.part \ -HDR compat/base.ml1_s.part base.ml1_s.part \ -HDR compat/base.ml1v1_s.part \ -HDR compat/base.ml2_s.part base.ml2_s.part \ -HDR compat/base.ml3_s.part base.ml3_s.part \ -HDR compat/base.ml4_s.part base.ml4_s.part \ -HDR compat/base.ml2v2_s.part \ -HDR compat/base.ml3v3_s.part \ -HDR compat/base.ml4v4_s.part \ -HDR base.m_s.part \ -HDR compat/base.lv_c.part \ -HDR compat/base.l1v1_c.part \ -HDR compat/base.l2v2_c.part \ -HDR compat/base.l3v3_c.part \ -HDR compat/base.l4v4_c.part \ -HDR base.ml_c.part \ -HDR base.ml1_c.part \ -HDR base.m_t.part \ -HDR base.lo_s.part \ -HDR base.l1o_s.part \ -HDR base.l2o_s.part \ -HDR base.l3o_s.part \ -HDR base.l4o_s.part \ -HDR compat/base.o_s.part base.o_s.part \ -HDR base.o_c.part \ -HDR base.o_t.part - -evdev_parts = base.hdr.part base.lists.part \ -compat/base.lists.part \ -HDR evdev.m_k.part \ -HDR base.l1_k.part \ -HDR base.l_k.part \ -HDR base.o_k.part \ -HDR base.ml_g.part \ -HDR base.m_g.part \ -HDR compat/base.mlv_s.part base.mlv_s.part \ -HDR compat/base.ml_s.part base.ml_s.part \ -HDR compat/base.ml1_s.part base.ml1_s.part \ -HDR compat/base.ml1v1_s.part \ -HDR compat/base.ml2_s.part base.ml2_s.part \ -HDR compat/base.ml3_s.part base.ml3_s.part \ -HDR compat/base.ml4_s.part base.ml4_s.part \ -HDR compat/base.ml2v2_s.part \ -HDR compat/base.ml3v3_s.part \ -HDR compat/base.ml4v4_s.part \ -HDR evdev.m_s.part \ -HDR compat/base.lv_c.part \ -HDR compat/base.l1v1_c.part \ -HDR compat/base.l2v2_c.part \ -HDR compat/base.l3v3_c.part \ -HDR compat/base.l4v4_c.part \ -HDR base.ml_c.part \ -HDR base.ml1_c.part \ -HDR base.m_t.part \ -HDR base.lo_s.part \ -HDR base.l1o_s.part \ -HDR base.l2o_s.part \ -HDR base.l3o_s.part \ -HDR base.l4o_s.part \ -HDR compat/base.o_s.part base.o_s.part \ -HDR base.o_c.part \ -HDR base.o_t.part - -else - -base_parts = base.hdr.part base.lists.part \ -HDR base.m_k.part \ -HDR base.l1_k.part \ -HDR base.l_k.part \ -HDR \ -HDR base.ml_g.part \ -HDR base.m_g.part \ -HDR base.mlv_s.part \ -HDR base.ml_s.part \ -HDR base.ml1_s.part \ -HDR \ -HDR base.ml2_s.part \ -HDR base.ml3_s.part \ -HDR base.ml4_s.part \ -HDR \ -HDR \ -HDR \ -HDR base.m_s.part \ -HDR \ -HDR \ -HDR \ -HDR \ -HDR \ -HDR base.ml_c.part \ -HDR base.ml1_c.part \ -HDR base.m_t.part \ -HDR \ -HDR base.l1o_s.part \ -HDR base.l2o_s.part \ -HDR base.l3o_s.part \ -HDR base.l4o_s.part \ -HDR base.o_s.part \ -HDR base.o_c.part \ -HDR base.o_t.part - -evdev_parts = base.hdr.part base.lists.part \ -HDR evdev.m_k.part \ -HDR base.l1_k.part \ -HDR base.l_k.part \ -HDR \ -HDR base.ml_g.part \ -HDR base.m_g.part \ -HDR base.mlv_s.part \ -HDR base.ml_s.part \ -HDR base.ml1_s.part \ -HDR \ -HDR base.ml2_s.part \ -HDR base.ml3_s.part \ -HDR base.ml4_s.part \ -HDR \ -HDR \ -HDR \ -HDR evdev.m_s.part \ -HDR \ -HDR \ -HDR \ -HDR \ -HDR \ -HDR base.ml_c.part \ -HDR base.ml1_c.part \ -HDR base.m_t.part \ -HDR \ -HDR base.l1o_s.part \ -HDR base.l2o_s.part \ -HDR base.l3o_s.part \ -HDR base.l4o_s.part \ -HDR base.o_s.part \ -HDR base.o_c.part \ -HDR base.o_t.part - -endif - -all_parts_dist = HDR base.hdr.part \ -base.lists.part \ -base.m_k.part \ -base.l1_k.part \ -base.l_k.part \ -base.o_k.part \ -base.ml_g.part \ -base.m_g.part \ -base.mlv_s.part \ -base.ml_s.part \ -base.ml1_s.part \ -base.ml2_s.part \ -base.ml3_s.part \ -base.ml4_s.part \ -base.m_s.part \ -base.ml_c.part \ -base.ml1_c.part \ -base.m_t.part \ -base.lo_s.part \ -base.l1o_s.part \ -base.l2o_s.part \ -base.l3o_s.part \ -base.l4o_s.part \ -base.o_s.part \ -base.o_c.part \ -base.o_t.part \ -evdev.m_k.part \ -evdev.m_s.part - -rules_files = base evdev xfree98 - -lst_files = base.lst evdev.lst - -%.lst: %.xml - perl $(srcdir)/xml2lst.pl < $< > $@ - -base: $(base_parts) - HDR="$(srcdir)/HDR" $(srcdir)/merge.sh $@ $(base_parts) - -evdev: $(evdev_parts) - HDR="$(srcdir)/HDR" $(srcdir)/merge.sh $@ $(evdev_parts) - -dist_files = xkb.dtd README - -rules_DATA = $(rules_files) $(lst_files) $(dist_files) - -xml_in_files = base.xml.in evdev.xml.in base.extras.xml.in evdev.extras.xml.in -xml_DATA = $(xml_in_files:.xml.in=.xml) - -$(srcdir)/evdev.xml.in: base.xml.in - cp $< $@ - -$(srcdir)/evdev.extras.xml.in: base.extras.xml.in - cp $< $@ - -EXTRA_DIST= $(xml_in_files) xfree98 \ - $(all_parts_dist) \ - xml2lst.pl merge.sh $(dist_files) - -CLEANFILES = base base.xml base.lst evdev evdev.xml evdev.lst base.extras.xml evdev.extras.xml -MAINTAINERCLEANFILES = $(srcdir)/evdev.xml.in $(srcdir)/evdev.extras.xml.in - -rulesdir = $(xkb_base)/rules -xmldir = $(rulesdir) - -@INTLTOOL_XML_NOMERGE_RULE@ +SUBDIRS = bin compat
+
+if CREATE_RULES_SYMLINK
+# extra_rules_file = $(xkb_rules_symlink)
+# extra_dir_file = $(extra_rules_file).xml
+# extra_lst_file = $(extra_rules_file).lst
+
+install-data-hook:
+ for file in `echo "$(xkb_rules_symlink)" | sed 's/,/ /'` ; do \
+ extra_rules_file=$$file ; \
+ extra_dir_file=$$extra_rules_file.xml ; \
+ extra_lst_file=$$extra_rules_file.lst ; \
+ ln -sf base $(DESTDIR)$(rulesdir)/$$extra_rules_file ; \
+ ln -sf base.lst $(DESTDIR)$(rulesdir)/$$extra_lst_file ; \
+ ln -sf base.xml $(DESTDIR)$(rulesdir)/$$extra_dir_file ; \
+ done
+
+else
+install-data-hook:
+
+endif
+
+if USE_COMPAT_RULES
+
+base_parts = base.hdr.part base.lists.part \
+compat/base.lists.part \
+HDR base.m_k.part \
+HDR base.l1_k.part \
+HDR base.l_k.part \
+HDR base.o_k.part \
+HDR base.ml_g.part \
+HDR base.m_g.part \
+HDR compat/base.mlv_s.part base.mlv_s.part \
+HDR compat/base.ml_s.part base.ml_s.part \
+HDR compat/base.ml1_s.part base.ml1_s.part \
+HDR compat/base.ml1v1_s.part \
+HDR compat/base.ml2_s.part base.ml2_s.part \
+HDR compat/base.ml3_s.part base.ml3_s.part \
+HDR compat/base.ml4_s.part base.ml4_s.part \
+HDR compat/base.ml2v2_s.part \
+HDR compat/base.ml3v3_s.part \
+HDR compat/base.ml4v4_s.part \
+HDR base.m_s.part \
+HDR compat/base.lv_c.part \
+HDR compat/base.l1v1_c.part \
+HDR compat/base.l2v2_c.part \
+HDR compat/base.l3v3_c.part \
+HDR compat/base.l4v4_c.part \
+HDR base.ml_c.part \
+HDR base.ml1_c.part \
+HDR base.m_t.part \
+HDR base.lo_s.part \
+HDR base.l1o_s.part \
+HDR base.l2o_s.part \
+HDR base.l3o_s.part \
+HDR base.l4o_s.part \
+HDR compat/base.o_s.part base.o_s.part \
+HDR base.o_c.part \
+HDR base.o_t.part
+
+evdev_parts = base.hdr.part base.lists.part \
+compat/base.lists.part \
+HDR evdev.m_k.part \
+HDR base.l1_k.part \
+HDR base.l_k.part \
+HDR base.o_k.part \
+HDR base.ml_g.part \
+HDR base.m_g.part \
+HDR compat/base.mlv_s.part base.mlv_s.part \
+HDR compat/base.ml_s.part base.ml_s.part \
+HDR compat/base.ml1_s.part base.ml1_s.part \
+HDR compat/base.ml1v1_s.part \
+HDR compat/base.ml2_s.part base.ml2_s.part \
+HDR compat/base.ml3_s.part base.ml3_s.part \
+HDR compat/base.ml4_s.part base.ml4_s.part \
+HDR compat/base.ml2v2_s.part \
+HDR compat/base.ml3v3_s.part \
+HDR compat/base.ml4v4_s.part \
+HDR evdev.m_s.part \
+HDR compat/base.lv_c.part \
+HDR compat/base.l1v1_c.part \
+HDR compat/base.l2v2_c.part \
+HDR compat/base.l3v3_c.part \
+HDR compat/base.l4v4_c.part \
+HDR base.ml_c.part \
+HDR base.ml1_c.part \
+HDR base.m_t.part \
+HDR base.lo_s.part \
+HDR base.l1o_s.part \
+HDR base.l2o_s.part \
+HDR base.l3o_s.part \
+HDR base.l4o_s.part \
+HDR compat/base.o_s.part base.o_s.part \
+HDR base.o_c.part \
+HDR base.o_t.part
+
+else
+
+base_parts = base.hdr.part base.lists.part \
+HDR base.m_k.part \
+HDR base.l1_k.part \
+HDR base.l_k.part \
+HDR \
+HDR base.ml_g.part \
+HDR base.m_g.part \
+HDR base.mlv_s.part \
+HDR base.ml_s.part \
+HDR base.ml1_s.part \
+HDR \
+HDR base.ml2_s.part \
+HDR base.ml3_s.part \
+HDR base.ml4_s.part \
+HDR \
+HDR \
+HDR \
+HDR base.m_s.part \
+HDR \
+HDR \
+HDR \
+HDR \
+HDR \
+HDR base.ml_c.part \
+HDR base.ml1_c.part \
+HDR base.m_t.part \
+HDR \
+HDR base.l1o_s.part \
+HDR base.l2o_s.part \
+HDR base.l3o_s.part \
+HDR base.l4o_s.part \
+HDR base.o_s.part \
+HDR base.o_c.part \
+HDR base.o_t.part
+
+evdev_parts = base.hdr.part base.lists.part \
+HDR evdev.m_k.part \
+HDR base.l1_k.part \
+HDR base.l_k.part \
+HDR \
+HDR base.ml_g.part \
+HDR base.m_g.part \
+HDR base.mlv_s.part \
+HDR base.ml_s.part \
+HDR base.ml1_s.part \
+HDR \
+HDR base.ml2_s.part \
+HDR base.ml3_s.part \
+HDR base.ml4_s.part \
+HDR \
+HDR \
+HDR \
+HDR evdev.m_s.part \
+HDR \
+HDR \
+HDR \
+HDR \
+HDR \
+HDR base.ml_c.part \
+HDR base.ml1_c.part \
+HDR base.m_t.part \
+HDR \
+HDR base.l1o_s.part \
+HDR base.l2o_s.part \
+HDR base.l3o_s.part \
+HDR base.l4o_s.part \
+HDR base.o_s.part \
+HDR base.o_c.part \
+HDR base.o_t.part
+
+endif
+
+all_parts_dist = HDR base.hdr.part \
+base.lists.part \
+base.m_k.part \
+base.l1_k.part \
+base.l_k.part \
+base.o_k.part \
+base.ml_g.part \
+base.m_g.part \
+base.mlv_s.part \
+base.ml_s.part \
+base.ml1_s.part \
+base.ml2_s.part \
+base.ml3_s.part \
+base.ml4_s.part \
+base.m_s.part \
+base.ml_c.part \
+base.ml1_c.part \
+base.m_t.part \
+base.lo_s.part \
+base.l1o_s.part \
+base.l2o_s.part \
+base.l3o_s.part \
+base.l4o_s.part \
+base.o_s.part \
+base.o_c.part \
+base.o_t.part \
+evdev.m_k.part \
+evdev.m_s.part
+
+rules_files = base evdev xfree98
+
+lst_files = base.lst evdev.lst
+
+%.lst: %.xml
+ perl $(srcdir)/xml2lst.pl < $< > $@
+
+base: $(base_parts)
+ HDR="$(srcdir)/HDR" $(srcdir)/merge.sh $@ $(base_parts)
+
+evdev: $(evdev_parts)
+ HDR="$(srcdir)/HDR" $(srcdir)/merge.sh $@ $(evdev_parts)
+
+dist_files = xkb.dtd README
+
+rules_DATA = $(rules_files) $(lst_files) $(dist_files)
+
+xml_in_files = base.xml.in evdev.xml.in base.extras.xml.in evdev.extras.xml.in
+xml_DATA = $(xml_in_files:.xml.in=.xml)
+
+$(srcdir)/evdev.xml.in: base.xml.in
+ cp $< $@
+
+$(srcdir)/evdev.extras.xml.in: base.extras.xml.in
+ cp $< $@
+
+EXTRA_DIST= $(xml_in_files) xfree98 \
+ $(all_parts_dist) \
+ xml2lst.pl merge.sh $(dist_files)
+
+CLEANFILES = base base.xml base.lst evdev evdev.xml evdev.lst base.extras.xml evdev.extras.xml
+MAINTAINERCLEANFILES = $(srcdir)/evdev.xml.in $(srcdir)/evdev.extras.xml.in
+
+rulesdir = $(xkb_base)/rules
+xmldir = $(rulesdir)
+
+@INTLTOOL_XML_NOMERGE_RULE@
diff --git a/xorg-server/xkeyboard-config/rules/base.extras.xml.in b/xorg-server/xkeyboard-config/rules/base.extras.xml.in index b068589fd..f72e4cf95 100644 --- a/xorg-server/xkeyboard-config/rules/base.extras.xml.in +++ b/xorg-server/xkeyboard-config/rules/base.extras.xml.in @@ -1,118 +1,118 @@ -<?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE xkbConfigRegistry SYSTEM "xkb.dtd"> -<xkbConfigRegistry> - <modelList/> - <layoutList> - <layout> - <configItem> - <name>apl</name> - <_shortDescription>APL</_shortDescription> - <_description>APL</_description> - <languageList><iso639Id>eng</iso639Id></languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>ir</name> - <_shortDescription>Iran</_shortDescription> - <_description>Iran</_description> - <languageList><iso639Id>per</iso639Id></languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>ave</name> - <_description>Iran Avestan</_description> - <languageList><iso639Id>ave</iso639Id></languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>us</name> - <_shortDescription>USA</_shortDescription> - <_description>USA</_description> - <languageList><iso639Id>eng</iso639Id></languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>intl-unicode</name> - <_description>USA International (AltGr Unicode combining)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>alt-intl-unicode</name> - <_description>USA International (AltGr Unicode combining, alternative)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ats</name> - <_description>USA Atsina</_description> - <!-- No ISO code in ISO639-2, only draft ISO693-3 --> - </configItem> - </variant> - <variant> - <configItem> - <name>crd</name> - <_description>USA Couer D'alene Salish</_description> - <languageList><iso639Id>crd</iso639Id></languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ro</name> - <_shortDescription>Rou</_shortDescription> - <_description>Romania</_description> - <languageList><iso639Id>rum</iso639Id></languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>ergonomic</name> - <_description>Ergonomic Touchtype</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>rs</name> - <_shortDescription>SRB</_shortDescription> - <_description>Serbia</_description> - <languageList><iso639Id>srp</iso639Id></languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>combiningkeys</name> - <_description>Serbia Combining accents instead of dead keys</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ru</name> - <_shortDescription>Rus</_shortDescription> - <_description>Russia</_description> - </configItem> - <variantList> - <variant> - <configItem> - <name>chu</name> - <description>Russia Church Slavonic</description> - <languageList><iso639Id>chu</iso639Id></languageList> - </configItem> - </variant> - </variantList> - </layout> - </layoutList> - <optionList/> -</xkbConfigRegistry> +<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE xkbConfigRegistry SYSTEM "xkb.dtd">
+<xkbConfigRegistry>
+ <modelList/>
+ <layoutList>
+ <layout>
+ <configItem>
+ <name>apl</name>
+ <_shortDescription>APL</_shortDescription>
+ <_description>APL</_description>
+ <languageList><iso639Id>eng</iso639Id></languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ir</name>
+ <_shortDescription>Iran</_shortDescription>
+ <_description>Iran</_description>
+ <languageList><iso639Id>per</iso639Id></languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>ave</name>
+ <_description>Iran Avestan</_description>
+ <languageList><iso639Id>ave</iso639Id></languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>us</name>
+ <_shortDescription>USA</_shortDescription>
+ <_description>USA</_description>
+ <languageList><iso639Id>eng</iso639Id></languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>intl-unicode</name>
+ <_description>USA International (AltGr Unicode combining)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>alt-intl-unicode</name>
+ <_description>USA International (AltGr Unicode combining, alternative)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ats</name>
+ <_description>USA Atsina</_description>
+ <!-- No ISO code in ISO639-2, only draft ISO693-3 -->
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crd</name>
+ <_description>USA Couer D'alene Salish</_description>
+ <languageList><iso639Id>crd</iso639Id></languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ro</name>
+ <_shortDescription>Rou</_shortDescription>
+ <_description>Romania</_description>
+ <languageList><iso639Id>rum</iso639Id></languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>ergonomic</name>
+ <_description>Ergonomic Touchtype</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>rs</name>
+ <_shortDescription>SRB</_shortDescription>
+ <_description>Serbia</_description>
+ <languageList><iso639Id>srp</iso639Id></languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>combiningkeys</name>
+ <_description>Serbia Combining accents instead of dead keys</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ru</name>
+ <_shortDescription>Rus</_shortDescription>
+ <_description>Russia</_description>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>chu</name>
+ <description>Russia Church Slavonic</description>
+ <languageList><iso639Id>chu</iso639Id></languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ </layoutList>
+ <optionList/>
+</xkbConfigRegistry>
diff --git a/xorg-server/xkeyboard-config/rules/base.ml_s.part b/xorg-server/xkeyboard-config/rules/base.ml_s.part index 5d3b46d61..50ad6e57f 100644 --- a/xorg-server/xkeyboard-config/rules/base.ml_s.part +++ b/xorg-server/xkeyboard-config/rules/base.ml_s.part @@ -1,41 +1,41 @@ - ataritt $nonlatin = xfree68_vndr/ataritt(us)+%l%(v):2 - ataritt * = xfree68_vndr/ataritt(us)+%l%(v) - amiga $nonlatin = xfree68_vndr/amiga(usa1)+%l%(v):2 - amiga * = xfree68_vndr/amiga(usa1)+%l%(v) - classmate us = pc+%l(classmate) - empty * = empty(basic) - * empty = empty(basic) - sun4 $nonlatin = latin+sun_vndr/us(type4)+%l%(v):2 - sun4 * = latin+sun_vndr/us(type4)+%l%(v) - sun5 $nonlatin = latin+sun_vndr/us(type5)+%l%(v):2 - sun5 * = latin+sun_vndr/us(type5)+%l%(v) - sun6 us = pc+sun_vndr/us(type6) - sun6 en_US = pc+sun_vndr/us(type6)+iso9995-3(basic) - sun6 $sun_t6_custom = pc+sun_vndr/us(type6)+sun_vndr/%l%(v) - sun6 * = pc+sun_vndr/us(type6)+%l%(v) - sun6euro us = pc+sun_vndr/us(type6) - sun6euro en_US = pc+sun_vndr/us(type6)+iso9995-3(basic) - sun6euro $sun_t6_custom = pc+sun_vndr/us(type6)+sun_vndr/%l%(v) - sun6euro * = pc+sun_vndr/us(type6)+%l%(v) - pc98 nec_vndr/jp = nec_vndr/jp(pc98) - macintosh_old us = macintosh_vndr/us(oldmac) - macintosh_old en_US = macintosh_vndr/us(oldmac) - macintosh_old $macvendorlayouts = macintosh_vndr/us(oldmac)+macintosh_vndr/%l%(v) - macintosh_old $nonlatin = macintosh_vndr/us(oldmac)+%l%(v):2 - macintosh_old * = macintosh_vndr/us(oldmac)+%l%(v) - applealu_jis jp = macintosh_vndr/apple(alukbd)+macintosh_vndr/jp(usmac)+macintosh_vndr/jp(mac):2 - applealu_jis * = macintosh_vndr/apple(alukbd)+%l%(v)+macintosh_vndr/jp(mac):2 - $applealu $macvendorlayouts = macintosh_vndr/apple(alukbd)+macintosh_vndr/%l%(v) - $applealu * = macintosh_vndr/apple(alukbd)+%l%(v) - $macs en_US = pc+macintosh_vndr/us(extended) - $macs $macvendorlayouts = pc+macintosh_vndr/%l%(v) - nokiarx44 * = nokia_vndr/rx-44(%l) - nokiarx51 cz(qwerty) = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(cz_qwerty) - nokiarx51 * = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(%l%_v) - nokiasu8w * = nokia_vndr/su-8w(%l) - olpc $olpclayouts = olpc+%l%(m) - olpc * = olpc+%l%(v) - $thinkpads br = pc+br(thinkpad) - htcdream $htcdreamlayouts = %l(htcdream) - * $nonlatin = pc+us+%l%(v):2 - * * = pc+%l%(v) + ataritt $nonlatin = xfree68_vndr/ataritt(us)+%l%(v):2
+ ataritt * = xfree68_vndr/ataritt(us)+%l%(v)
+ amiga $nonlatin = xfree68_vndr/amiga(usa1)+%l%(v):2
+ amiga * = xfree68_vndr/amiga(usa1)+%l%(v)
+ classmate us = pc+%l(classmate)
+ empty * = empty(basic)
+ * empty = empty(basic)
+ sun4 $nonlatin = latin+sun_vndr/us(type4)+%l%(v):2
+ sun4 * = latin+sun_vndr/us(type4)+%l%(v)
+ sun5 $nonlatin = latin+sun_vndr/us(type5)+%l%(v):2
+ sun5 * = latin+sun_vndr/us(type5)+%l%(v)
+ sun6 us = pc+sun_vndr/us(type6)
+ sun6 en_US = pc+sun_vndr/us(type6)+iso9995-3(basic)
+ sun6 $sun_t6_custom = pc+sun_vndr/us(type6)+sun_vndr/%l%(v)
+ sun6 * = pc+sun_vndr/us(type6)+%l%(v)
+ sun6euro us = pc+sun_vndr/us(type6)
+ sun6euro en_US = pc+sun_vndr/us(type6)+iso9995-3(basic)
+ sun6euro $sun_t6_custom = pc+sun_vndr/us(type6)+sun_vndr/%l%(v)
+ sun6euro * = pc+sun_vndr/us(type6)+%l%(v)
+ pc98 nec_vndr/jp = nec_vndr/jp(pc98)
+ macintosh_old us = macintosh_vndr/us(oldmac)
+ macintosh_old en_US = macintosh_vndr/us(oldmac)
+ macintosh_old $macvendorlayouts = macintosh_vndr/us(oldmac)+macintosh_vndr/%l%(v)
+ macintosh_old $nonlatin = macintosh_vndr/us(oldmac)+%l%(v):2
+ macintosh_old * = macintosh_vndr/us(oldmac)+%l%(v)
+ applealu_jis jp = macintosh_vndr/apple(alukbd)+macintosh_vndr/jp(usmac)+macintosh_vndr/jp(mac):2
+ applealu_jis * = macintosh_vndr/apple(alukbd)+%l%(v)+macintosh_vndr/jp(mac):2
+ $applealu $macvendorlayouts = macintosh_vndr/apple(alukbd)+macintosh_vndr/%l%(v)
+ $applealu * = macintosh_vndr/apple(alukbd)+%l%(v)
+ $macs en_US = pc+macintosh_vndr/us(extended)
+ $macs $macvendorlayouts = pc+macintosh_vndr/%l%(v)
+ nokiarx44 * = nokia_vndr/rx-44(%l)
+ nokiarx51 cz(qwerty) = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(cz_qwerty)
+ nokiarx51 * = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(%l%_v)
+ nokiasu8w * = nokia_vndr/su-8w(%l)
+ olpc $olpclayouts = olpc+%l%(m)
+ olpc * = olpc+%l%(v)
+ $thinkpads br = pc+br(thinkpad)
+ htcdream $htcdreamlayouts = %l(htcdream)
+ * $nonlatin = pc+us+%l%(v):2
+ * * = pc+%l%(v)
diff --git a/xorg-server/xkeyboard-config/rules/base.o_s.part b/xorg-server/xkeyboard-config/rules/base.o_s.part index 3e23396da..fc01ea82e 100644 --- a/xorg-server/xkeyboard-config/rules/base.o_s.part +++ b/xorg-server/xkeyboard-config/rules/base.o_s.part @@ -1,143 +1,143 @@ - altwin:menu = +altwin(menu) - altwin:meta_alt = +altwin(meta_alt) - altwin:ctrl_win = +altwin(ctrl_win) - altwin:ctrl_alt_win = +altwin(ctrl_alt_win) - altwin:meta_win = +altwin(meta_win) - altwin:left_meta_win = +altwin(left_meta_win) - altwin:hyper_win = +altwin(hyper_win) - altwin:alt_super_win = +altwin(alt_super_win) - altwin:swap_lalt_lwin = +altwin(swap_lalt_lwin) - grp:switch = +group(switch) - grp:lswitch = +group(lswitch) - grp:win_switch = +group(win_switch) - grp:lwin_switch = +group(lwin_switch) - grp:rwin_switch = +group(rwin_switch) - grp:toggle = +group(toggle) - grp:shifts_toggle = +group(shifts_toggle) - grp:ctrls_toggle = +group(ctrls_toggle) - grp:alts_toggle = +group(alts_toggle) - grp:ctrl_shift_toggle = +group(ctrl_shift_toggle) - grp:lctrl_lshift_toggle = +group(lctrl_lshift_toggle) - grp:rctrl_rshift_toggle = +group(rctrl_rshift_toggle) - grp:caps_toggle = +capslock(grouplock) - grp:caps_switch = +capslock(groupshift) - grp:shift_caps_toggle = +group(shift_caps_toggle) - grp:shift_caps_switch = +group(shift_caps_switch) - grp:win_menu_switch = +group(win_menu_switch) - grp:alt_caps_toggle = +group(alt_caps_toggle) - grp:ctrl_alt_toggle = +group(ctrl_alt_toggle) - grp:alt_shift_toggle = +group(alt_shift_toggle) - grp:alt_space_toggle = +group(alt_space_toggle) - grp:menu_toggle = +group(menu_toggle) - grp:lwin_toggle = +group(lwin_toggle) - grp:rwin_toggle = +group(rwin_toggle) - grp:lshift_toggle = +group(lshift_toggle) - grp:rshift_toggle = +group(rshift_toggle) - grp:rctrl_switch = +group(rctrl_switch) - grp:lctrl_toggle = +group(lctrl_toggle) - grp:rctrl_toggle = +group(rctrl_toggle) - grp:lalt_toggle = +group(lalt_toggle) - grp:sclk_toggle = +group(sclk_toggle) - grp:lctrl_rctrl_switch = +group(lctrl_rctrl_switch) - grp:lctrl_lwin_rctrl_menu = +group(lctrl_lwin_rctrl_menu) - lv3:switch = +level3(switch) - lv3:ralt_switch = +level3(ralt_switch) - lv3:ralt_switch_multikey = +level3(ralt_switch_multikey) - lv3:ralt_alt = +level3(ralt_alt) - lv3:lalt_switch = +level3(lalt_switch) - lv3:alt_switch = +level3(alt_switch) - lv3:menu_switch = +level3(menu_switch) - lv3:win_switch = +level3(win_switch) - lv3:lwin_switch = +level3(lwin_switch) - lv3:rwin_switch = +level3(rwin_switch) - lv3:enter_switch = +level3(enter_switch) - caps:capslock = +capslock(capslock) - caps:numlock = +capslock(numlock) - caps:shiftlock = +capslock(shiftlock) - caps:swapescape = +capslock(swapescape) - caps:escape = +capslock(escape) - caps:backspace = +capslock(backspace) - caps:super = +capslock(super) - caps:hyper = +capslock(hyper) - caps:none = +capslock(none) - caps:ctrl_modifier = +capslock(ctrl_modifier) - ctrl:nocaps = +ctrl(nocaps) - ctrl:lctrl_meta = +ctrl(lctrl_meta) - ctrl:swapcaps = +ctrl(swapcaps) - ctrl:ctrl_ac = +ctrl(ctrl_ac) - ctrl:ctrl_aa = +ctrl(ctrl_aa) - ctrl:ctrl_ra = +ctrl(ctrl_ra) - ctrl:ctrl_menu = +ctrl(ctrl_menu) - compose:ralt = +compose(ralt) - compose:lwin = +compose(lwin) - compose:rwin = +compose(rwin) - compose:menu = +compose(menu) - compose:lctrl = +compose(lctrl) - compose:rctrl = +compose(rctrl) - compose:caps = +compose(caps) - compose:102 = +compose(102) - compose:paus = +compose(paus) - compose:prsc = +compose(prsc) - compose:sclk = +compose(sclk) - srvrkeys:none = +srvr_ctrl(no_srvr_keys) - eurosign:e = +eurosign(e) - eurosign:2 = +eurosign(2) - eurosign:4 = +eurosign(4) - eurosign:5 = +eurosign(5) - rupeesign:4 = +rupeesign(4) - keypad:oss = +keypad(oss) - keypad:legacy = +keypad(legacy) - keypad:legacy_wang = +keypad(legacy_wang) - keypad:oss_wang = +keypad(oss_wang) - keypad:future = +keypad(future) - keypad:future_wang = +keypad(future_wang) - keypad:hex = +keypad(ops)+keypad(hex) - keypad:atm = +keypad(ops)+keypad(hex)+keypad(atm) - nbsp:none = +nbsp(none) - nbsp:level2 = +nbsp(level2) - nbsp:level3 = +nbsp(level3) - nbsp:level3s = +nbsp(level3s) - nbsp:level3n = +nbsp(level3n) - nbsp:level4 = +nbsp(level4) - nbsp:level4n = +nbsp(level4n) - nbsp:level4nl = +nbsp(level4nl) - japan:nicola_f_bs = +jp(nicola_f_bs) - kpdl:dot = +kpdl(dot) - kpdl:comma = +kpdl(comma) - kpdl:dotoss = +kpdl(dotoss) - kpdl:dotoss_latin9 = +kpdl(dotoss_latin9) - kpdl:commaoss = +kpdl(commaoss) - kpdl:momayyezoss = +kpdl(momayyezoss) - kpdl:kposs = +kpdl(kposs) - kpdl:semi = +kpdl(semi) - shift:breaks_caps = +shift(breaks_caps) - esperanto:qwerty = +epo(qwerty) - esperanto:dvorak = +epo(dvorak) - terminate:ctrl_alt_bksp = +terminate(ctrl_alt_bksp) - keypad:pointerkeys = +keypad(pointerkeys) - apple:alupckeys = +macintosh_vndr/apple(alupckeys) - shift:both_capslock = +shift(both_capslock) - shift:lshift_both_capslock = +shift(lshift_both_capslock) - shift:rshift_both_capslock = +shift(rshift_both_capslock) - shift:both_capslock_cancel = +shift(both_capslock_cancel) - shift:lshift_both_capslock_cancel = +shift(lshift_both_capslock_cancel) - shift:rshift_both_capslock_cancel = +shift(rshift_both_capslock_cancel) - shift:both_shiftlock = +shift(both_shiftlock) - shift:lshift_both_shiftlock = +shift(lshift_both_shiftlock) - shift:rshift_both_shiftlock = +shift(rshift_both_shiftlock) - lv3:caps_switch = +level3(caps_switch) - lv3:bksl_switch = +level3(bksl_switch) - lv3:lsgt_switch = +level3(lsgt_switch) - lv3:caps_switch_latch = +level3(caps_switch_latch) - lv3:bksl_switch_latch = +level3(bksl_switch_latch) - lv3:lsgt_switch_latch = +level3(lsgt_switch_latch) - lv5:lsgt_switch_lock = +level5(lsgt_switch_lock) - lv5:ralt_switch_lock = +level5(ralt_switch_lock) - lv5:lwin_switch_lock = +level5(lwin_switch_lock) - lv5:rwin_switch_lock = +level5(rwin_switch_lock) - lv5:lsgt_switch_lock_cancel = +level5(lsgt_switch_lock_cancel) - lv5:ralt_switch_lock_cancel = +level5(ralt_switch_lock_cancel) - lv5:lwin_switch_lock_cancel = +level5(lwin_switch_lock_cancel) - lv5:rwin_switch_lock_cancel = +level5(rwin_switch_lock_cancel) - - + altwin:menu = +altwin(menu)
+ altwin:meta_alt = +altwin(meta_alt)
+ altwin:ctrl_win = +altwin(ctrl_win)
+ altwin:ctrl_alt_win = +altwin(ctrl_alt_win)
+ altwin:meta_win = +altwin(meta_win)
+ altwin:left_meta_win = +altwin(left_meta_win)
+ altwin:hyper_win = +altwin(hyper_win)
+ altwin:alt_super_win = +altwin(alt_super_win)
+ altwin:swap_lalt_lwin = +altwin(swap_lalt_lwin)
+ grp:switch = +group(switch)
+ grp:lswitch = +group(lswitch)
+ grp:win_switch = +group(win_switch)
+ grp:lwin_switch = +group(lwin_switch)
+ grp:rwin_switch = +group(rwin_switch)
+ grp:toggle = +group(toggle)
+ grp:shifts_toggle = +group(shifts_toggle)
+ grp:ctrls_toggle = +group(ctrls_toggle)
+ grp:alts_toggle = +group(alts_toggle)
+ grp:ctrl_shift_toggle = +group(ctrl_shift_toggle)
+ grp:lctrl_lshift_toggle = +group(lctrl_lshift_toggle)
+ grp:rctrl_rshift_toggle = +group(rctrl_rshift_toggle)
+ grp:caps_toggle = +capslock(grouplock)
+ grp:caps_switch = +capslock(groupshift)
+ grp:shift_caps_toggle = +group(shift_caps_toggle)
+ grp:shift_caps_switch = +group(shift_caps_switch)
+ grp:win_menu_switch = +group(win_menu_switch)
+ grp:alt_caps_toggle = +group(alt_caps_toggle)
+ grp:ctrl_alt_toggle = +group(ctrl_alt_toggle)
+ grp:alt_shift_toggle = +group(alt_shift_toggle)
+ grp:alt_space_toggle = +group(alt_space_toggle)
+ grp:menu_toggle = +group(menu_toggle)
+ grp:lwin_toggle = +group(lwin_toggle)
+ grp:rwin_toggle = +group(rwin_toggle)
+ grp:lshift_toggle = +group(lshift_toggle)
+ grp:rshift_toggle = +group(rshift_toggle)
+ grp:rctrl_switch = +group(rctrl_switch)
+ grp:lctrl_toggle = +group(lctrl_toggle)
+ grp:rctrl_toggle = +group(rctrl_toggle)
+ grp:lalt_toggle = +group(lalt_toggle)
+ grp:sclk_toggle = +group(sclk_toggle)
+ grp:lctrl_rctrl_switch = +group(lctrl_rctrl_switch)
+ grp:lctrl_lwin_rctrl_menu = +group(lctrl_lwin_rctrl_menu)
+ lv3:switch = +level3(switch)
+ lv3:ralt_switch = +level3(ralt_switch)
+ lv3:ralt_switch_multikey = +level3(ralt_switch_multikey)
+ lv3:ralt_alt = +level3(ralt_alt)
+ lv3:lalt_switch = +level3(lalt_switch)
+ lv3:alt_switch = +level3(alt_switch)
+ lv3:menu_switch = +level3(menu_switch)
+ lv3:win_switch = +level3(win_switch)
+ lv3:lwin_switch = +level3(lwin_switch)
+ lv3:rwin_switch = +level3(rwin_switch)
+ lv3:enter_switch = +level3(enter_switch)
+ caps:capslock = +capslock(capslock)
+ caps:numlock = +capslock(numlock)
+ caps:shiftlock = +capslock(shiftlock)
+ caps:swapescape = +capslock(swapescape)
+ caps:escape = +capslock(escape)
+ caps:backspace = +capslock(backspace)
+ caps:super = +capslock(super)
+ caps:hyper = +capslock(hyper)
+ caps:none = +capslock(none)
+ caps:ctrl_modifier = +capslock(ctrl_modifier)
+ ctrl:nocaps = +ctrl(nocaps)
+ ctrl:lctrl_meta = +ctrl(lctrl_meta)
+ ctrl:swapcaps = +ctrl(swapcaps)
+ ctrl:ctrl_ac = +ctrl(ctrl_ac)
+ ctrl:ctrl_aa = +ctrl(ctrl_aa)
+ ctrl:ctrl_ra = +ctrl(ctrl_ra)
+ ctrl:ctrl_menu = +ctrl(ctrl_menu)
+ compose:ralt = +compose(ralt)
+ compose:lwin = +compose(lwin)
+ compose:rwin = +compose(rwin)
+ compose:menu = +compose(menu)
+ compose:lctrl = +compose(lctrl)
+ compose:rctrl = +compose(rctrl)
+ compose:caps = +compose(caps)
+ compose:102 = +compose(102)
+ compose:paus = +compose(paus)
+ compose:prsc = +compose(prsc)
+ compose:sclk = +compose(sclk)
+ srvrkeys:none = +srvr_ctrl(no_srvr_keys)
+ eurosign:e = +eurosign(e)
+ eurosign:2 = +eurosign(2)
+ eurosign:4 = +eurosign(4)
+ eurosign:5 = +eurosign(5)
+ rupeesign:4 = +rupeesign(4)
+ keypad:oss = +keypad(oss)
+ keypad:legacy = +keypad(legacy)
+ keypad:legacy_wang = +keypad(legacy_wang)
+ keypad:oss_wang = +keypad(oss_wang)
+ keypad:future = +keypad(future)
+ keypad:future_wang = +keypad(future_wang)
+ keypad:hex = +keypad(ops)+keypad(hex)
+ keypad:atm = +keypad(ops)+keypad(hex)+keypad(atm)
+ nbsp:none = +nbsp(none)
+ nbsp:level2 = +nbsp(level2)
+ nbsp:level3 = +nbsp(level3)
+ nbsp:level3s = +nbsp(level3s)
+ nbsp:level3n = +nbsp(level3n)
+ nbsp:level4 = +nbsp(level4)
+ nbsp:level4n = +nbsp(level4n)
+ nbsp:level4nl = +nbsp(level4nl)
+ japan:nicola_f_bs = +jp(nicola_f_bs)
+ kpdl:dot = +kpdl(dot)
+ kpdl:comma = +kpdl(comma)
+ kpdl:dotoss = +kpdl(dotoss)
+ kpdl:dotoss_latin9 = +kpdl(dotoss_latin9)
+ kpdl:commaoss = +kpdl(commaoss)
+ kpdl:momayyezoss = +kpdl(momayyezoss)
+ kpdl:kposs = +kpdl(kposs)
+ kpdl:semi = +kpdl(semi)
+ shift:breaks_caps = +shift(breaks_caps)
+ esperanto:qwerty = +epo(qwerty)
+ esperanto:dvorak = +epo(dvorak)
+ terminate:ctrl_alt_bksp = +terminate(ctrl_alt_bksp)
+ keypad:pointerkeys = +keypad(pointerkeys)
+ apple:alupckeys = +macintosh_vndr/apple(alupckeys)
+ shift:both_capslock = +shift(both_capslock)
+ shift:lshift_both_capslock = +shift(lshift_both_capslock)
+ shift:rshift_both_capslock = +shift(rshift_both_capslock)
+ shift:both_capslock_cancel = +shift(both_capslock_cancel)
+ shift:lshift_both_capslock_cancel = +shift(lshift_both_capslock_cancel)
+ shift:rshift_both_capslock_cancel = +shift(rshift_both_capslock_cancel)
+ shift:both_shiftlock = +shift(both_shiftlock)
+ shift:lshift_both_shiftlock = +shift(lshift_both_shiftlock)
+ shift:rshift_both_shiftlock = +shift(rshift_both_shiftlock)
+ lv3:caps_switch = +level3(caps_switch)
+ lv3:bksl_switch = +level3(bksl_switch)
+ lv3:lsgt_switch = +level3(lsgt_switch)
+ lv3:caps_switch_latch = +level3(caps_switch_latch)
+ lv3:bksl_switch_latch = +level3(bksl_switch_latch)
+ lv3:lsgt_switch_latch = +level3(lsgt_switch_latch)
+ lv5:lsgt_switch_lock = +level5(lsgt_switch_lock)
+ lv5:ralt_switch_lock = +level5(ralt_switch_lock)
+ lv5:lwin_switch_lock = +level5(lwin_switch_lock)
+ lv5:rwin_switch_lock = +level5(rwin_switch_lock)
+ lv5:lsgt_switch_lock_cancel = +level5(lsgt_switch_lock_cancel)
+ lv5:ralt_switch_lock_cancel = +level5(ralt_switch_lock_cancel)
+ lv5:lwin_switch_lock_cancel = +level5(lwin_switch_lock_cancel)
+ lv5:rwin_switch_lock_cancel = +level5(rwin_switch_lock_cancel)
+
+
diff --git a/xorg-server/xkeyboard-config/rules/base.xml.in b/xorg-server/xkeyboard-config/rules/base.xml.in index a870a24fc..bcd384ae5 100644 --- a/xorg-server/xkeyboard-config/rules/base.xml.in +++ b/xorg-server/xkeyboard-config/rules/base.xml.in @@ -1,6155 +1,6155 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE xkbConfigRegistry SYSTEM "xkb.dtd"> -<xkbConfigRegistry version="1.1"> - <modelList> - <model> - <configItem> - <name>pc101</name> - <_description>Generic 101-key PC</_description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> - <name>pc102</name> - <_description>Generic 102-key (Intl) PC</_description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> - <name>pc104</name> - <_description>Generic 104-key PC</_description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> - <name>pc105</name> - <_description>Generic 105-key (Intl) PC</_description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> - <name>dell101</name> - <_description>Dell 101-key PC</_description> - <vendor>Dell</vendor> - </configItem> - </model> - <model> - <configItem> - <name>latitude</name> - <_description>Dell Latitude series laptop</_description> - <vendor>Dell</vendor> - </configItem> - </model> - <model> - <configItem> - <name>dellm65</name> - <_description>Dell Precision M65</_description> - <vendor>Dell</vendor> - </configItem> - </model> - <model> - <configItem> - <name>everex</name> - <_description>Everex STEPnote</_description> - <vendor>Everex</vendor> - </configItem> - </model> - <model> - <configItem> - <name>flexpro</name> - <_description>Keytronic FlexPro</_description> - <vendor>Keytronic</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoft</name> - <_description>Microsoft Natural</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>omnikey101</name> - <_description>Northgate OmniKey 101</_description> - <vendor>Northgate</vendor> - </configItem> - </model> - <model> - <configItem> - <name>winbook</name> - <_description>Winbook Model XP5</_description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> - <name>pc98</name> - <_description>PC-98xx Series</_description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> - <name>a4techKB21</name> - <_description>A4Tech KB-21</_description> - <vendor>A4Tech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>a4techKBS8</name> - <_description>A4Tech KBS-8</_description> - <vendor>A4Tech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>a4_rfkb23</name> - <_description>A4Tech Wireless Desktop RFKB-23</_description> - <vendor>A4Tech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>airkey</name> - <_description>Acer AirKey V</_description> - <vendor>Acer</vendor> - </configItem> - </model> - <model> - <configItem> - <name>azonaRF2300</name> - <_description>Azona RF2300 wireless Internet Keyboard</_description> - <vendor>Azona</vendor> - </configItem> - </model> - <model> - <configItem> - <name>scorpius</name> - <_description>Advance Scorpius KI</_description> - <vendor>Scorpius</vendor> - </configItem> - </model> - <model> - <configItem> - <name>brother</name> - <_description>Brother Internet Keyboard</_description> - <vendor>Brother</vendor> - </configItem> - </model> - <model> - <configItem> - <name>btc5113rf</name> - <_description>BTC 5113RF Multimedia</_description> - <vendor>BTC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>btc5126t</name> - <_description>BTC 5126T</_description> - <vendor>BTC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>btc6301urf</name> - <_description>BTC 6301URF</_description> - <vendor>BTC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>btc9000</name> - <_description>BTC 9000</_description> - <vendor>BTC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>btc9000a</name> - <_description>BTC 9000A</_description> - <vendor>BTC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>btc9001ah</name> - <_description>BTC 9001AH</_description> - <vendor>BTC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>btc5090</name> - <_description>BTC 5090</_description> - <vendor>BTC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>btc9019u</name> - <_description>BTC 9019U</_description> - <vendor>BTC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>btc9116u</name> - <_description>BTC 9116U Mini Wireless Internet and Gaming</_description> - </configItem> - </model> - <model> - <configItem> - <name>cherryblue</name> - <_description>Cherry Blue Line CyBo@rd</_description> - </configItem> - </model> - <model> - <configItem> - <name>cherryblueb</name> - <_description>Cherry CyMotion Master XPress</_description> - <vendor>Cherry</vendor> - </configItem> - </model> - <model> - <configItem> - <name>cherrybluea</name> - <_description>Cherry Blue Line CyBo@rd (alternate option)</_description> - <vendor>Cherry</vendor> - </configItem> - </model> - <model> - <configItem> - <name>cherrycyboard</name> - <_description>Cherry CyBo@rd USB-Hub</_description> - <vendor>Cherry</vendor> - </configItem> - </model> - <model> - <configItem> - <name>cherrycmexpert</name> - <_description>Cherry CyMotion Expert</_description> - <vendor>Cherry</vendor> - </configItem> - </model> - <model> - <configItem> - <name>cherrybunlim</name> - <_description>Cherry B.UNLIMITED</_description> - <vendor>Cherry</vendor> - </configItem> - </model> - <model> - <configItem> - <name>chicony</name> - <_description>Chicony Internet Keyboard</_description> - <vendor>Chicony</vendor> - </configItem> - </model> - <model> - <configItem> - <name>chicony0108</name> - <_description>Chicony KU-0108</_description> - <vendor>Chicony</vendor> - </configItem> - </model> - <model> - <configItem> - <name>chicony0420</name> - <_description>Chicony KU-0420</_description> - <vendor>Chicony</vendor> - </configItem> - </model> - <model> - <configItem> - <name>chicony9885</name> - <_description>Chicony KB-9885</_description> - <vendor>Chicony</vendor> - </configItem> - </model> - <model> - <configItem> - <name>compaqeak8</name> - <_description>Compaq Easy Access Keyboard</_description> - <vendor>Compaq</vendor> - </configItem> - </model> - <model> - <configItem> - <name>compaqik7</name> - <_description>Compaq Internet Keyboard (7 keys)</_description> - <vendor>Compaq</vendor> - </configItem> - </model> - <model> - <configItem> - <name>compaqik13</name> - <_description>Compaq Internet Keyboard (13 keys)</_description> - <vendor>Compaq</vendor> - </configItem> - </model> - <model> - <configItem> - <name>compaqik18</name> - <_description>Compaq Internet Keyboard (18 keys)</_description> - <vendor>Compaq</vendor> - </configItem> - </model> - <model> - <configItem> - <name>cymotionlinux</name> - <_description>Cherry CyMotion Master Linux</_description> - <vendor>Cherry</vendor> - </configItem> - </model> - <model> - <configItem> - <name>armada</name> - <_description>Laptop/notebook Compaq (eg. Armada) Laptop Keyboard</_description> - <vendor>Compaq</vendor> - </configItem> - </model> - <model> - <configItem> - <name>presario</name> - <_description>Laptop/notebook Compaq (eg. Presario) Internet Keyboard</_description> - <vendor>Compaq</vendor> - </configItem> - </model> - <model> - <configItem> - <name>ipaq</name> - <_description>Compaq iPaq Keyboard</_description> - <vendor>Compaq</vendor> - </configItem> - </model> - <model> - <configItem> - <name>dell</name> - <_description>Dell</_description> - <vendor>Dell</vendor> - </configItem> - </model> - <model> - <configItem> - <name>dellsk8125</name> - <_description>Dell SK-8125</_description> - <vendor>Dell</vendor> - </configItem> - </model> - <model> - <configItem> - <name>dellsk8135</name> - <_description>Dell SK-8135</_description> - <vendor>Dell</vendor> - </configItem> - </model> - <model> - <configItem> - <name>dellusbmm</name> - <_description>Dell USB Multimedia Keyboard</_description> - <vendor>Dell</vendor> - </configItem> - </model> - <model> - <configItem> - <name>inspiron</name> - <_description>Dell Laptop/notebook Inspiron 6xxx/8xxx</_description> - <vendor>Dell</vendor> - </configItem> - </model> - <model> - <configItem> - <name>precision_m</name> - <_description>Dell Laptop/notebook Precision M series</_description> - <vendor>Dell</vendor> - </configItem> - </model> - <model> - <configItem> - <name>dexxa</name> - <_description>Dexxa Wireless Desktop Keyboard</_description> - <vendor>Dexxa</vendor> - </configItem> - </model> - <model> - <configItem> - <name>diamond</name> - <_description>Diamond 9801 / 9802 series</_description> - <vendor>Diamond</vendor> - </configItem> - </model> - <model> - <configItem> - <name>dtk2000</name> - <_description>DTK2000</_description> - </configItem> - </model> - <model> - <configItem> - <name>ennyah_dkb1008</name> - <_description>Ennyah DKB-1008</_description> - <vendor>Ennyah</vendor> - </configItem> - </model> - <model> - <configItem> - <name>fscaa1667g</name> - <_description>Fujitsu-Siemens Computers AMILO laptop</_description> - <vendor>Fujitsu-Siemens</vendor> - </configItem> - </model> - <model> - <configItem> - <name>genius</name> - <_description>Genius Comfy KB-16M / Genius MM Keyboard KWD-910</_description> - <vendor>Genius</vendor> - </configItem> - </model> - <model> - <configItem> - <name>geniuscomfy</name> - <_description>Genius Comfy KB-12e</_description> - <vendor>Genius</vendor> - </configItem> - </model> - <model> - <configItem> - <name>geniuscomfy2</name> - <_description>Genius Comfy KB-21e-Scroll</_description> - <vendor>Genius</vendor> - </configItem> - </model> - <model> - <configItem> - <name>geniuskb19e</name> - <_description>Genius KB-19e NB</_description> - <vendor>Genius</vendor> - </configItem> - </model> - <model> - <configItem> - <name>geniuskkb2050hs</name> - <_description>Genius KKB-2050HS</_description> - <vendor>Genius</vendor> - </configItem> - </model> - <model> - <configItem> - <name>gyration</name> - <_description>Gyration</_description> - <vendor>Gyration</vendor> - </configItem> - </model> - <model> - <configItem> - <name>htcdream</name> - <_description>HTC Dream</_description> - <vendor>HTC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>kinesis</name> - <_description>Kinesis</_description> - <vendor>Kinesis</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logitech_base</name> - <_description>Logitech Generic Keyboard</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logitech_g15</name> - <_description>Logitech G15 extra keys via G15daemon</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hpi6</name> - <_description>Hewlett-Packard Internet Keyboard</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hp250x</name> - <_description>Hewlett-Packard SK-250x Multimedia Keyboard</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hpxe3gc</name> - <_description>Hewlett-Packard Omnibook XE3 GC</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hpxe3gf</name> - <_description>Hewlett-Packard Omnibook XE3 GF</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hpxt1000</name> - <_description>Hewlett-Packard Omnibook XT1000</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hpdv5</name> - <_description>Hewlett-Packard Pavilion dv5</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hpzt11xx</name> - <_description>Hewlett-Packard Pavilion ZT11xx</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hp500fa</name> - <_description>Hewlett-Packard Omnibook 500 FA</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hp5xx</name> - <_description>Hewlett-Packard Omnibook 5xx</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hpnx9020</name> - <_description>Hewlett-Packard nx9020</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hp6000</name> - <_description>Hewlett-Packard Omnibook 6000/6100</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>honeywell_euroboard</name> - <_description>Honeywell Euroboard</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hpmini110</name> - <_description>Hewlett-Packard Mini 110 Notebook</_description> - <vendor>Hewlett-Packard</vendor> - </configItem> - </model> - <model> - <configItem> - <name>rapidaccess</name> - <_description>IBM Rapid Access</_description> - <vendor>Lenovo (previously IBM)</vendor> - </configItem> - </model> - <model> - <configItem> - <name>rapidaccess2</name> - <_description>IBM Rapid Access II</_description> - <vendor>Lenovo (previously IBM)</vendor> - </configItem> - </model> - <model> - <configItem> - <name>thinkpad</name> - <_description>IBM ThinkPad 560Z/600/600E/A22E</_description> - <vendor>Lenovo (previously IBM)</vendor> - </configItem> - </model> - <model> - <configItem> - <name>thinkpad60</name> - <_description>IBM ThinkPad R60/T60/R61/T61</_description> - <vendor>Lenovo (previously IBM)</vendor> - </configItem> - </model> - <model> - <configItem> - <name>thinkpadz60</name> - <_description>IBM ThinkPad Z60m/Z60t/Z61m/Z61t</_description> - <vendor>Lenovo (previously IBM)</vendor> - </configItem> - </model> - <model> - <configItem> - <name>ibm_spacesaver</name> - <_description>IBM Space Saver</_description> - <vendor>Lenovo (previously IBM)</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logiaccess</name> - <_description>Logitech Access Keyboard</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logiclx300</name> - <_description>Logitech Cordless Desktop LX-300</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logii350</name> - <_description>Logitech Internet 350 Keyboard</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logimel</name> - <_description>Logitech Media Elite Keyboard</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logicd</name> - <_description>Logitech Cordless Desktop</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logicd_it</name> - <_description>Logitech Cordless Desktop iTouch</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logicd_nav</name> - <_description>Logitech Cordless Desktop Navigator</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logicd_opt</name> - <_description>Logitech Cordless Desktop Optical</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logicda</name> - <_description>Logitech Cordless Desktop (alternate option)</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logicdpa2</name> - <_description>Logitech Cordless Desktop Pro (alternate option 2)</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logicfn</name> - <_description>Logitech Cordless Freedom/Desktop Navigator</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logicdn</name> - <_description>Logitech Cordless Desktop Navigator</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logiitc</name> - <_description>Logitech iTouch Cordless Keyboard (model Y-RB6)</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logiik</name> - <_description>Logitech Internet Keyboard</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>itouch</name> - <_description>Logitech iTouch</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logicink</name> - <_description>Logitech Internet Navigator Keyboard</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logiex110</name> - <_description>Logitech Cordless Desktop EX110</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logiinkse</name> - <_description>Logitech iTouch Internet Navigator Keyboard SE</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logiinkseusb</name> - <_description>Logitech iTouch Internet Navigator Keyboard SE (USB)</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logiultrax</name> - <_description>Logitech Ultra-X Keyboard</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logiultraxc</name> - <_description>Logitech Ultra-X Cordless Media Desktop Keyboard</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logidinovo</name> - <_description>Logitech diNovo Keyboard</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>logidinovoedge</name> - <_description>Logitech diNovo Edge Keyboard</_description> - <vendor>Logitech</vendor> - </configItem> - </model> - <model> - <configItem> - <name>mx1998</name> - <_description>Memorex MX1998</_description> - <vendor>Memorex</vendor> - </configItem> - </model> - <model> - <configItem> - <name>mx2500</name> - <_description>Memorex MX2500 EZ-Access Keyboard</_description> - <vendor>Memorex</vendor> - </configItem> - </model> - <model> - <configItem> - <name>mx2750</name> - <_description>Memorex MX2750</_description> - <vendor>Memorex</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoft7000</name> - <_description>Microsoft Natural Wireless Ergonomic Keyboard 7000</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoftinet</name> - <_description>Microsoft Internet Keyboard</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoftpro</name> - <_description>Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoftprousb</name> - <_description>Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoftprooem</name> - <_description>Microsoft Natural Keyboard Pro OEM</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>vsonku306</name> - <_description>ViewSonic KU-306 Internet Keyboard</_description> - <vendor>ViewSonic</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoftprose</name> - <_description>Microsoft Internet Keyboard Pro, Swedish</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoftoffice</name> - <_description>Microsoft Office Keyboard</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoftmult</name> - <_description>Microsoft Wireless Multimedia Keyboard 1.0A</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoftelite</name> - <_description>Microsoft Natural Keyboard Elite</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>microsoftccurve2k</name> - <_description>Microsoft Comfort Curve Keyboard 2000</_description> - <vendor>Microsoft Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>oretec</name> - <_description>Ortek MCK-800 MM/Internet keyboard</_description> - <vendor>Ortek</vendor> - </configItem> - </model> - <model> - <configItem> - <name>propeller</name> - <_description>Propeller Voyager (KTEZ-1000)</_description> - <vendor>KeyTronic</vendor> - </configItem> - </model> - <model> - <configItem> - <name>qtronix</name> - <_description>QTronix Scorpius 98N+</_description> - <vendor>QTronix</vendor> - </configItem> - </model> - <model> - <configItem> - <name>samsung4500</name> - <_description>Samsung SDM 4500P</_description> - <vendor>Samsung</vendor> - </configItem> - </model> - <model> - <configItem> - <name>samsung4510</name> - <_description>Samsung SDM 4510P</_description> - <vendor>Samsung</vendor> - </configItem> - </model> - <model> - <configItem> - <name>sanwaskbkg3</name> - <_description>Sanwa Supply SKB-KG3</_description> - <vendor>Sanwa Supply Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>sk1300</name> - <_description>SK-1300</_description> - <vendor>NEC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>sk2500</name> - <_description>SK-2500</_description> - <vendor>NEC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>sk6200</name> - <_description>SK-6200</_description> - <vendor>NEC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>sk7100</name> - <_description>SK-7100</_description> - <vendor>NEC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>sp_inet</name> - <_description>Super Power Multimedia Keyboard</_description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> - <name>sven</name> - <_description>SVEN Ergonomic 2500</_description> - <vendor>SVEN</vendor> - </configItem> - </model> - <model> - <configItem> - <name>sven303</name> - <_description>SVEN Slim 303</_description> - <vendor>SVEN</vendor> - </configItem> - </model> - <model> - <configItem> - <name>symplon</name> - <_description>Symplon PaceBook (tablet PC)</_description> - <vendor>Symplon</vendor> - </configItem> - </model> - <model> - <configItem> - <name>toshiba_s3000</name> - <_description>Toshiba Satellite S3000</_description> - <vendor>Toshiba</vendor> - </configItem> - </model> - <model> - <configItem> - <name>trust</name> - <_description>Trust Wireless Keyboard Classic</_description> - <vendor>Trust</vendor> - </configItem> - </model> - <model> - <configItem> - <name>trustda</name> - <_description>Trust Direct Access Keyboard</_description> - <vendor>Trust</vendor> - </configItem> - </model> - <model> - <configItem> - <name>trust_slimline</name> - <_description>Trust Slimline</_description> - <vendor>Trust</vendor> - </configItem> - </model> - <model> - <configItem> - <name>tm2020</name> - <_description>TypeMatrix EZ-Reach 2020</_description> - <vendor>TypeMatrix</vendor> - </configItem> - </model> - <model> - <configItem> - <name>tm2030PS2</name> - <_description>TypeMatrix EZ-Reach 2030 PS2</_description> - <vendor>TypeMatrix</vendor> - </configItem> - </model> - <model> - <configItem> - <name>tm2030USB</name> - <_description>TypeMatrix EZ-Reach 2030 USB</_description> - <vendor>TypeMatrix</vendor> - </configItem> - </model> - <model> - <configItem> - <name>tm2030USB-102</name> - <_description>TypeMatrix EZ-Reach 2030 USB (102/105:EU mode)</_description> - <vendor>TypeMatrix</vendor> - </configItem> - </model> - <model> - <configItem> - <name>tm2030USB-106</name> - <_description>TypeMatrix EZ-Reach 2030 USB (106:JP mode)</_description> - <vendor>TypeMatrix</vendor> - </configItem> - </model> - <model> - <configItem> - <name>yahoo</name> - <_description>Yahoo! Internet Keyboard</_description> - <vendor>Yahoo!</vendor> - </configItem> - </model> - <model> - <configItem> - <name>macbook78</name> - <_description>MacBook/MacBook Pro</_description> - <vendor>Apple</vendor> - </configItem> - </model> - <model> - <configItem> - <name>macbook79</name> - <_description>MacBook/MacBook Pro (Intl)</_description> - <vendor>Apple</vendor> - </configItem> - </model> - <model> - <configItem> - <name>macintosh</name> - <_description>Macintosh</_description> - <vendor>Apple</vendor> - </configItem> - </model> - <model> - <configItem> - <name>macintosh_old</name> - <_description>Macintosh Old</_description> - <vendor>Apple</vendor> - </configItem> - </model> - <model> - <configItem> - <name>macintosh_hhk</name> - <_description>Happy Hacking Keyboard for Mac</_description> - <vendor>Fujitsu</vendor> - </configItem> - </model> - <model> - <configItem> - <name>acer_c300</name> - <_description>Acer C300</_description> - <vendor>Acer</vendor> - </configItem> - </model> - <model> - <configItem> - <name>acer_ferrari4k</name> - <_description>Acer Ferrari 4000</_description> - <vendor>Acer</vendor> - </configItem> - </model> - <model> - <configItem> - <name>acer_laptop</name> - <_description>Acer Laptop</_description> - <vendor>Acer</vendor> - </configItem> - </model> - <model> - <configItem> - <name>asus_laptop</name> - <_description>Asus Laptop</_description> - <vendor>Asus</vendor> - </configItem> - </model> - <model> - <configItem> - <name>apple</name> - <_description>Apple</_description> - <vendor>Apple</vendor> - </configItem> - </model> - <model> - <configItem> - <name>apple_laptop</name> - <_description>Apple Laptop</_description> - <vendor>Apple</vendor> - </configItem> - </model> - <model> - <configItem> - <name>applealu_ansi</name> - <_description>Apple Aluminium Keyboard (ANSI)</_description> - <vendor>Apple</vendor> - </configItem> - </model> - <model> - <configItem> - <name>applealu_iso</name> - <_description>Apple Aluminium Keyboard (ISO)</_description> - <vendor>Apple</vendor> - </configItem> - </model> - <model> - <configItem> - <name>applealu_jis</name> - <_description>Apple Aluminium Keyboard (JIS)</_description> - <vendor>Apple</vendor> - </configItem> - </model> - <model> - <configItem> - <name>silvercrest</name> - <_description>SILVERCREST Multimedia Wireless Keyboard</_description> - <vendor>Silvercrest</vendor> - </configItem> - </model> - <model> - <configItem> - <name>emachines</name> - <_description>Laptop/notebook eMachines m68xx</_description> - <vendor>eMachines</vendor> - </configItem> - </model> - <model> - <configItem> - <name>benqx</name> - <_description>BenQ X-Touch</_description> - <vendor>BenQ</vendor> - </configItem> - </model> - <model> - <configItem> - <name>benqx730</name> - <_description>BenQ X-Touch 730</_description> - <vendor>BenQ</vendor> - </configItem> - </model> - <model> - <configItem> - <name>benqx800</name> - <_description>BenQ X-Touch 800</_description> - <vendor>BenQ</vendor> - </configItem> - </model> - <model> - <configItem> - <name>hhk</name> - <_description>Happy Hacking Keyboard</_description> - <vendor>Fujitsu</vendor> - </configItem> - </model> - <model> - <configItem> - <name>classmate</name> - <_description>Classmate PC</_description> - <vendor>Intel</vendor> - </configItem> - </model> - <model> - <configItem> - <name>olpc</name> - <_description>OLPC</_description> - <vendor>OLPC</vendor> - </configItem> - </model> - <model> - <configItem> - <name>sun6</name> - <_description>Sun Type 5/6</_description> - <vendor>Sun Microsystems</vendor> - </configItem> - </model> - <model> - <configItem> - <name>targa_v811</name> - <_description>Targa Visionary 811</_description> - <vendor>Targa</vendor> - </configItem> - </model> - <model> - <configItem> - <name>unitekkb1925</name> - <_description>Unitek KB-1925</_description> - <vendor>Unitek Group</vendor> - </configItem> - </model> - <model> - <configItem> - <name>compalfl90</name> - <_description>FL90</_description> - <vendor>Compal Electronics Inc.</vendor> - </configItem> - </model> - <model> - <configItem> - <name>creativedw7000</name> - <_description>Creative Desktop Wireless 7000</_description> - <vendor>Creative</vendor> - </configItem> - </model> - <model> - <configItem> - <name>htcdream</name> - <_description>Htc Dream phone</_description> - <vendor>htc</vendor> - </configItem> - </model> - </modelList> - <layoutList> - <layout> - <configItem> - <name>us</name> - <_shortDescription>USA</_shortDescription> - <_description>USA</_description> - <languageList> - <iso639Id>eng</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>chr</name> - <_description>USA - Cherokee</_description> - <languageList> - <iso639Id>chr</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>euro</name> - <_description>USA - With EuroSign on 5</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>intl</name> - <_description>USA - International (with dead keys)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>alt-intl</name> - <_description>USA - Alternative international</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>colemak</name> - <_description>USA - Colemak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>USA - Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak-intl</name> - <_description>USA - Dvorak international (with dead keys)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak-alt-intl</name> - <_description>USA - Dvorak alternative international (no dead keys)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak-l</name> - <_description>USA - Left handed Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak-r</name> - <_description>USA - Right handed Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak-classic</name> - <_description>USA - Classic Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvp</name> - <_description>USA - Programmer Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>rus</name> - <_description>USA - Russian phonetic</_description> - <languageList> - <iso639Id>rus</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>USA - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>altgr-intl</name> - <_description>USA - International (AltGr dead keys)</_description> - <languageList><iso639Id>eng</iso639Id> - <iso639Id>fra</iso639Id> - <iso639Id>ger</iso639Id></languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>olpc2</name> - <_description>USA - Layout toggle on multiply/divide key</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>hbs</name> - <_description>USA - Serbo-Croatian</_description> - <languageList><iso639Id>eng</iso639Id> - <iso639Id>bos</iso639Id> - <iso639Id>hbs</iso639Id> - <iso639Id>hrv</iso639Id> - <iso639Id>srp</iso639Id> </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ad</name> - <_shortDescription>And</_shortDescription> - <_description>Andorra</_description> - <languageList> - <iso639Id>cat</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>af</name> - <_shortDescription>Afg</_shortDescription> - <_description>Afghanistan</_description> - </configItem> - <variantList> - <variant> - <configItem> - <name>ps</name> - <_description>Afghanistan - Pashto</_description> - <languageList> - <iso639Id>pus</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>uz</name> - <_description>Afghanistan - Southern Uzbek</_description> - <languageList> - <iso639Id>uzb</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>olpc-ps</name> - <_description>Afghanistan - OLPC Pashto</_description> - <languageList> - <iso639Id>pus</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>fa-olpc</name> - <_description>Afghanistan - OLPC Dari</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>uz-olpc</name> - <_description>Afghanistan - OLPC Southern Uzbek</_description> - <languageList> - <iso639Id>uzb</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ara</name> - <_shortDescription>Ara</_shortDescription> - <_description>Arabic</_description> - <countryList> - <iso3166Id>AE</iso3166Id> - <iso3166Id>BH</iso3166Id> - <iso3166Id>DZ</iso3166Id> - <iso3166Id>EG</iso3166Id> - <iso3166Id>EH</iso3166Id> - <iso3166Id>JO</iso3166Id> - <iso3166Id>KW</iso3166Id> - <iso3166Id>LB</iso3166Id> - <iso3166Id>LY</iso3166Id> - <iso3166Id>MA</iso3166Id> - <iso3166Id>MR</iso3166Id> - <iso3166Id>OM</iso3166Id> - <iso3166Id>PS</iso3166Id> - <iso3166Id>QA</iso3166Id> - <iso3166Id>SA</iso3166Id> - <iso3166Id>SD</iso3166Id> - <iso3166Id>SY</iso3166Id> - <iso3166Id>TN</iso3166Id> - <iso3166Id>YE</iso3166Id> - </countryList> - <languageList> - <iso639Id>ara</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>azerty</name> - <_description>Arabic - azerty</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>azerty_digits</name> - <_description>Arabic - azerty/digits</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>digits</name> - <_description>Arabic - digits</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>qwerty</name> - <_description>Arabic - qwerty</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>qwerty_digits</name> - <_description>Arabic - qwerty/digits</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>buckwalter</name> - <_description>Arabic - Buckwalter</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>al</name> - <_shortDescription>Alb</_shortDescription> - <_description>Albania</_description> - <languageList> - <iso639Id>alb</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>am</name> - <_shortDescription>Arm</_shortDescription> - <_description>Armenia</_description> - <languageList> - <iso639Id>hye</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>phonetic</name> - <_description>Armenia - Phonetic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>phonetic-alt</name> - <_description>Armenia - Alternative Phonetic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>eastern</name> - <_description>Armenia - Eastern</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>western</name> - <_description>Armenia - Western</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>eastern-alt</name> - <_description>Armenia - Alternative Eastern</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>at</name> - <_shortDescription>Aut</_shortDescription> - <_description>Austria</_description> - <languageList> - <iso639Id>ger</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Austria - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>sundeadkeys</name> - <_description>Austria - Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Austria - Macintosh</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>az</name> - <_shortDescription>Aze</_shortDescription> - <_description>Azerbaijan</_description> - <languageList> - <iso639Id>aze</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>cyrillic</name> - <_description>Azerbaijan - Cyrillic</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>by</name> - <_shortDescription>Blr</_shortDescription> - <_description>Belarus</_description> - <languageList> - <iso639Id>bel</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>legacy</name> - <_description>Belarus - Legacy</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latin</name> - <_description>Belarus - Latin</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>be</name> - <_shortDescription>Bel</_shortDescription> - <_description>Belgium</_description> - <languageList><iso639Id>ger</iso639Id> - <iso639Id>nld</iso639Id> - <iso639Id>fra</iso639Id></languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>oss</name> - <_description>Belgium - Alternative</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>oss_latin9</name> - <_description>Belgium - Alternative, latin-9 only</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>oss_sundeadkeys</name> - <_description>Belgium - Alternative, Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>iso-alternate</name> - <_description>Belgium - ISO Alternate</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Belgium - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>sundeadkeys</name> - <_description>Belgium - Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>wang</name> - <_description>Belgium - Wang model 724 azerty</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>bd</name> - <_shortDescription>Bgd</_shortDescription> - <_description>Bangladesh</_description> - <languageList> - <iso639Id>ben</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>probhat</name> - <_description>Bangladesh - Probhat</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>in</name> - <_shortDescription>Ind</_shortDescription> - <_description>India</_description> - </configItem> - <variantList> - <variant> - <configItem> - <name>ben</name> - <_description>India - Bengali</_description> - <languageList> - <iso639Id>ben</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ben_probhat</name> - <_description>India - Bengali Probhat</_description> - <languageList> - <iso639Id>ben</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>guj</name> - <_description>India - Gujarati</_description> - <languageList> - <iso639Id>guj</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>guru</name> - <_description>India - Gurmukhi</_description> - <languageList> - <iso639Id>pan</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>jhelum</name> - <_description>India - Gurmukhi Jhelum</_description> - <languageList> - <iso639Id>pan</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>kan</name> - <_description>India - Kannada</_description> - <languageList> - <iso639Id>kan</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>mal</name> - <_description>India - Malayalam</_description> - <languageList> - <iso639Id>mal</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>mal_lalitha</name> - <_description>India - Malayalam Lalitha</_description> - <languageList> - <iso639Id>mal</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ori</name> - <_description>India - Oriya</_description> - <languageList> - <iso639Id>ori</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tam_unicode</name> - <_description>India - Tamil Unicode</_description> - <languageList> - <iso639Id>tam</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tam_keyboard_with_numerals</name> - <_description>India - Tamil Keyboard with Numerals</_description> - <languageList> - <iso639Id>tam</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tam_TAB</name> - <_description>India - Tamil TAB Typewriter</_description> - <languageList> - <iso639Id>tam</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tam_TSCII</name> - <_description>India - Tamil TSCII Typewriter</_description> - <languageList> - <iso639Id>tam</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tam</name> - <_description>India - Tamil</_description> - <languageList> - <iso639Id>tam</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tel</name> - <_description>India - Telugu</_description> - <languageList> - <iso639Id>tel</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>urd-phonetic</name> - <_description>India - Urdu, Phonetic</_description> - <languageList> - <iso639Id>urd</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>urd-phonetic3</name> - <_description>India - Urdu, Alternative phonetic</_description> - <languageList> - <iso639Id>urd</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>urd-winkeys</name> - <_description>India - Urdu, Winkeys</_description> - <languageList> - <iso639Id>urd</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>bolnagri</name> - <_description>India - Hindi Bolnagri</_description> - <languageList> - <iso639Id>hin</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>hin-wx</name> - <_description>India - Hindi Wx</_description> - <languageList> - <iso639Id>hin</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>eng</name> - <_description>India - English with RupeeSign</_description> - <languageList> - <iso639Id>eng</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ba</name> - <_shortDescription>Bih</_shortDescription> - <_description>Bosnia and Herzegovina</_description> - <languageList> - <iso639Id>bos</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>alternatequotes</name> - <_description>Bosnia and Herzegovina - Use guillemets for quotes</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>unicode</name> - <_description>Bosnia and Herzegovina - Use Bosnian digraphs</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>unicodeus</name> - <_description>Bosnia and Herzegovina - US keyboard with Bosnian digraphs</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>us</name> - <_description>Bosnia and Herzegovina - US keyboard with Bosnian letters</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>br</name> - <_shortDescription>Bra</_shortDescription> - <_description>Brazil</_description> - <languageList> - <iso639Id>por</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Brazil - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>Brazil - Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nativo</name> - <_description>Brazil - Nativo</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nativo-us</name> - <_description>Brazil - Nativo for USA keyboards</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nativo-epo</name> - <_description>Brazil - Nativo for Esperanto</_description> - <languageList> - <iso639Id>epo</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>bg</name> - <_shortDescription>Bgr</_shortDescription> - <_description>Bulgaria</_description> - <languageList> - <iso639Id>bul</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>phonetic</name> - <_description>Bulgaria - Traditional phonetic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>bas_phonetic</name> - <_description>Bulgaria - New phonetic</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ma</name> - <_description>Morocco</_description> - </configItem> - <variantList> - <variant> - <configItem> - <name>french</name> - <_description>Morocco - French</_description> - <languageList> - <iso639Id>fra</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tifinagh</name> - <_description>Morocco - Tifinagh</_description> - <languageList> - <iso639Id>ber</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tifinagh-alt</name> - <_description>Morocco - Tifinagh alternative</_description> - <languageList> - <iso639Id>ber</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tifinagh-alt-phonetic</name> - <_description>Morocco - Tifinagh alternative phonetic</_description> - <languageList> - <iso639Id>ber</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tifinagh-extended</name> - <_description>Morocco - Tifinagh extended</_description> - <languageList> - <iso639Id>ber</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tifinagh-phonetic</name> - <_description>Morocco - Tifinagh phonetic</_description> - <languageList> - <iso639Id>ber</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tifinagh-extended-phonetic</name> - <_description>Morocco - Tifinagh extended phonetic</_description> - <languageList> - <iso639Id>ber</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>mm</name> - <_shortDescription>Mmr</_shortDescription> - <_description>Myanmar</_description> - <languageList> - <iso639Id>mya</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>ca</name> - <_shortDescription>Can</_shortDescription> - <_description>Canada</_description> - <languageList> - <iso639Id>fra</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>fr-dvorak</name> - <_description>Canada - French Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>fr-legacy</name> - <_description>Canada - French (legacy)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>multix</name> - <_description>Canada - Multilingual</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>multi</name> - <_description>Canada - Multilingual, first part</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>multi-2gr</name> - <_description>Canada - Multilingual, second part</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ike</name> - <_description>Canada - Inuktitut</_description> - <languageList> - <iso639Id>iku</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>shs</name> - <_description>Canada - Secwepemctsin</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>kut</name> - <_description>Canada - Ktunaxa</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>eng</name> - <_description>Canada - English</_description> - <languageList> - <iso639Id>eng</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>cd</name> - <_shortDescription>COD</_shortDescription> - <_description>Congo, Democratic Republic of the</_description> - <languageList> - <iso639Id>fra</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>cn</name> - <_shortDescription>Chn</_shortDescription> - <_description>China</_description> - <languageList> - <iso639Id>chi</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>tib</name> - <_description>China - Tibetan</_description> - <languageList> - <iso639Id>tib</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tib_asciinum</name> - <_description>China - Tibetan (with ASCII numerals)</_description> - <languageList> - <iso639Id>tib</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>uig</name> - <_description>China - Uyghur</_description> - <languageList> - <iso639Id>uig</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>hr</name> - <_shortDescription>Hrv</_shortDescription> - <_description>Croatia</_description> - <languageList> - <iso639Id>scr</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>alternatequotes</name> - <_description>Croatia - Use guillemets for quotes</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>unicode</name> - <_description>Croatia - Use Croatian digraphs</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>unicodeus</name> - <_description>Croatia - US keyboard with Croatian digraphs</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>us</name> - <_description>Croatia - US keyboard with Croatian letters</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>cz</name> - <_shortDescription>Cze</_shortDescription> - <_description>Czechia</_description> - <languageList> - <iso639Id>cze</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>bksl</name> - <_description>Czechia - With <\|> key</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>qwerty</name> - <_description>Czechia - qwerty</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>qwerty_bksl</name> - <_description>Czechia - qwerty, extended Backslash</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ucw</name> - <_description>Czechia - UCW layout (accented letters only)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak-ucw</name> - <_description>Czechia - US Dvorak with CZ UCW support</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>dk</name> - <_shortDescription>Dnk</_shortDescription> - <_description>Denmark</_description> - <languageList> - <iso639Id>dan</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Denmark - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Denmark - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac_nodeadkeys</name> - <_description>Denmark - Macintosh, eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>Denmark - Dvorak</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>nl</name> - <_shortDescription>Nld</_shortDescription> - <_description>Netherlands</_description> - <languageList> - <iso639Id>nld</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>sundeadkeys</name> - <_description>Netherlands - Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Netherlands - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>std</name> - <_description>Netherlands - Standard</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>bt</name> - <_shortDescription>Btn</_shortDescription> - <_description>Bhutan</_description> - <languageList> - <iso639Id>dzo</iso639Id> - </languageList> - </configItem> - </layout> - <layout> - <configItem> - <name>ee</name> - <_shortDescription>Est</_shortDescription> - <_description>Estonia</_description> - <languageList> - <iso639Id>est</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Estonia - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>Estonia - Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>us</name> - <_description>Estonia - US keyboard with Estonian letters</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ir</name> - <_shortDescription>Irn</_shortDescription> - <_description>Iran</_description> - <languageList> - <iso639Id>per</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>pes_keypad</name> - <_description>Iran - Persian, with Persian Keypad</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ku</name> - <_description>Iran - Kurdish, Latin Q</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ku_f</name> - <_description>Iran - Kurdish, (F)</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ku_alt</name> - <_description>Iran - Kurdish, Latin Alt-Q</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ku_ara</name> - <_description>Iran - Kurdish, Arabic-Latin</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>iq</name> - <_shortDescription>Irq</_shortDescription> - <_description>Iraq</_description> - <languageList><iso639Id>ara</iso639Id> - <iso639Id>kur</iso639Id></languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>ku</name> - <_description>Iraq - Kurdish, Latin Q</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ku_f</name> - <_description>Iraq - Kurdish, (F)</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ku_alt</name> - <_description>Iraq - Kurdish, Latin Alt-Q</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ku_ara</name> - <_description>Iraq - Kurdish, Arabic-Latin</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>fo</name> - <_shortDescription>Fro</_shortDescription> - <_description>Faroe Islands</_description> - <languageList> - <iso639Id>fao</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Faroe Islands - Eliminate dead keys</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>fi</name> - <_shortDescription>Fin</_shortDescription> - <_description>Finland</_description> - <languageList> - <iso639Id>fin</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>classic</name> - <_description>Finland - Classic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Finland - Classic, eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>smi</name> - <_description>Finland - Northern Saami</_description> - <languageList><iso639Id>smi</iso639Id> - <iso639Id>sme</iso639Id></languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Finland - Macintosh</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>fr</name> - <_shortDescription>Fra</_shortDescription> - <_description>France</_description> - <languageList> - <iso639Id>fra</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>France - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>sundeadkeys</name> - <_description>France - Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>oss</name> - <_description>France - Alternative</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>oss_latin9</name> - <_description>France - Alternative, latin-9 only</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>oss_nodeadkeys</name> - <_description>France - Alternative, eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>oss_sundeadkeys</name> - <_description>France - Alternative, Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latin9</name> - <_description>France - (Legacy) Alternative</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latin9_nodeadkeys</name> - <_description>France - (Legacy) Alternative, eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latin9_sundeadkeys</name> - <_description>France - (Legacy) Alternative, Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>bepo</name> - <_description>France - Bepo, ergonomic, Dvorak way</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>bepo_latin9</name> - <_description>France - Bepo, ergonomic, Dvorak way, latin-9 only</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>France - Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>France - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>bre</name> - <_description>France - Breton</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>oci</name> - <_description>France - Occitan</_description> - <languageList> - <iso639Id>oci</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>geo</name> - <_description>France - Georgian AZERTY Tskapo</_description> - <languageList> - <iso639Id>geo</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>gh</name> - <_shortDescription>Gha</_shortDescription> - <_description>Ghana</_description> - <languageList> - <iso639Id>eng</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>generic</name> - <_description>Ghana - Multilingual</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>akan</name> - <_description>Ghana - Akan</_description> - <languageList> - <iso639Id>aka</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ewe</name> - <_description>Ghana - Ewe</_description> - <languageList> - <iso639Id>ewe</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>fula</name> - <_description>Ghana - Fula</_description> - <languageList> - <iso639Id>ful</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ga</name> - <_description>Ghana - Ga</_description> - <languageList> - <iso639Id>gaa</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>hausa</name> - <_description>Ghana - Hausa</_description> - <languageList> - <iso639Id>hau</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>avn</name> - <_description>Ghana - Avatime</_description> - <languageList> - <iso639Id>avn</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>gillbt</name> - <_description>Ghana - GILLBT</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>gn</name> - <_shortDescription>Gin</_shortDescription> - <_description>Guinea</_description> - <languageList> - <iso639Id>fra</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>ge</name> - <_shortDescription>Geo</_shortDescription> - <_description>Georgia</_description> - <languageList> - <iso639Id>geo</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>ergonomic</name> - <_description>Georgia - Ergonomic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mess</name> - <_description>Georgia - MESS</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ru</name> - <_description>Georgia - Russian</_description> - <languageList> - <iso639Id>rus</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>os</name> - <_description>Georgia - Ossetian</_description> - <languageList> - <iso639Id>oss</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>de</name> - <_shortDescription>Deu</_shortDescription> - <_description>Germany</_description> - <languageList> - <iso639Id>ger</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>deadacute</name> - <_description>Germany - Dead acute</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>deadgraveacute</name> - <_description>Germany - Dead grave acute</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Germany - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ro</name> - <_description>Germany - Romanian keyboard with German letters</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ro_nodeadkeys</name> - <_description>Germany - Romanian keyboard with German letters, eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>Germany - Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>sundeadkeys</name> - <_description>Germany - Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>neo</name> - <_description>Germany - Neo 2</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Germany - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac_nodeadkeys</name> - <_description>Germany - Macintosh, eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dsb</name> - <_description>Germany - Lower Sorbian</_description> - <languageList> - <iso639Id>dsb</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>dsb_qwertz</name> - <_description>Germany - Lower Sorbian (qwertz)</_description> - <languageList> - <iso639Id>dsb</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>qwerty</name> - <_description>Germany - qwerty</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ru</name> - <_description>Germany - Russian phonetic</_description> - <languageList> - <iso639Id>rus</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>gr</name> - <_shortDescription>Grc</_shortDescription> - <_description>Greece</_description> - <languageList> - <iso639Id>gre</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>simple</name> - <_description>Greece - Simple</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>extended</name> - <_description>Greece - Extended</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Greece - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>polytonic</name> - <_description>Greece - Polytonic</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>hu</name> - <_shortDescription>Hun</_shortDescription> - <_description>Hungary</_description> - <languageList> - <iso639Id>hun</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>standard</name> - <_description>Hungary - Standard</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Hungary - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>qwerty</name> - <_description>Hungary - qwerty</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>101_qwertz_comma_dead</name> - <_description>Hungary - 101/qwertz/comma/Dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>101_qwertz_comma_nodead</name> - <_description>Hungary - 101/qwertz/comma/Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>101_qwertz_dot_dead</name> - <_description>Hungary - 101/qwertz/dot/Dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>101_qwertz_dot_nodead</name> - <_description>Hungary - 101/qwertz/dot/Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>101_qwerty_comma_dead</name> - <_description>Hungary - 101/qwerty/comma/Dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>101_qwerty_comma_nodead</name> - <_description>Hungary - 101/qwerty/comma/Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>101_qwerty_dot_dead</name> - <_description>Hungary - 101/qwerty/dot/Dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>101_qwerty_dot_nodead</name> - <_description>Hungary - 101/qwerty/dot/Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>102_qwertz_comma_dead</name> - <_description>Hungary - 102/qwertz/comma/Dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>102_qwertz_comma_nodead</name> - <_description>Hungary - 102/qwertz/comma/Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>102_qwertz_dot_dead</name> - <_description>Hungary - 102/qwertz/dot/Dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>102_qwertz_dot_nodead</name> - <_description>Hungary - 102/qwertz/dot/Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>102_qwerty_comma_dead</name> - <_description>Hungary - 102/qwerty/comma/Dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>102_qwerty_comma_nodead</name> - <_description>Hungary - 102/qwerty/comma/Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>102_qwerty_dot_dead</name> - <_description>Hungary - 102/qwerty/dot/Dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>102_qwerty_dot_nodead</name> - <_description>Hungary - 102/qwerty/dot/Eliminate dead keys</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>is</name> - <_shortDescription>Isl</_shortDescription> - <_description>Iceland</_description> - <languageList> - <iso639Id>ice</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>Sundeadkeys</name> - <_description>Iceland - Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Iceland - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Iceland - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>Iceland - Dvorak</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>il</name> - <_shortDescription>Isr</_shortDescription> - <_description>Israel</_description> - <languageList> - <iso639Id>heb</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>lyx</name> - <_description>Israel - lyx</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>phonetic</name> - <_description>Israel - Phonetic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>biblical</name> - <_description>Israel - Biblical Hebrew (Tiro)</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>it</name> - <_shortDescription>Ita</_shortDescription> - <_description>Italy</_description> - <languageList> - <iso639Id>ita</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Italy - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Italy - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>us</name> - <_description>Italy - US keyboard with Italian letters</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>geo</name> - <_description>Italy - Georgian</_description> - <languageList> - <iso639Id>geo</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>jp</name> - <_shortDescription>Jpn</_shortDescription> - <_description>Japan</_description> - <languageList> - <iso639Id>jpn</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>kana</name> - <_description>Japan - Kana</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>kana86</name> - <_description>Japan - Kana 86</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>OADG109A</name> - <_description>Japan - OADG 109A</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Japan - Macintosh</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>kg</name> - <_shortDescription>Kgz</_shortDescription> - <_description>Kyrgyzstan</_description> - <languageList> - <iso639Id>kir</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>phonetic</name> - <_description>Kyrgyzstan - Phonetic</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>kh</name> - <_shortDescription>Khm</_shortDescription> - <_description>Cambodia</_description> - <languageList> - <iso639Id>khm</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>kz</name> - <_shortDescription>Kaz</_shortDescription> - <_description>Kazakhstan</_description> - <languageList> - <iso639Id>kaz</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>ruskaz</name> - <_description>Kazakhstan - Russian with Kazakh</_description> - <languageList><iso639Id>kaz</iso639Id> - <iso639Id>rus</iso639Id></languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>kazrus</name> - <_description>Kazakhstan - Kazakh with Russian</_description> - <languageList><iso639Id>kaz</iso639Id> - <iso639Id>rus</iso639Id></languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>la</name> - <_shortDescription>Lao</_shortDescription> - <_description>Laos</_description> - <languageList> - <iso639Id>lao</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>stea</name> - <_description>Laos - STEA (proposed standard layout)</_description> - <languageList><iso639Id>lao</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>latam</name> - <_shortDescription>Esp</_shortDescription> - <_description>Latin American</_description> - <countryList> - <iso3166Id>AR</iso3166Id> - <iso3166Id>BO</iso3166Id> - <iso3166Id>CL</iso3166Id> - <iso3166Id>CO</iso3166Id> - <iso3166Id>CR</iso3166Id> - <iso3166Id>CU</iso3166Id> - <iso3166Id>DO</iso3166Id> - <iso3166Id>EC</iso3166Id> - <iso3166Id>GT</iso3166Id> - <iso3166Id>HN</iso3166Id> - <iso3166Id>HT</iso3166Id> - <iso3166Id>MX</iso3166Id> - <iso3166Id>NI</iso3166Id> - <iso3166Id>PA</iso3166Id> - <iso3166Id>PE</iso3166Id> - <iso3166Id>PR</iso3166Id> - <iso3166Id>PY</iso3166Id> - <iso3166Id>SV</iso3166Id> - <iso3166Id>US</iso3166Id> - <iso3166Id>UY</iso3166Id> - <iso3166Id>VE</iso3166Id> - </countryList> - <languageList> - <iso639Id>spa</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Latin American - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>deadtilde</name> - <_description>Latin American - Include dead tilde</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>sundeadkeys</name> - <_description>Latin American - Sun dead keys</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>lt</name> - <_shortDescription>Ltu</_shortDescription> - <_description>Lithuania</_description> - <languageList> - <iso639Id>lit</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>std</name> - <_description>Lithuania - Standard</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>us</name> - <_description>Lithuania - US keyboard with Lithuanian letters</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ibm</name> - <_description>Lithuania - IBM (LST 1205-92)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>lekp</name> - <_description>Lithuania - LEKP</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>lekpa</name> - <_description>Lithuania - LEKPa</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>lv</name> - <_shortDescription>Lva</_shortDescription> - <_description>Latvia</_description> - <languageList> - <iso639Id>lav</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>apostrophe</name> - <_description>Latvia - Apostrophe (') variant</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>tilde</name> - <_description>Latvia - Tilde (~) variant</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>fkey</name> - <_description>Latvia - F-letter (F) variant</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>mao</name> - <_shortDescription>Mao</_shortDescription> - <_description>Maori</_description> - <languageList> - <iso639Id>mao</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>me</name> - <_shortDescription>MNE</_shortDescription> - <_description>Montenegro</_description> - <languageList> - <iso639Id>srp</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>cyrillic</name> - <_description>Montenegro - Cyrillic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>cyrillicyz</name> - <_description>Montenegro - Cyrillic, Z and ZHE swapped</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latinunicode</name> - <_description>Montenegro - Latin unicode</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latinyz</name> - <_description>Montenegro - Latin qwerty</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latinunicodeyz</name> - <_description>Montenegro - Latin unicode qwerty</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>cyrillicalternatequotes</name> - <_description>Montenegro - Cyrillic with guillemets</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latinalternatequotes</name> - <_description>Montenegro - Latin with guillemets</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>mk</name> - <_shortDescription>Mkd</_shortDescription> - <_description>Macedonia</_description> - <languageList> - <iso639Id>mkd</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Macedonia - Eliminate dead keys</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>mt</name> - <_shortDescription>Mlt</_shortDescription> - <_description>Malta</_description> - <languageList> - <iso639Id>mlt</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>us</name> - <_description>Malta - Maltese keyboard with US layout</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>mn</name> - <_shortDescription>Mng</_shortDescription> - <_description>Mongolia</_description> - <languageList> - <iso639Id>mng</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>no</name> - <_shortDescription>Nor</_shortDescription> - <_description>Norway</_description> - <languageList> - <iso639Id>nor</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Norway - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>Norway - Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>smi</name> - <_description>Norway - Northern Saami</_description> - <languageList> - <iso639Id>sme</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>smi_nodeadkeys</name> - <_description>Norway - Northern Saami, eliminate dead keys</_description> - <languageList> - <iso639Id>sme</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Norway - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac_nodeadkeys</name> - <_description>Norway - Macintosh, eliminate dead keys</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>pl</name> - <_shortDescription>Pol</_shortDescription> - <_description>Poland</_description> - <languageList> - <iso639Id>pol</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>qwertz</name> - <_description>Poland - qwertz</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>Poland - Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak_quotes</name> - <_description>Poland - Dvorak, Polish quotes on quotemark key</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak_altquotes</name> - <_description>Poland - Dvorak, Polish quotes on key 1</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>csb</name> - <_description>Poland - Kashubian</_description> - <languageList> - <iso639Id>csb</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ru_phonetic_dvorak</name> - <_description>Poland - Russian phonetic Dvorak</_description> - <languageList> - <iso639Id>rus</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>dvp</name> - <_description>Poland - Programmer Dvorak</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>pt</name> - <_shortDescription>Prt</_shortDescription> - <_description>Portugal</_description> - <languageList> - <iso639Id>por</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Portugal - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>sundeadkeys</name> - <_description>Portugal - Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Portugal - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac_nodeadkeys</name> - <_description>Portugal - Macintosh, eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac_sundeadkeys</name> - <_description>Portugal - Macintosh, Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nativo</name> - <_description>Portugal - Nativo</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nativo-us</name> - <_description>Portugal - Nativo for USA keyboards</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>nativo-epo</name> - <_description>Portugal - Nativo for Esperanto</_description> - <languageList> - <iso639Id>epo</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ro</name> - <_shortDescription>Rou</_shortDescription> - <_description>Romania</_description> - <languageList> - <iso639Id>rum</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>cedilla</name> - <_description>Romania - Cedilla</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>std</name> - <_description>Romania - Standard</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>std_cedilla</name> - <_description>Romania - Standard (Cedilla)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>winkeys</name> - <_description>Romania - Winkeys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>crh_f</name> - <_description>Romania - Crimean Tatar (Turkish F)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>crh_alt</name> - <_description>Romania - Crimean Tatar (Turkish Alt-Q)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>crh_dobruca1</name> - <_description>Romania - Crimean Tatar (Dobruca-1 Q)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>crh_dobruca2</name> - <_description>Romania - Crimean Tatar (Dobruca-2 Q)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ru</name> - <_shortDescription>Rus</_shortDescription> - <_description>Russia</_description> - <languageList> - <iso639Id>rus</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>phonetic</name> - <_description>Russia - Phonetic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>phonetic_winkeys</name> - <_description>Russia - Phonetic Winkeys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>typewriter</name> - <_description>Russia - Typewriter</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>legacy</name> - <_description>Russia - Legacy</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>typewriter-legacy</name> - <_description>Russia - Typewriter, legacy</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>tt</name> - <_description>Russia - Tatar</_description> - <languageList> - <iso639Id>tat</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>os_legacy</name> - <_description>Russia - Ossetian, legacy</_description> - <languageList> - <iso639Id>oss</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>os_winkeys</name> - <_description>Russia - Ossetian, Winkeys</_description> - <languageList> - <iso639Id>oss</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>cv</name> - <_description>Russia - Chuvash</_description> - <languageList> - <iso639Id>chv</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>cv_latin</name> - <_description>Russia - Chuvash Latin</_description> - <languageList> - <iso639Id>chv</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>udm</name> - <_description>Russia - Udmurt</_description> - <languageList> - <iso639Id>udm</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>kom</name> - <_description>Russia - Komi</_description> - <languageList> - <iso639Id>kom</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>sah</name> - <_description>Russia - Yakut</_description> - <languageList> - <iso639Id>sah</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>xal</name> - <_description>Russia - Kalmyk</_description> - <languageList> - <iso639Id>xal</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>dos</name> - <_description>Russia - DOS</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>srp</name> - <_description>Russia - Serbian</_description> - <languageList><iso639Id>rus</iso639Id> - <iso639Id>srp</iso639Id></languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>bak</name> - <_description>Russia - Bashkirian</_description> - <languageList> - <iso639Id>bak</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>chm</name> - <_description>Russia - Mari</_description> - <languageList> - <iso639Id>chm</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>rs</name> - <_shortDescription>SRB</_shortDescription> - <_description>Serbia</_description> - <languageList> - <iso639Id>srp</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>yz</name> - <_description>Serbia - Z and ZHE swapped</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latin</name> - <_description>Serbia - Latin</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latinunicode</name> - <_description>Serbia - Latin Unicode</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latinyz</name> - <_description>Serbia - Latin qwerty</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latinunicodeyz</name> - <_description>Serbia - Latin Unicode qwerty</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>alternatequotes</name> - <_description>Serbia - With guillemets</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>latinalternatequotes</name> - <_description>Serbia - Latin with guillemets</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>rue</name> - <_description>Serbia - Pannonian Rusyn Homophonic</_description> - <languageList> - <iso639Id>rue</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>si</name> - <_shortDescription>Svn</_shortDescription> - <_description>Slovenia</_description> - <languageList> - <iso639Id>slv</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>alternatequotes</name> - <_description>Slovenia - Use guillemets for quotes</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>us</name> - <_description>Slovenia - US keyboard with Slovenian letters</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>sk</name> - <_shortDescription>Svk</_shortDescription> - <_description>Slovakia</_description> - <languageList> - <iso639Id>slo</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>bksl</name> - <_description>Slovakia - Extended Backslash</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>qwerty</name> - <_description>Slovakia - qwerty</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>qwerty_bksl</name> - <_description>Slovakia - qwerty, extended Backslash</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>es</name> - <_shortDescription>Esp</_shortDescription> - <_description>Spain</_description> - <languageList> - <iso639Id>spa</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Spain - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>deadtilde</name> - <_description>Spain - Include dead tilde</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>sundeadkeys</name> - <_description>Spain - Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>Spain - Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ast</name> - <_description>Spain - Asturian variant with bottom-dot H and bottom-dot L</_description> - <languageList> - <iso639Id>ast</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>cat</name> - <_description>Spain - Catalan variant with middle-dot L</_description> - <languageList> - <iso639Id>cat</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Spain - Macintosh</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>se</name> - <_shortDescription>Swe</_shortDescription> - <_description>Sweden</_description> - <languageList> - <iso639Id>swe</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>nodeadkeys</name> - <_description>Sweden - Eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>Sweden - Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>rus</name> - <_description>Sweden - Russian phonetic</_description> - <languageList> - <iso639Id>rus</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>rus_nodeadkeys</name> - <_description>Sweden - Russian phonetic, eliminate dead keys</_description> - <languageList> - <iso639Id>rus</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>smi</name> - <_description>Sweden - Northern Saami</_description> - <languageList> - <iso639Id>sme</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>Sweden - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>svdvorak</name> - <_description>Sweden - Svdvorak</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ch</name> - <_shortDescription>Che</_shortDescription> - <_description>Switzerland</_description> - <languageList><iso639Id>ger</iso639Id> - <iso639Id>gsw</iso639Id></languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>legacy</name> - <_description>Switzerland - Legacy</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>de_nodeadkeys</name> - <_description>Switzerland - German, eliminate dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>de_sundeadkeys</name> - <_description>Switzerland - German, Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>fr</name> - <_description>Switzerland - French</_description> - <languageList> - <iso639Id>fra</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>fr_nodeadkeys</name> - <_description>Switzerland - French, eliminate dead keys</_description> - <languageList> - <iso639Id>fra</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>fr_sundeadkeys</name> - <_description>Switzerland - French, Sun dead keys</_description> - <languageList> - <iso639Id>fra</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>fr_mac</name> - <_description>Switzerland - French (Macintosh)</_description> - <languageList> - <iso639Id>fra</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>de_mac</name> - <_description>Switzerland - German (Macintosh)</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>sy</name> - <_shortDescription>Syr</_shortDescription> - <_description>Syria</_description> - <languageList> - <iso639Id>syr</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>syc</name> - <_description>Syria - Syriac</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>syc_phonetic</name> - <_description>Syria - Syriac phonetic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ku</name> - <_description>Syria - Kurdish, Latin Q</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ku_f</name> - <_description>Syria - Kurdish, (F)</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ku_alt</name> - <_description>Syria - Kurdish, Latin Alt-Q</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>tj</name> - <_shortDescription>Tjk</_shortDescription> - <_description>Tajikistan</_description> - <languageList> - <iso639Id>tgk</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>legacy</name> - <_description>Tajikistan - Legacy</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>lk</name> - <_shortDescription>Lka</_shortDescription> - <_description>Sri Lanka</_description> - <languageList> - <iso639Id>sin</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>tam_unicode</name> - <_description>Sri Lanka - Tamil Unicode</_description> - <languageList> - <iso639Id>tam</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>tam_TAB</name> - <_description>Sri Lanka - Tamil TAB Typewriter</_description> - <languageList> - <iso639Id>tam</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>th</name> - <_shortDescription>Tha</_shortDescription> - <_description>Thailand</_description> - <languageList> - <iso639Id>tha</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>tis</name> - <_description>Thailand - TIS-820.2538</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>pat</name> - <_description>Thailand - Pattachote</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>tr</name> - <_shortDescription>Tur</_shortDescription> - <_description>Turkey</_description> - <languageList> - <iso639Id>tur</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>f</name> - <_description>Turkey - (F)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>alt</name> - <_description>Turkey - Alt-Q</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>sundeadkeys</name> - <_description>Turkey - Sun dead keys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ku</name> - <_description>Turkey - Kurdish, Latin Q</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ku_f</name> - <_description>Turkey - Kurdish, (F)</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ku_alt</name> - <_description>Turkey - Kurdish, Latin Alt-Q</_description> - <languageList> - <iso639Id>kur</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>intl</name> - <_description>Turkey - International (with dead keys)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>crh</name> - <_description>Turkey - Crimean Tatar (Turkish Q)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>crh_f</name> - <_description>Turkey - Crimean Tatar (Turkish F)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>crh_alt</name> - <_description>Turkey - Crimean Tatar (Turkish Alt-Q)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ua</name> - <_shortDescription>Ukr</_shortDescription> - <_description>Ukraine</_description> - <languageList> - <iso639Id>ukr</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>phonetic</name> - <_description>Ukraine - Phonetic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>typewriter</name> - <_description>Ukraine - Typewriter</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>winkeys</name> - <_description>Ukraine - Winkeys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>legacy</name> - <_description>Ukraine - Legacy</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>rstu</name> - <_description>Ukraine - Standard RSTU</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>rstu_ru</name> - <_description>Ukraine - Standard RSTU on Russian layout</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>homophonic</name> - <_description>Ukraine - Homophonic</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>crh</name> - <_description>Ukraine - Crimean Tatar (Turkish Q)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>crh_f</name> - <_description>Ukraine - Crimean Tatar (Turkish F)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>crh_alt</name> - <_description>Ukraine - Crimean Tatar (Turkish Alt-Q)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>gb</name> - <_shortDescription>GBr</_shortDescription> - <_description>United Kingdom</_description> - <languageList> - <iso639Id>eng</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>extd</name> - <_description>United Kingdom - Extended - Winkeys</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>intl</name> - <_description>United Kingdom - International (with dead keys)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>United Kingdom - Dvorak</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorakukp</name> - <_description>United Kingdom - Dvorak (UK Punctuation)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac</name> - <_description>United Kingdom - Macintosh</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>mac_intl</name> - <_description>United Kingdom - Macintosh (International)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>colemak</name> - <_description>United Kingdom - Colemak</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>uz</name> - <_shortDescription>Uzb</_shortDescription> - <_description>Uzbekistan</_description> - <languageList> - <iso639Id>uzb</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>latin</name> - <_description>Uzbekistan - Latin</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>crh</name> - <_description>Uzbekistan - Crimean Tatar (Turkish Q)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>crh_f</name> - <_description>Uzbekistan - Crimean Tatar (Turkish F)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>crh_alt</name> - <_description>Uzbekistan - Crimean Tatar (Turkish Alt-Q)</_description> - <languageList> - <iso639Id>crh</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>vn</name> - <_shortDescription>Vnm</_shortDescription> - <_description>Vietnam</_description> - <languageList> - <iso639Id>vie</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>kr</name> - <_shortDescription>Kor</_shortDescription> - <_description>Korea, Republic of</_description> - <languageList> - <iso639Id>kor</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>kr104</name> - <_description>Korea, Republic of - 101/104 key Compatible</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>nec_vndr/jp</name> - <_shortDescription>Jpn</_shortDescription> - <_description>Japan (PC-98xx Series)</_description> - <countryList> - <iso3166Id>JP</iso3166Id> - </countryList> - <languageList> - <iso639Id>jpn</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>ie</name> - <_shortDescription>Irl</_shortDescription> - <_description>Ireland</_description> - <languageList> - <iso639Id>eng</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>CloGaelach</name> - <_description>Ireland - CloGaelach</_description> - <languageList> - <iso639Id>gla</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>UnicodeExpert</name> - <_description>Ireland - UnicodeExpert</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ogam</name> - <_description>Ireland - Ogham</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>ogam_is434</name> - <_description>Ireland - Ogham IS434</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>pk</name> - <_shortDescription>Pak</_shortDescription> - <_description>Pakistan</_description> - <languageList> - <iso639Id>urd</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>urd-crulp</name> - <_description>Pakistan - CRULP</_description> - <languageList> - <iso639Id>urd</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>urd-nla</name> - <_description>Pakistan - NLA</_description> - <languageList> - <iso639Id>urd</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>ara</name> - <_description>Pakistan - Arabic</_description> - <languageList> - <iso639Id>ara</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>snd</name> - <_description>Pakistan - Sindhi</_description> - <languageList> - <iso639Id>sd</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>mv</name> - <_shortDescription>Mdv</_shortDescription> - <_description>Maldives</_description> - <languageList> - <iso639Id>div</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>za</name> - <_shortDescription>Zaf</_shortDescription> - <_description>South Africa</_description> - <languageList> - <iso639Id>eng</iso639Id> - </languageList> - </configItem> - </layout> - <layout> - <configItem> - <name>epo</name> - <_shortDescription>Epo</_shortDescription> - <_description>Esperanto</_description> - <languageList> - <iso639Id>epo</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>legacy</name> - <_description>Esperanto - displaced semicolon and quote (obsolete)</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>np</name> - <_shortDescription>Npl</_shortDescription> - <_description>Nepal</_description> - <languageList> - <iso639Id>nep</iso639Id> - </languageList> - </configItem> - </layout> - <layout> - <configItem> - <name>ng</name> - <_shortDescription>Nga</_shortDescription> - <_description>Nigeria</_description> - <languageList> - <iso639Id>eng</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>igbo</name> - <_description>Nigeria - Igbo</_description> - <languageList> - <iso639Id>ibo</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>yoruba</name> - <_description>Nigeria - Yoruba</_description> - <languageList> - <iso639Id>yor</iso639Id> - </languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>hausa</name> - <_description>Nigeria - Hausa</_description> - <languageList> - <iso639Id>hau</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>et</name> - <_shortDescription>Eth</_shortDescription> - <_description>Ethiopia</_description> - <languageList> - <iso639Id>amh</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>sn</name> - <_shortDescription>Sen</_shortDescription> - <_description>Senegal</_description> - <languageList> - <iso639Id>wol</iso639Id> - </languageList> - </configItem> - <variantList/> - </layout> - <layout> - <configItem> - <name>brai</name> - <_shortDescription>Brl</_shortDescription> - <_description>Braille</_description> - </configItem> - <variantList> - <variant> - <configItem> - <name>left_hand</name> - <_description>Braille - Left hand</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>right_hand</name> - <_description>Braille - Right hand</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>tm</name> - <_shortDescription>Tkm</_shortDescription> - <_description>Turkmenistan</_description> - <languageList> - <iso639Id>tuk</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>alt</name> - <_description>Turkmenistan - Alt-Q</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>ml</name> - <_shortDescription>Mli</_shortDescription> - <_description>Mali</_description> - <languageList> - <iso639Id>bam</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>fr-oss</name> - <_description>Mali - Français (France Alternative)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>us-mac</name> - <_description>Mali - English (USA Macintosh)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>us-intl</name> - <_description>Mali - English (USA International)</_description> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>tz</name> - <_shortDescription>Tza</_shortDescription> - <_description>Tanzania</_description> - <languageList> - <iso639Id>swa</iso639Id> - </languageList> - </configItem> - </layout> - <layout> - <configItem> - <name>ke</name> - <_shortDescription>Ken</_shortDescription> - <_description>Kenya</_description> - <languageList> - <iso639Id>swa</iso639Id> - </languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>kik</name> - <_description>Kenya - Kikuyu</_description> - <languageList> - <iso639Id>kik</iso639Id> - </languageList> - </configItem> - </variant> - </variantList> - </layout> - <layout> - <configItem> - <name>bw</name> - <_shortDescription>Bwa</_shortDescription> - <_description>Botswana</_description> - <languageList> - <iso639Id>tsn</iso639Id> - </languageList> - </configItem> - </layout> - <layout> - <configItem> - <name>ph</name> - <_shortDescription>Phi</_shortDescription> - <_description>Philippines</_description> - <languageList><iso639Id>eng</iso639Id> - <iso639Id>bik</iso639Id> - <iso639Id>ceb</iso639Id> - <iso639Id>fil</iso639Id> - <iso639Id>hil</iso639Id> - <iso639Id>ilo</iso639Id> - <iso639Id>pam</iso639Id> - <iso639Id>pag</iso639Id> - <iso639Id>phi</iso639Id> - <iso639Id>tgl</iso639Id> - <iso639Id>war</iso639Id></languageList> - </configItem> - <variantList> - <variant> - <configItem> - <name>qwerty-bay</name> - <_description>Philippines - QWERTY (Baybayin)</_description> - <languageList><iso639Id>bik</iso639Id> - <iso639Id>ceb</iso639Id> - <iso639Id>fil</iso639Id> - <iso639Id>hil</iso639Id> - <iso639Id>ilo</iso639Id> - <iso639Id>pam</iso639Id> - <iso639Id>pag</iso639Id> - <iso639Id>phi</iso639Id> - <iso639Id>tgl</iso639Id> - <iso639Id>war</iso639Id></languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>capewell-dvorak</name> - <_description>Philippines - Capewell-Dvorak (Latin)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>capewell-dvorak-bay</name> - <_description>Philippines - Capewell-Dvorak (Baybayin)</_description> - <languageList><iso639Id>bik</iso639Id> - <iso639Id>ceb</iso639Id> - <iso639Id>fil</iso639Id> - <iso639Id>hil</iso639Id> - <iso639Id>ilo</iso639Id> - <iso639Id>pam</iso639Id> - <iso639Id>pag</iso639Id> - <iso639Id>phi</iso639Id> - <iso639Id>tgl</iso639Id> - <iso639Id>war</iso639Id></languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>capewell-qwerf2k6</name> - <_description>Philippines - Capewell-QWERF 2006 (Latin)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>capewell-qwerf2k6-bay</name> - <_description>Philippines - Capewell-QWERF 2006 (Baybayin)</_description> - <languageList><iso639Id>bik</iso639Id> - <iso639Id>ceb</iso639Id> - <iso639Id>fil</iso639Id> - <iso639Id>hil</iso639Id> - <iso639Id>ilo</iso639Id> - <iso639Id>pam</iso639Id> - <iso639Id>pag</iso639Id> - <iso639Id>phi</iso639Id> - <iso639Id>tgl</iso639Id> - <iso639Id>war</iso639Id></languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>colemak</name> - <_description>Philippines - Colemak (Latin)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>colemak-bay</name> - <_description>Philippines - Colemak (Baybayin)</_description> - <languageList><iso639Id>bik</iso639Id> - <iso639Id>ceb</iso639Id> - <iso639Id>fil</iso639Id> - <iso639Id>hil</iso639Id> - <iso639Id>ilo</iso639Id> - <iso639Id>pam</iso639Id> - <iso639Id>pag</iso639Id> - <iso639Id>phi</iso639Id> - <iso639Id>tgl</iso639Id> - <iso639Id>war</iso639Id></languageList> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak</name> - <_description>Philippines - Dvorak (Latin)</_description> - </configItem> - </variant> - <variant> - <configItem> - <name>dvorak-bay</name> - <_description>Philippines - Dvorak (Baybayin)</_description> - <languageList><iso639Id>bik</iso639Id> - <iso639Id>ceb</iso639Id> - <iso639Id>fil</iso639Id> - <iso639Id>hil</iso639Id> - <iso639Id>ilo</iso639Id> - <iso639Id>pam</iso639Id> - <iso639Id>pag</iso639Id> - <iso639Id>phi</iso639Id> - <iso639Id>tgl</iso639Id> - <iso639Id>war</iso639Id></languageList> - </configItem> - </variant> - </variantList> - </layout> - </layoutList> - <optionList> - <group allowMultipleSelection="true"> - <!-- The key combination used to switch between groups --> - <configItem> - <name>grp</name> - <_description>Key(s) to change layout</_description> - </configItem> - <option> - <configItem> - <name>grp:switch</name> - <_description>Right Alt (while pressed)</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:lswitch</name> - <_description>Left Alt (while pressed)</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:lwin_switch</name> - <_description>Left Win (while pressed)</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:rwin_switch</name> - <_description>Right Win (while pressed)</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:win_switch</name> - <_description>Any Win key (while pressed)</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:caps_switch</name> - <_description>Caps Lock (while pressed), Alt+Caps Lock does the original capslock action</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:rctrl_switch</name> - <_description>Right Ctrl (while pressed)</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:toggle</name> - <_description>Right Alt</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:lalt_toggle</name> - <_description>Left Alt</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:caps_toggle</name> - <_description>Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:shift_caps_toggle</name> - <_description>Shift+Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:shift_caps_switch</name> - <_description>Caps Lock (to first layout), Shift+Caps Lock (to last layout)</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:win_menu_switch</name> - <_description>Left Win (to first layout), Right Win/Menu (to last layout)</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:lctrl_rctrl_switch</name> - <_description>Left Ctrl (to first layout), Right Ctrl (to last layout)</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:alt_caps_toggle</name> - <_description>Alt+Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:shifts_toggle</name> - <_description>Both Shift keys together</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:alts_toggle</name> - <_description>Both Alt keys together</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:ctrls_toggle</name> - <_description>Both Ctrl keys together</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:ctrl_shift_toggle</name> - <_description>Ctrl+Shift</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:lctrl_lshift_toggle</name> - <_description>Left Ctrl+Left Shift</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:rctrl_rshift_toggle</name> - <_description>Right Ctrl+Right Shift</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:ctrl_alt_toggle</name> - <_description>Alt+Ctrl</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:alt_shift_toggle</name> - <_description>Alt+Shift</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:alt_space_toggle</name> - <_description>Alt+Space</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:menu_toggle</name> - <_description>Menu</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:lwin_toggle</name> - <_description>Left Win</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:rwin_toggle</name> - <_description>Right Win</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:lshift_toggle</name> - <_description>Left Shift</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:rshift_toggle</name> - <_description>Right Shift</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:lctrl_toggle</name> - <_description>Left Ctrl</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:rctrl_toggle</name> - <_description>Right Ctrl</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:sclk_toggle</name> - <_description>Scroll Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp:lctrl_lwin_rctrl_menu</name> - <_description>LeftCtrl+LeftWin (to first layout), RightCtrl+Menu (to second layout)</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="true"> - <!-- The key combination used to choose the 3rd (and 4th, together with Shift) - level of symbols --> - <configItem> - <name>lv3</name> - <_description>Key to choose 3rd level</_description> - </configItem> - <option> - <configItem> - <name>lv3:switch</name> - <_description>Right Ctrl</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:menu_switch</name> - <_description>Menu</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:win_switch</name> - <_description>Any Win key</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:lwin_switch</name> - <_description>Left Win</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:rwin_switch</name> - <_description>Right Win</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:alt_switch</name> - <_description>Any Alt key</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:lalt_switch</name> - <_description>Left Alt</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:ralt_switch</name> - <_description>Right Alt</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:ralt_switch_multikey</name> - <_description>Right Alt, Shift+Right Alt key is Multi_Key</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:ralt_alt</name> - <_description>Right Alt key never chooses 3rd level</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:enter_switch</name> - <_description>Enter on keypad</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:caps_switch</name> - <_description>Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:bksl_switch</name> - <_description>Backslash</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:lsgt_switch</name> - <_description><Less/Greater></_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:caps_switch_latch</name> - <_description>Caps Lock (chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:bksl_switch_latch</name> - <_description>Backslash chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:lsgt_switch_latch</name> - <_description><Less/Greater> (chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="true"> - <!-- Tweaking the position of the "Ctrl" key --> - <configItem> - <name>ctrl</name> - <_description>Ctrl key position</_description> - </configItem> - <option> - <configItem> - <name>ctrl:nocaps</name> - <_description>Make Caps Lock an additional Ctrl</_description> - </configItem> - </option> - <option> - <configItem> - <name>ctrl:lctrl_meta</name> - <_description>Meta on Left Ctrl</_description> - </configItem> - </option> - <option> - <configItem> - <name>ctrl:swapcaps</name> - <_description>Swap Ctrl and Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>ctrl:ctrl_ac</name> - <_description>At left of 'A'</_description> - </configItem> - </option> - <option> - <configItem> - <name>ctrl:ctrl_aa</name> - <_description>At bottom left</_description> - </configItem> - </option> - <option> - <configItem> - <name>ctrl:ctrl_ra</name> - <_description>Right Ctrl as Right Alt</_description> - </configItem> - </option> - <option> - <configItem> - <name>ctrl:ctrl_menu</name> - <_description>Right Ctrl is mapped to Menu</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="true"> - <!-- Using startard LEDs to indicate the alternative (not first) group(s) --> - <configItem> - <name>grp_led</name> - <_description>Use keyboard LED to show alternative layout</_description> - </configItem> - <option> - <configItem> - <name>grp_led:num</name> - <_description>Num Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp_led:caps</name> - <_description>Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>grp_led:scroll</name> - <_description>Scroll Lock</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="false"> - <!-- Select a keypad type --> - <configItem> - <name>keypad</name> - <_description>Numeric keypad layout selection</_description> - </configItem> - <option> - <configItem> - <name>keypad:legacy</name> - <_description>Legacy</_description> - </configItem> - </option> - <option> - <configItem> - <name>keypad:oss</name> - <_description>Unicode additions (arrows and math operators)</_description> - </configItem> - </option> - <option> - <configItem> - <name>keypad:future</name> - <_description>Unicode additions (arrows and math operators). Math operators on default level</_description> - </configItem> - </option> - <option> - <configItem> - <name>keypad:legacy_wang</name> - <_description>Legacy Wang 724</_description> - </configItem> - </option> - <option> - <configItem> - <name>keypad:oss_wang</name> - <_description>Wang 724 keypad with unicode additions (arrows and math operators)</_description> - </configItem> - </option> - <option> - <configItem> - <name>keypad:future_wang</name> - <_description>Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level</_description> - </configItem> - </option> - <option> - <configItem> - <name>keypad:hex</name> - <_description>Hexadecimal</_description> - </configItem> - </option> - <option> - <configItem> - <name>keypad:atm</name> - <_description>ATM/phone-style</_description> - </configItem> - </option> - </group> - <!-- This option should override the KPDL key defined in keypad; I hope it's declared in the right place --> - <group allowMultipleSelection="false"> - <!-- Select a keypad KPDL variant --> - <configItem> - <name>kpdl</name> - <_description>Numeric keypad delete key behaviour</_description> - </configItem> - <option> - <configItem> - <!-- Actually, with KP_DECIMAL, as the old keypad(dot) --> - <name>kpdl:dot</name> - <_description>Legacy key with dot</_description> - </configItem> - </option> - <option> - <configItem> - <name>kpdl:comma</name> - <!-- Actually, with KP_SEPARATOR, as the old keypad(comma) --> - <_description>Legacy key with comma</_description> - </configItem> - </option> - <option> - <configItem> - <name>kpdl:dotoss</name> - <_description>Four-level key with dot</_description> - </configItem> - </option> - <option> - <configItem> - <name>kpdl:dotoss_latin9</name> - <_description>Four-level key with dot, latin-9 restriction</_description> - </configItem> - </option> - <option> - <configItem> - <name>kpdl:commaoss</name> - <_description>Four-level key with comma</_description> - </configItem> - </option> - <option> - <configItem> - <name>kpdl:momayyezoss</name> - <_description>Four-level key with momayyez</_description> - </configItem> - </option> - <option> - <configItem> - <name>kpdl:kposs</name> - <!-- This assumes the KP_ abstract symbols are actually useful for some apps - The description needs to be rewritten --> - <_description>Four-level key with abstract separators</_description> - </configItem> - </option> - <option> - <configItem> - <name>kpdl:semi</name> - <_description>Semi-colon on third level</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="false"> - <!-- Caps Lock tweaks. - "Internal" capitalization means capitalization using some internal tables. - Otherwise "as Shift" - means using next group. --> - <configItem> - <name>caps</name> - <_description>Caps Lock key behavior</_description> - </configItem> - <option> - <configItem> - <name>caps:internal</name> - <_description>Caps Lock uses internal capitalization. Shift "pauses" Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:internal_nocancel</name> - <_description>Caps Lock uses internal capitalization. Shift doesn't affect Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:shift</name> - <_description>Caps Lock acts as Shift with locking. Shift "pauses" Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:shift_nocancel</name> - <_description>Caps Lock acts as Shift with locking. Shift doesn't affect Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:capslock</name> - <_description>Caps Lock toggles normal capitalization of alphabetic characters</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:numlock</name> - <_description>Make Caps Lock an additional Num Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:swapescape</name> - <_description>Swap ESC and Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:escape</name> - <_description>Make Caps Lock an additional ESC</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:backspace</name> - <_description>Make Caps Lock an additional Backspace</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:super</name> - <_description>Make Caps Lock an additional Super</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:hyper</name> - <_description>Make Caps Lock an additional Hyper</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:shiftlock</name> - <_description>Caps Lock toggles Shift so all keys are affected</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:none</name> - <_description>Caps Lock is disabled</_description> - </configItem> - </option> - <option> - <configItem> - <name>caps:ctrl_modifier</name> - <_description>Make Caps Lock an additional Control but keep the Caps_Lock keysym</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="false"> - <!-- Using special PC keys (Win, Menu) to work as standard X keys (Super, Hyper, etc.) --> - <configItem> - <name>altwin</name> - <_description>Alt/Win key behavior</_description> - </configItem> - <option> - <configItem> - <name>altwin:menu</name> - <_description>Add the standard behavior to Menu key</_description> - </configItem> - </option> - <option> - <configItem> - <name>altwin:meta_alt</name> - <_description>Alt and Meta are on Alt keys</_description> - </configItem> - </option> - <option> - <configItem> - <name>altwin:ctrl_win</name> - <_description>Control is mapped to Win keys (and the usual Ctrl keys)</_description> - </configItem> - </option> - <option> - <configItem> - <name>altwin:ctrl_alt_win</name> - <_description>Control is mapped to Alt keys, Alt is mapped to Win keys</_description> - </configItem> - </option> - <option> - <configItem> - <name>altwin:meta_win</name> - <_description>Meta is mapped to Win keys</_description> - </configItem> - </option> - <option> - <configItem> - <name>altwin:left_meta_win</name> - <_description>Meta is mapped to Left Win</_description> - </configItem> - </option> - <option> - <configItem> - <name>altwin:hyper_win</name> - <_description>Hyper is mapped to Win-keys</_description> - </configItem> - </option> - <option> - <configItem> - <name>altwin:alt_super_win</name> - <_description>Alt is mapped to Right Win, Super to Menu</_description> - </configItem> - </option> - <option> - <configItem> - <name>altwin:swap_lalt_lwin</name> - <_description>Left Alt is swapped with Left Win</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="true"> - <!-- Tweaking the position of the "Compose" key: mapping to existing PC keys --> - <configItem> - <name>Compose key</name> - <_description>Compose key position</_description> - </configItem> - <option> - <configItem> - <name>compose:ralt</name> - <_description>Right Alt</_description> - </configItem> - </option> - <option> - <configItem> - <name>compose:lwin</name> - <_description>Left Win</_description> - </configItem> - </option> - <option> - <configItem> - <name>compose:rwin</name> - <_description>Right Win</_description> - </configItem> - </option> - <option> - <configItem> - <name>compose:menu</name> - <_description>Menu</_description> - </configItem> - </option> - <option> - <configItem> - <name>compose:lctrl</name> - <_description>Left Ctrl</_description> - </configItem> - </option> - <option> - <configItem> - <name>compose:rctrl</name> - <_description>Right Ctrl</_description> - </configItem> - </option> - <option> - <configItem> - <name>compose:caps</name> - <_description>Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>compose:102</name> - <_description><Less/Greater></_description> - </configItem> - </option> - <option> - <configItem> - <name>compose:paus</name> - <_description>Pause</_description> - </configItem> - </option> - <option> - <configItem> - <name>compose:prsc</name> - <_description>PrtSc</_description> - </configItem> - </option> - <option> - <configItem> - <name>compose:sclk</name> - <_description>Scroll Lock</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="true"> - <configItem> - <name>compat</name> - <_description>Miscellaneous compatibility options</_description> - </configItem> - <option> - <configItem> - <name>numpad:pc</name> - <_description>Default numeric keypad keys</_description> - </configItem> - </option> - <option> - <configItem> - <name>numpad:mac</name> - <_description>Numeric keypad keys work as with Mac</_description> - </configItem> - </option> - <option> - <configItem> - <name>numpad:microsoft</name> - <_description>Shift with numeric keypad keys works as in MS Windows</_description> - </configItem> - </option> - <option> - <configItem> - <name>numpad:shift3</name> - <_description>Shift does not cancel Num Lock, chooses 3rd level instead</_description> - </configItem> - </option> - <option> - <configItem> - <name>srvrkeys:none</name> - <_description>Special keys (Ctrl+Alt+<key>) handled in a server</_description> - </configItem> - </option> - <option> - <configItem> - <name>apple:alupckeys</name> - <_description>Apple Aluminium Keyboard: emulate PC keys (Print, Scroll Lock, Pause, Num Lock)</_description> - </configItem> - </option> - <option> - <configItem> - <name>shift:breaks_caps</name> - <_description>Shift cancels Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>misc:typo</name> - <_description>Enable extra typographic characters</_description> - </configItem> - </option> - <option> - <configItem> - <name>shift:both_capslock</name> - <_description>Both Shift-Keys together toggle Caps Lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>shift:both_capslock_cancel</name> - <_description>Both Shift-Keys together activate Caps Lock, one Shift-Key deactivates</_description> - </configItem> - </option> - <option> - <configItem> - <name>shift:both_shiftlock</name> - <_description>Both Shift-Keys together toggle ShiftLock</_description> - </configItem> - </option> - <option> - <configItem> - <name>keypad:pointerkeys</name> - <_description>Toggle PointerKeys with Shift + NumLock.</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="true"> - <!-- Special shortcuts for the Euro character --> - <configItem> - <name>eurosign</name> - <_description>Adding currency signs to certain keys</_description> - </configItem> - <option> - <configItem> - <name>eurosign:e</name> - <_description>Euro on E</_description> - </configItem> - </option> - <option> - <configItem> - <name>eurosign:2</name> - <_description>Euro on 2</_description> - </configItem> - </option> - <option> - <configItem> - <name>eurosign:4</name> - <_description>Euro on 4</_description> - </configItem> - </option> - <option> - <configItem> - <name>eurosign:5</name> - <_description>Euro on 5</_description> - </configItem> - </option> - <option> - <configItem> - <name>rupeesign:4</name> - <_description>Rupee on 4</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="true"> - <configItem> - <name>lv5</name> - <_description>Key to choose 5th level</_description> - </configItem> - <option> - <configItem> - <name>lv5:lsgt_switch_lock</name> - <_description><Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv5:ralt_switch_lock</name> - <_description>Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv5:lwin_switch_lock</name> - <_description>Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv5:rwin_switch_lock</name> - <_description>Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv5:lsgt_switch_lock_cancel</name> - <_description><Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv5:ralt_switch_lock_cancel</name> - <_description>Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv5:lwin_switch_lock_cancel</name> - <_description>Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv5:rwin_switch_lock_cancel</name> - <_description>Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv5:lsgt_switch_lock_cancel</name> - <_description><Less/Greater> chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</_description> - </configItem> - </option> - <option> - <configItem> - <name>lv5:ralt_switch_lock_cancel</name> - <_description>Right Alt chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="false"> - <!-- Let space output NBSP, NNBSP, ZWNJ, and ZWJ for the desired level --> - <configItem> - <name>nbsp</name> - <_description>Using space key to input non-breakable space character</_description> - </configItem> - <option> - <configItem> - <name>nbsp:none</name> - <_description>Usual space at any level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:level2</name> - <_description>Non-breakable space character at second level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:level3</name> - <_description>Non-breakable space character at third level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:level3s</name> - <_description>Non-breakable space character at third level, nothing at fourth level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:level3n</name> - <_description>Non-breakable space character at third level, thin non-breakable space character at fourth level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:level4</name> - <_description>Non-breakable space character at fourth level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:level4n</name> - <_description>Non-breakable space character at fourth level, thin non-breakable space character at sixth level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:level4nl</name> - <_description>Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:zwnj2</name> - <_description>Zero-width non-joiner character at second level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:zwnj2zwj3</name> - <_description>Zero-width non-joiner character at second level, zero-width joiner character at third level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:zwnj2zwj3nb4</name> - <_description>Zero-width non-joiner character at second level, zero-width joiner character at third level, non-breakable space character at fourth level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:zwnj2nb3</name> - <_description>Zero-width non-joiner character at second level, non-breakable space character at third level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:zwnj2nb3s</name> - <_description>Zero-width non-joiner character at second level, non-breakable space character at third level, nothing at fourth level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:zwnj2nb3zwj4</name> - <_description>Zero-width non-joiner character at second level, non-breakable space character at third level, zero-width joiner at fourth level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:zwnj2nb3nnb4</name> - <_description>Zero-width non-joiner character at second level, non-breakable space character at third level, thin non-breakable space at fourth level</_description> - </configItem> - </option> - <option> - <configItem> - <name>nbsp:zwnj3zwj4</name> - <_description>Zero-width non-joiner character at third level, zero-width joiner at fourth level</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="true"> - <configItem> - <name>japan</name> - <_description>Japanese keyboard options</_description> - </configItem> - <option> - <configItem> - <name>japan:kana_lock</name> - <_description>Kana Lock key is locking</_description> - </configItem> - </option> - <option> - <configItem> - <name>japan:nicola_f_bs</name> - <_description>NICOLA-F style Backspace</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="false"> - <configItem> - <name>esperanto</name> - <_description>Adding Esperanto circumflexes (supersigno)</_description> - </configItem> - <option> - <configItem> - <name>esperanto:qwerty</name> - <_description>To the corresponding key in a Qwerty keyboard.</_description> - </configItem> - </option> - <option> - <configItem> - <name>esperanto:dvorak</name> - <_description>To the corresponding key in a Dvorak keyboard.</_description> - </configItem> - </option> - </group> - <group allowMultipleSelection="true"> - <configItem> - <name>terminate</name> - <_description>Key sequence to kill the X server</_description> - </configItem> - <option> - <configItem> - <name>terminate:ctrl_alt_bksp</name> - <_description>Control + Alt + Backspace</_description> - </configItem> - </option> - </group> - </optionList> -</xkbConfigRegistry> +<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE xkbConfigRegistry SYSTEM "xkb.dtd">
+<xkbConfigRegistry version="1.1">
+ <modelList>
+ <model>
+ <configItem>
+ <name>pc101</name>
+ <_description>Generic 101-key PC</_description>
+ <vendor>Generic</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>pc102</name>
+ <_description>Generic 102-key (Intl) PC</_description>
+ <vendor>Generic</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>pc104</name>
+ <_description>Generic 104-key PC</_description>
+ <vendor>Generic</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>pc105</name>
+ <_description>Generic 105-key (Intl) PC</_description>
+ <vendor>Generic</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>dell101</name>
+ <_description>Dell 101-key PC</_description>
+ <vendor>Dell</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>latitude</name>
+ <_description>Dell Latitude series laptop</_description>
+ <vendor>Dell</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>dellm65</name>
+ <_description>Dell Precision M65</_description>
+ <vendor>Dell</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>everex</name>
+ <_description>Everex STEPnote</_description>
+ <vendor>Everex</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>flexpro</name>
+ <_description>Keytronic FlexPro</_description>
+ <vendor>Keytronic</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoft</name>
+ <_description>Microsoft Natural</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>omnikey101</name>
+ <_description>Northgate OmniKey 101</_description>
+ <vendor>Northgate</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>winbook</name>
+ <_description>Winbook Model XP5</_description>
+ <vendor>Generic</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>pc98</name>
+ <_description>PC-98xx Series</_description>
+ <vendor>Generic</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>a4techKB21</name>
+ <_description>A4Tech KB-21</_description>
+ <vendor>A4Tech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>a4techKBS8</name>
+ <_description>A4Tech KBS-8</_description>
+ <vendor>A4Tech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>a4_rfkb23</name>
+ <_description>A4Tech Wireless Desktop RFKB-23</_description>
+ <vendor>A4Tech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>airkey</name>
+ <_description>Acer AirKey V</_description>
+ <vendor>Acer</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>azonaRF2300</name>
+ <_description>Azona RF2300 wireless Internet Keyboard</_description>
+ <vendor>Azona</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>scorpius</name>
+ <_description>Advance Scorpius KI</_description>
+ <vendor>Scorpius</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>brother</name>
+ <_description>Brother Internet Keyboard</_description>
+ <vendor>Brother</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>btc5113rf</name>
+ <_description>BTC 5113RF Multimedia</_description>
+ <vendor>BTC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>btc5126t</name>
+ <_description>BTC 5126T</_description>
+ <vendor>BTC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>btc6301urf</name>
+ <_description>BTC 6301URF</_description>
+ <vendor>BTC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>btc9000</name>
+ <_description>BTC 9000</_description>
+ <vendor>BTC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>btc9000a</name>
+ <_description>BTC 9000A</_description>
+ <vendor>BTC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>btc9001ah</name>
+ <_description>BTC 9001AH</_description>
+ <vendor>BTC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>btc5090</name>
+ <_description>BTC 5090</_description>
+ <vendor>BTC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>btc9019u</name>
+ <_description>BTC 9019U</_description>
+ <vendor>BTC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>btc9116u</name>
+ <_description>BTC 9116U Mini Wireless Internet and Gaming</_description>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>cherryblue</name>
+ <_description>Cherry Blue Line CyBo@rd</_description>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>cherryblueb</name>
+ <_description>Cherry CyMotion Master XPress</_description>
+ <vendor>Cherry</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>cherrybluea</name>
+ <_description>Cherry Blue Line CyBo@rd (alternate option)</_description>
+ <vendor>Cherry</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>cherrycyboard</name>
+ <_description>Cherry CyBo@rd USB-Hub</_description>
+ <vendor>Cherry</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>cherrycmexpert</name>
+ <_description>Cherry CyMotion Expert</_description>
+ <vendor>Cherry</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>cherrybunlim</name>
+ <_description>Cherry B.UNLIMITED</_description>
+ <vendor>Cherry</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>chicony</name>
+ <_description>Chicony Internet Keyboard</_description>
+ <vendor>Chicony</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>chicony0108</name>
+ <_description>Chicony KU-0108</_description>
+ <vendor>Chicony</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>chicony0420</name>
+ <_description>Chicony KU-0420</_description>
+ <vendor>Chicony</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>chicony9885</name>
+ <_description>Chicony KB-9885</_description>
+ <vendor>Chicony</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>compaqeak8</name>
+ <_description>Compaq Easy Access Keyboard</_description>
+ <vendor>Compaq</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>compaqik7</name>
+ <_description>Compaq Internet Keyboard (7 keys)</_description>
+ <vendor>Compaq</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>compaqik13</name>
+ <_description>Compaq Internet Keyboard (13 keys)</_description>
+ <vendor>Compaq</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>compaqik18</name>
+ <_description>Compaq Internet Keyboard (18 keys)</_description>
+ <vendor>Compaq</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>cymotionlinux</name>
+ <_description>Cherry CyMotion Master Linux</_description>
+ <vendor>Cherry</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>armada</name>
+ <_description>Laptop/notebook Compaq (eg. Armada) Laptop Keyboard</_description>
+ <vendor>Compaq</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>presario</name>
+ <_description>Laptop/notebook Compaq (eg. Presario) Internet Keyboard</_description>
+ <vendor>Compaq</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>ipaq</name>
+ <_description>Compaq iPaq Keyboard</_description>
+ <vendor>Compaq</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>dell</name>
+ <_description>Dell</_description>
+ <vendor>Dell</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>dellsk8125</name>
+ <_description>Dell SK-8125</_description>
+ <vendor>Dell</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>dellsk8135</name>
+ <_description>Dell SK-8135</_description>
+ <vendor>Dell</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>dellusbmm</name>
+ <_description>Dell USB Multimedia Keyboard</_description>
+ <vendor>Dell</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>inspiron</name>
+ <_description>Dell Laptop/notebook Inspiron 6xxx/8xxx</_description>
+ <vendor>Dell</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>precision_m</name>
+ <_description>Dell Laptop/notebook Precision M series</_description>
+ <vendor>Dell</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>dexxa</name>
+ <_description>Dexxa Wireless Desktop Keyboard</_description>
+ <vendor>Dexxa</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>diamond</name>
+ <_description>Diamond 9801 / 9802 series</_description>
+ <vendor>Diamond</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>dtk2000</name>
+ <_description>DTK2000</_description>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>ennyah_dkb1008</name>
+ <_description>Ennyah DKB-1008</_description>
+ <vendor>Ennyah</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>fscaa1667g</name>
+ <_description>Fujitsu-Siemens Computers AMILO laptop</_description>
+ <vendor>Fujitsu-Siemens</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>genius</name>
+ <_description>Genius Comfy KB-16M / Genius MM Keyboard KWD-910</_description>
+ <vendor>Genius</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>geniuscomfy</name>
+ <_description>Genius Comfy KB-12e</_description>
+ <vendor>Genius</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>geniuscomfy2</name>
+ <_description>Genius Comfy KB-21e-Scroll</_description>
+ <vendor>Genius</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>geniuskb19e</name>
+ <_description>Genius KB-19e NB</_description>
+ <vendor>Genius</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>geniuskkb2050hs</name>
+ <_description>Genius KKB-2050HS</_description>
+ <vendor>Genius</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>gyration</name>
+ <_description>Gyration</_description>
+ <vendor>Gyration</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>htcdream</name>
+ <_description>HTC Dream</_description>
+ <vendor>HTC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>kinesis</name>
+ <_description>Kinesis</_description>
+ <vendor>Kinesis</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logitech_base</name>
+ <_description>Logitech Generic Keyboard</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logitech_g15</name>
+ <_description>Logitech G15 extra keys via G15daemon</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hpi6</name>
+ <_description>Hewlett-Packard Internet Keyboard</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hp250x</name>
+ <_description>Hewlett-Packard SK-250x Multimedia Keyboard</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hpxe3gc</name>
+ <_description>Hewlett-Packard Omnibook XE3 GC</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hpxe3gf</name>
+ <_description>Hewlett-Packard Omnibook XE3 GF</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hpxt1000</name>
+ <_description>Hewlett-Packard Omnibook XT1000</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hpdv5</name>
+ <_description>Hewlett-Packard Pavilion dv5</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hpzt11xx</name>
+ <_description>Hewlett-Packard Pavilion ZT11xx</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hp500fa</name>
+ <_description>Hewlett-Packard Omnibook 500 FA</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hp5xx</name>
+ <_description>Hewlett-Packard Omnibook 5xx</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hpnx9020</name>
+ <_description>Hewlett-Packard nx9020</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hp6000</name>
+ <_description>Hewlett-Packard Omnibook 6000/6100</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>honeywell_euroboard</name>
+ <_description>Honeywell Euroboard</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hpmini110</name>
+ <_description>Hewlett-Packard Mini 110 Notebook</_description>
+ <vendor>Hewlett-Packard</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>rapidaccess</name>
+ <_description>IBM Rapid Access</_description>
+ <vendor>Lenovo (previously IBM)</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>rapidaccess2</name>
+ <_description>IBM Rapid Access II</_description>
+ <vendor>Lenovo (previously IBM)</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>thinkpad</name>
+ <_description>IBM ThinkPad 560Z/600/600E/A22E</_description>
+ <vendor>Lenovo (previously IBM)</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>thinkpad60</name>
+ <_description>IBM ThinkPad R60/T60/R61/T61</_description>
+ <vendor>Lenovo (previously IBM)</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>thinkpadz60</name>
+ <_description>IBM ThinkPad Z60m/Z60t/Z61m/Z61t</_description>
+ <vendor>Lenovo (previously IBM)</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>ibm_spacesaver</name>
+ <_description>IBM Space Saver</_description>
+ <vendor>Lenovo (previously IBM)</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logiaccess</name>
+ <_description>Logitech Access Keyboard</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logiclx300</name>
+ <_description>Logitech Cordless Desktop LX-300</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logii350</name>
+ <_description>Logitech Internet 350 Keyboard</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logimel</name>
+ <_description>Logitech Media Elite Keyboard</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logicd</name>
+ <_description>Logitech Cordless Desktop</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logicd_it</name>
+ <_description>Logitech Cordless Desktop iTouch</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logicd_nav</name>
+ <_description>Logitech Cordless Desktop Navigator</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logicd_opt</name>
+ <_description>Logitech Cordless Desktop Optical</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logicda</name>
+ <_description>Logitech Cordless Desktop (alternate option)</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logicdpa2</name>
+ <_description>Logitech Cordless Desktop Pro (alternate option 2)</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logicfn</name>
+ <_description>Logitech Cordless Freedom/Desktop Navigator</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logicdn</name>
+ <_description>Logitech Cordless Desktop Navigator</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logiitc</name>
+ <_description>Logitech iTouch Cordless Keyboard (model Y-RB6)</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logiik</name>
+ <_description>Logitech Internet Keyboard</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>itouch</name>
+ <_description>Logitech iTouch</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logicink</name>
+ <_description>Logitech Internet Navigator Keyboard</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logiex110</name>
+ <_description>Logitech Cordless Desktop EX110</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logiinkse</name>
+ <_description>Logitech iTouch Internet Navigator Keyboard SE</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logiinkseusb</name>
+ <_description>Logitech iTouch Internet Navigator Keyboard SE (USB)</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logiultrax</name>
+ <_description>Logitech Ultra-X Keyboard</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logiultraxc</name>
+ <_description>Logitech Ultra-X Cordless Media Desktop Keyboard</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logidinovo</name>
+ <_description>Logitech diNovo Keyboard</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>logidinovoedge</name>
+ <_description>Logitech diNovo Edge Keyboard</_description>
+ <vendor>Logitech</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>mx1998</name>
+ <_description>Memorex MX1998</_description>
+ <vendor>Memorex</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>mx2500</name>
+ <_description>Memorex MX2500 EZ-Access Keyboard</_description>
+ <vendor>Memorex</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>mx2750</name>
+ <_description>Memorex MX2750</_description>
+ <vendor>Memorex</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoft7000</name>
+ <_description>Microsoft Natural Wireless Ergonomic Keyboard 7000</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoftinet</name>
+ <_description>Microsoft Internet Keyboard</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoftpro</name>
+ <_description>Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoftprousb</name>
+ <_description>Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoftprooem</name>
+ <_description>Microsoft Natural Keyboard Pro OEM</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>vsonku306</name>
+ <_description>ViewSonic KU-306 Internet Keyboard</_description>
+ <vendor>ViewSonic</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoftprose</name>
+ <_description>Microsoft Internet Keyboard Pro, Swedish</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoftoffice</name>
+ <_description>Microsoft Office Keyboard</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoftmult</name>
+ <_description>Microsoft Wireless Multimedia Keyboard 1.0A</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoftelite</name>
+ <_description>Microsoft Natural Keyboard Elite</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>microsoftccurve2k</name>
+ <_description>Microsoft Comfort Curve Keyboard 2000</_description>
+ <vendor>Microsoft Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>oretec</name>
+ <_description>Ortek MCK-800 MM/Internet keyboard</_description>
+ <vendor>Ortek</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>propeller</name>
+ <_description>Propeller Voyager (KTEZ-1000)</_description>
+ <vendor>KeyTronic</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>qtronix</name>
+ <_description>QTronix Scorpius 98N+</_description>
+ <vendor>QTronix</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>samsung4500</name>
+ <_description>Samsung SDM 4500P</_description>
+ <vendor>Samsung</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>samsung4510</name>
+ <_description>Samsung SDM 4510P</_description>
+ <vendor>Samsung</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>sanwaskbkg3</name>
+ <_description>Sanwa Supply SKB-KG3</_description>
+ <vendor>Sanwa Supply Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>sk1300</name>
+ <_description>SK-1300</_description>
+ <vendor>NEC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>sk2500</name>
+ <_description>SK-2500</_description>
+ <vendor>NEC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>sk6200</name>
+ <_description>SK-6200</_description>
+ <vendor>NEC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>sk7100</name>
+ <_description>SK-7100</_description>
+ <vendor>NEC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>sp_inet</name>
+ <_description>Super Power Multimedia Keyboard</_description>
+ <vendor>Generic</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>sven</name>
+ <_description>SVEN Ergonomic 2500</_description>
+ <vendor>SVEN</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>sven303</name>
+ <_description>SVEN Slim 303</_description>
+ <vendor>SVEN</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>symplon</name>
+ <_description>Symplon PaceBook (tablet PC)</_description>
+ <vendor>Symplon</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>toshiba_s3000</name>
+ <_description>Toshiba Satellite S3000</_description>
+ <vendor>Toshiba</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>trust</name>
+ <_description>Trust Wireless Keyboard Classic</_description>
+ <vendor>Trust</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>trustda</name>
+ <_description>Trust Direct Access Keyboard</_description>
+ <vendor>Trust</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>trust_slimline</name>
+ <_description>Trust Slimline</_description>
+ <vendor>Trust</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>tm2020</name>
+ <_description>TypeMatrix EZ-Reach 2020</_description>
+ <vendor>TypeMatrix</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>tm2030PS2</name>
+ <_description>TypeMatrix EZ-Reach 2030 PS2</_description>
+ <vendor>TypeMatrix</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>tm2030USB</name>
+ <_description>TypeMatrix EZ-Reach 2030 USB</_description>
+ <vendor>TypeMatrix</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>tm2030USB-102</name>
+ <_description>TypeMatrix EZ-Reach 2030 USB (102/105:EU mode)</_description>
+ <vendor>TypeMatrix</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>tm2030USB-106</name>
+ <_description>TypeMatrix EZ-Reach 2030 USB (106:JP mode)</_description>
+ <vendor>TypeMatrix</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>yahoo</name>
+ <_description>Yahoo! Internet Keyboard</_description>
+ <vendor>Yahoo!</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>macbook78</name>
+ <_description>MacBook/MacBook Pro</_description>
+ <vendor>Apple</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>macbook79</name>
+ <_description>MacBook/MacBook Pro (Intl)</_description>
+ <vendor>Apple</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>macintosh</name>
+ <_description>Macintosh</_description>
+ <vendor>Apple</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>macintosh_old</name>
+ <_description>Macintosh Old</_description>
+ <vendor>Apple</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>macintosh_hhk</name>
+ <_description>Happy Hacking Keyboard for Mac</_description>
+ <vendor>Fujitsu</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>acer_c300</name>
+ <_description>Acer C300</_description>
+ <vendor>Acer</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>acer_ferrari4k</name>
+ <_description>Acer Ferrari 4000</_description>
+ <vendor>Acer</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>acer_laptop</name>
+ <_description>Acer Laptop</_description>
+ <vendor>Acer</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>asus_laptop</name>
+ <_description>Asus Laptop</_description>
+ <vendor>Asus</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>apple</name>
+ <_description>Apple</_description>
+ <vendor>Apple</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>apple_laptop</name>
+ <_description>Apple Laptop</_description>
+ <vendor>Apple</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>applealu_ansi</name>
+ <_description>Apple Aluminium Keyboard (ANSI)</_description>
+ <vendor>Apple</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>applealu_iso</name>
+ <_description>Apple Aluminium Keyboard (ISO)</_description>
+ <vendor>Apple</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>applealu_jis</name>
+ <_description>Apple Aluminium Keyboard (JIS)</_description>
+ <vendor>Apple</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>silvercrest</name>
+ <_description>SILVERCREST Multimedia Wireless Keyboard</_description>
+ <vendor>Silvercrest</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>emachines</name>
+ <_description>Laptop/notebook eMachines m68xx</_description>
+ <vendor>eMachines</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>benqx</name>
+ <_description>BenQ X-Touch</_description>
+ <vendor>BenQ</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>benqx730</name>
+ <_description>BenQ X-Touch 730</_description>
+ <vendor>BenQ</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>benqx800</name>
+ <_description>BenQ X-Touch 800</_description>
+ <vendor>BenQ</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>hhk</name>
+ <_description>Happy Hacking Keyboard</_description>
+ <vendor>Fujitsu</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>classmate</name>
+ <_description>Classmate PC</_description>
+ <vendor>Intel</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>olpc</name>
+ <_description>OLPC</_description>
+ <vendor>OLPC</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>sun6</name>
+ <_description>Sun Type 5/6</_description>
+ <vendor>Sun Microsystems</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>targa_v811</name>
+ <_description>Targa Visionary 811</_description>
+ <vendor>Targa</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>unitekkb1925</name>
+ <_description>Unitek KB-1925</_description>
+ <vendor>Unitek Group</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>compalfl90</name>
+ <_description>FL90</_description>
+ <vendor>Compal Electronics Inc.</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>creativedw7000</name>
+ <_description>Creative Desktop Wireless 7000</_description>
+ <vendor>Creative</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
+ <name>htcdream</name>
+ <_description>Htc Dream phone</_description>
+ <vendor>htc</vendor>
+ </configItem>
+ </model>
+ </modelList>
+ <layoutList>
+ <layout>
+ <configItem>
+ <name>us</name>
+ <_shortDescription>USA</_shortDescription>
+ <_description>USA</_description>
+ <languageList>
+ <iso639Id>eng</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>chr</name>
+ <_description>USA - Cherokee</_description>
+ <languageList>
+ <iso639Id>chr</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>euro</name>
+ <_description>USA - With EuroSign on 5</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>intl</name>
+ <_description>USA - International (with dead keys)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>alt-intl</name>
+ <_description>USA - Alternative international</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>colemak</name>
+ <_description>USA - Colemak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>USA - Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak-intl</name>
+ <_description>USA - Dvorak international (with dead keys)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak-alt-intl</name>
+ <_description>USA - Dvorak alternative international (no dead keys)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak-l</name>
+ <_description>USA - Left handed Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak-r</name>
+ <_description>USA - Right handed Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak-classic</name>
+ <_description>USA - Classic Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvp</name>
+ <_description>USA - Programmer Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>rus</name>
+ <_description>USA - Russian phonetic</_description>
+ <languageList>
+ <iso639Id>rus</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>USA - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>altgr-intl</name>
+ <_description>USA - International (AltGr dead keys)</_description>
+ <languageList><iso639Id>eng</iso639Id>
+ <iso639Id>fra</iso639Id>
+ <iso639Id>ger</iso639Id></languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>olpc2</name>
+ <_description>USA - Layout toggle on multiply/divide key</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>hbs</name>
+ <_description>USA - Serbo-Croatian</_description>
+ <languageList><iso639Id>eng</iso639Id>
+ <iso639Id>bos</iso639Id>
+ <iso639Id>hbs</iso639Id>
+ <iso639Id>hrv</iso639Id>
+ <iso639Id>srp</iso639Id> </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ad</name>
+ <_shortDescription>And</_shortDescription>
+ <_description>Andorra</_description>
+ <languageList>
+ <iso639Id>cat</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>af</name>
+ <_shortDescription>Afg</_shortDescription>
+ <_description>Afghanistan</_description>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>ps</name>
+ <_description>Afghanistan - Pashto</_description>
+ <languageList>
+ <iso639Id>pus</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>uz</name>
+ <_description>Afghanistan - Southern Uzbek</_description>
+ <languageList>
+ <iso639Id>uzb</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>olpc-ps</name>
+ <_description>Afghanistan - OLPC Pashto</_description>
+ <languageList>
+ <iso639Id>pus</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>fa-olpc</name>
+ <_description>Afghanistan - OLPC Dari</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>uz-olpc</name>
+ <_description>Afghanistan - OLPC Southern Uzbek</_description>
+ <languageList>
+ <iso639Id>uzb</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ara</name>
+ <_shortDescription>Ara</_shortDescription>
+ <_description>Arabic</_description>
+ <countryList>
+ <iso3166Id>AE</iso3166Id>
+ <iso3166Id>BH</iso3166Id>
+ <iso3166Id>DZ</iso3166Id>
+ <iso3166Id>EG</iso3166Id>
+ <iso3166Id>EH</iso3166Id>
+ <iso3166Id>JO</iso3166Id>
+ <iso3166Id>KW</iso3166Id>
+ <iso3166Id>LB</iso3166Id>
+ <iso3166Id>LY</iso3166Id>
+ <iso3166Id>MA</iso3166Id>
+ <iso3166Id>MR</iso3166Id>
+ <iso3166Id>OM</iso3166Id>
+ <iso3166Id>PS</iso3166Id>
+ <iso3166Id>QA</iso3166Id>
+ <iso3166Id>SA</iso3166Id>
+ <iso3166Id>SD</iso3166Id>
+ <iso3166Id>SY</iso3166Id>
+ <iso3166Id>TN</iso3166Id>
+ <iso3166Id>YE</iso3166Id>
+ </countryList>
+ <languageList>
+ <iso639Id>ara</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>azerty</name>
+ <_description>Arabic - azerty</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>azerty_digits</name>
+ <_description>Arabic - azerty/digits</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>digits</name>
+ <_description>Arabic - digits</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>qwerty</name>
+ <_description>Arabic - qwerty</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>qwerty_digits</name>
+ <_description>Arabic - qwerty/digits</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>buckwalter</name>
+ <_description>Arabic - Buckwalter</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>al</name>
+ <_shortDescription>Alb</_shortDescription>
+ <_description>Albania</_description>
+ <languageList>
+ <iso639Id>alb</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>am</name>
+ <_shortDescription>Arm</_shortDescription>
+ <_description>Armenia</_description>
+ <languageList>
+ <iso639Id>hye</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>phonetic</name>
+ <_description>Armenia - Phonetic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>phonetic-alt</name>
+ <_description>Armenia - Alternative Phonetic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>eastern</name>
+ <_description>Armenia - Eastern</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>western</name>
+ <_description>Armenia - Western</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>eastern-alt</name>
+ <_description>Armenia - Alternative Eastern</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>at</name>
+ <_shortDescription>Aut</_shortDescription>
+ <_description>Austria</_description>
+ <languageList>
+ <iso639Id>ger</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Austria - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>sundeadkeys</name>
+ <_description>Austria - Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Austria - Macintosh</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>az</name>
+ <_shortDescription>Aze</_shortDescription>
+ <_description>Azerbaijan</_description>
+ <languageList>
+ <iso639Id>aze</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>cyrillic</name>
+ <_description>Azerbaijan - Cyrillic</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>by</name>
+ <_shortDescription>Blr</_shortDescription>
+ <_description>Belarus</_description>
+ <languageList>
+ <iso639Id>bel</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>legacy</name>
+ <_description>Belarus - Legacy</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latin</name>
+ <_description>Belarus - Latin</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>be</name>
+ <_shortDescription>Bel</_shortDescription>
+ <_description>Belgium</_description>
+ <languageList><iso639Id>ger</iso639Id>
+ <iso639Id>nld</iso639Id>
+ <iso639Id>fra</iso639Id></languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>oss</name>
+ <_description>Belgium - Alternative</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>oss_latin9</name>
+ <_description>Belgium - Alternative, latin-9 only</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>oss_sundeadkeys</name>
+ <_description>Belgium - Alternative, Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>iso-alternate</name>
+ <_description>Belgium - ISO Alternate</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Belgium - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>sundeadkeys</name>
+ <_description>Belgium - Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>wang</name>
+ <_description>Belgium - Wang model 724 azerty</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>bd</name>
+ <_shortDescription>Bgd</_shortDescription>
+ <_description>Bangladesh</_description>
+ <languageList>
+ <iso639Id>ben</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>probhat</name>
+ <_description>Bangladesh - Probhat</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>in</name>
+ <_shortDescription>Ind</_shortDescription>
+ <_description>India</_description>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>ben</name>
+ <_description>India - Bengali</_description>
+ <languageList>
+ <iso639Id>ben</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ben_probhat</name>
+ <_description>India - Bengali Probhat</_description>
+ <languageList>
+ <iso639Id>ben</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>guj</name>
+ <_description>India - Gujarati</_description>
+ <languageList>
+ <iso639Id>guj</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>guru</name>
+ <_description>India - Gurmukhi</_description>
+ <languageList>
+ <iso639Id>pan</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>jhelum</name>
+ <_description>India - Gurmukhi Jhelum</_description>
+ <languageList>
+ <iso639Id>pan</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>kan</name>
+ <_description>India - Kannada</_description>
+ <languageList>
+ <iso639Id>kan</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mal</name>
+ <_description>India - Malayalam</_description>
+ <languageList>
+ <iso639Id>mal</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mal_lalitha</name>
+ <_description>India - Malayalam Lalitha</_description>
+ <languageList>
+ <iso639Id>mal</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ori</name>
+ <_description>India - Oriya</_description>
+ <languageList>
+ <iso639Id>ori</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tam_unicode</name>
+ <_description>India - Tamil Unicode</_description>
+ <languageList>
+ <iso639Id>tam</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tam_keyboard_with_numerals</name>
+ <_description>India - Tamil Keyboard with Numerals</_description>
+ <languageList>
+ <iso639Id>tam</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tam_TAB</name>
+ <_description>India - Tamil TAB Typewriter</_description>
+ <languageList>
+ <iso639Id>tam</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tam_TSCII</name>
+ <_description>India - Tamil TSCII Typewriter</_description>
+ <languageList>
+ <iso639Id>tam</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tam</name>
+ <_description>India - Tamil</_description>
+ <languageList>
+ <iso639Id>tam</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tel</name>
+ <_description>India - Telugu</_description>
+ <languageList>
+ <iso639Id>tel</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>urd-phonetic</name>
+ <_description>India - Urdu, Phonetic</_description>
+ <languageList>
+ <iso639Id>urd</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>urd-phonetic3</name>
+ <_description>India - Urdu, Alternative phonetic</_description>
+ <languageList>
+ <iso639Id>urd</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>urd-winkeys</name>
+ <_description>India - Urdu, Winkeys</_description>
+ <languageList>
+ <iso639Id>urd</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>bolnagri</name>
+ <_description>India - Hindi Bolnagri</_description>
+ <languageList>
+ <iso639Id>hin</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>hin-wx</name>
+ <_description>India - Hindi Wx</_description>
+ <languageList>
+ <iso639Id>hin</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>eng</name>
+ <_description>India - English with RupeeSign</_description>
+ <languageList>
+ <iso639Id>eng</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ba</name>
+ <_shortDescription>Bih</_shortDescription>
+ <_description>Bosnia and Herzegovina</_description>
+ <languageList>
+ <iso639Id>bos</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>alternatequotes</name>
+ <_description>Bosnia and Herzegovina - Use guillemets for quotes</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>unicode</name>
+ <_description>Bosnia and Herzegovina - Use Bosnian digraphs</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>unicodeus</name>
+ <_description>Bosnia and Herzegovina - US keyboard with Bosnian digraphs</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>us</name>
+ <_description>Bosnia and Herzegovina - US keyboard with Bosnian letters</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>br</name>
+ <_shortDescription>Bra</_shortDescription>
+ <_description>Brazil</_description>
+ <languageList>
+ <iso639Id>por</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Brazil - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>Brazil - Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nativo</name>
+ <_description>Brazil - Nativo</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nativo-us</name>
+ <_description>Brazil - Nativo for USA keyboards</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nativo-epo</name>
+ <_description>Brazil - Nativo for Esperanto</_description>
+ <languageList>
+ <iso639Id>epo</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>bg</name>
+ <_shortDescription>Bgr</_shortDescription>
+ <_description>Bulgaria</_description>
+ <languageList>
+ <iso639Id>bul</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>phonetic</name>
+ <_description>Bulgaria - Traditional phonetic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>bas_phonetic</name>
+ <_description>Bulgaria - New phonetic</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ma</name>
+ <_description>Morocco</_description>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>french</name>
+ <_description>Morocco - French</_description>
+ <languageList>
+ <iso639Id>fra</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tifinagh</name>
+ <_description>Morocco - Tifinagh</_description>
+ <languageList>
+ <iso639Id>ber</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tifinagh-alt</name>
+ <_description>Morocco - Tifinagh alternative</_description>
+ <languageList>
+ <iso639Id>ber</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tifinagh-alt-phonetic</name>
+ <_description>Morocco - Tifinagh alternative phonetic</_description>
+ <languageList>
+ <iso639Id>ber</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tifinagh-extended</name>
+ <_description>Morocco - Tifinagh extended</_description>
+ <languageList>
+ <iso639Id>ber</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tifinagh-phonetic</name>
+ <_description>Morocco - Tifinagh phonetic</_description>
+ <languageList>
+ <iso639Id>ber</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tifinagh-extended-phonetic</name>
+ <_description>Morocco - Tifinagh extended phonetic</_description>
+ <languageList>
+ <iso639Id>ber</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>mm</name>
+ <_shortDescription>Mmr</_shortDescription>
+ <_description>Myanmar</_description>
+ <languageList>
+ <iso639Id>mya</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ca</name>
+ <_shortDescription>Can</_shortDescription>
+ <_description>Canada</_description>
+ <languageList>
+ <iso639Id>fra</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>fr-dvorak</name>
+ <_description>Canada - French Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>fr-legacy</name>
+ <_description>Canada - French (legacy)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>multix</name>
+ <_description>Canada - Multilingual</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>multi</name>
+ <_description>Canada - Multilingual, first part</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>multi-2gr</name>
+ <_description>Canada - Multilingual, second part</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ike</name>
+ <_description>Canada - Inuktitut</_description>
+ <languageList>
+ <iso639Id>iku</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>shs</name>
+ <_description>Canada - Secwepemctsin</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>kut</name>
+ <_description>Canada - Ktunaxa</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>eng</name>
+ <_description>Canada - English</_description>
+ <languageList>
+ <iso639Id>eng</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>cd</name>
+ <_shortDescription>COD</_shortDescription>
+ <_description>Congo, Democratic Republic of the</_description>
+ <languageList>
+ <iso639Id>fra</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>cn</name>
+ <_shortDescription>Chn</_shortDescription>
+ <_description>China</_description>
+ <languageList>
+ <iso639Id>chi</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>tib</name>
+ <_description>China - Tibetan</_description>
+ <languageList>
+ <iso639Id>tib</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tib_asciinum</name>
+ <_description>China - Tibetan (with ASCII numerals)</_description>
+ <languageList>
+ <iso639Id>tib</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>uig</name>
+ <_description>China - Uyghur</_description>
+ <languageList>
+ <iso639Id>uig</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>hr</name>
+ <_shortDescription>Hrv</_shortDescription>
+ <_description>Croatia</_description>
+ <languageList>
+ <iso639Id>scr</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>alternatequotes</name>
+ <_description>Croatia - Use guillemets for quotes</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>unicode</name>
+ <_description>Croatia - Use Croatian digraphs</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>unicodeus</name>
+ <_description>Croatia - US keyboard with Croatian digraphs</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>us</name>
+ <_description>Croatia - US keyboard with Croatian letters</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>cz</name>
+ <_shortDescription>Cze</_shortDescription>
+ <_description>Czechia</_description>
+ <languageList>
+ <iso639Id>cze</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>bksl</name>
+ <_description>Czechia - With <\|> key</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>qwerty</name>
+ <_description>Czechia - qwerty</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>qwerty_bksl</name>
+ <_description>Czechia - qwerty, extended Backslash</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ucw</name>
+ <_description>Czechia - UCW layout (accented letters only)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak-ucw</name>
+ <_description>Czechia - US Dvorak with CZ UCW support</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>dk</name>
+ <_shortDescription>Dnk</_shortDescription>
+ <_description>Denmark</_description>
+ <languageList>
+ <iso639Id>dan</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Denmark - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Denmark - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac_nodeadkeys</name>
+ <_description>Denmark - Macintosh, eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>Denmark - Dvorak</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>nl</name>
+ <_shortDescription>Nld</_shortDescription>
+ <_description>Netherlands</_description>
+ <languageList>
+ <iso639Id>nld</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>sundeadkeys</name>
+ <_description>Netherlands - Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Netherlands - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>std</name>
+ <_description>Netherlands - Standard</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>bt</name>
+ <_shortDescription>Btn</_shortDescription>
+ <_description>Bhutan</_description>
+ <languageList>
+ <iso639Id>dzo</iso639Id>
+ </languageList>
+ </configItem>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ee</name>
+ <_shortDescription>Est</_shortDescription>
+ <_description>Estonia</_description>
+ <languageList>
+ <iso639Id>est</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Estonia - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>Estonia - Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>us</name>
+ <_description>Estonia - US keyboard with Estonian letters</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ir</name>
+ <_shortDescription>Irn</_shortDescription>
+ <_description>Iran</_description>
+ <languageList>
+ <iso639Id>per</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>pes_keypad</name>
+ <_description>Iran - Persian, with Persian Keypad</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku</name>
+ <_description>Iran - Kurdish, Latin Q</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku_f</name>
+ <_description>Iran - Kurdish, (F)</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku_alt</name>
+ <_description>Iran - Kurdish, Latin Alt-Q</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku_ara</name>
+ <_description>Iran - Kurdish, Arabic-Latin</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>iq</name>
+ <_shortDescription>Irq</_shortDescription>
+ <_description>Iraq</_description>
+ <languageList><iso639Id>ara</iso639Id>
+ <iso639Id>kur</iso639Id></languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>ku</name>
+ <_description>Iraq - Kurdish, Latin Q</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku_f</name>
+ <_description>Iraq - Kurdish, (F)</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku_alt</name>
+ <_description>Iraq - Kurdish, Latin Alt-Q</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku_ara</name>
+ <_description>Iraq - Kurdish, Arabic-Latin</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>fo</name>
+ <_shortDescription>Fro</_shortDescription>
+ <_description>Faroe Islands</_description>
+ <languageList>
+ <iso639Id>fao</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Faroe Islands - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>fi</name>
+ <_shortDescription>Fin</_shortDescription>
+ <_description>Finland</_description>
+ <languageList>
+ <iso639Id>fin</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>classic</name>
+ <_description>Finland - Classic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Finland - Classic, eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>smi</name>
+ <_description>Finland - Northern Saami</_description>
+ <languageList><iso639Id>smi</iso639Id>
+ <iso639Id>sme</iso639Id></languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Finland - Macintosh</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>fr</name>
+ <_shortDescription>Fra</_shortDescription>
+ <_description>France</_description>
+ <languageList>
+ <iso639Id>fra</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>France - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>sundeadkeys</name>
+ <_description>France - Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>oss</name>
+ <_description>France - Alternative</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>oss_latin9</name>
+ <_description>France - Alternative, latin-9 only</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>oss_nodeadkeys</name>
+ <_description>France - Alternative, eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>oss_sundeadkeys</name>
+ <_description>France - Alternative, Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latin9</name>
+ <_description>France - (Legacy) Alternative</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latin9_nodeadkeys</name>
+ <_description>France - (Legacy) Alternative, eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latin9_sundeadkeys</name>
+ <_description>France - (Legacy) Alternative, Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>bepo</name>
+ <_description>France - Bepo, ergonomic, Dvorak way</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>bepo_latin9</name>
+ <_description>France - Bepo, ergonomic, Dvorak way, latin-9 only</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>France - Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>France - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>bre</name>
+ <_description>France - Breton</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>oci</name>
+ <_description>France - Occitan</_description>
+ <languageList>
+ <iso639Id>oci</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>geo</name>
+ <_description>France - Georgian AZERTY Tskapo</_description>
+ <languageList>
+ <iso639Id>geo</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>gh</name>
+ <_shortDescription>Gha</_shortDescription>
+ <_description>Ghana</_description>
+ <languageList>
+ <iso639Id>eng</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>generic</name>
+ <_description>Ghana - Multilingual</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>akan</name>
+ <_description>Ghana - Akan</_description>
+ <languageList>
+ <iso639Id>aka</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ewe</name>
+ <_description>Ghana - Ewe</_description>
+ <languageList>
+ <iso639Id>ewe</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>fula</name>
+ <_description>Ghana - Fula</_description>
+ <languageList>
+ <iso639Id>ful</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ga</name>
+ <_description>Ghana - Ga</_description>
+ <languageList>
+ <iso639Id>gaa</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>hausa</name>
+ <_description>Ghana - Hausa</_description>
+ <languageList>
+ <iso639Id>hau</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>avn</name>
+ <_description>Ghana - Avatime</_description>
+ <languageList>
+ <iso639Id>avn</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>gillbt</name>
+ <_description>Ghana - GILLBT</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>gn</name>
+ <_shortDescription>Gin</_shortDescription>
+ <_description>Guinea</_description>
+ <languageList>
+ <iso639Id>fra</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ge</name>
+ <_shortDescription>Geo</_shortDescription>
+ <_description>Georgia</_description>
+ <languageList>
+ <iso639Id>geo</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>ergonomic</name>
+ <_description>Georgia - Ergonomic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mess</name>
+ <_description>Georgia - MESS</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ru</name>
+ <_description>Georgia - Russian</_description>
+ <languageList>
+ <iso639Id>rus</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>os</name>
+ <_description>Georgia - Ossetian</_description>
+ <languageList>
+ <iso639Id>oss</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>de</name>
+ <_shortDescription>Deu</_shortDescription>
+ <_description>Germany</_description>
+ <languageList>
+ <iso639Id>ger</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>deadacute</name>
+ <_description>Germany - Dead acute</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>deadgraveacute</name>
+ <_description>Germany - Dead grave acute</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Germany - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ro</name>
+ <_description>Germany - Romanian keyboard with German letters</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ro_nodeadkeys</name>
+ <_description>Germany - Romanian keyboard with German letters, eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>Germany - Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>sundeadkeys</name>
+ <_description>Germany - Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>neo</name>
+ <_description>Germany - Neo 2</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Germany - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac_nodeadkeys</name>
+ <_description>Germany - Macintosh, eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dsb</name>
+ <_description>Germany - Lower Sorbian</_description>
+ <languageList>
+ <iso639Id>dsb</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dsb_qwertz</name>
+ <_description>Germany - Lower Sorbian (qwertz)</_description>
+ <languageList>
+ <iso639Id>dsb</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>qwerty</name>
+ <_description>Germany - qwerty</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ru</name>
+ <_description>Germany - Russian phonetic</_description>
+ <languageList>
+ <iso639Id>rus</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>gr</name>
+ <_shortDescription>Grc</_shortDescription>
+ <_description>Greece</_description>
+ <languageList>
+ <iso639Id>gre</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>simple</name>
+ <_description>Greece - Simple</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>extended</name>
+ <_description>Greece - Extended</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Greece - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>polytonic</name>
+ <_description>Greece - Polytonic</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>hu</name>
+ <_shortDescription>Hun</_shortDescription>
+ <_description>Hungary</_description>
+ <languageList>
+ <iso639Id>hun</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>standard</name>
+ <_description>Hungary - Standard</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Hungary - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>qwerty</name>
+ <_description>Hungary - qwerty</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>101_qwertz_comma_dead</name>
+ <_description>Hungary - 101/qwertz/comma/Dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>101_qwertz_comma_nodead</name>
+ <_description>Hungary - 101/qwertz/comma/Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>101_qwertz_dot_dead</name>
+ <_description>Hungary - 101/qwertz/dot/Dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>101_qwertz_dot_nodead</name>
+ <_description>Hungary - 101/qwertz/dot/Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>101_qwerty_comma_dead</name>
+ <_description>Hungary - 101/qwerty/comma/Dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>101_qwerty_comma_nodead</name>
+ <_description>Hungary - 101/qwerty/comma/Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>101_qwerty_dot_dead</name>
+ <_description>Hungary - 101/qwerty/dot/Dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>101_qwerty_dot_nodead</name>
+ <_description>Hungary - 101/qwerty/dot/Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>102_qwertz_comma_dead</name>
+ <_description>Hungary - 102/qwertz/comma/Dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>102_qwertz_comma_nodead</name>
+ <_description>Hungary - 102/qwertz/comma/Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>102_qwertz_dot_dead</name>
+ <_description>Hungary - 102/qwertz/dot/Dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>102_qwertz_dot_nodead</name>
+ <_description>Hungary - 102/qwertz/dot/Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>102_qwerty_comma_dead</name>
+ <_description>Hungary - 102/qwerty/comma/Dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>102_qwerty_comma_nodead</name>
+ <_description>Hungary - 102/qwerty/comma/Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>102_qwerty_dot_dead</name>
+ <_description>Hungary - 102/qwerty/dot/Dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>102_qwerty_dot_nodead</name>
+ <_description>Hungary - 102/qwerty/dot/Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>is</name>
+ <_shortDescription>Isl</_shortDescription>
+ <_description>Iceland</_description>
+ <languageList>
+ <iso639Id>ice</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>Sundeadkeys</name>
+ <_description>Iceland - Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Iceland - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Iceland - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>Iceland - Dvorak</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>il</name>
+ <_shortDescription>Isr</_shortDescription>
+ <_description>Israel</_description>
+ <languageList>
+ <iso639Id>heb</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>lyx</name>
+ <_description>Israel - lyx</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>phonetic</name>
+ <_description>Israel - Phonetic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>biblical</name>
+ <_description>Israel - Biblical Hebrew (Tiro)</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>it</name>
+ <_shortDescription>Ita</_shortDescription>
+ <_description>Italy</_description>
+ <languageList>
+ <iso639Id>ita</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Italy - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Italy - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>us</name>
+ <_description>Italy - US keyboard with Italian letters</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>geo</name>
+ <_description>Italy - Georgian</_description>
+ <languageList>
+ <iso639Id>geo</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>jp</name>
+ <_shortDescription>Jpn</_shortDescription>
+ <_description>Japan</_description>
+ <languageList>
+ <iso639Id>jpn</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>kana</name>
+ <_description>Japan - Kana</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>kana86</name>
+ <_description>Japan - Kana 86</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>OADG109A</name>
+ <_description>Japan - OADG 109A</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Japan - Macintosh</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>kg</name>
+ <_shortDescription>Kgz</_shortDescription>
+ <_description>Kyrgyzstan</_description>
+ <languageList>
+ <iso639Id>kir</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>phonetic</name>
+ <_description>Kyrgyzstan - Phonetic</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>kh</name>
+ <_shortDescription>Khm</_shortDescription>
+ <_description>Cambodia</_description>
+ <languageList>
+ <iso639Id>khm</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>kz</name>
+ <_shortDescription>Kaz</_shortDescription>
+ <_description>Kazakhstan</_description>
+ <languageList>
+ <iso639Id>kaz</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>ruskaz</name>
+ <_description>Kazakhstan - Russian with Kazakh</_description>
+ <languageList><iso639Id>kaz</iso639Id>
+ <iso639Id>rus</iso639Id></languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>kazrus</name>
+ <_description>Kazakhstan - Kazakh with Russian</_description>
+ <languageList><iso639Id>kaz</iso639Id>
+ <iso639Id>rus</iso639Id></languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>la</name>
+ <_shortDescription>Lao</_shortDescription>
+ <_description>Laos</_description>
+ <languageList>
+ <iso639Id>lao</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>stea</name>
+ <_description>Laos - STEA (proposed standard layout)</_description>
+ <languageList><iso639Id>lao</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>latam</name>
+ <_shortDescription>Esp</_shortDescription>
+ <_description>Latin American</_description>
+ <countryList>
+ <iso3166Id>AR</iso3166Id>
+ <iso3166Id>BO</iso3166Id>
+ <iso3166Id>CL</iso3166Id>
+ <iso3166Id>CO</iso3166Id>
+ <iso3166Id>CR</iso3166Id>
+ <iso3166Id>CU</iso3166Id>
+ <iso3166Id>DO</iso3166Id>
+ <iso3166Id>EC</iso3166Id>
+ <iso3166Id>GT</iso3166Id>
+ <iso3166Id>HN</iso3166Id>
+ <iso3166Id>HT</iso3166Id>
+ <iso3166Id>MX</iso3166Id>
+ <iso3166Id>NI</iso3166Id>
+ <iso3166Id>PA</iso3166Id>
+ <iso3166Id>PE</iso3166Id>
+ <iso3166Id>PR</iso3166Id>
+ <iso3166Id>PY</iso3166Id>
+ <iso3166Id>SV</iso3166Id>
+ <iso3166Id>US</iso3166Id>
+ <iso3166Id>UY</iso3166Id>
+ <iso3166Id>VE</iso3166Id>
+ </countryList>
+ <languageList>
+ <iso639Id>spa</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Latin American - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>deadtilde</name>
+ <_description>Latin American - Include dead tilde</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>sundeadkeys</name>
+ <_description>Latin American - Sun dead keys</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>lt</name>
+ <_shortDescription>Ltu</_shortDescription>
+ <_description>Lithuania</_description>
+ <languageList>
+ <iso639Id>lit</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>std</name>
+ <_description>Lithuania - Standard</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>us</name>
+ <_description>Lithuania - US keyboard with Lithuanian letters</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ibm</name>
+ <_description>Lithuania - IBM (LST 1205-92)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>lekp</name>
+ <_description>Lithuania - LEKP</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>lekpa</name>
+ <_description>Lithuania - LEKPa</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>lv</name>
+ <_shortDescription>Lva</_shortDescription>
+ <_description>Latvia</_description>
+ <languageList>
+ <iso639Id>lav</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>apostrophe</name>
+ <_description>Latvia - Apostrophe (') variant</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tilde</name>
+ <_description>Latvia - Tilde (~) variant</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>fkey</name>
+ <_description>Latvia - F-letter (F) variant</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>mao</name>
+ <_shortDescription>Mao</_shortDescription>
+ <_description>Maori</_description>
+ <languageList>
+ <iso639Id>mao</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>me</name>
+ <_shortDescription>MNE</_shortDescription>
+ <_description>Montenegro</_description>
+ <languageList>
+ <iso639Id>srp</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>cyrillic</name>
+ <_description>Montenegro - Cyrillic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>cyrillicyz</name>
+ <_description>Montenegro - Cyrillic, Z and ZHE swapped</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latinunicode</name>
+ <_description>Montenegro - Latin unicode</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latinyz</name>
+ <_description>Montenegro - Latin qwerty</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latinunicodeyz</name>
+ <_description>Montenegro - Latin unicode qwerty</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>cyrillicalternatequotes</name>
+ <_description>Montenegro - Cyrillic with guillemets</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latinalternatequotes</name>
+ <_description>Montenegro - Latin with guillemets</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>mk</name>
+ <_shortDescription>Mkd</_shortDescription>
+ <_description>Macedonia</_description>
+ <languageList>
+ <iso639Id>mkd</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Macedonia - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>mt</name>
+ <_shortDescription>Mlt</_shortDescription>
+ <_description>Malta</_description>
+ <languageList>
+ <iso639Id>mlt</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>us</name>
+ <_description>Malta - Maltese keyboard with US layout</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>mn</name>
+ <_shortDescription>Mng</_shortDescription>
+ <_description>Mongolia</_description>
+ <languageList>
+ <iso639Id>mng</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>no</name>
+ <_shortDescription>Nor</_shortDescription>
+ <_description>Norway</_description>
+ <languageList>
+ <iso639Id>nor</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Norway - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>Norway - Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>smi</name>
+ <_description>Norway - Northern Saami</_description>
+ <languageList>
+ <iso639Id>sme</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>smi_nodeadkeys</name>
+ <_description>Norway - Northern Saami, eliminate dead keys</_description>
+ <languageList>
+ <iso639Id>sme</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Norway - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac_nodeadkeys</name>
+ <_description>Norway - Macintosh, eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>pl</name>
+ <_shortDescription>Pol</_shortDescription>
+ <_description>Poland</_description>
+ <languageList>
+ <iso639Id>pol</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>qwertz</name>
+ <_description>Poland - qwertz</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>Poland - Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak_quotes</name>
+ <_description>Poland - Dvorak, Polish quotes on quotemark key</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak_altquotes</name>
+ <_description>Poland - Dvorak, Polish quotes on key 1</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>csb</name>
+ <_description>Poland - Kashubian</_description>
+ <languageList>
+ <iso639Id>csb</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ru_phonetic_dvorak</name>
+ <_description>Poland - Russian phonetic Dvorak</_description>
+ <languageList>
+ <iso639Id>rus</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvp</name>
+ <_description>Poland - Programmer Dvorak</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>pt</name>
+ <_shortDescription>Prt</_shortDescription>
+ <_description>Portugal</_description>
+ <languageList>
+ <iso639Id>por</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Portugal - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>sundeadkeys</name>
+ <_description>Portugal - Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Portugal - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac_nodeadkeys</name>
+ <_description>Portugal - Macintosh, eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac_sundeadkeys</name>
+ <_description>Portugal - Macintosh, Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nativo</name>
+ <_description>Portugal - Nativo</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nativo-us</name>
+ <_description>Portugal - Nativo for USA keyboards</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>nativo-epo</name>
+ <_description>Portugal - Nativo for Esperanto</_description>
+ <languageList>
+ <iso639Id>epo</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ro</name>
+ <_shortDescription>Rou</_shortDescription>
+ <_description>Romania</_description>
+ <languageList>
+ <iso639Id>rum</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>cedilla</name>
+ <_description>Romania - Cedilla</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>std</name>
+ <_description>Romania - Standard</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>std_cedilla</name>
+ <_description>Romania - Standard (Cedilla)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>winkeys</name>
+ <_description>Romania - Winkeys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh_f</name>
+ <_description>Romania - Crimean Tatar (Turkish F)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh_alt</name>
+ <_description>Romania - Crimean Tatar (Turkish Alt-Q)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh_dobruca1</name>
+ <_description>Romania - Crimean Tatar (Dobruca-1 Q)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh_dobruca2</name>
+ <_description>Romania - Crimean Tatar (Dobruca-2 Q)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ru</name>
+ <_shortDescription>Rus</_shortDescription>
+ <_description>Russia</_description>
+ <languageList>
+ <iso639Id>rus</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>phonetic</name>
+ <_description>Russia - Phonetic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>phonetic_winkeys</name>
+ <_description>Russia - Phonetic Winkeys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>typewriter</name>
+ <_description>Russia - Typewriter</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>legacy</name>
+ <_description>Russia - Legacy</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>typewriter-legacy</name>
+ <_description>Russia - Typewriter, legacy</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tt</name>
+ <_description>Russia - Tatar</_description>
+ <languageList>
+ <iso639Id>tat</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>os_legacy</name>
+ <_description>Russia - Ossetian, legacy</_description>
+ <languageList>
+ <iso639Id>oss</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>os_winkeys</name>
+ <_description>Russia - Ossetian, Winkeys</_description>
+ <languageList>
+ <iso639Id>oss</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>cv</name>
+ <_description>Russia - Chuvash</_description>
+ <languageList>
+ <iso639Id>chv</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>cv_latin</name>
+ <_description>Russia - Chuvash Latin</_description>
+ <languageList>
+ <iso639Id>chv</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>udm</name>
+ <_description>Russia - Udmurt</_description>
+ <languageList>
+ <iso639Id>udm</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>kom</name>
+ <_description>Russia - Komi</_description>
+ <languageList>
+ <iso639Id>kom</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>sah</name>
+ <_description>Russia - Yakut</_description>
+ <languageList>
+ <iso639Id>sah</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>xal</name>
+ <_description>Russia - Kalmyk</_description>
+ <languageList>
+ <iso639Id>xal</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dos</name>
+ <_description>Russia - DOS</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>srp</name>
+ <_description>Russia - Serbian</_description>
+ <languageList><iso639Id>rus</iso639Id>
+ <iso639Id>srp</iso639Id></languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>bak</name>
+ <_description>Russia - Bashkirian</_description>
+ <languageList>
+ <iso639Id>bak</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>chm</name>
+ <_description>Russia - Mari</_description>
+ <languageList>
+ <iso639Id>chm</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>rs</name>
+ <_shortDescription>SRB</_shortDescription>
+ <_description>Serbia</_description>
+ <languageList>
+ <iso639Id>srp</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>yz</name>
+ <_description>Serbia - Z and ZHE swapped</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latin</name>
+ <_description>Serbia - Latin</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latinunicode</name>
+ <_description>Serbia - Latin Unicode</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latinyz</name>
+ <_description>Serbia - Latin qwerty</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latinunicodeyz</name>
+ <_description>Serbia - Latin Unicode qwerty</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>alternatequotes</name>
+ <_description>Serbia - With guillemets</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>latinalternatequotes</name>
+ <_description>Serbia - Latin with guillemets</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>rue</name>
+ <_description>Serbia - Pannonian Rusyn Homophonic</_description>
+ <languageList>
+ <iso639Id>rue</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>si</name>
+ <_shortDescription>Svn</_shortDescription>
+ <_description>Slovenia</_description>
+ <languageList>
+ <iso639Id>slv</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>alternatequotes</name>
+ <_description>Slovenia - Use guillemets for quotes</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>us</name>
+ <_description>Slovenia - US keyboard with Slovenian letters</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>sk</name>
+ <_shortDescription>Svk</_shortDescription>
+ <_description>Slovakia</_description>
+ <languageList>
+ <iso639Id>slo</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>bksl</name>
+ <_description>Slovakia - Extended Backslash</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>qwerty</name>
+ <_description>Slovakia - qwerty</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>qwerty_bksl</name>
+ <_description>Slovakia - qwerty, extended Backslash</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>es</name>
+ <_shortDescription>Esp</_shortDescription>
+ <_description>Spain</_description>
+ <languageList>
+ <iso639Id>spa</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Spain - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>deadtilde</name>
+ <_description>Spain - Include dead tilde</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>sundeadkeys</name>
+ <_description>Spain - Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>Spain - Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ast</name>
+ <_description>Spain - Asturian variant with bottom-dot H and bottom-dot L</_description>
+ <languageList>
+ <iso639Id>ast</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>cat</name>
+ <_description>Spain - Catalan variant with middle-dot L</_description>
+ <languageList>
+ <iso639Id>cat</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Spain - Macintosh</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>se</name>
+ <_shortDescription>Swe</_shortDescription>
+ <_description>Sweden</_description>
+ <languageList>
+ <iso639Id>swe</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>nodeadkeys</name>
+ <_description>Sweden - Eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>Sweden - Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>rus</name>
+ <_description>Sweden - Russian phonetic</_description>
+ <languageList>
+ <iso639Id>rus</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>rus_nodeadkeys</name>
+ <_description>Sweden - Russian phonetic, eliminate dead keys</_description>
+ <languageList>
+ <iso639Id>rus</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>smi</name>
+ <_description>Sweden - Northern Saami</_description>
+ <languageList>
+ <iso639Id>sme</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>Sweden - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>svdvorak</name>
+ <_description>Sweden - Svdvorak</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ch</name>
+ <_shortDescription>Che</_shortDescription>
+ <_description>Switzerland</_description>
+ <languageList><iso639Id>ger</iso639Id>
+ <iso639Id>gsw</iso639Id></languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>legacy</name>
+ <_description>Switzerland - Legacy</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>de_nodeadkeys</name>
+ <_description>Switzerland - German, eliminate dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>de_sundeadkeys</name>
+ <_description>Switzerland - German, Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>fr</name>
+ <_description>Switzerland - French</_description>
+ <languageList>
+ <iso639Id>fra</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>fr_nodeadkeys</name>
+ <_description>Switzerland - French, eliminate dead keys</_description>
+ <languageList>
+ <iso639Id>fra</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>fr_sundeadkeys</name>
+ <_description>Switzerland - French, Sun dead keys</_description>
+ <languageList>
+ <iso639Id>fra</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>fr_mac</name>
+ <_description>Switzerland - French (Macintosh)</_description>
+ <languageList>
+ <iso639Id>fra</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>de_mac</name>
+ <_description>Switzerland - German (Macintosh)</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>sy</name>
+ <_shortDescription>Syr</_shortDescription>
+ <_description>Syria</_description>
+ <languageList>
+ <iso639Id>syr</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>syc</name>
+ <_description>Syria - Syriac</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>syc_phonetic</name>
+ <_description>Syria - Syriac phonetic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku</name>
+ <_description>Syria - Kurdish, Latin Q</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku_f</name>
+ <_description>Syria - Kurdish, (F)</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku_alt</name>
+ <_description>Syria - Kurdish, Latin Alt-Q</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>tj</name>
+ <_shortDescription>Tjk</_shortDescription>
+ <_description>Tajikistan</_description>
+ <languageList>
+ <iso639Id>tgk</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>legacy</name>
+ <_description>Tajikistan - Legacy</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>lk</name>
+ <_shortDescription>Lka</_shortDescription>
+ <_description>Sri Lanka</_description>
+ <languageList>
+ <iso639Id>sin</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>tam_unicode</name>
+ <_description>Sri Lanka - Tamil Unicode</_description>
+ <languageList>
+ <iso639Id>tam</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>tam_TAB</name>
+ <_description>Sri Lanka - Tamil TAB Typewriter</_description>
+ <languageList>
+ <iso639Id>tam</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>th</name>
+ <_shortDescription>Tha</_shortDescription>
+ <_description>Thailand</_description>
+ <languageList>
+ <iso639Id>tha</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>tis</name>
+ <_description>Thailand - TIS-820.2538</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>pat</name>
+ <_description>Thailand - Pattachote</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>tr</name>
+ <_shortDescription>Tur</_shortDescription>
+ <_description>Turkey</_description>
+ <languageList>
+ <iso639Id>tur</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>f</name>
+ <_description>Turkey - (F)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>alt</name>
+ <_description>Turkey - Alt-Q</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>sundeadkeys</name>
+ <_description>Turkey - Sun dead keys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku</name>
+ <_description>Turkey - Kurdish, Latin Q</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku_f</name>
+ <_description>Turkey - Kurdish, (F)</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ku_alt</name>
+ <_description>Turkey - Kurdish, Latin Alt-Q</_description>
+ <languageList>
+ <iso639Id>kur</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>intl</name>
+ <_description>Turkey - International (with dead keys)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh</name>
+ <_description>Turkey - Crimean Tatar (Turkish Q)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh_f</name>
+ <_description>Turkey - Crimean Tatar (Turkish F)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh_alt</name>
+ <_description>Turkey - Crimean Tatar (Turkish Alt-Q)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ua</name>
+ <_shortDescription>Ukr</_shortDescription>
+ <_description>Ukraine</_description>
+ <languageList>
+ <iso639Id>ukr</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>phonetic</name>
+ <_description>Ukraine - Phonetic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>typewriter</name>
+ <_description>Ukraine - Typewriter</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>winkeys</name>
+ <_description>Ukraine - Winkeys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>legacy</name>
+ <_description>Ukraine - Legacy</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>rstu</name>
+ <_description>Ukraine - Standard RSTU</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>rstu_ru</name>
+ <_description>Ukraine - Standard RSTU on Russian layout</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>homophonic</name>
+ <_description>Ukraine - Homophonic</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh</name>
+ <_description>Ukraine - Crimean Tatar (Turkish Q)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh_f</name>
+ <_description>Ukraine - Crimean Tatar (Turkish F)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh_alt</name>
+ <_description>Ukraine - Crimean Tatar (Turkish Alt-Q)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>gb</name>
+ <_shortDescription>GBr</_shortDescription>
+ <_description>United Kingdom</_description>
+ <languageList>
+ <iso639Id>eng</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>extd</name>
+ <_description>United Kingdom - Extended - Winkeys</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>intl</name>
+ <_description>United Kingdom - International (with dead keys)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>United Kingdom - Dvorak</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorakukp</name>
+ <_description>United Kingdom - Dvorak (UK Punctuation)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac</name>
+ <_description>United Kingdom - Macintosh</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>mac_intl</name>
+ <_description>United Kingdom - Macintosh (International)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>colemak</name>
+ <_description>United Kingdom - Colemak</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>uz</name>
+ <_shortDescription>Uzb</_shortDescription>
+ <_description>Uzbekistan</_description>
+ <languageList>
+ <iso639Id>uzb</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>latin</name>
+ <_description>Uzbekistan - Latin</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh</name>
+ <_description>Uzbekistan - Crimean Tatar (Turkish Q)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh_f</name>
+ <_description>Uzbekistan - Crimean Tatar (Turkish F)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>crh_alt</name>
+ <_description>Uzbekistan - Crimean Tatar (Turkish Alt-Q)</_description>
+ <languageList>
+ <iso639Id>crh</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>vn</name>
+ <_shortDescription>Vnm</_shortDescription>
+ <_description>Vietnam</_description>
+ <languageList>
+ <iso639Id>vie</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>kr</name>
+ <_shortDescription>Kor</_shortDescription>
+ <_description>Korea, Republic of</_description>
+ <languageList>
+ <iso639Id>kor</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>kr104</name>
+ <_description>Korea, Republic of - 101/104 key Compatible</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>nec_vndr/jp</name>
+ <_shortDescription>Jpn</_shortDescription>
+ <_description>Japan (PC-98xx Series)</_description>
+ <countryList>
+ <iso3166Id>JP</iso3166Id>
+ </countryList>
+ <languageList>
+ <iso639Id>jpn</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ie</name>
+ <_shortDescription>Irl</_shortDescription>
+ <_description>Ireland</_description>
+ <languageList>
+ <iso639Id>eng</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>CloGaelach</name>
+ <_description>Ireland - CloGaelach</_description>
+ <languageList>
+ <iso639Id>gla</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>UnicodeExpert</name>
+ <_description>Ireland - UnicodeExpert</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ogam</name>
+ <_description>Ireland - Ogham</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ogam_is434</name>
+ <_description>Ireland - Ogham IS434</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>pk</name>
+ <_shortDescription>Pak</_shortDescription>
+ <_description>Pakistan</_description>
+ <languageList>
+ <iso639Id>urd</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>urd-crulp</name>
+ <_description>Pakistan - CRULP</_description>
+ <languageList>
+ <iso639Id>urd</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>urd-nla</name>
+ <_description>Pakistan - NLA</_description>
+ <languageList>
+ <iso639Id>urd</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>ara</name>
+ <_description>Pakistan - Arabic</_description>
+ <languageList>
+ <iso639Id>ara</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>snd</name>
+ <_description>Pakistan - Sindhi</_description>
+ <languageList>
+ <iso639Id>sd</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>mv</name>
+ <_shortDescription>Mdv</_shortDescription>
+ <_description>Maldives</_description>
+ <languageList>
+ <iso639Id>div</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>za</name>
+ <_shortDescription>Zaf</_shortDescription>
+ <_description>South Africa</_description>
+ <languageList>
+ <iso639Id>eng</iso639Id>
+ </languageList>
+ </configItem>
+ </layout>
+ <layout>
+ <configItem>
+ <name>epo</name>
+ <_shortDescription>Epo</_shortDescription>
+ <_description>Esperanto</_description>
+ <languageList>
+ <iso639Id>epo</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>legacy</name>
+ <_description>Esperanto - displaced semicolon and quote (obsolete)</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>np</name>
+ <_shortDescription>Npl</_shortDescription>
+ <_description>Nepal</_description>
+ <languageList>
+ <iso639Id>nep</iso639Id>
+ </languageList>
+ </configItem>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ng</name>
+ <_shortDescription>Nga</_shortDescription>
+ <_description>Nigeria</_description>
+ <languageList>
+ <iso639Id>eng</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>igbo</name>
+ <_description>Nigeria - Igbo</_description>
+ <languageList>
+ <iso639Id>ibo</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>yoruba</name>
+ <_description>Nigeria - Yoruba</_description>
+ <languageList>
+ <iso639Id>yor</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>hausa</name>
+ <_description>Nigeria - Hausa</_description>
+ <languageList>
+ <iso639Id>hau</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>et</name>
+ <_shortDescription>Eth</_shortDescription>
+ <_description>Ethiopia</_description>
+ <languageList>
+ <iso639Id>amh</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>sn</name>
+ <_shortDescription>Sen</_shortDescription>
+ <_description>Senegal</_description>
+ <languageList>
+ <iso639Id>wol</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList/>
+ </layout>
+ <layout>
+ <configItem>
+ <name>brai</name>
+ <_shortDescription>Brl</_shortDescription>
+ <_description>Braille</_description>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>left_hand</name>
+ <_description>Braille - Left hand</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>right_hand</name>
+ <_description>Braille - Right hand</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>tm</name>
+ <_shortDescription>Tkm</_shortDescription>
+ <_description>Turkmenistan</_description>
+ <languageList>
+ <iso639Id>tuk</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>alt</name>
+ <_description>Turkmenistan - Alt-Q</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ml</name>
+ <_shortDescription>Mli</_shortDescription>
+ <_description>Mali</_description>
+ <languageList>
+ <iso639Id>bam</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>fr-oss</name>
+ <_description>Mali - Français (France Alternative)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>us-mac</name>
+ <_description>Mali - English (USA Macintosh)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>us-intl</name>
+ <_description>Mali - English (USA International)</_description>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>tz</name>
+ <_shortDescription>Tza</_shortDescription>
+ <_description>Tanzania</_description>
+ <languageList>
+ <iso639Id>swa</iso639Id>
+ </languageList>
+ </configItem>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ke</name>
+ <_shortDescription>Ken</_shortDescription>
+ <_description>Kenya</_description>
+ <languageList>
+ <iso639Id>swa</iso639Id>
+ </languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>kik</name>
+ <_description>Kenya - Kikuyu</_description>
+ <languageList>
+ <iso639Id>kik</iso639Id>
+ </languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ <layout>
+ <configItem>
+ <name>bw</name>
+ <_shortDescription>Bwa</_shortDescription>
+ <_description>Botswana</_description>
+ <languageList>
+ <iso639Id>tsn</iso639Id>
+ </languageList>
+ </configItem>
+ </layout>
+ <layout>
+ <configItem>
+ <name>ph</name>
+ <_shortDescription>Phi</_shortDescription>
+ <_description>Philippines</_description>
+ <languageList><iso639Id>eng</iso639Id>
+ <iso639Id>bik</iso639Id>
+ <iso639Id>ceb</iso639Id>
+ <iso639Id>fil</iso639Id>
+ <iso639Id>hil</iso639Id>
+ <iso639Id>ilo</iso639Id>
+ <iso639Id>pam</iso639Id>
+ <iso639Id>pag</iso639Id>
+ <iso639Id>phi</iso639Id>
+ <iso639Id>tgl</iso639Id>
+ <iso639Id>war</iso639Id></languageList>
+ </configItem>
+ <variantList>
+ <variant>
+ <configItem>
+ <name>qwerty-bay</name>
+ <_description>Philippines - QWERTY (Baybayin)</_description>
+ <languageList><iso639Id>bik</iso639Id>
+ <iso639Id>ceb</iso639Id>
+ <iso639Id>fil</iso639Id>
+ <iso639Id>hil</iso639Id>
+ <iso639Id>ilo</iso639Id>
+ <iso639Id>pam</iso639Id>
+ <iso639Id>pag</iso639Id>
+ <iso639Id>phi</iso639Id>
+ <iso639Id>tgl</iso639Id>
+ <iso639Id>war</iso639Id></languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>capewell-dvorak</name>
+ <_description>Philippines - Capewell-Dvorak (Latin)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>capewell-dvorak-bay</name>
+ <_description>Philippines - Capewell-Dvorak (Baybayin)</_description>
+ <languageList><iso639Id>bik</iso639Id>
+ <iso639Id>ceb</iso639Id>
+ <iso639Id>fil</iso639Id>
+ <iso639Id>hil</iso639Id>
+ <iso639Id>ilo</iso639Id>
+ <iso639Id>pam</iso639Id>
+ <iso639Id>pag</iso639Id>
+ <iso639Id>phi</iso639Id>
+ <iso639Id>tgl</iso639Id>
+ <iso639Id>war</iso639Id></languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>capewell-qwerf2k6</name>
+ <_description>Philippines - Capewell-QWERF 2006 (Latin)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>capewell-qwerf2k6-bay</name>
+ <_description>Philippines - Capewell-QWERF 2006 (Baybayin)</_description>
+ <languageList><iso639Id>bik</iso639Id>
+ <iso639Id>ceb</iso639Id>
+ <iso639Id>fil</iso639Id>
+ <iso639Id>hil</iso639Id>
+ <iso639Id>ilo</iso639Id>
+ <iso639Id>pam</iso639Id>
+ <iso639Id>pag</iso639Id>
+ <iso639Id>phi</iso639Id>
+ <iso639Id>tgl</iso639Id>
+ <iso639Id>war</iso639Id></languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>colemak</name>
+ <_description>Philippines - Colemak (Latin)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>colemak-bay</name>
+ <_description>Philippines - Colemak (Baybayin)</_description>
+ <languageList><iso639Id>bik</iso639Id>
+ <iso639Id>ceb</iso639Id>
+ <iso639Id>fil</iso639Id>
+ <iso639Id>hil</iso639Id>
+ <iso639Id>ilo</iso639Id>
+ <iso639Id>pam</iso639Id>
+ <iso639Id>pag</iso639Id>
+ <iso639Id>phi</iso639Id>
+ <iso639Id>tgl</iso639Id>
+ <iso639Id>war</iso639Id></languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak</name>
+ <_description>Philippines - Dvorak (Latin)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
+ <name>dvorak-bay</name>
+ <_description>Philippines - Dvorak (Baybayin)</_description>
+ <languageList><iso639Id>bik</iso639Id>
+ <iso639Id>ceb</iso639Id>
+ <iso639Id>fil</iso639Id>
+ <iso639Id>hil</iso639Id>
+ <iso639Id>ilo</iso639Id>
+ <iso639Id>pam</iso639Id>
+ <iso639Id>pag</iso639Id>
+ <iso639Id>phi</iso639Id>
+ <iso639Id>tgl</iso639Id>
+ <iso639Id>war</iso639Id></languageList>
+ </configItem>
+ </variant>
+ </variantList>
+ </layout>
+ </layoutList>
+ <optionList>
+ <group allowMultipleSelection="true">
+ <!-- The key combination used to switch between groups -->
+ <configItem>
+ <name>grp</name>
+ <_description>Key(s) to change layout</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>grp:switch</name>
+ <_description>Right Alt (while pressed)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:lswitch</name>
+ <_description>Left Alt (while pressed)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:lwin_switch</name>
+ <_description>Left Win (while pressed)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:rwin_switch</name>
+ <_description>Right Win (while pressed)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:win_switch</name>
+ <_description>Any Win key (while pressed)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:caps_switch</name>
+ <_description>Caps Lock (while pressed), Alt+Caps Lock does the original capslock action</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:rctrl_switch</name>
+ <_description>Right Ctrl (while pressed)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:toggle</name>
+ <_description>Right Alt</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:lalt_toggle</name>
+ <_description>Left Alt</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:caps_toggle</name>
+ <_description>Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:shift_caps_toggle</name>
+ <_description>Shift+Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:shift_caps_switch</name>
+ <_description>Caps Lock (to first layout), Shift+Caps Lock (to last layout)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:win_menu_switch</name>
+ <_description>Left Win (to first layout), Right Win/Menu (to last layout)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:lctrl_rctrl_switch</name>
+ <_description>Left Ctrl (to first layout), Right Ctrl (to last layout)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:alt_caps_toggle</name>
+ <_description>Alt+Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:shifts_toggle</name>
+ <_description>Both Shift keys together</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:alts_toggle</name>
+ <_description>Both Alt keys together</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:ctrls_toggle</name>
+ <_description>Both Ctrl keys together</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:ctrl_shift_toggle</name>
+ <_description>Ctrl+Shift</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:lctrl_lshift_toggle</name>
+ <_description>Left Ctrl+Left Shift</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:rctrl_rshift_toggle</name>
+ <_description>Right Ctrl+Right Shift</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:ctrl_alt_toggle</name>
+ <_description>Alt+Ctrl</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:alt_shift_toggle</name>
+ <_description>Alt+Shift</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:alt_space_toggle</name>
+ <_description>Alt+Space</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:menu_toggle</name>
+ <_description>Menu</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:lwin_toggle</name>
+ <_description>Left Win</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:rwin_toggle</name>
+ <_description>Right Win</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:lshift_toggle</name>
+ <_description>Left Shift</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:rshift_toggle</name>
+ <_description>Right Shift</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:lctrl_toggle</name>
+ <_description>Left Ctrl</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:rctrl_toggle</name>
+ <_description>Right Ctrl</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:sclk_toggle</name>
+ <_description>Scroll Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp:lctrl_lwin_rctrl_menu</name>
+ <_description>LeftCtrl+LeftWin (to first layout), RightCtrl+Menu (to second layout)</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="true">
+ <!-- The key combination used to choose the 3rd (and 4th, together with Shift)
+ level of symbols -->
+ <configItem>
+ <name>lv3</name>
+ <_description>Key to choose 3rd level</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>lv3:switch</name>
+ <_description>Right Ctrl</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:menu_switch</name>
+ <_description>Menu</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:win_switch</name>
+ <_description>Any Win key</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:lwin_switch</name>
+ <_description>Left Win</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:rwin_switch</name>
+ <_description>Right Win</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:alt_switch</name>
+ <_description>Any Alt key</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:lalt_switch</name>
+ <_description>Left Alt</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:ralt_switch</name>
+ <_description>Right Alt</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:ralt_switch_multikey</name>
+ <_description>Right Alt, Shift+Right Alt key is Multi_Key</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:ralt_alt</name>
+ <_description>Right Alt key never chooses 3rd level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:enter_switch</name>
+ <_description>Enter on keypad</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:caps_switch</name>
+ <_description>Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:bksl_switch</name>
+ <_description>Backslash</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:lsgt_switch</name>
+ <_description><Less/Greater></_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:caps_switch_latch</name>
+ <_description>Caps Lock (chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:bksl_switch_latch</name>
+ <_description>Backslash chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv3:lsgt_switch_latch</name>
+ <_description><Less/Greater> (chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="true">
+ <!-- Tweaking the position of the "Ctrl" key -->
+ <configItem>
+ <name>ctrl</name>
+ <_description>Ctrl key position</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>ctrl:nocaps</name>
+ <_description>Make Caps Lock an additional Ctrl</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>ctrl:lctrl_meta</name>
+ <_description>Meta on Left Ctrl</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>ctrl:swapcaps</name>
+ <_description>Swap Ctrl and Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>ctrl:ctrl_ac</name>
+ <_description>At left of 'A'</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>ctrl:ctrl_aa</name>
+ <_description>At bottom left</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>ctrl:ctrl_ra</name>
+ <_description>Right Ctrl as Right Alt</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>ctrl:ctrl_menu</name>
+ <_description>Right Ctrl is mapped to Menu</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="true">
+ <!-- Using startard LEDs to indicate the alternative (not first) group(s) -->
+ <configItem>
+ <name>grp_led</name>
+ <_description>Use keyboard LED to show alternative layout</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>grp_led:num</name>
+ <_description>Num Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp_led:caps</name>
+ <_description>Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>grp_led:scroll</name>
+ <_description>Scroll Lock</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="false">
+ <!-- Select a keypad type -->
+ <configItem>
+ <name>keypad</name>
+ <_description>Numeric keypad layout selection</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>keypad:legacy</name>
+ <_description>Legacy</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>keypad:oss</name>
+ <_description>Unicode additions (arrows and math operators)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>keypad:future</name>
+ <_description>Unicode additions (arrows and math operators). Math operators on default level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>keypad:legacy_wang</name>
+ <_description>Legacy Wang 724</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>keypad:oss_wang</name>
+ <_description>Wang 724 keypad with unicode additions (arrows and math operators)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>keypad:future_wang</name>
+ <_description>Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>keypad:hex</name>
+ <_description>Hexadecimal</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>keypad:atm</name>
+ <_description>ATM/phone-style</_description>
+ </configItem>
+ </option>
+ </group>
+ <!-- This option should override the KPDL key defined in keypad; I hope it's declared in the right place -->
+ <group allowMultipleSelection="false">
+ <!-- Select a keypad KPDL variant -->
+ <configItem>
+ <name>kpdl</name>
+ <_description>Numeric keypad delete key behaviour</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <!-- Actually, with KP_DECIMAL, as the old keypad(dot) -->
+ <name>kpdl:dot</name>
+ <_description>Legacy key with dot</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>kpdl:comma</name>
+ <!-- Actually, with KP_SEPARATOR, as the old keypad(comma) -->
+ <_description>Legacy key with comma</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>kpdl:dotoss</name>
+ <_description>Four-level key with dot</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>kpdl:dotoss_latin9</name>
+ <_description>Four-level key with dot, latin-9 restriction</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>kpdl:commaoss</name>
+ <_description>Four-level key with comma</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>kpdl:momayyezoss</name>
+ <_description>Four-level key with momayyez</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>kpdl:kposs</name>
+ <!-- This assumes the KP_ abstract symbols are actually useful for some apps
+ The description needs to be rewritten -->
+ <_description>Four-level key with abstract separators</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>kpdl:semi</name>
+ <_description>Semi-colon on third level</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="false">
+ <!-- Caps Lock tweaks.
+ "Internal" capitalization means capitalization using some internal tables.
+ Otherwise "as Shift" - means using next group. -->
+ <configItem>
+ <name>caps</name>
+ <_description>Caps Lock key behavior</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>caps:internal</name>
+ <_description>Caps Lock uses internal capitalization. Shift "pauses" Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:internal_nocancel</name>
+ <_description>Caps Lock uses internal capitalization. Shift doesn't affect Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:shift</name>
+ <_description>Caps Lock acts as Shift with locking. Shift "pauses" Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:shift_nocancel</name>
+ <_description>Caps Lock acts as Shift with locking. Shift doesn't affect Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:capslock</name>
+ <_description>Caps Lock toggles normal capitalization of alphabetic characters</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:numlock</name>
+ <_description>Make Caps Lock an additional Num Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:swapescape</name>
+ <_description>Swap ESC and Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:escape</name>
+ <_description>Make Caps Lock an additional ESC</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:backspace</name>
+ <_description>Make Caps Lock an additional Backspace</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:super</name>
+ <_description>Make Caps Lock an additional Super</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:hyper</name>
+ <_description>Make Caps Lock an additional Hyper</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:shiftlock</name>
+ <_description>Caps Lock toggles Shift so all keys are affected</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:none</name>
+ <_description>Caps Lock is disabled</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>caps:ctrl_modifier</name>
+ <_description>Make Caps Lock an additional Control but keep the Caps_Lock keysym</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="false">
+ <!-- Using special PC keys (Win, Menu) to work as standard X keys (Super, Hyper, etc.) -->
+ <configItem>
+ <name>altwin</name>
+ <_description>Alt/Win key behavior</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>altwin:menu</name>
+ <_description>Add the standard behavior to Menu key</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>altwin:meta_alt</name>
+ <_description>Alt and Meta are on Alt keys</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>altwin:ctrl_win</name>
+ <_description>Control is mapped to Win keys (and the usual Ctrl keys)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>altwin:ctrl_alt_win</name>
+ <_description>Control is mapped to Alt keys, Alt is mapped to Win keys</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>altwin:meta_win</name>
+ <_description>Meta is mapped to Win keys</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>altwin:left_meta_win</name>
+ <_description>Meta is mapped to Left Win</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>altwin:hyper_win</name>
+ <_description>Hyper is mapped to Win-keys</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>altwin:alt_super_win</name>
+ <_description>Alt is mapped to Right Win, Super to Menu</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>altwin:swap_lalt_lwin</name>
+ <_description>Left Alt is swapped with Left Win</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="true">
+ <!-- Tweaking the position of the "Compose" key: mapping to existing PC keys -->
+ <configItem>
+ <name>Compose key</name>
+ <_description>Compose key position</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>compose:ralt</name>
+ <_description>Right Alt</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>compose:lwin</name>
+ <_description>Left Win</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>compose:rwin</name>
+ <_description>Right Win</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>compose:menu</name>
+ <_description>Menu</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>compose:lctrl</name>
+ <_description>Left Ctrl</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>compose:rctrl</name>
+ <_description>Right Ctrl</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>compose:caps</name>
+ <_description>Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>compose:102</name>
+ <_description><Less/Greater></_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>compose:paus</name>
+ <_description>Pause</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>compose:prsc</name>
+ <_description>PrtSc</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>compose:sclk</name>
+ <_description>Scroll Lock</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="true">
+ <configItem>
+ <name>compat</name>
+ <_description>Miscellaneous compatibility options</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>numpad:pc</name>
+ <_description>Default numeric keypad keys</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>numpad:mac</name>
+ <_description>Numeric keypad keys work as with Mac</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>numpad:microsoft</name>
+ <_description>Shift with numeric keypad keys works as in MS Windows</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>numpad:shift3</name>
+ <_description>Shift does not cancel Num Lock, chooses 3rd level instead</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>srvrkeys:none</name>
+ <_description>Special keys (Ctrl+Alt+<key>) handled in a server</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>apple:alupckeys</name>
+ <_description>Apple Aluminium Keyboard: emulate PC keys (Print, Scroll Lock, Pause, Num Lock)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>shift:breaks_caps</name>
+ <_description>Shift cancels Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>misc:typo</name>
+ <_description>Enable extra typographic characters</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>shift:both_capslock</name>
+ <_description>Both Shift-Keys together toggle Caps Lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>shift:both_capslock_cancel</name>
+ <_description>Both Shift-Keys together activate Caps Lock, one Shift-Key deactivates</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>shift:both_shiftlock</name>
+ <_description>Both Shift-Keys together toggle ShiftLock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>keypad:pointerkeys</name>
+ <_description>Toggle PointerKeys with Shift + NumLock.</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="true">
+ <!-- Special shortcuts for the Euro character -->
+ <configItem>
+ <name>eurosign</name>
+ <_description>Adding currency signs to certain keys</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>eurosign:e</name>
+ <_description>Euro on E</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>eurosign:2</name>
+ <_description>Euro on 2</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>eurosign:4</name>
+ <_description>Euro on 4</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>eurosign:5</name>
+ <_description>Euro on 5</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>rupeesign:4</name>
+ <_description>Rupee on 4</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="true">
+ <configItem>
+ <name>lv5</name>
+ <_description>Key to choose 5th level</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>lv5:lsgt_switch_lock</name>
+ <_description><Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv5:ralt_switch_lock</name>
+ <_description>Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv5:lwin_switch_lock</name>
+ <_description>Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv5:rwin_switch_lock</name>
+ <_description>Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv5:lsgt_switch_lock_cancel</name>
+ <_description><Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv5:ralt_switch_lock_cancel</name>
+ <_description>Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv5:lwin_switch_lock_cancel</name>
+ <_description>Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv5:rwin_switch_lock_cancel</name>
+ <_description>Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv5:lsgt_switch_lock_cancel</name>
+ <_description><Less/Greater> chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>lv5:ralt_switch_lock_cancel</name>
+ <_description>Right Alt chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="false">
+ <!-- Let space output NBSP, NNBSP, ZWNJ, and ZWJ for the desired level -->
+ <configItem>
+ <name>nbsp</name>
+ <_description>Using space key to input non-breakable space character</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>nbsp:none</name>
+ <_description>Usual space at any level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:level2</name>
+ <_description>Non-breakable space character at second level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:level3</name>
+ <_description>Non-breakable space character at third level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:level3s</name>
+ <_description>Non-breakable space character at third level, nothing at fourth level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:level3n</name>
+ <_description>Non-breakable space character at third level, thin non-breakable space character at fourth level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:level4</name>
+ <_description>Non-breakable space character at fourth level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:level4n</name>
+ <_description>Non-breakable space character at fourth level, thin non-breakable space character at sixth level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:level4nl</name>
+ <_description>Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:zwnj2</name>
+ <_description>Zero-width non-joiner character at second level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:zwnj2zwj3</name>
+ <_description>Zero-width non-joiner character at second level, zero-width joiner character at third level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:zwnj2zwj3nb4</name>
+ <_description>Zero-width non-joiner character at second level, zero-width joiner character at third level, non-breakable space character at fourth level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:zwnj2nb3</name>
+ <_description>Zero-width non-joiner character at second level, non-breakable space character at third level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:zwnj2nb3s</name>
+ <_description>Zero-width non-joiner character at second level, non-breakable space character at third level, nothing at fourth level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:zwnj2nb3zwj4</name>
+ <_description>Zero-width non-joiner character at second level, non-breakable space character at third level, zero-width joiner at fourth level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:zwnj2nb3nnb4</name>
+ <_description>Zero-width non-joiner character at second level, non-breakable space character at third level, thin non-breakable space at fourth level</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>nbsp:zwnj3zwj4</name>
+ <_description>Zero-width non-joiner character at third level, zero-width joiner at fourth level</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="true">
+ <configItem>
+ <name>japan</name>
+ <_description>Japanese keyboard options</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>japan:kana_lock</name>
+ <_description>Kana Lock key is locking</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>japan:nicola_f_bs</name>
+ <_description>NICOLA-F style Backspace</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="false">
+ <configItem>
+ <name>esperanto</name>
+ <_description>Adding Esperanto circumflexes (supersigno)</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>esperanto:qwerty</name>
+ <_description>To the corresponding key in a Qwerty keyboard.</_description>
+ </configItem>
+ </option>
+ <option>
+ <configItem>
+ <name>esperanto:dvorak</name>
+ <_description>To the corresponding key in a Dvorak keyboard.</_description>
+ </configItem>
+ </option>
+ </group>
+ <group allowMultipleSelection="true">
+ <configItem>
+ <name>terminate</name>
+ <_description>Key sequence to kill the X server</_description>
+ </configItem>
+ <option>
+ <configItem>
+ <name>terminate:ctrl_alt_bksp</name>
+ <_description>Control + Alt + Backspace</_description>
+ </configItem>
+ </option>
+ </group>
+ </optionList>
+</xkbConfigRegistry>
diff --git a/xorg-server/xkeyboard-config/rules/bin/ml1_s.sh b/xorg-server/xkeyboard-config/rules/bin/ml1_s.sh index b2d222432..b09459a5d 100644 --- a/xorg-server/xkeyboard-config/rules/bin/ml1_s.sh +++ b/xorg-server/xkeyboard-config/rules/bin/ml1_s.sh @@ -1,18 +1,9 @@ -#!/bin/sh +@echo off -INDIR=$1 -OUTFILE=base.ml1_s.part +set OUTFILE=base.ml1_s.part -> $OUTFILE +if exist %OUTFILE% del %OUTFILE% -awk '{ - if (index($2, "(") == 0) { - printf " * %s = pc+%s%%(v[1])\n", $1, $2; - } else { - printf " * %s = pc+%s\n", $1, $2; - } -}' < $INDIR/layoutsMapping.lst >> $OUTFILE +gawk "{ if (index($2, """(""") == 0) { printf """ * %%s = pc+%%s%%%%(v[1])\n""", $1, $2; } else { printf """ * %%s = pc+%%s\n""", $1, $2; }}" < layoutsMapping.lst >> %OUTFILE% -awk '{ - printf " * %s(%s) = pc+%s(%s)\n", $1, $2, $3, $4; -}' < $INDIR/variantsMapping.lst >> $OUTFILE +gawk "{ printf """ * %%s(%%s) = pc+%%s(%%s)\n""", $1, $2, $3, $4; }" < variantsMapping.lst >> %OUTFILE% diff --git a/xorg-server/xkeyboard-config/rules/bin/ml1v1_s.sh b/xorg-server/xkeyboard-config/rules/bin/ml1v1_s.sh index 7c2b1a84c..4d492e02b 100644 --- a/xorg-server/xkeyboard-config/rules/bin/ml1v1_s.sh +++ b/xorg-server/xkeyboard-config/rules/bin/ml1v1_s.sh @@ -1,10 +1,7 @@ -#!/bin/sh +@echo off -INDIR=$1 -OUTFILE=base.ml1v1_s.part +set OUTFILE=base.ml1v1_s.part -> $OUTFILE +if exist %OUTFILE% del %OUTFILE% -awk '{ - printf " * %s %s = pc+%s(%s)\n", $1, $2, $3, $4; -}' < $INDIR/variantsMapping.lst >> $OUTFILE +gawk "{ printf """ * %%s %%s = pc+%%s(%%s)\n""", $1, $2, $3, $4; }" < variantsMapping.lst >> %OUTFILE% diff --git a/xorg-server/xkeyboard-config/rules/bin/ml1v_s.sh b/xorg-server/xkeyboard-config/rules/bin/ml1v_s.sh index 084d4c0be..cec1334c0 100644 --- a/xorg-server/xkeyboard-config/rules/bin/ml1v_s.sh +++ b/xorg-server/xkeyboard-config/rules/bin/ml1v_s.sh @@ -1,10 +1,7 @@ -#!/bin/sh +@echo off -INDIR=$1 -OUTFILE=base.ml1v_s.part +set OUTFILE=base.ml1v_s.part -> $OUTFILE +if exist %OUTFILE% del %OUTFILE% -awk '{ - printf " * %s %s = pc+%s(%s)\n", $1, $2, $3, $4; -}' < $INDIR/variantsMapping.lst >> $OUTFILE +gawk "{ printf """ * %%s %%s = pc+%%s(%%s)\n""", $1, $2, $3, $4; }" < variantsMapping.lst >> %OUTFILE% diff --git a/xorg-server/xkeyboard-config/rules/bin/ml_s.sh b/xorg-server/xkeyboard-config/rules/bin/ml_s.sh index 666ba870f..b7f0d9c46 100644 --- a/xorg-server/xkeyboard-config/rules/bin/ml_s.sh +++ b/xorg-server/xkeyboard-config/rules/bin/ml_s.sh @@ -1,14 +1,9 @@ -#!/bin/sh +@echo off -INDIR=$1 -OUTFILE=base.ml_s.part +set OUTFILE=base.ml_s.part -> $OUTFILE +if exist %OUTFILE% del %OUTFILE% -awk '{ - printf " * %s = pc+%s\n", $1, $2; -}' < $INDIR/layoutsMapping.lst >> $OUTFILE +gawk "{ printf """ * %%s = pc+%%s\n""", $1, $2; }" < layoutsMapping.lst >> %OUTFILE% -awk '{ - printf " * %s(%s) = pc+%s(%s)\n", $1, $2, $3, $4; -}' < $INDIR/variantsMapping.lst >> $OUTFILE +gawk "{ printf """ * %%s(%%s) = pc+%%s(%%s)\n""", $1, $2, $3, $4; }" < variantsMapping.lst >> %OUTFILE% diff --git a/xorg-server/xkeyboard-config/rules/bin/mln_s.sh b/xorg-server/xkeyboard-config/rules/bin/mln_s.sh index 4a615fe7d..66794a4fc 100644 --- a/xorg-server/xkeyboard-config/rules/bin/mln_s.sh +++ b/xorg-server/xkeyboard-config/rules/bin/mln_s.sh @@ -1,20 +1,10 @@ -#!/bin/sh
+@echo off
+set variant=%1
-variant=$1
+set OUTFILE=base.ml%variant%_s.part
-INDIR=$2
-OUTFILE=base.ml${variant}_s.part
+if exist %OUTFILE% del %OUTFILE%
-> $OUTFILE
+echo "{ if (index($2, """(""") == 0) { printf """ * %%s = +%%s%%%%(v[%variant%]):%variant%\n""", $1, $2; } else { printf """ * %%s = +%%s:%variant%\n""", $1, $2; }}" < layoutsMapping.lst >> %OUTFILE%
-awk '{
- if (index($2, "(") == 0) {
- printf " * %s = +%s%%(v['${variant}']):'${variant}'\n", $1, $2;
- } else {
- printf " * %s = +%s:'${variant}'\n", $1, $2;
- }
-}' < $INDIR/layoutsMapping.lst >> $OUTFILE
-
-awk '{
- printf " * %s(%s) = +%s(%s):'${variant}'\n", $1, $2, $3, $4;
-}' < $INDIR/variantsMapping.lst >> $OUTFILE
+gawk "{ printf """ * %%s(%%s) = +%%s(%%s):%variant%\n""", $1, $2, $3, $4;}" < variantsMapping.lst >> %OUTFILE%
diff --git a/xorg-server/xkeyboard-config/rules/bin/mlnvn_s.sh b/xorg-server/xkeyboard-config/rules/bin/mlnvn_s.sh index 30123874b..8e252943b 100644 --- a/xorg-server/xkeyboard-config/rules/bin/mlnvn_s.sh +++ b/xorg-server/xkeyboard-config/rules/bin/mlnvn_s.sh @@ -1,12 +1,8 @@ -#!/bin/sh
+@echo off
+set variant=%1
-variant=$1
+set OUTFILE=base.ml%variant%v%variant%_s.part
-INDIR=$2
-OUTFILE=base.ml${variant}v${variant}_s.part
+if exist %OUTFILE% del %OUTFILE%
-> $OUTFILE
-
-awk '{
- printf " * %s %s = +%s(%s):'${variant}'\n", $1, $2, $3, $4;
-}' < $INDIR/variantsMapping.lst >> $OUTFILE
+gawk "{ printf """ * %%s %%s = +%%s(%%s):%variant%\n""", $1, $2, $3, $4;}" < variantsMapping.lst >> %OUTFILE%
diff --git a/xorg-server/xkeyboard-config/rules/bin/mlv_s.sh b/xorg-server/xkeyboard-config/rules/bin/mlv_s.sh index 5b466d59c..573cb930f 100644 --- a/xorg-server/xkeyboard-config/rules/bin/mlv_s.sh +++ b/xorg-server/xkeyboard-config/rules/bin/mlv_s.sh @@ -1,10 +1,7 @@ -#!/bin/sh +@echo off -INDIR=$1 -OUTFILE=base.mlv_s.part +set OUTFILE=base.mlv_s.part -> $OUTFILE +if exist %OUTFILE% del %OUTFILE% -awk '{ - printf " * %s %s = pc+%s(%s)\n", $1, $2, $3, $4; -}' < $INDIR/variantsMapping.lst >> $OUTFILE +gawk "{ printf """ * %%s %%s = pc+%%s(%%s)\n""", $1, $2, $3, $4; }" < variantsMapping.lst >> %OUTFILE% diff --git a/xorg-server/xkeyboard-config/rules/compat/Makefile.am b/xorg-server/xkeyboard-config/rules/compat/Makefile.am index 814bd25cf..37570e0da 100644 --- a/xorg-server/xkeyboard-config/rules/compat/Makefile.am +++ b/xorg-server/xkeyboard-config/rules/compat/Makefile.am @@ -1,67 +1,67 @@ - -transform_files=layoutsMapping.lst variantsMapping.lst - -dist_parts=base.o_s.part \ -base.lv_c.part \ -base.l1v1_c.part \ -base.l2v2_c.part \ -base.l3v3_c.part \ -base.l4v4_c.part - -scripts_dir=$(srcdir)/../bin - -scripts= \ -base.ml2_s.part \ -base.ml3_s.part \ -base.ml4_s.part \ -base.ml2v2_s.part \ -base.ml3v3_s.part \ -base.ml4v4_s.part \ -base.ml_s.part \ -base.ml1_s.part \ -base.mlv_s.part \ -base.ml1v1_s.part - -if USE_COMPAT_RULES - -noinst_SCRIPTS=$(scripts) $(dist_parts) - -else - -noinst_SCRIPTS= - -endif - -base.ml2_s.part: $(scripts_dir)/mln_s.sh $(transform_files) - sh $< 2 $(srcdir) - -base.ml3_s.part: $(scripts_dir)/mln_s.sh $(transform_files) - sh $< 3 $(srcdir) - -base.ml4_s.part: $(scripts_dir)/mln_s.sh $(transform_files) - sh $< 4 $(srcdir) - -base.ml2v2_s.part: $(scripts_dir)/mlnvn_s.sh $(transform_files) - sh $< 2 $(srcdir) - -base.ml3v3_s.part: $(scripts_dir)/mlnvn_s.sh $(transform_files) - sh $< 3 $(srcdir) - -base.ml4v4_s.part: $(scripts_dir)/mlnvn_s.sh $(transform_files) - sh $< 4 $(srcdir) - -base.ml_s.part: $(scripts_dir)/ml_s.sh $(transform_files) - sh $< $(srcdir) - -base.ml1_s.part: $(scripts_dir)/ml1_s.sh $(transform_files) - sh $< $(srcdir) - -base.mlv_s.part: $(scripts_dir)/mlv_s.sh $(transform_files) - sh $< $(srcdir) - -base.ml1v1_s.part: $(scripts_dir)/ml1v1_s.sh $(transform_files) - sh $< $(srcdir) - -EXTRA_DIST=base.lists.part $(transform_files) $(dist_parts) - -CLEANFILES=$(scripts) +
+transform_files=layoutsMapping.lst variantsMapping.lst
+
+dist_parts=base.o_s.part \
+base.lv_c.part \
+base.l1v1_c.part \
+base.l2v2_c.part \
+base.l3v3_c.part \
+base.l4v4_c.part
+
+scripts_dir=$(srcdir)/../bin
+
+scripts= \
+base.ml2_s.part \
+base.ml3_s.part \
+base.ml4_s.part \
+base.ml2v2_s.part \
+base.ml3v3_s.part \
+base.ml4v4_s.part \
+base.ml_s.part \
+base.ml1_s.part \
+base.mlv_s.part \
+base.ml1v1_s.part
+
+if USE_COMPAT_RULES
+
+noinst_SCRIPTS=$(scripts) $(dist_parts)
+
+else
+
+noinst_SCRIPTS=
+
+endif
+
+base.ml2_s.part: $(scripts_dir)/mln_s.sh $(transform_files)
+ sh $< 2 $(srcdir)
+
+base.ml3_s.part: $(scripts_dir)/mln_s.sh $(transform_files)
+ sh $< 3 $(srcdir)
+
+base.ml4_s.part: $(scripts_dir)/mln_s.sh $(transform_files)
+ sh $< 4 $(srcdir)
+
+base.ml2v2_s.part: $(scripts_dir)/mlnvn_s.sh $(transform_files)
+ sh $< 2 $(srcdir)
+
+base.ml3v3_s.part: $(scripts_dir)/mlnvn_s.sh $(transform_files)
+ sh $< 3 $(srcdir)
+
+base.ml4v4_s.part: $(scripts_dir)/mlnvn_s.sh $(transform_files)
+ sh $< 4 $(srcdir)
+
+base.ml_s.part: $(scripts_dir)/ml_s.sh $(transform_files)
+ sh $< $(srcdir)
+
+base.ml1_s.part: $(scripts_dir)/ml1_s.sh $(transform_files)
+ sh $< $(srcdir)
+
+base.mlv_s.part: $(scripts_dir)/mlv_s.sh $(transform_files)
+ sh $< $(srcdir)
+
+base.ml1v1_s.part: $(scripts_dir)/ml1v1_s.sh $(transform_files)
+ sh $< $(srcdir)
+
+EXTRA_DIST=base.lists.part $(transform_files) $(dist_parts)
+
+CLEANFILES=$(scripts)
diff --git a/xorg-server/xkeyboard-config/rules/compat/makefile b/xorg-server/xkeyboard-config/rules/compat/makefile new file mode 100644 index 000000000..832ef5f80 --- /dev/null +++ b/xorg-server/xkeyboard-config/rules/compat/makefile @@ -0,0 +1,53 @@ +transform_files=layoutsMapping.lst variantsMapping.lst + +scripts_dir=..\bin + +SCRIPTS= \ +base.ml2_s.part \ +base.ml3_s.part \ +base.ml4_s.part \ +base.ml2v2_s.part \ +base.ml3v3_s.part \ +base.ml4v4_s.part \ +base.ml_s.part \ +base.ml1_s.part \ +base.mlv_s.part \ +base.ml1v1_s.part + + +SH=cmd /c + +base.ml2_s.part: mln_s.bat $(transform_files) + $(SH) $< 2 + +base.ml3_s.part: mln_s.bat $(transform_files) + $(SH) $< 3 + +base.ml4_s.part: mln_s.bat $(transform_files) + $(SH) $< 4 + +base.ml2v2_s.part: mlnvn_s.bat $(transform_files) + $(SH) $< 2 + +base.ml3v3_s.part: mlnvn_s.bat $(transform_files) + $(SH) $< 3 + +base.ml4v4_s.part: mlnvn_s.bat $(transform_files) + $(SH) $< 4 + +base.ml_s.part: ml_s.bat $(transform_files) + $(SH) $< + +base.ml1_s.part: ml1_s.bat $(transform_files) + $(SH) $< + +base.mlv_s.part: mlv_s.bat $(transform_files) + $(SH) $< + +base.ml1v1_s.part: ml1v1_s.bat $(transform_files) + $(SH) $< + +%.bat: $(scripts_dir)\%.sh + copy $< $@ + +all: $(SCRIPTS) diff --git a/xorg-server/xkeyboard-config/rules/makefile b/xorg-server/xkeyboard-config/rules/makefile new file mode 100644 index 000000000..c8b2f25c2 --- /dev/null +++ b/xorg-server/xkeyboard-config/rules/makefile @@ -0,0 +1,197 @@ +ifeq ($(MAKESERVER),1) +$(error Please do not specify MAKESERVER=1) +endif + +load_makefile compat\makefile DEBUG=$(DEBUG) + +DESTDIR=$(MHMAKECONF)\xorg-server\xkbdata\rules + +USE_COMPAT_RULES = 1 + +if USE_COMPAT_RULES + +base_parts = base.hdr.part base.lists.part \ +compat/base.lists.part \ +HDR base.m_k.part \ +HDR base.l1_k.part \ +HDR base.l_k.part \ +HDR base.o_k.part \ +HDR base.ml_g.part \ +HDR base.m_g.part \ +HDR compat/base.mlv_s.part base.mlv_s.part \ +HDR compat/base.ml_s.part base.ml_s.part \ +HDR compat/base.ml1_s.part base.ml1_s.part \ +HDR compat/base.ml1v1_s.part \ +HDR compat/base.ml2_s.part base.ml2_s.part \ +HDR compat/base.ml3_s.part base.ml3_s.part \ +HDR compat/base.ml4_s.part base.ml4_s.part \ +HDR compat/base.ml2v2_s.part \ +HDR compat/base.ml3v3_s.part \ +HDR compat/base.ml4v4_s.part \ +HDR base.m_s.part \ +HDR compat/base.lv_c.part \ +HDR compat/base.l1v1_c.part \ +HDR compat/base.l2v2_c.part \ +HDR compat/base.l3v3_c.part \ +HDR compat/base.l4v4_c.part \ +HDR base.ml_c.part \ +HDR base.ml1_c.part \ +HDR base.m_t.part \ +HDR base.lo_s.part \ +HDR base.l1o_s.part \ +HDR base.l2o_s.part \ +HDR base.l3o_s.part \ +HDR base.l4o_s.part \ +HDR compat/base.o_s.part base.o_s.part \ +HDR base.o_c.part \ +HDR base.o_t.part + +evdev_parts = base.hdr.part base.lists.part \ +compat/base.lists.part \ +HDR evdev.m_k.part \ +HDR base.l1_k.part \ +HDR base.l_k.part \ +HDR base.o_k.part \ +HDR base.ml_g.part \ +HDR base.m_g.part \ +HDR compat/base.mlv_s.part base.mlv_s.part \ +HDR compat/base.ml_s.part base.ml_s.part \ +HDR compat/base.ml1_s.part base.ml1_s.part \ +HDR compat/base.ml1v1_s.part \ +HDR compat/base.ml2_s.part base.ml2_s.part \ +HDR compat/base.ml3_s.part base.ml3_s.part \ +HDR compat/base.ml4_s.part base.ml4_s.part \ +HDR compat/base.ml2v2_s.part \ +HDR compat/base.ml3v3_s.part \ +HDR compat/base.ml4v4_s.part \ +HDR evdev.m_s.part \ +HDR compat/base.lv_c.part \ +HDR compat/base.l1v1_c.part \ +HDR compat/base.l2v2_c.part \ +HDR compat/base.l3v3_c.part \ +HDR compat/base.l4v4_c.part \ +HDR base.ml_c.part \ +HDR base.ml1_c.part \ +HDR base.m_t.part \ +HDR base.lo_s.part \ +HDR base.l1o_s.part \ +HDR base.l2o_s.part \ +HDR base.l3o_s.part \ +HDR base.l4o_s.part \ +HDR compat/base.o_s.part base.o_s.part \ +HDR base.o_c.part \ +HDR base.o_t.part + +else + +base_parts = base.hdr.part base.lists.part \ +HDR base.m_k.part \ +HDR base.l1_k.part \ +HDR base.l_k.part \ +HDR \ +HDR base.ml_g.part \ +HDR base.m_g.part \ +HDR base.mlv_s.part \ +HDR base.ml_s.part \ +HDR base.ml1_s.part \ +HDR \ +HDR base.ml2_s.part \ +HDR base.ml3_s.part \ +HDR base.ml4_s.part \ +HDR \ +HDR \ +HDR \ +HDR base.m_s.part \ +HDR \ +HDR \ +HDR \ +HDR \ +HDR \ +HDR base.ml_c.part \ +HDR base.ml1_c.part \ +HDR base.m_t.part \ +HDR \ +HDR base.l1o_s.part \ +HDR base.l2o_s.part \ +HDR base.l3o_s.part \ +HDR base.l4o_s.part \ +HDR base.o_s.part \ +HDR base.o_c.part \ +HDR base.o_t.part + +evdev_parts = base.hdr.part base.lists.part \ +HDR evdev.m_k.part \ +HDR base.l1_k.part \ +HDR base.l_k.part \ +HDR \ +HDR base.ml_g.part \ +HDR base.m_g.part \ +HDR base.mlv_s.part \ +HDR base.ml_s.part \ +HDR base.ml1_s.part \ +HDR \ +HDR base.ml2_s.part \ +HDR base.ml3_s.part \ +HDR base.ml4_s.part \ +HDR \ +HDR \ +HDR \ +HDR evdev.m_s.part \ +HDR \ +HDR \ +HDR \ +HDR \ +HDR \ +HDR base.ml_c.part \ +HDR base.ml1_c.part \ +HDR base.m_t.part \ +HDR \ +HDR base.l1o_s.part \ +HDR base.l2o_s.part \ +HDR base.l3o_s.part \ +HDR base.l4o_s.part \ +HDR base.o_s.part \ +HDR base.o_c.part \ +HDR base.o_t.part + +endif +rules_files = base evdev xfree98 + +lst_files = base.lst evdev.lst + +$(DESTDIR)\%.lst: $(DESTDIR)\%.xml + perl xml2lst.pl < $< > $@ + +$(DESTDIR)\base: compat\all $(base_parts) + merge $@ $(base_parts) + +$(DESTDIR)\evdev: compat\all $(evdev_parts) + merge $@ $(evdev_parts) + +dist_files = xkb.dtd README + +rules_DATA = $(rules_files) $(lst_files) $(dist_files) + +COMPATFILES=xorg xorg.xml xorg.lst +$(DESTDIR)\xorg: $(DESTDIR)\base + copy $< $@ +$(DESTDIR)\xorg%: $(DESTDIR)\base% + copy $< $@ + +rules_DATA := $(rules_DATA) $(COMPATFILES) + +xml_in_files = base.xml.in evdev.xml.in base.extras.xml.in evdev.extras.xml.in +xml_DATA = $(xml_in_files:.xml.in=.xml) + +$(DESTDIR)\%.xml: %.xml.in + copy $< $@ + +$(DESTDIR)\evdev.xml: base.xml.in + copy $< $@ + +$(DESTDIR)\evdev.extras.xml: base.extras.xml.in + copy $< $@ + +DATA_FILES=$(rules_DATA:%=$(DESTDIR)\%) $(xml_DATA:%=$(DESTDIR)\%) + +include ..\xkbrules.mak diff --git a/xorg-server/xkeyboard-config/rules/merge.py b/xorg-server/xkeyboard-config/rules/merge.py new file mode 100644 index 000000000..442a866f2 --- /dev/null +++ b/xorg-server/xkeyboard-config/rules/merge.py @@ -0,0 +1,13 @@ +import sys + +pOUT=open(sys.argv[1],"wb") +pHDR=open("HDR","r") +for item in sys.argv[2:]: + if item == 'HDR': + pOUT.write("\n") + pOUT.write(pHDR.readline()) + else: + pOUT.write(open(item,"rb").read()) + +pOUT.close() + diff --git a/xorg-server/xkeyboard-config/rules/xkb.dtd b/xorg-server/xkeyboard-config/rules/xkb.dtd index 0afa0df12..dcf35c947 100644 --- a/xorg-server/xkeyboard-config/rules/xkb.dtd +++ b/xorg-server/xkeyboard-config/rules/xkb.dtd @@ -1,55 +1,55 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<!-- - - Description: XKB configuration file DTD - Author: Sergey V. Udaltsov - ---> - -<!ELEMENT xkbConfigRegistry (modelList,layoutList,optionList)> - -<!ATTLIST xkbConfigRegistry - version CDATA "1.1"> - -<!ELEMENT modelList (model*)> - -<!ELEMENT model (configItem)> - -<!ELEMENT layoutList (layout*)> - -<!ELEMENT layout (configItem,variantList?)> - -<!ELEMENT optionList (group*)> - -<!ELEMENT variantList (variant*)> - -<!ELEMENT variant (configItem)> - -<!ELEMENT group (configItem,option*)> -<!ATTLIST group - allowMultipleSelection (true|false) "false"> - -<!ELEMENT option (configItem)> - -<!ELEMENT configItem (name,shortDescription*,description*,vendor?,countryList?,languageList?)> - -<!ATTLIST configItem - popularity (standard|exotic) "standard"> - -<!ELEMENT name (#PCDATA)> - -<!ELEMENT shortDescription (#PCDATA)> - -<!ELEMENT description (#PCDATA)> - -<!ELEMENT vendor (#PCDATA)> - -<!ELEMENT countryList (iso3166Id+)> - -<!ELEMENT iso3166Id (#PCDATA)> - -<!ELEMENT languageList (iso639Id+)> - -<!ELEMENT iso639Id (#PCDATA)> - +<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+
+ Description: XKB configuration file DTD
+ Author: Sergey V. Udaltsov
+
+-->
+
+<!ELEMENT xkbConfigRegistry (modelList,layoutList,optionList)>
+
+<!ATTLIST xkbConfigRegistry
+ version CDATA "1.1">
+
+<!ELEMENT modelList (model*)>
+
+<!ELEMENT model (configItem)>
+
+<!ELEMENT layoutList (layout*)>
+
+<!ELEMENT layout (configItem,variantList?)>
+
+<!ELEMENT optionList (group*)>
+
+<!ELEMENT variantList (variant*)>
+
+<!ELEMENT variant (configItem)>
+
+<!ELEMENT group (configItem,option*)>
+<!ATTLIST group
+ allowMultipleSelection (true|false) "false">
+
+<!ELEMENT option (configItem)>
+
+<!ELEMENT configItem (name,shortDescription*,description*,vendor?,countryList?,languageList?)>
+
+<!ATTLIST configItem
+ popularity (standard|exotic) "standard">
+
+<!ELEMENT name (#PCDATA)>
+
+<!ELEMENT shortDescription (#PCDATA)>
+
+<!ELEMENT description (#PCDATA)>
+
+<!ELEMENT vendor (#PCDATA)>
+
+<!ELEMENT countryList (iso3166Id+)>
+
+<!ELEMENT iso3166Id (#PCDATA)>
+
+<!ELEMENT languageList (iso639Id+)>
+
+<!ELEMENT iso639Id (#PCDATA)>
+
diff --git a/xorg-server/xkeyboard-config/rules/xml2lst.pl b/xorg-server/xkeyboard-config/rules/xml2lst.pl index 0c6540d1e..3b5e10009 100644 --- a/xorg-server/xkeyboard-config/rules/xml2lst.pl +++ b/xorg-server/xkeyboard-config/rules/xml2lst.pl @@ -1,262 +1,262 @@ -#!/usr/bin/perl - -# converts the <rules>.xml file to the old format <rules>.lst file -# -# Usage: -# -# perl xml2lst.pl < filename.xml > filename.lst -# -# author Ivan Pascal - -$doc = new_document( 0, ''); -parse('', $doc); - -($reg) = node_by_name($doc, '/xkbConfigRegistry'); -@models = node_by_name($reg, 'modelList/model/configItem'); -@layouts = node_by_name($reg, 'layoutList/layout/configItem'); -@options = node_by_name($reg, 'optionList/group/configItem'); - -print "! model\n"; -for $i (@models) { - ($name) = node_by_name($i, 'name'); - ($descr) = node_by_name($i, 'description'); - printf(" %-15s %s\n", text_child($name), text_child($descr)); -} - -print "\n! layout\n"; -for $i (@layouts) { - ($name) = node_by_name($i, 'name'); - ($descr) = node_by_name($i, 'description'); - printf(" %-15s %s\n", text_child($name), text_child($descr)); -} - -print "\n! variant\n"; -for $l (@layouts) { - ($lname) = node_by_name($l, 'name'); - @variants = node_by_name($l, '../variantList/variant/configItem'); - for $v (@variants) { - ($name) = node_by_name($v, 'name'); - ($descr) = node_by_name($v, 'description'); - printf(" %-15s %s: %s\n", - text_child($name), text_child($lname), text_child($descr)); - } -} - -print "\n! option\n"; -for $g (@options) { - ($name) = node_by_name($g, 'name'); - ($descr) = node_by_name($g, 'description'); - printf(" %-20s %s\n", text_child($name), text_child($descr)); - - @opts = node_by_name($g, '../option/configItem'); - for $o (@opts) { - ($name) = node_by_name($o, 'name'); - ($descr) = node_by_name($o, 'description'); - printf(" %-20s %s\n", - text_child($name), text_child($descr)); - } -} - -sub with_attribute { - local ($nodelist, $attrexpr) = @_; - local ($attr, $value) = split (/=/, $attrexpr); - local ($node, $attrvalue); - if (defined $value && $value ne '') { - $value =~ s/"//g; - foreach $node (@{$nodelist}) { - $attrvalue = node_attribute($node, $attr); - if (defined $attrvalue && $attrvalue eq $value) { - return $node; - } - } - } else { - foreach $node (@{$nodelist}) { - if (! defined node_attribute($node, $attr)) { - return $node; - } - } - } - undef; -} - -# Subroutines - -sub parse { - local $intag = 0; - my (@node_stack, $parent); - $parent = @_[1]; - local ($tag, $text); - - while (<>) { - chomp; - @str = split /([<>])/; - shift @str if ($str[0] eq '' || $str[0] =~ /^[ \t]*$/); - - while (scalar @str) { - $token = shift @str; - if ($token eq '<') { - $intag = 1; - if (defined $text) { - add_text_node($parent, $text); - undef $text; - } - } elsif ($token eq '>') { - $intag = 0; - if ($tag =~ /^\/(.*)/) { # close tag - $parent = pop @node_stack; - } elsif ($tag =~ /^([^\/]*)\/$/) { - empty_tag($parent, $1); - } else { - if (defined ($node = open_tag($parent, $tag))) { - push @node_stack, $parent; - $parent = $node; - } - } - undef $tag; - } else { - if ($intag == 1) { - if (defined $tag) { - $tag .= ' '. $token; - } else { - $tag = $token; - } - } else { - if (defined $text) { - $text .= "\n" . $token; - } else { - $text = $token; - } - } - } - } - } -} - -sub new_document { - $doc = new_node( 0, '', 'DOCUMENT'); - $doc->{CHILDREN} = []; - return $doc; -} - -sub new_node { - local ($parent_node, $tag, $type) = @_; - - my %node; - $node{PARENT} = $parent_node; - $node{TYPE} = $type; - - if ($type eq 'COMMENT' || $type eq 'TEXT') { - $node{TEXT} = $tag; - $node{NAME} = $type; - return \%node; - } - - local ($tname, $attr) = split(' ', $tag, 2); - $node{NAME} = $tname; - - if (defined $attr && $attr ne '') { - my %attr_table; - local @attr_list = split ( /"/, $attr); - local ($name, $value); - while (scalar @attr_list) { - $name = shift @attr_list; - $name =~ s/[ =]//g; - next if ($name eq ''); - $value = shift @attr_list; - $attr_table{$name} =$value; - } - $node{ATTRIBUTES} = \%attr_table; - } - return \%node; -} - -sub add_node { - local ($parent_node, $node) = @_; - push @{$parent_node->{CHILDREN}}, $node; - - local $tname = $node->{NAME}; - if (defined $parent_node->{$tname}) { - push @{$parent_node->{$tname}}, $node - } else { - $parent_node->{$tname} = [ $node ]; - } -} - -sub empty_tag { - local ($parent_node, $tag) = @_; - local $node = new_node($parent_node, $tag, 'EMPTY'); - add_node($parent_node, $node); -} - -sub open_tag { - local ($parent_node, $tag) = @_; - local $node; - - if ($tag =~ /^\?.*/ || $tag =~ /^\!.*/) { - $node = new_node($parent_node, $tag, 'COMMENT'); - add_node($parent_node, $node); - undef; return; - } else { - $node = new_node($parent_node, $tag, 'NODE'); - $node->{CHILDREN} = []; - add_node($parent_node, $node); - return $node; - } -} - -sub add_text_node { - local ($parent_node, $text) = @_; - local $node = new_node($parent_node, $text, 'TEXT'); - add_node($parent_node, $node); -} - -sub node_by_name { - local ($node, $name) = @_; - local ($tagname, $path) = split(/\//, $name, 2); - - my @nodelist; - - if ($tagname eq '') { - while ($node->{PARENT} != 0) { - $node = $node->{PARENT}; - } - sublist_by_name($node, $path, \@nodelist); - } else { - sublist_by_name($node, $name, \@nodelist); - } - return @nodelist; -} - -sub sublist_by_name { - local ($node, $name, $res) = @_; - local ($tagname, $path) = split(/\//, $name, 2); - - if (! defined $path) { - push @{$res}, (@{$node->{$tagname}}); - return; - } - - if ($tagname eq '..' && $node->{PARENT} != 0) { - $node = $node->{PARENT}; - sublist_by_name($node, $path, $res); - } else { - local $n; - for $n (@{$node->{$tagname}}) { - sublist_by_name($n, $path, $res); - } - } -} - -sub node_attribute { - local $node = @_[0]; - if (defined $node->{ATTRIBUTES}) { - return $node->{ATTRIBUTES}{@_[1]}; - } - undef; -} - -sub text_child { - local ($node) = @_; - local ($child) = node_by_name($node, 'TEXT'); - return $child->{TEXT}; -} +#!/usr/bin/perl
+
+# converts the <rules>.xml file to the old format <rules>.lst file
+#
+# Usage:
+#
+# perl xml2lst.pl < filename.xml > filename.lst
+#
+# author Ivan Pascal
+
+$doc = new_document( 0, '');
+parse('', $doc);
+
+($reg) = node_by_name($doc, '/xkbConfigRegistry');
+@models = node_by_name($reg, 'modelList/model/configItem');
+@layouts = node_by_name($reg, 'layoutList/layout/configItem');
+@options = node_by_name($reg, 'optionList/group/configItem');
+
+print "! model\n";
+for $i (@models) {
+ ($name) = node_by_name($i, 'name');
+ ($descr) = node_by_name($i, 'description');
+ printf(" %-15s %s\n", text_child($name), text_child($descr));
+}
+
+print "\n! layout\n";
+for $i (@layouts) {
+ ($name) = node_by_name($i, 'name');
+ ($descr) = node_by_name($i, 'description');
+ printf(" %-15s %s\n", text_child($name), text_child($descr));
+}
+
+print "\n! variant\n";
+for $l (@layouts) {
+ ($lname) = node_by_name($l, 'name');
+ @variants = node_by_name($l, '../variantList/variant/configItem');
+ for $v (@variants) {
+ ($name) = node_by_name($v, 'name');
+ ($descr) = node_by_name($v, 'description');
+ printf(" %-15s %s: %s\n",
+ text_child($name), text_child($lname), text_child($descr));
+ }
+}
+
+print "\n! option\n";
+for $g (@options) {
+ ($name) = node_by_name($g, 'name');
+ ($descr) = node_by_name($g, 'description');
+ printf(" %-20s %s\n", text_child($name), text_child($descr));
+
+ @opts = node_by_name($g, '../option/configItem');
+ for $o (@opts) {
+ ($name) = node_by_name($o, 'name');
+ ($descr) = node_by_name($o, 'description');
+ printf(" %-20s %s\n",
+ text_child($name), text_child($descr));
+ }
+}
+
+sub with_attribute {
+ local ($nodelist, $attrexpr) = @_;
+ local ($attr, $value) = split (/=/, $attrexpr);
+ local ($node, $attrvalue);
+ if (defined $value && $value ne '') {
+ $value =~ s/"//g;
+ foreach $node (@{$nodelist}) {
+ $attrvalue = node_attribute($node, $attr);
+ if (defined $attrvalue && $attrvalue eq $value) {
+ return $node;
+ }
+ }
+ } else {
+ foreach $node (@{$nodelist}) {
+ if (! defined node_attribute($node, $attr)) {
+ return $node;
+ }
+ }
+ }
+ undef;
+}
+
+# Subroutines
+
+sub parse {
+ local $intag = 0;
+ my (@node_stack, $parent);
+ $parent = @_[1];
+ local ($tag, $text);
+
+ while (<>) {
+ chomp;
+ @str = split /([<>])/;
+ shift @str if ($str[0] eq '' || $str[0] =~ /^[ \t]*$/);
+
+ while (scalar @str) {
+ $token = shift @str;
+ if ($token eq '<') {
+ $intag = 1;
+ if (defined $text) {
+ add_text_node($parent, $text);
+ undef $text;
+ }
+ } elsif ($token eq '>') {
+ $intag = 0;
+ if ($tag =~ /^\/(.*)/) { # close tag
+ $parent = pop @node_stack;
+ } elsif ($tag =~ /^([^\/]*)\/$/) {
+ empty_tag($parent, $1);
+ } else {
+ if (defined ($node = open_tag($parent, $tag))) {
+ push @node_stack, $parent;
+ $parent = $node;
+ }
+ }
+ undef $tag;
+ } else {
+ if ($intag == 1) {
+ if (defined $tag) {
+ $tag .= ' '. $token;
+ } else {
+ $tag = $token;
+ }
+ } else {
+ if (defined $text) {
+ $text .= "\n" . $token;
+ } else {
+ $text = $token;
+ }
+ }
+ }
+ }
+ }
+}
+
+sub new_document {
+ $doc = new_node( 0, '', 'DOCUMENT');
+ $doc->{CHILDREN} = [];
+ return $doc;
+}
+
+sub new_node {
+ local ($parent_node, $tag, $type) = @_;
+
+ my %node;
+ $node{PARENT} = $parent_node;
+ $node{TYPE} = $type;
+
+ if ($type eq 'COMMENT' || $type eq 'TEXT') {
+ $node{TEXT} = $tag;
+ $node{NAME} = $type;
+ return \%node;
+ }
+
+ local ($tname, $attr) = split(' ', $tag, 2);
+ $node{NAME} = $tname;
+
+ if (defined $attr && $attr ne '') {
+ my %attr_table;
+ local @attr_list = split ( /"/, $attr);
+ local ($name, $value);
+ while (scalar @attr_list) {
+ $name = shift @attr_list;
+ $name =~ s/[ =]//g;
+ next if ($name eq '');
+ $value = shift @attr_list;
+ $attr_table{$name} =$value;
+ }
+ $node{ATTRIBUTES} = \%attr_table;
+ }
+ return \%node;
+}
+
+sub add_node {
+ local ($parent_node, $node) = @_;
+ push @{$parent_node->{CHILDREN}}, $node;
+
+ local $tname = $node->{NAME};
+ if (defined $parent_node->{$tname}) {
+ push @{$parent_node->{$tname}}, $node
+ } else {
+ $parent_node->{$tname} = [ $node ];
+ }
+}
+
+sub empty_tag {
+ local ($parent_node, $tag) = @_;
+ local $node = new_node($parent_node, $tag, 'EMPTY');
+ add_node($parent_node, $node);
+}
+
+sub open_tag {
+ local ($parent_node, $tag) = @_;
+ local $node;
+
+ if ($tag =~ /^\?.*/ || $tag =~ /^\!.*/) {
+ $node = new_node($parent_node, $tag, 'COMMENT');
+ add_node($parent_node, $node);
+ undef; return;
+ } else {
+ $node = new_node($parent_node, $tag, 'NODE');
+ $node->{CHILDREN} = [];
+ add_node($parent_node, $node);
+ return $node;
+ }
+}
+
+sub add_text_node {
+ local ($parent_node, $text) = @_;
+ local $node = new_node($parent_node, $text, 'TEXT');
+ add_node($parent_node, $node);
+}
+
+sub node_by_name {
+ local ($node, $name) = @_;
+ local ($tagname, $path) = split(/\//, $name, 2);
+
+ my @nodelist;
+
+ if ($tagname eq '') {
+ while ($node->{PARENT} != 0) {
+ $node = $node->{PARENT};
+ }
+ sublist_by_name($node, $path, \@nodelist);
+ } else {
+ sublist_by_name($node, $name, \@nodelist);
+ }
+ return @nodelist;
+}
+
+sub sublist_by_name {
+ local ($node, $name, $res) = @_;
+ local ($tagname, $path) = split(/\//, $name, 2);
+
+ if (! defined $path) {
+ push @{$res}, (@{$node->{$tagname}});
+ return;
+ }
+
+ if ($tagname eq '..' && $node->{PARENT} != 0) {
+ $node = $node->{PARENT};
+ sublist_by_name($node, $path, $res);
+ } else {
+ local $n;
+ for $n (@{$node->{$tagname}}) {
+ sublist_by_name($n, $path, $res);
+ }
+ }
+}
+
+sub node_attribute {
+ local $node = @_[0];
+ if (defined $node->{ATTRIBUTES}) {
+ return $node->{ATTRIBUTES}{@_[1]};
+ }
+ undef;
+}
+
+sub text_child {
+ local ($node) = @_;
+ local ($child) = node_by_name($node, 'TEXT');
+ return $child->{TEXT};
+}
|